Skip to content

Commit 5797df0

Browse files
committed
image resize feature und help texts
1 parent 4d035a4 commit 5797df0

File tree

8 files changed

+1345
-95
lines changed

8 files changed

+1345
-95
lines changed

database_manager.py

Lines changed: 303 additions & 7 deletions
Large diffs are not rendered by default.

dialog.py

Lines changed: 34 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
"""
44

55
from qgis.PyQt.QtCore import Qt
6-
from qgis.PyQt.QtWidgets import (QDockWidget, QVBoxLayout, QWidget, QLabel,
7-
QTabWidget, QGroupBox, QProgressBar, QTextEdit)
6+
from qgis.PyQt.QtWidgets import (QDockWidget, QVBoxLayout, QHBoxLayout, QWidget, QLabel,
7+
QTabWidget, QGroupBox, QProgressBar, QTextEdit, QPushButton)
88
from qgis.PyQt.QtGui import QFont
99

1010
from .tabs import ConnectionTab, TemplatesTab, DatabasesTab, QGISProjectsTab, ArchiveProjectTab
1111

1212

13-
class PostgreSQLTemplateManagerDialog(QDockWidget):
13+
class KgrToolBoxDialog(QDockWidget):
1414
"""Main dialog for KGR Toolbox."""
1515

1616
def __init__(self, db_manager, parent=None):
@@ -27,7 +27,6 @@ def __init__(self, db_manager, parent=None):
2727

2828
def setup_ui(self):
2929
"""Setup the user interface."""
30-
self.setWindowTitle("KGR Toolbox")
3130
self.setObjectName("KgrToolbox")
3231

3332
# Main widget
@@ -76,13 +75,44 @@ def setup_progress_section(self, layout):
7675
self.progress_bar.setVisible(False)
7776
progress_layout.addWidget(self.progress_bar)
7877

78+
# Log area with clear button
79+
log_header_layout = QHBoxLayout()
80+
log_label = QLabel("Log Output:")
81+
log_label.setStyleSheet("font-weight: bold;")
82+
83+
self.clear_logs_btn = QPushButton("Clear Logs")
84+
self.clear_logs_btn.setFixedWidth(100)
85+
self.clear_logs_btn.setStyleSheet(
86+
"QPushButton { "
87+
"background-color: #f44336; "
88+
"color: white; "
89+
"font-weight: bold; "
90+
"padding: 4px 8px; "
91+
"border: none; "
92+
"border-radius: 3px; "
93+
"font-size: 11px; "
94+
"} "
95+
"QPushButton:hover { background-color: #d32f2f; }"
96+
)
97+
self.clear_logs_btn.clicked.connect(self.clear_logs)
98+
99+
log_header_layout.addWidget(log_label)
100+
log_header_layout.addStretch()
101+
log_header_layout.addWidget(self.clear_logs_btn)
102+
progress_layout.addLayout(log_header_layout)
103+
79104
self.log_text = QTextEdit()
80105
self.log_text.setMaximumHeight(100)
81106
self.log_text.setReadOnly(True)
107+
self.log_text.setPlaceholderText("Operation logs will appear here...")
82108
progress_layout.addWidget(self.log_text)
83109

84110
layout.addWidget(progress_group)
85111

112+
def clear_logs(self):
113+
"""Clear the log text area."""
114+
self.log_text.clear()
115+
86116
def connect_tab_signals(self):
87117
"""Connect signals from all tabs."""
88118
# Connection tab signals

kgr_toolbox.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from qgis.PyQt.QtWidgets import QAction, QMessageBox
55
from qgis.core import QgsApplication
66
from .database_manager import DatabaseManager
7-
from .dialog import PostgreSQLTemplateManagerDialog
7+
from .dialog import KgrToolBoxDialog
88

99

1010
class KgrToolbox:
@@ -98,7 +98,7 @@ def unload(self):
9898
def run(self):
9999
"""Run method that performs all the real work."""
100100
if not self.dialog:
101-
self.dialog = PostgreSQLTemplateManagerDialog(self.db_manager, self.iface.mainWindow())
101+
self.dialog = KgrToolBoxDialog(self.db_manager, self.iface.mainWindow())
102102

103103
# Show the dialog as a dock widget
104104
self.iface.addDockWidget(self.dialog.dock_area, self.dialog)

0 commit comments

Comments
 (0)