Skip to content
Snippets Groups Projects

Add scheduler GUI

Merged Oscar Gustafsson requested to merge scheduler-gui into master
3 files
+ 247
1
Compare changes
  • Side-by-side
  • Inline
Files
3
+ 83
0
# This Python file uses the following encoding: utf-8
"""B-ASIC Schedule-gui Main Window Module.
This file opens the main window of the schedule-gui for B-ASIC when run.
"""
import os
#from pathlib import Path
import sys
from typing import Any
#from matplotlib.pyplot import bar
from qtpy.QtWidgets import QApplication, QMainWindow, QMessageBox
#from qtpy.QtCore import QFile
class MainWindow(QMainWindow):
_test: int
_ui: Any
def __init__(self):
super(MainWindow, self).__init__()
self._test = 5
self.init_ui()
def init_ui(self):
from qtpy import uic
#uic.compileUiDir('.', False, \
# lambda dir, file : [dir+str('/ui/'), str('ui_')+file],)
_ui = uic.loadUi("main_window.ui", self) # Load the .ui file
_ui.pushButton.clicked.connect(self.callback_pushButton)
_ui.actionLoad_SFG.triggered.connect(self.callback_menu_load_SFG)
_ui.actionSave_schedule.triggered.connect(self.callback_menu_save_schedule)
_ui.actionQuit.triggered.connect(self.close)
_ui.actionNode_info.triggered.connect(self.callback_menu_node_info)
#_ui.actionNode_info.triggered.connect(self.update_statusbar)
print(type(_ui))
#_ui, _base_class = uic.loadUiType("main_window_ui.ui", None) # Load the .ui file
#print(type(_base_class))
print(type(self._test))
QT_API = os.environ.get('QT_API')
print("QT_API: " + QT_API)
def callback_pushButton(self):
self.printButtonPressed('callback_pushButton')
def callback_menu_load_SFG(self):
self.printButtonPressed('callback_menu_load_SFG')
self.update_statusbar('SFG loaded successfully')
def callback_menu_save_schedule(self):
self.printButtonPressed('callback_menu_save_schedule')
self.update_statusbar('Schedule saved successfully')
def callback_menu_node_info(self, checked: bool):
#if _ui.actionNode_info.
print(type(checked))
print(checked)
self.printButtonPressed('callback_menu_node_info')
#self.update_statusbar()
def printButtonPressed(self, func_name: str):
self.label_2.setText("hello")
alert = QMessageBox(self)
alert.setText("Called from " + func_name + '!')
alert.exec_()
def update_statusbar(self, msg: str):
self.statusbar.showMessage(msg)
def start_gui():
app = QApplication(sys.argv)
widget = MainWindow()
widget.show()
sys.exit(app.exec_())
if __name__ == "__main__":
start_gui()
Loading