diff --git a/geest/gui/geest_dock.py b/geest/gui/geest_dock.py
index 0c8dfb7..1d3b5f0 100644
--- a/geest/gui/geest_dock.py
+++ b/geest/gui/geest_dock.py
@@ -76,6 +76,10 @@ def __init__(
# Switch to the next tab when the button is clicked
lambda: self.stacked_widget.setCurrentIndex(2)
)
+ self.ors_widget.switch_to_previous_tab.connect(
+ # Switch to the next tab when the button is clicked
+ lambda: self.stacked_widget.setCurrentIndex(0)
+ )
# Create and add the "Project" panel (SetupPanel)
self.setup_widget: SetupPanel = SetupPanel()
@@ -95,6 +99,11 @@ def __init__(
lambda: self.stacked_widget.setCurrentIndex(4)
)
+ self.setup_widget.switch_to_previous_tab.connect(
+ # Switch to the next tab when the button is clicked
+ lambda: self.stacked_widget.setCurrentIndex(1)
+ )
+
# Create and add the "Open Project" panel
self.open_project_widget: OpenProjectPanel = OpenProjectPanel()
open_project_panel: QWidget = QWidget()
@@ -107,6 +116,10 @@ def __init__(
# Switch to the next tab when the button is clicked
lambda: self.stacked_widget.setCurrentIndex(5)
)
+ self.open_project_widget.switch_to_previous_tab.connect(
+ # Switch to the next tab when the button is clicked
+ lambda: self.stacked_widget.setCurrentIndex(3)
+ )
# Create and add the "Create Project" panel
self.create_project_widget: CreateProjectPanel = CreateProjectPanel()
@@ -134,7 +147,7 @@ def __init__(
)
self.tree_widget.switch_to_previous_tab.connect(
# Switch to the previous tab when the button is clicked
- lambda: self.stacked_widget.setCurrentIndex(1)
+ lambda: self.stacked_widget.setCurrentIndex(2)
)
# Create and add the "Help" panel (HelpPanel)
help_widget: HelpPanel = HelpPanel()
@@ -209,7 +222,7 @@ def qgis_project_changed(self) -> None:
)
if geest_project and os.path.exists(geest_project):
self.tree_widget.set_working_directory(geest_project)
- self.stacked_widget.setCurrentIndex(2) # Tree tab
+ self.stacked_widget.setCurrentIndex(5) # Tree tab
def on_panel_changed(self, index: int) -> None:
"""
diff --git a/geest/gui/panels/open_project_panel.py b/geest/gui/panels/open_project_panel.py
index 02ff1b9..813ba7d 100644
--- a/geest/gui/panels/open_project_panel.py
+++ b/geest/gui/panels/open_project_panel.py
@@ -16,6 +16,7 @@
class OpenProjectPanel(FORM_CLASS, QWidget):
switch_to_next_tab = pyqtSignal() # Signal to notify the parent to switch tabs
+ switch_to_previous_tab = pyqtSignal() # Signal to notify the parent to switch tabs
def __init__(self):
super().__init__()
@@ -68,9 +69,11 @@ def initUI(self):
self.previous_project_combo.setSizeAdjustPolicy(
QComboBox.AdjustToMinimumContentsLengthWithIcon
)
- self.previous_project_combo.setMinimumContentsLength(
- 10
- ) # or another length that fits your needs
+ self.previous_project_combo.setMinimumContentsLength(10)
+ self.previous_button.clicked.connect(self.on_previous_button_clicked)
+
+ def on_previous_button_clicked(self):
+ self.switch_to_previous_tab.emit()
def add_project_to_combo(self, project_path: str):
"""Add a project path to the combo with elided text and full path as data."""
diff --git a/geest/gui/panels/ors_panel.py b/geest/gui/panels/ors_panel.py
index 8891b99..f9601fb 100644
--- a/geest/gui/panels/ors_panel.py
+++ b/geest/gui/panels/ors_panel.py
@@ -19,6 +19,7 @@
class OrsPanel(FORM_CLASS, QWidget):
switch_to_next_tab = pyqtSignal() # Signal to notify the parent to switch tabs
+ switch_to_previous_tab = pyqtSignal() # Signal to notify the parent to switch tabs
def __init__(self):
super().__init__()
@@ -77,3 +78,6 @@ def open_link_in_browser(self, url: str):
def on_next_button_clicked(self):
self.switch_to_next_tab.emit()
+
+ def on_previous_button_clicked(self):
+ self.switch_to_previous_tab.emit()
diff --git a/geest/gui/panels/setup_panel.py b/geest/gui/panels/setup_panel.py
index edcdbc9..e1c5c0d 100644
--- a/geest/gui/panels/setup_panel.py
+++ b/geest/gui/panels/setup_panel.py
@@ -38,6 +38,7 @@ class SetupPanel(FORM_CLASS, QWidget):
switch_to_create_project_tab = (
pyqtSignal()
) # Signal to notify the parent to switch tabs
+ switch_to_previous_tab = pyqtSignal() # Signal to notify the parent to switch tabs
def __init__(self):
super().__init__()
@@ -53,9 +54,13 @@ def initUI(self):
)
self.open_existing_project_button.clicked.connect(self.load_project)
self.create_new_project_button.clicked.connect(self.create_project)
+ self.previous_button.clicked.connect(self.on_previous_button_clicked)
def load_project(self):
self.switch_to_load_project_tab.emit()
def create_project(self):
self.switch_to_create_project_tab.emit()
+
+ def on_previous_button_clicked(self):
+ self.switch_to_previous_tab.emit()
diff --git a/geest/ui/geest_settings_base.ui b/geest/ui/geest_settings_base.ui
index 48bd840..56f738f 100644
--- a/geest/ui/geest_settings_base.ui
+++ b/geest/ui/geest_settings_base.ui
@@ -14,7 +14,7 @@
Geest Settings
- -
+
-
# Geest Settings
@@ -27,105 +27,17 @@
- -
-
-
-
-
-
- -
-
-
- Your API Key for the Open Route Service
-
-
-
- -
-
-
-
-
-
- Concurrent Tasks
-
-
-
- -
-
-
-
-
- -
-
-
- The maximum number of concurrent threads to allow during analysis. Setting to the same number of CPU cores you have would be a good conservative approach. If you want to produce your analysis faster, you could probably run 100 or more on a decently specced machine.
-
-
- true
-
-
- 0
-
-
-
- -
-
-
- Enable editing
-
-
-
- -
-
-
- Enable developer mode
-
-
-
- -
-
-
- Verbose logging mode
-
-
-
- -
-
-
- With this option enabled, you will see an 'Edit' check box in the dock panel that will let you create new dimensions, factors, layers and edit their properties.
-
-
- true
-
-
-
- -
-
-
- This is intended for developers to attach to the plugin using a remote debugger so that they can step through the code. Do not enable it if you do not have a remote debugger set up as it will block QGIS startup until a debugger is attached to the process. In addition, debug mode will enable a log tab in the dock. Requires restart after changing.
-
-
- true
-
-
- 0
-
-
-
- -
-
-
- Adds verbose log message, useful for diagnostics.
-
-
- true
-
-
- 0
-
-
-
-
+ -
+
+
+ -
+
+
+ Your API Key for the Open Route Service
+
+
- -
+
-
Qt::Vertical
@@ -138,6 +50,90 @@
+ -
+
+
-
+
+
+ Concurrent Tasks
+
+
+
+ -
+
+
+
+
+ -
+
+
+ The maximum number of concurrent threads to allow during analysis. Setting to the same number of CPU cores you have would be a good conservative approach. If you want to produce your analysis faster, you could probably run 100 or more on a decently specced machine.
+
+
+ true
+
+
+ 0
+
+
+
+ -
+
+
+ Enable editing
+
+
+
+ -
+
+
+ With this option enabled, you will see an 'Edit' check box in the dock panel that will let you create new dimensions, factors, layers and edit their properties.
+
+
+ true
+
+
+
+ -
+
+
+ Enable developer mode
+
+
+
+ -
+
+
+ This is intended for developers to attach to the plugin using a remote debugger so that they can step through the code. Do not enable it if you do not have a remote debugger set up as it will block QGIS startup until a debugger is attached to the process. In addition, debug mode will enable a log tab in the dock. Requires restart after changing.
+
+
+ true
+
+
+ 0
+
+
+
+ -
+
+
+ Verbose logging mode
+
+
+
+ -
+
+
+ Adds verbose log message, useful for diagnostics.
+
+
+ true
+
+
+ 0
+
+
+
diff --git a/geest/ui/open_project_panel_base.ui b/geest/ui/open_project_panel_base.ui
index 60283de..e2b0993 100644
--- a/geest/ui/open_project_panel_base.ui
+++ b/geest/ui/open_project_panel_base.ui
@@ -20,23 +20,76 @@
Form
- -
-
-
- <html><head/><body><p align="center"><span style=" font-size:16pt; font-weight:600;">GEEST Open Existing Project</span></p></body></html>
+
-
+
+
+ Qt::Vertical
-
- Qt::RichText
+
+
+ 20
+ 512
+
+
+
+
+ -
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 10
+
+
+
+
+ -
+
+
+
+ 10
+
+
+
+ ...
+
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+
+ 16
+
+
+
+ <html><head/><body><p><span style=" font-size:12pt;">Choose from one of the recent project folders you used, or click the ... button to browse to a specific GEEST project folder.</span></p></body></html>
- Qt::AlignCenter
+ Qt::AlignJustify|Qt::AlignTop
true
- -
+
-
@@ -60,13 +113,6 @@
- -
-
-
- Qt::Horizontal
-
-
-
-
@@ -91,69 +137,7 @@
- -
-
-
-
- 16
-
-
-
- <html><head/><body><p><span style=" font-size:12pt;">Choose from one of the recent project folders you used, or click the ... button to browse to a specific GEEST project folder.</span></p></body></html>
-
-
- Qt::AlignJustify|Qt::AlignTop
-
-
- true
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- 0
-
-
-
- -
-
-
-
-
-
-
- 0
- 0
-
-
-
-
- 10
-
-
-
-
- -
-
-
-
- 10
-
-
-
- ...
-
-
-
-
-
- -
+
-
@@ -166,18 +150,21 @@
- -
-
-
- Qt::Vertical
+
-
+
+
+ <html><head/><body><p align="center"><span style=" font-size:16pt; font-weight:600;">GEEST Open Existing Project</span></p></body></html>
-
-
- 20
- 512
-
+
+ Qt::RichText
-
+
+ Qt::AlignCenter
+
+
+ true
+
+