ui: split Apps(runtime) into subtabs (Profiles/Run/Marks/Units/Log)
This commit is contained in:
@@ -213,6 +213,11 @@ RU: Восстанавливает маршруты/nft из последнег
|
|||||||
apps_hint.setStyleSheet("color: gray;")
|
apps_hint.setStyleSheet("color: gray;")
|
||||||
tab_apps_layout.addWidget(apps_hint)
|
tab_apps_layout.addWidget(apps_hint)
|
||||||
|
|
||||||
|
# EN: Split this UX into subtabs to fit smaller screens (no giant vertical stack).
|
||||||
|
# RU: Разбиваем на под-вкладки, чтобы помещалось на маленьких экранах.
|
||||||
|
self.apps_tabs = QTabWidget()
|
||||||
|
tab_apps_layout.addWidget(self.apps_tabs, stretch=1)
|
||||||
|
|
||||||
profiles_group = QGroupBox("Added apps (profiles)")
|
profiles_group = QGroupBox("Added apps (profiles)")
|
||||||
profiles_layout = QVBoxLayout(profiles_group)
|
profiles_layout = QVBoxLayout(profiles_group)
|
||||||
|
|
||||||
@@ -288,7 +293,11 @@ RU: Восстанавливает маршруты/nft из последнег
|
|||||||
self.lbl_app_profiles.setStyleSheet("color: gray;")
|
self.lbl_app_profiles.setStyleSheet("color: gray;")
|
||||||
profiles_layout.addWidget(self.lbl_app_profiles)
|
profiles_layout.addWidget(self.lbl_app_profiles)
|
||||||
|
|
||||||
tab_apps_layout.addWidget(profiles_group)
|
tab_profiles = QWidget()
|
||||||
|
tab_profiles_layout = QVBoxLayout(tab_profiles)
|
||||||
|
tab_profiles_layout.addWidget(profiles_group)
|
||||||
|
tab_profiles_layout.addStretch(1)
|
||||||
|
self.apps_tabs.addTab(tab_profiles, "Profiles")
|
||||||
|
|
||||||
run_group = QGroupBox("Run app (systemd unit) + apply mark")
|
run_group = QGroupBox("Run app (systemd unit) + apply mark")
|
||||||
run_layout = QVBoxLayout(run_group)
|
run_layout = QVBoxLayout(run_group)
|
||||||
@@ -391,7 +400,11 @@ RU: Восстанавливает маршруты/nft из последнег
|
|||||||
run_layout.addWidget(self.lbl_app_last)
|
run_layout.addWidget(self.lbl_app_last)
|
||||||
self._refresh_last_scope_ui()
|
self._refresh_last_scope_ui()
|
||||||
|
|
||||||
tab_apps_layout.addWidget(run_group)
|
tab_run = QWidget()
|
||||||
|
tab_run_layout = QVBoxLayout(tab_run)
|
||||||
|
tab_run_layout.addWidget(run_group)
|
||||||
|
tab_run_layout.addStretch(1)
|
||||||
|
self.apps_tabs.addTab(tab_run, "Run")
|
||||||
|
|
||||||
marks_group = QGroupBox("Active runtime marks (TTL)")
|
marks_group = QGroupBox("Active runtime marks (TTL)")
|
||||||
marks_layout = QVBoxLayout(marks_group)
|
marks_layout = QVBoxLayout(marks_group)
|
||||||
@@ -429,7 +442,11 @@ RU: Восстанавливает маршруты/nft из последнег
|
|||||||
self.lbl_marks.setStyleSheet("color: gray;")
|
self.lbl_marks.setStyleSheet("color: gray;")
|
||||||
marks_layout.addWidget(self.lbl_marks)
|
marks_layout.addWidget(self.lbl_marks)
|
||||||
|
|
||||||
tab_apps_layout.addWidget(marks_group)
|
tab_marks = QWidget()
|
||||||
|
tab_marks_layout = QVBoxLayout(tab_marks)
|
||||||
|
tab_marks_layout.addWidget(marks_group)
|
||||||
|
tab_marks_layout.addStretch(1)
|
||||||
|
self.apps_tabs.addTab(tab_marks, "Marks")
|
||||||
|
|
||||||
scopes_group = QGroupBox("Active svpn units (systemd --user)")
|
scopes_group = QGroupBox("Active svpn units (systemd --user)")
|
||||||
scopes_layout = QVBoxLayout(scopes_group)
|
scopes_layout = QVBoxLayout(scopes_group)
|
||||||
@@ -476,13 +493,19 @@ RU: Восстанавливает маршруты/nft из последнег
|
|||||||
self.lbl_scopes.setStyleSheet("color: gray;")
|
self.lbl_scopes.setStyleSheet("color: gray;")
|
||||||
scopes_layout.addWidget(self.lbl_scopes)
|
scopes_layout.addWidget(self.lbl_scopes)
|
||||||
|
|
||||||
tab_apps_layout.addWidget(scopes_group)
|
tab_units = QWidget()
|
||||||
|
tab_units_layout = QVBoxLayout(tab_units)
|
||||||
|
tab_units_layout.addWidget(scopes_group)
|
||||||
|
tab_units_layout.addStretch(1)
|
||||||
|
self.apps_tabs.addTab(tab_units, "Units")
|
||||||
|
|
||||||
self.txt_app = QPlainTextEdit()
|
self.txt_app = QPlainTextEdit()
|
||||||
self.txt_app.setReadOnly(True)
|
self.txt_app.setReadOnly(True)
|
||||||
tab_apps_layout.addWidget(self.txt_app, stretch=1)
|
tab_log = QWidget()
|
||||||
|
tab_log_layout = QVBoxLayout(tab_log)
|
||||||
|
tab_log_layout.addWidget(self.txt_app, stretch=1)
|
||||||
|
self.apps_tabs.addTab(tab_log, "Log")
|
||||||
|
|
||||||
tab_apps_layout.addStretch(1)
|
|
||||||
self.tabs.addTab(tab_apps, "Apps (runtime)")
|
self.tabs.addTab(tab_apps, "Apps (runtime)")
|
||||||
|
|
||||||
tab_adv = QWidget()
|
tab_adv = QWidget()
|
||||||
|
|||||||
Reference in New Issue
Block a user