예제 #1
0
 def _setupBottomPart(self):
     # The bottom part of the pref panel is always the same in all editions.
     self.fontSizeLabel = QLabel(tr("Font size:"))
     self.fontSizeSpinBox = QSpinBox()
     self.fontSizeSpinBox.setMinimum(5)
     self.widgetsVLayout.addLayout(
         horizontalWrap([self.fontSizeLabel, self.fontSizeSpinBox, None]))
     self.languageLabel = QLabel(tr("Language:"), self)
     self.languageComboBox = QComboBox(self)
     for lang in self.supportedLanguages:
         self.languageComboBox.addItem(get_langnames()[lang])
     self.widgetsVLayout.addLayout(
         horizontalWrap([self.languageLabel, self.languageComboBox, None]))
     self.copyMoveLabel = QLabel(self)
     self.copyMoveLabel.setText(tr("Copy and Move:"))
     self.widgetsVLayout.addWidget(self.copyMoveLabel)
     self.copyMoveDestinationComboBox = QComboBox(self)
     self.copyMoveDestinationComboBox.addItem(tr("Right in destination"))
     self.copyMoveDestinationComboBox.addItem(tr("Recreate relative path"))
     self.copyMoveDestinationComboBox.addItem(tr("Recreate absolute path"))
     self.widgetsVLayout.addWidget(self.copyMoveDestinationComboBox)
     self.customCommandLabel = QLabel(self)
     self.customCommandLabel.setText(
         tr("Custom Command (arguments: %d for dupe, %r for ref):"))
     self.widgetsVLayout.addWidget(self.customCommandLabel)
     self.customCommandEdit = QLineEdit(self)
     self.widgetsVLayout.addWidget(self.customCommandEdit)
예제 #2
0
    def _setupUi(self):
        self.setWindowTitle(tr("{} Results").format(self.app.NAME))
        self.resize(630, 514)
        self.centralwidget = QWidget(self)
        self.verticalLayout = QVBoxLayout(self.centralwidget)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setSpacing(0)
        self.actionsButton = QPushButton(tr("Actions"))
        self.detailsButton = QPushButton(tr("Details"))
        self.dupesOnlyCheckBox = QCheckBox(tr("Dupes Only"))
        self.deltaValuesCheckBox = QCheckBox(tr("Delta Values"))
        self.searchEdit = SearchEdit()
        self.searchEdit.setMaximumWidth(300)
        self.horizontalLayout = horizontalWrap([
            self.actionsButton, self.detailsButton, self.dupesOnlyCheckBox,
            self.deltaValuesCheckBox, None, self.searchEdit, 8
        ])
        self.horizontalLayout.setSpacing(8)
        self.verticalLayout.addLayout(self.horizontalLayout)
        self.resultsView = ResultsView(self.centralwidget)
        self.resultsView.setSelectionMode(QAbstractItemView.ExtendedSelection)
        self.resultsView.setSelectionBehavior(QAbstractItemView.SelectRows)
        self.resultsView.setSortingEnabled(True)
        self.resultsView.verticalHeader().setVisible(False)
        h = self.resultsView.horizontalHeader()
        h.setHighlightSections(False)
        h.setSectionsMovable(True)
        h.setStretchLastSection(False)
        h.setDefaultAlignment(Qt.AlignLeft)
        self.verticalLayout.addWidget(self.resultsView)
        self.setCentralWidget(self.centralwidget)
        self._setupActions()
        self._setupMenu()
        self.statusbar = QStatusBar(self)
        self.statusbar.setSizeGripEnabled(True)
        self.setStatusBar(self.statusbar)
        self.statusLabel = QLabel(self)
        self.statusbar.addPermanentWidget(self.statusLabel, 1)

        if self.app.prefs.resultWindowIsMaximized:
            self.setWindowState(self.windowState() | Qt.WindowMaximized)
        else:
            if self.app.prefs.resultWindowRect is not None:
                self.setGeometry(self.app.prefs.resultWindowRect)
                # if not on any screen move to center of default screen
                # moves to center of closest screen if partially off screen
                frame = self.frameGeometry()
                if QDesktopWidget().screenNumber(self) == -1:
                    moveToScreenCenter(self)
                elif QDesktopWidget().availableGeometry(self).contains(
                        frame) is False:
                    frame.moveCenter(
                        QDesktopWidget().availableGeometry(self).center())
                    self.move(frame.topLeft())
            else:
                moveToScreenCenter(self)
예제 #3
0
    def _setupUi(self):
        self.setWindowTitle(tr("{} Results").format(self.app.NAME))
        self.resize(630, 514)
        self.centralwidget = QWidget(self)
        self.verticalLayout = QVBoxLayout(self.centralwidget)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setSpacing(0)
        self.actionsButton = QPushButton(tr("Actions"))
        self.detailsButton = QPushButton(tr("Details"))
        self.dupesOnlyCheckBox = QCheckBox(tr("Dupes Only"))
        self.deltaValuesCheckBox = QCheckBox(tr("Delta Values"))
        self.searchEdit = SearchEdit()
        self.searchEdit.setMaximumWidth(300)
        self.horizontalLayout = horizontalWrap([
            self.actionsButton, self.detailsButton,
            self.dupesOnlyCheckBox, self.deltaValuesCheckBox, None, self.searchEdit, 8
        ])
        self.horizontalLayout.setSpacing(8)
        self.verticalLayout.addLayout(self.horizontalLayout)
        self.resultsView = ResultsView(self.centralwidget)
        self.resultsView.setSelectionMode(QAbstractItemView.ExtendedSelection)
        self.resultsView.setSelectionBehavior(QAbstractItemView.SelectRows)
        self.resultsView.setSortingEnabled(True)
        self.resultsView.verticalHeader().setVisible(False)
        h = self.resultsView.horizontalHeader()
        h.setHighlightSections(False)
        h.setSectionsMovable(True)
        h.setStretchLastSection(False)
        h.setDefaultAlignment(Qt.AlignLeft)
        self.verticalLayout.addWidget(self.resultsView)
        self.setCentralWidget(self.centralwidget)
        self._setupActions()
        self._setupMenu()
        self.statusbar = QStatusBar(self)
        self.statusbar.setSizeGripEnabled(True)
        self.setStatusBar(self.statusbar)
        self.statusLabel = QLabel(self)
        self.statusbar.addPermanentWidget(self.statusLabel, 1)

        if self.app.prefs.resultWindowIsMaximized:
            self.setWindowState(self.windowState() | Qt.WindowMaximized)
        else:
            if self.app.prefs.resultWindowRect is not None:
                self.setGeometry(self.app.prefs.resultWindowRect)
                # if not on any screen move to center of default screen
                # moves to center of closest screen if partially off screen
                frame = self.frameGeometry()
                if QDesktopWidget().screenNumber(self) == -1:
                    moveToScreenCenter(self)
                elif QDesktopWidget().availableGeometry(self).contains(frame) is False:
                    frame.moveCenter(QDesktopWidget().availableGeometry(self).center())
                    self.move(frame.topLeft())
            else:
                moveToScreenCenter(self)
예제 #4
0
 def _setupBottomPart(self):
     # The bottom part of the pref panel is always the same in all editions.
     self.fontSizeLabel = QLabel(tr("Font size:"))
     self.fontSizeSpinBox = QSpinBox()
     self.fontSizeSpinBox.setMinimum(5)
     self.widgetsVLayout.addLayout(horizontalWrap([self.fontSizeLabel, self.fontSizeSpinBox, None]))
     self.languageLabel = QLabel(tr("Language:"), self)
     self.languageComboBox = QComboBox(self)
     for lang in SUPPORTED_LANGUAGES:
         self.languageComboBox.addItem(LANGNAMES[lang])
     self.widgetsVLayout.addLayout(horizontalWrap([self.languageLabel, self.languageComboBox, None]))
     self.copyMoveLabel = QLabel(self)
     self.copyMoveLabel.setText(tr("Copy and Move:"))
     self.widgetsVLayout.addWidget(self.copyMoveLabel)
     self.copyMoveDestinationComboBox = QComboBox(self)
     self.copyMoveDestinationComboBox.addItem(tr("Right in destination"))
     self.copyMoveDestinationComboBox.addItem(tr("Recreate relative path"))
     self.copyMoveDestinationComboBox.addItem(tr("Recreate absolute path"))
     self.widgetsVLayout.addWidget(self.copyMoveDestinationComboBox)
     self.customCommandLabel = QLabel(self)
     self.customCommandLabel.setText(tr("Custom Command (arguments: %d for dupe, %r for ref):"))
     self.widgetsVLayout.addWidget(self.customCommandLabel)
     self.customCommandEdit = QLineEdit(self)
     self.widgetsVLayout.addWidget(self.customCommandEdit)
예제 #5
0
    def _setupUi(self):
        self.setWindowTitle(tr("Preferences"))
        self.resize(332, 170)
        self.verticalLayout = QVBoxLayout(self)
        self.formLayout = QFormLayout()

        self.autoSaveIntervalSpinBox = QSpinBox(self)
        self.autoSaveIntervalSpinBox.setMaximumSize(QSize(70, 0xffffff))
        self.label_5 = QLabel(tr("minute(s) (0 for none)"), self)
        self.formLayout.addRow(
            tr("Auto-save interval:"),
            horizontalWrap([self.autoSaveIntervalSpinBox, self.label_5]))

        self.dateFormatEdit = QLineEdit(self)
        self.dateFormatEdit.setMaximumSize(QSize(140, 0xffffff))
        self.formLayout.addRow(tr("Date format:"), self.dateFormatEdit)

        self.fontSizeSpinBox = QSpinBox()
        self.fontSizeSpinBox.setMinimum(5)
        self.fontSizeSpinBox.setMaximumSize(QSize(70, 0xffffff))
        self.formLayout.addRow(tr("Font size:"), self.fontSizeSpinBox)

        self.languageComboBox = QComboBox(self)
        LANGNAMES = get_langnames()
        for lang in SUPPORTED_LANGUAGES:
            self.languageComboBox.addItem(LANGNAMES[lang])
        self.languageComboBox.setMaximumSize(QSize(140, 0xffffff))
        self.formLayout.addRow(tr("Language:"), self.languageComboBox)
        self.verticalLayout.addLayout(self.formLayout)

        self.scopeDialogCheckBox = QCheckBox(
            tr("Show scope dialog when modifying a scheduled transaction"),
            self)
        self.verticalLayout.addWidget(self.scopeDialogCheckBox)
        self.autoDecimalPlaceCheckBox = QCheckBox(
            tr("Automatically place decimals when typing"), self)
        self.verticalLayout.addWidget(self.autoDecimalPlaceCheckBox)
        self.debugModeCheckBox = QCheckBox(tr("Debug mode (restart required)"),
                                           self)
        self.verticalLayout.addWidget(self.debugModeCheckBox)
        self.verticalLayout.addItem(verticalSpacer())
        self.buttonBox = QDialogButtonBox(self)
        self.buttonBox.setOrientation(Qt.Horizontal)
        self.buttonBox.setStandardButtons(QDialogButtonBox.Cancel
                                          | QDialogButtonBox.Ok)
        self.verticalLayout.addWidget(self.buttonBox)
예제 #6
0
 def _setupUi(self):
     self.setWindowTitle(tr("Ignore List"))
     self.resize(540, 330)
     self.verticalLayout = QVBoxLayout(self)
     self.tableView = QTableView()
     self.tableView.setEditTriggers(QAbstractItemView.NoEditTriggers)
     self.tableView.setSelectionMode(QAbstractItemView.ExtendedSelection)
     self.tableView.setSelectionBehavior(QAbstractItemView.SelectRows)
     self.tableView.setShowGrid(False)
     self.tableView.horizontalHeader().setStretchLastSection(True)
     self.tableView.verticalHeader().setDefaultSectionSize(18)
     self.tableView.verticalHeader().setHighlightSections(False)
     self.tableView.verticalHeader().setVisible(False)
     self.verticalLayout.addWidget(self.tableView)
     self.removeSelectedButton = QPushButton(tr("Remove Selected"))
     self.clearButton = QPushButton(tr("Clear"))
     self.closeButton = QPushButton(tr("Close"))
     self.verticalLayout.addLayout(horizontalWrap([self.removeSelectedButton, self.clearButton,
         None, self.closeButton]))
    def _setupUi(self):
        self.setWindowTitle(tr("Preferences"))
        self.resize(332, 170)
        self.verticalLayout = QVBoxLayout(self)
        self.formLayout = QFormLayout()

        self.autoSaveIntervalSpinBox = QSpinBox(self)
        self.autoSaveIntervalSpinBox.setMaximumSize(QSize(70, 0xffffff))
        self.label_5 = QLabel(tr("minute(s) (0 for none)"), self)
        self.formLayout.addRow(
            tr("Auto-save interval:"),
            horizontalWrap([self.autoSaveIntervalSpinBox, self.label_5])
        )

        self.dateFormatEdit = QLineEdit(self)
        self.dateFormatEdit.setMaximumSize(QSize(140, 0xffffff))
        self.formLayout.addRow(tr("Date format:"), self.dateFormatEdit)

        self.fontSizeSpinBox = QSpinBox()
        self.fontSizeSpinBox.setMinimum(5)
        self.fontSizeSpinBox.setMaximumSize(QSize(70, 0xffffff))
        self.formLayout.addRow(tr("Font size:"), self.fontSizeSpinBox)

        self.languageComboBox = QComboBox(self)
        LANGNAMES = get_langnames()
        for lang in SUPPORTED_LANGUAGES:
            self.languageComboBox.addItem(LANGNAMES[lang])
        self.languageComboBox.setMaximumSize(QSize(140, 0xffffff))
        self.formLayout.addRow(tr("Language:"), self.languageComboBox)
        self.verticalLayout.addLayout(self.formLayout)

        self.scopeDialogCheckBox = QCheckBox(tr("Show scope dialog when modifying a scheduled transaction"), self)
        self.verticalLayout.addWidget(self.scopeDialogCheckBox)
        self.autoDecimalPlaceCheckBox = QCheckBox(tr("Automatically place decimals when typing"), self)
        self.verticalLayout.addWidget(self.autoDecimalPlaceCheckBox)
        self.debugModeCheckBox = QCheckBox(tr("Debug mode (restart required)"), self)
        self.verticalLayout.addWidget(self.debugModeCheckBox)
        self.verticalLayout.addItem(verticalSpacer())
        self.buttonBox = QDialogButtonBox(self)
        self.buttonBox.setOrientation(Qt.Horizontal)
        self.buttonBox.setStandardButtons(QDialogButtonBox.Cancel|QDialogButtonBox.Ok)
        self.verticalLayout.addWidget(self.buttonBox)
예제 #8
0
 def _setupUi(self):
     self.setWindowTitle(tr("Ignore List"))
     self.resize(540, 330)
     self.verticalLayout = QVBoxLayout(self)
     self.tableView = QTableView()
     self.tableView.setEditTriggers(QAbstractItemView.NoEditTriggers)
     self.tableView.setSelectionMode(QAbstractItemView.ExtendedSelection)
     self.tableView.setSelectionBehavior(QAbstractItemView.SelectRows)
     self.tableView.setShowGrid(False)
     self.tableView.horizontalHeader().setStretchLastSection(True)
     self.tableView.verticalHeader().setDefaultSectionSize(18)
     self.tableView.verticalHeader().setHighlightSections(False)
     self.tableView.verticalHeader().setVisible(False)
     self.verticalLayout.addWidget(self.tableView)
     self.removeSelectedButton = QPushButton(tr("Remove Selected"))
     self.clearButton = QPushButton(tr("Clear"))
     self.closeButton = QPushButton(tr("Close"))
     self.verticalLayout.addLayout(
         horizontalWrap([
             self.removeSelectedButton, self.clearButton, None,
             self.closeButton
         ]))
예제 #9
0
    def _setupDisplayPage(self):
        self.ui_groupbox = QGroupBox("&General Interface")
        layout = QVBoxLayout()
        self.languageLabel = QLabel(tr("Language:"), self)
        self.languageComboBox = QComboBox(self)
        for lang in self.supportedLanguages:
            self.languageComboBox.addItem(get_langnames()[lang])
        layout.addLayout(
            horizontalWrap([self.languageLabel, self.languageComboBox, None]))
        self._setupAddCheckbox(
            "tabs_default_pos",
            tr("Use default position for tab bar (requires restart)"))
        self.tabs_default_pos.setToolTip(
            tr("Place the tab bar below the main menu instead of next to it\n\
On MacOS, the tab bar will fill up the window's width instead."))
        layout.addWidget(self.tabs_default_pos)
        self.ui_groupbox.setLayout(layout)
        self.displayVLayout.addWidget(self.ui_groupbox)

        gridlayout = QFormLayout()
        result_groupbox = QGroupBox("&Result Table")
        self.fontSizeSpinBox = QSpinBox()
        self.fontSizeSpinBox.setMinimum(5)
        gridlayout.addRow(tr("Font size:"), self.fontSizeSpinBox)
        self._setupAddCheckbox("reference_bold_font",
                               tr("Use bold font for references"))
        gridlayout.addRow(self.reference_bold_font)

        self.result_table_ref_foreground_color = ColorPickerButton(self)
        gridlayout.addRow(tr("Reference foreground color:"),
                          self.result_table_ref_foreground_color)
        self.result_table_ref_background_color = ColorPickerButton(self)
        gridlayout.addRow(tr("Reference background color:"),
                          self.result_table_ref_background_color)
        self.result_table_delta_foreground_color = ColorPickerButton(self)
        gridlayout.addRow(tr("Delta foreground color:"),
                          self.result_table_delta_foreground_color)
        gridlayout.setLabelAlignment(Qt.AlignLeft)

        # Keep same vertical spacing as parent layout for consistency
        gridlayout.setVerticalSpacing(self.displayVLayout.spacing())
        result_groupbox.setLayout(gridlayout)
        self.displayVLayout.addWidget(result_groupbox)

        details_groupbox = QGroupBox("&Details Window")
        self.details_groupbox_layout = QVBoxLayout()
        self._setupAddCheckbox("details_dialog_titlebar_enabled",
                               tr("Show the title bar and can be docked"))
        self.details_dialog_titlebar_enabled.setToolTip(
            tr("While the title bar is hidden, \
use the modifier key to drag the floating window around") if ISLINUX else
            tr("The title bar can only be disabled while the window is docked"
               ))
        self.details_groupbox_layout.addWidget(
            self.details_dialog_titlebar_enabled)
        self._setupAddCheckbox("details_dialog_vertical_titlebar",
                               tr("Vertical title bar"))
        self.details_dialog_vertical_titlebar.setToolTip(
            tr("Change the title bar from horizontal on top, to vertical on the left side"
               ))
        self.details_groupbox_layout.addWidget(
            self.details_dialog_vertical_titlebar)
        self.details_dialog_vertical_titlebar.setEnabled(
            self.details_dialog_titlebar_enabled.isChecked())
        self.details_dialog_titlebar_enabled.stateChanged.connect(
            self.details_dialog_vertical_titlebar.setEnabled)
        gridlayout = QGridLayout()
        self.details_table_delta_foreground_color_label = QLabel(
            tr("Delta foreground color:"))
        gridlayout.addWidget(self.details_table_delta_foreground_color_label,
                             4, 0)
        self.details_table_delta_foreground_color = ColorPickerButton(self)
        gridlayout.addWidget(self.details_table_delta_foreground_color, 4, 2,
                             1, 1, Qt.AlignLeft)
        gridlayout.setColumnStretch(1, 1)
        gridlayout.setColumnStretch(3, 4)
        self.details_groupbox_layout.addLayout(gridlayout)
        details_groupbox.setLayout(self.details_groupbox_layout)
        self.displayVLayout.addWidget(details_groupbox)