Files
DP44/docs/ai/Common/DTS.Common/Interface/DTS.Viewer/Menu.md
2026-04-17 14:55:32 -04:00

1.7 KiB

source_files, generated_at, model, schema_version, sha256
source_files generated_at model schema_version sha256
Common/DTS.Common/Interface/DTS.Viewer/Menu/IMenuView.cs
Common/DTS.Common/Interface/DTS.Viewer/Menu/IMenuViewModel.cs
2026-04-17T16:07:17.601881+00:00 zai-org/GLM-5-FP8 1 96e762e96eb06952

Menu

Purpose

This module defines the contract for menu-related views and view models within the DTS Viewer application. It provides the interface abstractions necessary for implementing menu UI components following the MVVM pattern, allowing menu functionality to be consumed without tight coupling to specific implementations.

Public Interface

IMenuView (interface)

  • Inherits from: IBaseView
  • No additional members defined. Serves as a marker interface for menu-specific views.

IMenuViewModel (interface)

  • Inherits from: IBaseViewModel
  • IMenuView View { get; } - Gets the Shell View (as documented). Read-only property providing access to the associated menu view instance.

Invariants

  • IMenuView must always be assignable to IBaseView.
  • IMenuViewModel must always be assignable to IBaseViewModel.
  • The View property must return a valid IMenuView instance when accessed on a properly initialized implementation.

Dependencies

  • Depends on: DTS.Common.Base (specifically IBaseView and IBaseViewModel interfaces)
  • Depended on by: Unknown from source alone (likely concrete menu implementations and shell/main window components)

Gotchas

  • The XML documentation comment references "Shell View" for the View property, which appears inconsistent with the property name and return type. This is likely a documentation error from copy-paste; the property returns a menu view, not a shell view.