init
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
---
|
||||
source_files:
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/Model/TestSummaryModel.cs
|
||||
generated_at: "2026-04-17T16:13:21.102247+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "d37e74a48fb5e9de"
|
||||
---
|
||||
|
||||
# Model
|
||||
|
||||
### Purpose
|
||||
This module contains `TestSummaryModel`, the data model responsible for loading and managing test summary data from `.dts` files. It coordinates asynchronous file system operations, event publication for UI state management (busy indicators, status updates), and test selection logic. The model acts as a bridge between file-based test metadata and the view model layer.
|
||||
|
||||
### Public
|
||||
@@ -0,0 +1,36 @@
|
||||
---
|
||||
source_files:
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/Properties/AssemblyInfo.cs
|
||||
generated_at: "2026-04-17T16:13:21.100385+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "3c0296d679a84b04"
|
||||
---
|
||||
|
||||
# Properties
|
||||
|
||||
### Purpose
|
||||
This module contains assembly-level metadata for the `DTS.Viewer.Test` assembly. It provides versioning, copyright, and COM visibility configuration using standard .NET Framework assembly attributes. This is a boilerplate configuration module with no runtime logic.
|
||||
|
||||
### Public Interface
|
||||
No public types are exposed by this module. It contains only assembly-level attributes:
|
||||
|
||||
- **`AssemblyTitle`**: "DTS.Viewer.Test"
|
||||
- **`AssemblyDescription`**: Empty
|
||||
- **`AssemblyVersion`**: "1.0.0.0"
|
||||
- **`AssemblyFileVersion`**: "1.0.0.0"
|
||||
- **`ComVisible`**: false
|
||||
- **`Guid`**: "b2b2b862-1b93-476a-8246-91e1310c7ec7"
|
||||
|
||||
### Invariants
|
||||
- Assembly version is fixed at 1.0.0.0; manual updates required for version increments.
|
||||
- COM visibility is disabled for all types in this assembly.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on:** `System.Reflection`, `System.Runtime.CompilerServices`, `System.Runtime.InteropServices` (standard .NET Framework assemblies)
|
||||
- **Depended on by:** Not applicable; this is configuration metadata.
|
||||
|
||||
### Gotchas
|
||||
- The `AssemblyTitle` is "DTS.Viewer.Test" while the module path suggests "DTS.Viewer.TestSummaryList". This discrepancy may indicate a rename occurred without updating assembly metadata, or the title attribute is intentionally generic.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,33 @@
|
||||
---
|
||||
source_files:
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/Resources/StringResources.ja.Designer.cs
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/Resources/TranslateExtension.cs
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/Resources/StringResources.Designer.cs
|
||||
generated_at: "2026-04-17T15:54:29.404798+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "6473ce1c8faeb7d4"
|
||||
---
|
||||
|
||||
# Documentation: DTS.Viewer.TestSummaryList.Resources
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module provides localization infrastructure for the DTS Viewer TestSummaryList feature. It consists of a strongly-typed resource accessor class (`StringResources`) that wraps .NET resource manager functionality for retrieving localized UI strings, and a XAML markup extension (`TranslateExtension`) that enables declarative resource lookups directly in XAML bindings. The module centralizes all user-facing text for test summary operations including browsing, sorting, filtering, and displaying test metadata.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### `TranslateExtension` (public class)
|
||||
|
||||
**Namespace:** `DTS.Viewer.TestSummaryList`
|
||||
|
||||
**Inheritance:** `MarkupExtension`
|
||||
|
||||
A XAML markup extension for retrieving localized strings from the resource manager.
|
||||
|
||||
| Member | Signature | Description |
|
||||
|--------|-----------|-------------|
|
||||
| Constructor | `TranslateExtension(string key)` | Initializes the extension with the resource key to look up. |
|
||||
| `ProvideValue` |
|
||||
@@ -0,0 +1,39 @@
|
||||
---
|
||||
source_files:
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/View/TestSummaryView.xaml.cs
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/View/TestSummaryListView.xaml.cs
|
||||
generated_at: "2026-04-17T16:11:50.602393+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "3e8b4564b60b26e9"
|
||||
---
|
||||
|
||||
# View
|
||||
|
||||
### Purpose
|
||||
This module provides localization/internationalization support for the DTS.Viewer.Filter module. It enables XAML-based string resource lookup through a markup extension pattern, allowing UI elements to display localized strings at design-time and runtime without code-behind resource lookups.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`TranslateExtension` class** (inherits `MarkupExtension`)
|
||||
- `TranslateExtension(string key)` - Constructor accepting the resource key to look up.
|
||||
- `object ProvideValue(IServiceProvider serviceProvider)` - Returns the localized string for `_key`, or a fallback error string if not found.
|
||||
- Constant: `NotFound = "#stringnotfound#"` - Fallback prefix used when resource lookup fails.
|
||||
|
||||
**`StringResources` class** (internal, auto-generated)
|
||||
- `static ResourceManager ResourceManager { get; }` - Lazily-initialized, cached ResourceManager for the `DTS.Viewer.Filter.Resources.StringResources` resource bundle.
|
||||
- `static CultureInfo Culture { get; set; }` - Overrides the current thread's CurrentUICulture for resource lookups.
|
||||
- `static string Search { get; }` - Localized string resource for "Search".
|
||||
|
||||
### Invariants
|
||||
- `ProvideValue` always returns a non-null string.
|
||||
- If `_key` is null or empty, `ProvideValue` returns exactly `NotFound` ("#stringnotfound#").
|
||||
- If the resource key does not exist in the resource bundle, `ProvideValue` returns `NotFound + " " + _key` (e.g., "#stringnotfound# MissingKey").
|
||||
- `ResourceManager` is lazily instantiated on first access and cached thereafter.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `System`, `System.Windows.Markup`, `System.Resources`, `System.Globalization`.
|
||||
- **Depended on by**: XAML views within the DTS.Viewer.Filter module that use `{local:Translate KeyName}` syntax.
|
||||
|
||||
### Gotchas
|
||||
- `StringResources`
|
||||
@@ -0,0 +1,112 @@
|
||||
---
|
||||
source_files:
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/ViewModel/TestSummaryViewModel.cs
|
||||
- DTS Viewer/DTS.Viewer.Modules/DTS.Viewer.TestSummaryList/ViewModel/TestSummaryViewListModel.cs
|
||||
generated_at: "2026-04-17T15:56:32.359697+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "170b78c49a4abb43"
|
||||
---
|
||||
|
||||
# Documentation: TestSummaryList ViewModels
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module provides two ViewModel implementations (`TestSummaryViewModel` and `TestSummaryViewListModel`) for managing and displaying test summary data within the DTS Viewer application. Both classes implement `ITestSummaryListViewModel` and serve as intermediaries between test summary data models and their associated views, handling user interactions, event aggregation for cross-component communication, data filtering, and sorting. The module exists to support the Prism-based MVVM architecture, coordinating test summary selection, folder/file data loading, and notification publishing to other application components.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### TestSummaryViewModel
|
||||
|
||||
**Constructor:**
|
||||
```csharp
|
||||
public TestSummaryViewModel(ITestSummaryListView view, IRegionManager regionManager, IEventAggregator eventAggregator, IUnityContainer unityContainer)
|
||||
```
|
||||
Initializes the ViewModel, sets the view's DataContext, creates interaction requests, and subscribes to `RaiseNotification` and `DataFolderChangedEvent` events.
|
||||
|
||||
**Methods:**
|
||||
|
||||
| Method | Signature | Description |
|
||||
|--------|-----------|-------------|
|
||||
| `Initialize` | `void Initialize()` | Empty override. |
|
||||
| `Initialize` | `void Initialize(object parameter)` | Casts parameter to `IBaseWindowModel` and assigns to `Parent`. |
|
||||
| `Activated` | `void Activated()` | Throws `NotImplementedException`. |
|
||||
| `Cleanup` | `void Cleanup()` | Throws `NotImplementedException`. |
|
||||
| `CleanupAsync` | `Task CleanupAsync()` | Throws `NotImplementedException`. |
|
||||
| `InitializeAsync` | `Task InitializeAsync()` | Throws `NotImplementedException`. |
|
||||
| `InitializeAsync` | `Task InitializeAsync(object parameter)` | Throws `NotImplementedException`. |
|
||||
| `PublishSelectedTestSummaryList` | `void PublishSelectedTestSummaryList()` | Publishes `TestSummaryChangeNotification` and `TestSelectedChangedEvent` events with current selection. |
|
||||
|
||||
**Properties:**
|
||||
|
||||
| Property | Type | Description |
|
||||
|----------|------|-------------|
|
||||
| `TestSummaryListView` | `ITestSummaryListView` | The associated view instance. |
|
||||
| `NotificationRequest` | `InteractionRequest<Notification>` | Prism interaction request for notifications. |
|
||||
| `ConfirmationRequest` | `InteractionRequest<Confirmation>` | Prism interaction request for confirmations. |
|
||||
| `ContextNavigationRegion` | `object` | Gets/sets content of `TestListRegion` on the view. |
|
||||
| `SelectedTestSummary` | `TestSummary` | Currently selected single test summary. |
|
||||
| `SelectedTestSummaryList` | `List<ITestSummary>` | List of selected test summaries. |
|
||||
| `TestSummaryList` | `ObservableCollection<ITestSummary>` | Collection of all test summaries. |
|
||||
| `HeaderInfo` | `string` | Returns `"TestSummaryRegion"`. |
|
||||
| `IsBusy` | `bool` | Busy indicator state. |
|
||||
| `IsDirty` | `bool` | Dirty state flag. |
|
||||
| `IsNavigationIncluded` | `bool` | Navigation inclusion flag. |
|
||||
|
||||
**Events:**
|
||||
- `PropertyChanged` - Custom `PropertyChangedEventHandler` (hides base implementation with `new`).
|
||||
|
||||
---
|
||||
|
||||
### TestSummaryViewListModel
|
||||
|
||||
**Constructor:**
|
||||
```csharp
|
||||
public TestSummaryViewListModel(ITestSummaryListView view, IRegionManager regionManager, IEventAggregator eventAggregator, IUnityContainer unityContainer)
|
||||
```
|
||||
Initializes the ViewModel, sets the view's DataContext, creates interaction requests, and stores dependencies.
|
||||
|
||||
**Methods:**
|
||||
|
||||
| Method | Signature | Description |
|
||||
|--------|-----------|-------------|
|
||||
| `Initialize` | `void Initialize()` | Empty override. |
|
||||
| `Initialize` | `void Initialize(object parameter)` | Sets `Parent`, initializes `FilterView`, attaches collection changed handlers, and calls `Subscribe()`. |
|
||||
| `OnFilterChanged` | `void OnFilterChanged(FilterParameterArgs args)` | Filters `FilteredTestSummaryList` based on `SetupName`, `Id`, or `Description` containing the parameter string. |
|
||||
| `Activated` | `void Activated()` | Publishes empty `FilterParameterChangedEvent` to reset filter. |
|
||||
| `Cleanup` | `void Cleanup()` | Clears all collections, resets `SelectedTestSummary`, and publishes selection changes. |
|
||||
| `PublishSelectedTestSummaryList` | `void PublishSelectedTestSummaryList()` | Publishes `TestSummaryChangeNotification`, `TestSummaryCountNotification`, and `ResetZoomChangedEvent`. |
|
||||
| `RefreshDataFolder` | `void RefreshDataFolder()` | Publishes `DataFolderChangedEvent` via dispatcher. |
|
||||
| `SelectDataFolder` | `void SelectDataFolder()` | Opens `OpenFileDialog` for .dts files and publishes `DataFileSelectedEvent`. |
|
||||
| `SortTestSummaryList` | `void SortTestSummaryList()` | Sorts `FilteredTestSummaryList` based on `SelectedSortIndex`. |
|
||||
|
||||
**Properties:**
|
||||
|
||||
| Property | Type | Description |
|
||||
|----------|------|-------------|
|
||||
| `FilterView` | `IFilterView` | Resolved filter view instance. |
|
||||
| `View` | `ITestSummaryListView` | The associated view instance. |
|
||||
| `NotificationRequest` | `InteractionRequest<Notification>` | Prism interaction request for notifications. |
|
||||
| `ConfirmationRequest` | `InteractionRequest<Confirmation>` | Prism interaction request for confirmations. |
|
||||
| `ContextNavigationRegion` | `object` | Gets/sets DataContext of `TestListRegion` on the view. |
|
||||
| `IsFilterEnabled` | `bool` | Indicates if filtering is available (true when list has items). |
|
||||
| `SelectedTestSummary` | `TestSummary` | Currently selected single test summary. |
|
||||
| `SelectedTestSummaryList` | `List<ITestSummary>` | List of selected test summaries. |
|
||||
| `TestSummaryList` | `ObservableCollection<ITestSummary>` | Full collection; setter updates `IsFilterEnabled` and `FilteredTestSummaryList`. |
|
||||
| `FilteredTestSummaryList` | `ObservableCollection<ITestSummary>` | Filtered/sorted view of test summaries. |
|
||||
| `HeaderInfo` | `string` | Returns `"TestSummaryRegion"`. |
|
||||
| `IsBusy` | `bool` | Busy indicator state. |
|
||||
| `IsDirty` | `bool` | Dirty state flag. |
|
||||
| `IsNavigationIncluded` | `bool` | Navigation inclusion flag. |
|
||||
| `SelectedDataFolder` | `string` | Selected folder path; setter publishes `DataFolderChangedEvent`. |
|
||||
| `SelectedDataFile` | `string` | Selected file path; setter publishes `DataFolderChangedEvent`. |
|
||||
| `SortableAttributes` | `List<string>` | Localized list of sortable attribute names. |
|
||||
| `SelectedSortIndex` | `int` | Index of selected sort; setter triggers `SortTestSummaryList()`. |
|
||||
|
||||
**Commands:**
|
||||
|
||||
| Command | Type | Description |
|
||||
|---------|------|-------------|
|
||||
| `Refresh
|
||||
Reference in New Issue
Block a user