]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/InsetParamsDialog.cpp
Add missing initialization
[lyx.git] / src / frontends / qt4 / InsetParamsDialog.cpp
index f76427d68d7c56d810d00fe4763d133305e12f8b..44f49b5a44e01d74c1db0e2b2c7c0c9cf92fea5b 100644 (file)
@@ -74,7 +74,7 @@ struct InsetParamsDialog::Private
 
 InsetParamsDialog::InsetParamsDialog(GuiView & lv, InsetParamsWidget * widget)
        : DialogView(lv, toqstr(insetName(widget->insetCode())),
-       toqstr(insetName(widget->insetCode()))), d(new Private)
+       widget->dialogTitle()), d(new Private)
 {
        setupUi(this);
        setInsetParamsWidget(widget);
@@ -166,7 +166,8 @@ void InsetParamsDialog::on_synchronizedCB_stateChanged(int)
 
 docstring InsetParamsDialog::checkWidgets(bool immediate)
 {
-       bool const widget_ok = d->widget_->checkWidgets();
+       bool const read_only = buffer().isReadonly();
+       bool const widget_ok = d->widget_->checkWidgets(read_only);
        Inset const * ins = inset(d->widget_->insetCode());
        docstring const argument = d->widget_->dialogToParams();
        bool valid_argument = !argument.empty();
@@ -175,14 +176,13 @@ docstring InsetParamsDialog::checkWidgets(bool immediate)
        FuncCode const code = immediate
                ? d->widget_->creationCode() : LFUN_INSET_MODIFY;
        bool const lfun_ok = lyx::getStatus(FuncRequest(code, argument)).enabled();
-       bool const read_only = buffer().isReadonly();
 
        okPB->setEnabled(!immediate && widget_ok && !read_only && valid_argument);
        bool const can_be_restored = !immediate && !read_only
                        && ins && (ins != d->inset_ || d->changed_);
        restorePB->setEnabled(can_be_restored);
-       applyPB->setEnabled(!immediate && lfun_ok && widget_ok && !read_only && valid_argument);
-       d->widget_->setEnabled(!read_only);
+       applyPB->setEnabled(ins && !immediate && lfun_ok && widget_ok && !read_only && valid_argument);
+       newPB->setEnabled(widget_ok && !read_only && valid_argument);
        synchronizedCB->setEnabled(!immediate);
        return argument;
 }
@@ -192,7 +192,8 @@ void InsetParamsDialog::onWidget_changed()
 {
        d->changed_ = true;
        docstring const argument = checkWidgets(immediateApplyCB->isChecked());
-       if (immediateApplyCB->isChecked())
+       if (immediateApplyCB->isChecked()
+           && d->widget_->checkWidgets(buffer().isReadonly()))
                dispatch(FuncRequest(LFUN_INSET_MODIFY, argument));
 }