init
This commit is contained in:
41
docs/ai/DTS Viewer/DTS.Viewer.Loader/Properties.md
Normal file
41
docs/ai/DTS Viewer/DTS.Viewer.Loader/Properties.md
Normal file
@@ -0,0 +1,41 @@
|
||||
---
|
||||
source_files:
|
||||
- DTS Viewer/DTS.Viewer.Loader/Properties/Settings.Designer.cs
|
||||
- DTS Viewer/DTS.Viewer.Loader/Properties/AssemblyInfo.cs
|
||||
- DTS Viewer/DTS.Viewer.Loader/Properties/Resources.Designer.cs
|
||||
generated_at: "2026-04-17T16:11:52.544183+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "90fb80f104407c0f"
|
||||
---
|
||||
|
||||
# Properties
|
||||
|
||||
### 1. Purpose
|
||||
This module provides the assembly metadata and configuration settings for the `DTS.Viewer.Loader` assembly. It specifically defines a path for a `PluginFolder`, indicating that this assembly is likely responsible for loading external modules or runtime components from a relative directory path.
|
||||
|
||||
### 2. Public Interface
|
||||
**Class: `Settings`** (in `Settings.Designer.cs`)
|
||||
* `public static Settings Default { get; }`: Singleton instance accessor.
|
||||
* `public string PluginFolder { get; }`: An application-scoped setting containing the relative path `"../../../../RunTimeModules"`.
|
||||
|
||||
**Class: `Resources`** (in `Resources.Designer.cs`)
|
||||
* `internal static global::System.Resources.ResourceManager ResourceManager { get; }`: Accessor for the resource manager.
|
||||
* `internal static global::System.Globalization.CultureInfo Culture { get; set; }`: Accessor for the current UI culture.
|
||||
|
||||
**Assembly Attributes** (in `AssemblyInfo.cs`)
|
||||
* `AssemblyTitle`: "DTS.Viewer.Loader"
|
||||
* `AssemblyCompany`: "Diversified Technical Systems, Inc. (DTS)"
|
||||
|
||||
### 3. Invariants
|
||||
* The `PluginFolder` property is read-only (Application-scoped) and defaults to `"../../../../RunTimeModules"`.
|
||||
* The `Resources` class is strictly internal to the assembly.
|
||||
|
||||
### 4. Dependencies
|
||||
* **Depends on**: `System.Configuration`, `System.Resources`.
|
||||
* **Depended on by**: The `DTS.Viewer.Loader` logic (for locating plugins).
|
||||
|
||||
### 5. Gotchas
|
||||
* The `PluginFolder` path uses a relative path syntax (`../../../../RunTimeModules`). The actual resolved path depends entirely on the current working directory of the process when the setting is read, which may lead to failures if the application is launched from an unexpected location.
|
||||
|
||||
---
|
||||
53
docs/ai/DTS Viewer/DTS.Viewer.Loader/View.md
Normal file
53
docs/ai/DTS Viewer/DTS.Viewer.Loader/View.md
Normal file
@@ -0,0 +1,53 @@
|
||||
---
|
||||
source_files:
|
||||
- DTS Viewer/DTS.Viewer.Loader/View/ShellView.xaml.cs
|
||||
generated_at: "2026-04-17T16:14:09.336185+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "96ab4a7b54264b7e"
|
||||
---
|
||||
|
||||
# View
|
||||
|
||||
### Purpose
|
||||
This module contains the `ShellViewModel` class, which serves as the ViewModel for the main application shell in a WPF application built using the Prism framework. It acts as the orchestration layer for the UI, managing the view's DataContext, handling interaction requests (notifications/confirmations), and coordinating region navigation via the `IRegionManager`. It bridges the view (`IShellView`) and the backend services via dependency injection (`IUnityContainer`) and event aggregation (`IEventAggregator`).
|
||||
|
||||
### Public Interface
|
||||
* **`ShellViewModel(IShellView view, IRegionManager regionManager, IEventAggregator eventAggregator, IUnityContainer unityContainer)`**
|
||||
* Constructor that initializes the ViewModel, sets the View's DataContext to itself, instantiates `InteractionRequest` objects, and subscribes to the `RaiseNotification` event.
|
||||
* **`void Initialize()` / `void Initialize(object parameter)`**
|
||||
* Empty initialization methods.
|
||||
* **`void Activated()`**
|
||||
* Empty activation method.
|
||||
* **`void Cleanup()`**
|
||||
* Throws `NotImplementedException`.
|
||||
* **`Task CleanupAsync()` / `Task InitializeAsync()` / `Task InitializeAsync(object parameter)`**
|
||||
* Asynchronous lifecycle methods that currently throw `NotImplementedException`.
|
||||
* **`List<FrameworkElement> GetRegions()`**
|
||||
* Returns a list of framework elements named "Region" within the `MainShell` grid of the view.
|
||||
* **`Object ContextMainRegion`**
|
||||
* Property that gets or sets the content of the `MainRegion` ContentControl in the View. Triggers `OnPropertyChanged` on set.
|
||||
* **`InteractionRequest<Notification> NotificationRequest`**
|
||||
* Property used to raise popup notifications in the UI.
|
||||
* **`InteractionRequest<Confirmation> ConfirmationRequest`**
|
||||
* Property used to raise confirmation dialogs in the UI.
|
||||
* **Properties**: `Width`, `Height`, `IsMenuIncluded`, `IsNavigationIncluded`, `HeaderInfo` (returns "MainRegion"), `IsBusy`, `IsDirty` (read-only).
|
||||
|
||||
### Invariants
|
||||
* The `View` property is assigned in the constructor and is never expected to be null during the object's lifetime.
|
||||
* `NotificationRequest` and `ConfirmationRequest` are initialized immediately in the constructor and are never null.
|
||||
* The `HeaderInfo` property always returns the string "MainRegion".
|
||||
* `IsDirty` is a read-only property (effectively always false/default unless logic exists elsewhere).
|
||||
|
||||
### Dependencies
|
||||
* **Dependencies:**
|
||||
* `DTS.Common.Events` (for `RaiseNotification`, `NotificationContentEventArgs`)
|
||||
* `DTS.Common.Interface` (for `IShellView`, `IViewerShellView`, `IViewerShellViewModel`)
|
||||
* `DTS.Common.Utils` (for `Utils.GetChildrenByName`)
|
||||
* `DTS.Common.Base`
|
||||
* `Microsoft.Practices.Prism.Events` (for `IEventAggregator`)
|
||||
* `Microsoft.Practices.Prism.Regions` (for `IRegionManager`)
|
||||
* `Microsoft.Practices.Prism.Interactivity.InteractionRequest`
|
||||
* `Microsoft.Practices.Unity` (for `IUnityContainer`)
|
||||
* `System.ComponentModel.Composition`
|
||||
* **
|
||||
53
docs/ai/DTS Viewer/DTS.Viewer.Loader/ViewModel.md
Normal file
53
docs/ai/DTS Viewer/DTS.Viewer.Loader/ViewModel.md
Normal file
@@ -0,0 +1,53 @@
|
||||
---
|
||||
source_files:
|
||||
- DTS Viewer/DTS.Viewer.Loader/ViewModel/ShellViewModel.cs
|
||||
generated_at: "2026-04-17T16:14:09.333450+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "25896deb08ecc534"
|
||||
---
|
||||
|
||||
# ViewModel
|
||||
|
||||
### Purpose
|
||||
This module contains the `ShellViewModel` class, which serves as the ViewModel for the main application shell in a WPF application built using the Prism framework. It acts as the orchestration layer for the UI, managing the view's DataContext, handling interaction requests (notifications/confirmations), and coordinating region navigation via the `IRegionManager`. It bridges the view (`IShellView`) and the backend services via dependency injection (`IUnityContainer`) and event aggregation (`IEventAggregator`).
|
||||
|
||||
### Public Interface
|
||||
* **`ShellViewModel(IShellView view, IRegionManager regionManager, IEventAggregator eventAggregator, IUnityContainer unityContainer)`**
|
||||
* Constructor that initializes the ViewModel, sets the View's DataContext to itself, instantiates `InteractionRequest` objects, and subscribes to the `RaiseNotification` event.
|
||||
* **`void Initialize()` / `void Initialize(object parameter)`**
|
||||
* Empty initialization methods.
|
||||
* **`void Activated()`**
|
||||
* Empty activation method.
|
||||
* **`void Cleanup()`**
|
||||
* Throws `NotImplementedException`.
|
||||
* **`Task CleanupAsync()` / `Task InitializeAsync()` / `Task InitializeAsync(object parameter)`**
|
||||
* Asynchronous lifecycle methods that currently throw `NotImplementedException`.
|
||||
* **`List<FrameworkElement> GetRegions()`**
|
||||
* Returns a list of framework elements named "Region" within the `MainShell` grid of the view.
|
||||
* **`Object ContextMainRegion`**
|
||||
* Property that gets or sets the content of the `MainRegion` ContentControl in the View. Triggers `OnPropertyChanged` on set.
|
||||
* **`InteractionRequest<Notification> NotificationRequest`**
|
||||
* Property used to raise popup notifications in the UI.
|
||||
* **`InteractionRequest<Confirmation> ConfirmationRequest`**
|
||||
* Property used to raise confirmation dialogs in the UI.
|
||||
* **Properties**: `Width`, `Height`, `IsMenuIncluded`, `IsNavigationIncluded`, `HeaderInfo` (returns "MainRegion"), `IsBusy`, `IsDirty` (read-only).
|
||||
|
||||
### Invariants
|
||||
* The `View` property is assigned in the constructor and is never expected to be null during the object's lifetime.
|
||||
* `NotificationRequest` and `ConfirmationRequest` are initialized immediately in the constructor and are never null.
|
||||
* The `HeaderInfo` property always returns the string "MainRegion".
|
||||
* `IsDirty` is a read-only property (effectively always false/default unless logic exists elsewhere).
|
||||
|
||||
### Dependencies
|
||||
* **Dependencies:**
|
||||
* `DTS.Common.Events` (for `RaiseNotification`, `NotificationContentEventArgs`)
|
||||
* `DTS.Common.Interface` (for `IShellView`, `IViewerShellView`, `IViewerShellViewModel`)
|
||||
* `DTS.Common.Utils` (for `Utils.GetChildrenByName`)
|
||||
* `DTS.Common.Base`
|
||||
* `Microsoft.Practices.Prism.Events` (for `IEventAggregator`)
|
||||
* `Microsoft.Practices.Prism.Regions` (for `IRegionManager`)
|
||||
* `Microsoft.Practices.Prism.Interactivity.InteractionRequest`
|
||||
* `Microsoft.Practices.Unity` (for `IUnityContainer`)
|
||||
* `System.ComponentModel.Composition`
|
||||
* **
|
||||
Reference in New Issue
Block a user