--- source_files: - Common/DTS.CommonCore/Interface/Viewer/IMainView.cs - Common/DTS.CommonCore/Interface/Viewer/IMenuView.cs - Common/DTS.CommonCore/Interface/Viewer/IFilterView.cs - Common/DTS.CommonCore/Interface/Viewer/INavigationView.cs - Common/DTS.CommonCore/Interface/Viewer/ITestDefinitionListView.cs - Common/DTS.CommonCore/Interface/Viewer/IMenuViewModel.cs - Common/DTS.CommonCore/Interface/Viewer/INavigationViewModel.cs - Common/DTS.CommonCore/Interface/Viewer/IFilterViewModel.cs - Common/DTS.CommonCore/Interface/Viewer/ITestDefinitionListViewModel.cs - Common/DTS.CommonCore/Interface/Viewer/IMainViewModel.cs generated_at: "2026-04-17T16:34:19.286467+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "7d6996076cd32502" --- # Documentation: DTS.Common.Interface Viewer Interfaces ## 1. Purpose This module defines the view and ViewModel interfaces for a Viewer component within the DTS system. It establishes the contract for a Model-View-ViewModel (MVVM) architecture, providing interfaces for main shell composition, navigation, menu handling, filtering, and test summary list display. The interfaces support a region-based UI composition pattern where different views can be injected into named context regions. --- ## 2. Public Interface ### View Interfaces All view interfaces inherit from `IBaseView` (defined in `DTS.Common.Base`) and currently define no additional members. | Interface | File | |-----------|------| | `IMainView` | `IMainView.cs` | | `IMenuView` | `IMenuView.cs` | | `IFilterView` | `IFilterView.cs` | | `INavigationView` | `INavigationView.cs` | | `ITestSummaryListView` | `ITestDefinitionListView.cs` | ### ViewModel Interfaces #### `IMenuViewModel` - **Inherits:** `IBaseViewModel` - **Properties:** - `IMenuView View { get; }` — Returns the associated Menu View. #### `INavigationViewModel` - **Inherits:** `IBaseViewModel` - **Properties:** - `INavigationView NavigationView { get; }` — Returns the Navigation View. #### `IFilterViewModel` - **Inherits:** `IBaseViewModel` - **Properties:** - `IBaseView View { get; }` — Returns the Search View. - `IBaseViewModel Parent { get; }` — Returns the parent ViewModel. - `object ContextSearchRegion { get; set; }` — Gets or sets the context for the search region. #### `ITestSummaryListViewModel` - **Inherits:** `IBaseViewModel` - **Properties:** - `ITestSummaryListView TestSummaryListView { get; }` — Returns the Test Summary List View. - `ObservableCollection TestSummaryList { get; set; }` — Collection of test summaries for display. - `List SelectedTestSummaryList { get; set; }` — List of currently selected test summaries. - **Methods:** - `void PublishSelectedTestSummaryList()` — Publishes the selected test summary list (mechanism unspecified in source). #### `IMainViewModel` - **Inherits:** `IBaseViewModel` - **Properties:** - `IB