$ show cxasm/notepad--
Notepad-- is a cross-platform Qt/C++ desktop text editor with a Notepad++-style feature set. The production application is a monolithic Qt Widgets GUI that provides multi-tab editing, syntax highlighting for dozens of languages via vendored Scintilla/QScintilla, hex editing, file and directory comparison, encoding detection and batch conversion, find/replace across files, batch rename, macro recording, user-defined languages, theming, and an optional plugin system. The main entry point is src/main.cpp, which handles argument parsing, single-instance IPC, and session restore, then launches the central CCNotePad main window in src/cceditor/ccnotepad.cpp. Core editing behavior is implemented through ScintillaEditView and QsciDisplayWindow, while settings are persisted through QSettings and the NddSetting helper.
The LLM identified 3 files worth highlighting for reuse:
Implements a mediator that brokers scroll and display events between paired editor views, enabling synchronized side-by-side comparison without either view holding direct references to the other. It is a small, self-contained Qt pattern that can be extracted and reused for any dual-pane scroll coupling.
Defines pluggable comparison strategies that let the compare engine swap byte, text, or hex diff approaches without changing the UI layer. The strategy interface is independent enough to be extracted and reused in a standalone diff or file-comparison tool.
Provides an ISorter interface plus concrete line-sorting strategies for lexicographic, case-insensitive, reverse, and column-range-aware sorting. This header is isolated from the editor UI and can be dropped directly into any text-processing or data-cleaning utility.