--- source_files: - Common/DTS.Common/Interface/DTS.Viewer/Legend/ILegendView.cs - Common/DTS.Common/Interface/DTS.Viewer/Legend/ILegendViewModel.cs generated_at: "2026-04-17T16:06:49.136163+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "f447774506b0d21c" --- # Legend ### Purpose This module defines the view and ViewModel interfaces for a Legend component within the DTS Viewer. The ViewModel interface provides access to its associated view, suggesting a composition pattern where the ViewModel owns a reference to its View. ### Public Interface **`ILegendView`** (interface) - Inherits from: `IBaseView` - No members defined. Serves as a marker interface for Legend views. **`ILegendViewModel`** (interface) - Inherits from: `IBaseViewModel` - Members: - `ILegendView View { get; }` — Gets the Tab View associated with this ViewModel. ### Invariants - `ILegendViewModel.View` must return a valid `ILegendView` implementation. - The XML comment indicates this view is specifically a "Tab View", suggesting the Legend is rendered as a tabbed interface element. ### Dependencies - **Depends on**: `DTS.Common.Base` (for `IBaseView` and `IBaseViewModel`) - **Depended on by**: Unknown from source alone (likely concrete Legend implementations and Viewer composition) ### Gotchas - The XML documentation refers to "Tab View" which may indicate specific UI placement expectations not evident from the interface alone. ---