#include <config.h>
#include "GuiERT.h"
+
+#include "GuiApplication.h"
+#include "GuiView.h"
+
+#include "insets/InsetERT.h"
+
#include "support/gettext.h"
-#include "FuncRequest.h"
#include <QRadioButton>
#include <QPushButton>
-#include <QCloseEvent>
using namespace std;
namespace lyx {
namespace frontend {
-GuiERT::GuiERT(GuiView & lv)
- : GuiDialog(lv, "ert", qt_("TeX Code Settings")), status_(InsetERT::Collapsed)
+GuiERT::GuiERT(QWidget * parent) : InsetParamsWidget(parent)
{
setupUi(this);
- connect(okPB, SIGNAL(clicked()), this, SLOT(slotOK()));
- connect(closePB, SIGNAL(clicked()), this, SLOT(slotClose()));
- connect(collapsedRB, SIGNAL(clicked()), this, SLOT(change_adaptor()));
- connect(openRB, SIGNAL(clicked()), this, SLOT(change_adaptor()));
-
- bc().setPolicy(ButtonPolicy::NoRepeatedApplyReadOnlyPolicy);
- bc().setOK(okPB);
- bc().setCancel(closePB);
-}
-
-
-void GuiERT::closeEvent(QCloseEvent * e)
-{
- slotClose();
- e->accept();
-}
-
-
-void GuiERT::change_adaptor()
-{
- changed();
+ connect(collapsedRB, SIGNAL(clicked()), this, SIGNAL(changed()));
+ connect(openRB, SIGNAL(clicked()), this, SIGNAL(changed()));
}
-void GuiERT::applyView()
+docstring GuiERT::dialogToParams() const
{
- if (openRB->isChecked())
- status_ = Inset::Open;
- else
- status_ = Inset::Collapsed;
+ InsetCollapsable::CollapseStatus const status = openRB->isChecked()
+ ? InsetCollapsable::Open : InsetCollapsable::Collapsed;
+ return from_ascii(InsetERT::params2string(status));
}
-void GuiERT::updateContents()
+void GuiERT::paramsToDialog(Inset const * inset)
{
- switch (status_) {
- case InsetERT::Open: openRB->setChecked(true); break;
- case InsetERT::Collapsed: collapsedRB->setChecked(true); break;
+ InsetERT const * ert = static_cast<InsetERT const *>(inset);
+ // FIXME: This dialog has absolutely no value...
+ BufferView const * bv = guiApp->currentView()->currentBufferView();
+ InsetCollapsable::CollapseStatus status = ert->status(*bv);
+ switch (status) {
+ case InsetCollapsable::Open: openRB->setChecked(true); break;
+ case InsetCollapsable::Collapsed: collapsedRB->setChecked(true); break;
}
}
-bool GuiERT::initialiseParams(string const & data)
-{
- InsetERTMailer::string2params(data, status_);
- return true;
-}
-
-
-void GuiERT::clearParams()
+bool GuiERT::checkWidgets(bool readonly) const
{
- status_ = InsetERT::Collapsed;
+ ertBG->setEnabled(!readonly);
+ return InsetParamsWidget::checkWidgets();
}
-void GuiERT::dispatchParams()
-{
- dispatch(FuncRequest(getLfun(), InsetERTMailer::params2string(status_)));
-}
-
-
-Dialog * createGuiERT(GuiView & lv) { return new GuiERT(lv); }
-
-
} // namespace frontend
} // namespace lyx
-#include "GuiERT_moc.cpp"
+#include "moc_GuiERT.cpp"