Files
DP44/docs/ai/DataPRO/Modules/Menu/HamburgerMenu.md

38 lines
2.1 KiB
Markdown
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- DataPRO/Modules/Menu/HamburgerMenu/HamburgerMenuModule.cs
generated_at: "2026-04-17T16:47:06.193165+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "1307b5881a344ee2"
---
# HamburgerMenuModule Documentation
## 1. Purpose
This module provides a Prism-based "Hamburger Menu" navigation component for the DataPRO application. It exists to register the hamburger menu's view and view-model with the Unity dependency injection container as singletons, and to expose assembly metadata (name, image, group, region) via custom attributes. The module is categorized under the "Prepare" assembly group and targets the `HamburgerMenuRegion` for UI composition.
---
## 2. Public Interface
### `HamburgerMenuModule` (Class)
Implements `Prism.Modularity.IModule`. The primary module entry point for hamburger menu registration.
| Member | Signature | Description |
|--------|-----------|-------------|
| Constructor | `HamburgerMenuModule(IUnityContainer unityContainer)` | Accepts a Unity container via dependency injection and stores it in `_unityContainer`. |
| `Initialize` | `void Initialize()` | Registers `IHamburgerMenuView``HamburgerMenuView` and `IHamburgerMenuViewModel``HamburgerMenuViewModel` as singleton types using `ContainerControlledLifetimeManager`. |
| `OnInitialized` | `void OnInitialized(IContainerProvider containerProvider)` | Empty implementation; no post-initialization logic. |
| `RegisterTypes` | `void RegisterTypes(IContainerRegistry containerRegistry)` | Delegates to `Initialize()` to perform type registration. |
### `HamburgerMenuModuleNameAttribute` (Class)
Extends `TextAttribute`. Applied at assembly level to expose the module's name.
| Member | Signature | Description |
|--------|-----------|-------------|
| Constructor | `HamburgerMenuModuleNameAttribute()` | Default constructor; delegates to `this(null)`. |
| Constructor | `HamburgerMenuModuleNameAttribute(string s)` | Initializes `AssemblyName` to `AssemblyNames.HamburgerMenu.ToString()`. Parameter `s` is unused. |
| `AssemblyName` | `override string AssemblyName { get; }` | Returns `"HamburgerMenu"` (via enum conversion). |
| `GetAttribute