Example #1
0
    def create_playlist_ui(self, m3udict):

        self.listWidgets = {}

        if self.dock != None:
            self.dock.deleteLater()

        # Create DockWidget with Tabs for categories
        self.dock = QtWidgets.QDockWidget("Categories", self)

        self.dock.setAllowedAreas(QtCore.Qt.RightDockWidgetArea)
        # Disable close button (X)
        self.dock.setFeatures(QtWidgets.QDockWidget.DockWidgetFloatable
                              | QtWidgets.QDockWidget.DockWidgetMovable)
        self.m3udict = m3udict
        self.playlists = QtWidgets.QTabWidget(self.dock)

        # Progress indentation ends here

        # Create ListWidgets here based on keys from m3u data

        if self.m3udict != None:
            for key in self.m3udict.keys():
                #print(key)
                self.listWidgets[key] = QtWidgets.QListWidget()
                for key2 in self.m3udict[key].keys():
                    self.listWidgets[key].addItem(key2)

            # Then create the tab in the DockWidget
            for key in self.listWidgets.keys():
                self.playlists.addTab(self.listWidgets[key], "{0}".format(key))

            self.dock.setWidget(self.playlists)

            self.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.dock)

            # Start it undetached
            self.dock.setFloating(False)

            ### Set up connections
            # Pick up tab change in playlists widget
            self.playlists.currentChanged.connect(self.onTabChange)

            self.playlist_view_action.setCheckable(True)
            self.playlist_view_action.setChecked(True)

            # Is this interfering with the video player maximise on doubleclick?
            self.playlists.currentWidget().itemDoubleClicked.connect(
                self.set_video_stream)
Example #2
0
 def initOutput(self):
     self.outputDockWidget=QtWidgets.QDockWidget( "Output" )
     self.outputWidget=QtWidgets.QWidget(
         #parent=self.outputDockWidget
     )
     self.outputLayout=QtWidgets.QFormLayout()
     ## alyout has to be added first
     self.outputWidget.setLayout(self.outputLayout)
     self.outputDockWidget.setWidget( self.outputWidget )
     #if self.autoExpandOutput:
     #    self.outputDockWidget.show() ## show should be called on dock childs
     """                                 
     self.outputDockWidget.setFeatures(
           QtWidgets.QDockWidget.DockWidgetMovable
         | QtWidgets.QDockWidget.DockWidgetFloatable
         
         | QtWidgets.QDockWidget.DockWidgetClosable
     )
     """
     #QDockWidget.DockWidgetClosable
     #QDockWidget.DockWidgetMovable
     #QDockWidget.DockWidgetFloatable
     #QDockWidget.DockWidgetVerticalTitleBar
     #QDockWidget.NoDockWidgetFeatures        
     if self.useOutput:
         self.addDockWidget(
             Qtc.Qt.BottomDockWidgetArea,
             self.outputDockWidget,
         )
             
     self.outputTextEdit = Qtw.QTextEdit( )
     self.outputTextEdit.setReadOnly( True )
     self.outputBlankLabel = QtWidgets.QLabel( "-" )
     self.outputLayout.addRow(self.outputTextEdit)
     
     self.outputToggleButton = QtWidgets.QPushButton("Output:  (Click Here To Hide)")
     ## left, top, right, bottom 
     self.outputLayout. setContentsMargins(5,0,5,10 )#addRow(self.outputBlankLabel)
     if self.useOutputToggleButton:
         self.outputDockWidget.setTitleBarWidget(
             self.outputToggleButton
         )
         self.outputDockWidget.titleBarWidget().clicked.connect(
             lambda: self.outputTextEditVisible('toggle'))
         if not self.autoExpandOutput:
             self.outputTextEditVisible(False)
def main():
    MaxPlus.FileManager.Reset(True)
    mainWindow = MaxPlus.GetQMaxMainWindow()


    # QAction reused by both dockable widgets.
    cylinderIconPath = os.path.dirname(os.path.realpath(__file__)) + "\\demoPySideToolBarCylinderIcon_48.png"
    cylinderIcon = QtGui.QIcon(cylinderIconPath)
    createCylAction = QtWidgets.QAction(cylinderIcon, u"Create Cylinder", mainWindow)
    createCylAction.triggered.connect(make_cylinder)


    # QDockWidget construction and placement over the main window
    dockWidget = QtWidgets.QDockWidget(mainWindow)
    _GCProtector.widgets.append(dockWidget)  # Required to avoid destruction of widget after script has completed execution

    dockWidget.setObjectName("Creators")  # Required for position persistence
    dockWidget.setWindowTitle("Creators") # Required to see dock widget name in toolbar customize popup
    dockToolButton = QtWidgets.QToolButton()
    dockToolButton.setAutoRaise(True)
    dockToolButton.setDefaultAction(createCylAction)
    dockToolButton.setToolButtonStyle(QtCore.Qt.ToolButtonTextOnly)
    dockWidget.setWidget(dockToolButton)

    mainWindow.addDockWidget(QtCore.Qt.LeftDockWidgetArea, dockWidget)
    dockWidget.setFloating(True)
    dockWidget.show()

	
    # QToolBar construction and attachement to main window
    toolBarWidget = QtWidgets.QToolBar(mainWindow)
    _GCProtector.widgets.append(dockWidget)  # Required to avoid destruction of widget afetr script has completed execution

    toolBarWidget.setObjectName("Creators TB")  # Required for position persistence
    toolBarWidget.setWindowTitle("Creators TB") # Required to see toolbar name in toolbar customize popup
    toolBarWidget.setFloatable(True)
    toolBarWidget.addAction(createCylAction)

    mainWindow.addToolBar(QtCore.Qt.BottomToolBarArea, toolBarWidget)
    toolBarWidget.show()

    toolBarPos = getPosToDockToolBar(dockWidget)
    makeToolBarFloating(toolBarWidget, toolBarPos)
Example #4
0
 def init_sidebar(self):
     if 'sidebar' not in self.ui:
         return
     if not self.ui['sidebar']:
         return
     self.sidebar = QtWidgets.QDockWidget()
     self.sidebar.setObjectName('Sidebar')
     self.sidebar.setAllowedAreas(QtCore.Qt.LeftDockWidgetArea)
     self.sidebar.setFeatures(QtWidgets.QDockWidget.NoDockWidgetFeatures)
     self.sidebar.setFixedWidth(240)
     self.sidebar.setTitleBarWidget(QtWidgets.QWidget())
     self.sidebar.setContentsMargins(0, 0, 0, 0)
     self.main.addDockWidget(QtCore.Qt.LeftDockWidgetArea, self.sidebar)
     widget = QtWidgets.QWidget()
     layout = QtWidgets.QVBoxLayout()
     layout.setContentsMargins(0, 0, 0, 0)
     layout.setSpacing(0)
     widget.setLayout(layout)
     self.sidebar.setWidget(widget)
     self.add_sidebar_items(self.ui['sidebar'], layout)
     layout.addStretch()
Example #5
0
    def setupUI(self):
        centralWidget = QtWidgets.QWidget()
        mainLayout = QtWidgets.QVBoxLayout()
        mainLayout.setAlignment(QtCore.Qt.AlignTop)

        tabsFrame = QtWidgets.QFrame()
        tabsLayout = QtWidgets.QVBoxLayout()
        tabsLayout.setAlignment(QtCore.Qt.AlignTop)
        tabsLayout.setContentsMargins(0, 0, 0, 0)
        tabsFrame.setLayout(tabsLayout)
        tabsFrame.setMinimumHeight(200)

        infoFrame = QtWidgets.QFrame()
        infoLayout = QtWidgets.QVBoxLayout()
        infoLayout.setAlignment(QtCore.Qt.AlignTop)
        infoLayout.setContentsMargins(0, 0, 0, 0)
        infoFrame.setLayout(infoLayout)

        self.tabs = QtWidgets.QTabWidget()
        self.setupRiggingTab()
        self.setupControllersTab()
        self.setupSkinningTab()

        self.infoDisplay = QtWidgets.QTextEdit()
        self.infoDisplay.setMinimumHeight(50)
        self.infoDisplay.setReadOnly(1)

        tabsLayout.addWidget(self.tabs)
        infoLayout.addWidget(self.infoDisplay)

        mainLayout.addWidget(tabsFrame)

        dockWidget = QtWidgets.QDockWidget("Output Info ")
        dockWidget.setAllowedAreas(QtCore.Qt.BottomDockWidgetArea)
        dockWidget.setWidget(infoFrame)
        self.addDockWidget(QtCore.Qt.BottomDockWidgetArea, dockWidget)

        centralWidget.setLayout(mainLayout)
        self.setCentralWidget(centralWidget)
Example #6
0
    def createDocks(self):
        self.parent.messagedock = QtWidgets.QDockWidget(self.parent)
        self.parent.messagedock. \
            setFeatures(QtWidgets.QDockWidget.DockWidgetMovable |
                        QtWidgets.QDockWidget.DockWidgetFloatable)
        self.parent.messagedock.setWindowTitle('Messages')
        self.parent.messagedock.setMinimumSize(100, 50)
        # connect messagedock to slot
        self.parent.messagedock.topLevelChanged.connect(
            self.parent.slots.onLevelChanged)

        self.parent.messages = QtWidgets.QTextEdit(self.parent)
        self.parent.messages. \
            setTextInteractionFlags(QtCore.Qt.TextSelectableByMouse |
                                    QtCore.Qt.TextSelectableByKeyboard)
        # connect messages to scrollhandler
        self.parent.messages.textChanged.connect(
            self.parent.slots.onTextChanged)

        self.parent.messagedock.setWidget(self.parent.messages)

        place = QtCore.Qt.BottomDockWidgetArea
        self.parent.addDockWidget(QtCore.Qt.DockWidgetArea(place),
                                  self.parent.messagedock)
Example #7
0
 def create_dock(self, dirpath, f):
     if f in dock_type:
         current_type = dock_type[f]
         widgets = current_type["widgets"]
         if not isinstance(widgets, list):
             widgets = [widgets]
         previous_dock = None
         for w_index, widget in enumerate(widgets):
             dock_name = current_type["name"]
             if len(widgets) > 1:
                 dock_name += f" {w_index}"
             dock = QtWidgets.QDockWidget(dock_name)
             view_action = dock.toggleViewAction()
             view_action.setStatusTip(f'Show/Hide {dock_name}')
             self.view_menu.addAction(view_action)
             plot_widget = widget(dirpath)
             dock.setWidget(plot_widget)
             dock.setAllowedAreas(Qt.AllDockWidgetAreas)
             self.docks[f] = dock
             self.addDockWidget(dock_positions[self._current_dock_pos % len(dock_positions)], dock)
             if previous_dock:
                 self.tabifyDockWidget(previous_dock, dock)
             previous_dock = dock
         self._current_dock_pos += 1
Example #8
0
 def setupAsDockWidget(self, parent):
     self.dockWidget = QtWidgets.QDockWidget("Visual Scripting Settings",
                                             parent)
     self.dockWidget.setWidget(self.widget)
     self.dockWidget.setObjectName("visualScriptingSettingsDockWidget")
Example #9
0
    def create_ui(self):
        """
        Setup the whole UI of the radar data viewer. Creates several member variables for sliders, comboBoxes etc.
        :return: None
        """
        self.setWindowTitle("Radar Data Viewer")

        self.main_grid_layout = QtWidgets.QGridLayout()
        self.central_widget = QtWidgets.QWidget()
        self.central_widget.setLayout(self.main_grid_layout)
        self.setCentralWidget(self.central_widget)

        self.plot_item = pg.PlotWidget()
        self.plot_item.setBackground("#0B0F14")
        self.main_grid_layout.addWidget(self.plot_item, 0, 0)

        # Options Dock Widget
        self.options_layout = QtWidgets.QVBoxLayout()
        self.options_layout.setAlignment(QtCore.Qt.AlignTop)

        self.doppler_arrows_cb = QtWidgets.QCheckBox("Doppler Velocity Arrows")
        self.doppler_arrows_cb.setChecked(True)
        self.options_layout.addWidget(self.doppler_arrows_cb)

        # scaling of doppler arrows
        self.doppler_h_layout = QtWidgets.QHBoxLayout()
        self.doppler_h_layout.setContentsMargins(20, 0, 0, 10)
        self.doppler_scale_label = QtWidgets.QLabel()
        self.doppler_scale_label.setText("Scale")
        self.doppler_scale_label.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                  QtWidgets.QSizePolicy.Fixed))
        self.doppler_h_layout.addWidget(self.doppler_scale_label)

        self.doppler_scale_slider = QtWidgets.QSlider(QtCore.Qt.Horizontal)
        self.doppler_scale_slider.setMinimum(1)
        self.doppler_scale_slider.setMaximum(20)
        self.doppler_scale_slider.setValue(7)
        self.doppler_scale_slider.setFixedWidth(150)
        self.doppler_h_layout.addWidget(self.doppler_scale_slider)

        self.options_layout.addLayout(self.doppler_h_layout)

        self.label_text_cb = QtWidgets.QCheckBox("Class Names of True Label")
        self.label_text_cb.setChecked(True)
        self.options_layout.addWidget(self.label_text_cb)

        self.convex_hulls_cb = QtWidgets.QCheckBox(
            "Convex Hulls Around True Objects")
        self.options_layout.addWidget(self.convex_hulls_cb)

        self.color_by_label = QtWidgets.QLabel()
        self.color_by_label.setText("Color Detections by")
        self.color_by_label.setStyleSheet("""
            QLabel {
            margin-top: 10px;
            }
            """)
        self.options_layout.addWidget(self.color_by_label)

        self.color_by_list = QtWidgets.QComboBox()
        self.color_by_list.setStyleSheet("""
            QComboBox::item:checked {
            height: 12px;
            border: 1px solid #32414B;
            margin-top: 0px;
            margin-bottom: 0px;
            padding: 4px;
            padding-left: 0px;
            }
            QComboBox {
            margin-left: 20px;
            }
            """)
        self.color_by_list.addItems([x.value for x in ColorOpts])
        self.color_by_list.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                  QtWidgets.QSizePolicy.Fixed))
        self.color_by_list.setCurrentIndex(6)
        self.options_layout.addWidget(self.color_by_list)

        options_widget = QtWidgets.QWidget()
        options_widget.setLayout(self.options_layout)
        self.options_dock = QtWidgets.QDockWidget("Options", self)
        self.options_dock.setWidget(options_widget)
        self.options_dock.setFloating(False)
        self.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.options_dock)

        # Detection Info Dock Widget
        self.info_dock = QtWidgets.QDockWidget("Information", self)
        self.info_dock.setMinimumWidth(350)
        self.info_dock.setMinimumHeight(200)
        self.detection_info_label = QtWidgets.QTextEdit(
            text="No detection selected.")
        self.detection_info_label.setMinimumWidth(200)
        flags = QtCore.Qt.TextInteractionFlags(
            QtCore.Qt.TextInteractionFlag.TextSelectableByMouse)
        self.detection_info_label.setTextInteractionFlags(flags)
        self.info_dock.setWidget(self.detection_info_label)
        self.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.info_dock)

        # Camera Dock Widget
        self.cam_graphics_layout = pg.GraphicsLayoutWidget()
        self.cam_viewbox = self.cam_graphics_layout.addViewBox()
        self.cam_viewbox.setAspectLocked(True)
        self.camera_widget = pg.ImageItem()
        self.camera_widget.rotate(-90)
        self.cam_viewbox.addItem(self.camera_widget)
        self.camera_dock = QtWidgets.QDockWidget("Camera", self)
        self.camera_dock.setMinimumWidth(300)
        self.camera_dock.setMinimumHeight(300)
        self.camera_dock.setWidget(self.cam_graphics_layout)
        self.camera_dock.setFloating(False)
        self.camera_dock.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Ignored,
                                  QtWidgets.QSizePolicy.Expanding))
        self.camera_dock.widget().setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Ignored,
                                  QtWidgets.QSizePolicy.Expanding))
        self.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.camera_dock)

        # Timeline: Slider, Spinboxes, Labes
        self.timeline_grid_layout = QtWidgets.QGridLayout()
        self.timeline_slider = QtWidgets.QSlider(QtCore.Qt.Horizontal)
        self.timeline_slider.setStyleSheet("""
        .QSlider {
        min-height: 20px;
        max-height: 20px;
        }
        .QSlider::groove:horizontal {
        height: 15px;
        }
        """)

        self.timeline_spinbox = QtWidgets.QSpinBox()
        self.timeline_spinbox.setMaximum(10000)
        self.timeline_spinbox.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                  QtWidgets.QSizePolicy.Fixed))
        self.timeline_label = QtWidgets.QLabel()
        self.timeline_label.setText("Current Frame:")
        self.timeline_label.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                  QtWidgets.QSizePolicy.Fixed))
        self.prev_frames_spinbox = QtWidgets.QSpinBox()
        self.prev_frames_spinbox.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                  QtWidgets.QSizePolicy.Fixed))
        self.prev_frames_spinbox.setMaximum(30)
        self.prev_frames_label = QtWidgets.QLabel()
        self.prev_frames_label.setText("Show Previous Frames:")
        self.prev_frames_label.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                  QtWidgets.QSizePolicy.Fixed))
        self.future_frames_spinbox = QtWidgets.QSpinBox()
        self.future_frames_spinbox.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                  QtWidgets.QSizePolicy.Fixed))
        self.future_frames_spinbox.setMaximum(30)
        self.future_frames_spinbox.setValue(4)
        self.future_frames_label = QtWidgets.QLabel()
        self.future_frames_label.setText("Show Future Frames:")
        self.future_frames_label.setSizePolicy(
            QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                  QtWidgets.QSizePolicy.Fixed))

        self.timeline_grid_layout.addWidget(self.timeline_slider, 0, 0, 1, 8)
        self.timeline_grid_layout.addWidget(self.timeline_label, 1, 1)
        self.timeline_grid_layout.addWidget(self.timeline_spinbox, 1, 2)
        self.timeline_grid_layout.addWidget(self.prev_frames_label, 1, 3)
        self.timeline_grid_layout.addWidget(self.prev_frames_spinbox, 1, 4)
        self.timeline_grid_layout.addWidget(self.future_frames_label, 1, 5)
        self.timeline_grid_layout.addWidget(self.future_frames_spinbox, 1, 6)

        self.main_grid_layout.addLayout(self.timeline_grid_layout, 1, 0)

        # Menu
        self.menu = self.menuBar()
        self.file_menu = self.menu.addMenu("File")
        self.view_menu = self.menu.addMenu("View")
        self.view_menu.addAction(self.options_dock.toggleViewAction())
        self.view_menu.addAction(self.info_dock.toggleViewAction())
        self.view_menu.addAction(self.camera_dock.toggleViewAction())

        ## Exit QAction
        exit_action = QtWidgets.QAction("Exit", self)
        exit_action.setShortcut(QtGui.QKeySequence.Quit)
        exit_action.triggered.connect(self.close)

        # Open Sequence Action
        self.open_action = QtWidgets.QAction("Open Sequence", self)
        self.open_action.setShortcut(QtGui.QKeySequence.Open)
        self.open_action.triggered.connect(self.open_sequence)

        # Open Predictions Action
        self.open_pred_action = QtWidgets.QAction("Open Predictions", self)
        self.open_pred_action.triggered.connect(self.open_predictions)

        self.file_menu.addAction(self.open_action)
        self.file_menu.addAction(self.open_pred_action)
        self.file_menu.addAction(exit_action)

        # Status Bar
        self.status = self.statusBar()
        self.status_label = QtWidgets.QLabel()
        self.status_label.setText(
            "Frame {}/{}.\t\t Current Timestamp: {}.\t\t Time Window Size: {}s"
            .format(0, 0, 0, 0.0))
        self.status.addPermanentWidget(self.status_label)
Example #10
0
import os
import sys

sys.path.append(
    os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
                 "util"))
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from init_paths import init_test_paths
init_test_paths()

from PySide2 import QtCore, QtWidgets


class Window(QtWidgets.QMainWindow):
    def childEvent(self, event):
        super(Window, self).childEvent(event)


app = QtWidgets.QApplication([])
window = Window()

dock1 = QtWidgets.QDockWidget()
dock2 = QtWidgets.QDockWidget()
window.addDockWidget(QtCore.Qt.LeftDockWidgetArea, dock1)
window.addDockWidget(QtCore.Qt.LeftDockWidgetArea, dock2)
window.tabifyDockWidget(dock1, dock2)

window.show()
QtCore.QTimer.singleShot(0, window.close)
app.exec_()
Example #11
0
    def __init__(self, parent=None):
        super(ShaderManager, self).__init__(parent)

        self.setAttribute(QtCore.Qt.WA_DeleteOnClose)

        self.setupUi(self)

        self.shadersFromFile = []
        self.displaceFromFile = []

        self.curLayer = None
        # self.listTagsWidget = tagTree(self)
        # self.tagGroup.layout().addWidget(self.listTagsWidget)
        #self.tagGroup.setVisible(0)

        self.shaderToAssign = None
        self.ABCViewerNode = {}

        self.getNode()
        self.getCache()

        self.thisTagItem = None
        self.thisTreeItem = None

        self.lastClick = -1

        self.propertyEditing = False

        self.propertyEditorWindow = QtWidgets.QDockWidget(self)
        self.propertyEditorWindow.setAllowedAreas(
            QtCore.Qt.LeftDockWidgetArea | QtCore.Qt.RightDockWidgetArea)
        self.propertyEditorWindow.setWindowTitle("Properties")
        self.propertyEditorWindow.setMinimumWidth(300)
        self.addDockWidget(QtCore.Qt.LeftDockWidgetArea,
                           self.propertyEditorWindow)
        self.propertyType = "polymesh"
        self.propertyEditor = PropertyEditor(self, self.propertyType,
                                             self.propertyEditorWindow)
        self.propertyEditorWindow.setWidget(self.propertyEditor)

        self.propertyEditor.propertyChanged.connect(self.propertyChanged)

        self.hierarchyWidget.setColumnWidth(0, 600)
        self.hierarchyWidget.setIconSize(QtCore.QSize(22, 22))

        self.hierarchyWidget.dragEnterEvent = self.newhierarchyWidgetdragEnterEvent
        self.hierarchyWidget.dragMoveEvent = self.newhierarchyWidgetdragMoveEvent
        self.hierarchyWidget.dropEvent = self.newhierarchyWidgetDropEvent

        self.hierarchyWidget.setColumnWidth(0, 200)
        self.hierarchyWidget.setColumnWidth(1, 300)
        self.hierarchyWidget.setColumnWidth(2, 300)

        self.hierarchyWidget.setItemDelegate(treeDelegate.treeDelegate(self))

        self.updateTags()
        self.populate()

        self.curPath = ""
        self.ABCcurPath = ""

        self.hierarchyWidget.itemDoubleClicked.connect(self.itemDoubleClicked)
        self.hierarchyWidget.itemExpanded.connect(self.requireItemExpanded)
        self.hierarchyWidget.itemCollapsed.connect(self.requireItemCollapse)
        self.hierarchyWidget.itemClicked.connect(self.itemCLicked)
        self.hierarchyWidget.itemSelectionChanged.connect(
            self.itemSelectionChanged)
        self.hierarchyWidget.itemPressed.connect(self.itemPressed)
        self.hierarchyWidget.setExpandsOnDoubleClick(False)

        self.filterShaderLineEdit.textChanged.connect(self.filterShader)

        #self.shadersList.startDrag = self.newshadersListStartDrag
        self.shadersList.itemDoubleClicked.connect(self.shaderCLicked)
        self.shadersList.mouseMoveEvent = self.newshadersListmouseMoveEvent

        self.displacementList.itemPressed.connect(self.shaderCLicked)
        self.displacementList.mouseMoveEvent = self.newdisplaceListmouseMoveEvent

        self.refreshManagerBtn.pressed.connect(self.reset)

        self.refreshShaders()

        self.getLayers()
        self.setCurrentLayer()

        self.addCBs()

        self.afterNewSceneCBId = MSceneMessage.addCallback(
            MSceneMessage.kAfterNew, self.reset)
        self.afterOpenSceneCBId = MSceneMessage.addCallback(
            MSceneMessage.kAfterOpen, self.reset)

        self.disableLayerOverrides()

        self.overrideDisps.stateChanged.connect(self.overrideDispsChanged)
        self.overrideShaders.stateChanged.connect(self.overrideShadersChanged)
        self.overrideProps.stateChanged.connect(self.overridePropsChanged)

        self.isolateCheckbox.stateChanged.connect(self.isolateCheckboxChanged)

        #Widcard management
        self.wildCardButton.pressed.connect(self.addWildCard)
        self.autoAssignButton.pressed.connect(self.autoAssign)
Example #12
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        MainWindow.setWindowTitle("MyTerm")
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.centralwidget)
        self.horizontalLayout_2.setSpacing(0)
        self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.centerFrame = QtWidgets.QFrame(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.centerFrame.sizePolicy().hasHeightForWidth())
        self.centerFrame.setSizePolicy(sizePolicy)
        self.centerFrame.setObjectName("centerFrame")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.centerFrame)
        self.verticalLayout_2.setSpacing(0)
        self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.txtEdtOutput = QtWidgets.QTextEdit(self.centerFrame)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(3)
        sizePolicy.setHeightForWidth(
            self.txtEdtOutput.sizePolicy().hasHeightForWidth())
        self.txtEdtOutput.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setFamily("Courier 10 Pitch")
        font.setPointSize(10)
        self.txtEdtOutput.setFont(font)
        self.txtEdtOutput.setObjectName("txtEdtOutput")
        self.verticalLayout_2.addWidget(self.txtEdtOutput)
        self.horizontalLayout_2.addWidget(self.centerFrame)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = FMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 23))
        self.menubar.setNativeMenuBar(True)
        self.menubar.setObjectName("menubar")
        self.menuFile = QtWidgets.QMenu(self.menubar)
        self.menuFile.setTitle("&File")
        self.menuFile.setObjectName("menuFile")
        self.menuPort = QtWidgets.QMenu(self.menubar)
        self.menuPort.setTitle("&Port")
        self.menuPort.setObjectName("menuPort")
        self.menuView = QtWidgets.QMenu(self.menubar)
        self.menuView.setTitle("&View")
        self.menuView.setObjectName("menuView")
        self.menuReceive_View = QtWidgets.QMenu(self.menuView)
        self.menuReceive_View.setTitle("Receive View")
        self.menuReceive_View.setObjectName("menuReceive_View")
        self.menuHelp = QtWidgets.QMenu(self.menubar)
        self.menuHelp.setTitle("&Help")
        self.menuHelp.setObjectName("menuHelp")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.dockWidget_PortConfig = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_PortConfig.setWindowTitle("Port Config")
        self.dockWidget_PortConfig.setObjectName("dockWidget_PortConfig")
        self.dockWidgetContents = QtWidgets.QWidget()
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.dockWidgetContents)
        self.verticalLayout_6.setSpacing(0)
        self.verticalLayout_6.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_6.setObjectName("verticalLayout_6")
        self.frame = QtWidgets.QFrame(self.dockWidgetContents)
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Plain)
        self.frame.setObjectName("frame")
        self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.frame)
        self.verticalLayout_8.setSpacing(1)
        self.verticalLayout_8.setContentsMargins(3, 3, 3, 3)
        self.verticalLayout_8.setObjectName("verticalLayout_8")
        self.verticalLayout_1 = QtWidgets.QVBoxLayout()
        self.verticalLayout_1.setSpacing(0)
        self.verticalLayout_1.setContentsMargins(1, 1, 1, 1)
        self.verticalLayout_1.setObjectName("verticalLayout_1")
        self.btnEnumPorts = QtWidgets.QPushButton(self.frame)
        self.btnEnumPorts.setText("Enum Ports")
        self.btnEnumPorts.setObjectName("btnEnumPorts")
        self.verticalLayout_1.addWidget(self.btnEnumPorts)
        self.label_1 = QtWidgets.QLabel(self.frame)
        self.label_1.setMinimumSize(QtCore.QSize(0, 20))
        self.label_1.setMaximumSize(QtCore.QSize(16777215, 20))
        self.label_1.setText("Port")
        self.label_1.setAlignment(QtCore.Qt.AlignBottom
                                  | QtCore.Qt.AlignLeading
                                  | QtCore.Qt.AlignLeft)
        self.label_1.setObjectName("label_1")
        self.verticalLayout_1.addWidget(self.label_1)
        self.cmbPort = QtWidgets.QComboBox(self.frame)
        self.cmbPort.setMinimumSize(QtCore.QSize(120, 0))
        self.cmbPort.setEditable(True)
        self.cmbPort.setCurrentText("")
        self.cmbPort.setObjectName("cmbPort")
        self.verticalLayout_1.addWidget(self.cmbPort)
        self.label_2 = QtWidgets.QLabel(self.frame)
        self.label_2.setMinimumSize(QtCore.QSize(0, 20))
        self.label_2.setMaximumSize(QtCore.QSize(16777215, 20))
        self.label_2.setText("Baud Rate")
        self.label_2.setAlignment(QtCore.Qt.AlignBottom
                                  | QtCore.Qt.AlignLeading
                                  | QtCore.Qt.AlignLeft)
        self.label_2.setObjectName("label_2")
        self.verticalLayout_1.addWidget(self.label_2)
        self.cmbBaudRate = QtWidgets.QComboBox(self.frame)
        self.cmbBaudRate.setEditable(True)
        self.cmbBaudRate.setMaxVisibleItems(30)
        self.cmbBaudRate.setObjectName("cmbBaudRate")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(0, "50")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(1, "75")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(2, "110")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(3, "134")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(4, "150")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(5, "200")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(6, "300")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(7, "600")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(8, "1200")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(9, "1800")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(10, "2400")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(11, "4800")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(12, "9600")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(13, "19200")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(14, "38400")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(15, "57600")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(16, "115200")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(17, "230400")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(18, "460800")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(19, "500000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(20, "576000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(21, "921600")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(22, "1000000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(23, "1152000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(24, "1500000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(25, "2000000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(26, "2500000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(27, "3000000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(28, "3500000")
        self.cmbBaudRate.addItem("")
        self.cmbBaudRate.setItemText(29, "4000000")
        self.verticalLayout_1.addWidget(self.cmbBaudRate)
        self.label_3 = QtWidgets.QLabel(self.frame)
        self.label_3.setMinimumSize(QtCore.QSize(0, 20))
        self.label_3.setMaximumSize(QtCore.QSize(16777215, 20))
        self.label_3.setText("Data Bits")
        self.label_3.setAlignment(QtCore.Qt.AlignBottom
                                  | QtCore.Qt.AlignLeading
                                  | QtCore.Qt.AlignLeft)
        self.label_3.setObjectName("label_3")
        self.verticalLayout_1.addWidget(self.label_3)
        self.cmbDataBits = QtWidgets.QComboBox(self.frame)
        self.cmbDataBits.setCurrentText("8")
        self.cmbDataBits.setObjectName("cmbDataBits")
        self.cmbDataBits.addItem("")
        self.cmbDataBits.setItemText(0, "8")
        self.cmbDataBits.addItem("")
        self.cmbDataBits.setItemText(1, "7")
        self.cmbDataBits.addItem("")
        self.cmbDataBits.setItemText(2, "6")
        self.cmbDataBits.addItem("")
        self.cmbDataBits.setItemText(3, "5")
        self.verticalLayout_1.addWidget(self.cmbDataBits)
        self.label_4 = QtWidgets.QLabel(self.frame)
        self.label_4.setMinimumSize(QtCore.QSize(0, 20))
        self.label_4.setMaximumSize(QtCore.QSize(16777215, 20))
        self.label_4.setText("Parity")
        self.label_4.setAlignment(QtCore.Qt.AlignBottom
                                  | QtCore.Qt.AlignLeading
                                  | QtCore.Qt.AlignLeft)
        self.label_4.setObjectName("label_4")
        self.verticalLayout_1.addWidget(self.label_4)
        self.cmbParity = QtWidgets.QComboBox(self.frame)
        self.cmbParity.setCurrentText("None")
        self.cmbParity.setObjectName("cmbParity")
        self.cmbParity.addItem("")
        self.cmbParity.setItemText(0, "None")
        self.cmbParity.addItem("")
        self.cmbParity.setItemText(1, "Even")
        self.cmbParity.addItem("")
        self.cmbParity.setItemText(2, "Odd")
        self.cmbParity.addItem("")
        self.cmbParity.setItemText(3, "Mark")
        self.cmbParity.addItem("")
        self.cmbParity.setItemText(4, "Space")
        self.verticalLayout_1.addWidget(self.cmbParity)
        self.label_5 = QtWidgets.QLabel(self.frame)
        self.label_5.setMinimumSize(QtCore.QSize(0, 20))
        self.label_5.setMaximumSize(QtCore.QSize(16777215, 20))
        self.label_5.setText("Stop Bits")
        self.label_5.setAlignment(QtCore.Qt.AlignBottom
                                  | QtCore.Qt.AlignLeading
                                  | QtCore.Qt.AlignLeft)
        self.label_5.setObjectName("label_5")
        self.verticalLayout_1.addWidget(self.label_5)
        self.cmbStopBits = QtWidgets.QComboBox(self.frame)
        self.cmbStopBits.setCurrentText("1")
        self.cmbStopBits.setObjectName("cmbStopBits")
        self.cmbStopBits.addItem("")
        self.cmbStopBits.setItemText(0, "1")
        self.cmbStopBits.addItem("")
        self.cmbStopBits.setItemText(1, "1.5")
        self.cmbStopBits.addItem("")
        self.cmbStopBits.setItemText(2, "2")
        self.verticalLayout_1.addWidget(self.cmbStopBits)
        spacerItem = QtWidgets.QSpacerItem(0, 5, QtWidgets.QSizePolicy.Minimum,
                                           QtWidgets.QSizePolicy.Fixed)
        self.verticalLayout_1.addItem(spacerItem)
        self.groupBox = QtWidgets.QGroupBox(self.frame)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.groupBox.sizePolicy().hasHeightForWidth())
        self.groupBox.setSizePolicy(sizePolicy)
        self.groupBox.setTitle("HandShake")
        self.groupBox.setObjectName("groupBox")
        self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.groupBox)
        self.verticalLayout_7.setSpacing(0)
        self.verticalLayout_7.setContentsMargins(2, 2, 2, 2)
        self.verticalLayout_7.setObjectName("verticalLayout_7")
        self.chkRTSCTS = QtWidgets.QCheckBox(self.groupBox)
        self.chkRTSCTS.setMaximumSize(QtCore.QSize(16777215, 22))
        self.chkRTSCTS.setText("RTS/CTS")
        self.chkRTSCTS.setObjectName("chkRTSCTS")
        self.verticalLayout_7.addWidget(self.chkRTSCTS)
        self.chkXonXoff = QtWidgets.QCheckBox(self.groupBox)
        self.chkXonXoff.setMaximumSize(QtCore.QSize(16777215, 22))
        self.chkXonXoff.setText("Xon/Xoff")
        self.chkXonXoff.setObjectName("chkXonXoff")
        self.verticalLayout_7.addWidget(self.chkXonXoff)
        self.verticalLayout_1.addWidget(self.groupBox)
        spacerItem1 = QtWidgets.QSpacerItem(0, 5,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Fixed)
        self.verticalLayout_1.addItem(spacerItem1)
        self.btnOpen = QtWidgets.QPushButton(self.frame)
        self.btnOpen.setEnabled(True)
        self.btnOpen.setText("Open")
        self.btnOpen.setObjectName("btnOpen")
        self.verticalLayout_1.addWidget(self.btnOpen)
        spacerItem2 = QtWidgets.QSpacerItem(0, 5,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Fixed)
        self.verticalLayout_1.addItem(spacerItem2)
        self.btnClear = QtWidgets.QPushButton(self.frame)
        self.btnClear.setText("Clear")
        self.btnClear.setObjectName("btnClear")
        self.verticalLayout_1.addWidget(self.btnClear)
        spacerItem3 = QtWidgets.QSpacerItem(0, 5,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Fixed)
        self.verticalLayout_1.addItem(spacerItem3)
        self.btnSaveLog = QtWidgets.QPushButton(self.frame)
        self.btnSaveLog.setText("Save Log")
        self.btnSaveLog.setObjectName("btnSaveLog")
        self.verticalLayout_1.addWidget(self.btnSaveLog)
        spacerItem4 = QtWidgets.QSpacerItem(0, 10,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.verticalLayout_1.addItem(spacerItem4)
        self.verticalLayout_8.addLayout(self.verticalLayout_1)
        self.verticalLayout_6.addWidget(self.frame)
        self.dockWidget_PortConfig.setWidget(self.dockWidgetContents)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1),
                                 self.dockWidget_PortConfig)
        self.dockWidget_SendHex = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_SendHex.setWindowTitle("Send Hex")
        self.dockWidget_SendHex.setObjectName("dockWidget_SendHex")
        self.dockWidgetContents_2 = QtWidgets.QWidget()
        self.dockWidgetContents_2.setObjectName("dockWidgetContents_2")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.dockWidgetContents_2)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setSpacing(2)
        self.horizontalLayout.setContentsMargins(-1, -1, 2, -1)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.txtEdtInput = QtWidgets.QTextEdit(self.dockWidgetContents_2)
        self.txtEdtInput.setObjectName("txtEdtInput")
        self.horizontalLayout.addWidget(self.txtEdtInput)
        self.btnSendHex = QtWidgets.QPushButton(self.dockWidgetContents_2)
        self.btnSendHex.setText("Send")
        self.btnSendHex.setObjectName("btnSendHex")
        self.horizontalLayout.addWidget(self.btnSendHex)
        self.verticalLayout.addLayout(self.horizontalLayout)
        self.dockWidget_SendHex.setWidget(self.dockWidgetContents_2)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(8),
                                 self.dockWidget_SendHex)
        self.dockWidget_QuickSend = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_QuickSend.setWindowTitle("Quick Send")
        self.dockWidget_QuickSend.setObjectName("dockWidget_QuickSend")
        self.dockWidgetContents_3 = QtWidgets.QWidget()
        self.dockWidgetContents_3.setObjectName("dockWidgetContents_3")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_3)
        self.verticalLayout_3.setSpacing(0)
        self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.quickSendTable = QtWidgets.QTableWidget(self.dockWidgetContents_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.quickSendTable.sizePolicy().hasHeightForWidth())
        self.quickSendTable.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setFamily("Courier 10 Pitch")
        font.setPointSize(10)
        self.quickSendTable.setFont(font)
        self.quickSendTable.setRowCount(10)
        self.quickSendTable.setColumnCount(5)
        self.quickSendTable.setObjectName("quickSendTable")
        self.quickSendTable.setColumnCount(5)
        self.quickSendTable.setRowCount(10)
        self.quickSendTable.horizontalHeader().setDefaultSectionSize(40)
        self.quickSendTable.horizontalHeader().setMinimumSectionSize(25)
        self.verticalLayout_3.addWidget(self.quickSendTable)
        self.dockWidget_QuickSend.setWidget(self.dockWidgetContents_3)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                 self.dockWidget_QuickSend)
        self.actionSave_Log = QtWidgets.QAction(MainWindow)
        self.actionSave_Log.setText("Save Log")
        self.actionSave_Log.setIconText("Save Log")
        self.actionSave_Log.setToolTip("Save Log")
        self.actionSave_Log.setStatusTip("Save Log")
        self.actionSave_Log.setObjectName("actionSave_Log")
        self.actionExit = QtWidgets.QAction(MainWindow)
        self.actionExit.setText("Exit")
        self.actionExit.setIconText("Exit")
        self.actionExit.setToolTip("Exit")
        self.actionExit.setStatusTip("Exit")
        self.actionExit.setObjectName("actionExit")
        self.actionOpen = QtWidgets.QAction(MainWindow)
        self.actionOpen.setText("Open")
        self.actionOpen.setIconText("Open")
        self.actionOpen.setToolTip("Open the port")
        self.actionOpen.setStatusTip("Open the port")
        self.actionOpen.setObjectName("actionOpen")
        self.actionClose = QtWidgets.QAction(MainWindow)
        self.actionClose.setText("Close")
        self.actionClose.setIconText("Close")
        self.actionClose.setToolTip("Close the port")
        self.actionClose.setStatusTip("Close the port")
        self.actionClose.setObjectName("actionClose")
        self.actionPort_Config_Panel = QtWidgets.QAction(MainWindow)
        self.actionPort_Config_Panel.setCheckable(True)
        self.actionPort_Config_Panel.setText("Port Config Panel")
        self.actionPort_Config_Panel.setIconText("Show Port Config")
        self.actionPort_Config_Panel.setToolTip(
            "Show or hide Port Config Panel")
        self.actionPort_Config_Panel.setStatusTip(
            "Show or hide Port Config Panel")
        self.actionPort_Config_Panel.setObjectName("actionPort_Config_Panel")
        self.actionAlways_On_Top = QtWidgets.QAction(MainWindow)
        self.actionAlways_On_Top.setCheckable(True)
        self.actionAlways_On_Top.setText("Always On Top")
        self.actionAlways_On_Top.setIconText("Always on top")
        self.actionAlways_On_Top.setToolTip("Always on most top")
        self.actionAlways_On_Top.setStatusTip("Always on most top")
        self.actionAlways_On_Top.setObjectName("actionAlways_On_Top")
        self.actionLocal_Echo = QtWidgets.QAction(MainWindow)
        self.actionLocal_Echo.setCheckable(True)
        self.actionLocal_Echo.setText("Local Echo")
        self.actionLocal_Echo.setIconText("Local echo")
        self.actionLocal_Echo.setToolTip("Local Echo")
        self.actionLocal_Echo.setStatusTip("Echo what you typed")
        self.actionLocal_Echo.setObjectName("actionLocal_Echo")
        self.actionAscii = QtWidgets.QAction(MainWindow)
        self.actionAscii.setCheckable(True)
        self.actionAscii.setText("Ascii")
        self.actionAscii.setIconText("Ascii")
        self.actionAscii.setToolTip("Show as ascii")
        self.actionAscii.setStatusTip("Show as ascii")
        self.actionAscii.setObjectName("actionAscii")
        self.actionHex_lowercase = QtWidgets.QAction(MainWindow)
        self.actionHex_lowercase.setCheckable(True)
        self.actionHex_lowercase.setText("hex(lowercase)")
        self.actionHex_lowercase.setIconText("hex(lowercase)")
        self.actionHex_lowercase.setToolTip("Show as hex(lowercase)")
        self.actionHex_lowercase.setStatusTip("Show as hex(lowercase)")
        self.actionHex_lowercase.setObjectName("actionHex_lowercase")
        self.actionHEX_UPPERCASE = QtWidgets.QAction(MainWindow)
        self.actionHEX_UPPERCASE.setCheckable(True)
        self.actionHEX_UPPERCASE.setText("HEX(UPPERCASE)")
        self.actionHEX_UPPERCASE.setIconText("HEX(UPPERCASE)")
        self.actionHEX_UPPERCASE.setToolTip("Show as HEX(UPPERCASE)")
        self.actionHEX_UPPERCASE.setStatusTip("Show as HEX(UPPERCASE)")
        self.actionHEX_UPPERCASE.setObjectName("actionHEX_UPPERCASE")
        self.actionSend_Hex_Panel = QtWidgets.QAction(MainWindow)
        self.actionSend_Hex_Panel.setCheckable(True)
        self.actionSend_Hex_Panel.setText("Send Hex Panel")
        self.actionSend_Hex_Panel.setIconText("Send Hex Panel")
        self.actionSend_Hex_Panel.setToolTip("Show or hide Send Hex Panel")
        self.actionSend_Hex_Panel.setStatusTip(
            "Show or hide Hex Transmit Panel")
        self.actionSend_Hex_Panel.setObjectName("actionSend_Hex_Panel")
        self.actionAbout = QtWidgets.QAction(MainWindow)
        self.actionAbout.setText("About MyTerm")
        self.actionAbout.setIconText("About MyTerm")
        self.actionAbout.setToolTip("About MyTerm")
        self.actionAbout.setStatusTip("About MyTerm")
        self.actionAbout.setObjectName("actionAbout")
        self.actionAbout_Qt = QtWidgets.QAction(MainWindow)
        self.actionAbout_Qt.setText("About Qt")
        self.actionAbout_Qt.setIconText("About Qt")
        self.actionAbout_Qt.setToolTip("About Qt")
        self.actionAbout_Qt.setStatusTip("About Qt")
        self.actionAbout_Qt.setObjectName("actionAbout_Qt")
        self.actionOpen_Cmd_File = QtWidgets.QAction(MainWindow)
        self.actionOpen_Cmd_File.setText("Open Cmd File")
        self.actionOpen_Cmd_File.setIconText("Open Cmd File")
        self.actionOpen_Cmd_File.setToolTip("Open Cmd File")
        self.actionOpen_Cmd_File.setStatusTip("Open Cmd File")
        self.actionOpen_Cmd_File.setObjectName("actionOpen_Cmd_File")
        self.actionQuick_Send_Panel = QtWidgets.QAction(MainWindow)
        self.actionQuick_Send_Panel.setCheckable(True)
        self.actionQuick_Send_Panel.setText("Quick Send Panel")
        self.actionQuick_Send_Panel.setIconText("Quick Send Panel")
        self.actionQuick_Send_Panel.setToolTip("Show or hide Quick Send Panel")
        self.actionQuick_Send_Panel.setStatusTip(
            "Show or hide Quick Send Panel")
        self.actionQuick_Send_Panel.setObjectName("actionQuick_Send_Panel")
        self.menuFile.addAction(self.actionOpen_Cmd_File)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionSave_Log)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionExit)
        self.menuPort.addAction(self.actionOpen)
        self.menuPort.addAction(self.actionClose)
        self.menuReceive_View.addAction(self.actionAscii)
        self.menuReceive_View.addAction(self.actionHex_lowercase)
        self.menuReceive_View.addAction(self.actionHEX_UPPERCASE)
        self.menuView.addAction(self.actionPort_Config_Panel)
        self.menuView.addAction(self.actionQuick_Send_Panel)
        self.menuView.addAction(self.actionSend_Hex_Panel)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionLocal_Echo)
        self.menuView.addAction(self.menuReceive_View.menuAction())
        self.menuView.addAction(self.actionAlways_On_Top)
        self.menuHelp.addAction(self.actionAbout)
        self.menuHelp.addAction(self.actionAbout_Qt)
        self.menubar.addAction(self.menuFile.menuAction())
        self.menubar.addAction(self.menuPort.menuAction())
        self.menubar.addAction(self.menuView.menuAction())
        self.menubar.addAction(self.menuHelp.menuAction())

        self.retranslateUi(MainWindow)
        self.cmbBaudRate.setCurrentIndex(12)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(780, 879)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/icons/cat.png"), QtGui.QIcon.Normal,
                       QtGui.QIcon.Off)
        MainWindow.setWindowIcon(icon)
        MainWindow.setStyleSheet("background-color:rgb(70, 70, 70)")
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.centralwidget)
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.widget = QtWidgets.QWidget(self.centralwidget)
        self.widget.setObjectName("widget")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.widget)
        self.horizontalLayout_2.setSpacing(1)
        self.horizontalLayout_2.setContentsMargins(1, 1, 5, 5)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.tabWidget_main = QtWidgets.QTabWidget(self.widget)
        self.tabWidget_main.setFocusPolicy(QtCore.Qt.NoFocus)
        self.tabWidget_main.setStatusTip("")
        self.tabWidget_main.setStyleSheet("background-color:rgb(60, 60, 60)")
        self.tabWidget_main.setObjectName("tabWidget_main")
        self.tab_import = QtWidgets.QWidget()
        self.tab_import.setObjectName("tab_import")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.tab_import)
        self.verticalLayout_2.setSpacing(5)
        self.verticalLayout_2.setContentsMargins(5, 5, 5, 5)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.widget_2 = QtWidgets.QWidget(self.tab_import)
        self.widget_2.setStyleSheet("background-color:rgb(65, 65, 65)")
        self.widget_2.setObjectName("widget_2")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.widget_2)
        self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setObjectName("gridLayout")
        self.pushButton_search = QtWidgets.QPushButton(self.widget_2)
        font = QtGui.QFont()
        font.setFamily("Carlito")
        self.pushButton_search.setFont(font)
        self.pushButton_search.setStyleSheet(
            "QPushButton:hover{background:rgb(150, 150, 150);}")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(":/icons/magnifier.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_search.setIcon(icon1)
        self.pushButton_search.setObjectName("pushButton_search")
        self.gridLayout.addWidget(self.pushButton_search, 0, 2, 1, 1)
        self.lineEdit_filepath = QtWidgets.QLineEdit(self.widget_2)
        self.lineEdit_filepath.setStyleSheet(
            "QLineEdit{border:1px solid gray; width:300px;border-radius:5px; padding:2px 4px;}"
        )
        self.lineEdit_filepath.setObjectName("lineEdit_filepath")
        self.gridLayout.addWidget(self.lineEdit_filepath, 0, 1, 1, 1)
        self.label_file_path = QtWidgets.QLabel(self.widget_2)
        font = QtGui.QFont()
        font.setFamily("Alef")
        font.setPointSize(9)
        font.setWeight(9)
        font.setItalic(False)
        font.setBold(False)
        self.label_file_path.setFont(font)
        self.label_file_path.setStyleSheet("font: 75 9pt \"Alef\";")
        self.label_file_path.setObjectName("label_file_path")
        self.gridLayout.addWidget(self.label_file_path, 0, 0, 1, 1)
        self.verticalLayout_3.addLayout(self.gridLayout)
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_6.setSpacing(7)
        self.horizontalLayout_6.setContentsMargins(-1, -1, -1, 0)
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
        self.pushButton_left = QtWidgets.QPushButton(self.widget_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Ignored,
                                           QtWidgets.QSizePolicy.Ignored)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.pushButton_left.sizePolicy().hasHeightForWidth())
        self.pushButton_left.setSizePolicy(sizePolicy)
        self.pushButton_left.setMinimumSize(QtCore.QSize(20, 20))
        self.pushButton_left.setBaseSize(QtCore.QSize(20, 20))
        self.pushButton_left.setStyleSheet(
            "QPushButton{background:rgb(94, 94, 94);border-radius:5px;}QPushButton:hover{background:rgb(15, 185, 15);}\n"
            "")
        self.pushButton_left.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(":/icons/left-arrow.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_left.setIcon(icon2)
        self.pushButton_left.setObjectName("pushButton_left")
        self.horizontalLayout_6.addWidget(self.pushButton_left)
        self.pushButton_right = QtWidgets.QPushButton(self.widget_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Ignored,
                                           QtWidgets.QSizePolicy.Ignored)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.pushButton_right.sizePolicy().hasHeightForWidth())
        self.pushButton_right.setSizePolicy(sizePolicy)
        self.pushButton_right.setMinimumSize(QtCore.QSize(20, 20))
        self.pushButton_right.setBaseSize(QtCore.QSize(20, 20))
        self.pushButton_right.setStyleSheet(
            "QPushButton{background:rgb(94, 94, 94);border-radius:5px;}QPushButton:hover{background:rgb(15, 185, 15);}\n"
            "")
        self.pushButton_right.setText("")
        icon3 = QtGui.QIcon()
        icon3.addPixmap(QtGui.QPixmap(":/icons/right-arrow.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_right.setIcon(icon3)
        self.pushButton_right.setFlat(False)
        self.pushButton_right.setObjectName("pushButton_right")
        self.horizontalLayout_6.addWidget(self.pushButton_right)
        self.comboBox_filterlist = QtWidgets.QComboBox(self.widget_2)
        self.comboBox_filterlist.setStyleSheet("")
        self.comboBox_filterlist.setObjectName("comboBox_filterlist")
        self.comboBox_filterlist.addItem("")
        self.comboBox_filterlist.addItem("")
        self.comboBox_filterlist.addItem("")
        self.horizontalLayout_6.addWidget(self.comboBox_filterlist)
        spacerItem = QtWidgets.QSpacerItem(399, 20,
                                           QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem)
        self.verticalLayout_3.addLayout(self.horizontalLayout_6)
        self.listView = QtWidgets.QListView(self.widget_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.listView.sizePolicy().hasHeightForWidth())
        self.listView.setSizePolicy(sizePolicy)
        self.listView.setMinimumSize(QtCore.QSize(50, 50))
        self.listView.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.listView.setStyleSheet(
            "QPushButton:hover{background:rgb(15, 185, 15);}")
        self.listView.setObjectName("listView")
        self.verticalLayout_3.addWidget(self.listView)
        self.widget_3 = QtWidgets.QWidget(self.widget_2)
        self.widget_3.setStyleSheet("background-color:rgb(75, 75, 75)")
        self.widget_3.setObjectName("widget_3")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.widget_3)
        self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.comboBox_export_mode = QtWidgets.QComboBox(self.widget_3)
        self.comboBox_export_mode.setObjectName("comboBox_export_mode")
        self.comboBox_export_mode.addItem("")
        self.comboBox_export_mode.addItem("")
        self.comboBox_export_mode.addItem("")
        self.horizontalLayout_3.addWidget(self.comboBox_export_mode)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_3.addItem(spacerItem1)
        self.verticalLayout_3.addWidget(self.widget_3)
        self.widget_4 = QtWidgets.QWidget(self.widget_2)
        self.widget_4.setStyleSheet("background-color:rgb(75, 75, 75)")
        self.widget_4.setObjectName("widget_4")
        self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.widget_4)
        self.verticalLayout_4.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.gridLayout_2 = QtWidgets.QGridLayout()
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label_namsepace = QtWidgets.QLabel(self.widget_4)
        self.label_namsepace.setStyleSheet("font: 75 9pt \"Alef\";")
        self.label_namsepace.setObjectName("label_namsepace")
        self.gridLayout_2.addWidget(self.label_namsepace, 0, 2, 1, 1)
        self.lineEdit_namespace = QtWidgets.QLineEdit(self.widget_4)
        self.lineEdit_namespace.setStyleSheet(
            "QLineEdit{border:1px solid gray; width:50px;border-radius:5px; padding:2px 4px;}"
        )
        self.lineEdit_namespace.setObjectName("lineEdit_namespace")
        self.gridLayout_2.addWidget(self.lineEdit_namespace, 0, 3, 1, 1)
        self.lineEdit_exportname = QtWidgets.QLineEdit(self.widget_4)
        self.lineEdit_exportname.setStyleSheet(
            "QLineEdit{border:1px solid gray; width:200px;border-radius:5px; padding:2px 4px;}"
        )
        self.lineEdit_exportname.setObjectName("lineEdit_exportname")
        self.gridLayout_2.addWidget(self.lineEdit_exportname, 0, 1, 1, 1)
        self.label_export_name = QtWidgets.QLabel(self.widget_4)
        self.label_export_name.setStyleSheet("font: 75 9pt \"Alef\";")
        self.label_export_name.setObjectName("label_export_name")
        self.gridLayout_2.addWidget(self.label_export_name, 0, 0, 1, 1)
        self.lineEdit_exportpath = QtWidgets.QLineEdit(self.widget_4)
        self.lineEdit_exportpath.setStyleSheet(
            "QLineEdit{border:1px solid gray; width:200px;border-radius:5px; padding:2px 4px;}"
        )
        self.lineEdit_exportpath.setText("")
        self.lineEdit_exportpath.setObjectName("lineEdit_exportpath")
        self.gridLayout_2.addWidget(self.lineEdit_exportpath, 1, 1, 1, 3)
        self.label_exportpath = QtWidgets.QLabel(self.widget_4)
        self.label_exportpath.setWhatsThis("")
        self.label_exportpath.setStyleSheet("font: 75 9pt \"Alef\";")
        self.label_exportpath.setObjectName("label_exportpath")
        self.gridLayout_2.addWidget(self.label_exportpath, 1, 0, 1, 1)
        self.verticalLayout_4.addLayout(self.gridLayout_2)
        spacerItem2 = QtWidgets.QSpacerItem(20, 10,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Fixed)
        self.verticalLayout_4.addItem(spacerItem2)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.label = QtWidgets.QLabel(self.widget_4)
        self.label.setStyleSheet("font: 75 9pt \"Alef\";")
        self.label.setObjectName("label")
        self.horizontalLayout.addWidget(self.label)
        self.checkBox_scene = QtWidgets.QCheckBox(self.widget_4)
        self.checkBox_scene.setObjectName("checkBox_scene")
        self.horizontalLayout.addWidget(self.checkBox_scene)
        self.checkBox_camera = QtWidgets.QCheckBox(self.widget_4)
        self.checkBox_camera.setObjectName("checkBox_camera")
        self.horizontalLayout.addWidget(self.checkBox_camera)
        self.checkBox_prop = QtWidgets.QCheckBox(self.widget_4)
        self.checkBox_prop.setObjectName("checkBox_prop")
        self.horizontalLayout.addWidget(self.checkBox_prop)
        self.checkBox_chracter = QtWidgets.QCheckBox(self.widget_4)
        self.checkBox_chracter.setObjectName("checkBox_chracter")
        self.horizontalLayout.addWidget(self.checkBox_chracter)
        spacerItem3 = QtWidgets.QSpacerItem(150, 20,
                                            QtWidgets.QSizePolicy.Ignored,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem3)
        self.verticalLayout_4.addLayout(self.horizontalLayout)
        self.progressBar = QtWidgets.QProgressBar(self.widget_4)
        self.progressBar.setProperty("value", 100)
        self.progressBar.setObjectName("progressBar")
        self.verticalLayout_4.addWidget(self.progressBar)
        spacerItem4 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Fixed)
        self.verticalLayout_4.addItem(spacerItem4)
        self.widget_down3 = QtWidgets.QWidget(self.widget_4)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.widget_down3.sizePolicy().hasHeightForWidth())
        self.widget_down3.setSizePolicy(sizePolicy)
        self.widget_down3.setMinimumSize(QtCore.QSize(0, 155))
        self.widget_down3.setObjectName("widget_down3")
        self.horizontalLayout_7 = QtWidgets.QHBoxLayout(self.widget_down3)
        self.horizontalLayout_7.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_7.setObjectName("horizontalLayout_7")
        self.webEngineView = QWebEngineView(self.widget_down3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.webEngineView.sizePolicy().hasHeightForWidth())
        self.webEngineView.setSizePolicy(sizePolicy)
        self.webEngineView.setMinimumSize(QtCore.QSize(399, 152))
        self.webEngineView.setMaximumSize(QtCore.QSize(999, 152))
        self.webEngineView.setUrl(QtCore.QUrl("about:blank"))
        self.webEngineView.setObjectName("webEngineView")
        self.horizontalLayout_7.addWidget(self.webEngineView)
        self.verticalLayout_4.addWidget(self.widget_down3)
        spacerItem5 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Fixed)
        self.verticalLayout_4.addItem(spacerItem5)
        self.widget_down2 = QtWidgets.QWidget(self.widget_4)
        self.widget_down2.setObjectName("widget_down2")
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.widget_down2)
        self.horizontalLayout_5.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.pushButton_action = QtWidgets.QPushButton(self.widget_down2)
        self.pushButton_action.setMinimumSize(QtCore.QSize(50, 0))
        font = QtGui.QFont()
        font.setFamily("Corbel")
        self.pushButton_action.setFont(font)
        self.pushButton_action.setStyleSheet(
            "QPushButton{background:rgb(94, 94, 94);border-radius:5px;}QPushButton:hover{background:rgb(185, 15, 15);}\n"
            "")
        icon4 = QtGui.QIcon()
        icon4.addPixmap(QtGui.QPixmap(":/icons/hammer.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_action.setIcon(icon4)
        self.pushButton_action.setObjectName("pushButton_action")
        self.horizontalLayout_5.addWidget(self.pushButton_action)
        self.pushButton_ipAbcFromDisk = QtWidgets.QPushButton(
            self.widget_down2)
        font = QtGui.QFont()
        font.setFamily("Corbel")
        self.pushButton_ipAbcFromDisk.setFont(font)
        self.pushButton_ipAbcFromDisk.setStyleSheet(
            "QPushButton{background:rgb(94, 94, 94);border-radius:5px;}QPushButton:hover{background:gray;}"
        )
        icon5 = QtGui.QIcon()
        icon5.addPixmap(QtGui.QPixmap(":/icons/import.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_ipAbcFromDisk.setIcon(icon5)
        self.pushButton_ipAbcFromDisk.setObjectName("pushButton_ipAbcFromDisk")
        self.horizontalLayout_5.addWidget(self.pushButton_ipAbcFromDisk)
        self.widget_up1 = QtWidgets.QWidget(self.widget_down2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.widget_up1.sizePolicy().hasHeightForWidth())
        self.widget_up1.setSizePolicy(sizePolicy)
        self.widget_up1.setMinimumSize(QtCore.QSize(0, 0))
        self.widget_up1.setObjectName("widget_up1")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.widget_up1)
        self.gridLayout_3.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.pushButton_setting = QtWidgets.QPushButton(self.widget_up1)
        self.pushButton_setting.setStyleSheet(
            "QPushButton{background:rgb(94, 94, 94);border-radius:5px;}QPushButton:hover{background:gray;}"
        )
        self.pushButton_setting.setText("")
        icon6 = QtGui.QIcon()
        icon6.addPixmap(QtGui.QPixmap(":/icons/settings-work-tool.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_setting.setIcon(icon6)
        self.pushButton_setting.setObjectName("pushButton_setting")
        self.gridLayout_3.addWidget(self.pushButton_setting, 0, 0, 1, 1)
        self.horizontalLayout_5.addWidget(self.widget_up1)
        self.pushButton_refresh = QtWidgets.QPushButton(self.widget_down2)
        self.pushButton_refresh.setMinimumSize(QtCore.QSize(50, 0))
        font = QtGui.QFont()
        font.setFamily("Corbel")
        self.pushButton_refresh.setFont(font)
        self.pushButton_refresh.setStyleSheet(
            "QPushButton{background:rgb(94, 94, 94);border-radius:5px;}QPushButton:hover{background:green;}"
        )
        icon7 = QtGui.QIcon()
        icon7.addPixmap(QtGui.QPixmap(":/icons/refresh.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_refresh.setIcon(icon7)
        self.pushButton_refresh.setObjectName("pushButton_refresh")
        self.horizontalLayout_5.addWidget(self.pushButton_refresh)
        spacerItem6 = QtWidgets.QSpacerItem(90, 20,
                                            QtWidgets.QSizePolicy.Fixed,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_5.addItem(spacerItem6)
        self.verticalLayout_4.addWidget(self.widget_down2)
        spacerItem7 = QtWidgets.QSpacerItem(20, 15,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Fixed)
        self.verticalLayout_4.addItem(spacerItem7)
        self.verticalLayout_3.addWidget(self.widget_4)
        self.verticalLayout_2.addWidget(self.widget_2)
        self.tabWidget_main.addTab(self.tab_import, icon, "")
        self.tab_undefined01 = QtWidgets.QWidget()
        self.tab_undefined01.setObjectName("tab_undefined01")
        self.tabWidget_main.addTab(self.tab_undefined01, "")
        self.tab_undefined02 = QtWidgets.QWidget()
        self.tab_undefined02.setObjectName("tab_undefined02")
        self.tabWidget_main.addTab(self.tab_undefined02, "")
        self.horizontalLayout_2.addWidget(self.tabWidget_main)
        self.horizontalLayout_4.addWidget(self.widget)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 780, 21))
        self.menubar.setStyleSheet("background-color:rgb(60, 60, 60)")
        self.menubar.setObjectName("menubar")
        self.menu_Setting = QtWidgets.QMenu(self.menubar)
        self.menu_Setting.setObjectName("menu_Setting")
        self.menu_About = QtWidgets.QMenu(self.menubar)
        self.menu_About.setObjectName("menu_About")
        self.menu_File = QtWidgets.QMenu(self.menubar)
        self.menu_File.setObjectName("menu_File")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.toolBar = QtWidgets.QToolBar(MainWindow)
        self.toolBar.setObjectName("toolBar")
        MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
        self.dockWidget_om = QtWidgets.QDockWidget(MainWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.dockWidget_om.sizePolicy().hasHeightForWidth())
        self.dockWidget_om.setSizePolicy(sizePolicy)
        self.dockWidget_om.setMinimumSize(QtCore.QSize(142, 164))
        self.dockWidget_om.setFocusPolicy(QtCore.Qt.TabFocus)
        self.dockWidget_om.setFloating(False)
        self.dockWidget_om.setObjectName("dockWidget_om")
        self.dockWidgetContents_2 = QtWidgets.QWidget()
        self.dockWidgetContents_2.setObjectName("dockWidgetContents_2")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.dockWidgetContents_2)
        self.verticalLayout.setObjectName("verticalLayout")
        self.widget_leftside = QtWidgets.QWidget(self.dockWidgetContents_2)
        self.widget_leftside.setObjectName("widget_leftside")
        self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.widget_leftside)
        self.verticalLayout_5.setContentsMargins(7, 7, 7, 7)
        self.verticalLayout_5.setObjectName("verticalLayout_5")
        self.verticalLayout.addWidget(self.widget_leftside)
        self.dockWidget_om.setWidget(self.dockWidgetContents_2)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                 self.dockWidget_om)
        self.actionSetting = QtWidgets.QAction(MainWindow)
        self.actionSetting.setCheckable(False)
        self.actionSetting.setIcon(icon6)
        self.actionSetting.setStatusTip("")
        self.actionSetting.setVisible(True)
        self.actionSetting.setObjectName("actionSetting")
        self.actionAboutThis = QtWidgets.QAction(MainWindow)
        self.actionAboutThis.setObjectName("actionAboutThis")
        self.actionAbout = QtWidgets.QAction(MainWindow)
        self.actionAbout.setObjectName("actionAbout")
        self.actionDefault = QtWidgets.QAction(MainWindow)
        self.actionDefault.setObjectName("actionDefault")
        self.actionSave = QtWidgets.QAction(MainWindow)
        self.actionSave.setObjectName("actionSave")
        self.menu_Setting.addAction(self.actionDefault)
        self.menu_About.addAction(self.actionAboutThis)
        self.menu_File.addAction(self.actionSave)
        self.menu_File.addSeparator()
        self.menu_File.addSeparator()
        self.menubar.addAction(self.menu_File.menuAction())
        self.menubar.addAction(self.menu_Setting.menuAction())
        self.menubar.addAction(self.menu_About.menuAction())
        self.toolBar.addAction(self.actionSetting)

        self.retranslateUi(MainWindow)
        self.tabWidget_main.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Example #14
0
    def __init__(self, main_win, plot_params: Optional[PlotParams] = None):
        super().__init__(parent=main_win)
        if plot_params is None:
            self._pp = PlotParams()  # plot parameters
        else:
            self._pp = plot_params

        self.jm2 = Model()
        self.jm2.use_test_sed_params(TestSediments.COARSE_SAND)
        self.jm2.use_default_mdl_params()

        self.setWindowTitle("Arch Tab")
        self.settings = QtCore.QSettings()

        self.main_win = main_win
        self.progress = QtProgress(parent=self)

        self.setContentsMargins(0, 0, 0, 0)

        canvas_frame = QtWidgets.QFrame(self)
        self.layout = QtWidgets.QVBoxLayout()
        canvas_frame.setLayout(self.layout)

        with rc_context(app_info.plot_rc_context):

            self.f = Figure()
            self.f.patch.set_alpha(0.0)
            self.c = FigureCanvas(self.f)
            self.c.setParent(self)
            # noinspection PyUnresolvedReferences
            self.c.setFocusPolicy(
                QtCore.Qt.ClickFocus)  # key for press events!!!
            self.c.setFocus()
            self.layout.addWidget(self.c)

            # axes
            gs = gridspec.GridSpec(3, 3)
            self.up_ax = self.f.add_subplot(gs[0:2, :])
            self.down_ax = self.f.add_subplot(gs[2, :])

        # navigation
        self.nav = NavToolbar(canvas=self.c, parent=self)
        self.layout.addWidget(self.nav)

        self.setCentralWidget(canvas_frame)

        settings_dock = QtWidgets.QDockWidget("Settings")
        settings_dock.setFeatures(QtWidgets.QDockWidget.DockWidgetFloatable
                                  | QtWidgets.QDockWidget.DockWidgetMovable)
        settings_dock.setMinimumWidth(200)
        settings_dock.setMaximumWidth(400)
        settings_frame = QtWidgets.QWidget()
        settings_dock.setWidget(settings_frame)
        self.process_layout = QtWidgets.QVBoxLayout()
        settings_frame.setLayout(self.process_layout)

        # sediment

        seds_label_layout = QtWidgets.QHBoxLayout()
        self.process_layout.addLayout(seds_label_layout)
        seds_label_layout.addStretch()
        seds_label = QtWidgets.QLabel("Sediment Type")
        seds_label_layout.addWidget(seds_label)
        seds_label_layout.addStretch()

        seds_layout = QtWidgets.QHBoxLayout()
        self.process_layout.addLayout(seds_layout)
        seds_layout.addStretch()
        self.seds = dict()
        for sed in TestSediments:
            self.seds[test_params[sed].name] = sed
        self.seds_list = QtWidgets.QComboBox()
        self.seds_list.addItems(list(self.seds.keys()))
        self.seds_list.setCurrentText(
            test_params[TestSediments.COARSE_SAND].name)
        # noinspection PyUnresolvedReferences
        self.seds_list.currentTextChanged.connect(self.on_draw)
        seds_layout.addWidget(self.seds_list)
        seds_layout.addStretch()

        # frequency

        freq_label_layout = QtWidgets.QHBoxLayout()
        self.process_layout.addLayout(freq_label_layout)
        freq_label_layout.addStretch()
        self.freq_label = QtWidgets.QLabel("Frequency [%.1f kHz]" %
                                           (self.jm2.mdl_params.f / 1000))
        freq_label_layout.addWidget(self.freq_label)
        freq_label_layout.addStretch()

        freq_layout = QtWidgets.QHBoxLayout()
        self.process_layout.addLayout(freq_layout)
        freq_layout.addStretch()
        self.freq_slider = QtWidgets.QSlider(QtCore.Qt.Horizontal)
        self.freq_slider.setMinimumWidth(160)
        self.freq_slider.setMinimum(1)
        self.freq_slider.setMaximum(500)
        self.freq_slider.setTickInterval(1)
        self.freq_slider.setValue(self.jm2.mdl_params.f / 1000)
        # noinspection PyUnresolvedReferences
        self.freq_slider.valueChanged.connect(self.on_draw)
        freq_layout.addWidget(self.freq_slider)
        freq_layout.addStretch()

        self.process_layout.addSpacing(12)

        redraw_layout = QtWidgets.QHBoxLayout()
        self.process_layout.addLayout(redraw_layout)
        redraw_layout.addStretch()
        redraw_btn = QtWidgets.QPushButton("Redraw")
        # noinspection PyUnresolvedReferences
        redraw_btn.clicked.connect(self.on_draw)
        redraw_layout.addWidget(redraw_btn)
        redraw_layout.addStretch()

        self.process_layout.addStretch()
        self.addDockWidget(QtCore.Qt.RightDockWidgetArea, settings_dock)

        self.on_draw()
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout.setSpacing(0)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setObjectName("gridLayout")
        self.stackedWidget = QtWidgets.QStackedWidget(self.centralwidget)
        self.stackedWidget.setStyleSheet("")
        self.stackedWidget.setObjectName("stackedWidget")
        self.page = QtWidgets.QWidget()
        self.page.setObjectName("page")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page)
        self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.templateCtrlBar = QtWidgets.QWidget(self.page)
        self.templateCtrlBar.setStyleSheet("background-color: rgb(186, 189, 182);")
        self.templateCtrlBar.setObjectName("templateCtrlBar")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.templateCtrlBar)
        self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.toolButton_5 = QtWidgets.QToolButton(self.templateCtrlBar)
        self.toolButton_5.setObjectName("toolButton_5")
        self.horizontalLayout_3.addWidget(self.toolButton_5)
        self.toolButton_6 = QtWidgets.QToolButton(self.templateCtrlBar)
        self.toolButton_6.setObjectName("toolButton_6")
        self.horizontalLayout_3.addWidget(self.toolButton_6)
        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_3.addItem(spacerItem)
        self.verticalLayout_3.addWidget(self.templateCtrlBar)
        self.templateEditor = QtWidgets.QTextEdit(self.page)
        self.templateEditor.setObjectName("templateEditor")
        self.verticalLayout_3.addWidget(self.templateEditor)
        self.stackedWidget.addWidget(self.page)
        self.page_2 = QtWidgets.QWidget()
        self.page_2.setObjectName("page_2")
        self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_2)
        self.verticalLayout_4.setSpacing(0)
        self.verticalLayout_4.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.csvEditor = QtWidgets.QColumnView(self.page_2)
        self.csvEditor.setObjectName("csvEditor")
        self.verticalLayout_4.addWidget(self.csvEditor)
        self.stackedWidget.addWidget(self.page_2)
        self.gridLayout.addWidget(self.stackedWidget, 0, 0, 1, 1)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 16))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.csvDockView = QtWidgets.QDockWidget(MainWindow)
        self.csvDockView.setBaseSize(QtCore.QSize(45, 0))
        self.csvDockView.setStyleSheet("")
        self.csvDockView.setObjectName("csvDockView")
        self.csvDockContents = QtWidgets.QWidget()
        self.csvDockContents.setObjectName("csvDockContents")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.csvDockContents)
        self.verticalLayout.setObjectName("verticalLayout")
        self.csvList = QtWidgets.QListView(self.csvDockContents)
        self.csvList.setObjectName("csvList")
        self.verticalLayout.addWidget(self.csvList)
        self.csvListCtrlBar = QtWidgets.QWidget(self.csvDockContents)
        self.csvListCtrlBar.setObjectName("csvListCtrlBar")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.csvListCtrlBar)
        self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.toolButton = QtWidgets.QToolButton(self.csvListCtrlBar)
        self.toolButton.setObjectName("toolButton")
        self.horizontalLayout.addWidget(self.toolButton)
        self.toolButton_2 = QtWidgets.QToolButton(self.csvListCtrlBar)
        self.toolButton_2.setObjectName("toolButton_2")
        self.horizontalLayout.addWidget(self.toolButton_2)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem1)
        self.verticalLayout.addWidget(self.csvListCtrlBar)
        self.csvDockView.setWidget(self.csvDockContents)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.csvDockView)
        self.templateDockView = QtWidgets.QDockWidget(MainWindow)
        self.templateDockView.setBaseSize(QtCore.QSize(45, 0))
        self.templateDockView.setStyleSheet("")
        self.templateDockView.setObjectName("templateDockView")
        self.templateDockContents = QtWidgets.QWidget()
        self.templateDockContents.setObjectName("templateDockContents")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.templateDockContents)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.templateList = QtWidgets.QListView(self.templateDockContents)
        self.templateList.setObjectName("templateList")
        self.verticalLayout_2.addWidget(self.templateList)
        self.templateListCtrlBar = QtWidgets.QWidget(self.templateDockContents)
        self.templateListCtrlBar.setObjectName("templateListCtrlBar")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.templateListCtrlBar)
        self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.toolButton_3 = QtWidgets.QToolButton(self.templateListCtrlBar)
        self.toolButton_3.setObjectName("toolButton_3")
        self.horizontalLayout_2.addWidget(self.toolButton_3)
        self.toolButton_4 = QtWidgets.QToolButton(self.templateListCtrlBar)
        self.toolButton_4.setObjectName("toolButton_4")
        self.horizontalLayout_2.addWidget(self.toolButton_4)
        spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem2)
        self.verticalLayout_2.addWidget(self.templateListCtrlBar)
        self.templateDockView.setWidget(self.templateDockContents)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.templateDockView)

        self.retranslateUi(MainWindow)
        self.stackedWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Example #16
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1799, 1702)
        MainWindow.setAcceptDrops(True)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/icons/Dave_icon.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        MainWindow.setWindowIcon(icon)
        MainWindow.setLocale(QtCore.QLocale(QtCore.QLocale.English, QtCore.QLocale.UnitedStates))
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.centralwidget)
        self.verticalLayout_3.setSpacing(0)
        self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.widget_3 = QtWidgets.QWidget(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.widget_3.sizePolicy().hasHeightForWidth())
        self.widget_3.setSizePolicy(sizePolicy)
        self.widget_3.setMinimumSize(QtCore.QSize(0, 24))
        self.widget_3.setMaximumSize(QtCore.QSize(16777215, 30))
        self.widget_3.setObjectName("widget_3")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.widget_3)
        self.horizontalLayout_2.setSpacing(2)
        self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.btnSolveStatics = QtWidgets.QPushButton(self.widget_3)
        self.btnSolveStatics.setIcon(icon)
        self.btnSolveStatics.setObjectName("btnSolveStatics")
        self.horizontalLayout_2.addWidget(self.btnSolveStatics)
        self.btnUndoStatics = QtWidgets.QPushButton(self.widget_3)
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(":/icons/icon_undo.png"), QtGui.QIcon.Normal, QtGui.QIcon.On)
        self.btnUndoStatics.setIcon(icon1)
        self.btnUndoStatics.setObjectName("btnUndoStatics")
        self.horizontalLayout_2.addWidget(self.btnUndoStatics)
        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem)
        self.btnWater = QtWidgets.QPushButton(self.widget_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.btnWater.sizePolicy().hasHeightForWidth())
        self.btnWater.setSizePolicy(sizePolicy)
        self.btnWater.setMinimumSize(QtCore.QSize(30, 0))
        self.btnWater.setMaximumSize(QtCore.QSize(60, 16777215))
        self.btnWater.setBaseSize(QtCore.QSize(30, 0))
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(":/icons/fish.png"), QtGui.QIcon.Normal, QtGui.QIcon.On)
        self.btnWater.setIcon(icon2)
        self.btnWater.setFlat(True)
        self.btnWater.setObjectName("btnWater")
        self.horizontalLayout_2.addWidget(self.btnWater)
        self.btnBlender = QtWidgets.QPushButton(self.widget_3)
        self.btnBlender.setMaximumSize(QtCore.QSize(100, 16777215))
        icon3 = QtGui.QIcon()
        icon3.addPixmap(QtGui.QPixmap(":/icons/blender_icon_64x64.png"), QtGui.QIcon.Normal, QtGui.QIcon.On)
        self.btnBlender.setIcon(icon3)
        self.btnBlender.setFlat(True)
        self.btnBlender.setObjectName("btnBlender")
        self.horizontalLayout_2.addWidget(self.btnBlender)
        self.verticalLayout_3.addWidget(self.widget_3)
        self.frame3d = QtWidgets.QFrame(self.centralwidget)
        self.frame3d.setAcceptDrops(False)
        self.frame3d.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame3d.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame3d.setLineWidth(0)
        self.frame3d.setObjectName("frame3d")
        self.verticalLayout_3.addWidget(self.frame3d)
        self.frameAni = QtWidgets.QWidget(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.frameAni.sizePolicy().hasHeightForWidth())
        self.frameAni.setSizePolicy(sizePolicy)
        self.frameAni.setMinimumSize(QtCore.QSize(0, 20))
        self.frameAni.setMaximumSize(QtCore.QSize(16777215, 30))
        self.frameAni.setObjectName("frameAni")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.frameAni)
        self.horizontalLayout.setSpacing(0)
        self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.widget_2 = QtWidgets.QWidget(self.frameAni)
        self.widget_2.setObjectName("widget_2")
        self.gridLayout = QtWidgets.QGridLayout(self.widget_2)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setHorizontalSpacing(2)
        self.gridLayout.setVerticalSpacing(0)
        self.gridLayout.setObjectName("gridLayout")
        self.btnPauseAnimation = QtWidgets.QToolButton(self.widget_2)
        self.btnPauseAnimation.setCheckable(True)
        self.btnPauseAnimation.setObjectName("btnPauseAnimation")
        self.gridLayout.addWidget(self.btnPauseAnimation, 0, 1, 1, 1)
        self.btnStopAnimation = QtWidgets.QToolButton(self.widget_2)
        self.btnStopAnimation.setObjectName("btnStopAnimation")
        self.gridLayout.addWidget(self.btnStopAnimation, 0, 0, 1, 1)
        self.sbPlaybackspeed = QtWidgets.QDoubleSpinBox(self.widget_2)
        self.sbPlaybackspeed.setToolTip("")
        self.sbPlaybackspeed.setToolTipDuration(0)
        self.sbPlaybackspeed.setMinimum(0.1)
        self.sbPlaybackspeed.setMaximum(10.0)
        self.sbPlaybackspeed.setSingleStep(0.1)
        self.sbPlaybackspeed.setProperty("value", 1.0)
        self.sbPlaybackspeed.setObjectName("sbPlaybackspeed")
        self.gridLayout.addWidget(self.sbPlaybackspeed, 0, 2, 1, 1)
        self.horizontalLayout.addWidget(self.widget_2)
        self.aniSlider = QtWidgets.QSlider(self.frameAni)
        self.aniSlider.setOrientation(QtCore.Qt.Horizontal)
        self.aniSlider.setTickPosition(QtWidgets.QSlider.TicksAbove)
        self.aniSlider.setObjectName("aniSlider")
        self.horizontalLayout.addWidget(self.aniSlider)
        self.verticalLayout_3.addWidget(self.frameAni)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1799, 31))
        self.menubar.setObjectName("menubar")
        self.menuSolve_Statics = QtWidgets.QMenu(self.menubar)
        self.menuSolve_Statics.setObjectName("menuSolve_Statics")
        self.menuView = QtWidgets.QMenu(self.menubar)
        self.menuView.setObjectName("menuView")
        self.menuLook_towards = QtWidgets.QMenu(self.menuView)
        self.menuLook_towards.setObjectName("menuLook_towards")
        MainWindow.setMenuBar(self.menubar)
        self.dockWidget_2 = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_2.setObjectName("dockWidget_2")
        self.dockWidgetContents_2 = QtWidgets.QWidget()
        self.dockWidgetContents_2.setObjectName("dockWidgetContents_2")
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.dockWidgetContents_2)
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.widget_5 = QtWidgets.QWidget(self.dockWidgetContents_2)
        self.widget_5.setObjectName("widget_5")
        self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.widget_5)
        self.verticalLayout_4.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.widget_6 = QtWidgets.QWidget(self.widget_5)
        self.widget_6.setObjectName("widget_6")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.widget_6)
        self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.label_3 = QtWidgets.QLabel(self.widget_6)
        self.label_3.setObjectName("label_3")
        self.horizontalLayout_3.addWidget(self.label_3)
        self.pbClearCode = QtWidgets.QToolButton(self.widget_6)
        icon4 = QtGui.QIcon()
        icon4.addPixmap(QtGui.QPixmap(":/icons/file_new.png"), QtGui.QIcon.Normal, QtGui.QIcon.On)
        self.pbClearCode.setIcon(icon4)
        self.pbClearCode.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)
        self.pbClearCode.setObjectName("pbClearCode")
        self.horizontalLayout_3.addWidget(self.pbClearCode)
        self.pbExecute = QtWidgets.QToolButton(self.widget_6)
        icon5 = QtGui.QIcon()
        icon5.addPixmap(QtGui.QPixmap(":/icons/python logo klein.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pbExecute.setIcon(icon5)
        self.pbExecute.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)
        self.pbExecute.setObjectName("pbExecute")
        self.horizontalLayout_3.addWidget(self.pbExecute)
        self.verticalLayout_4.addWidget(self.widget_6)
        self.teCode = QtWidgets.QTextEdit(self.widget_5)
        self.teCode.setObjectName("teCode")
        self.verticalLayout_4.addWidget(self.teCode)
        self.horizontalLayout_4.addWidget(self.widget_5)
        self.frame_3 = QtWidgets.QFrame(self.dockWidgetContents_2)
        self.frame_3.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame_3.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame_3.setObjectName("frame_3")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.frame_3)
        self.verticalLayout.setContentsMargins(13, 0, 13, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.widget_7 = QtWidgets.QWidget(self.frame_3)
        self.widget_7.setObjectName("widget_7")
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.widget_7)
        self.horizontalLayout_5.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.label_2 = QtWidgets.QLabel(self.widget_7)
        self.label_2.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop)
        self.label_2.setObjectName("label_2")
        self.horizontalLayout_5.addWidget(self.label_2)
        self.pbGenerateSceneCode = QtWidgets.QToolButton(self.widget_7)
        icon6 = QtGui.QIcon()
        icon6.addPixmap(QtGui.QPixmap(":/icons/cube.png"), QtGui.QIcon.Normal, QtGui.QIcon.On)
        self.pbGenerateSceneCode.setIcon(icon6)
        self.pbGenerateSceneCode.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)
        self.pbGenerateSceneCode.setObjectName("pbGenerateSceneCode")
        self.horizontalLayout_5.addWidget(self.pbGenerateSceneCode)
        self.pbCopyOutput = QtWidgets.QToolButton(self.widget_7)
        icon7 = QtGui.QIcon()
        icon7.addPixmap(QtGui.QPixmap(":/icons/icon_copy.png"), QtGui.QIcon.Normal, QtGui.QIcon.On)
        self.pbCopyOutput.setIcon(icon7)
        self.pbCopyOutput.setObjectName("pbCopyOutput")
        self.horizontalLayout_5.addWidget(self.pbCopyOutput)
        self.verticalLayout.addWidget(self.widget_7)
        self.teFeedback = QtWidgets.QTextEdit(self.frame_3)
        self.teFeedback.setAutoFillBackground(False)
        self.teFeedback.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.teFeedback.setObjectName("teFeedback")
        self.verticalLayout.addWidget(self.teFeedback)
        self.horizontalLayout_4.addWidget(self.frame_3)
        self.widget_4 = QtWidgets.QWidget(self.dockWidgetContents_2)
        self.widget_4.setObjectName("widget_4")
        self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.widget_4)
        self.verticalLayout_5.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_5.setObjectName("verticalLayout_5")
        self.widget = QtWidgets.QWidget(self.widget_4)
        self.widget.setObjectName("widget")
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout(self.widget)
        self.horizontalLayout_6.setContentsMargins(-1, 0, 0, 0)
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
        self.label = QtWidgets.QLabel(self.widget)
        self.label.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop)
        self.label.setObjectName("label")
        self.horizontalLayout_6.addWidget(self.label)
        self.pbCopyHistory = QtWidgets.QToolButton(self.widget)
        self.pbCopyHistory.setIcon(icon7)
        self.pbCopyHistory.setObjectName("pbCopyHistory")
        self.horizontalLayout_6.addWidget(self.pbCopyHistory)
        self.verticalLayout_5.addWidget(self.widget)
        self.teHistory = QtWidgets.QTextEdit(self.widget_4)
        self.teHistory.setObjectName("teHistory")
        self.verticalLayout_5.addWidget(self.teHistory)
        self.horizontalLayout_4.addWidget(self.widget_4)
        self.dockWidget_2.setWidget(self.dockWidgetContents_2)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(8), self.dockWidget_2)
        self.toolBar = QtWidgets.QToolBar(MainWindow)
        self.toolBar.setObjectName("toolBar")
        MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
        self.actionSave_scene = QtWidgets.QAction(MainWindow)
        self.actionSave_scene.setObjectName("actionSave_scene")
        self.actionImport_sub_scene = QtWidgets.QAction(MainWindow)
        self.actionImport_sub_scene.setObjectName("actionImport_sub_scene")
        self.actionNew = QtWidgets.QAction(MainWindow)
        self.actionNew.setObjectName("actionNew")
        self.actionHorizontal_camera = QtWidgets.QAction(MainWindow)
        self.actionHorizontal_camera.setObjectName("actionHorizontal_camera")
        self.action = QtWidgets.QAction(MainWindow)
        self.action.setObjectName("action")
        self.action2D_mode = QtWidgets.QAction(MainWindow)
        self.action2D_mode.setCheckable(True)
        self.action2D_mode.setObjectName("action2D_mode")
        self.actionDark_mode = QtWidgets.QAction(MainWindow)
        self.actionDark_mode.setCheckable(False)
        self.actionDark_mode.setObjectName("actionDark_mode")
        self.actionShow_visuals = QtWidgets.QAction(MainWindow)
        self.actionShow_visuals.setCheckable(True)
        self.actionShow_visuals.setChecked(True)
        self.actionShow_visuals.setObjectName("actionShow_visuals")
        self.actionShow_Geometry_elements = QtWidgets.QAction(MainWindow)
        self.actionShow_Geometry_elements.setCheckable(True)
        self.actionShow_Geometry_elements.setChecked(True)
        self.actionShow_Geometry_elements.setObjectName("actionShow_Geometry_elements")
        self.actionShow_force_applyting_element = QtWidgets.QAction(MainWindow)
        self.actionShow_force_applyting_element.setCheckable(True)
        self.actionShow_force_applyting_element.setChecked(True)
        self.actionShow_force_applyting_element.setObjectName("actionShow_force_applyting_element")
        self.actionSet_all_visible = QtWidgets.QAction(MainWindow)
        self.actionSet_all_visible.setObjectName("actionSet_all_visible")
        self.actionSet_all_hidden = QtWidgets.QAction(MainWindow)
        self.actionSet_all_hidden.setObjectName("actionSet_all_hidden")
        self.actionFull_refresh = QtWidgets.QAction(MainWindow)
        self.actionFull_refresh.setObjectName("actionFull_refresh")
        self.actionShow_water_plane = QtWidgets.QAction(MainWindow)
        self.actionShow_water_plane.setCheckable(True)
        self.actionShow_water_plane.setChecked(False)
        self.actionShow_water_plane.setObjectName("actionShow_water_plane")
        self.actionAdd_light = QtWidgets.QAction(MainWindow)
        self.actionAdd_light.setObjectName("actionAdd_light")
        self.actionShow_all_forces_at_same_size = QtWidgets.QAction(MainWindow)
        self.actionShow_all_forces_at_same_size.setCheckable(True)
        self.actionShow_all_forces_at_same_size.setChecked(True)
        self.actionShow_all_forces_at_same_size.setObjectName("actionShow_all_forces_at_same_size")
        self.actionIncrease_force_size = QtWidgets.QAction(MainWindow)
        self.actionIncrease_force_size.setObjectName("actionIncrease_force_size")
        self.actionDecrease_force_size = QtWidgets.QAction(MainWindow)
        self.actionDecrease_force_size.setObjectName("actionDecrease_force_size")
        self.actionIncrease_Geometry_size = QtWidgets.QAction(MainWindow)
        self.actionIncrease_Geometry_size.setObjectName("actionIncrease_Geometry_size")
        self.actionDecrease_Geometry_size = QtWidgets.QAction(MainWindow)
        self.actionDecrease_Geometry_size.setObjectName("actionDecrease_Geometry_size")
        self.actionPython_console = QtWidgets.QAction(MainWindow)
        self.actionPython_console.setObjectName("actionPython_console")
        self.actionGoal_seek = QtWidgets.QAction(MainWindow)
        self.actionGoal_seek.setObjectName("actionGoal_seek")
        self.actionStability_curve = QtWidgets.QAction(MainWindow)
        self.actionStability_curve.setObjectName("actionStability_curve")
        self.actionOptimize = QtWidgets.QAction(MainWindow)
        self.actionOptimize.setObjectName("actionOptimize")
        self.actionOpen = QtWidgets.QAction(MainWindow)
        self.actionOpen.setObjectName("actionOpen")
        self.actionImport_browser = QtWidgets.QAction(MainWindow)
        self.actionImport_browser.setObjectName("actionImport_browser")
        self.actionRender_current_view = QtWidgets.QAction(MainWindow)
        self.actionRender_current_view.setObjectName("actionRender_current_view")
        self.actionModal_shapes = QtWidgets.QAction(MainWindow)
        self.actionModal_shapes.setObjectName("actionModal_shapes")
        self.actionInertia_properties = QtWidgets.QAction(MainWindow)
        self.actionInertia_properties.setObjectName("actionInertia_properties")
        self.actionSave_actions_as = QtWidgets.QAction(MainWindow)
        self.actionSave_actions_as.setObjectName("actionSave_actions_as")
        self.actionsee_open_ocean_org = QtWidgets.QAction(MainWindow)
        self.actionsee_open_ocean_org.setObjectName("actionsee_open_ocean_org")
        self.actionX = QtWidgets.QAction(MainWindow)
        self.actionX.setObjectName("actionX")
        self.action_x = QtWidgets.QAction(MainWindow)
        self.action_x.setObjectName("action_x")
        self.actionY = QtWidgets.QAction(MainWindow)
        self.actionY.setObjectName("actionY")
        self.action_Y = QtWidgets.QAction(MainWindow)
        self.action_Y.setObjectName("action_Y")
        self.actionZ = QtWidgets.QAction(MainWindow)
        self.actionZ.setObjectName("actionZ")
        self.action_Z = QtWidgets.QAction(MainWindow)
        self.action_Z.setObjectName("action_Z")
        self.actionLook_towards_center = QtWidgets.QAction(MainWindow)
        self.actionLook_towards_center.setObjectName("actionLook_towards_center")
        self.actionCamera_reset = QtWidgets.QAction(MainWindow)
        self.actionCamera_reset.setObjectName("actionCamera_reset")
        self.menuSolve_Statics.addAction(self.actionNew)
        self.menuSolve_Statics.addSeparator()
        self.menuSolve_Statics.addAction(self.actionOpen)
        self.menuSolve_Statics.addAction(self.actionImport_sub_scene)
        self.menuSolve_Statics.addAction(self.actionImport_browser)
        self.menuSolve_Statics.addSeparator()
        self.menuSolve_Statics.addAction(self.actionSave_scene)
        self.menuSolve_Statics.addAction(self.actionSave_actions_as)
        self.menuLook_towards.addAction(self.actionX)
        self.menuLook_towards.addAction(self.action_x)
        self.menuLook_towards.addAction(self.actionY)
        self.menuLook_towards.addAction(self.action_Y)
        self.menuLook_towards.addAction(self.actionZ)
        self.menuLook_towards.addAction(self.action_Z)
        self.menuView.addAction(self.actionHorizontal_camera)
        self.menuView.addSeparator()
        self.menuView.addAction(self.action2D_mode)
        self.menuView.addAction(self.menuLook_towards.menuAction())
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionAdd_light)
        self.menuView.addAction(self.actionDark_mode)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionShow_all_forces_at_same_size)
        self.menuView.addAction(self.actionIncrease_force_size)
        self.menuView.addAction(self.actionDecrease_force_size)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionIncrease_Geometry_size)
        self.menuView.addAction(self.actionDecrease_Geometry_size)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionShow_visuals)
        self.menuView.addAction(self.actionShow_Geometry_elements)
        self.menuView.addAction(self.actionShow_force_applyting_element)
        self.menuView.addAction(self.actionShow_water_plane)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionSet_all_visible)
        self.menuView.addAction(self.actionSet_all_hidden)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionFull_refresh)
        self.menuView.addAction(self.actionCamera_reset)
        self.menubar.addAction(self.menuSolve_Statics.menuAction())
        self.menubar.addAction(self.menuView.menuAction())
        self.toolBar.addSeparator()

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
    def __init__(self, parent, field):
        QtCore.QObject.__init__(self)
        self._parent = weakref.ref(parent)
        self._field = field
        self._column = NAME_TO_COLUMN[field.lower()]
        self._units = NAME_TO_UNITS[field.lower()]
        self._show_min_max = True
        self._show_vline = True
        self.refresh = 0.05
        self.last_refresh = time.time()
        self.widget = QtWidgets.QDockWidget(self._field, parent)
        #self.title = QtWidgets.QWidget(self.widget)
        #self.layout = QtWidgets.QVBoxLayout(self.title)
        #self.button1 = QtWidgets.QPushButton(self.title)
        #self.button1.setObjectName('hi')
        #self.layout.addWidget(self.button1)
        #self.widget.setTitleBarWidget(self.title)

        self.ui = Ui_PlotDockWidget()
        self.ui.setupUi(self.widget)
        self.widget.setWindowTitle(field)
        self.vb = CustomViewBox(self.on_xChangeSignal, self.on_markerSignal.emit)
        self.on_markerSignal.connect(self.on_marker)
        self.plot = pg.PlotWidget(name=self._field, viewBox=self.vb)
        self.ui.mainLayout.addWidget(self.plot)
        self.ui.zoomButton.clicked.connect(self.on_zoom_button)
        self.ui.zoomXButton.clicked.connect(self.on_zoom_x_button)
        self.ui.zoomYButton.clicked.connect(self.on_zoom_y_button)
        self.ui.zoomAutoYButton.clicked.connect(self.on_zoom_auto_y_button)
        self.ui.panButton.clicked.connect(self.on_pan_button)

        self.on_zoom_x_button(True)
        self.on_zoom_auto_y_button(True)
        self.on_pan_button(True)

        self._x = None
        self._y = None

        self.plot.disableAutoRange()
        self.plot.hideButtons()
        self.plot.setXRange(0.0, 1.0)
        # The label automatically causes SI unit ranging with a prefix
        self.plot.setLabel('left', text=field, units=self._units)

        parent.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.widget)
        self._pen_min_max = pg.mkPen(color=(255, 64, 64), width=CURVE_WIDTH)
        self._pen_mean = pg.mkPen(color=(255, 255, 64), width=CURVE_WIDTH)
        self._curve_min = self.plot.plot([], [], pen=self._pen_min_max).curve
        self._curve_max = self.plot.plot([], [], pen=self._pen_min_max).curve
        self._curve_mean = self.plot.plot([], [], pen=self._pen_mean).curve

        value_labels = [
            self.ui.meanValue,
            self.ui.stdValue,
            self.ui.p2pValue,
            self.ui.minValue,
            self.ui.maxValue
        ]
        # https://stackoverflow.com/a/19502467/888653
        width = self.ui.meanValue.fontMetrics().boundingRect("Z9.99 AA").width()
        for label in value_labels:
            label.setMinimumWidth(width)

        self.x_label = pg.TextItem(anchor=(0, 0))
        self.plot.addItem(self.x_label)
Example #18
0
    def setupUi(self, AnimationWindow):
        AnimationWindow.setObjectName("AnimationWindow")
        AnimationWindow.resize(1408, 1191)
        AnimationWindow.setLocale(QtCore.QLocale(QtCore.QLocale.English, QtCore.QLocale.UnitedStates))
        self.centralwidget = QtWidgets.QWidget(AnimationWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.frame3d = QtWidgets.QFrame(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(5)
        sizePolicy.setHeightForWidth(self.frame3d.sizePolicy().hasHeightForWidth())
        self.frame3d.setSizePolicy(sizePolicy)
        self.frame3d.setSizeIncrement(QtCore.QSize(8, 8))
        self.frame3d.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame3d.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame3d.setObjectName("frame3d")
        self.horizontalLayout.addWidget(self.frame3d)
        AnimationWindow.setCentralWidget(self.centralwidget)
        self.dockWidget = QtWidgets.QDockWidget(AnimationWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidget.sizePolicy().hasHeightForWidth())
        self.dockWidget.setSizePolicy(sizePolicy)
        self.dockWidget.setObjectName("dockWidget")
        self.dockWidgetContents = QtWidgets.QWidget()
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidgetContents.sizePolicy().hasHeightForWidth())
        self.dockWidgetContents.setSizePolicy(sizePolicy)
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.gridLayout = QtWidgets.QGridLayout(self.dockWidgetContents)
        self.gridLayout.setObjectName("gridLayout")
        self.label_2 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 2, 1, 1, 1)
        self.horizontalSlider_2 = QtWidgets.QSlider(self.dockWidgetContents)
        self.horizontalSlider_2.setMinimum(1)
        self.horizontalSlider_2.setMaximum(100)
        self.horizontalSlider_2.setProperty("value", 10)
        self.horizontalSlider_2.setOrientation(QtCore.Qt.Vertical)
        self.horizontalSlider_2.setObjectName("horizontalSlider_2")
        self.gridLayout.addWidget(self.horizontalSlider_2, 3, 1, 1, 1)
        self.label = QtWidgets.QLabel(self.dockWidgetContents)
        self.label.setObjectName("label")
        self.gridLayout.addWidget(self.label, 2, 0, 1, 1)
        self.horizontalSlider = QtWidgets.QSlider(self.dockWidgetContents)
        self.horizontalSlider.setOrientation(QtCore.Qt.Vertical)
        self.horizontalSlider.setObjectName("horizontalSlider")
        self.gridLayout.addWidget(self.horizontalSlider, 3, 0, 1, 1)
        self.lblRads = QtWidgets.QLabel(self.dockWidgetContents)
        font = QtGui.QFont()
        font.setWeight(75)
        font.setBold(True)
        self.lblRads.setFont(font)
        self.lblRads.setObjectName("lblRads")
        self.gridLayout.addWidget(self.lblRads, 1, 0, 1, 1)
        self.lblPeriod = QtWidgets.QLabel(self.dockWidgetContents)
        font = QtGui.QFont()
        font.setWeight(75)
        font.setBold(True)
        self.lblPeriod.setFont(font)
        self.lblPeriod.setObjectName("lblPeriod")
        self.gridLayout.addWidget(self.lblPeriod, 0, 0, 1, 1)
        self.dockWidget.setWidget(self.dockWidgetContents)
        AnimationWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dockWidget)
        self.dockWidget_2 = QtWidgets.QDockWidget(AnimationWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidget_2.sizePolicy().hasHeightForWidth())
        self.dockWidget_2.setSizePolicy(sizePolicy)
        self.dockWidget_2.setFeatures(QtWidgets.QDockWidget.DockWidgetFloatable|QtWidgets.QDockWidget.DockWidgetMovable)
        self.dockWidget_2.setObjectName("dockWidget_2")
        self.dockWidgetContents_2 = QtWidgets.QWidget()
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidgetContents_2.sizePolicy().hasHeightForWidth())
        self.dockWidgetContents_2.setSizePolicy(sizePolicy)
        self.dockWidgetContents_2.setObjectName("dockWidgetContents_2")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.dockWidgetContents_2)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.tableWidget = QtWidgets.QTableWidget(self.dockWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.tableWidget.sizePolicy().hasHeightForWidth())
        self.tableWidget.setSizePolicy(sizePolicy)
        self.tableWidget.setLocale(QtCore.QLocale(QtCore.QLocale.English, QtCore.QLocale.UnitedStates))
        self.tableWidget.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.tableWidget.setObjectName("tableWidget")
        self.tableWidget.setColumnCount(7)
        self.tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(2, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(3, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(4, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(5, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(6, item)
        self.horizontalLayout_2.addWidget(self.tableWidget)
        self.dockWidget_2.setWidget(self.dockWidgetContents_2)
        AnimationWindow.addDockWidget(QtCore.Qt.DockWidgetArea(8), self.dockWidget_2)
        self.dockWidget_3 = QtWidgets.QDockWidget(AnimationWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidget_3.sizePolicy().hasHeightForWidth())
        self.dockWidget_3.setSizePolicy(sizePolicy)
        self.dockWidget_3.setObjectName("dockWidget_3")
        self.dockWidgetContents_3 = QtWidgets.QWidget()
        self.dockWidgetContents_3.setObjectName("dockWidgetContents_3")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.dockWidgetContents_3)
        self.verticalLayout.setObjectName("verticalLayout")
        self.btnStatics = QtWidgets.QPushButton(self.dockWidgetContents_3)
        self.btnStatics.setObjectName("btnStatics")
        self.verticalLayout.addWidget(self.btnStatics)
        self.pushButton = QtWidgets.QPushButton(self.dockWidgetContents_3)
        self.pushButton.setObjectName("pushButton")
        self.verticalLayout.addWidget(self.pushButton)
        self.pushButton_2 = QtWidgets.QPushButton(self.dockWidgetContents_3)
        self.pushButton_2.setObjectName("pushButton_2")
        self.verticalLayout.addWidget(self.pushButton_2)
        self.dockWidget_3.setWidget(self.dockWidgetContents_3)
        AnimationWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dockWidget_3)
        self.dockWidget_4 = QtWidgets.QDockWidget(AnimationWindow)
        self.dockWidget_4.setObjectName("dockWidget_4")
        self.dockWidgetContents_4 = QtWidgets.QWidget()
        self.dockWidgetContents_4.setObjectName("dockWidgetContents_4")
        self.dockWidget_4.setWidget(self.dockWidgetContents_4)
        AnimationWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.dockWidget_4)

        self.retranslateUi(AnimationWindow)
        QtCore.QMetaObject.connectSlotsByName(AnimationWindow)
Example #19
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1108, 769)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout()
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.horizontalLayout.addLayout(self.verticalLayout_2)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1108, 21))
        self.menubar.setObjectName("menubar")
        self.menuFile = QtWidgets.QMenu(self.menubar)
        self.menuFile.setObjectName("menuFile")
        self.menuEdit = QtWidgets.QMenu(self.menubar)
        self.menuEdit.setObjectName("menuEdit")
        self.menuHelp = QtWidgets.QMenu(self.menubar)
        self.menuHelp.setObjectName("menuHelp")
        self.menuView = QtWidgets.QMenu(self.menubar)
        self.menuView.setObjectName("menuView")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.dockWidget = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget.setObjectName("dockWidget")
        self.dockWidgetContents = QtWidgets.QWidget()
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.dockWidgetContents)
        self.verticalLayout.setObjectName("verticalLayout")
        self.pushButton_2 = QtWidgets.QPushButton(self.dockWidgetContents)
        self.pushButton_2.setObjectName("pushButton_2")
        self.verticalLayout.addWidget(self.pushButton_2)
        self.pushButton_3 = QtWidgets.QPushButton(self.dockWidgetContents)
        self.pushButton_3.setObjectName("pushButton_3")
        self.verticalLayout.addWidget(self.pushButton_3)
        self.pushButton = QtWidgets.QPushButton(self.dockWidgetContents)
        self.pushButton.setObjectName("pushButton")
        self.verticalLayout.addWidget(self.pushButton)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.dockWidget.setWidget(self.dockWidgetContents)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dockWidget)
        self.actionConnect_To_Server = QtWidgets.QAction(MainWindow)
        self.actionConnect_To_Server.setObjectName("actionConnect_To_Server")
        self.actionAbout_AnimaMan = QtWidgets.QAction(MainWindow)
        self.actionAbout_AnimaMan.setObjectName("actionAbout_AnimaMan")
        self.actionLogin = QtWidgets.QAction(MainWindow)
        self.actionLogin.setObjectName("actionLogin")
        self.actionLogout = QtWidgets.QAction(MainWindow)
        self.actionLogout.setObjectName("actionLogout")
        self.actionExit = QtWidgets.QAction(MainWindow)
        self.actionExit.setObjectName("actionExit")
        self.actionUndo = QtWidgets.QAction(MainWindow)
        self.actionUndo.setObjectName("actionUndo")
        self.actionRedo = QtWidgets.QAction(MainWindow)
        self.actionRedo.setObjectName("actionRedo")
        self.actionCopy = QtWidgets.QAction(MainWindow)
        self.actionCopy.setObjectName("actionCopy")
        self.actionPaste = QtWidgets.QAction(MainWindow)
        self.actionPaste.setObjectName("actionPaste")
        self.actionFind = QtWidgets.QAction(MainWindow)
        self.actionFind.setObjectName("actionFind")
        self.actionHelp = QtWidgets.QAction(MainWindow)
        self.actionHelp.setObjectName("actionHelp")
        self.menuFile.addAction(self.actionConnect_To_Server)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionLogin)
        self.menuFile.addAction(self.actionLogout)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionExit)
        self.menuEdit.addAction(self.actionUndo)
        self.menuEdit.addAction(self.actionRedo)
        self.menuEdit.addSeparator()
        self.menuEdit.addAction(self.actionCopy)
        self.menuEdit.addAction(self.actionPaste)
        self.menuEdit.addSeparator()
        self.menuEdit.addAction(self.actionFind)
        self.menuHelp.addAction(self.actionHelp)
        self.menuHelp.addSeparator()
        self.menuHelp.addAction(self.actionAbout_AnimaMan)
        self.menubar.addAction(self.menuFile.menuAction())
        self.menubar.addAction(self.menuEdit.menuAction())
        self.menubar.addAction(self.menuView.menuAction())
        self.menubar.addAction(self.menuHelp.menuAction())

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Example #20
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1066, 795)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.centralwidget.sizePolicy().hasHeightForWidth())
        self.centralwidget.setSizePolicy(sizePolicy)
        self.centralwidget.setObjectName("centralwidget")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.centralwidget)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.dynamics_widget = DynamicsWidget(self.centralwidget)
        self.dynamics_widget.setObjectName("dynamics_widget")
        self.verticalLayout_3.addWidget(self.dynamics_widget)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar()
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1066, 22))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.dw_dynamics = QtWidgets.QDockWidget(MainWindow)
        self.dw_dynamics.setObjectName("dw_dynamics")
        self.dwc_dynamics = QtWidgets.QWidget()
        self.dwc_dynamics.setObjectName("dwc_dynamics")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.dwc_dynamics)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.gb_Start = QtWidgets.QGroupBox(self.dwc_dynamics)
        self.gb_Start.setObjectName("gb_Start")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.gb_Start)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.lbl_s0 = QtWidgets.QLabel(self.gb_Start)
        self.lbl_s0.setObjectName("lbl_s0")
        self.gridLayout_2.addWidget(self.lbl_s0, 0, 0, 1, 1)
        self.dsb_s0 = QtWidgets.QDoubleSpinBox(self.gb_Start)
        self.dsb_s0.setObjectName("dsb_s0")
        self.gridLayout_2.addWidget(self.dsb_s0, 0, 1, 1, 1)
        self.lbl_v0 = QtWidgets.QLabel(self.gb_Start)
        self.lbl_v0.setObjectName("lbl_v0")
        self.gridLayout_2.addWidget(self.lbl_v0, 1, 0, 1, 1)
        self.dsb_v0 = QtWidgets.QDoubleSpinBox(self.gb_Start)
        self.dsb_v0.setProperty("value", 10.0)
        self.dsb_v0.setObjectName("dsb_v0")
        self.gridLayout_2.addWidget(self.dsb_v0, 1, 1, 1, 1)
        self.lbl_a0 = QtWidgets.QLabel(self.gb_Start)
        self.lbl_a0.setObjectName("lbl_a0")
        self.gridLayout_2.addWidget(self.lbl_a0, 2, 0, 1, 1)
        self.dsb_a0 = QtWidgets.QDoubleSpinBox(self.gb_Start)
        self.dsb_a0.setObjectName("dsb_a0")
        self.gridLayout_2.addWidget(self.dsb_a0, 2, 1, 1, 1)
        self.horizontalLayout.addWidget(self.gb_Start)
        self.gb_End = QtWidgets.QGroupBox(self.dwc_dynamics)
        self.gb_End.setObjectName("gb_End")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.gb_End)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.lbl_stau = QtWidgets.QLabel(self.gb_End)
        self.lbl_stau.setObjectName("lbl_stau")
        self.gridLayout_3.addWidget(self.lbl_stau, 0, 0, 1, 1)
        self.dsb_stau = QtWidgets.QDoubleSpinBox(self.gb_End)
        self.dsb_stau.setProperty("value", 50.0)
        self.dsb_stau.setObjectName("dsb_stau")
        self.gridLayout_3.addWidget(self.dsb_stau, 0, 1, 1, 1)
        self.lbl_vtau = QtWidgets.QLabel(self.gb_End)
        self.lbl_vtau.setObjectName("lbl_vtau")
        self.gridLayout_3.addWidget(self.lbl_vtau, 1, 0, 1, 1)
        self.dsb_vtau = QtWidgets.QDoubleSpinBox(self.gb_End)
        self.dsb_vtau.setProperty("value", 10.0)
        self.dsb_vtau.setObjectName("dsb_vtau")
        self.gridLayout_3.addWidget(self.dsb_vtau, 1, 1, 1, 1)
        self.lbl_atau = QtWidgets.QLabel(self.gb_End)
        self.lbl_atau.setObjectName("lbl_atau")
        self.gridLayout_3.addWidget(self.lbl_atau, 2, 0, 1, 1)
        self.dsb_atau = QtWidgets.QDoubleSpinBox(self.gb_End)
        self.dsb_atau.setObjectName("dsb_atau")
        self.gridLayout_3.addWidget(self.dsb_atau, 2, 1, 1, 1)
        self.horizontalLayout.addWidget(self.gb_End)
        self.dw_dynamics.setWidget(self.dwc_dynamics)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dw_dynamics)
        self.dw_settings = QtWidgets.QDockWidget(MainWindow)
        self.dw_settings.setObjectName("dw_settings")
        self.dwc_settings = QtWidgets.QWidget()
        self.dwc_settings.setObjectName("dwc_settings")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.dwc_settings)
        self.verticalLayout.setObjectName("verticalLayout")
        self.gb_time_settings = QtWidgets.QGroupBox(self.dwc_settings)
        self.gb_time_settings.setObjectName("gb_time_settings")
        self.gridLayout = QtWidgets.QGridLayout(self.gb_time_settings)
        self.gridLayout.setObjectName("gridLayout")
        self.lbl_tau = QtWidgets.QLabel(self.gb_time_settings)
        self.lbl_tau.setObjectName("lbl_tau")
        self.gridLayout.addWidget(self.lbl_tau, 0, 0, 1, 1)
        self.dsb_tau = QtWidgets.QDoubleSpinBox(self.gb_time_settings)
        self.dsb_tau.setProperty("value", 5.0)
        self.dsb_tau.setObjectName("dsb_tau")
        self.gridLayout.addWidget(self.dsb_tau, 0, 1, 1, 1)
        self.lbl_s0_2 = QtWidgets.QLabel(self.gb_time_settings)
        self.lbl_s0_2.setObjectName("lbl_s0_2")
        self.gridLayout.addWidget(self.lbl_s0_2, 1, 0, 1, 1)
        self.dsb_lookahead_time = QtWidgets.QDoubleSpinBox(self.gb_time_settings)
        self.dsb_lookahead_time.setObjectName("dsb_lookahead_time")
        self.gridLayout.addWidget(self.dsb_lookahead_time, 1, 1, 1, 1)
        self.lbl_s0_3 = QtWidgets.QLabel(self.gb_time_settings)
        self.lbl_s0_3.setObjectName("lbl_s0_3")
        self.gridLayout.addWidget(self.lbl_s0_3, 2, 0, 1, 1)
        self.dsb_sampling_rate = QtWidgets.QDoubleSpinBox(self.gb_time_settings)
        self.dsb_sampling_rate.setProperty("value", 0.01)
        self.dsb_sampling_rate.setObjectName("dsb_sampling_rate")
        self.gridLayout.addWidget(self.dsb_sampling_rate, 2, 1, 1, 1)
        self.verticalLayout.addWidget(self.gb_time_settings)
        self.dw_settings.setWidget(self.dwc_settings)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dw_settings)
        self.dw_polynomials = QtWidgets.QDockWidget(MainWindow)
        self.dw_polynomials.setObjectName("dw_polynomials")
        self.dwc_polynomials = QtWidgets.QWidget()
        self.dwc_polynomials.setObjectName("dwc_polynomials")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.dwc_polynomials)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.gb_set_polynomials = QtWidgets.QGroupBox(self.dwc_polynomials)
        self.gb_set_polynomials.setObjectName("gb_set_polynomials")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.gb_set_polynomials)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.pb_set_long = QtWidgets.QPushButton(self.gb_set_polynomials)
        self.pb_set_long.setObjectName("pb_set_long")
        self.gridLayout_4.addWidget(self.pb_set_long, 0, 0, 1, 1)
        self.pb_set_lat = QtWidgets.QPushButton(self.gb_set_polynomials)
        self.pb_set_lat.setObjectName("pb_set_lat")
        self.gridLayout_4.addWidget(self.pb_set_lat, 1, 0, 1, 1)
        self.horizontalLayout_2.addWidget(self.gb_set_polynomials)
        self.dw_polynomials.setWidget(self.dwc_polynomials)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dw_polynomials)
        self.dw_path = QtWidgets.QDockWidget(MainWindow)
        self.dw_path.setObjectName("dw_path")
        self.dwc_path = QtWidgets.QWidget()
        self.dwc_path.setObjectName("dwc_path")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.dwc_path)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.path_widget = PathWidget(self.dwc_path)
        self.path_widget.setObjectName("path_widget")
        self.verticalLayout_2.addWidget(self.path_widget)
        self.dw_path.setWidget(self.dwc_path)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dw_path)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Example #21
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1278, 901)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.centralwidget)
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.viewerLayout = QtWidgets.QVBoxLayout()
        self.viewerLayout.setObjectName("viewerLayout")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setObjectName("label_2")
        self.viewerLayout.addWidget(self.label_2)
        self.viewerWidget = QtWidgets.QOpenGLWidget(self.centralwidget)
        self.viewerWidget.setObjectName("viewerWidget")
        self.viewerLayout.addWidget(self.viewerWidget)
        self.viewerLayout.setStretch(1, 1)
        self.horizontalLayout_2.addLayout(self.viewerLayout)
        self.horizontalLayout_2.setStretch(0, 1)
        self.horizontalLayout_4.addLayout(self.horizontalLayout_2)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1278, 23))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.fileListDock = QtWidgets.QDockWidget(MainWindow)
        self.fileListDock.setObjectName("fileListDock")
        self.dockWidgetContents = QtWidgets.QWidget()
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.dockWidgetContents)
        self.verticalLayout_8.setObjectName("verticalLayout_8")
        self.label_3 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_3.setObjectName("label_3")
        self.verticalLayout_8.addWidget(self.label_3)
        self.fileList = QtWidgets.QListWidget(self.dockWidgetContents)
        self.fileList.setObjectName("fileList")
        self.verticalLayout_8.addWidget(self.fileList)
        self.loadFile = QtWidgets.QPushButton(self.dockWidgetContents)
        self.loadFile.setObjectName("loadFile")
        self.verticalLayout_8.addWidget(self.loadFile)
        self.horizontalLayout_13 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_13.setObjectName("horizontalLayout_13")
        self.addFile = QtWidgets.QPushButton(self.dockWidgetContents)
        self.addFile.setObjectName("addFile")
        self.horizontalLayout_13.addWidget(self.addFile)
        self.removeFile = QtWidgets.QPushButton(self.dockWidgetContents)
        self.removeFile.setObjectName("removeFile")
        self.horizontalLayout_13.addWidget(self.removeFile)
        self.verticalLayout_8.addLayout(self.horizontalLayout_13)
        self.fileListDock.setWidget(self.dockWidgetContents)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                 self.fileListDock)
        self.colorDock = QtWidgets.QDockWidget(MainWindow)
        self.colorDock.setObjectName("colorDock")
        self.dockWidgetContents_2 = QtWidgets.QWidget()
        self.dockWidgetContents_2.setObjectName("dockWidgetContents_2")
        self.verticalLayout_11 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_2)
        self.verticalLayout_11.setObjectName("verticalLayout_11")
        self.verticalLayout_18 = QtWidgets.QVBoxLayout()
        self.verticalLayout_18.setObjectName("verticalLayout_18")
        self.verticalLayout_16 = QtWidgets.QVBoxLayout()
        self.verticalLayout_16.setObjectName("verticalLayout_16")
        self.label_17 = QtWidgets.QLabel(self.dockWidgetContents_2)
        self.label_17.setObjectName("label_17")
        self.verticalLayout_16.addWidget(self.label_17)
        self.groupBox_3 = QtWidgets.QGroupBox(self.dockWidgetContents_2)
        self.groupBox_3.setObjectName("groupBox_3")
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.groupBox_3)
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.ambientRBtn = QtWidgets.QRadioButton(self.groupBox_3)
        self.ambientRBtn.setObjectName("ambientRBtn")
        self.horizontalLayout_5.addWidget(self.ambientRBtn)
        self.diffuseRBtn = QtWidgets.QRadioButton(self.groupBox_3)
        self.diffuseRBtn.setChecked(True)
        self.diffuseRBtn.setObjectName("diffuseRBtn")
        self.horizontalLayout_5.addWidget(self.diffuseRBtn)
        self.specularRBtn = QtWidgets.QRadioButton(self.groupBox_3)
        self.specularRBtn.setChecked(False)
        self.specularRBtn.setObjectName("specularRBtn")
        self.horizontalLayout_5.addWidget(self.specularRBtn)
        self.verticalLayout_16.addWidget(self.groupBox_3)
        self.horizontalLayout_10 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_10.setObjectName("horizontalLayout_10")
        self.verticalLayout_21 = QtWidgets.QVBoxLayout()
        self.verticalLayout_21.setObjectName("verticalLayout_21")
        self.label_9 = QtWidgets.QLabel(self.dockWidgetContents_2)
        self.label_9.setObjectName("label_9")
        self.verticalLayout_21.addWidget(self.label_9)
        self.label_10 = QtWidgets.QLabel(self.dockWidgetContents_2)
        self.label_10.setObjectName("label_10")
        self.verticalLayout_21.addWidget(self.label_10)
        self.label_16 = QtWidgets.QLabel(self.dockWidgetContents_2)
        self.label_16.setObjectName("label_16")
        self.verticalLayout_21.addWidget(self.label_16)
        self.horizontalLayout_10.addLayout(self.verticalLayout_21)
        self.verticalLayout_12 = QtWidgets.QVBoxLayout()
        self.verticalLayout_12.setObjectName("verticalLayout_12")
        self.label_6 = QtWidgets.QLabel(self.dockWidgetContents_2)
        self.label_6.setObjectName("label_6")
        self.verticalLayout_12.addWidget(self.label_6)
        self.intensityR = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_2)
        self.intensityR.setMaximum(1.0)
        self.intensityR.setSingleStep(0.01)
        self.intensityR.setProperty("value", 1.0)
        self.intensityR.setObjectName("intensityR")
        self.verticalLayout_12.addWidget(self.intensityR)
        self.coefficientR = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_2)
        self.coefficientR.setMaximum(1.0)
        self.coefficientR.setSingleStep(0.01)
        self.coefficientR.setProperty("value", 1.0)
        self.coefficientR.setObjectName("coefficientR")
        self.verticalLayout_12.addWidget(self.coefficientR)
        self.verticalLayout_12.setStretch(1, 1)
        self.horizontalLayout_10.addLayout(self.verticalLayout_12)
        self.verticalLayout_13 = QtWidgets.QVBoxLayout()
        self.verticalLayout_13.setObjectName("verticalLayout_13")
        self.label_14 = QtWidgets.QLabel(self.dockWidgetContents_2)
        self.label_14.setObjectName("label_14")
        self.verticalLayout_13.addWidget(self.label_14)
        self.intensityG = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_2)
        self.intensityG.setMaximum(1.0)
        self.intensityG.setSingleStep(0.01)
        self.intensityG.setProperty("value", 1.0)
        self.intensityG.setObjectName("intensityG")
        self.verticalLayout_13.addWidget(self.intensityG)
        self.coefficientG = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_2)
        self.coefficientG.setMaximum(1.0)
        self.coefficientG.setSingleStep(0.01)
        self.coefficientG.setProperty("value", 1.0)
        self.coefficientG.setObjectName("coefficientG")
        self.verticalLayout_13.addWidget(self.coefficientG)
        self.horizontalLayout_10.addLayout(self.verticalLayout_13)
        self.verticalLayout_14 = QtWidgets.QVBoxLayout()
        self.verticalLayout_14.setObjectName("verticalLayout_14")
        self.label_15 = QtWidgets.QLabel(self.dockWidgetContents_2)
        self.label_15.setObjectName("label_15")
        self.verticalLayout_14.addWidget(self.label_15)
        self.intensityB = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_2)
        self.intensityB.setMaximum(1.0)
        self.intensityB.setSingleStep(0.01)
        self.intensityB.setProperty("value", 1.0)
        self.intensityB.setObjectName("intensityB")
        self.verticalLayout_14.addWidget(self.intensityB)
        self.coefficientB = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_2)
        self.coefficientB.setMaximum(1.0)
        self.coefficientB.setSingleStep(0.01)
        self.coefficientB.setProperty("value", 1.0)
        self.coefficientB.setObjectName("coefficientB")
        self.verticalLayout_14.addWidget(self.coefficientB)
        self.horizontalLayout_10.addLayout(self.verticalLayout_14)
        self.verticalLayout_16.addLayout(self.horizontalLayout_10)
        self.verticalLayout_18.addLayout(self.verticalLayout_16)
        self.verticalLayout_11.addLayout(self.verticalLayout_18)
        self.colorDock.setWidget(self.dockWidgetContents_2)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.colorDock)
        self.rotateDock = QtWidgets.QDockWidget(MainWindow)
        self.rotateDock.setObjectName("rotateDock")
        self.dockWidgetContents_3 = QtWidgets.QWidget()
        self.dockWidgetContents_3.setObjectName("dockWidgetContents_3")
        self.verticalLayout_19 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_3)
        self.verticalLayout_19.setObjectName("verticalLayout_19")
        self.verticalLayout_9 = QtWidgets.QVBoxLayout()
        self.verticalLayout_9.setObjectName("verticalLayout_9")
        self.groupBox_2 = QtWidgets.QGroupBox(self.dockWidgetContents_3)
        self.groupBox_2.setObjectName("groupBox_2")
        self.horizontalLayout_14 = QtWidgets.QHBoxLayout(self.groupBox_2)
        self.horizontalLayout_14.setObjectName("horizontalLayout_14")
        self.rotCamRBtn = QtWidgets.QRadioButton(self.groupBox_2)
        self.rotCamRBtn.setObjectName("rotCamRBtn")
        self.horizontalLayout_14.addWidget(self.rotCamRBtn)
        self.rotLightRBtn = QtWidgets.QRadioButton(self.groupBox_2)
        self.rotLightRBtn.setChecked(True)
        self.rotLightRBtn.setObjectName("rotLightRBtn")
        self.horizontalLayout_14.addWidget(self.rotLightRBtn)
        self.verticalLayout_9.addWidget(self.groupBox_2)
        self.horizontalLayout_7 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_7.setObjectName("horizontalLayout_7")
        self.rotXCbox = QtWidgets.QCheckBox(self.dockWidgetContents_3)
        self.rotXCbox.setObjectName("rotXCbox")
        self.horizontalLayout_7.addWidget(self.rotXCbox)
        self.rotYCbox = QtWidgets.QCheckBox(self.dockWidgetContents_3)
        self.rotYCbox.setObjectName("rotYCbox")
        self.horizontalLayout_7.addWidget(self.rotYCbox)
        self.rotZCbox = QtWidgets.QCheckBox(self.dockWidgetContents_3)
        self.rotZCbox.setObjectName("rotZCbox")
        self.horizontalLayout_7.addWidget(self.rotZCbox)
        self.verticalLayout_6 = QtWidgets.QVBoxLayout()
        self.verticalLayout_6.setObjectName("verticalLayout_6")
        self.angleLbl = QtWidgets.QLabel(self.dockWidgetContents_3)
        self.angleLbl.setObjectName("angleLbl")
        self.verticalLayout_6.addWidget(self.angleLbl)
        self.angleSpin = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_3)
        self.angleSpin.setMinimum(-360.0)
        self.angleSpin.setMaximum(360.0)
        self.angleSpin.setSingleStep(1.0)
        self.angleSpin.setProperty("value", 1.0)
        self.angleSpin.setObjectName("angleSpin")
        self.verticalLayout_6.addWidget(self.angleSpin)
        self.horizontalLayout_7.addLayout(self.verticalLayout_6)
        self.verticalLayout_9.addLayout(self.horizontalLayout_7)
        self.verticalLayout_19.addLayout(self.verticalLayout_9)
        self.rotateDock.setWidget(self.dockWidgetContents_3)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.rotateDock)
        self.moveDock = QtWidgets.QDockWidget(MainWindow)
        self.moveDock.setObjectName("moveDock")
        self.dockWidgetContents_4 = QtWidgets.QWidget()
        self.dockWidgetContents_4.setObjectName("dockWidgetContents_4")
        self.verticalLayout_22 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_4)
        self.verticalLayout_22.setObjectName("verticalLayout_22")
        self.verticalLayout_7 = QtWidgets.QVBoxLayout()
        self.verticalLayout_7.setObjectName("verticalLayout_7")
        self.horizontalLayout_9 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_9.setObjectName("horizontalLayout_9")
        self.groupBox = QtWidgets.QGroupBox(self.dockWidgetContents_4)
        self.groupBox.setObjectName("groupBox")
        self.horizontalLayout_12 = QtWidgets.QHBoxLayout(self.groupBox)
        self.horizontalLayout_12.setObjectName("horizontalLayout_12")
        self.moveLightRBtn = QtWidgets.QRadioButton(self.groupBox)
        self.moveLightRBtn.setObjectName("moveLightRBtn")
        self.horizontalLayout_12.addWidget(self.moveLightRBtn)
        self.moveCameraRBtn = QtWidgets.QRadioButton(self.groupBox)
        self.moveCameraRBtn.setChecked(True)
        self.moveCameraRBtn.setObjectName("moveCameraRBtn")
        self.horizontalLayout_12.addWidget(self.moveCameraRBtn)
        self.horizontalLayout_9.addWidget(self.groupBox)
        self.verticalLayout_7.addLayout(self.horizontalLayout_9)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.moveXCBox = QtWidgets.QCheckBox(self.dockWidgetContents_4)
        self.moveXCBox.setObjectName("moveXCBox")
        self.horizontalLayout_3.addWidget(self.moveXCBox)
        self.moveYCBox = QtWidgets.QCheckBox(self.dockWidgetContents_4)
        self.moveYCBox.setObjectName("moveYCBox")
        self.horizontalLayout_3.addWidget(self.moveYCBox)
        self.moveZCBox = QtWidgets.QCheckBox(self.dockWidgetContents_4)
        self.moveZCBox.setObjectName("moveZCBox")
        self.horizontalLayout_3.addWidget(self.moveZCBox)
        self.horizontalLayout.addLayout(self.horizontalLayout_3)
        self.verticalLayout_3 = QtWidgets.QVBoxLayout()
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.moveUp = QtWidgets.QPushButton(self.dockWidgetContents_4)
        self.moveUp.setAutoRepeat(True)
        self.moveUp.setObjectName("moveUp")
        self.verticalLayout_3.addWidget(self.moveUp)
        self.moveDown = QtWidgets.QPushButton(self.dockWidgetContents_4)
        self.moveDown.setAutoRepeat(True)
        self.moveDown.setObjectName("moveDown")
        self.verticalLayout_3.addWidget(self.moveDown)
        self.horizontalLayout.addLayout(self.verticalLayout_3)
        self.verticalLayout_7.addLayout(self.horizontalLayout)
        self.verticalLayout_22.addLayout(self.verticalLayout_7)
        self.moveDock.setWidget(self.dockWidgetContents_4)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.moveDock)
        self.paramsDock = QtWidgets.QDockWidget(MainWindow)
        self.paramsDock.setObjectName("paramsDock")
        self.dockWidgetContents_7 = QtWidgets.QWidget()
        self.dockWidgetContents_7.setObjectName("dockWidgetContents_7")
        self.verticalLayout_10 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_7)
        self.verticalLayout_10.setObjectName("verticalLayout_10")
        self.label_4 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_4.setObjectName("label_4")
        self.verticalLayout_10.addWidget(self.label_4)
        self.paramBrowser = QtWidgets.QTextBrowser(self.dockWidgetContents_7)
        self.paramBrowser.setObjectName("paramBrowser")
        self.verticalLayout_10.addWidget(self.paramBrowser)
        self.captureBtn = QtWidgets.QPushButton(self.dockWidgetContents_7)
        self.captureBtn.setObjectName("captureBtn")
        self.verticalLayout_10.addWidget(self.captureBtn)
        self.paramsDock.setWidget(self.dockWidgetContents_7)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.paramsDock)
        self.transcribeDock = QtWidgets.QDockWidget(MainWindow)
        self.transcribeDock.setObjectName("transcribeDock")
        self.dockWidgetContents_8 = QtWidgets.QWidget()
        self.dockWidgetContents_8.setObjectName("dockWidgetContents_8")
        self.verticalLayout_15 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_8)
        self.verticalLayout_15.setObjectName("verticalLayout_15")
        self.label_5 = QtWidgets.QLabel(self.dockWidgetContents_8)
        self.label_5.setObjectName("label_5")
        self.verticalLayout_15.addWidget(self.label_5)
        self.transcribeEdit = QtWidgets.QPlainTextEdit(
            self.dockWidgetContents_8)
        self.transcribeEdit.setObjectName("transcribeEdit")
        self.verticalLayout_15.addWidget(self.transcribeEdit)
        self.saveBtn = QtWidgets.QPushButton(self.dockWidgetContents_8)
        self.saveBtn.setObjectName("saveBtn")
        self.verticalLayout_15.addWidget(self.saveBtn)
        self.transcribeDock.setWidget(self.dockWidgetContents_8)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1),
                                 self.transcribeDock)
        self.glInfoDock = QtWidgets.QDockWidget(MainWindow)
        self.glInfoDock.setObjectName("glInfoDock")
        self.dockWidgetContents_5 = QtWidgets.QWidget()
        self.dockWidgetContents_5.setObjectName("dockWidgetContents_5")
        self.verticalLayout_20 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_5)
        self.verticalLayout_20.setObjectName("verticalLayout_20")
        self.label_8 = QtWidgets.QLabel(self.dockWidgetContents_5)
        self.label_8.setObjectName("label_8")
        self.verticalLayout_20.addWidget(self.label_8)
        self.glInfoBrowser = QtWidgets.QTextBrowser(self.dockWidgetContents_5)
        self.glInfoBrowser.setObjectName("glInfoBrowser")
        self.verticalLayout_20.addWidget(self.glInfoBrowser)
        self.glInfoDock.setWidget(self.dockWidgetContents_5)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.glInfoDock)
        self.shaderDock = QtWidgets.QDockWidget(MainWindow)
        self.shaderDock.setObjectName("shaderDock")
        self.dockWidgetContents_9 = QtWidgets.QWidget()
        self.dockWidgetContents_9.setObjectName("dockWidgetContents_9")
        self.verticalLayout_17 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_9)
        self.verticalLayout_17.setObjectName("verticalLayout_17")
        self.horizontalLayout_11 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_11.setObjectName("horizontalLayout_11")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout()
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.label_13 = QtWidgets.QLabel(self.dockWidgetContents_9)
        self.label_13.setObjectName("label_13")
        self.verticalLayout_2.addWidget(self.label_13)
        self.shaderCombo = QtWidgets.QComboBox(self.dockWidgetContents_9)
        self.shaderCombo.setCurrentText("")
        self.shaderCombo.setObjectName("shaderCombo")
        self.verticalLayout_2.addWidget(self.shaderCombo)
        self.horizontalLayout_11.addLayout(self.verticalLayout_2)
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.label = QtWidgets.QLabel(self.dockWidgetContents_9)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.shinSpin = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_9)
        self.shinSpin.setMinimum(1.0)
        self.shinSpin.setMaximum(300.0)
        self.shinSpin.setSingleStep(0.1)
        self.shinSpin.setObjectName("shinSpin")
        self.verticalLayout.addWidget(self.shinSpin)
        self.verticalLayout.setStretch(1, 1)
        self.horizontalLayout_11.addLayout(self.verticalLayout)
        self.verticalLayout_17.addLayout(self.horizontalLayout_11)
        self.shaderDock.setWidget(self.dockWidgetContents_9)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.shaderDock)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Example #22
0
    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, 23))
        self.menubar.setObjectName("menubar")
        self.menu_File = QtWidgets.QMenu(self.menubar)
        self.menu_File.setObjectName("menu_File")
        self.menu_Edit = QtWidgets.QMenu(self.menubar)
        self.menu_Edit.setObjectName("menu_Edit")
        self.menu_Tools = QtWidgets.QMenu(self.menubar)
        self.menu_Tools.setObjectName("menu_Tools")
        self.menuAnnotations = QtWidgets.QMenu(self.menu_Tools)
        self.menuAnnotations.setObjectName("menuAnnotations")
        self.menu_About = QtWidgets.QMenu(self.menubar)
        self.menu_About.setObjectName("menu_About")
        self.menuWindows = QtWidgets.QMenu(self.menubar)
        self.menuWindows.setObjectName("menuWindows")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.toolBar = QtWidgets.QToolBar(MainWindow)
        self.toolBar.setObjectName("toolBar")
        MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
        self.dockWidgetAnnotation = QtWidgets.QDockWidget(MainWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.dockWidgetAnnotation.sizePolicy().hasHeightForWidth())
        self.dockWidgetAnnotation.setSizePolicy(sizePolicy)
        self.dockWidgetAnnotation.setMinimumSize(QtCore.QSize(200, 308))
        self.dockWidgetAnnotation.setObjectName("dockWidgetAnnotation")
        self.dockWidgetContents_3 = QtWidgets.QWidget()
        self.dockWidgetContents_3.setObjectName("dockWidgetContents_3")
        self.gridLayout = QtWidgets.QGridLayout(self.dockWidgetContents_3)
        self.gridLayout.setObjectName("gridLayout")
        self.groupBoxMode = QtWidgets.QGroupBox(self.dockWidgetContents_3)
        self.groupBoxMode.setMinimumSize(QtCore.QSize(0, 81))
        self.groupBoxMode.setObjectName("groupBoxMode")
        self.layoutWidget = QtWidgets.QWidget(self.groupBoxMode)
        self.layoutWidget.setGeometry(QtCore.QRect(10, 22, 87, 42))
        self.layoutWidget.setObjectName("layoutWidget")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.layoutWidget)
        self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.radioButton_view = QtWidgets.QRadioButton(self.layoutWidget)
        self.radioButton_view.setObjectName("radioButton_view")
        self.verticalLayout.addWidget(self.radioButton_view)
        self.radioButton_view_2 = QtWidgets.QRadioButton(self.layoutWidget)
        self.radioButton_view_2.setObjectName("radioButton_view_2")
        self.verticalLayout.addWidget(self.radioButton_view_2)
        self.horizontalLayout.addLayout(self.verticalLayout)
        self.gridLayout.addWidget(self.groupBoxMode, 0, 0, 1, 1)
        self.stackedWidget = QtWidgets.QStackedWidget(
            self.dockWidgetContents_3)
        self.stackedWidget.setObjectName("stackedWidget")
        self.page_3 = QtWidgets.QWidget()
        self.page_3.setObjectName("page_3")
        self.gridLayout_7 = QtWidgets.QGridLayout(self.page_3)
        self.gridLayout_7.setObjectName("gridLayout_7")
        self.label = QtWidgets.QLabel(self.page_3)
        self.label.setObjectName("label")
        self.gridLayout_7.addWidget(self.label, 0, 0, 1, 1)
        self.tableView_metadata = QtWidgets.QTableView(self.page_3)
        self.tableView_metadata.setObjectName("tableView_metadata")
        self.gridLayout_7.addWidget(self.tableView_metadata, 1, 0, 1, 1)
        self.stackedWidget.addWidget(self.page_3)
        self.page_4 = QtWidgets.QWidget()
        self.page_4.setObjectName("page_4")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.page_4)
        self.gridLayout_2.setObjectName("gridLayout_2")
        spacerItem = QtWidgets.QSpacerItem(20, 38,
                                           QtWidgets.QSizePolicy.Minimum,
                                           QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_2.addItem(spacerItem, 4, 0, 1, 1)
        self.treeWidget = QtWidgets.QTreeWidget(self.page_4)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(2)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.treeWidget.sizePolicy().hasHeightForWidth())
        self.treeWidget.setSizePolicy(sizePolicy)
        self.treeWidget.setObjectName("treeWidget")
        self.gridLayout_2.addWidget(self.treeWidget, 1, 0, 1, 1)
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.pushButton_clear = QtWidgets.QPushButton(self.page_4)
        self.pushButton_clear.setMinimumSize(QtCore.QSize(50, 0))
        self.pushButton_clear.setObjectName("pushButton_clear")
        self.horizontalLayout_5.addWidget(self.pushButton_clear)
        self.pushButton_add = QtWidgets.QPushButton(self.page_4)
        self.pushButton_add.setMinimumSize(QtCore.QSize(50, 0))
        self.pushButton_add.setObjectName("pushButton_add")
        self.horizontalLayout_5.addWidget(self.pushButton_add)
        self.pushButton_option = QtWidgets.QPushButton(self.page_4)
        self.pushButton_option.setMinimumSize(QtCore.QSize(50, 0))
        self.pushButton_option.setObjectName("pushButton_option")
        self.horizontalLayout_5.addWidget(self.pushButton_option)
        self.gridLayout_2.addLayout(self.horizontalLayout_5, 2, 0, 1, 1)
        self.label_2 = QtWidgets.QLabel(self.page_4)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setFamily("Arial")
        font.setPointSize(10)
        self.label_2.setFont(font)
        self.label_2.setObjectName("label_2")
        self.gridLayout_2.addWidget(self.label_2, 0, 0, 1, 1)
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
        self.pushButton_load = QtWidgets.QPushButton(self.page_4)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.pushButton_load.sizePolicy().hasHeightForWidth())
        self.pushButton_load.setSizePolicy(sizePolicy)
        self.pushButton_load.setMinimumSize(QtCore.QSize(50, 0))
        self.pushButton_load.setObjectName("pushButton_load")
        self.horizontalLayout_6.addWidget(self.pushButton_load)
        self.pushButton_save = QtWidgets.QPushButton(self.page_4)
        self.pushButton_save.setMinimumSize(QtCore.QSize(50, 0))
        self.pushButton_save.setObjectName("pushButton_save")
        self.horizontalLayout_6.addWidget(self.pushButton_save)
        self.gridLayout_2.addLayout(self.horizontalLayout_6, 3, 0, 1, 1)
        self.stackedWidget.addWidget(self.page_4)
        self.gridLayout.addWidget(self.stackedWidget, 1, 0, 1, 1)
        self.dockWidgetAnnotation.setWidget(self.dockWidgetContents_3)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1),
                                 self.dockWidgetAnnotation)
        self.dockWidgetNavigation = QtWidgets.QDockWidget(MainWindow)
        self.dockWidgetNavigation.setObjectName("dockWidgetNavigation")
        self.dockWidgetContents_4 = QtWidgets.QWidget()
        self.dockWidgetContents_4.setObjectName("dockWidgetContents_4")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.dockWidgetContents_4)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        spacerItem1 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem1)
        self.gridLayout_3 = QtWidgets.QGridLayout()
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.pushButton_leftup = QtWidgets.QPushButton(
            self.dockWidgetContents_4)
        self.pushButton_leftup.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_148.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_leftup.setIcon(icon)
        self.pushButton_leftup.setObjectName("pushButton_leftup")
        self.gridLayout_3.addWidget(self.pushButton_leftup, 0, 0, 1, 1)
        self.pushButton_up = QtWidgets.QPushButton(self.dockWidgetContents_4)
        self.pushButton_up.setText("")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_149.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_up.setIcon(icon1)
        self.pushButton_up.setObjectName("pushButton_up")
        self.gridLayout_3.addWidget(self.pushButton_up, 0, 1, 1, 1)
        self.pushButton_rightup = QtWidgets.QPushButton(
            self.dockWidgetContents_4)
        self.pushButton_rightup.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_150.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_rightup.setIcon(icon2)
        self.pushButton_rightup.setObjectName("pushButton_rightup")
        self.gridLayout_3.addWidget(self.pushButton_rightup, 0, 2, 1, 1)
        self.pushButton_left = QtWidgets.QPushButton(self.dockWidgetContents_4)
        self.pushButton_left.setText("")
        icon3 = QtGui.QIcon()
        icon3.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_147.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_left.setIcon(icon3)
        self.pushButton_left.setObjectName("pushButton_left")
        self.gridLayout_3.addWidget(self.pushButton_left, 1, 0, 1, 1)
        self.pushButton_right = QtWidgets.QPushButton(
            self.dockWidgetContents_4)
        self.pushButton_right.setText("")
        icon4 = QtGui.QIcon()
        icon4.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_143.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_right.setIcon(icon4)
        self.pushButton_right.setObjectName("pushButton_right")
        self.gridLayout_3.addWidget(self.pushButton_right, 1, 2, 1, 1)
        self.pushButton_leftdown = QtWidgets.QPushButton(
            self.dockWidgetContents_4)
        self.pushButton_leftdown.setText("")
        icon5 = QtGui.QIcon()
        icon5.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_146.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_leftdown.setIcon(icon5)
        self.pushButton_leftdown.setObjectName("pushButton_leftdown")
        self.gridLayout_3.addWidget(self.pushButton_leftdown, 2, 0, 1, 1)
        self.pushButton_down = QtWidgets.QPushButton(self.dockWidgetContents_4)
        self.pushButton_down.setText("")
        icon6 = QtGui.QIcon()
        icon6.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_145.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_down.setIcon(icon6)
        self.pushButton_down.setObjectName("pushButton_down")
        self.gridLayout_3.addWidget(self.pushButton_down, 2, 1, 1, 1)
        self.pushButton_rightdown = QtWidgets.QPushButton(
            self.dockWidgetContents_4)
        self.pushButton_rightdown.setText("")
        icon7 = QtGui.QIcon()
        icon7.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_144.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_rightdown.setIcon(icon7)
        self.pushButton_rightdown.setObjectName("pushButton_rightdown")
        self.gridLayout_3.addWidget(self.pushButton_rightdown, 2, 2, 1, 1)
        self.horizontalLayout_4.addLayout(self.gridLayout_3)
        spacerItem2 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem2)
        self.gridLayout_4.addLayout(self.horizontalLayout_4, 0, 0, 1, 1)
        spacerItem3 = QtWidgets.QSpacerItem(20, 79,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_4.addItem(spacerItem3, 1, 0, 1, 1)
        spacerItem4 = QtWidgets.QSpacerItem(20, 79,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_4.addItem(spacerItem4, 2, 0, 1, 1)
        self.dockWidgetNavigation.setWidget(self.dockWidgetContents_4)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                 self.dockWidgetNavigation)
        self.dockWidget_4 = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_4.setObjectName("dockWidget_4")
        self.dockWidgetContents_6 = QtWidgets.QWidget()
        self.dockWidgetContents_6.setObjectName("dockWidgetContents_6")
        self.gridLayout_6 = QtWidgets.QGridLayout(self.dockWidgetContents_6)
        self.gridLayout_6.setObjectName("gridLayout_6")
        self.stackedWidget_2 = QtWidgets.QStackedWidget(
            self.dockWidgetContents_6)
        self.stackedWidget_2.setObjectName("stackedWidget_2")
        self.page = QtWidgets.QWidget()
        self.page.setObjectName("page")
        self.gridLayout_5 = QtWidgets.QGridLayout(self.page)
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.label_3 = QtWidgets.QLabel(self.page)
        font = QtGui.QFont()
        font.setFamily("Arial")
        font.setPointSize(10)
        self.label_3.setFont(font)
        self.label_3.setObjectName("label_3")
        self.gridLayout_5.addWidget(self.label_3, 0, 0, 1, 1)
        self.graphicsView_overview = QtWidgets.QGraphicsView(self.page)
        self.graphicsView_overview.setObjectName("graphicsView_overview")
        self.gridLayout_5.addWidget(self.graphicsView_overview, 1, 0, 1, 1)
        self.stackedWidget_2.addWidget(self.page)
        self.page_2 = QtWidgets.QWidget()
        self.page_2.setObjectName("page_2")
        self.stackedWidget_2.addWidget(self.page_2)
        self.gridLayout_6.addWidget(self.stackedWidget_2, 0, 0, 1, 1)
        self.dockWidget_4.setWidget(self.dockWidgetContents_6)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                 self.dockWidget_4)
        self.action_Open = QtWidgets.QAction(MainWindow)
        icon8 = QtGui.QIcon()
        icon8.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_019.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_Open.setIcon(icon8)
        self.action_Open.setObjectName("action_Open")
        self.action_Close = QtWidgets.QAction(MainWindow)
        icon9 = QtGui.QIcon()
        icon9.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_123.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_Close.setIcon(icon9)
        self.action_Close.setObjectName("action_Close")
        self.action_Quit = QtWidgets.QAction(MainWindow)
        icon10 = QtGui.QIcon()
        icon10.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_0.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_Quit.setIcon(icon10)
        self.action_Quit.setPriority(QtWidgets.QAction.HighPriority)
        self.action_Quit.setObjectName("action_Quit")
        self.actionUndo = QtWidgets.QAction(MainWindow)
        icon11 = QtGui.QIcon()
        icon11.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_201.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionUndo.setIcon(icon11)
        self.actionUndo.setObjectName("actionUndo")
        self.actionRectangleAnnotation = QtWidgets.QAction(MainWindow)
        icon12 = QtGui.QIcon()
        icon12.addPixmap(QtGui.QPixmap(":/icons/icons/Middle/rectangle.png"),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionRectangleAnnotation.setIcon(icon12)
        self.actionRectangleAnnotation.setObjectName(
            "actionRectangleAnnotation")
        self.actionPolygonAnnotation = QtWidgets.QAction(MainWindow)
        icon13 = QtGui.QIcon()
        icon13.addPixmap(QtGui.QPixmap(":/icons/icons/Middle/poly.png"),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionPolygonAnnotation.setIcon(icon13)
        self.actionPolygonAnnotation.setObjectName("actionPolygonAnnotation")
        self.actionSpineAnnotation = QtWidgets.QAction(MainWindow)
        icon14 = QtGui.QIcon()
        icon14.addPixmap(QtGui.QPixmap(":/icons/icons/Middle/spline.png"),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionSpineAnnotation.setIcon(icon14)
        self.actionSpineAnnotation.setObjectName("actionSpineAnnotation")
        self.actionDotAnnotation = QtWidgets.QAction(MainWindow)
        icon15 = QtGui.QIcon()
        icon15.addPixmap(QtGui.QPixmap(":/icons/icons/Middle/dot.png"),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionDotAnnotation.setIcon(icon15)
        self.actionDotAnnotation.setObjectName("actionDotAnnotation")
        self.actionDotsetAnnotation = QtWidgets.QAction(MainWindow)
        icon16 = QtGui.QIcon()
        icon16.addPixmap(QtGui.QPixmap(":/icons/icons/Middle/pointset.png"),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionDotsetAnnotation.setIcon(icon16)
        self.actionDotsetAnnotation.setObjectName("actionDotsetAnnotation")
        self.actionPolygonRnn = QtWidgets.QAction(MainWindow)
        icon17 = QtGui.QIcon()
        icon17.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_039.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionPolygonRnn.setIcon(icon17)
        self.actionPolygonRnn.setObjectName("actionPolygonRnn")
        self.action_About = QtWidgets.QAction(MainWindow)
        icon18 = QtGui.QIcon()
        icon18.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_126.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_About.setIcon(icon18)
        self.action_About.setObjectName("action_About")
        self.actionRedo = QtWidgets.QAction(MainWindow)
        icon19 = QtGui.QIcon()
        icon19.addPixmap(
            QtGui.QPixmap(":/icons/icons/Small/icon100_com_200.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionRedo.setIcon(icon19)
        self.actionRedo.setObjectName("actionRedo")
        self.menu_File.addAction(self.action_Open)
        self.menu_File.addAction(self.action_Close)
        self.menu_File.addSeparator()
        self.menu_File.addAction(self.action_Quit)
        self.menu_Edit.addAction(self.actionUndo)
        self.menu_Edit.addAction(self.actionRedo)
        self.menuAnnotations.addAction(self.actionRectangleAnnotation)
        self.menuAnnotations.addAction(self.actionPolygonAnnotation)
        self.menuAnnotations.addAction(self.actionSpineAnnotation)
        self.menuAnnotations.addAction(self.actionDotAnnotation)
        self.menuAnnotations.addAction(self.actionDotsetAnnotation)
        self.menuAnnotations.addSeparator()
        self.menuAnnotations.addAction(self.actionPolygonRnn)
        self.menu_Tools.addAction(self.menuAnnotations.menuAction())
        self.menu_About.addAction(self.action_About)
        self.menubar.addAction(self.menu_File.menuAction())
        self.menubar.addAction(self.menu_Edit.menuAction())
        self.menubar.addAction(self.menu_Tools.menuAction())
        self.menubar.addAction(self.menuWindows.menuAction())
        self.menubar.addAction(self.menu_About.menuAction())
        self.toolBar.addAction(self.action_Open)
        self.toolBar.addAction(self.action_Close)
        self.toolBar.addAction(self.action_Quit)
        self.toolBar.addSeparator()
        self.toolBar.addAction(self.actionUndo)
        self.toolBar.addAction(self.actionRedo)
        self.toolBar.addSeparator()
        self.toolBar.addAction(self.actionRectangleAnnotation)
        self.toolBar.addAction(self.actionPolygonAnnotation)
        self.toolBar.addAction(self.actionSpineAnnotation)
        self.toolBar.addAction(self.actionDotAnnotation)
        self.toolBar.addAction(self.actionDotsetAnnotation)
        self.toolBar.addAction(self.actionPolygonRnn)

        self.retranslateUi(MainWindow)
        self.stackedWidget.setCurrentIndex(1)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Example #23
0
    def __init__(self):
        super().__init__()
        self._colors = [
            '#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b',
            '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'
        ]
        self._color_index = 0

        self.last_folder = os.getcwd()

        self.filter_parameters = FilterCascadeParameter(
            name='Filter Cascade',
            children=[
                BiquadParameter(name="Biquad 1",
                                removable=True,
                                renamable=True)
            ])

        self.parameter_tree = ParameterTree()
        self.parameter_tree.setParameters(self.filter_parameters, showTop=True)

        self.plot_widget = pyqtgraph.PlotWidget()
        self.plot = self.plot_widget.getPlotItem()
        self.plot.setTitle("Magnitude response")
        self.plot.setLabel("bottom", "Frequency", "Hz")
        self.plot.setXRange(20, SAMPLERATE / 2)
        self.plot.showGrid(x=True, y=True)
        self.plot.addLegend()

        self.normalized_frequencies = np.linspace(1 / NPOINTS, 0.5, NPOINTS)
        magnitude = np.ones(self.normalized_frequencies.shape)
        self.total_response_magnitude = self.plot.plot(
            x=self.normalized_frequencies * SAMPLERATE,
            y=magnitude,
            name="Total",
            pen=self.get_next_pen())

        toolbar = self.get_main_toolbar()

        self.addToolBar(toolbar)

        parameters_dock = QtWidgets.QDockWidget("Parameters", parent=self)
        parameters_dock.setFeatures(
            QtWidgets.QDockWidget.DockWidgetMovable
            | QtWidgets.QDockWidget.DockWidgetFloatable)
        parameters_dock.setWidget(self.parameter_tree)
        self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, parameters_dock)

        curve_widget = DataCurveListWidget(self.plot)
        curve_dock = QtGui.QDockWidget("Curves", parent=self)
        curve_dock.setFeatures(QtWidgets.QDockWidget.DockWidgetMovable
                               | QtWidgets.QDockWidget.DockWidgetFloatable)
        curve_dock.setWidget(curve_widget)
        self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, curve_dock)

        self.setCentralWidget(self.plot_widget)
        self.update_frequency_response()
        self.resize(800, 800)
        self.show()
        self.filter_parameters.coefficients_changed.connect(
            self.update_frequency_response)
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1088, 824)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.centralwidget)
        self.verticalLayout_2.setSpacing(0)
        self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.splitter = QtWidgets.QSplitter(self.centralwidget)
        self.splitter.setOrientation(QtCore.Qt.Horizontal)
        self.splitter.setObjectName("splitter")
        self.frame = QtWidgets.QFrame(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.frame.sizePolicy().hasHeightForWidth())
        self.frame.setSizePolicy(sizePolicy)
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.frame)
        self.verticalLayout.setSpacing(6)
        self.verticalLayout.setContentsMargins(9, 0, 9, 9)
        self.verticalLayout.setObjectName("verticalLayout")
        self.label = QtWidgets.QLabel(self.frame)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label.sizePolicy().hasHeightForWidth())
        self.label.setSizePolicy(sizePolicy)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.tableView_resources = CopyPasteTableView(self.frame)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.tableView_resources.sizePolicy().hasHeightForWidth())
        self.tableView_resources.setSizePolicy(sizePolicy)
        self.tableView_resources.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.tableView_resources.setSelectionBehavior(
            QtWidgets.QAbstractItemView.SelectItems)
        self.tableView_resources.setShowGrid(False)
        self.tableView_resources.setObjectName("tableView_resources")
        self.tableView_resources.horizontalHeader().setHighlightSections(False)
        self.tableView_resources.verticalHeader().setVisible(False)
        self.verticalLayout.addWidget(self.tableView_resources)
        self.frame_2 = QtWidgets.QFrame(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(3)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.frame_2.sizePolicy().hasHeightForWidth())
        self.frame_2.setSizePolicy(sizePolicy)
        self.frame_2.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame_2.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame_2.setObjectName("frame_2")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.frame_2)
        self.verticalLayout_3.setContentsMargins(9, 0, 9, 9)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.label_2 = QtWidgets.QLabel(self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(2)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        self.label_2.setObjectName("label_2")
        self.verticalLayout_3.addWidget(self.label_2)
        self.tableView_resource_data = CopyPasteTableView(self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(2)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.tableView_resource_data.sizePolicy().hasHeightForWidth())
        self.tableView_resource_data.setSizePolicy(sizePolicy)
        self.tableView_resource_data.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.tableView_resource_data.setTabKeyNavigation(False)
        self.tableView_resource_data.setObjectName("tableView_resource_data")
        self.tableView_resource_data.horizontalHeader().setVisible(True)
        self.tableView_resource_data.horizontalHeader().setHighlightSections(
            False)
        self.tableView_resource_data.verticalHeader().setVisible(False)
        self.tableView_resource_data.verticalHeader().setHighlightSections(
            False)
        self.verticalLayout_3.addWidget(self.tableView_resource_data)
        self.verticalLayout_2.addWidget(self.splitter)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1088, 28))
        self.menubar.setNativeMenuBar(False)
        self.menubar.setObjectName("menubar")
        self.menuFile = QtWidgets.QMenu(self.menubar)
        self.menuFile.setToolTipsVisible(True)
        self.menuFile.setObjectName("menuFile")
        self.menuEdit = QtWidgets.QMenu(self.menubar)
        self.menuEdit.setObjectName("menuEdit")
        self.menuView = QtWidgets.QMenu(self.menubar)
        self.menuView.setObjectName("menuView")
        self.menuDock_Widgets = QtWidgets.QMenu(self.menuView)
        self.menuDock_Widgets.setObjectName("menuDock_Widgets")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.dockWidget_fields = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_fields.setAllowedAreas(QtCore.Qt.AllDockWidgetAreas)
        self.dockWidget_fields.setObjectName("dockWidget_fields")
        self.dockWidgetContents_5 = QtWidgets.QWidget()
        self.dockWidgetContents_5.setObjectName("dockWidgetContents_5")
        self.verticalLayout_8 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_5)
        self.verticalLayout_8.setObjectName("verticalLayout_8")
        self.tableView_fields = CopyPasteTableView(self.dockWidgetContents_5)
        self.tableView_fields.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.tableView_fields.setSelectionBehavior(
            QtWidgets.QAbstractItemView.SelectItems)
        self.tableView_fields.setShowGrid(True)
        self.tableView_fields.setObjectName("tableView_fields")
        self.tableView_fields.horizontalHeader().setHighlightSections(False)
        self.tableView_fields.horizontalHeader().setSortIndicatorShown(False)
        self.tableView_fields.verticalHeader().setVisible(False)
        self.verticalLayout_8.addWidget(self.tableView_fields)
        self.dockWidget_fields.setWidget(self.dockWidgetContents_5)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                 self.dockWidget_fields)
        self.dockWidget_foreign_keys = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_foreign_keys.setObjectName("dockWidget_foreign_keys")
        self.dockWidgetContents_6 = QtWidgets.QWidget()
        self.dockWidgetContents_6.setObjectName("dockWidgetContents_6")
        self.verticalLayout_9 = QtWidgets.QVBoxLayout(
            self.dockWidgetContents_6)
        self.verticalLayout_9.setObjectName("verticalLayout_9")
        self.tableView_foreign_keys = CopyPasteTableView(
            self.dockWidgetContents_6)
        self.tableView_foreign_keys.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.tableView_foreign_keys.setSelectionBehavior(
            QtWidgets.QAbstractItemView.SelectItems)
        self.tableView_foreign_keys.setShowGrid(True)
        self.tableView_foreign_keys.setGridStyle(QtCore.Qt.SolidLine)
        self.tableView_foreign_keys.setObjectName("tableView_foreign_keys")
        self.tableView_foreign_keys.horizontalHeader().setHighlightSections(
            False)
        self.tableView_foreign_keys.verticalHeader().setVisible(True)
        self.verticalLayout_9.addWidget(self.tableView_foreign_keys)
        self.dockWidget_foreign_keys.setWidget(self.dockWidgetContents_6)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                 self.dockWidget_foreign_keys)
        self.actionSave_datapackage = QtWidgets.QAction(MainWindow)
        self.actionSave_datapackage.setObjectName("actionSave_datapackage")
        self.actionClose = QtWidgets.QAction(MainWindow)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/icons/close.png"), QtGui.QIcon.Normal,
                       QtGui.QIcon.Off)
        self.actionClose.setIcon(icon)
        self.actionClose.setObjectName("actionClose")
        self.actionRemove_foreign_keys = QtWidgets.QAction(MainWindow)
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(":/icons/minus.png"), QtGui.QIcon.Normal,
                        QtGui.QIcon.Off)
        self.actionRemove_foreign_keys.setIcon(icon1)
        self.actionRemove_foreign_keys.setObjectName(
            "actionRemove_foreign_keys")
        self.actionInfer_datapackage = QtWidgets.QAction(MainWindow)
        self.actionInfer_datapackage.setObjectName("actionInfer_datapackage")
        self.actionExport_to_spine = QtWidgets.QAction(MainWindow)
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(":/icons/Spine_db_icon.png"),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionExport_to_spine.setIcon(icon2)
        self.actionExport_to_spine.setObjectName("actionExport_to_spine")
        self.actionCopy = QtWidgets.QAction(MainWindow)
        icon3 = QtGui.QIcon()
        icon3.addPixmap(QtGui.QPixmap(":/icons/copy.png"), QtGui.QIcon.Normal,
                        QtGui.QIcon.Off)
        self.actionCopy.setIcon(icon3)
        self.actionCopy.setObjectName("actionCopy")
        self.actionPaste = QtWidgets.QAction(MainWindow)
        icon4 = QtGui.QIcon()
        icon4.addPixmap(QtGui.QPixmap(":/icons/paste.png"), QtGui.QIcon.Normal,
                        QtGui.QIcon.Off)
        self.actionPaste.setIcon(icon4)
        self.actionPaste.setObjectName("actionPaste")
        self.actionxx = QtWidgets.QAction(MainWindow)
        self.actionxx.setObjectName("actionxx")
        self.menuFile.addAction(self.actionInfer_datapackage)
        self.menuFile.addAction(self.actionSave_datapackage)
        self.menuFile.addSeparator()
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionExport_to_spine)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionClose)
        self.menuEdit.addAction(self.actionCopy)
        self.menuEdit.addAction(self.actionPaste)
        self.menuView.addAction(self.menuDock_Widgets.menuAction())
        self.menubar.addAction(self.menuFile.menuAction())
        self.menubar.addAction(self.menuEdit.menuAction())
        self.menubar.addAction(self.menuView.menuAction())

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Example #25
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1366, 768)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout_6 = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout_6.setObjectName("gridLayout_6")
        self.frame = QtWidgets.QFrame(self.centralwidget)
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        self.gridLayout = QtWidgets.QGridLayout(self.frame)
        self.gridLayout.setObjectName("gridLayout")
        self.label = QtWidgets.QLabel(self.frame)
        font = QtGui.QFont()
        font.setPointSize(12)
        font.setWeight(75)
        font.setBold(True)
        self.label.setFont(font)
        self.label.setObjectName("label")
        self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
        self.table_notUsed = QtWidgets.QTableView(self.frame)
        self.table_notUsed.setObjectName("table_notUsed")
        self.gridLayout.addWidget(self.table_notUsed, 1, 0, 1, 1)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.btn_assign = QtWidgets.QPushButton(self.frame)
        self.btn_assign.setObjectName("btn_assign")
        self.horizontalLayout.addWidget(self.btn_assign)
        self.btn_borrow = QtWidgets.QPushButton(self.frame)
        self.btn_borrow.setObjectName("btn_borrow")
        self.horizontalLayout.addWidget(self.btn_borrow)
        self.gridLayout.addLayout(self.horizontalLayout, 2, 0, 1, 1)
        self.gridLayout_6.addWidget(self.frame, 0, 0, 2, 1)
        self.tabWidget = QtWidgets.QTabWidget(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.tabWidget.sizePolicy().hasHeightForWidth())
        self.tabWidget.setSizePolicy(sizePolicy)
        self.tabWidget.setObjectName("tabWidget")
        self.tab = QtWidgets.QWidget()
        self.tab.setObjectName("tab")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.tab)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.table_borrowed = QtWidgets.QTableView(self.tab)
        self.table_borrowed.setObjectName("table_borrowed")
        self.gridLayout_3.addWidget(self.table_borrowed, 0, 0, 1, 1)
        self.tabWidget.addTab(self.tab, "")
        self.tab_2 = QtWidgets.QWidget()
        self.tab_2.setObjectName("tab_2")
        self.gridLayout_5 = QtWidgets.QGridLayout(self.tab_2)
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.table_assigned = QtWidgets.QTableView(self.tab_2)
        self.table_assigned.setObjectName("table_assigned")
        self.gridLayout_5.addWidget(self.table_assigned, 0, 0, 1, 1)
        self.tabWidget.addTab(self.tab_2, "")
        self.gridLayout_6.addWidget(self.tabWidget, 0, 1, 1, 1)
        self.frame_2 = QtWidgets.QFrame(self.centralwidget)
        self.frame_2.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame_2.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame_2.setObjectName("frame_2")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.frame_2)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.lbl_returnRemarks = QtWidgets.QLabel(self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lbl_returnRemarks.sizePolicy().hasHeightForWidth())
        self.lbl_returnRemarks.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setWeight(75)
        font.setBold(True)
        self.lbl_returnRemarks.setFont(font)
        self.lbl_returnRemarks.setObjectName("lbl_returnRemarks")
        self.gridLayout_2.addWidget(self.lbl_returnRemarks, 0, 0, 1, 1)
        self.textedit_returnRemarks = QtWidgets.QPlainTextEdit(self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.textedit_returnRemarks.sizePolicy().hasHeightForWidth())
        self.textedit_returnRemarks.setSizePolicy(sizePolicy)
        self.textedit_returnRemarks.setMaximumSize(QtCore.QSize(16777215, 200))
        self.textedit_returnRemarks.setObjectName("textedit_returnRemarks")
        self.gridLayout_2.addWidget(self.textedit_returnRemarks, 1, 0, 1, 1)
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.btn_return_borrowed = QtWidgets.QPushButton(self.frame_2)
        self.btn_return_borrowed.setObjectName("btn_return_borrowed")
        self.horizontalLayout_2.addWidget(self.btn_return_borrowed)
        self.btn_destroyed_borrowed = QtWidgets.QPushButton(self.frame_2)
        self.btn_destroyed_borrowed.setObjectName("btn_destroyed_borrowed")
        self.horizontalLayout_2.addWidget(self.btn_destroyed_borrowed)
        self.gridLayout_2.addLayout(self.horizontalLayout_2, 2, 0, 1, 1)
        self.gridLayout_6.addWidget(self.frame_2, 1, 1, 1, 1)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1366, 26))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.dockWidget = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget.setFeatures(QtWidgets.QDockWidget.NoDockWidgetFeatures)
        self.dockWidget.setObjectName("dockWidget")
        self.dockWidgetContents = QtWidgets.QWidget()
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.dockWidgetContents)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.btn_ITClear_dock = QtWidgets.QPushButton(self.dockWidgetContents)
        self.btn_ITClear_dock.setObjectName("btn_ITClear_dock")
        self.gridLayout_4.addWidget(self.btn_ITClear_dock, 8, 0, 1, 1)
        spacerItem = QtWidgets.QSpacerItem(20, 40,
                                           QtWidgets.QSizePolicy.Minimum,
                                           QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_4.addItem(spacerItem, 9, 0, 1, 1)
        self.btn_newInventory_dock = QtWidgets.QPushButton(
            self.dockWidgetContents)
        self.btn_newInventory_dock.setObjectName("btn_newInventory_dock")
        self.gridLayout_4.addWidget(self.btn_newInventory_dock, 0, 0, 1, 1)
        self.line_currentUser_dock = QtWidgets.QLineEdit(
            self.dockWidgetContents)
        self.line_currentUser_dock.setReadOnly(True)
        self.line_currentUser_dock.setObjectName("line_currentUser_dock")
        self.gridLayout_4.addWidget(self.line_currentUser_dock, 10, 0, 1, 1)
        spacerItem1 = QtWidgets.QSpacerItem(20, 40,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_4.addItem(spacerItem1, 7, 0, 1, 1)
        self.btn_newUnit_dock = QtWidgets.QPushButton(self.dockWidgetContents)
        self.btn_newUnit_dock.setObjectName("btn_newUnit_dock")
        self.gridLayout_4.addWidget(self.btn_newUnit_dock, 2, 0, 1, 1)
        self.btn_manageSuppliers_dock = QtWidgets.QPushButton(
            self.dockWidgetContents)
        self.btn_manageSuppliers_dock.setObjectName("btn_manageSuppliers_dock")
        self.gridLayout_4.addWidget(self.btn_manageSuppliers_dock, 5, 0, 1, 1)
        self.btn_logout_dock = QtWidgets.QPushButton(self.dockWidgetContents)
        self.btn_logout_dock.setObjectName("btn_logout_dock")
        self.gridLayout_4.addWidget(self.btn_logout_dock, 11, 0, 1, 1)
        self.btn_managePersons_dock = QtWidgets.QPushButton(
            self.dockWidgetContents)
        self.btn_managePersons_dock.setObjectName("btn_managePersons_dock")
        self.gridLayout_4.addWidget(self.btn_managePersons_dock, 4, 0, 1, 1)
        spacerItem2 = QtWidgets.QSpacerItem(20, 40,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_4.addItem(spacerItem2, 3, 0, 1, 1)
        self.btn_manageRooms_dock = QtWidgets.QPushButton(
            self.dockWidgetContents)
        self.btn_manageRooms_dock.setObjectName("btn_manageRooms_dock")
        self.gridLayout_4.addWidget(self.btn_manageRooms_dock, 6, 0, 1, 1)
        self.dockWidget.setWidget(self.dockWidgetContents)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dockWidget)

        self.retranslateUi(MainWindow)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
    def __init__(self, parent=None):

        super(QRegexSimulator, self).__init__(parent)

        self.syntax = QtCore.QRegExp.RegExp

        self.setWindowTitle('QRegex Simulator')
        self.setObjectName(WINDOW_OBJECT_NAME)

        # create main "Regular expression" QDockWidget
        main_dock = QtWidgets.QDockWidget(self)
        main_dock.setWindowTitle('Regular expression')
        main_dock.setFeatures(main_dock.NoDockWidgetFeatures)
        self.setCentralWidget(main_dock)

        # add regex field to main QDockWidget
        main_widget = QtWidgets.QWidget(self)
        main_dock.setWidget(main_widget)
        lay = QtWidgets.QGridLayout(main_widget)

        self.regex_field = QtWidgets.QLineEdit(self)
        self.formatted_field = QtWidgets.QLineEdit(self, readOnly=True)

        lay.addWidget(QtWidgets.QLabel('Input regex :', self), 0, 0)
        lay.addWidget(self.regex_field, 0, 1)
        lay.addWidget(QtWidgets.QLabel('Formatted regex :', self), 1, 0)
        lay.addWidget(self.formatted_field, 1, 1)

        # create "Test string" QDockWidget
        script_dock = QtWidgets.QDockWidget(self)
        script_dock.setWindowTitle('Test string')
        script_dock.setAllowedAreas(QtCore.Qt.BottomDockWidgetArea)
        script_dock.setFeatures(script_dock.NoDockWidgetFeatures)

        # add test string field to main QDockWidget
        self.script_field = QtWidgets.QTextEdit(self)
        self.script_field.setObjectName(
            '{}_scriptField'.format(WINDOW_OBJECT_NAME))
        # add keys handler
        keys_handler = keys.KeysHandler('Python', self.script_field)
        self.script_field.installEventFilter(keys_handler)
        highlight = syntax_highlight.LogHighlighter(self.script_field)

        script_dock.setWidget(self.script_field)

        # create "Match Informations" QDockWidget
        result_dock = QtWidgets.QDockWidget(self)
        result_dock.setWindowTitle('Match Informations')
        result_dock.setAllowedAreas(QtCore.Qt.BottomDockWidgetArea)
        result_dock.setFeatures(result_dock.NoDockWidgetFeatures)

        # add test string field to main QDockWidget
        self.result_field = QtWidgets.QPlainTextEdit()
        result_dock.setWidget(self.result_field)

        self.addDockWidget(QtCore.Qt.BottomDockWidgetArea, script_dock)
        self.addDockWidget(QtCore.Qt.BottomDockWidgetArea, result_dock)

        self.regex_field.textChanged.connect(self.update_results)
        self.script_field.textChanged.connect(self.update_results)

        main_widget.setFixedHeight(52)
        main_widget.setContentsMargins(0, 0, 0, 0)
        lay.setContentsMargins(4, 4, 4, 4)

        self.resize(1000, 750)
Example #27
0
    def __init__(self):
        """MainWindow constructor"""
        super().__init__()

        ######################
        # The central widget #
        ######################
        self.text_edit = qtw.QTextEdit()
        self.setCentralWidget(self.text_edit)

        #################
        # The Statusbar #
        #################
        self.statusBar().showMessage('Welcome to text_editor.py')
        char_count = qtw.QLabel('chars: 0')
        self.text_edit.textChanged.connect(
            lambda: char_count.setText(
                'chars: ' + str(len(self.text_edit.toPlainText()))
            )
        )
        self.statusBar().addPermanentWidget(char_count)


        ###############
        # The menubar #
        ###############
        menu_bar = self.menuBar()

        file_menu = menu_bar.addMenu('File')
        edit_menu = menu_bar.addMenu('Edit')
        help_menu = menu_bar.addMenu('Help')

        open_action = file_menu.addAction('Open')
        save_action = file_menu.addAction('Save')
        quit_action = file_menu.addAction('Quit', self.destroy)

        edit_menu.addAction('Undo', self.text_edit.undo)
        redo_action = qtw.QAction('Redo', self)
        redo_action.triggered.connect(self.text_edit.redo)
        edit_menu.addAction(redo_action)

        ############################
        # The Toolbar and QActions #
        ############################
        tool_bar = self.addToolBar('File')

        tool_bar.setMovable(False)
        tool_bar.setFloatable(False)
        tool_bar.setAllowedAreas(qtc.Qt.TopToolBarArea | qtc.Qt.BottomToolBarArea)

        open_icon = self.style().standardIcon(qtw.QStyle.SP_DirOpenIcon)
        save_icon = self.style().standardIcon(qtw.QStyle.SP_DriveHDIcon)

        open_action.setIcon(open_icon)
        tool_bar.addAction(open_action)
        tool_bar.addAction(save_icon, 'Save', lambda: self.statusBar().showMessage('File Saved!'))
        help_action = qtw.QAction(
            self.style().standardIcon(qtw.QStyle.SP_DialogHelpButton), 'Help', self
        )
        help_action.triggered.connect(lambda: self.statusBar().showMessage('Sorry, no help yet!'))
        tool_bar.addAction(help_action)

        tool_bar2 = qtw.QToolBar('Edit')
        tool_bar2.addAction('Copy', self.text_edit.copy)
        tool_bar2.addAction('Cut', self.text_edit.cut)
        tool_bar2.addAction('Paste', self.text_edit.paste)
        self.addToolBar(qtc.Qt.RightToolBarArea, tool_bar2)

        ################
        # Dock Widgets #
        ################
        dock = qtw.QDockWidget('Replace')
        self.addDockWidget(qtc.Qt.LeftDockWidgetArea, dock)
        dock.setFeatures(
            qtw.QDockWidget.DockWidgetMovable |
            qtw.QDockWidget.DockWidgetFloatable
        )
        replace_widget = qtw.QWidget()
        replace_widget.setLayout(qtw.QVBoxLayout())
        dock.setWidget(replace_widget)

        self.search_text_inp = qtw.QLineEdit(placeholderText='search')
        self.replace_text_inp = qtw.QLineEdit(placeholderText='replace')
        search_and_replace_btn = qtw.QPushButton('Search and Replace')
        search_and_replace_btn.clicked.connect(self.search_and_replace)

        replace_widget.layout().addWidget(self.search_text_inp)
        replace_widget.layout().addWidget(self.replace_text_inp)
        replace_widget.layout().addWidget(search_and_replace_btn)
        replace_widget.layout().addStretch()

        ############################
        # Messageboxes and Dialogs #
        ############################
        help_menu.addAction('About', self.showAboutDialog)

        if self.settings.value('show_warnings', False, type=bool):
            response = qtw.QMessageBox.question(
                self,
                'My Text Editor',
                'This is beta software, do you want to continue?',
                qtw.QMessageBox.Yes | qtw.QMessageBox.Abort
            )
            if response == qtw.QMessageBox.Abort:
                self.close()
                sys.exit()

            # custom message box

            splash_screen = qtw.QMessageBox()
            splash_screen.setWindowTitle('My Text Editor')
            splash_screen.setText('BETA SOFTWARE WARNING!')
            splash_screen.setInformativeText(
                'This is very, very beta, '
                'are you really sure you want to use it?'
            )
            splash_screen.setDetailedText(
                'This editor was written for pedagogical '
                'purposes, and probably is not fit for real work.'
            )
            splash_screen.setWindowModality(qtc.Qt.WindowModal)
            splash_screen.addButton(qtw.QMessageBox.Yes)
            splash_screen.addButton(qtw.QMessageBox.Abort)
            response = splash_screen.exec()
            if response == qtw.QMessageBox.Abort:
                self.close()
                sys.exit()

        # QFileDialog
        open_action.triggered.connect(self.openFile)
        save_action.triggered.connect(self.saveFile)

        # QFontDialog
        edit_menu.addAction('Set Font…', self.set_font)

        # Custom dialog
        edit_menu.addAction('Settings…', self.show_settings)

        self.show()
Example #28
0
    def __init__(self):
        super(MainWindow, self).__init__()

        self.resize(1024, 768)
        self.setWindowTitle('Main window struct')

        # --- 布局和控件 ---#

        # 中心控件
        self.center_widget = QtWidgets.QWidget()
        self.center_widget.setStyleSheet('*{background: Gold; color: Black}')
        # 中心控件布局
        self.center_widget_layout = QtWidgets.QVBoxLayout()
        # 标签
        self.show_word = QtWidgets.QLabel('这是放在中心控件布局中的标签')
        # 设置标签居中
        self.show_word.setAlignment(QtCore.Qt.AlignCenter)
        # 将标签添加到布局里
        self.center_widget_layout.addWidget(self.show_word)
        # 将布放置到中心控件上
        self.center_widget.setLayout(self.center_widget_layout)

        # Dock窗口1
        self.dock = QtWidgets.QDockWidget('这是Dock1的标题')
        self.dock_container = QtWidgets.QWidget()
        self.dock_layout = QtWidgets.QVBoxLayout()
        self.dock_label = QtWidgets.QLabel('这是放在Dock1中的标签')
        self.dock_layout.addWidget(self.dock_label)
        self.dock_container.setLayout(self.dock_layout)
        self.dock.setWidget(self.dock_container)

        # Dock窗口2
        self.dock2 = QtWidgets.QDockWidget('这是Dock2的标题')
        self.dock2_container = QtWidgets.QWidget()
        self.dock2_layout = QtWidgets.QVBoxLayout()
        self.dock2_label = QtWidgets.QLabel('这是放在Dock2中的标签')
        self.dock2_layout.addWidget(self.dock2_label)
        self.dock2_container.setLayout(self.dock2_layout)
        self.dock2.setWidget(self.dock2_container)

        # 设置工具栏
        self.toolBar_top = QtWidgets.QToolBar()
        self.tool_top = QtWidgets.QLabel('这是放在工具栏中的一个标签')
        self.toolBar_top.addWidget(self.tool_top)

        # 将中心控件放置到主窗口内
        self.setCentralWidget(self.center_widget)
        # 将Dock控件放置到主窗口内
        self.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.dock)
        self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, self.dock2)
        # 将工具栏控件放置到主窗口内
        self.addToolBar(self.toolBar_top)

        # 设置状态栏永久显示信息
        self.statusBar_Permanent = QtWidgets.QLabel('这是放在状态栏中的永久标签')
        self.statusBar().addPermanentWidget(self.statusBar_Permanent)
        self.statusBar().setStyleSheet('*{background: Aqua; color: Black}')

        # 设置菜单栏
        self.menu_setup = QtWidgets.QMenu('这是菜单栏中的一个菜单')
        self.menuBar().addMenu(self.menu_setup)
        self.menuBar().setStyleSheet('*{background: Aqua; color: Black}')
Example #29
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(2107, 1721)
        MainWindow.setAcceptDrops(True)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/icons/Dave_icon.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        MainWindow.setWindowIcon(icon)
        MainWindow.setLocale(QtCore.QLocale(QtCore.QLocale.English, QtCore.QLocale.UnitedStates))
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.centralwidget)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.frame3d = QtWidgets.QFrame(self.centralwidget)
        self.frame3d.setAcceptDrops(False)
        self.frame3d.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.frame3d.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame3d.setObjectName("frame3d")
        self.label_2 = QtWidgets.QLabel(self.frame3d)
        self.label_2.setGeometry(QtCore.QRect(580, 410, 161, 20))
        self.label_2.setObjectName("label_2")
        self.horizontalLayout_2.addWidget(self.frame3d)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 2107, 31))
        self.menubar.setObjectName("menubar")
        self.menuSolve_Statics = QtWidgets.QMenu(self.menubar)
        self.menuSolve_Statics.setObjectName("menuSolve_Statics")
        self.menuView = QtWidgets.QMenu(self.menubar)
        self.menuView.setObjectName("menuView")
        self.menuView_2 = QtWidgets.QMenu(self.menubar)
        self.menuView_2.setObjectName("menuView_2")
        self.menuWhat_if = QtWidgets.QMenu(self.menubar)
        self.menuWhat_if.setObjectName("menuWhat_if")
        self.menuMarine = QtWidgets.QMenu(self.menubar)
        self.menuMarine.setObjectName("menuMarine")
        self.menuRender = QtWidgets.QMenu(self.menubar)
        self.menuRender.setObjectName("menuRender")
        self.menuDynamics = QtWidgets.QMenu(self.menubar)
        self.menuDynamics.setObjectName("menuDynamics")
        MainWindow.setMenuBar(self.menubar)
        self.dockWidget = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget.setFeatures(QtWidgets.QDockWidget.DockWidgetFloatable|QtWidgets.QDockWidget.DockWidgetMovable)
        self.dockWidget.setObjectName("dockWidget")
        self.dockWidgetContents = QtWidgets.QWidget()
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.gridLayout = QtWidgets.QGridLayout(self.dockWidgetContents)
        self.gridLayout.setObjectName("gridLayout")
        self.treeView = QtWidgets.QTreeView(self.dockWidgetContents)
        self.treeView.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers)
        self.treeView.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
        self.treeView.setRootIsDecorated(True)
        self.treeView.setExpandsOnDoubleClick(False)
        self.treeView.setObjectName("treeView")
        self.treeView.header().setVisible(False)
        self.gridLayout.addWidget(self.treeView, 0, 0, 1, 1)
        self.dockWidget.setWidget(self.dockWidgetContents)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dockWidget)
        self.dockWidget_2 = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_2.setObjectName("dockWidget_2")
        self.dockWidgetContents_2 = QtWidgets.QWidget()
        self.dockWidgetContents_2.setObjectName("dockWidgetContents_2")
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.dockWidgetContents_2)
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.frame_3 = QtWidgets.QFrame(self.dockWidgetContents_2)
        self.frame_3.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame_3.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame_3.setObjectName("frame_3")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.frame_3)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.pbGenerateSceneCode = QtWidgets.QPushButton(self.frame_3)
        self.pbGenerateSceneCode.setObjectName("pbGenerateSceneCode")
        self.verticalLayout_2.addWidget(self.pbGenerateSceneCode)
        self.pbCopyFeedback = QtWidgets.QPushButton(self.frame_3)
        self.pbCopyFeedback.setObjectName("pbCopyFeedback")
        self.verticalLayout_2.addWidget(self.pbCopyFeedback)
        self.horizontalLayout_4.addWidget(self.frame_3)
        self.teFeedback = QtWidgets.QTextEdit(self.dockWidgetContents_2)
        self.teFeedback.setAutoFillBackground(False)
        self.teFeedback.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.teFeedback.setObjectName("teFeedback")
        self.horizontalLayout_4.addWidget(self.teFeedback)
        self.dockWidget_2.setWidget(self.dockWidgetContents_2)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(8), self.dockWidget_2)
        self.dockWidget_3 = QtWidgets.QDockWidget(MainWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidget_3.sizePolicy().hasHeightForWidth())
        self.dockWidget_3.setSizePolicy(sizePolicy)
        self.dockWidget_3.setFloating(True)
        self.dockWidget_3.setFeatures(QtWidgets.QDockWidget.DockWidgetFloatable|QtWidgets.QDockWidget.DockWidgetMovable)
        self.dockWidget_3.setAllowedAreas(QtCore.Qt.LeftDockWidgetArea|QtCore.Qt.RightDockWidgetArea)
        self.dockWidget_3.setObjectName("dockWidget_3")
        self.dockWidgetContents_3 = QtWidgets.QWidget()
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidgetContents_3.sizePolicy().hasHeightForWidth())
        self.dockWidgetContents_3.setSizePolicy(sizePolicy)
        self.dockWidgetContents_3.setObjectName("dockWidgetContents_3")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.dockWidgetContents_3)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.widgetLayout = QtWidgets.QVBoxLayout()
        self.widgetLayout.setSpacing(0)
        self.widgetLayout.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize)
        self.widgetLayout.setObjectName("widgetLayout")
        self.verticalLayout_3.addLayout(self.widgetLayout)
        self.dockWidget_3.setWidget(self.dockWidgetContents_3)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.dockWidget_3)
        self.pythonDockWidget = QtWidgets.QDockWidget(MainWindow)
        self.pythonDockWidget.setFloating(True)
        self.pythonDockWidget.setFeatures(QtWidgets.QDockWidget.AllDockWidgetFeatures)
        self.pythonDockWidget.setObjectName("pythonDockWidget")
        self.dockWidgetContents_4 = QtWidgets.QWidget()
        self.dockWidgetContents_4.setObjectName("dockWidgetContents_4")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.dockWidgetContents_4)
        self.verticalLayout.setObjectName("verticalLayout")
        self.label = QtWidgets.QLabel(self.dockWidgetContents_4)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.teHistory = QtWidgets.QTextEdit(self.dockWidgetContents_4)
        self.teHistory.setReadOnly(True)
        self.teHistory.setObjectName("teHistory")
        self.verticalLayout.addWidget(self.teHistory)
        self.frame_2 = QtWidgets.QFrame(self.dockWidgetContents_4)
        self.frame_2.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame_2.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame_2.setObjectName("frame_2")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.frame_2)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.pbCopyHistory = QtWidgets.QPushButton(self.frame_2)
        self.pbCopyHistory.setObjectName("pbCopyHistory")
        self.horizontalLayout.addWidget(self.pbCopyHistory)
        self.pbStartOver = QtWidgets.QPushButton(self.frame_2)
        self.pbStartOver.setObjectName("pbStartOver")
        self.horizontalLayout.addWidget(self.pbStartOver)
        self.verticalLayout.addWidget(self.frame_2)
        self.label_3 = QtWidgets.QLabel(self.dockWidgetContents_4)
        self.label_3.setObjectName("label_3")
        self.verticalLayout.addWidget(self.label_3)
        self.teCode = QtWidgets.QTextEdit(self.dockWidgetContents_4)
        self.teCode.setObjectName("teCode")
        self.verticalLayout.addWidget(self.teCode)
        self.cbAutoExecute = QtWidgets.QCheckBox(self.dockWidgetContents_4)
        self.cbAutoExecute.setChecked(True)
        self.cbAutoExecute.setObjectName("cbAutoExecute")
        self.verticalLayout.addWidget(self.cbAutoExecute)
        self.cbAutoStatics = QtWidgets.QCheckBox(self.dockWidgetContents_4)
        self.cbAutoStatics.setObjectName("cbAutoStatics")
        self.verticalLayout.addWidget(self.cbAutoStatics)
        self.frame = QtWidgets.QFrame(self.dockWidgetContents_4)
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.frame.setObjectName("frame")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.frame)
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.pbRunCode = QtWidgets.QPushButton(self.frame)
        self.pbRunCode.setObjectName("pbRunCode")
        self.horizontalLayout_3.addWidget(self.pbRunCode)
        self.verticalLayout.addWidget(self.frame)
        self.pythonDockWidget.setWidget(self.dockWidgetContents_4)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.pythonDockWidget)
        self.toolBar = QtWidgets.QToolBar(MainWindow)
        self.toolBar.setObjectName("toolBar")
        MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
        self.dockWidget_4 = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_4.setFeatures(QtWidgets.QDockWidget.DockWidgetFloatable|QtWidgets.QDockWidget.DockWidgetMovable)
        self.dockWidget_4.setObjectName("dockWidget_4")
        self.dockWidgetContents_5 = QtWidgets.QWidget()
        self.dockWidgetContents_5.setObjectName("dockWidgetContents_5")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.dockWidgetContents_5)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.dispPropTree = QtWidgets.QTreeWidget(self.dockWidgetContents_5)
        self.dispPropTree.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers)
        self.dispPropTree.setAlternatingRowColors(True)
        self.dispPropTree.setRootIsDecorated(False)
        self.dispPropTree.setObjectName("dispPropTree")
        item_0 = QtWidgets.QTreeWidgetItem(self.dispPropTree)
        item_1 = QtWidgets.QTreeWidgetItem(item_0)
        self.dispPropTree.header().setVisible(False)
        self.gridLayout_2.addWidget(self.dispPropTree, 0, 0, 1, 1)
        self.dockWidget_4.setWidget(self.dockWidgetContents_5)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dockWidget_4)
        self.goalseekDockWidget = QtWidgets.QDockWidget(MainWindow)
        self.goalseekDockWidget.setFloating(True)
        self.goalseekDockWidget.setObjectName("goalseekDockWidget")
        self.dockWidgetContents_6 = QtWidgets.QWidget()
        self.dockWidgetContents_6.setObjectName("dockWidgetContents_6")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.dockWidgetContents_6)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.label_9 = QtWidgets.QLabel(self.dockWidgetContents_6)
        self.label_9.setObjectName("label_9")
        self.gridLayout_3.addWidget(self.label_9, 1, 4, 1, 1)
        self.label_4 = QtWidgets.QLabel(self.dockWidgetContents_6)
        self.label_4.setObjectName("label_4")
        self.gridLayout_3.addWidget(self.label_4, 0, 0, 1, 2)
        self.label_5 = QtWidgets.QLabel(self.dockWidgetContents_6)
        self.label_5.setObjectName("label_5")
        self.gridLayout_3.addWidget(self.label_5, 1, 0, 1, 1)
        self.gsValue = QtWidgets.QLineEdit(self.dockWidgetContents_6)
        self.gsValue.setObjectName("gsValue")
        self.gridLayout_3.addWidget(self.gsValue, 1, 2, 1, 1)
        self.gsSetProp = QtWidgets.QLineEdit(self.dockWidgetContents_6)
        self.gsSetProp.setObjectName("gsSetProp")
        self.gridLayout_3.addWidget(self.gsSetProp, 0, 2, 1, 1)
        self.gsSetNode = QtWidgets.QLineEdit(self.dockWidgetContents_6)
        self.gsSetNode.setObjectName("gsSetNode")
        self.gridLayout_3.addWidget(self.gsSetNode, 0, 4, 1, 1)
        self.gsChangeProp = QtWidgets.QLineEdit(self.dockWidgetContents_6)
        self.gsChangeProp.setObjectName("gsChangeProp")
        self.gridLayout_3.addWidget(self.gsChangeProp, 2, 2, 1, 1)
        self.label_6 = QtWidgets.QLabel(self.dockWidgetContents_6)
        self.label_6.setObjectName("label_6")
        self.gridLayout_3.addWidget(self.label_6, 2, 0, 1, 1)
        self.gsChangeNode = QtWidgets.QLineEdit(self.dockWidgetContents_6)
        self.gsChangeNode.setObjectName("gsChangeNode")
        self.gridLayout_3.addWidget(self.gsChangeNode, 2, 4, 1, 1)
        self.label_7 = QtWidgets.QLabel(self.dockWidgetContents_6)
        self.label_7.setObjectName("label_7")
        self.gridLayout_3.addWidget(self.label_7, 0, 3, 1, 1)
        self.label_8 = QtWidgets.QLabel(self.dockWidgetContents_6)
        self.label_8.setObjectName("label_8")
        self.gridLayout_3.addWidget(self.label_8, 2, 3, 1, 1)
        self.btnGoalSeek = QtWidgets.QPushButton(self.dockWidgetContents_6)
        self.btnGoalSeek.setObjectName("btnGoalSeek")
        self.gridLayout_3.addWidget(self.btnGoalSeek, 3, 4, 1, 1)
        self.goalseekDockWidget.setWidget(self.dockWidgetContents_6)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.goalseekDockWidget)
        self.stabilityDockWidget = QtWidgets.QDockWidget(MainWindow)
        self.stabilityDockWidget.setFloating(True)
        self.stabilityDockWidget.setObjectName("stabilityDockWidget")
        self.dockWidgetContents_7 = QtWidgets.QWidget()
        self.dockWidgetContents_7.setObjectName("dockWidgetContents_7")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.dockWidgetContents_7)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.label_10 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_10.setObjectName("label_10")
        self.gridLayout_4.addWidget(self.label_10, 0, 4, 1, 1)
        self.stability_displacement = QtWidgets.QDoubleSpinBox(self.dockWidgetContents_7)
        self.stability_displacement.setMaximum(999999999999999.0)
        self.stability_displacement.setProperty("value", 1.0)
        self.stability_displacement.setObjectName("stability_displacement")
        self.gridLayout_4.addWidget(self.stability_displacement, 1, 1, 1, 3)
        self.stability_node_name = QtWidgets.QLineEdit(self.dockWidgetContents_7)
        self.stability_node_name.setObjectName("stability_node_name")
        self.gridLayout_4.addWidget(self.stability_node_name, 0, 1, 1, 3)
        self.label_17 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_17.setObjectName("label_17")
        self.gridLayout_4.addWidget(self.label_17, 1, 4, 1, 1)
        self.label_11 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_11.setObjectName("label_11")
        self.gridLayout_4.addWidget(self.label_11, 0, 0, 1, 1)
        self.label_12 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_12.setObjectName("label_12")
        self.gridLayout_4.addWidget(self.label_12, 2, 0, 1, 1)
        self.label_16 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_16.setObjectName("label_16")
        self.gridLayout_4.addWidget(self.label_16, 1, 0, 1, 1)
        self.label_13 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_13.setObjectName("label_13")
        self.gridLayout_4.addWidget(self.label_13, 8, 0, 1, 1)
        self.stability_heel_max = QtWidgets.QSpinBox(self.dockWidgetContents_7)
        self.stability_heel_max.setProperty("value", 60)
        self.stability_heel_max.setObjectName("stability_heel_max")
        self.gridLayout_4.addWidget(self.stability_heel_max, 2, 3, 1, 1)
        self.stability_n_steps = QtWidgets.QSpinBox(self.dockWidgetContents_7)
        self.stability_n_steps.setProperty("value", 60)
        self.stability_n_steps.setObjectName("stability_n_steps")
        self.gridLayout_4.addWidget(self.stability_n_steps, 3, 1, 1, 2)
        self.stability_heel_start = QtWidgets.QSpinBox(self.dockWidgetContents_7)
        self.stability_heel_start.setMinimum(-180)
        self.stability_heel_start.setMaximum(20)
        self.stability_heel_start.setObjectName("stability_heel_start")
        self.gridLayout_4.addWidget(self.stability_heel_start, 2, 1, 1, 1)
        self.stability_do_teardown = QtWidgets.QCheckBox(self.dockWidgetContents_7)
        self.stability_do_teardown.setChecked(True)
        self.stability_do_teardown.setObjectName("stability_do_teardown")
        self.gridLayout_4.addWidget(self.stability_do_teardown, 8, 1, 1, 2)
        self.stability_trim = QtWidgets.QCheckBox(self.dockWidgetContents_7)
        self.stability_trim.setChecked(True)
        self.stability_trim.setObjectName("stability_trim")
        self.gridLayout_4.addWidget(self.stability_trim, 7, 1, 1, 2)
        self.label_18 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_18.setObjectName("label_18")
        self.gridLayout_4.addWidget(self.label_18, 3, 0, 1, 1)
        self.label_14 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_14.setAlignment(QtCore.Qt.AlignCenter)
        self.label_14.setObjectName("label_14")
        self.gridLayout_4.addWidget(self.label_14, 2, 2, 1, 1)
        self.stability_sway = QtWidgets.QCheckBox(self.dockWidgetContents_7)
        self.stability_sway.setObjectName("stability_sway")
        self.gridLayout_4.addWidget(self.stability_sway, 5, 1, 1, 2)
        self.stability_yaw = QtWidgets.QCheckBox(self.dockWidgetContents_7)
        self.stability_yaw.setObjectName("stability_yaw")
        self.gridLayout_4.addWidget(self.stability_yaw, 6, 1, 1, 2)
        self.stability_surge = QtWidgets.QCheckBox(self.dockWidgetContents_7)
        self.stability_surge.setObjectName("stability_surge")
        self.gridLayout_4.addWidget(self.stability_surge, 4, 1, 1, 2)
        self.label_15 = QtWidgets.QLabel(self.dockWidgetContents_7)
        self.label_15.setObjectName("label_15")
        self.gridLayout_4.addWidget(self.label_15, 2, 4, 1, 1)
        self.stability_go = QtWidgets.QPushButton(self.dockWidgetContents_7)
        self.stability_go.setObjectName("stability_go")
        self.gridLayout_4.addWidget(self.stability_go, 9, 3, 1, 2)
        self.stabilityDockWidget.setWidget(self.dockWidgetContents_7)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.stabilityDockWidget)
        self.actionSave_scene = QtWidgets.QAction(MainWindow)
        self.actionSave_scene.setObjectName("actionSave_scene")
        self.actionImport_sub_scene = QtWidgets.QAction(MainWindow)
        self.actionImport_sub_scene.setObjectName("actionImport_sub_scene")
        self.actionNew = QtWidgets.QAction(MainWindow)
        self.actionNew.setObjectName("actionNew")
        self.actionHorizontal_camera = QtWidgets.QAction(MainWindow)
        self.actionHorizontal_camera.setObjectName("actionHorizontal_camera")
        self.action = QtWidgets.QAction(MainWindow)
        self.action.setObjectName("action")
        self.action2D_mode = QtWidgets.QAction(MainWindow)
        self.action2D_mode.setCheckable(True)
        self.action2D_mode.setObjectName("action2D_mode")
        self.actionDark_mode = QtWidgets.QAction(MainWindow)
        self.actionDark_mode.setCheckable(False)
        self.actionDark_mode.setObjectName("actionDark_mode")
        self.actionShow_visuals = QtWidgets.QAction(MainWindow)
        self.actionShow_visuals.setCheckable(True)
        self.actionShow_visuals.setChecked(True)
        self.actionShow_visuals.setObjectName("actionShow_visuals")
        self.actionShow_Geometry_elements = QtWidgets.QAction(MainWindow)
        self.actionShow_Geometry_elements.setCheckable(True)
        self.actionShow_Geometry_elements.setChecked(True)
        self.actionShow_Geometry_elements.setObjectName("actionShow_Geometry_elements")
        self.actionShow_force_applyting_element = QtWidgets.QAction(MainWindow)
        self.actionShow_force_applyting_element.setCheckable(True)
        self.actionShow_force_applyting_element.setChecked(True)
        self.actionShow_force_applyting_element.setObjectName("actionShow_force_applyting_element")
        self.actionSet_all_visible = QtWidgets.QAction(MainWindow)
        self.actionSet_all_visible.setObjectName("actionSet_all_visible")
        self.actionSet_all_hidden = QtWidgets.QAction(MainWindow)
        self.actionSet_all_hidden.setObjectName("actionSet_all_hidden")
        self.actionFull_refresh = QtWidgets.QAction(MainWindow)
        self.actionFull_refresh.setObjectName("actionFull_refresh")
        self.actionShow_water_plane = QtWidgets.QAction(MainWindow)
        self.actionShow_water_plane.setCheckable(True)
        self.actionShow_water_plane.setChecked(False)
        self.actionShow_water_plane.setObjectName("actionShow_water_plane")
        self.actionAdd_light = QtWidgets.QAction(MainWindow)
        self.actionAdd_light.setObjectName("actionAdd_light")
        self.actionShow_all_forces_at_same_size = QtWidgets.QAction(MainWindow)
        self.actionShow_all_forces_at_same_size.setCheckable(True)
        self.actionShow_all_forces_at_same_size.setChecked(True)
        self.actionShow_all_forces_at_same_size.setObjectName("actionShow_all_forces_at_same_size")
        self.actionIncrease_force_size = QtWidgets.QAction(MainWindow)
        self.actionIncrease_force_size.setObjectName("actionIncrease_force_size")
        self.actionDecrease_force_size = QtWidgets.QAction(MainWindow)
        self.actionDecrease_force_size.setObjectName("actionDecrease_force_size")
        self.actionIncrease_Geometry_size = QtWidgets.QAction(MainWindow)
        self.actionIncrease_Geometry_size.setObjectName("actionIncrease_Geometry_size")
        self.actionDecrease_Geometry_size = QtWidgets.QAction(MainWindow)
        self.actionDecrease_Geometry_size.setObjectName("actionDecrease_Geometry_size")
        self.actionPython_console = QtWidgets.QAction(MainWindow)
        self.actionPython_console.setObjectName("actionPython_console")
        self.actionGoal_seek = QtWidgets.QAction(MainWindow)
        self.actionGoal_seek.setObjectName("actionGoal_seek")
        self.actionStability_curve = QtWidgets.QAction(MainWindow)
        self.actionStability_curve.setObjectName("actionStability_curve")
        self.actionOptimize = QtWidgets.QAction(MainWindow)
        self.actionOptimize.setObjectName("actionOptimize")
        self.actionOpen = QtWidgets.QAction(MainWindow)
        self.actionOpen.setObjectName("actionOpen")
        self.actionImport_browser = QtWidgets.QAction(MainWindow)
        self.actionImport_browser.setObjectName("actionImport_browser")
        self.actionRender_current_view = QtWidgets.QAction(MainWindow)
        self.actionRender_current_view.setObjectName("actionRender_current_view")
        self.actionModal_shapes = QtWidgets.QAction(MainWindow)
        self.actionModal_shapes.setObjectName("actionModal_shapes")
        self.actionInertia_properties = QtWidgets.QAction(MainWindow)
        self.actionInertia_properties.setObjectName("actionInertia_properties")
        self.menuSolve_Statics.addAction(self.actionNew)
        self.menuSolve_Statics.addSeparator()
        self.menuSolve_Statics.addAction(self.actionOpen)
        self.menuSolve_Statics.addAction(self.actionImport_sub_scene)
        self.menuSolve_Statics.addAction(self.actionImport_browser)
        self.menuSolve_Statics.addSeparator()
        self.menuSolve_Statics.addAction(self.actionSave_scene)
        self.menuView.addAction(self.actionHorizontal_camera)
        self.menuView.addSeparator()
        self.menuView.addAction(self.action2D_mode)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionAdd_light)
        self.menuView.addAction(self.actionDark_mode)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionShow_all_forces_at_same_size)
        self.menuView.addAction(self.actionIncrease_force_size)
        self.menuView.addAction(self.actionDecrease_force_size)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionIncrease_Geometry_size)
        self.menuView.addAction(self.actionDecrease_Geometry_size)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionShow_visuals)
        self.menuView.addAction(self.actionShow_Geometry_elements)
        self.menuView.addAction(self.actionShow_force_applyting_element)
        self.menuView.addAction(self.actionShow_water_plane)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionSet_all_visible)
        self.menuView.addAction(self.actionSet_all_hidden)
        self.menuView.addSeparator()
        self.menuView.addAction(self.actionFull_refresh)
        self.menuView_2.addAction(self.actionPython_console)
        self.menuWhat_if.addAction(self.actionGoal_seek)
        self.menuWhat_if.addAction(self.actionOptimize)
        self.menuMarine.addAction(self.actionStability_curve)
        self.menuRender.addAction(self.actionRender_current_view)
        self.menuDynamics.addAction(self.actionModal_shapes)
        self.menuDynamics.addAction(self.actionInertia_properties)
        self.menubar.addAction(self.menuSolve_Statics.menuAction())
        self.menubar.addAction(self.menuView.menuAction())
        self.menubar.addAction(self.menuView_2.menuAction())
        self.menubar.addAction(self.menuWhat_if.menuAction())
        self.menubar.addAction(self.menuMarine.menuAction())
        self.menubar.addAction(self.menuRender.menuAction())
        self.menubar.addAction(self.menuDynamics.menuAction())
        self.toolBar.addSeparator()

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        MainWindow.setTabOrder(self.pbCopyHistory, self.pbCopyFeedback)
        MainWindow.setTabOrder(self.pbCopyFeedback, self.teFeedback)
        MainWindow.setTabOrder(self.teFeedback, self.teHistory)
        MainWindow.setTabOrder(self.teHistory, self.gsSetProp)
        MainWindow.setTabOrder(self.gsSetProp, self.gsSetNode)
        MainWindow.setTabOrder(self.gsSetNode, self.gsValue)
        MainWindow.setTabOrder(self.gsValue, self.gsChangeProp)
        MainWindow.setTabOrder(self.gsChangeProp, self.gsChangeNode)
        MainWindow.setTabOrder(self.gsChangeNode, self.btnGoalSeek)
        MainWindow.setTabOrder(self.btnGoalSeek, self.pbRunCode)
        MainWindow.setTabOrder(self.pbRunCode, self.dispPropTree)
        MainWindow.setTabOrder(self.dispPropTree, self.cbAutoStatics)
        MainWindow.setTabOrder(self.cbAutoStatics, self.pbGenerateSceneCode)
        MainWindow.setTabOrder(self.pbGenerateSceneCode, self.pbStartOver)
        MainWindow.setTabOrder(self.pbStartOver, self.treeView)
        MainWindow.setTabOrder(self.treeView, self.teCode)
        MainWindow.setTabOrder(self.teCode, self.cbAutoExecute)
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(862, 708)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.verticalLayout_10 = QtWidgets.QVBoxLayout(self.centralwidget)
        self.verticalLayout_10.setSpacing(0)
        self.verticalLayout_10.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_10.setObjectName("verticalLayout_10")
        self.label = QtWidgets.QLabel(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth())
        self.label.setSizePolicy(sizePolicy)
        self.label.setMinimumSize(QtCore.QSize(0, 20))
        self.label.setMaximumSize(QtCore.QSize(16777215, 20))
        self.label.setAutoFillBackground(False)
        self.label.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.label.setFrameShadow(QtWidgets.QFrame.Plain)
        self.label.setLineWidth(1)
        self.label.setMargin(0)
        self.label.setIndent(5)
        self.label.setObjectName("label")
        self.verticalLayout_10.addWidget(self.label)
        self.graphicsView = DesignQGraphicsView(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.graphicsView.sizePolicy().hasHeightForWidth())
        self.graphicsView.setSizePolicy(sizePolicy)
        self.graphicsView.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.graphicsView.setFrameShadow(QtWidgets.QFrame.Raised)
        self.graphicsView.setMidLineWidth(0)
        self.graphicsView.setAlignment(QtCore.Qt.AlignCenter)
        self.graphicsView.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.TextAntialiasing)
        self.graphicsView.setDragMode(QtWidgets.QGraphicsView.ScrollHandDrag)
        self.graphicsView.setResizeAnchor(QtWidgets.QGraphicsView.AnchorUnderMouse)
        self.graphicsView.setViewportUpdateMode(QtWidgets.QGraphicsView.FullViewportUpdate)
        self.graphicsView.setObjectName("graphicsView")
        self.verticalLayout_10.addWidget(self.graphicsView)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 862, 21))
        self.menubar.setNativeMenuBar(False)
        self.menubar.setObjectName("menubar")
        self.menuFile = QtWidgets.QMenu(self.menubar)
        self.menuFile.setToolTipsVisible(True)
        self.menuFile.setObjectName("menuFile")
        self.menuHelp = QtWidgets.QMenu(self.menubar)
        self.menuHelp.setObjectName("menuHelp")
        self.menuEdit = QtWidgets.QMenu(self.menubar)
        self.menuEdit.setObjectName("menuEdit")
        self.menuView = QtWidgets.QMenu(self.menubar)
        self.menuView.setObjectName("menuView")
        self.menuToolbars = QtWidgets.QMenu(self.menuView)
        self.menuToolbars.setObjectName("menuToolbars")
        self.menuDock_Widgets = QtWidgets.QMenu(self.menuView)
        self.menuDock_Widgets.setObjectName("menuDock_Widgets")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.dockWidget_eventlog = QtWidgets.QDockWidget(MainWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidget_eventlog.sizePolicy().hasHeightForWidth())
        self.dockWidget_eventlog.setSizePolicy(sizePolicy)
        self.dockWidget_eventlog.setMinimumSize(QtCore.QSize(95, 113))
        self.dockWidget_eventlog.setFeatures(QtWidgets.QDockWidget.AllDockWidgetFeatures)
        self.dockWidget_eventlog.setObjectName("dockWidget_eventlog")
        self.dockWidgetContents = QtWidgets.QWidget()
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidgetContents.sizePolicy().hasHeightForWidth())
        self.dockWidgetContents.setSizePolicy(sizePolicy)
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.dockWidgetContents)
        self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.textBrowser_eventlog = CustomQTextBrowser(self.dockWidgetContents)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.textBrowser_eventlog.sizePolicy().hasHeightForWidth())
        self.textBrowser_eventlog.setSizePolicy(sizePolicy)
        self.textBrowser_eventlog.setContextMenuPolicy(QtCore.Qt.DefaultContextMenu)
        self.textBrowser_eventlog.setOpenLinks(False)
        self.textBrowser_eventlog.setObjectName("textBrowser_eventlog")
        self.verticalLayout_3.addWidget(self.textBrowser_eventlog)
        self.dockWidget_eventlog.setWidget(self.dockWidgetContents)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(8), self.dockWidget_eventlog)
        self.dockWidget_process_output = QtWidgets.QDockWidget(MainWindow)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidget_process_output.sizePolicy().hasHeightForWidth())
        self.dockWidget_process_output.setSizePolicy(sizePolicy)
        self.dockWidget_process_output.setMinimumSize(QtCore.QSize(95, 113))
        self.dockWidget_process_output.setObjectName("dockWidget_process_output")
        self.dockWidgetContents_2 = QtWidgets.QWidget()
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dockWidgetContents_2.sizePolicy().hasHeightForWidth())
        self.dockWidgetContents_2.setSizePolicy(sizePolicy)
        self.dockWidgetContents_2.setObjectName("dockWidgetContents_2")
        self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.dockWidgetContents_2)
        self.verticalLayout_6.setSpacing(0)
        self.verticalLayout_6.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_6.setObjectName("verticalLayout_6")
        self.textBrowser_process_output = CustomQTextBrowser(self.dockWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.textBrowser_process_output.sizePolicy().hasHeightForWidth())
        self.textBrowser_process_output.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setFamily("Segoe UI")
        self.textBrowser_process_output.setFont(font)
        self.textBrowser_process_output.setContextMenuPolicy(QtCore.Qt.DefaultContextMenu)
        self.textBrowser_process_output.setOpenLinks(False)
        self.textBrowser_process_output.setObjectName("textBrowser_process_output")
        self.verticalLayout_6.addWidget(self.textBrowser_process_output)
        self.dockWidget_process_output.setWidget(self.dockWidgetContents_2)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(8), self.dockWidget_process_output)
        self.dockWidget_item = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_item.setMinimumSize(QtCore.QSize(356, 293))
        self.dockWidget_item.setObjectName("dockWidget_item")
        self.dockWidgetContents_3 = QtWidgets.QWidget()
        self.dockWidgetContents_3.setObjectName("dockWidgetContents_3")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.dockWidgetContents_3)
        self.verticalLayout.setSpacing(6)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.tabWidget_item_properties = QtWidgets.QTabWidget(self.dockWidgetContents_3)
        self.tabWidget_item_properties.setStyleSheet("")
        self.tabWidget_item_properties.setObjectName("tabWidget_item_properties")
        self.tab_no_selection = QtWidgets.QWidget()
        self.tab_no_selection.setObjectName("tab_no_selection")
        self.verticalLayout_14 = QtWidgets.QVBoxLayout(self.tab_no_selection)
        self.verticalLayout_14.setContentsMargins(6, 6, 6, 6)
        self.verticalLayout_14.setObjectName("verticalLayout_14")
        self.label_no_selection = QtWidgets.QLabel(self.tab_no_selection)
        self.label_no_selection.setAlignment(QtCore.Qt.AlignCenter)
        self.label_no_selection.setObjectName("label_no_selection")
        self.verticalLayout_14.addWidget(self.label_no_selection)
        self.tabWidget_item_properties.addTab(self.tab_no_selection, "")
        self.verticalLayout.addWidget(self.tabWidget_item_properties)
        self.dockWidget_item.setWidget(self.dockWidgetContents_3)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.dockWidget_item)
        self.dockWidget_julia_repl = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_julia_repl.setMinimumSize(QtCore.QSize(95, 80))
        self.dockWidget_julia_repl.setObjectName("dockWidget_julia_repl")
        self.dockWidgetContents_julia_repl = QtWidgets.QWidget()
        self.dockWidgetContents_julia_repl.setObjectName("dockWidgetContents_julia_repl")
        self.verticalLayout_9 = QtWidgets.QVBoxLayout(self.dockWidgetContents_julia_repl)
        self.verticalLayout_9.setSpacing(0)
        self.verticalLayout_9.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_9.setObjectName("verticalLayout_9")
        self.dockWidget_julia_repl.setWidget(self.dockWidgetContents_julia_repl)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(8), self.dockWidget_julia_repl)
        self.dockWidget_project = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_project.setMinimumSize(QtCore.QSize(136, 320))
        self.dockWidget_project.setObjectName("dockWidget_project")
        self.dockWidgetContents_4 = QtWidgets.QWidget()
        self.dockWidgetContents_4.setObjectName("dockWidgetContents_4")
        self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.dockWidgetContents_4)
        self.verticalLayout_4.setSpacing(6)
        self.verticalLayout_4.setContentsMargins(6, 6, 6, 6)
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.splitter = QtWidgets.QSplitter(self.dockWidgetContents_4)
        self.splitter.setOrientation(QtCore.Qt.Vertical)
        self.splitter.setChildrenCollapsible(False)
        self.splitter.setObjectName("splitter")
        self.layoutWidget = QtWidgets.QWidget(self.splitter)
        self.layoutWidget.setObjectName("layoutWidget")
        self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.layoutWidget)
        self.verticalLayout_5.setSpacing(0)
        self.verticalLayout_5.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_5.setObjectName("verticalLayout_5")
        self.label_4 = QtWidgets.QLabel(self.layoutWidget)
        self.label_4.setIndent(-1)
        self.label_4.setObjectName("label_4")
        self.verticalLayout_5.addWidget(self.label_4)
        self.treeView_project = QtWidgets.QTreeView(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.treeView_project.sizePolicy().hasHeightForWidth())
        self.treeView_project.setSizePolicy(sizePolicy)
        self.treeView_project.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.treeView_project.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        self.treeView_project.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers)
        self.treeView_project.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
        self.treeView_project.setAnimated(True)
        self.treeView_project.setObjectName("treeView_project")
        self.verticalLayout_5.addWidget(self.treeView_project)
        self.layoutWidget1 = QtWidgets.QWidget(self.splitter)
        self.layoutWidget1.setObjectName("layoutWidget1")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.layoutWidget1)
        self.verticalLayout_2.setSpacing(0)
        self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.label_3 = QtWidgets.QLabel(self.layoutWidget1)
        self.label_3.setAutoFillBackground(False)
        self.label_3.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.label_3.setIndent(-1)
        self.label_3.setObjectName("label_3")
        self.verticalLayout_2.addWidget(self.label_3)
        self.listView_tool_specifications = QtWidgets.QListView(self.layoutWidget1)
        self.listView_tool_specifications.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        self.listView_tool_specifications.setObjectName("listView_tool_specifications")
        self.verticalLayout_2.addWidget(self.listView_tool_specifications)
        self.verticalLayout_4.addWidget(self.splitter)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.toolButton_add_tool_specification = QtWidgets.QToolButton(self.dockWidgetContents_4)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.toolButton_add_tool_specification.sizePolicy().hasHeightForWidth())
        self.toolButton_add_tool_specification.setSizePolicy(sizePolicy)
        self.toolButton_add_tool_specification.setMinimumSize(QtCore.QSize(26, 26))
        self.toolButton_add_tool_specification.setMaximumSize(QtCore.QSize(26, 26))
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/icons/wrench_plus.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.toolButton_add_tool_specification.setIcon(icon)
        self.toolButton_add_tool_specification.setPopupMode(QtWidgets.QToolButton.InstantPopup)
        self.toolButton_add_tool_specification.setObjectName("toolButton_add_tool_specification")
        self.horizontalLayout.addWidget(self.toolButton_add_tool_specification)
        self.toolButton_remove_tool_specification = QtWidgets.QToolButton(self.dockWidgetContents_4)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.toolButton_remove_tool_specification.sizePolicy().hasHeightForWidth())
        self.toolButton_remove_tool_specification.setSizePolicy(sizePolicy)
        self.toolButton_remove_tool_specification.setMinimumSize(QtCore.QSize(26, 26))
        self.toolButton_remove_tool_specification.setMaximumSize(QtCore.QSize(26, 26))
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(":/icons/wrench_minus.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.toolButton_remove_tool_specification.setIcon(icon1)
        self.toolButton_remove_tool_specification.setObjectName("toolButton_remove_tool_specification")
        self.horizontalLayout.addWidget(self.toolButton_remove_tool_specification)
        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem)
        self.verticalLayout_4.addLayout(self.horizontalLayout)
        self.dockWidget_project.setWidget(self.dockWidgetContents_4)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dockWidget_project)
        self.dockWidget_python_repl = QtWidgets.QDockWidget(MainWindow)
        self.dockWidget_python_repl.setFloating(False)
        self.dockWidget_python_repl.setFeatures(QtWidgets.QDockWidget.AllDockWidgetFeatures)
        self.dockWidget_python_repl.setObjectName("dockWidget_python_repl")
        self.dockWidgetContents_python_repl = QtWidgets.QWidget()
        self.dockWidgetContents_python_repl.setObjectName("dockWidgetContents_python_repl")
        self.verticalLayout_20 = QtWidgets.QVBoxLayout(self.dockWidgetContents_python_repl)
        self.verticalLayout_20.setSpacing(0)
        self.verticalLayout_20.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_20.setObjectName("verticalLayout_20")
        self.dockWidget_python_repl.setWidget(self.dockWidgetContents_python_repl)
        MainWindow.addDockWidget(QtCore.Qt.DockWidgetArea(8), self.dockWidget_python_repl)
        self.actionQuit = QtWidgets.QAction(MainWindow)
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(":/icons/menu_icons/window-close.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionQuit.setIcon(icon2)
        self.actionQuit.setObjectName("actionQuit")
        self.actionData_Store = QtWidgets.QAction(MainWindow)
        self.actionData_Store.setObjectName("actionData_Store")
        self.actionDocumentation = QtWidgets.QAction(MainWindow)
        self.actionDocumentation.setObjectName("actionDocumentation")
        self.actionAbout = QtWidgets.QAction(MainWindow)
        icon3 = QtGui.QIcon()
        icon3.addPixmap(QtGui.QPixmap(":/icons/menu_icons/info-circle.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionAbout.setIcon(icon3)
        self.actionAbout.setObjectName("actionAbout")
        self.actionAdd_Data_Connection = QtWidgets.QAction(MainWindow)
        icon4 = QtGui.QIcon()
        icon4.addPixmap(QtGui.QPixmap(":/icons/project_item_icons/file-alt.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionAdd_Data_Connection.setIcon(icon4)
        self.actionAdd_Data_Connection.setObjectName("actionAdd_Data_Connection")
        self.actionAdd_Data_Store = QtWidgets.QAction(MainWindow)
        icon5 = QtGui.QIcon()
        icon5.addPixmap(QtGui.QPixmap(":/icons/project_item_icons/database.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionAdd_Data_Store.setIcon(icon5)
        self.actionAdd_Data_Store.setObjectName("actionAdd_Data_Store")
        self.actionAdd_Tool = QtWidgets.QAction(MainWindow)
        icon6 = QtGui.QIcon()
        icon6.addPixmap(QtGui.QPixmap(":/icons/project_item_icons/hammer.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionAdd_Tool.setIcon(icon6)
        self.actionAdd_Tool.setObjectName("actionAdd_Tool")
        self.actionAdd_View = QtWidgets.QAction(MainWindow)
        icon7 = QtGui.QIcon()
        icon7.addPixmap(QtGui.QPixmap(":/icons/project_item_icons/binoculars.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionAdd_View.setIcon(icon7)
        self.actionAdd_View.setObjectName("actionAdd_View")
        self.actionSave = QtWidgets.QAction(MainWindow)
        icon8 = QtGui.QIcon()
        icon8.addPixmap(QtGui.QPixmap(":/icons/menu_icons/save_solid.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionSave.setIcon(icon8)
        self.actionSave.setObjectName("actionSave")
        self.actionSave_As = QtWidgets.QAction(MainWindow)
        icon9 = QtGui.QIcon()
        icon9.addPixmap(QtGui.QPixmap(":/icons/menu_icons/save_regular.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionSave_As.setIcon(icon9)
        self.actionSave_As.setObjectName("actionSave_As")
        self.actionOpen = QtWidgets.QAction(MainWindow)
        icon10 = QtGui.QIcon()
        icon10.addPixmap(QtGui.QPixmap(":/icons/menu_icons/folder-open-solid.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionOpen.setIcon(icon10)
        self.actionOpen.setObjectName("actionOpen")
        self.actionNew = QtWidgets.QAction(MainWindow)
        icon11 = QtGui.QIcon()
        icon11.addPixmap(QtGui.QPixmap(":/icons/menu_icons/file.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionNew.setIcon(icon11)
        self.actionNew.setObjectName("actionNew")
        self.actionSettings = QtWidgets.QAction(MainWindow)
        icon12 = QtGui.QIcon()
        icon12.addPixmap(QtGui.QPixmap(":/icons/menu_icons/cog.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionSettings.setIcon(icon12)
        self.actionSettings.setObjectName("actionSettings")
        self.actionItem_Toolbar = QtWidgets.QAction(MainWindow)
        self.actionItem_Toolbar.setObjectName("actionItem_Toolbar")
        self.actionAdd_Item_Toolbar = QtWidgets.QAction(MainWindow)
        self.actionAdd_Item_Toolbar.setObjectName("actionAdd_Item_Toolbar")
        self.actionEvent_Log = QtWidgets.QAction(MainWindow)
        self.actionEvent_Log.setCheckable(False)
        self.actionEvent_Log.setChecked(False)
        self.actionEvent_Log.setObjectName("actionEvent_Log")
        self.actionSubprocess_Output = QtWidgets.QAction(MainWindow)
        self.actionSubprocess_Output.setObjectName("actionSubprocess_Output")
        self.actionSelected_Item = QtWidgets.QAction(MainWindow)
        self.actionSelected_Item.setObjectName("actionSelected_Item")
        self.actionJulia_REPL = QtWidgets.QAction(MainWindow)
        self.actionJulia_REPL.setObjectName("actionJulia_REPL")
        self.actionUser_Guide = QtWidgets.QAction(MainWindow)
        icon13 = QtGui.QIcon()
        icon13.addPixmap(QtGui.QPixmap(":/icons/menu_icons/question-circle.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionUser_Guide.setIcon(icon13)
        self.actionUser_Guide.setObjectName("actionUser_Guide")
        self.actionRestore_Dock_Widgets = QtWidgets.QAction(MainWindow)
        self.actionRestore_Dock_Widgets.setObjectName("actionRestore_Dock_Widgets")
        self.actionAbout_Qt = QtWidgets.QAction(MainWindow)
        icon14 = QtGui.QIcon()
        icon14.addPixmap(QtGui.QPixmap(":/icons/qt_extended_48x48.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionAbout_Qt.setIcon(icon14)
        self.actionAbout_Qt.setObjectName("actionAbout_Qt")
        self.actionPackages = QtWidgets.QAction(MainWindow)
        icon15 = QtGui.QIcon()
        icon15.addPixmap(QtGui.QPixmap(":/icons/menu_icons/hands-helping.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionPackages.setIcon(icon15)
        self.actionPackages.setObjectName("actionPackages")
        self.actionRemove_all = QtWidgets.QAction(MainWindow)
        icon16 = QtGui.QIcon()
        icon16.addPixmap(QtGui.QPixmap(":/icons/menu_icons/trash-alt.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionRemove_all.setIcon(icon16)
        self.actionRemove_all.setObjectName("actionRemove_all")
        self.actionExport_project_to_GraphML = QtWidgets.QAction(MainWindow)
        icon17 = QtGui.QIcon()
        icon17.addPixmap(QtGui.QPixmap(":/icons/menu_icons/file-export.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionExport_project_to_GraphML.setIcon(icon17)
        self.actionExport_project_to_GraphML.setObjectName("actionExport_project_to_GraphML")
        self.actionAdd_Importer = QtWidgets.QAction(MainWindow)
        icon18 = QtGui.QIcon()
        icon18.addPixmap(QtGui.QPixmap(":/icons/project_item_icons/map-solid.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionAdd_Importer.setIcon(icon18)
        self.actionAdd_Importer.setObjectName("actionAdd_Importer")
        self.actionGetting_started = QtWidgets.QAction(MainWindow)
        self.actionGetting_started.setIcon(icon13)
        self.actionGetting_started.setObjectName("actionGetting_started")
        self.actionOpen_recent = QtWidgets.QAction(MainWindow)
        icon19 = QtGui.QIcon()
        icon19.addPixmap(QtGui.QPixmap(":/icons/menu_icons/history.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionOpen_recent.setIcon(icon19)
        self.actionOpen_recent.setObjectName("actionOpen_recent")
        self.actionCopy = QtWidgets.QAction(MainWindow)
        self.actionCopy.setObjectName("actionCopy")
        self.actionPaste = QtWidgets.QAction(MainWindow)
        self.actionPaste.setObjectName("actionPaste")
        self.actionDuplicate = QtWidgets.QAction(MainWindow)
        self.actionDuplicate.setObjectName("actionDuplicate")
        self.actionLive_tutorial = QtWidgets.QAction(MainWindow)
        self.actionLive_tutorial.setIcon(icon13)
        self.actionLive_tutorial.setObjectName("actionLive_tutorial")
        self.actionUpgrade_project = QtWidgets.QAction(MainWindow)
        icon20 = QtGui.QIcon()
        icon20.addPixmap(QtGui.QPixmap(":/icons/menu_icons/level-up-alt.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.actionUpgrade_project.setIcon(icon20)
        self.actionUpgrade_project.setObjectName("actionUpgrade_project")
        self.menuFile.addAction(self.actionNew)
        self.menuFile.addAction(self.actionOpen)
        self.menuFile.addAction(self.actionOpen_recent)
        self.menuFile.addAction(self.actionSave)
        self.menuFile.addAction(self.actionSave_As)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionUpgrade_project)
        self.menuFile.addAction(self.actionExport_project_to_GraphML)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionSettings)
        self.menuFile.addAction(self.actionPackages)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionQuit)
        self.menuHelp.addAction(self.actionUser_Guide)
        self.menuHelp.addAction(self.actionGetting_started)
        self.menuHelp.addSeparator()
        self.menuHelp.addAction(self.actionAbout_Qt)
        self.menuHelp.addAction(self.actionAbout)
        self.menuEdit.addAction(self.actionRemove_all)
        self.menuDock_Widgets.addAction(self.actionRestore_Dock_Widgets)
        self.menuDock_Widgets.addSeparator()
        self.menuView.addAction(self.menuToolbars.menuAction())
        self.menuView.addAction(self.menuDock_Widgets.menuAction())
        self.menubar.addAction(self.menuFile.menuAction())
        self.menubar.addAction(self.menuEdit.menuAction())
        self.menubar.addAction(self.menuView.menuAction())
        self.menubar.addAction(self.menuHelp.menuAction())

        self.retranslateUi(MainWindow)
        self.tabWidget_item_properties.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        MainWindow.setTabOrder(self.treeView_project, self.listView_tool_specifications)
        MainWindow.setTabOrder(self.listView_tool_specifications, self.toolButton_add_tool_specification)
        MainWindow.setTabOrder(self.toolButton_add_tool_specification, self.toolButton_remove_tool_specification)
        MainWindow.setTabOrder(self.toolButton_remove_tool_specification, self.graphicsView)
        MainWindow.setTabOrder(self.graphicsView, self.textBrowser_eventlog)
        MainWindow.setTabOrder(self.textBrowser_eventlog, self.textBrowser_process_output)
        MainWindow.setTabOrder(self.textBrowser_process_output, self.tabWidget_item_properties)