コード例 #1
0
ファイル: window.py プロジェクト: brett-patterson/d-clock
class Window(QMainWindow):
    """ The main window of the application.

    """
    def __init__(self, clock, message_source, *args, **kwargs):
        """ Initialize the view.

        Parameters:
        -----------
        clock : Clock
            The clock object to display.

        """
        super(Window, self).__init__(*args, **kwargs)

        self.timer = QTimer()
        self.clock_view = ClockView(clock, self.timer)
        self.message_view = MessageView(clock, message_source, self.timer)

        self.setup_ui()
        self.timer.start(1000)

    def setup_ui(self):
        """ Setup the UI for the window.

        """
        central_widget = QWidget()
        layout = QVBoxLayout()
        layout.addWidget(self.clock_view)
        layout.addWidget(self.message_view)
        central_widget.setLayout(layout)
        self.setCentralWidget(central_widget)

        menubar = self.menuBar()

        file_menu = QMenu('File')

        preferences_action = QAction('Preferences', file_menu)
        preferences_action.triggered.connect(self.on_preferences_triggered)

        quit_action = QAction('Quit', file_menu)
        quit_action.triggered.connect(self.on_quit_triggered)

        file_menu.addAction(preferences_action)
        file_menu.addAction(quit_action)
        menubar.addMenu(file_menu)

        view_menu = QMenu('View')

        fullscreen_action = QAction('Fullscreen', view_menu)
        fullscreen_action.setCheckable(True)
        fullscreen_action.setChecked(Config.get('FULLSCREEN', True))
        fullscreen_action.setShortcut('Ctrl+Meta+F')
        fullscreen_action.toggled.connect(self.on_fullscreen_changed)

        view_menu.addAction(fullscreen_action)
        menubar.addMenu(view_menu)

    def on_preferences_triggered(self):
        """ The handler for when the 'Preferences' action is triggered.

        """
        self.preferences_dialog = PreferencesDialog()
        self.preferences_dialog.show()

    def on_quit_triggered(self):
        """ The handler for when the `Quit` action is triggered.

        """
        Config.write()
        sys.exit()

    def on_fullscreen_changed(self, checked):
        """ The handler for when the 'Fullscreen' action is toggled.

        """
        Config.set('FULLSCREEN', checked)

        if checked:
            self.showFullScreen()
        else:
            self.showNormal()
コード例 #2
0
ファイル: scriptrunner.py プロジェクト: der100/Script-Runner
 def set_preferences(self):
     prefs_dlg = PreferencesDialog()
     prefs_dlg.show()
     if prefs_dlg.exec_() == QDialog.Accepted:
         self.fetch_settings()
         self.configure_console()