bc().setPolicy(ButtonPolicy::OkApplyCancelReadOnlyPolicy);
}
-
+void GuiThesaurus::checkStatus()
+{
+ if (!isBufferAvailable()) {
+ // deactivate the thesaurus if we have no buffer
+ enableView(false);
+ return;
+ }
+ updateView();
+}
+
void GuiThesaurus::change_adaptor()
{
changed();
if (pos > -1)
item = rex.cap(2).trimmed();
replaceED->setText(item);
- replacePB->setEnabled(true);
+ replacePB->setEnabled(!isBufferReadonly());
changed();
}
void GuiThesaurus::updateLists()
{
meaningsTV->clear();
+
+ if (entryCO->currentText().isEmpty())
+ return;
+
meaningsTV->setUpdatesEnabled(false);
QString const lang = languageCO->itemData(
}
meaningsTV->setEnabled(true);
lookupPB->setEnabled(true);
- replaceED->setEnabled(true);
- replacePB->setEnabled(true);
+ bool const readonly = isBufferReadonly();
+ replaceED->setEnabled(!readonly);
+ replacePB->setEnabled(!readonly);
}
if (meanings.empty()) {