36 @param parent parent widget |
36 @param parent parent widget |
37 @type QWidget |
37 @type QWidget |
38 """ |
38 """ |
39 super().__init__(parent) |
39 super().__init__(parent) |
40 self.setupUi(self) |
40 self.setupUi(self) |
41 |
41 |
42 self.buttonBox.button( |
42 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(False) |
43 QDialogButtonBox.StandardButton.Ok).setEnabled(False) |
43 |
44 |
|
45 self.__mode = mode |
44 self.__mode = mode |
46 if mode == self.MOVE_MODE: |
45 if mode == self.MOVE_MODE: |
47 self.nameEdit.hide() |
46 self.nameEdit.hide() |
48 self.nameCombo.addItems([""] + sorted(bookmarksList)) |
47 self.nameCombo.addItems([""] + sorted(bookmarksList)) |
49 self.setWindowTitle(self.tr("Move Bookmark")) |
48 self.setWindowTitle(self.tr("Move Bookmark")) |
50 else: |
49 else: |
51 self.nameCombo.hide() |
50 self.nameCombo.hide() |
52 self.setWindowTitle(self.tr("Define Bookmark")) |
51 self.setWindowTitle(self.tr("Define Bookmark")) |
53 |
52 |
54 self.__bookmarksList = bookmarksList[:] |
53 self.__bookmarksList = bookmarksList[:] |
55 |
54 |
56 self.tagCombo.addItems(sorted(tagsList)) |
55 self.tagCombo.addItems(sorted(tagsList)) |
57 self.branchCombo.addItems(["default"] + sorted(branchesList)) |
56 self.branchCombo.addItems(["default"] + sorted(branchesList)) |
58 self.bookmarkCombo.addItems(sorted(bookmarksList)) |
57 self.bookmarkCombo.addItems(sorted(bookmarksList)) |
59 |
58 |
60 # connect various radio buttons and input fields |
59 # connect various radio buttons and input fields |
61 self.idButton.toggled.connect(self.__updateOK) |
60 self.idButton.toggled.connect(self.__updateOK) |
62 self.tagButton.toggled.connect(self.__updateOK) |
61 self.tagButton.toggled.connect(self.__updateOK) |
63 self.branchButton.toggled.connect(self.__updateOK) |
62 self.branchButton.toggled.connect(self.__updateOK) |
64 self.bookmarkButton.toggled.connect(self.__updateOK) |
63 self.bookmarkButton.toggled.connect(self.__updateOK) |
65 self.expressionButton.toggled.connect(self.__updateOK) |
64 self.expressionButton.toggled.connect(self.__updateOK) |
66 |
65 |
67 self.nameCombo.activated.connect(self.__updateOK) |
66 self.nameCombo.activated.connect(self.__updateOK) |
68 self.nameCombo.activated.connect(self.__updateBookmarksCombo) |
67 self.nameCombo.activated.connect(self.__updateBookmarksCombo) |
69 |
68 |
70 self.nameEdit.textChanged.connect(self.__updateOK) |
69 self.nameEdit.textChanged.connect(self.__updateOK) |
71 self.idEdit.textChanged.connect(self.__updateOK) |
70 self.idEdit.textChanged.connect(self.__updateOK) |
72 self.expressionEdit.textChanged.connect(self.__updateOK) |
71 self.expressionEdit.textChanged.connect(self.__updateOK) |
73 |
72 |
74 self.tagCombo.editTextChanged.connect(self.__updateOK) |
73 self.tagCombo.editTextChanged.connect(self.__updateOK) |
75 self.branchCombo.editTextChanged.connect(self.__updateOK) |
74 self.branchCombo.editTextChanged.connect(self.__updateOK) |
76 self.bookmarkCombo.editTextChanged.connect(self.__updateOK) |
75 self.bookmarkCombo.editTextChanged.connect(self.__updateOK) |
77 |
76 |
78 msh = self.minimumSizeHint() |
77 msh = self.minimumSizeHint() |
79 self.resize(max(self.width(), msh.width()), msh.height()) |
78 self.resize(max(self.width(), msh.width()), msh.height()) |
80 |
79 |
81 @pyqtSlot() |
80 @pyqtSlot() |
82 def __updateOK(self): |
81 def __updateOK(self): |
83 """ |
82 """ |
84 Private slot to update the OK button. |
83 Private slot to update the OK button. |
85 """ |
84 """ |
86 enabled = ( |
85 enabled = ( |
87 bool(self.nameCombo.currentText()) |
86 bool(self.nameCombo.currentText()) |
88 if self.__mode == self.MOVE_MODE else |
87 if self.__mode == self.MOVE_MODE |
89 bool(self.nameEdit.text()) |
88 else bool(self.nameEdit.text()) |
90 ) |
89 ) |
91 |
90 |
92 if self.idButton.isChecked(): |
91 if self.idButton.isChecked(): |
93 enabled = bool(self.idEdit.text()) |
92 enabled = bool(self.idEdit.text()) |
94 elif self.tagButton.isChecked(): |
93 elif self.tagButton.isChecked(): |
95 enabled = bool(self.tagCombo.currentText()) |
94 enabled = bool(self.tagCombo.currentText()) |
96 elif self.branchButton.isChecked(): |
95 elif self.branchButton.isChecked(): |
97 enabled = bool(self.branchCombo.currentText()) |
96 enabled = bool(self.branchCombo.currentText()) |
98 elif self.bookmarkButton.isChecked(): |
97 elif self.bookmarkButton.isChecked(): |
99 enabled = bool(self.bookmarkCombo.currentText()) |
98 enabled = bool(self.bookmarkCombo.currentText()) |
100 elif self.expressionButton.isChecked(): |
99 elif self.expressionButton.isChecked(): |
101 enabled = enabled and bool(self.expressionEdit.text()) |
100 enabled = enabled and bool(self.expressionEdit.text()) |
102 |
101 |
103 self.buttonBox.button( |
102 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(enabled) |
104 QDialogButtonBox.StandardButton.Ok).setEnabled(enabled) |
103 |
105 |
|
106 def __updateBookmarksCombo(self): |
104 def __updateBookmarksCombo(self): |
107 """ |
105 """ |
108 Private slot to update the bookmarks combo. |
106 Private slot to update the bookmarks combo. |
109 """ |
107 """ |
110 if self.__mode == self.MOVE_MODE: |
108 if self.__mode == self.MOVE_MODE: |