From f64b8d3f962719d107d46ab4808669560730e4a5 Mon Sep 17 00:00:00 2001 From: yggverse Date: Mon, 9 Sep 2024 08:33:48 +0300 Subject: [PATCH] update readme --- README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/README.md b/README.md index 10c905ed..bca35637 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,17 @@ apt install git\ ## Development +### Structure + +Application sources located at `src/app` folder, by following basic principles: + +* Every file extends one of GTK 4 Widgets according to subject (e.g. `class Browser : public Gtk::ApplicationWindow`) +* `src/app` does not contain other class entities like models or libraries (another folders and namespaces at `src` root are reserved for these needs) +* Every file work with it own, 1th level child only, to prevent massive logic levels keeping in mind +* To access any children features, deeper or higher than 1th level of current class, use delegation methods (actions, getters and setters) +* One file - one class. If the file requires additional (GTK) component, this component should be placed at similar folder with same name as parent filename. So we have simple hierarchy navigation logic - from app to window, from window to it container, etc. +* At this moment, all constants named with uppercase, const everything that not mutable + ### Environment ``` bash