This commit is contained in:
2026-04-17 14:55:32 -04:00
commit bc3ac1d4c9
18017 changed files with 4371742 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
---
source_files:
- DataPRO/Modules/SystemSettings/PowerAndBattery/Properties/AssemblyInfo.cs
generated_at: "2026-04-17T16:15:47.040450+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "e1b4aa7dc31df68a"
---
# Properties
### 1. Purpose
This module contains assembly-level metadata for the PowerAndBattery assembly. It provides version information, COM visibility settings, and a unique GUID for COM interop identification. This is a standard .NET Framework assembly information file generated by Visual Studio.
### 2. Public Interface
**Assembly Attributes:**
- `[assembly: AssemblyTitle("PowerAndBattery")]`
- `[assembly: AssemblyDescription("")]`
- `[assembly: AssemblyConfiguration("")]`
- `[assembly: AssemblyCompany("")]`
- `[assembly: AssemblyProduct("PowerAndBattery")]`
- `[assembly: AssemblyCopyright("Copyright © 2016")]`
- `[assembly: AssemblyTrademark("")]`
- `[assembly: AssemblyCulture("")]`
- `[assembly: ComVisible(false)]`
- `[assembly: Guid("7446722e-490d-4f6a-beaf-907947e576d5")]`
- `[assembly: AssemblyVersion("1.0.0.0")]

View File

@@ -0,0 +1,81 @@
---
source_files:
- DataPRO/Modules/SystemSettings/PowerAndBattery/View/PowerAndBatteryView.xaml.cs
generated_at: "2026-04-17T16:15:47.040696+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "b29c532f19d777c9"
---
# View
### 1. Purpose
This module provides the ViewModel component for the Power and Battery settings UI within the SystemSettings feature area. It follows the MVVM pattern using Prism and MEF, serving as a placeholder view model that integrates with the application's navigation, event aggregation, and dependency injection infrastructure. The module currently provides minimal domain-specific functionality but establishes the structural foundation for power and battery configuration management.
### 2. Public Interface
**Class: `PowerAndBatteryViewModel`**
- Inherits: `BasePropertyChanged`
- Implements: `IPowerAndBatteryViewModel`
- MEF Export: `[Export(typeof(IPowerAndBatteryView))]` with `[PartCreationPolicy(CreationPolicy.Shared)]` (singleton scope)
**Constructor:**
```csharp
public PowerAndBatteryViewModel(IPowerAndBatteryView view, IRegionManager regionManager, IEventAggregator eventAggregator, IUnityContainer unityContainer)
```
Initializes the view model, sets the View's DataContext to itself, creates interaction requests, and subscribes to `RaiseNotification` and `BusyIndicatorChangeNotification` events.
**Lifecycle Methods:**
- `void Cleanup()` - Empty implementation
- `Task CleanupAsync()` - Returns `Task.CompletedTask`
- `void Initialize()` - Empty implementation
- `void Initialize(object parameter)` - Empty implementation
- `void Initialize(object parameter, object model)` - Empty implementation
- `Task InitializeAsync()` - Returns `Task.CompletedTask`
- `Task InitializeAsync(object parameter)` - Returns `Task.CompletedTask`
- `void Activated()` - Empty implementation
**Properties:**
- `IPowerAndBatteryView View { get; }` - The associated view instance
- `InteractionRequest<Notification> NotificationRequest { get; }` - For raising notification dialogs
- `InteractionRequest<Confirmation> ConfirmationRequest { get; }` - For raising confirmation dialogs
- `bool IsDirty { get; private set; }` - Tracks unsaved changes state
- `bool IsBusy { get; set; }` - Busy indicator state, bound to UI
- `bool IsMenuIncluded { get; set; }` - Menu inclusion flag
- `bool IsNavigationIncluded { get; set; }` - Navigation inclusion flag
- `string HeaderInfo { get; }` - Returns hardcoded "MainRegion"
**Private Event Handlers:**
- `void OnBusyIndicatorNotification(bool eventArg)` - Sets `IsBusy` property from event
- `void OnRaiseNotification(NotificationContentEventArgs eventArgsWithTitle)` - Raises notification dialog via `NotificationRequest.Raise()`
### 3. Invariants
- The `View` property is set at construction and never reassigned.
- `View.DataContext` is always set to `this` (the ViewModel instance) during construction.
- `NotificationRequest` and `ConfirmationRequest` are initialized at construction and never null.
- Event subscriptions use `ThreadOption.PublisherThread` for `BusyIndicatorChangeNotification` with `keepSubscriberReferenceAlive: true`.
- `HeaderInfo` always returns the literal string "MainRegion".
### 4. Dependencies
**Imports (this module depends on):**
- `DTS.Common.Base` - `BasePropertyChanged` base class
- `DTS.Common.Events` - `RaiseNotification`, `BusyIndicatorChangeNotification`, `NotificationContentEventArgs`
- `DTS.Common.Interactivity` - `InteractionRequest<T>`, `Notification`, `Confirmation`
- `DTS.Common.Interface` - `IPowerAndBatteryView`, `IPowerAndBatteryViewModel`
- `Prism.Events` - `IEventAggregator`, `ThreadOption`
- `Prism.Regions` - `IRegionManager`
- `Unity` - `IUnityContainer`
- `System.ComponentModel.Composition` - MEF attributes
**Dependents (inferred):**
- The View component (`PowerAndBatteryView`) which is injected via constructor
- Shell/Bootstrapper that discovers and loads this MEF export
### 5. Gotchas
- **Stale XML documentation**: The constructor's XML comment references "TechnologyDomainEditViewModel" which appears to be a copy-paste error from another module.
- **Empty lifecycle methods**: All `Initialize` and `Cleanup` methods are empty shells. The module does not perform any initialization or cleanup logic.
- **Unused `ConfirmationRequest`**: While instantiated, `ConfirmationRequest` is never raised anywhere in this class.
- **Hardcoded `HeaderInfo`**: Returns "MainRegion" which may be misleading as it suggests region identification but is a static string.
---

View File

@@ -0,0 +1,81 @@
---
source_files:
- DataPRO/Modules/SystemSettings/PowerAndBattery/ViewModel/PowerAndBatteryViewModel.cs
generated_at: "2026-04-17T16:15:47.040032+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "d288a45f3835b6f3"
---
# ViewModel
### 1. Purpose
This module provides the ViewModel component for the Power and Battery settings UI within the SystemSettings feature area. It follows the MVVM pattern using Prism and MEF, serving as a placeholder view model that integrates with the application's navigation, event aggregation, and dependency injection infrastructure. The module currently provides minimal domain-specific functionality but establishes the structural foundation for power and battery configuration management.
### 2. Public Interface
**Class: `PowerAndBatteryViewModel`**
- Inherits: `BasePropertyChanged`
- Implements: `IPowerAndBatteryViewModel`
- MEF Export: `[Export(typeof(IPowerAndBatteryView))]` with `[PartCreationPolicy(CreationPolicy.Shared)]` (singleton scope)
**Constructor:**
```csharp
public PowerAndBatteryViewModel(IPowerAndBatteryView view, IRegionManager regionManager, IEventAggregator eventAggregator, IUnityContainer unityContainer)
```
Initializes the view model, sets the View's DataContext to itself, creates interaction requests, and subscribes to `RaiseNotification` and `BusyIndicatorChangeNotification` events.
**Lifecycle Methods:**
- `void Cleanup()` - Empty implementation
- `Task CleanupAsync()` - Returns `Task.CompletedTask`
- `void Initialize()` - Empty implementation
- `void Initialize(object parameter)` - Empty implementation
- `void Initialize(object parameter, object model)` - Empty implementation
- `Task InitializeAsync()` - Returns `Task.CompletedTask`
- `Task InitializeAsync(object parameter)` - Returns `Task.CompletedTask`
- `void Activated()` - Empty implementation
**Properties:**
- `IPowerAndBatteryView View { get; }` - The associated view instance
- `InteractionRequest<Notification> NotificationRequest { get; }` - For raising notification dialogs
- `InteractionRequest<Confirmation> ConfirmationRequest { get; }` - For raising confirmation dialogs
- `bool IsDirty { get; private set; }` - Tracks unsaved changes state
- `bool IsBusy { get; set; }` - Busy indicator state, bound to UI
- `bool IsMenuIncluded { get; set; }` - Menu inclusion flag
- `bool IsNavigationIncluded { get; set; }` - Navigation inclusion flag
- `string HeaderInfo { get; }` - Returns hardcoded "MainRegion"
**Private Event Handlers:**
- `void OnBusyIndicatorNotification(bool eventArg)` - Sets `IsBusy` property from event
- `void OnRaiseNotification(NotificationContentEventArgs eventArgsWithTitle)` - Raises notification dialog via `NotificationRequest.Raise()`
### 3. Invariants
- The `View` property is set at construction and never reassigned.
- `View.DataContext` is always set to `this` (the ViewModel instance) during construction.
- `NotificationRequest` and `ConfirmationRequest` are initialized at construction and never null.
- Event subscriptions use `ThreadOption.PublisherThread` for `BusyIndicatorChangeNotification` with `keepSubscriberReferenceAlive: true`.
- `HeaderInfo` always returns the literal string "MainRegion".
### 4. Dependencies
**Imports (this module depends on):**
- `DTS.Common.Base` - `BasePropertyChanged` base class
- `DTS.Common.Events` - `RaiseNotification`, `BusyIndicatorChangeNotification`, `NotificationContentEventArgs`
- `DTS.Common.Interactivity` - `InteractionRequest<T>`, `Notification`, `Confirmation`
- `DTS.Common.Interface` - `IPowerAndBatteryView`, `IPowerAndBatteryViewModel`
- `Prism.Events` - `IEventAggregator`, `ThreadOption`
- `Prism.Regions` - `IRegionManager`
- `Unity` - `IUnityContainer`
- `System.ComponentModel.Composition` - MEF attributes
**Dependents (inferred):**
- The View component (`PowerAndBatteryView`) which is injected via constructor
- Shell/Bootstrapper that discovers and loads this MEF export
### 5. Gotchas
- **Stale XML documentation**: The constructor's XML comment references "TechnologyDomainEditViewModel" which appears to be a copy-paste error from another module.
- **Empty lifecycle methods**: All `Initialize` and `Cleanup` methods are empty shells. The module does not perform any initialization or cleanup logic.
- **Unused `ConfirmationRequest`**: While instantiated, `ConfirmationRequest` is never raised anywhere in this class.
- **Hardcoded `HeaderInfo`**: Returns "MainRegion" which may be misleading as it suggests region identification but is a static string.
---