$ show forloopcodes/legacy-notepad
Legacy Notepad is a Windows desktop text editor application built with C++17 and Win32 API as a lightweight alternative to Notepad.exe. It features multi-language support (English/Japanese), multi-encoding text handling (UTF-8, UTF-8 BOM, UTF-16 LE/BE, ANSI), rich editing capabilities (word wrap, font selection, zoom, time/date stamp, find/replace/goto), background image support with multiple positioning modes and opacity control, always-on-top window pinning, printing functionality, and customizable application icons. The architecture follows a modular monolithic structure with separate modules for theme, background, file I/O, editor, UI, dialogs, commands, menu, and settings, coordinated through a Win32 message loop in main.cpp.
The LLM identified 3 files worth highlighting for reuse:
Implements comprehensive theme management with Windows dark mode API integration. Handles immersive dark mode for title bar, menus, and controls. Demonstrates non-obvious skill in properly detecting system theme settings and applying dark mode to all UI elements while maintaining compatibility with older Windows versions.
Provides sophisticated background image rendering using GDI+ with support for multiple positioning modes (tile, stretch, fit, fill, and nine anchor points). Includes proper opacity handling, bitmap caching, and efficient rendering. Demonstrates skill in GDI+ usage, memory management, and handling various image positioning algorithms.
Implements robust multi-encoding file I/O with automatic BOM detection and line ending conversion. Handles UTF-8, UTF-8 BOM, UTF-16 LE/BE, and ANSI encodings with proper BOM handling and line ending preservation/conversion. Demonstrates non-obvious skill in encoding detection algorithms and safe text conversion between different formats.