init
This commit is contained in:
89
docs/ai/Common/DTS.Common/Interface.md
Normal file
89
docs/ai/Common/DTS.Common/Interface.md
Normal file
@@ -0,0 +1,89 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.Common/Interface/ITabView.cs
|
||||
- Common/DTS.Common/Interface/IMainView.cs
|
||||
- Common/DTS.Common/Interface/IMenuView.cs
|
||||
- Common/DTS.Common/Interface/IShellView.cs
|
||||
- Common/DTS.Common/Interface/INavigationView.cs
|
||||
- Common/DTS.Common/Interface/IViewerShellView.cs
|
||||
- Common/DTS.Common/Interface/ITabViewModel.cs
|
||||
- Common/DTS.Common/Interface/IMenuViewModel.cs
|
||||
- Common/DTS.Common/Interface/INavigationViewModel.cs
|
||||
- Common/DTS.Common/Interface/IPluginComponent.cs
|
||||
- Common/DTS.Common/Interface/IShellViewModel.cs
|
||||
- Common/DTS.Common/Interface/IViewerShellViewModel.cs
|
||||
- Common/DTS.Common/Interface/IMainViewModel.cs
|
||||
- Common/DTS.Common/Interface/IAssemblyInfo.cs
|
||||
- Common/DTS.Common/Interface/IDataPROPage.cs
|
||||
generated_at: "2026-04-17T15:29:07.765657+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "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`
|
||||
```csharp
|
||||
public interface ITabView : IBaseView { }
|
||||
```
|
||||
Marker interface for tab-based views. Inherits from `IBaseView`.
|
||||
|
||||
#### `IMainView`
|
||||
```csharp
|
||||
public interface IMainView : IBaseView { }
|
||||
```
|
||||
Marker interface for main application views. Inherits from `IBaseView`.
|
||||
|
||||
#### `IMenuView`
|
||||
```csharp
|
||||
public interface IMenuView : IBaseView { }
|
||||
```
|
||||
Marker interface for menu views. Inherits from `IBaseView`.
|
||||
|
||||
#### `IShellView`
|
||||
```csharp
|
||||
public interface IShellView : IBaseWindow { }
|
||||
```
|
||||
Marker interface for shell window views. Inherits from `IBaseWindow` (not `IBaseView`).
|
||||
|
||||
#### `INavigationView`
|
||||
```csharp
|
||||
public interface INavigationView : IBaseView { }
|
||||
```
|
||||
Marker interface for navigation views. Inherits from `IBaseView`.
|
||||
|
||||
#### `IViewerShellView`
|
||||
```csharp
|
||||
public interface IViewerShellView : IBaseView { }
|
||||
```
|
||||
Marker interface for viewer shell views. Inherits from `IBaseView`.
|
||||
|
||||
---
|
||||
|
||||
### ViewModel Interfaces
|
||||
|
||||
#### `ITabViewModel`
|
||||
```csharp
|
||||
public interface ITabViewModel : IBaseViewModel
|
||||
{
|
||||
ITabView View { get; }
|
||||
}
|
||||
```
|
||||
Defines a view model for tab views. Provides read-only access to the associated `ITabView`.
|
||||
|
||||
#### `IMenuViewModel`
|
||||
```csharp
|
||||
public interface IMenuViewModel : IBaseViewModel
|
||||
{
|
||||
IMenuView View { get
|
||||
Reference in New Issue
Block a user