add meta data subwindow
This commit is contained in:
@@ -7,6 +7,7 @@ from kontor_schema import KontorDB
|
||||
|
||||
from .comic_window import ComicWindow
|
||||
from .media_window import MediaWindow
|
||||
from .meta_data_window import MetaDataWindow
|
||||
from .progress import ProgressUpdate
|
||||
from .dialogs import ExportKontorDialog, ImportKontorDialog
|
||||
from .model_config import KontorModelConfig
|
||||
@@ -50,8 +51,8 @@ class MainWindow(QMainWindow):
|
||||
self.status_progress = QProgressBar()
|
||||
self.progress_update = ProgressUpdate(self.status_progress)
|
||||
self._create_statusbar()
|
||||
centerPoint = QGuiApplication.screens()[0].geometry().center()
|
||||
self.move(centerPoint - self.frameGeometry().center())
|
||||
center_point = QGuiApplication.screens()[0].geometry().center()
|
||||
self.move(center_point - self.frameGeometry().center())
|
||||
|
||||
def _create_actions(self):
|
||||
self.newAction = QAction("&New", self)
|
||||
@@ -62,6 +63,8 @@ class MainWindow(QMainWindow):
|
||||
self.showTyscWindow = QAction("TYSC Window", self)
|
||||
self.showMediaWindow = QAction("&Media Window", self)
|
||||
self.showMediaWindow.triggered.connect(self.show_media_window)
|
||||
self.showMetaDataWindow = QAction("Meta Data Window", self)
|
||||
self.showMetaDataWindow.triggered.connect(self.show_meta_data_window)
|
||||
self.importAction = QAction(self.import_icon, "&Import", self)
|
||||
self.importAction.triggered.connect(self.import_from_file)
|
||||
self.exportAction = QAction(self.export_icon, "&Export", self)
|
||||
@@ -104,6 +107,7 @@ class MainWindow(QMainWindow):
|
||||
window_menu.addMenu(layouts_menu)
|
||||
window_menu.addAction(self.showComicWindow)
|
||||
window_menu.addAction(self.showMediaWindow)
|
||||
window_menu.addAction(self.showMetaDataWindow)
|
||||
menu_bar.addMenu(window_menu)
|
||||
# Help menu
|
||||
help_menu = QMenu("&Hilfe")
|
||||
@@ -125,7 +129,7 @@ class MainWindow(QMainWindow):
|
||||
self.statusBar.addPermanentWidget(self.status_progress)
|
||||
|
||||
def about(self):
|
||||
QMessageBox.about(self.central_widget, "Über Kontor", f"Python: 3.11\nKontor: 0.1.0")
|
||||
QMessageBox.about(self, "Über Kontor", f"Python: 3.11\nKontor: 0.1.0")
|
||||
|
||||
def show_comic_window(self):
|
||||
if 'comic' not in self._subwindows:
|
||||
@@ -151,6 +155,18 @@ class MainWindow(QMainWindow):
|
||||
media.close()
|
||||
self.mdi_area.removeSubWindow(media)
|
||||
|
||||
def show_meta_data_window(self):
|
||||
if 'meta_data' not in self._subwindows:
|
||||
meta_data = MetaDataWindow(self)
|
||||
meta_data.closed.connect(self.sub_window_closed)
|
||||
self._subwindows['meta_data'] = meta_data
|
||||
self.mdi_area.addSubWindow(meta_data)
|
||||
meta_data.show()
|
||||
else:
|
||||
meta_data = self._subwindows.pop('meta_data')
|
||||
meta_data.close()
|
||||
self.mdi_area.removeSubWindow(meta_data)
|
||||
|
||||
def remove_sub_window(self, name: str):
|
||||
# self.log.info("remove subwindow %s", name)
|
||||
if name in self._subwindows:
|
||||
@@ -218,27 +234,6 @@ class MainWindow(QMainWindow):
|
||||
self.log.info("refresh")
|
||||
for (_, window) in self._subwindows.items():
|
||||
window.refresh()
|
||||
# def refresh(self):
|
||||
# self.data[self.tabs.currentIndex()].refresh()
|
||||
|
||||
# def _tab_changed(self, tab_index):
|
||||
# self.data[tab_index].refresh()
|
||||
|
||||
def update_status(self, message, timeout=3000):
|
||||
self.statusBar.showMessage(message, timeout=timeout)
|
||||
|
||||
def generate_data_tab(self, table_name):
|
||||
data_tab = QWidget()
|
||||
|
||||
table_config = KontorModelConfig(self.kontor_db, self, table_name)
|
||||
model = KontorTableModel(table_config)
|
||||
layout = QVBoxLayout()
|
||||
self.data.append(model)
|
||||
data_tab.setLayout(layout)
|
||||
table_view = QTableView()
|
||||
table_view.setModel(model)
|
||||
layout.addLayout(table_config.get_filter_layout())
|
||||
layout.addWidget(table_view)
|
||||
model.refresh()
|
||||
return data_tab
|
||||
|
||||
|
||||
Reference in New Issue
Block a user