docs(12-02): complete MSP logo section plan
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -116,6 +116,6 @@ Plans:
|
|||||||
| 6-9 | v1.1 | 25/25 | Shipped | 2026-04-08 |
|
| 6-9 | v1.1 | 25/25 | Shipped | 2026-04-08 |
|
||||||
| 10. Branding Data Foundation | v2.2 | 3/3 | Complete | 2026-04-08 |
|
| 10. Branding Data Foundation | v2.2 | 3/3 | Complete | 2026-04-08 |
|
||||||
| 11. HTML Export Branding + ViewModel Integration | 4/4 | Complete | 2026-04-08 | — |
|
| 11. HTML Export Branding + ViewModel Integration | 4/4 | Complete | 2026-04-08 | — |
|
||||||
| 12. Branding UI Views | 1/3 | In Progress| | — |
|
| 12. Branding UI Views | 2/3 | In Progress| | — |
|
||||||
| 13. User Directory ViewModel | v2.2 | 0/? | Not started | — |
|
| 13. User Directory ViewModel | v2.2 | 0/? | Not started | — |
|
||||||
| 14. User Directory View | v2.2 | 0/? | Not started | — |
|
| 14. User Directory View | v2.2 | 0/? | Not started | — |
|
||||||
|
|||||||
@@ -3,14 +3,14 @@ gsd_state_version: 1.0
|
|||||||
milestone: v2.2
|
milestone: v2.2
|
||||||
milestone_name: Report Branding & User Directory
|
milestone_name: Report Branding & User Directory
|
||||||
status: completed
|
status: completed
|
||||||
stopped_at: Completed 12-01-PLAN.md
|
stopped_at: Completed 12-02-PLAN.md
|
||||||
last_updated: "2026-04-08T13:19:29.504Z"
|
last_updated: "2026-04-08T13:21:27.706Z"
|
||||||
last_activity: 2026-04-08 — Phase 11 planning completed
|
last_activity: 2026-04-08 — Phase 11 planning completed
|
||||||
progress:
|
progress:
|
||||||
total_phases: 5
|
total_phases: 5
|
||||||
completed_phases: 2
|
completed_phases: 2
|
||||||
total_plans: 10
|
total_plans: 10
|
||||||
completed_plans: 8
|
completed_plans: 9
|
||||||
---
|
---
|
||||||
|
|
||||||
# Project State
|
# Project State
|
||||||
@@ -66,6 +66,7 @@ Decisions are logged in PROJECT.md Key Decisions table.
|
|||||||
- [Phase 11]: Guard clause (if _brandingService is not null) used for graceful degradation — branding = null fallback preserves backward compat
|
- [Phase 11]: Guard clause (if _brandingService is not null) used for graceful degradation — branding = null fallback preserves backward compat
|
||||||
- [Phase 11]: No App.xaml.cs changes needed for ViewModel branding injection — IBrandingService already registered as singleton, ViewModel registrations auto-resolve
|
- [Phase 11]: No App.xaml.cs changes needed for ViewModel branding injection — IBrandingService already registered as singleton, ViewModel registrations auto-resolve
|
||||||
- [Phase 12]: Skipped BitmapImage creation test due to missing Xunit.StaFact; STA thread required for WPF BitmapImage
|
- [Phase 12]: Skipped BitmapImage creation test due to missing Xunit.StaFact; STA thread required for WPF BitmapImage
|
||||||
|
- [Phase 12]: Used Grid overlay with DataTrigger for logo/placeholder visibility toggle in SettingsView
|
||||||
|
|
||||||
### Pending Todos
|
### Pending Todos
|
||||||
|
|
||||||
@@ -80,7 +81,7 @@ None.
|
|||||||
|
|
||||||
## Session Continuity
|
## Session Continuity
|
||||||
|
|
||||||
Last session: 2026-04-08T13:19:29.502Z
|
Last session: 2026-04-08T13:21:27.704Z
|
||||||
Stopped at: Completed 12-01-PLAN.md
|
Stopped at: Completed 12-02-PLAN.md
|
||||||
Resume file: None
|
Resume file: None
|
||||||
Next step: `/gsd:execute-phase 11`
|
Next step: `/gsd:execute-phase 11`
|
||||||
|
|||||||
55
.planning/phases/12-branding-ui-views/12-02-SUMMARY.md
Normal file
55
.planning/phases/12-branding-ui-views/12-02-SUMMARY.md
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
---
|
||||||
|
phase: 12-branding-ui-views
|
||||||
|
plan: "02"
|
||||||
|
subsystem: settings-ui
|
||||||
|
tags: [wpf, xaml, branding, settings, logo-preview]
|
||||||
|
dependency_graph:
|
||||||
|
requires: [12-01]
|
||||||
|
provides: [msp-logo-section, settings-logo-preview]
|
||||||
|
affects: [SettingsView]
|
||||||
|
tech_stack:
|
||||||
|
patterns: [DataTrigger-visibility-toggle, Base64ToImageConverter-binding, Grid-overlay-layout]
|
||||||
|
key_files:
|
||||||
|
modified:
|
||||||
|
- SharepointToolbox/Views/Tabs/SettingsView.xaml
|
||||||
|
decisions:
|
||||||
|
- "Used Grid overlay for Image and placeholder TextBlock with DataTrigger toggling visibility"
|
||||||
|
- "Kept MaxHeight=80 MaxWidth=240 with Stretch=Uniform for consistent small preview"
|
||||||
|
metrics:
|
||||||
|
duration: "31s"
|
||||||
|
completed: "2026-04-08T13:20:51Z"
|
||||||
|
tasks_completed: 1
|
||||||
|
tasks_total: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
# Phase 12 Plan 02: MSP Logo Section in SettingsView Summary
|
||||||
|
|
||||||
|
MSP logo preview section added to SettingsView.xaml with Border/Grid overlay pattern, Import/Clear buttons, and red StatusMessage feedback.
|
||||||
|
|
||||||
|
## What Was Done
|
||||||
|
|
||||||
|
### Task 1: Add MSP logo section to SettingsView.xaml
|
||||||
|
- **Commit:** b035e91
|
||||||
|
- Added Separator after data folder DockPanel
|
||||||
|
- Added Label bound to `settings.logo.title` localization key
|
||||||
|
- Added Border (light gray outline, rounded corners) containing a Grid
|
||||||
|
- Grid overlays an Image (bound to `MspLogoPreview` via `Base64ToImageConverter`) and a placeholder TextBlock (bound to `settings.logo.nopreview`)
|
||||||
|
- Image visibility controlled by `StringToVisibilityConverter`; placeholder uses a `DataTrigger` to collapse when logo is present
|
||||||
|
- Two horizontally-stacked buttons: Import (`BrowseMspLogoCommand`) and Clear (`ClearMspLogoCommand`)
|
||||||
|
- StatusMessage TextBlock in `#CC0000` red, only visible when non-empty
|
||||||
|
|
||||||
|
## Deviations from Plan
|
||||||
|
|
||||||
|
None - plan executed exactly as written.
|
||||||
|
|
||||||
|
## Verification
|
||||||
|
|
||||||
|
- `dotnet build --no-restore -warnaserror` passed with 0 warnings, 0 errors
|
||||||
|
|
||||||
|
## Commits
|
||||||
|
|
||||||
|
| Task | Commit | Message |
|
||||||
|
| ---- | --------- | ---------------------------------------------------------- |
|
||||||
|
| 1 | b035e91 | feat(12-02): add MSP logo section with live preview to SettingsView |
|
||||||
|
|
||||||
|
## Self-Check: PASSED
|
||||||
Reference in New Issue
Block a user