1
0
mirror of https://github.com/arsenetar/dupeguru.git synced 2026-01-22 14:41:39 +00:00

Removed .ui files and made the UI setup "by hand". ui files cause more problems than they solve (UI designer is limited in what it can do).

This commit is contained in:
Virgil Dupras
2010-10-04 15:29:00 +02:00
parent d574bc611b
commit d2f968def7
37 changed files with 776 additions and 2685 deletions

View File

@@ -7,13 +7,13 @@
# http://www.hardcoded.net/licenses/bsd_license
import sys
from PyQt4.QtCore import SIGNAL, Qt
from PyQt4.QtGui import QDialog, QDialogButtonBox
from PyQt4.QtCore import SIGNAL, Qt, QSize
from PyQt4.QtGui import (QDialog, QDialogButtonBox, QVBoxLayout, QHBoxLayout, QLabel, QComboBox,
QSlider, QSizePolicy, QSpacerItem, QWidget, QCheckBox, QLineEdit, QDialogButtonBox, QApplication)
from preferences_dialog_ui import Ui_PreferencesDialog
import preferences
from . import preferences
class PreferencesDialog(QDialog, Ui_PreferencesDialog):
class PreferencesDialog(QDialog):
def __init__(self, parent, app):
flags = Qt.CustomizeWindowHint | Qt.WindowTitleHint | Qt.WindowSystemMenuHint
QDialog.__init__(self, parent, flags)
@@ -21,9 +21,94 @@ class PreferencesDialog(QDialog, Ui_PreferencesDialog):
self._setupUi()
self.connect(self.buttonBox, SIGNAL('clicked(QAbstractButton*)'), self.buttonClicked)
self.connect(self.filterHardnessSlider, SIGNAL("valueChanged(int)"), self.filterHardnessLabel.setNum)
self.buttonBox.accepted.connect(self.accept)
self.buttonBox.rejected.connect(self.reject)
def _setupUi(self):
self.setupUi(self)
self.setWindowTitle("Preferences")
self.resize(304, 263)
self.setSizeGripEnabled(False)
self.setModal(True)
self.verticalLayout_2 = QVBoxLayout(self)
self.verticalLayout = QVBoxLayout()
self.horizontalLayout_3 = QHBoxLayout()
self.label = QLabel(self)
self.label.setText("Filter Hardness:")
self.label.setMinimumSize(QSize(0, 0))
self.horizontalLayout_3.addWidget(self.label)
self.verticalLayout_3 = QVBoxLayout()
self.verticalLayout_3.setSpacing(0)
self.horizontalLayout_6 = QHBoxLayout()
self.horizontalLayout_6.setSpacing(12)
self.filterHardnessSlider = QSlider(self)
sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.filterHardnessSlider.sizePolicy().hasHeightForWidth())
self.filterHardnessSlider.setSizePolicy(sizePolicy)
self.filterHardnessSlider.setMinimum(1)
self.filterHardnessSlider.setMaximum(100)
self.filterHardnessSlider.setTracking(True)
self.filterHardnessSlider.setOrientation(Qt.Horizontal)
self.horizontalLayout_6.addWidget(self.filterHardnessSlider)
self.filterHardnessLabel = QLabel(self)
self.filterHardnessLabel.setText("100")
self.filterHardnessLabel.setMinimumSize(QSize(21, 0))
self.horizontalLayout_6.addWidget(self.filterHardnessLabel)
self.verticalLayout_3.addLayout(self.horizontalLayout_6)
self.horizontalLayout_5 = QHBoxLayout()
self.horizontalLayout_5.setContentsMargins(-1, 0, -1, -1)
self.label_4 = QLabel(self)
self.label_4.setText("More Results")
self.horizontalLayout_5.addWidget(self.label_4)
spacerItem = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
self.horizontalLayout_5.addItem(spacerItem)
self.label_3 = QLabel(self)
self.label_3.setText("Fewer Results")
self.horizontalLayout_5.addWidget(self.label_3)
self.verticalLayout_3.addLayout(self.horizontalLayout_5)
self.horizontalLayout_3.addLayout(self.verticalLayout_3)
self.verticalLayout.addLayout(self.horizontalLayout_3)
self.matchScaledBox = QCheckBox(self)
self.matchScaledBox.setText("Match scaled pictures together")
self.verticalLayout.addWidget(self.matchScaledBox)
self.mixFileKindBox = QCheckBox(self)
self.mixFileKindBox.setText("Can mix file kind")
self.verticalLayout.addWidget(self.mixFileKindBox)
self.useRegexpBox = QCheckBox(self)
self.useRegexpBox.setText("Use regular expressions when filtering")
self.verticalLayout.addWidget(self.useRegexpBox)
self.removeEmptyFoldersBox = QCheckBox(self)
self.removeEmptyFoldersBox.setText("Remove empty folders on delete or move")
self.verticalLayout.addWidget(self.removeEmptyFoldersBox)
self.ignoreHardlinkMatches = QCheckBox(self)
self.ignoreHardlinkMatches.setText("Ignore duplicates hardlinking to the same file")
self.verticalLayout.addWidget(self.ignoreHardlinkMatches)
self.horizontalLayout_4 = QHBoxLayout()
self.label_5 = QLabel(self)
self.label_5.setText("Copy and Move:")
self.label_5.setMinimumSize(QSize(0, 0))
self.horizontalLayout_4.addWidget(self.label_5)
self.copyMoveDestinationComboBox = QComboBox(self)
sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.copyMoveDestinationComboBox.sizePolicy().hasHeightForWidth())
self.copyMoveDestinationComboBox.addItem("Right in destination")
self.copyMoveDestinationComboBox.addItem("Recreate relative path")
self.copyMoveDestinationComboBox.addItem("Recreate absolute path")
self.horizontalLayout_4.addWidget(self.copyMoveDestinationComboBox)
self.verticalLayout.addLayout(self.horizontalLayout_4)
self.label_2 = QLabel(self)
self.label_2.setText("Custom Command (arguments: %d for dupe %r for ref):")
self.verticalLayout.addWidget(self.label_2)
self.customCommandEdit = QLineEdit(self)
self.verticalLayout.addWidget(self.customCommandEdit)
self.verticalLayout_2.addLayout(self.verticalLayout)
self.buttonBox = QDialogButtonBox(self)
self.buttonBox.setStandardButtons(QDialogButtonBox.Cancel|QDialogButtonBox.Ok|QDialogButtonBox.RestoreDefaults)
self.verticalLayout_2.addWidget(self.buttonBox)
if sys.platform not in {'darwin', 'linux2'}:
self.verticalLayout.removeWidget(self.ignoreHardlinkMatches)
self.ignoreHardlinkMatches.setHidden(True)
@@ -61,3 +146,12 @@ class PreferencesDialog(QDialog, Ui_PreferencesDialog):
if role == QDialogButtonBox.ResetRole:
self.resetToDefaults()
if __name__ == '__main__':
import sys
from ..testapp import TestApp
app = QApplication([])
dgapp = TestApp()
dialog = PreferencesDialog(None, dgapp)
dialog.show()
sys.exit(app.exec_())