2.7 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
2026-04-17T15:29:07.765657+00:00 | zai-org/GLM-5-FP8 | 1 | 44b6ec338865b0fd |
DTS.Common.Interface Documentation
1. Purpose
This module defines the core interface contracts for a WPF-based application framework following the Model-View-ViewModel (MVVM) pattern. It establishes abstractions for views (ITabView, IMainView, IShellView, etc.), view models (ITabViewModel, IShellViewModel, IMainViewModel, etc.), plugin components (IPluginComponent), assembly metadata attributes (ImageAttribute, TextAttribute), and specialized UI pages (IDataPROPage). These interfaces enable loose coupling between UI components and their controllers, supporting a modular, plugin-based architecture.
2. Public Interface
View Interfaces
ITabView
public interface ITabView : IBaseView { }
Marker interface for tab-based views. Inherits from IBaseView.
IMainView
public interface IMainView : IBaseView { }
Marker interface for main application views. Inherits from IBaseView.
IMenuView
public interface IMenuView : IBaseView { }
Marker interface for menu views. Inherits from IBaseView.
IShellView
public interface IShellView : IBaseWindow { }
Marker interface for shell window views. Inherits from IBaseWindow (not IBaseView).
INavigationView
public interface INavigationView : IBaseView { }
Marker interface for navigation views. Inherits from IBaseView.
IViewerShellView
public interface IViewerShellView : IBaseView { }
Marker interface for viewer shell views. Inherits from IBaseView.
ViewModel Interfaces
ITabViewModel
public interface ITabViewModel : IBaseViewModel
{
ITabView View { get; }
}
Defines a view model for tab views. Provides read-only access to the associated ITabView.
IMenuViewModel
public interface IMenuViewModel : IBaseViewModel
{
IMenuView View { get