Example #1
0
    def resume_init(self):
        """Resume GUI initialization"""

        from libopensesame import misc
        from libqtopensesame.misc import theme
        from libqtopensesame.extensions import extension_manager
        import platform
        import random

        # Set some initial variables
        self.current_path = None
        self.version = misc.version
        self.codename = misc.codename
        self.lock_refresh = False
        self.unsaved_changes = False

        # Make sure that QProgEdit doesn't complain about some standard names
        from QProgEdit import validate
        validate.addPythonBuiltins([u'exp', u'win', u'self'])

        # Initialize random number generator
        random.seed()

        # Check the filesystem encoding for debugging purposes
        debug.msg(u'filesystem encoding: %s' % misc.filesystem_encoding())

        # Parse the command line
        self.parse_command_line()

        # Restore the configuration
        self.restore_config()

        # Setup the UI
        self.load_ui(u'misc.main_window')
        self.ui.itemtree.setup(self)
        self.ui.tabwidget.main_window = self

        # Load a theme
        self.theme = theme.theme(self, self.options._theme)

        # Determine the home folder
        self.home_folder = libopensesame.misc.home_folder()

        # Create .opensesame folder if it doesn't exist yet
        if not os.path.exists(os.path.join(self.home_folder, u".opensesame")):
            os.mkdir(os.path.join(self.home_folder, u".opensesame"))

        # Set the filter-string for opening and saving files
        self.file_type_filter = \
         u"OpenSesame files (*.opensesame.tar.gz *.opensesame);;OpenSesame script and file pool (*.opensesame.tar.gz);;OpenSesame script (*.opensesame)"
        self.file_type_filter_script = u"OpenSesame script (*.opensesame)"
        self.file_type_filter_pool = \
         u"OpenSesame script and file pool (*.opensesame.tar.gz)"

        # Set the window message
        self.window_message(_(u"Welcome to OpenSesame %s") % self.version)

        # Set the window icon
        self.setWindowIcon(self.theme.qicon(u"opensesame"))

        # Make the connections
        self.ui.itemtree.structure_change.connect(self.update_overview_area)
        self.ui.action_quit.triggered.connect(self.close)
        self.ui.action_new.triggered.connect(self.new_file)
        self.ui.action_open.triggered.connect(self.open_file)
        self.ui.action_save.triggered.connect(self.save_file)
        self.ui.action_save_as.triggered.connect(self.save_file_as)
        self.ui.action_run.triggered.connect(self.run_experiment)
        self.ui.action_run_in_window.triggered.connect(
            self.run_experiment_in_window)
        self.ui.action_run_quick.triggered.connect(self.run_quick)
        self.ui.action_enable_auto_response.triggered.connect(
            self.set_auto_response)
        self.ui.action_close_current_tab.triggered.connect(
            self.ui.tabwidget.close_current)
        self.ui.action_close_all_tabs.triggered.connect(
            self.ui.tabwidget.close_all)
        self.ui.action_close_other_tabs.triggered.connect(
            self.ui.tabwidget.close_other)
        self.ui.action_onetabmode.triggered.connect(
            self.ui.tabwidget.toggle_onetabmode)
        self.ui.action_show_overview.triggered.connect(self.toggle_overview)
        self.ui.action_show_variable_inspector.triggered.connect(
            self.refresh_variable_inspector)
        self.ui.action_show_pool.triggered.connect(self.refresh_pool)
        self.ui.action_show_stdout.triggered.connect(self.refresh_stdout)
        self.ui.action_preferences.triggered.connect(
            self.ui.tabwidget.open_preferences)
        self.ui.button_help_stdout.clicked.connect(
            self.ui.tabwidget.open_stdout_help)

        # Setup the overview area
        self.ui.dock_overview.show()
        self.ui.dock_overview.visibilityChanged.connect( \
         self.ui.action_show_overview.setChecked)

        # Setup the variable inspector
        from libqtopensesame.widgets.variable_inspector import \
         variable_inspector
        self.ui.variable_inspector = variable_inspector(self)
        self.ui.dock_variable_inspector.hide()
        self.ui.dock_variable_inspector.visibilityChanged.connect(
            self.ui.action_show_variable_inspector.setChecked)
        self.ui.dock_variable_inspector.setWidget(self.ui.variable_inspector)

        # Setup the file pool
        from libqtopensesame.widgets.pool_widget import pool_widget
        self.ui.dock_pool.hide()
        self.ui.dock_pool.visibilityChanged.connect(
            self.ui.action_show_pool.setChecked)
        self.ui.pool_widget = pool_widget(self)
        self.ui.dock_pool.setWidget(self.ui.pool_widget)

        # Uncheck the debug window button on debug window close
        self.ui.dock_stdout.visibilityChanged.connect( \
         self.ui.action_show_stdout.setChecked)

        # Initialize keyboard shortcuts
        self.ui.shortcut_itemtree = QtGui.QShortcut( \
         QtGui.QKeySequence(), self, self.ui.itemtree.setFocus)
        self.ui.shortcut_tabwidget = QtGui.QShortcut( \
         QtGui.QKeySequence(), self, self.ui.tabwidget.setFocus)
        self.ui.shortcut_stdout = QtGui.QShortcut( \
         QtGui.QKeySequence(), self, self.ui.edit_stdout.setFocus)
        self.ui.shortcut_variables = QtGui.QShortcut( \
         QtGui.QKeySequence(), self, \
         self.ui.variable_inspector.set_focus())
        self.ui.shortcut_pool = QtGui.QShortcut( \
         QtGui.QKeySequence(), self, \
         self.ui.pool_widget.ui.edit_pool_filter.setFocus)

        # Create the initial experiment, which is the default template.
        self.experiment = experiment.experiment(self, u"New experiment", \
         open(misc.resource(os.path.join(u"templates", \
          u"default.opensesame")), u"r").read())
        self.experiment.build_item_tree()

        # Miscellaneous initialization
        self.restore_state()
        self.update_recent_files()
        self.set_unsaved(False)
        self.init_custom_fonts()
        self.ui.variable_inspector.refresh()

        # Initialize extensions
        self.extension_manager = extension_manager(self)
        self.extension_manager.fire(u'startup')
Example #2
0
    def setupUi(self, opensesame_mainwindow):
        opensesame_mainwindow.setObjectName(_fromUtf8("opensesame_mainwindow"))
        opensesame_mainwindow.resize(1000, 773)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/experiment.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        opensesame_mainwindow.setWindowIcon(icon)
        self.centralwidget = QtGui.QWidget(opensesame_mainwindow)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.MinimumExpanding, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.centralwidget.sizePolicy().hasHeightForWidth())
        self.centralwidget.setSizePolicy(sizePolicy)
        self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
        self.verticalLayout_6 = QtGui.QVBoxLayout(self.centralwidget)
        self.verticalLayout_6.setObjectName(_fromUtf8("verticalLayout_6"))
        self.tabwidget = tab_widget(self.centralwidget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.MinimumExpanding, QtGui.QSizePolicy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.tabwidget.sizePolicy().hasHeightForWidth())
        self.tabwidget.setSizePolicy(sizePolicy)
        self.tabwidget.setTabsClosable(True)
        self.tabwidget.setMovable(True)
        self.tabwidget.setObjectName(_fromUtf8("tabwidget"))
        self.verticalLayout_6.addWidget(self.tabwidget)
        opensesame_mainwindow.setCentralWidget(self.centralwidget)
        self.menubar = QtGui.QMenuBar(opensesame_mainwindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1000, 22))
        self.menubar.setObjectName(_fromUtf8("menubar"))
        self.menu_file = QtGui.QMenu(self.menubar)
        self.menu_file.setObjectName(_fromUtf8("menu_file"))
        self.menu_recent_files = QtGui.QMenu(self.menu_file)
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/recent_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.menu_recent_files.setIcon(icon1)
        self.menu_recent_files.setObjectName(_fromUtf8("menu_recent_files"))
        self.menu_run = QtGui.QMenu(self.menubar)
        self.menu_run.setObjectName(_fromUtf8("menu_run"))
        self.menu_items = QtGui.QMenu(self.menubar)
        self.menu_items.setObjectName(_fromUtf8("menu_items"))
        self.menu_view = QtGui.QMenu(self.menubar)
        self.menu_view.setObjectName(_fromUtf8("menu_view"))
        self.menu_help = QtGui.QMenu(self.menubar)
        self.menu_help.setObjectName(_fromUtf8("menu_help"))
        self.menu_tools = QtGui.QMenu(self.menubar)
        self.menu_tools.setObjectName(_fromUtf8("menu_tools"))
        opensesame_mainwindow.setMenuBar(self.menubar)
        self.statusbar = statusbar(opensesame_mainwindow)
        self.statusbar.setObjectName(_fromUtf8("statusbar"))
        opensesame_mainwindow.setStatusBar(self.statusbar)
        self.dock_overview = QtGui.QDockWidget(opensesame_mainwindow)
        self.dock_overview.setMinimumSize(QtCore.QSize(200, 118))
        self.dock_overview.setFeatures(QtGui.QDockWidget.AllDockWidgetFeatures)
        self.dock_overview.setObjectName(_fromUtf8("dock_overview"))
        self.dock_widget_overview = QtGui.QWidget()
        self.dock_widget_overview.setObjectName(_fromUtf8("dock_widget_overview"))
        self.verticalLayout = QtGui.QVBoxLayout(self.dock_widget_overview)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.itemtree = tree_overview(self.dock_widget_overview)
        self.itemtree.setAcceptDrops(True)
        self.itemtree.setAlternatingRowColors(True)
        self.itemtree.setAutoExpandDelay(4)
        self.itemtree.setAnimated(True)
        self.itemtree.setHeaderHidden(True)
        self.itemtree.setObjectName(_fromUtf8("itemtree"))
        self.verticalLayout.addWidget(self.itemtree)
        self.dock_overview.setWidget(self.dock_widget_overview)
        opensesame_mainwindow.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.dock_overview)
        self.dock_variable_inspector = QtGui.QDockWidget(opensesame_mainwindow)
        self.dock_variable_inspector.setAllowedAreas(QtCore.Qt.AllDockWidgetAreas)
        self.dock_variable_inspector.setObjectName(_fromUtf8("dock_variable_inspector"))
        self.dock_widget_variable_inspector = QtGui.QWidget()
        self.dock_widget_variable_inspector.setObjectName(_fromUtf8("dock_widget_variable_inspector"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.dock_widget_variable_inspector)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.widget_variable_inspector_header_box = QtGui.QWidget(self.dock_widget_variable_inspector)
        self.widget_variable_inspector_header_box.setObjectName(_fromUtf8("widget_variable_inspector_header_box"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout(self.widget_variable_inspector_header_box)
        self.horizontalLayout_3.setSpacing(0)
        self.horizontalLayout_3.setMargin(4)
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.label_variables = QtGui.QLabel(self.widget_variable_inspector_header_box)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_variables.sizePolicy().hasHeightForWidth())
        self.label_variables.setSizePolicy(sizePolicy)
        self.label_variables.setText(_fromUtf8(""))
        self.label_variables.setPixmap(QtGui.QPixmap(_fromUtf8(":/icons/variable_inspector_large.png")))
        self.label_variables.setObjectName(_fromUtf8("label_variables"))
        self.horizontalLayout_3.addWidget(self.label_variables)
        self.label_3 = QtGui.QLabel(self.widget_variable_inspector_header_box)
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(True)
        font.setWeight(75)
        self.label_3.setFont(font)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.horizontalLayout_3.addWidget(self.label_3)
        self.verticalLayout_2.addWidget(self.widget_variable_inspector_header_box)
        self.widget = QtGui.QWidget(self.dock_widget_variable_inspector)
        self.widget.setObjectName(_fromUtf8("widget"))
        self.horizontalLayout_2 = QtGui.QHBoxLayout(self.widget)
        self.horizontalLayout_2.setSpacing(2)
        self.horizontalLayout_2.setMargin(0)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.label_variables_search = QtGui.QLabel(self.widget)
        self.label_variables_search.setText(_fromUtf8(""))
        self.label_variables_search.setObjectName(_fromUtf8("label_variables_search"))
        self.horizontalLayout_2.addWidget(self.label_variables_search)
        self.edit_variable_filter = QtGui.QLineEdit(self.widget)
        self.edit_variable_filter.setObjectName(_fromUtf8("edit_variable_filter"))
        self.horizontalLayout_2.addWidget(self.edit_variable_filter)
        self.button_variables_clear = QtGui.QPushButton(self.widget)
        self.button_variables_clear.setText(_fromUtf8(""))
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/clear.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.button_variables_clear.setIcon(icon2)
        self.button_variables_clear.setIconSize(QtCore.QSize(16, 16))
        self.button_variables_clear.setObjectName(_fromUtf8("button_variables_clear"))
        self.horizontalLayout_2.addWidget(self.button_variables_clear)
        self.button_help_variables = QtGui.QPushButton(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.button_help_variables.sizePolicy().hasHeightForWidth())
        self.button_help_variables.setSizePolicy(sizePolicy)
        self.button_help_variables.setText(_fromUtf8(""))
        icon3 = QtGui.QIcon()
        icon3.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/help.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.button_help_variables.setIcon(icon3)
        self.button_help_variables.setIconSize(QtCore.QSize(16, 16))
        self.button_help_variables.setFlat(False)
        self.button_help_variables.setObjectName(_fromUtf8("button_help_variables"))
        self.horizontalLayout_2.addWidget(self.button_help_variables)
        self.verticalLayout_2.addWidget(self.widget)
        self.table_variables = variable_inspector(self.dock_widget_variable_inspector)
        self.table_variables.setEditTriggers(QtGui.QAbstractItemView.NoEditTriggers)
        self.table_variables.setAlternatingRowColors(True)
        self.table_variables.setShowGrid(True)
        self.table_variables.setGridStyle(QtCore.Qt.DotLine)
        self.table_variables.setObjectName(_fromUtf8("table_variables"))
        self.table_variables.setColumnCount(3)
        self.table_variables.setRowCount(0)
        item = QtGui.QTableWidgetItem()
        self.table_variables.setHorizontalHeaderItem(0, item)
        item = QtGui.QTableWidgetItem()
        self.table_variables.setHorizontalHeaderItem(1, item)
        item = QtGui.QTableWidgetItem()
        self.table_variables.setHorizontalHeaderItem(2, item)
        self.table_variables.horizontalHeader().setSortIndicatorShown(True)
        self.table_variables.horizontalHeader().setStretchLastSection(True)
        self.table_variables.verticalHeader().setVisible(False)
        self.table_variables.verticalHeader().setCascadingSectionResizes(True)
        self.verticalLayout_2.addWidget(self.table_variables)
        self.dock_variable_inspector.setWidget(self.dock_widget_variable_inspector)
        opensesame_mainwindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.dock_variable_inspector)
        self.dock_pool = QtGui.QDockWidget(opensesame_mainwindow)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum, QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dock_pool.sizePolicy().hasHeightForWidth())
        self.dock_pool.setSizePolicy(sizePolicy)
        self.dock_pool.setObjectName(_fromUtf8("dock_pool"))
        self.dock_pool_widget = QtGui.QWidget()
        self.dock_pool_widget.setObjectName(_fromUtf8("dock_pool_widget"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.dock_pool_widget)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.dock_pool.setWidget(self.dock_pool_widget)
        opensesame_mainwindow.addDockWidget(QtCore.Qt.DockWidgetArea(2), self.dock_pool)
        self.dock_stdout = QtGui.QDockWidget(opensesame_mainwindow)
        self.dock_stdout.setFeatures(QtGui.QDockWidget.AllDockWidgetFeatures)
        self.dock_stdout.setObjectName(_fromUtf8("dock_stdout"))
        self.dockWidgetContents_3 = QtGui.QWidget()
        self.dockWidgetContents_3.setObjectName(_fromUtf8("dockWidgetContents_3"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.dockWidgetContents_3)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.widget_debug_window_header_box = QtGui.QWidget(self.dockWidgetContents_3)
        self.widget_debug_window_header_box.setObjectName(_fromUtf8("widget_debug_window_header_box"))
        self.horizontalLayout_5 = QtGui.QHBoxLayout(self.widget_debug_window_header_box)
        self.horizontalLayout_5.setSpacing(0)
        self.horizontalLayout_5.setMargin(4)
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.label_stdout = QtGui.QLabel(self.widget_debug_window_header_box)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_stdout.sizePolicy().hasHeightForWidth())
        self.label_stdout.setSizePolicy(sizePolicy)
        self.label_stdout.setText(_fromUtf8(""))
        self.label_stdout.setPixmap(QtGui.QPixmap(_fromUtf8(":/icons/stdout_large.png")))
        self.label_stdout.setObjectName(_fromUtf8("label_stdout"))
        self.horizontalLayout_5.addWidget(self.label_stdout)
        self.label_4 = QtGui.QLabel(self.widget_debug_window_header_box)
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(True)
        font.setWeight(75)
        self.label_4.setFont(font)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.horizontalLayout_5.addWidget(self.label_4)
        self.verticalLayout_4.addWidget(self.widget_debug_window_header_box)
        self.widget_5 = QtGui.QWidget(self.dockWidgetContents_3)
        self.widget_5.setObjectName(_fromUtf8("widget_5"))
        self.horizontalLayout_6 = QtGui.QHBoxLayout(self.widget_5)
        self.horizontalLayout_6.setMargin(0)
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.edit_stdout = console(self.widget_5)
        self.edit_stdout.setReadOnly(False)
        self.edit_stdout.setObjectName(_fromUtf8("edit_stdout"))
        self.horizontalLayout_6.addWidget(self.edit_stdout)
        self.widget_3 = QtGui.QWidget(self.widget_5)
        self.widget_3.setObjectName(_fromUtf8("widget_3"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.widget_3)
        self.verticalLayout_5.setSpacing(2)
        self.verticalLayout_5.setMargin(0)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
        self.button_help_stdout = QtGui.QPushButton(self.widget_3)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.button_help_stdout.sizePolicy().hasHeightForWidth())
        self.button_help_stdout.setSizePolicy(sizePolicy)
        self.button_help_stdout.setText(_fromUtf8(""))
        self.button_help_stdout.setIcon(icon3)
        self.button_help_stdout.setIconSize(QtCore.QSize(16, 16))
        self.button_help_stdout.setFlat(False)
        self.button_help_stdout.setObjectName(_fromUtf8("button_help_stdout"))
        self.verticalLayout_5.addWidget(self.button_help_stdout)
        self.button_clear_stdout = QtGui.QPushButton(self.widget_3)
        self.button_clear_stdout.setText(_fromUtf8(""))
        self.button_clear_stdout.setIcon(icon2)
        self.button_clear_stdout.setIconSize(QtCore.QSize(16, 16))
        self.button_clear_stdout.setObjectName(_fromUtf8("button_clear_stdout"))
        self.verticalLayout_5.addWidget(self.button_clear_stdout)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_5.addItem(spacerItem)
        self.horizontalLayout_6.addWidget(self.widget_3)
        self.verticalLayout_4.addWidget(self.widget_5)
        self.dock_stdout.setWidget(self.dockWidgetContents_3)
        opensesame_mainwindow.addDockWidget(QtCore.Qt.DockWidgetArea(8), self.dock_stdout)
        self.toolbar_main = QtGui.QToolBar(opensesame_mainwindow)
        self.toolbar_main.setIconSize(QtCore.QSize(32, 32))
        self.toolbar_main.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly)
        self.toolbar_main.setFloatable(True)
        self.toolbar_main.setObjectName(_fromUtf8("toolbar_main"))
        opensesame_mainwindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolbar_main)
        self.toolbar_items = toolbar_items(opensesame_mainwindow)
        self.toolbar_items.setObjectName(_fromUtf8("toolbar_items"))
        opensesame_mainwindow.addToolBar(QtCore.Qt.LeftToolBarArea, self.toolbar_items)
        self.action_open = QtGui.QAction(opensesame_mainwindow)
        icon4 = QtGui.QIcon()
        icon4.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/open_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_open.setIcon(icon4)
        self.action_open.setObjectName(_fromUtf8("action_open"))
        self.action_save = QtGui.QAction(opensesame_mainwindow)
        icon5 = QtGui.QIcon()
        icon5.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/save_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_save.setIcon(icon5)
        self.action_save.setObjectName(_fromUtf8("action_save"))
        self.action_save_as = QtGui.QAction(opensesame_mainwindow)
        icon6 = QtGui.QIcon()
        icon6.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/saveas_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_save_as.setIcon(icon6)
        self.action_save_as.setObjectName(_fromUtf8("action_save_as"))
        self.action_quit = QtGui.QAction(opensesame_mainwindow)
        icon7 = QtGui.QIcon()
        icon7.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/quit_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_quit.setIcon(icon7)
        self.action_quit.setObjectName(_fromUtf8("action_quit"))
        self.action_run = QtGui.QAction(opensesame_mainwindow)
        self.action_run.setObjectName(_fromUtf8("action_run"))
        self.action_new = QtGui.QAction(opensesame_mainwindow)
        icon8 = QtGui.QIcon()
        icon8.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/new_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_new.setIcon(icon8)
        self.action_new.setObjectName(_fromUtf8("action_new"))
        self.action_add_sequence = QtGui.QAction(opensesame_mainwindow)
        icon9 = QtGui.QIcon()
        icon9.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/sequence_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_sequence.setIcon(icon9)
        self.action_add_sequence.setObjectName(_fromUtf8("action_add_sequence"))
        self.action_add_sketchpad = QtGui.QAction(opensesame_mainwindow)
        icon10 = QtGui.QIcon()
        icon10.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/sketchpad_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_sketchpad.setIcon(icon10)
        self.action_add_sketchpad.setObjectName(_fromUtf8("action_add_sketchpad"))
        self.action_add_keyboard_response = QtGui.QAction(opensesame_mainwindow)
        icon11 = QtGui.QIcon()
        icon11.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/keyboard_response_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_keyboard_response.setIcon(icon11)
        self.action_add_keyboard_response.setObjectName(_fromUtf8("action_add_keyboard_response"))
        self.action_add_logger = QtGui.QAction(opensesame_mainwindow)
        icon12 = QtGui.QIcon()
        icon12.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/logger_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_logger.setIcon(icon12)
        self.action_add_logger.setObjectName(_fromUtf8("action_add_logger"))
        self.action_add_loop = QtGui.QAction(opensesame_mainwindow)
        icon13 = QtGui.QIcon()
        icon13.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/loop_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_loop.setIcon(icon13)
        self.action_add_loop.setObjectName(_fromUtf8("action_add_loop"))
        self.action_add_feedback = QtGui.QAction(opensesame_mainwindow)
        icon14 = QtGui.QIcon()
        icon14.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/feedback_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_feedback.setIcon(icon14)
        self.action_add_feedback.setObjectName(_fromUtf8("action_add_feedback"))
        self.action_add_inline_script = QtGui.QAction(opensesame_mainwindow)
        icon15 = QtGui.QIcon()
        icon15.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/inline_script_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_inline_script.setIcon(icon15)
        self.action_add_inline_script.setObjectName(_fromUtf8("action_add_inline_script"))
        self.action_close_all_tabs = QtGui.QAction(opensesame_mainwindow)
        icon16 = QtGui.QIcon()
        icon16.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/closeothertabs_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_close_all_tabs.setIcon(icon16)
        self.action_close_all_tabs.setObjectName(_fromUtf8("action_close_all_tabs"))
        self.action_close_other_tabs = QtGui.QAction(opensesame_mainwindow)
        icon17 = QtGui.QIcon()
        icon17.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/close_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_close_other_tabs.setIcon(icon17)
        self.action_close_other_tabs.setObjectName(_fromUtf8("action_close_other_tabs"))
        self.action_help = QtGui.QAction(opensesame_mainwindow)
        icon18 = QtGui.QIcon()
        icon18.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/help_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_help.setIcon(icon18)
        self.action_help.setObjectName(_fromUtf8("action_help"))
        self.action_about = QtGui.QAction(opensesame_mainwindow)
        icon19 = QtGui.QIcon()
        icon19.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/about_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_about.setIcon(icon19)
        self.action_about.setObjectName(_fromUtf8("action_about"))
        self.action_add_mouse_response = QtGui.QAction(opensesame_mainwindow)
        icon20 = QtGui.QIcon()
        icon20.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/mouse_response_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_mouse_response.setIcon(icon20)
        self.action_add_mouse_response.setObjectName(_fromUtf8("action_add_mouse_response"))
        self.action_run_in_window = QtGui.QAction(opensesame_mainwindow)
        self.action_run_in_window.setObjectName(_fromUtf8("action_run_in_window"))
        self.action_check_for_update = QtGui.QAction(opensesame_mainwindow)
        icon21 = QtGui.QIcon()
        icon21.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/update_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_check_for_update.setIcon(icon21)
        self.action_check_for_update.setObjectName(_fromUtf8("action_check_for_update"))
        self.action_show_variable_inspector = QtGui.QAction(opensesame_mainwindow)
        self.action_show_variable_inspector.setCheckable(True)
        icon22 = QtGui.QIcon()
        icon22.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/variable_inspector_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_show_variable_inspector.setIcon(icon22)
        self.action_show_variable_inspector.setObjectName(_fromUtf8("action_show_variable_inspector"))
        self.action_add_sampler = QtGui.QAction(opensesame_mainwindow)
        icon23 = QtGui.QIcon()
        icon23.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/sampler_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_sampler.setIcon(icon23)
        self.action_add_sampler.setObjectName(_fromUtf8("action_add_sampler"))
        self.action_add_synth = QtGui.QAction(opensesame_mainwindow)
        icon24 = QtGui.QIcon()
        icon24.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/synth_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_synth.setIcon(icon24)
        self.action_add_synth.setObjectName(_fromUtf8("action_add_synth"))
        self.action_show_pool = QtGui.QAction(opensesame_mainwindow)
        self.action_show_pool.setCheckable(True)
        icon25 = QtGui.QIcon()
        icon25.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/pool_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_show_pool.setIcon(icon25)
        self.action_show_pool.setObjectName(_fromUtf8("action_show_pool"))
        self.action_show_stdout = QtGui.QAction(opensesame_mainwindow)
        self.action_show_stdout.setCheckable(True)
        icon26 = QtGui.QIcon()
        icon26.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/stdout_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_show_stdout.setIcon(icon26)
        self.action_show_stdout.setObjectName(_fromUtf8("action_show_stdout"))
        self.action_enable_auto_response = QtGui.QAction(opensesame_mainwindow)
        self.action_enable_auto_response.setCheckable(True)
        self.action_enable_auto_response.setObjectName(_fromUtf8("action_enable_auto_response"))
        self.actionPlugins = QtGui.QAction(opensesame_mainwindow)
        self.actionPlugins.setEnabled(False)
        self.actionPlugins.setObjectName(_fromUtf8("actionPlugins"))
        self.action_show_random_tip = QtGui.QAction(opensesame_mainwindow)
        self.action_show_random_tip.setIcon(icon19)
        self.action_show_random_tip.setObjectName(_fromUtf8("action_show_random_tip"))
        self.action_open_autosave_folder = QtGui.QAction(opensesame_mainwindow)
        self.action_open_autosave_folder.setIcon(icon25)
        self.action_open_autosave_folder.setObjectName(_fromUtf8("action_open_autosave_folder"))
        self.action_submit_a_bug = QtGui.QAction(opensesame_mainwindow)
        icon27 = QtGui.QIcon()
        icon27.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/submit_bug.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_submit_a_bug.setIcon(icon27)
        self.action_submit_a_bug.setObjectName(_fromUtf8("action_submit_a_bug"))
        self.action_contribute = QtGui.QAction(opensesame_mainwindow)
        icon28 = QtGui.QIcon()
        icon28.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/contribute.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_contribute.setIcon(icon28)
        self.action_contribute.setObjectName(_fromUtf8("action_contribute"))
        self.action_preferences = QtGui.QAction(opensesame_mainwindow)
        icon29 = QtGui.QIcon()
        icon29.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/options_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_preferences.setIcon(icon29)
        self.action_preferences.setObjectName(_fromUtf8("action_preferences"))
        self.actionDummy = QtGui.QAction(opensesame_mainwindow)
        self.actionDummy.setObjectName(_fromUtf8("actionDummy"))
        self.action_show_overview = QtGui.QAction(opensesame_mainwindow)
        self.action_show_overview.setCheckable(True)
        self.action_show_overview.setObjectName(_fromUtf8("action_show_overview"))
        self.action_onetabmode = QtGui.QAction(opensesame_mainwindow)
        self.action_onetabmode.setCheckable(True)
        icon30 = QtGui.QIcon()
        icon30.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/onetabmode_large.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_onetabmode.setIcon(icon30)
        self.action_onetabmode.setObjectName(_fromUtf8("action_onetabmode"))
        self.action_compact_toolbar = QtGui.QAction(opensesame_mainwindow)
        self.action_compact_toolbar.setCheckable(True)
        self.action_compact_toolbar.setObjectName(_fromUtf8("action_compact_toolbar"))
        self.action_online_documentation = QtGui.QAction(opensesame_mainwindow)
        self.action_online_documentation.setObjectName(_fromUtf8("action_online_documentation"))
        self.action_online_forum = QtGui.QAction(opensesame_mainwindow)
        self.action_online_forum.setObjectName(_fromUtf8("action_online_forum"))
        self.action_run_quick = QtGui.QAction(opensesame_mainwindow)
        self.action_run_quick.setObjectName(_fromUtf8("action_run_quick"))
        self.menu_recent_files.addAction(self.actionDummy)
        self.menu_file.addAction(self.action_new)
        self.menu_file.addAction(self.action_open)
        self.menu_file.addAction(self.action_save)
        self.menu_file.addAction(self.action_save_as)
        self.menu_file.addSeparator()
        self.menu_file.addAction(self.menu_recent_files.menuAction())
        self.menu_file.addSeparator()
        self.menu_file.addAction(self.action_quit)
        self.menu_run.addAction(self.action_run)
        self.menu_run.addAction(self.action_run_in_window)
        self.menu_run.addAction(self.action_run_quick)
        self.menu_run.addSeparator()
        self.menu_run.addAction(self.action_enable_auto_response)
        self.menu_items.addAction(self.action_add_loop)
        self.menu_items.addAction(self.action_add_sequence)
        self.menu_items.addAction(self.action_add_sketchpad)
        self.menu_items.addAction(self.action_add_feedback)
        self.menu_items.addAction(self.action_add_sampler)
        self.menu_items.addAction(self.action_add_synth)
        self.menu_items.addAction(self.action_add_keyboard_response)
        self.menu_items.addAction(self.action_add_mouse_response)
        self.menu_items.addAction(self.action_add_logger)
        self.menu_items.addAction(self.action_add_inline_script)
        self.menu_items.addSeparator()
        self.menu_items.addAction(self.actionPlugins)
        self.menu_view.addAction(self.action_close_all_tabs)
        self.menu_view.addAction(self.action_close_other_tabs)
        self.menu_view.addAction(self.action_onetabmode)
        self.menu_view.addSeparator()
        self.menu_view.addAction(self.action_show_overview)
        self.menu_view.addAction(self.action_show_variable_inspector)
        self.menu_view.addAction(self.action_show_pool)
        self.menu_view.addAction(self.action_show_stdout)
        self.menu_help.addAction(self.action_online_documentation)
        self.menu_help.addAction(self.action_help)
        self.menu_help.addSeparator()
        self.menu_help.addAction(self.action_about)
        self.menu_tools.addAction(self.action_check_for_update)
        self.menu_tools.addAction(self.action_open_autosave_folder)
        self.menu_tools.addSeparator()
        self.menu_tools.addAction(self.action_preferences)
        self.menubar.addAction(self.menu_file.menuAction())
        self.menubar.addAction(self.menu_run.menuAction())
        self.menubar.addAction(self.menu_items.menuAction())
        self.menubar.addAction(self.menu_view.menuAction())
        self.menubar.addAction(self.menu_tools.menuAction())
        self.menubar.addAction(self.menu_help.menuAction())
        self.toolbar_main.addAction(self.action_new)
        self.toolbar_main.addAction(self.action_open)
        self.toolbar_main.addAction(self.action_save)
        self.toolbar_main.addSeparator()
        self.toolbar_main.addAction(self.action_run)
        self.toolbar_main.addAction(self.action_run_in_window)
        self.toolbar_main.addAction(self.action_run_quick)
        self.toolbar_main.addSeparator()
        self.toolbar_main.addAction(self.action_close_other_tabs)
        self.toolbar_main.addAction(self.action_onetabmode)
        self.toolbar_main.addSeparator()
        self.toolbar_main.addAction(self.action_show_pool)
        self.toolbar_main.addAction(self.action_show_variable_inspector)
        self.toolbar_main.addAction(self.action_show_stdout)
        self.toolbar_main.addSeparator()
        self.toolbar_main.addAction(self.action_help)
        self.toolbar_main.addAction(self.action_online_documentation)

        self.retranslateUi(opensesame_mainwindow)
        self.tabwidget.setCurrentIndex(-1)
        QtCore.QObject.connect(self.button_variables_clear, QtCore.SIGNAL(_fromUtf8("clicked()")), self.edit_variable_filter.clear)
        QtCore.QObject.connect(self.button_clear_stdout, QtCore.SIGNAL(_fromUtf8("clicked()")), self.edit_stdout.clear)
        QtCore.QMetaObject.connectSlotsByName(opensesame_mainwindow)
Example #3
0
	def resume_init(self):

		"""Resume GUI initialization"""

		from libopensesame import misc
		from libqtopensesame.misc import theme
		from libqtopensesame.extensions import extension_manager
		import platform
		import random

		# Set some initial variables
		self.current_path = None
		self.version = misc.version
		self.codename = misc.codename
		self.lock_refresh = False
		self.unsaved_changes = False

		# Make sure that QProgEdit doesn't complain about some standard names
		from QProgEdit import validate
		validate.addPythonBuiltins([u'exp', u'win', u'self'])

		# Initialize random number generator
		random.seed()

		# Check the filesystem encoding for debugging purposes
		debug.msg(u'filesystem encoding: %s' % misc.filesystem_encoding())

		# Parse the command line
		self.parse_command_line()

		# Restore the configuration
		self.restore_config()

		# Setup the UI
		self.load_ui(u'misc.main_window')
		self.ui.itemtree.setup(self)
		self.ui.tabwidget.main_window = self

		# Load a theme
		self.theme = theme.theme(self, self.options._theme)

		# Determine the home folder
		self.home_folder = libopensesame.misc.home_folder()

		# Create .opensesame folder if it doesn't exist yet
		if not os.path.exists(os.path.join(self.home_folder, u".opensesame")):
			os.mkdir(os.path.join(self.home_folder, u".opensesame"))

		# Set the filter-string for opening and saving files
		self.file_type_filter = \
			u"OpenSesame files (*.opensesame.tar.gz *.opensesame);;OpenSesame script and file pool (*.opensesame.tar.gz);;OpenSesame script (*.opensesame)"

		# Set the window message
		self.window_message(_(u"Welcome to OpenSesame %s") % self.version)

		# Set the window icon
		self.setWindowIcon(self.theme.qicon(u"opensesame"))

		# Make the connections
		self.ui.itemtree.structure_change.connect(self.update_overview_area)
		self.ui.action_quit.triggered.connect(self.close)
		self.ui.action_new.triggered.connect(self.new_file)
		self.ui.action_open.triggered.connect(self.open_file)
		self.ui.action_save.triggered.connect(self.save_file)
		self.ui.action_save_as.triggered.connect(self.save_file_as)
		self.ui.action_run.triggered.connect(self.run_experiment)
		self.ui.action_run_in_window.triggered.connect(
			self.run_experiment_in_window)
		self.ui.action_run_quick.triggered.connect(self.run_quick)
		self.ui.action_enable_auto_response.triggered.connect(
			self.set_auto_response)
		self.ui.action_close_current_tab.triggered.connect(
			self.ui.tabwidget.close_current)
		self.ui.action_close_all_tabs.triggered.connect(
			self.ui.tabwidget.close_all)
		self.ui.action_close_other_tabs.triggered.connect(
			self.ui.tabwidget.close_other)
		self.ui.action_onetabmode.triggered.connect(
			self.ui.tabwidget.toggle_onetabmode)
		self.ui.action_show_overview.triggered.connect(self.toggle_overview)
		self.ui.action_show_variable_inspector.triggered.connect(
			self.refresh_variable_inspector)
		self.ui.action_show_pool.triggered.connect(self.refresh_pool)
		self.ui.action_show_stdout.triggered.connect(self.refresh_stdout)
		self.ui.action_preferences.triggered.connect(
			self.ui.tabwidget.open_preferences)
		self.ui.button_help_stdout.clicked.connect(
			self.ui.tabwidget.open_stdout_help)

		# Setup the overview area
		self.ui.dock_overview.show()
		self.ui.dock_overview.visibilityChanged.connect( \
			self.ui.action_show_overview.setChecked)

		# Setup the variable inspector
		from libqtopensesame.widgets.variable_inspector import \
			variable_inspector
		self.ui.variable_inspector = variable_inspector(self)
		self.ui.dock_variable_inspector.hide()
		self.ui.dock_variable_inspector.visibilityChanged.connect(
			self.ui.action_show_variable_inspector.setChecked)
		self.ui.dock_variable_inspector.setWidget(self.ui.variable_inspector)

		# Setup the file pool
		from libqtopensesame.widgets.pool_widget import pool_widget
		self.ui.dock_pool.hide()
		self.ui.dock_pool.visibilityChanged.connect(
			self.ui.action_show_pool.setChecked)
		self.ui.pool_widget = pool_widget(self)
		self.ui.dock_pool.setWidget(self.ui.pool_widget)

		# Uncheck the debug window button on debug window close
		self.ui.dock_stdout.visibilityChanged.connect( \
			self.ui.action_show_stdout.setChecked)

		# Initialize keyboard shortcuts
		self.ui.shortcut_itemtree = QtGui.QShortcut( \
			QtGui.QKeySequence(), self, self.ui.itemtree.setFocus)
		self.ui.shortcut_tabwidget = QtGui.QShortcut( \
			QtGui.QKeySequence(), self, self.ui.tabwidget.setFocus)
		self.ui.shortcut_stdout = QtGui.QShortcut( \
			QtGui.QKeySequence(), self, self.ui.edit_stdout.setFocus)
		self.ui.shortcut_variables = QtGui.QShortcut( \
			QtGui.QKeySequence(), self, \
			self.ui.variable_inspector.set_focus())
		self.ui.shortcut_pool = QtGui.QShortcut( \
			QtGui.QKeySequence(), self, \
			self.ui.pool_widget.ui.edit_pool_filter.setFocus)

		# Create the initial experiment, which is the default template.
		self.experiment = experiment.experiment(self, u"New experiment", \
			open(misc.resource(os.path.join(u"templates", \
				u"default.opensesame")), u"r").read())
		self.experiment.build_item_tree()

		# Miscellaneous initialization
		self.restore_state()
		self.update_recent_files()
		self.set_unsaved(False)		
		self.init_custom_fonts()

		# Initialize extensions
		self.extension_manager = extension_manager(self)
		self.extension_manager.fire(u'startup')
Example #4
0
    def setupUi(self, opensesame_mainwindow):
        opensesame_mainwindow.setObjectName(_fromUtf8("opensesame_mainwindow"))
        opensesame_mainwindow.resize(1000, 773)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/experiment.png")),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        opensesame_mainwindow.setWindowIcon(icon)
        self.centralwidget = QtGui.QWidget(opensesame_mainwindow)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.MinimumExpanding,
                                       QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.centralwidget.sizePolicy().hasHeightForWidth())
        self.centralwidget.setSizePolicy(sizePolicy)
        self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
        self.verticalLayout_6 = QtGui.QVBoxLayout(self.centralwidget)
        self.verticalLayout_6.setObjectName(_fromUtf8("verticalLayout_6"))
        self.tabwidget = tab_widget(self.centralwidget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.MinimumExpanding,
                                       QtGui.QSizePolicy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.tabwidget.sizePolicy().hasHeightForWidth())
        self.tabwidget.setSizePolicy(sizePolicy)
        self.tabwidget.setTabsClosable(True)
        self.tabwidget.setMovable(True)
        self.tabwidget.setObjectName(_fromUtf8("tabwidget"))
        self.verticalLayout_6.addWidget(self.tabwidget)
        opensesame_mainwindow.setCentralWidget(self.centralwidget)
        self.menubar = QtGui.QMenuBar(opensesame_mainwindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1000, 22))
        self.menubar.setObjectName(_fromUtf8("menubar"))
        self.menu_file = QtGui.QMenu(self.menubar)
        self.menu_file.setObjectName(_fromUtf8("menu_file"))
        self.menu_recent_files = QtGui.QMenu(self.menu_file)
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/recent_large.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.menu_recent_files.setIcon(icon1)
        self.menu_recent_files.setObjectName(_fromUtf8("menu_recent_files"))
        self.menu_run = QtGui.QMenu(self.menubar)
        self.menu_run.setObjectName(_fromUtf8("menu_run"))
        self.menu_items = QtGui.QMenu(self.menubar)
        self.menu_items.setObjectName(_fromUtf8("menu_items"))
        self.menu_view = QtGui.QMenu(self.menubar)
        self.menu_view.setObjectName(_fromUtf8("menu_view"))
        self.menu_help = QtGui.QMenu(self.menubar)
        self.menu_help.setObjectName(_fromUtf8("menu_help"))
        self.menu_tools = QtGui.QMenu(self.menubar)
        self.menu_tools.setObjectName(_fromUtf8("menu_tools"))
        opensesame_mainwindow.setMenuBar(self.menubar)
        self.statusbar = statusbar(opensesame_mainwindow)
        self.statusbar.setObjectName(_fromUtf8("statusbar"))
        opensesame_mainwindow.setStatusBar(self.statusbar)
        self.dock_overview = QtGui.QDockWidget(opensesame_mainwindow)
        self.dock_overview.setMinimumSize(QtCore.QSize(200, 118))
        self.dock_overview.setFeatures(QtGui.QDockWidget.AllDockWidgetFeatures)
        self.dock_overview.setObjectName(_fromUtf8("dock_overview"))
        self.dock_widget_overview = QtGui.QWidget()
        self.dock_widget_overview.setObjectName(
            _fromUtf8("dock_widget_overview"))
        self.verticalLayout = QtGui.QVBoxLayout(self.dock_widget_overview)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.itemtree = tree_overview(self.dock_widget_overview)
        self.itemtree.setAcceptDrops(True)
        self.itemtree.setAlternatingRowColors(True)
        self.itemtree.setAutoExpandDelay(4)
        self.itemtree.setAnimated(True)
        self.itemtree.setHeaderHidden(True)
        self.itemtree.setObjectName(_fromUtf8("itemtree"))
        self.verticalLayout.addWidget(self.itemtree)
        self.dock_overview.setWidget(self.dock_widget_overview)
        opensesame_mainwindow.addDockWidget(QtCore.Qt.DockWidgetArea(1),
                                            self.dock_overview)
        self.dock_variable_inspector = QtGui.QDockWidget(opensesame_mainwindow)
        self.dock_variable_inspector.setAllowedAreas(
            QtCore.Qt.AllDockWidgetAreas)
        self.dock_variable_inspector.setObjectName(
            _fromUtf8("dock_variable_inspector"))
        self.dock_widget_variable_inspector = QtGui.QWidget()
        self.dock_widget_variable_inspector.setObjectName(
            _fromUtf8("dock_widget_variable_inspector"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(
            self.dock_widget_variable_inspector)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.widget_variable_inspector_header_box = QtGui.QWidget(
            self.dock_widget_variable_inspector)
        self.widget_variable_inspector_header_box.setObjectName(
            _fromUtf8("widget_variable_inspector_header_box"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout(
            self.widget_variable_inspector_header_box)
        self.horizontalLayout_3.setSpacing(0)
        self.horizontalLayout_3.setMargin(4)
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.label_variables = QtGui.QLabel(
            self.widget_variable_inspector_header_box)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_variables.sizePolicy().hasHeightForWidth())
        self.label_variables.setSizePolicy(sizePolicy)
        self.label_variables.setText(_fromUtf8(""))
        self.label_variables.setPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/variable_inspector_large.png")))
        self.label_variables.setObjectName(_fromUtf8("label_variables"))
        self.horizontalLayout_3.addWidget(self.label_variables)
        self.label_3 = QtGui.QLabel(self.widget_variable_inspector_header_box)
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(True)
        font.setWeight(75)
        self.label_3.setFont(font)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.horizontalLayout_3.addWidget(self.label_3)
        self.verticalLayout_2.addWidget(
            self.widget_variable_inspector_header_box)
        self.widget = QtGui.QWidget(self.dock_widget_variable_inspector)
        self.widget.setObjectName(_fromUtf8("widget"))
        self.horizontalLayout_2 = QtGui.QHBoxLayout(self.widget)
        self.horizontalLayout_2.setSpacing(2)
        self.horizontalLayout_2.setMargin(0)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.label_variables_search = QtGui.QLabel(self.widget)
        self.label_variables_search.setText(_fromUtf8(""))
        self.label_variables_search.setObjectName(
            _fromUtf8("label_variables_search"))
        self.horizontalLayout_2.addWidget(self.label_variables_search)
        self.edit_variable_filter = QtGui.QLineEdit(self.widget)
        self.edit_variable_filter.setObjectName(
            _fromUtf8("edit_variable_filter"))
        self.horizontalLayout_2.addWidget(self.edit_variable_filter)
        self.button_variables_clear = QtGui.QPushButton(self.widget)
        self.button_variables_clear.setText(_fromUtf8(""))
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/clear.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.button_variables_clear.setIcon(icon2)
        self.button_variables_clear.setIconSize(QtCore.QSize(16, 16))
        self.button_variables_clear.setObjectName(
            _fromUtf8("button_variables_clear"))
        self.horizontalLayout_2.addWidget(self.button_variables_clear)
        self.button_help_variables = QtGui.QPushButton(self.widget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.button_help_variables.sizePolicy().hasHeightForWidth())
        self.button_help_variables.setSizePolicy(sizePolicy)
        self.button_help_variables.setText(_fromUtf8(""))
        icon3 = QtGui.QIcon()
        icon3.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/help.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.button_help_variables.setIcon(icon3)
        self.button_help_variables.setIconSize(QtCore.QSize(16, 16))
        self.button_help_variables.setFlat(False)
        self.button_help_variables.setObjectName(
            _fromUtf8("button_help_variables"))
        self.horizontalLayout_2.addWidget(self.button_help_variables)
        self.verticalLayout_2.addWidget(self.widget)
        self.table_variables = variable_inspector(
            self.dock_widget_variable_inspector)
        self.table_variables.setEditTriggers(
            QtGui.QAbstractItemView.NoEditTriggers)
        self.table_variables.setAlternatingRowColors(True)
        self.table_variables.setShowGrid(True)
        self.table_variables.setGridStyle(QtCore.Qt.DotLine)
        self.table_variables.setObjectName(_fromUtf8("table_variables"))
        self.table_variables.setColumnCount(3)
        self.table_variables.setRowCount(0)
        item = QtGui.QTableWidgetItem()
        self.table_variables.setHorizontalHeaderItem(0, item)
        item = QtGui.QTableWidgetItem()
        self.table_variables.setHorizontalHeaderItem(1, item)
        item = QtGui.QTableWidgetItem()
        self.table_variables.setHorizontalHeaderItem(2, item)
        self.table_variables.horizontalHeader().setSortIndicatorShown(True)
        self.table_variables.horizontalHeader().setStretchLastSection(True)
        self.table_variables.verticalHeader().setVisible(False)
        self.table_variables.verticalHeader().setCascadingSectionResizes(True)
        self.verticalLayout_2.addWidget(self.table_variables)
        self.dock_variable_inspector.setWidget(
            self.dock_widget_variable_inspector)
        opensesame_mainwindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                            self.dock_variable_inspector)
        self.dock_pool = QtGui.QDockWidget(opensesame_mainwindow)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum,
                                       QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.dock_pool.sizePolicy().hasHeightForWidth())
        self.dock_pool.setSizePolicy(sizePolicy)
        self.dock_pool.setObjectName(_fromUtf8("dock_pool"))
        self.dock_pool_widget = QtGui.QWidget()
        self.dock_pool_widget.setObjectName(_fromUtf8("dock_pool_widget"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.dock_pool_widget)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.dock_pool.setWidget(self.dock_pool_widget)
        opensesame_mainwindow.addDockWidget(QtCore.Qt.DockWidgetArea(2),
                                            self.dock_pool)
        self.dock_stdout = QtGui.QDockWidget(opensesame_mainwindow)
        self.dock_stdout.setFeatures(QtGui.QDockWidget.AllDockWidgetFeatures)
        self.dock_stdout.setObjectName(_fromUtf8("dock_stdout"))
        self.dockWidgetContents_3 = QtGui.QWidget()
        self.dockWidgetContents_3.setObjectName(
            _fromUtf8("dockWidgetContents_3"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.dockWidgetContents_3)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.widget_debug_window_header_box = QtGui.QWidget(
            self.dockWidgetContents_3)
        self.widget_debug_window_header_box.setObjectName(
            _fromUtf8("widget_debug_window_header_box"))
        self.horizontalLayout_5 = QtGui.QHBoxLayout(
            self.widget_debug_window_header_box)
        self.horizontalLayout_5.setSpacing(0)
        self.horizontalLayout_5.setMargin(4)
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.label_stdout = QtGui.QLabel(self.widget_debug_window_header_box)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_stdout.sizePolicy().hasHeightForWidth())
        self.label_stdout.setSizePolicy(sizePolicy)
        self.label_stdout.setText(_fromUtf8(""))
        self.label_stdout.setPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/stdout_large.png")))
        self.label_stdout.setObjectName(_fromUtf8("label_stdout"))
        self.horizontalLayout_5.addWidget(self.label_stdout)
        self.label_4 = QtGui.QLabel(self.widget_debug_window_header_box)
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(True)
        font.setWeight(75)
        self.label_4.setFont(font)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.horizontalLayout_5.addWidget(self.label_4)
        self.verticalLayout_4.addWidget(self.widget_debug_window_header_box)
        self.widget_5 = QtGui.QWidget(self.dockWidgetContents_3)
        self.widget_5.setObjectName(_fromUtf8("widget_5"))
        self.horizontalLayout_6 = QtGui.QHBoxLayout(self.widget_5)
        self.horizontalLayout_6.setMargin(0)
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.edit_stdout = console(self.widget_5)
        self.edit_stdout.setReadOnly(False)
        self.edit_stdout.setObjectName(_fromUtf8("edit_stdout"))
        self.horizontalLayout_6.addWidget(self.edit_stdout)
        self.widget_3 = QtGui.QWidget(self.widget_5)
        self.widget_3.setObjectName(_fromUtf8("widget_3"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.widget_3)
        self.verticalLayout_5.setSpacing(2)
        self.verticalLayout_5.setMargin(0)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
        self.button_help_stdout = QtGui.QPushButton(self.widget_3)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.button_help_stdout.sizePolicy().hasHeightForWidth())
        self.button_help_stdout.setSizePolicy(sizePolicy)
        self.button_help_stdout.setText(_fromUtf8(""))
        self.button_help_stdout.setIcon(icon3)
        self.button_help_stdout.setIconSize(QtCore.QSize(16, 16))
        self.button_help_stdout.setFlat(False)
        self.button_help_stdout.setObjectName(_fromUtf8("button_help_stdout"))
        self.verticalLayout_5.addWidget(self.button_help_stdout)
        self.button_clear_stdout = QtGui.QPushButton(self.widget_3)
        self.button_clear_stdout.setText(_fromUtf8(""))
        self.button_clear_stdout.setIcon(icon2)
        self.button_clear_stdout.setIconSize(QtCore.QSize(16, 16))
        self.button_clear_stdout.setObjectName(
            _fromUtf8("button_clear_stdout"))
        self.verticalLayout_5.addWidget(self.button_clear_stdout)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Expanding)
        self.verticalLayout_5.addItem(spacerItem)
        self.horizontalLayout_6.addWidget(self.widget_3)
        self.verticalLayout_4.addWidget(self.widget_5)
        self.dock_stdout.setWidget(self.dockWidgetContents_3)
        opensesame_mainwindow.addDockWidget(QtCore.Qt.DockWidgetArea(8),
                                            self.dock_stdout)
        self.toolbar_main = QtGui.QToolBar(opensesame_mainwindow)
        self.toolbar_main.setIconSize(QtCore.QSize(32, 32))
        self.toolbar_main.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly)
        self.toolbar_main.setFloatable(True)
        self.toolbar_main.setObjectName(_fromUtf8("toolbar_main"))
        opensesame_mainwindow.addToolBar(QtCore.Qt.TopToolBarArea,
                                         self.toolbar_main)
        self.toolbar_items = toolbar_items(opensesame_mainwindow)
        self.toolbar_items.setObjectName(_fromUtf8("toolbar_items"))
        opensesame_mainwindow.addToolBar(QtCore.Qt.LeftToolBarArea,
                                         self.toolbar_items)
        self.action_open = QtGui.QAction(opensesame_mainwindow)
        icon4 = QtGui.QIcon()
        icon4.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/open_large.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_open.setIcon(icon4)
        self.action_open.setObjectName(_fromUtf8("action_open"))
        self.action_save = QtGui.QAction(opensesame_mainwindow)
        icon5 = QtGui.QIcon()
        icon5.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/save_large.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_save.setIcon(icon5)
        self.action_save.setObjectName(_fromUtf8("action_save"))
        self.action_save_as = QtGui.QAction(opensesame_mainwindow)
        icon6 = QtGui.QIcon()
        icon6.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/saveas_large.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_save_as.setIcon(icon6)
        self.action_save_as.setObjectName(_fromUtf8("action_save_as"))
        self.action_quit = QtGui.QAction(opensesame_mainwindow)
        icon7 = QtGui.QIcon()
        icon7.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/quit_large.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_quit.setIcon(icon7)
        self.action_quit.setObjectName(_fromUtf8("action_quit"))
        self.action_run = QtGui.QAction(opensesame_mainwindow)
        self.action_run.setObjectName(_fromUtf8("action_run"))
        self.action_new = QtGui.QAction(opensesame_mainwindow)
        icon8 = QtGui.QIcon()
        icon8.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/new_large.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_new.setIcon(icon8)
        self.action_new.setObjectName(_fromUtf8("action_new"))
        self.action_add_sequence = QtGui.QAction(opensesame_mainwindow)
        icon9 = QtGui.QIcon()
        icon9.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/sequence_large.png")),
                        QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_sequence.setIcon(icon9)
        self.action_add_sequence.setObjectName(
            _fromUtf8("action_add_sequence"))
        self.action_add_sketchpad = QtGui.QAction(opensesame_mainwindow)
        icon10 = QtGui.QIcon()
        icon10.addPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/sketchpad_large.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_sketchpad.setIcon(icon10)
        self.action_add_sketchpad.setObjectName(
            _fromUtf8("action_add_sketchpad"))
        self.action_add_keyboard_response = QtGui.QAction(
            opensesame_mainwindow)
        icon11 = QtGui.QIcon()
        icon11.addPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/keyboard_response_large.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_keyboard_response.setIcon(icon11)
        self.action_add_keyboard_response.setObjectName(
            _fromUtf8("action_add_keyboard_response"))
        self.action_add_logger = QtGui.QAction(opensesame_mainwindow)
        icon12 = QtGui.QIcon()
        icon12.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/logger_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_logger.setIcon(icon12)
        self.action_add_logger.setObjectName(_fromUtf8("action_add_logger"))
        self.action_add_loop = QtGui.QAction(opensesame_mainwindow)
        icon13 = QtGui.QIcon()
        icon13.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/loop_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_loop.setIcon(icon13)
        self.action_add_loop.setObjectName(_fromUtf8("action_add_loop"))
        self.action_add_feedback = QtGui.QAction(opensesame_mainwindow)
        icon14 = QtGui.QIcon()
        icon14.addPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/feedback_large.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_feedback.setIcon(icon14)
        self.action_add_feedback.setObjectName(
            _fromUtf8("action_add_feedback"))
        self.action_add_inline_script = QtGui.QAction(opensesame_mainwindow)
        icon15 = QtGui.QIcon()
        icon15.addPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/inline_script_large.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_inline_script.setIcon(icon15)
        self.action_add_inline_script.setObjectName(
            _fromUtf8("action_add_inline_script"))
        self.action_close_all_tabs = QtGui.QAction(opensesame_mainwindow)
        icon16 = QtGui.QIcon()
        icon16.addPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/closeothertabs_large.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_close_all_tabs.setIcon(icon16)
        self.action_close_all_tabs.setObjectName(
            _fromUtf8("action_close_all_tabs"))
        self.action_close_other_tabs = QtGui.QAction(opensesame_mainwindow)
        icon17 = QtGui.QIcon()
        icon17.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/close_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_close_other_tabs.setIcon(icon17)
        self.action_close_other_tabs.setObjectName(
            _fromUtf8("action_close_other_tabs"))
        self.action_help = QtGui.QAction(opensesame_mainwindow)
        icon18 = QtGui.QIcon()
        icon18.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/help_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_help.setIcon(icon18)
        self.action_help.setObjectName(_fromUtf8("action_help"))
        self.action_about = QtGui.QAction(opensesame_mainwindow)
        icon19 = QtGui.QIcon()
        icon19.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/about_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_about.setIcon(icon19)
        self.action_about.setObjectName(_fromUtf8("action_about"))
        self.action_add_mouse_response = QtGui.QAction(opensesame_mainwindow)
        icon20 = QtGui.QIcon()
        icon20.addPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/mouse_response_large.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_mouse_response.setIcon(icon20)
        self.action_add_mouse_response.setObjectName(
            _fromUtf8("action_add_mouse_response"))
        self.action_run_in_window = QtGui.QAction(opensesame_mainwindow)
        self.action_run_in_window.setObjectName(
            _fromUtf8("action_run_in_window"))
        self.action_check_for_update = QtGui.QAction(opensesame_mainwindow)
        icon21 = QtGui.QIcon()
        icon21.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/update_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_check_for_update.setIcon(icon21)
        self.action_check_for_update.setObjectName(
            _fromUtf8("action_check_for_update"))
        self.action_show_variable_inspector = QtGui.QAction(
            opensesame_mainwindow)
        self.action_show_variable_inspector.setCheckable(True)
        icon22 = QtGui.QIcon()
        icon22.addPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/variable_inspector_large.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_show_variable_inspector.setIcon(icon22)
        self.action_show_variable_inspector.setObjectName(
            _fromUtf8("action_show_variable_inspector"))
        self.action_add_sampler = QtGui.QAction(opensesame_mainwindow)
        icon23 = QtGui.QIcon()
        icon23.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/sampler_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_sampler.setIcon(icon23)
        self.action_add_sampler.setObjectName(_fromUtf8("action_add_sampler"))
        self.action_add_synth = QtGui.QAction(opensesame_mainwindow)
        icon24 = QtGui.QIcon()
        icon24.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/synth_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_add_synth.setIcon(icon24)
        self.action_add_synth.setObjectName(_fromUtf8("action_add_synth"))
        self.action_show_pool = QtGui.QAction(opensesame_mainwindow)
        self.action_show_pool.setCheckable(True)
        icon25 = QtGui.QIcon()
        icon25.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/pool_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_show_pool.setIcon(icon25)
        self.action_show_pool.setObjectName(_fromUtf8("action_show_pool"))
        self.action_show_stdout = QtGui.QAction(opensesame_mainwindow)
        self.action_show_stdout.setCheckable(True)
        icon26 = QtGui.QIcon()
        icon26.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/stdout_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_show_stdout.setIcon(icon26)
        self.action_show_stdout.setObjectName(_fromUtf8("action_show_stdout"))
        self.action_enable_auto_response = QtGui.QAction(opensesame_mainwindow)
        self.action_enable_auto_response.setCheckable(True)
        self.action_enable_auto_response.setObjectName(
            _fromUtf8("action_enable_auto_response"))
        self.actionPlugins = QtGui.QAction(opensesame_mainwindow)
        self.actionPlugins.setEnabled(False)
        self.actionPlugins.setObjectName(_fromUtf8("actionPlugins"))
        self.action_show_random_tip = QtGui.QAction(opensesame_mainwindow)
        self.action_show_random_tip.setIcon(icon19)
        self.action_show_random_tip.setObjectName(
            _fromUtf8("action_show_random_tip"))
        self.action_open_autosave_folder = QtGui.QAction(opensesame_mainwindow)
        self.action_open_autosave_folder.setIcon(icon25)
        self.action_open_autosave_folder.setObjectName(
            _fromUtf8("action_open_autosave_folder"))
        self.action_submit_a_bug = QtGui.QAction(opensesame_mainwindow)
        icon27 = QtGui.QIcon()
        icon27.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/submit_bug.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_submit_a_bug.setIcon(icon27)
        self.action_submit_a_bug.setObjectName(
            _fromUtf8("action_submit_a_bug"))
        self.action_contribute = QtGui.QAction(opensesame_mainwindow)
        icon28 = QtGui.QIcon()
        icon28.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/contribute.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_contribute.setIcon(icon28)
        self.action_contribute.setObjectName(_fromUtf8("action_contribute"))
        self.action_preferences = QtGui.QAction(opensesame_mainwindow)
        icon29 = QtGui.QIcon()
        icon29.addPixmap(QtGui.QPixmap(_fromUtf8(":/icons/options_large.png")),
                         QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_preferences.setIcon(icon29)
        self.action_preferences.setObjectName(_fromUtf8("action_preferences"))
        self.actionDummy = QtGui.QAction(opensesame_mainwindow)
        self.actionDummy.setObjectName(_fromUtf8("actionDummy"))
        self.action_show_overview = QtGui.QAction(opensesame_mainwindow)
        self.action_show_overview.setCheckable(True)
        self.action_show_overview.setObjectName(
            _fromUtf8("action_show_overview"))
        self.action_onetabmode = QtGui.QAction(opensesame_mainwindow)
        self.action_onetabmode.setCheckable(True)
        icon30 = QtGui.QIcon()
        icon30.addPixmap(
            QtGui.QPixmap(_fromUtf8(":/icons/onetabmode_large.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_onetabmode.setIcon(icon30)
        self.action_onetabmode.setObjectName(_fromUtf8("action_onetabmode"))
        self.action_compact_toolbar = QtGui.QAction(opensesame_mainwindow)
        self.action_compact_toolbar.setCheckable(True)
        self.action_compact_toolbar.setObjectName(
            _fromUtf8("action_compact_toolbar"))
        self.action_online_documentation = QtGui.QAction(opensesame_mainwindow)
        self.action_online_documentation.setObjectName(
            _fromUtf8("action_online_documentation"))
        self.action_online_forum = QtGui.QAction(opensesame_mainwindow)
        self.action_online_forum.setObjectName(
            _fromUtf8("action_online_forum"))
        self.action_run_quick = QtGui.QAction(opensesame_mainwindow)
        self.action_run_quick.setObjectName(_fromUtf8("action_run_quick"))
        self.menu_recent_files.addAction(self.actionDummy)
        self.menu_file.addAction(self.action_new)
        self.menu_file.addAction(self.action_open)
        self.menu_file.addAction(self.action_save)
        self.menu_file.addAction(self.action_save_as)
        self.menu_file.addSeparator()
        self.menu_file.addAction(self.menu_recent_files.menuAction())
        self.menu_file.addSeparator()
        self.menu_file.addAction(self.action_quit)
        self.menu_run.addAction(self.action_run)
        self.menu_run.addAction(self.action_run_in_window)
        self.menu_run.addAction(self.action_run_quick)
        self.menu_run.addSeparator()
        self.menu_run.addAction(self.action_enable_auto_response)
        self.menu_items.addAction(self.action_add_loop)
        self.menu_items.addAction(self.action_add_sequence)
        self.menu_items.addAction(self.action_add_sketchpad)
        self.menu_items.addAction(self.action_add_feedback)
        self.menu_items.addAction(self.action_add_sampler)
        self.menu_items.addAction(self.action_add_synth)
        self.menu_items.addAction(self.action_add_keyboard_response)
        self.menu_items.addAction(self.action_add_mouse_response)
        self.menu_items.addAction(self.action_add_logger)
        self.menu_items.addAction(self.action_add_inline_script)
        self.menu_items.addSeparator()
        self.menu_items.addAction(self.actionPlugins)
        self.menu_view.addAction(self.action_close_all_tabs)
        self.menu_view.addAction(self.action_close_other_tabs)
        self.menu_view.addAction(self.action_onetabmode)
        self.menu_view.addSeparator()
        self.menu_view.addAction(self.action_show_overview)
        self.menu_view.addAction(self.action_show_variable_inspector)
        self.menu_view.addAction(self.action_show_pool)
        self.menu_view.addAction(self.action_show_stdout)
        self.menu_help.addAction(self.action_online_documentation)
        self.menu_help.addAction(self.action_help)
        self.menu_help.addSeparator()
        self.menu_help.addAction(self.action_about)
        self.menu_tools.addAction(self.action_check_for_update)
        self.menu_tools.addAction(self.action_open_autosave_folder)
        self.menu_tools.addSeparator()
        self.menu_tools.addAction(self.action_preferences)
        self.menubar.addAction(self.menu_file.menuAction())
        self.menubar.addAction(self.menu_run.menuAction())
        self.menubar.addAction(self.menu_items.menuAction())
        self.menubar.addAction(self.menu_view.menuAction())
        self.menubar.addAction(self.menu_tools.menuAction())
        self.menubar.addAction(self.menu_help.menuAction())
        self.toolbar_main.addAction(self.action_new)
        self.toolbar_main.addAction(self.action_open)
        self.toolbar_main.addAction(self.action_save)
        self.toolbar_main.addSeparator()
        self.toolbar_main.addAction(self.action_run)
        self.toolbar_main.addAction(self.action_run_in_window)
        self.toolbar_main.addAction(self.action_run_quick)
        self.toolbar_main.addSeparator()
        self.toolbar_main.addAction(self.action_close_other_tabs)
        self.toolbar_main.addAction(self.action_onetabmode)
        self.toolbar_main.addSeparator()
        self.toolbar_main.addAction(self.action_show_pool)
        self.toolbar_main.addAction(self.action_show_variable_inspector)
        self.toolbar_main.addAction(self.action_show_stdout)
        self.toolbar_main.addSeparator()
        self.toolbar_main.addAction(self.action_help)
        self.toolbar_main.addAction(self.action_online_documentation)

        self.retranslateUi(opensesame_mainwindow)
        self.tabwidget.setCurrentIndex(-1)
        QtCore.QObject.connect(self.button_variables_clear,
                               QtCore.SIGNAL(_fromUtf8("clicked()")),
                               self.edit_variable_filter.clear)
        QtCore.QObject.connect(self.button_clear_stdout,
                               QtCore.SIGNAL(_fromUtf8("clicked()")),
                               self.edit_stdout.clear)
        QtCore.QMetaObject.connectSlotsByName(opensesame_mainwindow)