From 13d44de9f912ec062260429bb538fbbff5105434 Mon Sep 17 00:00:00 2001 From: "David H. Friedel Jr" Date: Fri, 30 Jan 2026 03:46:29 +0000 Subject: [PATCH] Move CLAUDE.md to vault --- CLAUDE.md | 89 ------------------------------------------------------- 1 file changed, 89 deletions(-) delete mode 100644 CLAUDE.md diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index e473c4d..0000000 --- a/CLAUDE.md +++ /dev/null @@ -1,89 +0,0 @@ -# CLAUDE.md - -This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. - -## Project Overview - -ControlMyMonitorManagement is a C# WPF desktop application for controlling monitor settings via DDC/CI (Display Data Channel/Command Interface). It allows controlling VCP (Virtual Control Panel) codes like brightness, contrast, and power state across multiple displays. - -## Build Commands - -```bash -# Build entire solution -dotnet build ControlMyMonitorManagement.sln - -# Build specific project -dotnet build ControlMyMonitorManagement/ControlMyMonitorManagement.csproj -dotnet build DellMonitorControl/DellMonitorControl.csproj - -# Run tests -dotnet test Tester/Tester.csproj - -# Run main application -dotnet run --project ControlMyMonitorManagement/ControlMyMonitorManagement.csproj - -# Run Dell-specific application -dotnet run --project DellMonitorControl/DellMonitorControl.csproj -``` - -## Architecture - -### Solution Structure (7 Projects) - -``` -ControlMyMonitorManagement.sln -├── ControlMyMonitorManagement # Main WPF UI application -├── DellMonitorControl # Dell-specific WPF app with system tray -├── Library # Core business logic and monitor control -├── CMMModel # Data models for monitor status/VCP codes -├── CMMService # Service layer (Interface/, Service/) -├── Language # Localization support (CulturesHelper) -└── Tester # NUnit test project -``` - -### Key Components in Library Project - -- **Method/CMMMgr.cs** - Main manager class, initializes monitor collection -- **Method/CMMCommand.cs** - Core monitor control commands (PowerOn, Sleep, SetBrightness, SetContrast, SetInputSource, etc.) -- **ViewModel/XMonitor.cs** - Monitor data model (device name, adapter, serial number) -- **ViewModel/XMonitorStatus.cs** - VCP feature status (code, value, max) -- **WinAPI/Win32Api.cs** - Windows API interop for DDC/CI commands -- **Config/Config.cs** - JSON configuration management -- **Helpers/ConsoleHelper.cs** - Process wrapper for cmd.exe commands - -### VCP Codes Reference - -Common VCP codes used in this project: -- **D6** (Power): 1=on, 4=sleep, 5=off -- **10** (Brightness): 0-100 -- **12** (Contrast): 0-100 -- **60** (Input Source): 1=VGA, 3=DVI, 15=DisplayPort, 17=HDMI - -## Localization - -Supports 9 languages with auto-detection from system locale: -- English (en), Spanish (es), French (fr), German (de) -- Chinese (zh), Japanese (ja), Portuguese (pt), Italian (it), Hindi (hi) - -Resource files: `Language/StringResources.{locale}.xaml` -Helper: `Language/CulturesHelper.cs` - call `ApplySystemLanguage()` on startup - -### Embedded Resource - -`Library/Resource/ControlMyMonitor.exe` - Third-party tool (by Nir Sofer) embedded for DDC/CI operations - -## Patterns Used - -- **MVVM** - PropertyBase class implements INotifyPropertyChanged -- **Async/Await** - Monitor scanning operations are async -- **Dependency Injection** - Used in DellMonitorControl for configuration - -## Target Framework - -.NET 7.0-windows with WPF (UseWPF=true) - -## Versioning - -Dynamic version format: `Major.Minor.DaysSinceProjectStart.HourMinutes` -- Main app project start: 2017-09-17 -- DellMonitorControl start: 2023-07-02