43 lines
2.3 KiB
Markdown
43 lines
2.3 KiB
Markdown
|
|
---
|
||
|
|
source_files:
|
||
|
|
- Common/DTS.CommonCore/Resources/ResourceNames.cs
|
||
|
|
- Common/DTS.CommonCore/Resources/MainTabControlResource.xaml.cs
|
||
|
|
generated_at: "2026-04-17T16:24:00.270672+00:00"
|
||
|
|
model: "zai-org/GLM-5-FP8"
|
||
|
|
schema_version: 1
|
||
|
|
sha256: "95f0f52074d58138"
|
||
|
|
---
|
||
|
|
|
||
|
|
# Resources
|
||
|
|
|
||
|
|
### Purpose
|
||
|
|
This module provides shared XAML resources and constant identifiers for UI transitions and tab control behaviors within the DTS application. It centralizes storyboard naming conventions and provides a centralized tooltip event handling mechanism that integrates with the Prism event aggregation system.
|
||
|
|
|
||
|
|
### Public Interface
|
||
|
|
|
||
|
|
**`Athena.Resources.ResourceNames`** (internal static class)
|
||
|
|
- `const string EntryStoryboardName = "InTransition"` - Constant defining the name used for entry/transition-in storyboard animations.
|
||
|
|
- `const string ExitStoryboardName = "OutTransition"` - Constant defining the name used for exit/transition-out storyboard animations.
|
||
|
|
|
||
|
|
**`DTS.Common.Resources.MainTabControlResource`** (public partial class)
|
||
|
|
- `void ToolTipEventHandler(object sender, System.Windows.Controls.ToolTipEventArgs e)` - Handles tooltip events by marking them as handled and publishing a `HelpTextEvent` via the `IEventAggregator`. Extracts the event aggregator via `ServiceLocator.Current.GetInstance<IEventAggregator>()` and publishes a `HelpTextEventArg` containing the sender and event args.
|
||
|
|
|
||
|
|
### Invariants
|
||
|
|
- `ResourceNames` constants are compile-time constants and cannot be modified at runtime.
|
||
|
|
- `ToolTipEventHandler` always sets `e.Handled = true` before publishing the event.
|
||
|
|
- `ToolTipEventHandler` assumes `ServiceLocator.Current` is properly configured and `IEventAggregator` is registered.
|
||
|
|
|
||
|
|
### Dependencies
|
||
|
|
**Depends on:**
|
||
|
|
- `Microsoft.Practices.ServiceLocation` (ServiceLocator)
|
||
|
|
- `Microsoft.Practices.Prism.Events` (IEventAggregator, PubSubEvent)
|
||
|
|
- `DTS.Common.Events` (HelpTextEvent, HelpTextEventArg)
|
||
|
|
- `System.Windows.Controls` (ToolTipEventArgs)
|
||
|
|
|
||
|
|
**Depended on by:** Not determinable from source alone.
|
||
|
|
|
||
|
|
### Gotchas
|
||
|
|
- The `ResourceNames` class is in namespace `Athena.Resources` while `MainTabControlResource` is in `DTS.Common.Resources` - this namespace inconsistency may cause confusion when referencing.
|
||
|
|
- `ToolTipEventHandler` will throw if `ServiceLocator.Current` is null or if `IEventAggregator` is not registered - no null checks are performed.
|
||
|
|
|
||
|
|
---
|