You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: Src/AppCore/COPILOT.md
+9-105Lines changed: 9 additions & 105 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -98,124 +98,28 @@ C++ native header-only library. Headers and implementation files are designed to
98
98
No COM/PInvoke boundaries. Pure native C++ code consumed via `#include` directives. Provides RAII wrappers around Windows GDI HANDLEs to ensure proper cleanup via destructors. Debug builds track GDI resource allocations (s_cDCs, s_cFonts) to detect leaks via static counters.
99
99
100
100
## Threading & Performance
101
-
Thread-agnostic code. GDI resources (DCs, fonts, brushes) have thread affinity and require careful handling in multi-threaded scenarios; AppCore does not enforce thread safety. Smart wrapper classes use RAII for deterministic cleanup within a single thread. Performance notes: AfGdi tracking adds overhead in debug builds via counters and optional logging; release builds should disable tracking. ColorTable maintains global singleton (g_ct) initialized at startup.
101
+
Thread-agnostic; GDI resources have thread affinity. RAII wrappers ensure cleanup. Debug tracking adds overhead; global ColorTable singleton.
102
102
103
103
## Config & Feature Flags
104
-
Debug-only resource tracking controlled by static flags:
105
-
-`AfGdi::s_fShowDCs`: When true, logs DC allocation/deallocation to debug output
106
-
-`AfGdi::s_fShowFonts`: When true, logs font allocation/deallocation to debug output
107
-
No runtime configuration files.
104
+
Debug flags: AfGdi::s_fShowDCs, AfGdi::s_fShowFonts for allocation logging. No runtime config.
108
105
109
106
## Build Information
110
-
- No standalone project file; this is a header-only library consumed via include paths
111
-
- Build using the top-level FieldWorks.sln (Visual Studio/MSBuild)
112
-
- Consumer projects (Kernel.vcxproj, views.vcxproj) reference AppCore via NMakeIncludeSearchPath
113
-
- Do not attempt to build AppCore in isolation; it is included directly into consumer C++ projects
107
+
Header-only library consumed via include paths. Build using FieldWorks.sln. Consumer projects reference via NMakeIncludeSearchPath.
114
108
115
109
## Interfaces and Data Models
116
-
117
-
-**AfGfx** (AfGfx.h/cpp)
118
-
- Purpose: Static utility class providing Windows GDI helper functions
0 commit comments