3.0 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
2026-04-17T16:34:18.316431+00:00 | zai-org/GLM-5-FP8 | 1 | 620b4a2305ac725b |
Documentation: DTS.Common.Interface Viewer Interfaces
1. Purpose
This module defines the view and view-model interfaces for the Viewer component of the DTS application. It establishes the contract layer for an MVVM (Model-View-ViewModel) architecture, providing typed interfaces for main shell views, navigation, menus, filtering, and test summary list displays. These interfaces enable decoupled communication between UI components and their backing view models, supporting a region-based UI composition pattern.
2. Public Interface
View Interfaces
All view interfaces inherit from IBaseView (defined in DTS.Common.Base) and currently define no additional members—they serve as marker interfaces for type identification and dependency injection.
| Interface | File | Description |
|---|---|---|
IMainView |
IMainView.cs |
Marker interface for the main application view. |
IMenuView |
IMenuView.cs |
Marker interface for the menu view component. |
IFilterView |
IFilterView.cs |
Marker interface for the filter/search view component. |
INavigationView |
INavigationView.cs |
Marker interface for the navigation view component. |
ITestSummaryListView |
ITestDefinitionListView.cs |
Marker interface for the test summary list view. |
ViewModel Interfaces
All view-model interfaces inherit from IBaseViewModel (defined in DTS.Common.Base).
IMenuViewModel
public interface IMenuViewModel : IBaseViewModel
{
IMenuView View { get; }
}
Provides access to the associated IMenuView instance.
INavigationViewModel
public interface INavigationViewModel : IBaseViewModel
{
INavigationView NavigationView { get; }
}
Provides access to the associated INavigationView instance via the NavigationView property.
IFilterViewModel
public interface IFilterViewModel : IBaseViewModel
{
IBaseView View { get; }
IBaseViewModel Parent { get; }
object ContextSearchRegion { get; set; }
}
View: Returns the filter view asIBaseView.Parent: Provides access to the parent view model in the hierarchy.ContextSearchRegion: A mutable property for region-based UI composition, likely used for dynamic view injection.
ITestSummaryListViewModel
public interface ITestSummaryListViewModel