diff --git a/src/interface/desktop/configure_screen.py b/src/interface/desktop/configure_screen.py index 0e46723b..2b80eb29 100644 --- a/src/interface/desktop/configure_screen.py +++ b/src/interface/desktop/configure_screen.py @@ -29,19 +29,37 @@ class ConfigureScreen(QtWidgets.QDialog): def show_orgmode_settings(self, parent_layout): "Add Org Mode Settings to the Configure Window" orgmode_settings = QtWidgets.QWidget() - self.orgmode_layout = QtWidgets.QVBoxLayout(orgmode_settings) - enable_orgmode_search = QtWidgets.QCheckBox("Search Org-Mode Files") - enable_orgmode_search.stateChanged.connect(self.show_orgmode_search_options) - self.orgmode_layout.addWidget(enable_orgmode_search) + orgmode_layout = QtWidgets.QVBoxLayout(orgmode_settings) + + enable_orgmode_search = QtWidgets.QCheckBox("Search Org-Mode Notes") + input_files_label = QtWidgets.QLabel("Org-Mode Files") + input_files = QtWidgets.QLineEdit() + input_files.setEnabled(enable_orgmode_search.isChecked()) + + enable_orgmode_search.stateChanged.connect(lambda _: input_files.setEnabled(enable_orgmode_search.isChecked())) + + orgmode_layout.addWidget(enable_orgmode_search) + orgmode_layout.addWidget(input_files_label) + orgmode_layout.addWidget(input_files) + parent_layout.addWidget(orgmode_settings) def show_ledger_settings(self, parent_layout): "Add Ledger Settings to the Configure Window" ledger_settings = QtWidgets.QWidget() - self.ledger_layout = QtWidgets.QVBoxLayout(ledger_settings) - enable_ledger_search = QtWidgets.QCheckBox("Search Beancount Files") - enable_ledger_search.stateChanged.connect(self.show_ledger_search_options) - self.ledger_layout.addWidget(enable_ledger_search) + ledger_layout = QtWidgets.QVBoxLayout(ledger_settings) + + enable_ledger_search = QtWidgets.QCheckBox("Search Beancount Transactions") + input_files_label = QtWidgets.QLabel("Beancount Files") + input_files = QtWidgets.QLineEdit() + input_files.setEnabled(enable_ledger_search.isChecked()) + + enable_ledger_search.stateChanged.connect(lambda _: input_files.setEnabled(enable_ledger_search.isChecked())) + + ledger_layout.addWidget(enable_ledger_search) + ledger_layout.addWidget(input_files_label) + ledger_layout.addWidget(input_files) + parent_layout.addWidget(ledger_settings) def show_action_bar(self, parent_layout): @@ -56,20 +74,3 @@ class ConfigureScreen(QtWidgets.QDialog): def save_settings(self, s): # Save the settings to khoj.yml pass - - def show_orgmode_search_options(self, s): - if Qt.CheckState(s) == Qt.CheckState.Checked: - self.orgmode_layout.layout().addWidget(QtWidgets.QLabel("Search Org-Mode Notes")) - self.orgmode_layout.layout().addWidget(QtWidgets.QLineEdit()) - else: - self.orgmode_layout.layout().removeWidget(self.orgmode_layout.layout().itemAt(1).widget()) - self.orgmode_layout.layout().removeWidget(self.orgmode_layout.layout().itemAt(1).widget()) - - def show_ledger_search_options(self, s): - if Qt.CheckState(s) == Qt.CheckState.Checked: - self.ledger_layout.layout().addWidget(QtWidgets.QLabel("Search Beancount Transactions")) - self.ledger_layout.layout().addWidget(QtWidgets.QLineEdit()) - else: - self.ledger_layout.layout().removeWidget(self.ledger_layout.layout().itemAt(1).widget()) - self.ledger_layout.layout().removeWidget(self.ledger_layout.layout().itemAt(1).widget()) - \ No newline at end of file