Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 32 additions & 32 deletions config/user_variable_dialogs/blinker_gui_from_py.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,36 +5,36 @@
from gui.custom_variables_dialog import Slider_var, Spin_var

# Custom Variable dialog
class Custom_variables_dialog(QtGui.QDialog):
class Custom_variables_dialog(QtWidgets.QDialog):
# Dialog for setting and getting task variables.
def __init__(self, parent, board):
super(QtGui.QDialog, self).__init__(parent)
super(QtWidgets.QDialog, self).__init__(parent)
self.setWindowTitle("Blink Variable GUI")
self.layout = QtGui.QVBoxLayout(self)
self.layout = QtWidgets.QVBoxLayout(self)
self.variables_grid = Variables_grid(self, board)
self.layout.addWidget(self.variables_grid)
self.layout.setContentsMargins(0, 0, 0, 0)
self.setLayout(self.layout)


class Variables_grid(QtGui.QWidget):
class Variables_grid(QtWidgets.QWidget):
def __init__(self, parent, board):
super(QtGui.QWidget, self).__init__(parent)
super(QtWidgets.QWidget, self).__init__(parent)
variables = board.sm_info["variables"]
self.grid_layout = QtGui.QGridLayout()
self.grid_layout = QtWidgets.QGridLayout()
initial_variables_dict = {v_name: v_value_str for (v_name, v_value_str) in sorted(variables.items())}
self.variables_gui = Variables_gui(self, self.grid_layout, board, initial_variables_dict)
self.setLayout(self.grid_layout)


class Variables_gui(QtGui.QWidget):
class Variables_gui(QtWidgets.QWidget):
def __init__(self, parent, grid_layout, board, init_vars):
super(QtGui.QWidget, self).__init__(parent)
super(QtWidgets.QWidget, self).__init__(parent)
self.board = board

# create widgets
widget = QtGui.QWidget()
layout = QtGui.QGridLayout()
widget = QtWidgets.QWidget()
layout = QtWidgets.QGridLayout()
row = 0

# blink rate controls
Expand All @@ -44,29 +44,29 @@ def __init__(self, parent, grid_layout, board, init_vars):
self.blink_rate.setBoard(board)
self.blink_rate.add_to_grid(layout, row)
row += 1
self.min_btn = QtGui.QPushButton("min")
self.mid_btn = QtGui.QPushButton("50%")
self.max_btn = QtGui.QPushButton("max")
self.min_btn = QtWidgets.QPushButton("min")
self.mid_btn = QtWidgets.QPushButton("50%")
self.max_btn = QtWidgets.QPushButton("max")
for col,btn in enumerate([self.min_btn,self.mid_btn,self.max_btn]):
layout.addWidget(btn, row,col, QtCore.Qt.AlignCenter)
btn.setFocusPolicy(QtCore.Qt.NoFocus)
layout.addWidget(btn, row,col, QtCore.Qt.AlignmentFlag.AlignCenter)
btn.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
btn.setMaximumWidth(70)
row += 1

# separator
layout.addWidget(QtGui.QLabel("<hr>"), row, 0, 1, 4)
layout.addWidget(QtWidgets.QLabel("<hr>"), row, 0, 1, 4)
row += 1

# radio buttons
red_is_enabled = eval(init_vars["red_enabled"])
green_is_enabled = eval(init_vars["green_enabled"])
self.both_radio = QtGui.QRadioButton()
self.both_lbl = QtGui.QLabel("🔴Both🟢")
self.red_radio = QtGui.QRadioButton()
self.red_lbl = QtGui.QLabel("Red")
self.both_radio = QtWidgets.QRadioButton()
self.both_lbl = QtWidgets.QLabel("🔴Both🟢")
self.red_radio = QtWidgets.QRadioButton()
self.red_lbl = QtWidgets.QLabel("Red")
self.red_lbl.setStyleSheet("border:3px solid red;background:red;border-radius:3px;") # you can use css styling
self.green_radio = QtGui.QRadioButton()
self.green_lbl = QtGui.QLabel("Green")
self.green_radio = QtWidgets.QRadioButton()
self.green_lbl = QtWidgets.QLabel("Green")
self.green_lbl.setStyleSheet("border-radius:3px;border:3px solid green;background:green;color:white")
if red_is_enabled and green_is_enabled:
self.both_radio.setChecked(True)
Expand All @@ -84,13 +84,13 @@ def __init__(self, parent, grid_layout, board, init_vars):
self.red_radio.setChecked(False)
self.green_radio.setChecked(False)

layout.addWidget(self.both_lbl, row, 0, QtCore.Qt.AlignCenter)
layout.addWidget(self.red_lbl, row, 1, QtCore.Qt.AlignCenter)
layout.addWidget(self.green_lbl, row, 2, QtCore.Qt.AlignCenter)
layout.addWidget(self.both_lbl, row, 0, QtCore.Qt.AlignmentFlag.AlignCenter)
layout.addWidget(self.red_lbl, row, 1, QtCore.Qt.AlignmentFlag.AlignCenter)
layout.addWidget(self.green_lbl, row, 2, QtCore.Qt.AlignmentFlag.AlignCenter)
row += 1
layout.addWidget(self.both_radio, row, 0, QtCore.Qt.AlignCenter)
layout.addWidget(self.red_radio, row, 1, QtCore.Qt.AlignCenter)
layout.addWidget(self.green_radio, row, 2, QtCore.Qt.AlignCenter)
layout.addWidget(self.both_radio, row, 0, QtCore.Qt.AlignmentFlag.AlignCenter)
layout.addWidget(self.red_radio, row, 1, QtCore.Qt.AlignmentFlag.AlignCenter)
layout.addWidget(self.green_radio, row, 2, QtCore.Qt.AlignmentFlag.AlignCenter)
row += 1

# counts
Expand All @@ -104,14 +104,14 @@ def __init__(self, parent, grid_layout, board, init_vars):
row += 1

# image
self.picture = QtGui.QLabel()
self.picture = QtWidgets.QLabel()
image = QtGui.QPixmap("config/user_variable_dialogs/example_image.png")
self.picture.setPixmap(image)
layout.addWidget(self.picture, row, 0, 1, 4)
row += 1

# gif
self.gif = QtGui.QLabel()
self.gif = QtWidgets.QLabel()
self.movie = QtGui.QMovie("config/user_variable_dialogs/example_movie.gif")
self.gif.setMovie(self.movie)
self.movie.start()
Expand All @@ -120,7 +120,7 @@ def __init__(self, parent, grid_layout, board, init_vars):

layout.setRowStretch(row, 1)
widget.setLayout(layout)
grid_layout.addWidget(widget, 0, 0, QtCore.Qt.AlignLeft)
grid_layout.addWidget(widget, 0, 0, QtCore.Qt.AlignmentFlag.AlignLeft)

# connect some buttons to functions
self.min_btn.clicked.connect(self.slide_to_min)
Expand All @@ -142,7 +142,7 @@ def update_count_options(self):
self.red_count.setEnabled(red_val) # enable or disable control
self.green_count.setEnabled(green_val)
if not self.board.framework_running: # Value returned later.
msg = QtGui.QMessageBox()
msg = QtWidgets.QMessageBox()
msg.setText("Variable Changed")
msg.exec()

Expand Down
19 changes: 9 additions & 10 deletions gui/GUI_main.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import logging

from serial.tools import list_ports
from pyqtgraph.Qt import QtGui, QtCore
from pyqtgraph.Qt import QtGui, QtCore, QtWidgets

from config.paths import dirs
from config.gui_settings import VERSION, ui_font_size
Expand All @@ -22,9 +22,9 @@
# GUI_main
# --------------------------------------------------------------------------------

class GUI_main(QtGui.QMainWindow):
class GUI_main(QtWidgets.QMainWindow):

def __init__(self):
def __init__(self,app):
super().__init__()
self.setWindowTitle('pyControl v{}'.format(VERSION))
self.setGeometry(10, 30, 700, 800) # Left, top, width, height.
Expand All @@ -39,7 +39,7 @@ def __init__(self):
self.available_ports_changed = False
self.data_dir_changed = False
self.current_tab_ind = 0 # Which tab is currently selected.
self.app = None # Overwritten with QtGui.QApplication instance in main.
self.app = app

# Dialogs.

Expand All @@ -48,11 +48,11 @@ def __init__(self):
self.paths_dialog = Paths_dialog(parent=self)

# Widgets.
self.tab_widget = QtGui.QTabWidget(self)
self.tab_widget = QtWidgets.QTabWidget(self)
self.setCentralWidget(self.tab_widget)

self.run_task_tab = Run_task_tab(self)
self.experiments_tab = QtGui.QStackedWidget(self)
self.experiments_tab = QtWidgets.QStackedWidget(self)
self.setups_tab = Setups_tab(self)

self.configure_experiment_tab = Configure_experiment_tab(self)
Expand Down Expand Up @@ -192,13 +192,12 @@ def excepthook(self, ex_type, ex_value, ex_traceback):

def launch_GUI():
'''Launch the pyControl GUI.'''
app = QtGui.QApplication(sys.argv)
app = QtWidgets.QApplication(sys.argv)
app.setStyle('Fusion')
app.setWindowIcon(QtGui.QIcon("gui/icons/logo.svg"))
font = QtGui.QFont()
font.setPixelSize(ui_font_size)
app.setFont(font)
gui_main = GUI_main()
gui_main.app = app # To allow app functions to be called from GUI.
gui_main = GUI_main(app)
sys.excepthook = gui_main.excepthook
sys.exit(app.exec_())
sys.exit(app.exec())
Loading