2.8 KiB
2.8 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | |
|---|---|---|---|---|---|
|
2026-04-16T02:17:51.762048+00:00 | Qwen/Qwen3-Coder-Next-FP8 | 1 | 9b7d291a6a236da0 |
TSRAIRGo
1. Purpose
This module defines the INavigationButtonInfo interface, which serves as a contract for navigation button metadata in the TSRAIRGo application. It standardizes how UI components expose and consume information about navigation buttons—such as their identity, display text, tooltip, enabled state, and visual border visibility—enabling decoupled UI rendering and button management logic.
2. Public Interface
INavigationButtonInfointerfaceNavigationButtonId Id { get; }
Returns the unique identifier for the button (defined inDTS.Common.Enums.TSRAIRGo.NavigationButtonId). This property is read-only and must be set at construction time.string Text { get; set; }
Gets or sets the primary label text displayed on the button.string Tooltip { get; set; }
Gets or sets the tooltip text shown on hover (or equivalent interaction).bool Enabled { get; set; }
Gets or sets whether the button is interactive (i.e., not disabled).bool ShowBorder { get; set; }
Gets or sets whether a visible border should be rendered around the button.
3. Invariants
Idmust be non-default (i.e., notNavigationButtonId.Unknownor equivalent uninitialized value), though the source does not enforce this—implementers are expected to ensure validity.TextandTooltipmay benullor empty strings unless constrained by UI consumers (not specified here).EnabledandShowBorderare boolean flags with no stated default values; their initial state depends on implementation.- No ordering or lifecycle guarantees are defined (e.g.,
Idmust be set beforeText).
4. Dependencies
- Depends on:
DTS.Common.Enums.TSRAIRGo.NavigationButtonId(enum, referenced inIdproperty).
- Depended on by:
- UI components or services that consume navigation button metadata (not visible in this file; inferred from naming and namespace).
- Likely used by a navigation bar or button manager in the TSRAIRGo UI layer.
5. Gotchas
- The interface does not define how
Idis initialized or validated—implementers must ensureIdis set and remains immutable after construction. - No explicit handling is defined for localization;
TextandTooltipare plainstrings, suggesting either hardcoded values or external localization logic is applied elsewhere. ShowBorderis a UI presentation flag; its semantics (e.g., whenfalse, is the border hidden or rendered differently?) are implementation-specific and not standardized here.- None identified from source alone.