mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-10-02 11:10:31 +03:00
ecode: add customizable debugger panel layouts
- add a reusable right-side panel managed at the application level
- migrate debugger tabs to UITabWidgetSplitter instances
- support moving and splitting debugger tabs across bottom and right panels
- restrict debugger tab drops to debugger-owned panel targets
- serialize debugger tab layouts, panel state, and table column widths
- add pixel and percentage column-width modes to UIAbstractTableView
- support XML/CSS configuration and an optional width-mode context menu
- preserve percentage totals across resizing, fit-to-content, minimum widths,
scrollbar changes, and pixel-density rounding
- add splitter edge hiding while preserving splitter-always-show precedence
- use EventConnection ownership for safe widget and controller lifetimes
- validate serialized splitter layouts with structural limits
- display project-relative source paths in debugger stack frames
- add ecode localization strings, CSS documentation, tests, and agent rules
This commit is contained in:
@@ -17,9 +17,24 @@ When working on this project, rely on the following resources to understand exis
|
||||
* **Implementation Examples:** A wide variety of examples showing how to use the library are located in `src/examples/`.
|
||||
* **General Context:** The `README.md` at the root directory contains deeper project details.
|
||||
|
||||
## Localization
|
||||
|
||||
The locale catalogs under `bin/assets/i18n/` belong to **ecode**; the other applications are not
|
||||
currently localized. Whenever an ecode feature introduces or changes a user-facing i18n key, add or
|
||||
update that key in every catalog in this directory. Do not rely only on the fallback string embedded
|
||||
in the source. Keep all locale files structurally valid and verify that every supported catalog
|
||||
contains the new or renamed key.
|
||||
|
||||
## C++ Virtual Method Style
|
||||
Follow the convention already used by the class being edited. In particular, when a class declares
|
||||
virtual methods without the `override` specifier, do not introduce `override` on new methods in that
|
||||
class. Mixing the styles can enable Clang's inconsistent-missing-override warnings for the existing
|
||||
declarations. A class-wide conversion is a separate change and must update all applicable methods
|
||||
together.
|
||||
|
||||
## Namespace Style
|
||||
|
||||
Follow eepp's established namespace style: prefer the appropriate `using namespace EE::...`
|
||||
declarations and unqualified eepp type names, such as `UISplitter`, over repeatedly spelling fully
|
||||
qualified names such as `EE::UI::UISplitter`. Keep explicit qualification only where it is required
|
||||
to resolve ambiguity or avoid importing an unusually broad namespace into an unsuitable scope.
|
||||
|
||||
Reference in New Issue
Block a user