From 3b08815052ae58717a5378edd3c6361ed2e3cd0b Mon Sep 17 00:00:00 2001
From: Andreas Hellerschmied <andreas.hellerschmied@bev.gv.at>
Date: Sat, 6 Nov 2021 22:17:12 +0100
Subject: [PATCH] Set up empty GUI main window using PyQt6 und the QT designer
 (ui file).

---
 {lifescale_gui => lifescale}/__init__.py      |  0
 lifescale/gui/MainWindow.py                   | 32 +++++++++++++++
 lifescale/gui/MainWindow.ui                   | 31 ++++++++++++++
 {lifescale_gui => lifescale}/gui/__init__.py  |  0
 lifescale/gui/gui_main.py                     | 41 +++++++++++++++++++
 .../models/__init__.py                        |  0
 .../naive_peaks/__init__.py                   |  0
 lifescale/scripts/__init__.py                 |  0
 lifescale/scripts/run_gui.py                  | 12 ++++++
 makefile                                      |  2 +-
 10 files changed, 117 insertions(+), 1 deletion(-)
 rename {lifescale_gui => lifescale}/__init__.py (100%)
 create mode 100644 lifescale/gui/MainWindow.py
 create mode 100644 lifescale/gui/MainWindow.ui
 rename {lifescale_gui => lifescale}/gui/__init__.py (100%)
 create mode 100644 lifescale/gui/gui_main.py
 rename {lifescale_gui => lifescale}/models/__init__.py (100%)
 rename {lifescale_gui => lifescale}/naive_peaks/__init__.py (100%)
 create mode 100644 lifescale/scripts/__init__.py
 create mode 100644 lifescale/scripts/run_gui.py

diff --git a/lifescale_gui/__init__.py b/lifescale/__init__.py
similarity index 100%
rename from lifescale_gui/__init__.py
rename to lifescale/__init__.py
diff --git a/lifescale/gui/MainWindow.py b/lifescale/gui/MainWindow.py
new file mode 100644
index 0000000..73b28c4
--- /dev/null
+++ b/lifescale/gui/MainWindow.py
@@ -0,0 +1,32 @@
+# Form implementation generated from reading ui file 'lifescale/gui/MainWindow.ui'
+#
+# Created by: PyQt6 UI code generator 6.2.1
+#
+# WARNING: Any manual changes made to this file will be lost when pyuic6 is
+# run again.  Do not edit this file unless you know what you are doing.
+
+
+from PyQt6 import QtCore, QtGui, QtWidgets
+
+
+class Ui_MainWindow(object):
+    def setupUi(self, MainWindow):
+        MainWindow.setObjectName("MainWindow")
+        MainWindow.resize(800, 600)
+        self.centralwidget = QtWidgets.QWidget(MainWindow)
+        self.centralwidget.setObjectName("centralwidget")
+        MainWindow.setCentralWidget(self.centralwidget)
+        self.menubar = QtWidgets.QMenuBar(MainWindow)
+        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 22))
+        self.menubar.setObjectName("menubar")
+        MainWindow.setMenuBar(self.menubar)
+        self.statusbar = QtWidgets.QStatusBar(MainWindow)
+        self.statusbar.setObjectName("statusbar")
+        MainWindow.setStatusBar(self.statusbar)
+
+        self.retranslateUi(MainWindow)
+        QtCore.QMetaObject.connectSlotsByName(MainWindow)
+
+    def retranslateUi(self, MainWindow):
+        _translate = QtCore.QCoreApplication.translate
+        MainWindow.setWindowTitle(_translate("MainWindow", "lifescale tools"))
diff --git a/lifescale/gui/MainWindow.ui b/lifescale/gui/MainWindow.ui
new file mode 100644
index 0000000..b8c1b16
--- /dev/null
+++ b/lifescale/gui/MainWindow.ui
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>600</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>lifescale tools</string>
+  </property>
+  <widget class="QWidget" name="centralwidget"/>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>22</height>
+    </rect>
+   </property>
+  </widget>
+  <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/lifescale_gui/gui/__init__.py b/lifescale/gui/__init__.py
similarity index 100%
rename from lifescale_gui/gui/__init__.py
rename to lifescale/gui/__init__.py
diff --git a/lifescale/gui/gui_main.py b/lifescale/gui/gui_main.py
new file mode 100644
index 0000000..a59b42c
--- /dev/null
+++ b/lifescale/gui/gui_main.py
@@ -0,0 +1,41 @@
+import sys
+import os
+from PyQt6.QtWidgets import QApplication, QMainWindow
+
+from lifescale.gui.MainWindow import Ui_MainWindow
+
+
+class MainWindow(QMainWindow, Ui_MainWindow):
+    """Main Window of the application."""
+
+    def __init__(self):
+        """Initializer."""
+
+        # GUI:
+        super().__init__()
+        self.setupUi(self)
+
+        # Connect signals and slots:
+
+        # Set up GUI items and widgets:
+
+        # Init models:
+
+
+
+def main():
+    """Main program to start the GUI."""
+    # Create the application
+    app = QApplication(sys.argv)
+
+    # Create and show the application's main window
+    main_window = MainWindow()
+    main_window.show()
+    # Run the application's main loop:
+    sys.exit(
+        app.exec())  # exit or error code of Qt (app.exec_) is passed to sys.exit. Terminates pgm with standard python method
+
+
+if __name__ == "__main__":
+    """Main Program."""
+    main()
diff --git a/lifescale_gui/models/__init__.py b/lifescale/models/__init__.py
similarity index 100%
rename from lifescale_gui/models/__init__.py
rename to lifescale/models/__init__.py
diff --git a/lifescale_gui/naive_peaks/__init__.py b/lifescale/naive_peaks/__init__.py
similarity index 100%
rename from lifescale_gui/naive_peaks/__init__.py
rename to lifescale/naive_peaks/__init__.py
diff --git a/lifescale/scripts/__init__.py b/lifescale/scripts/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/lifescale/scripts/run_gui.py b/lifescale/scripts/run_gui.py
new file mode 100644
index 0000000..6cbf102
--- /dev/null
+++ b/lifescale/scripts/run_gui.py
@@ -0,0 +1,12 @@
+"""Start the lifescale GUI from here!"""
+from lifescale.gui.gui_main import main
+
+
+def run_gui():
+    """Start the GUI."""
+    main()
+
+
+if __name__ == "__main__":
+    """Main Program."""
+    run_gui()
\ No newline at end of file
diff --git a/makefile b/makefile
index df44273..d2ff4f1 100644
--- a/makefile
+++ b/makefile
@@ -11,4 +11,4 @@ init:
 
 # Convert *.ui files from Qt Designer to Python files:
 py_gui:
-	pyuic5 -o lifescale_gui/gui/MainWindow.py lifescale_gui/gui/MainWindow.ui
+	pyuic6 -o lifescale/gui/MainWindow.py lifescale/gui/MainWindow.ui
-- 
GitLab