/**
* \file FormPreamble.C
- * Copyright 2001 The LyX Team.
- * See the file COPYING.
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
*
- * \author Edwin Leuven, leuven@fee.uva.nl
+ * \author Edwin Leuven
+ *
+ * Full author contact details are available in file CREDITS.
*/
#include <config.h>
-#ifdef __GNUG__
-#pragma implementation
-#endif
-
-#include "xformsBC.h"
-#include "ControlPreamble.h"
#include "FormPreamble.h"
-#include "form_preamble.h"
+#include "forms/form_preamble.h"
+
+#include "controllers/ControlPreamble.h"
+
#include "xforms_helpers.h"
+#include "xformsBC.h"
+
+#include "lyx_forms.h"
-typedef FormCB<ControlPreamble, FormDB<FD_form_preamble> > base_class;
+namespace lyx {
+namespace frontend {
-FormPreamble::FormPreamble(ControlPreamble & c)
- : base_class(c, _("LaTeX preamble"))
+typedef FormController<ControlPreamble, FormView<FD_preamble> > base_class;
+
+FormPreamble::FormPreamble(Dialog & parent)
+ : base_class(parent, _("LaTeX Preamble"))
{}
void FormPreamble::build()
{
- dialog_.reset(build_preamble());
+ dialog_.reset(build_preamble(this));
- fl_set_input_return(dialog_->input_preamble, FL_RETURN_CHANGED);
+ // Manage the ok, apply and cancel/close buttons
+ bcview().setOK(dialog_->button_ok);
+ bcview().setApply(dialog_->button_apply);
+ bcview().setCancel(dialog_->button_close);
- // trigger an input event when pasting using the middle mouse button.
+ // trigger an input event for cut&paste with middle mouse button.
setPrehandler(dialog_->input_preamble);
- // Manage the ok, apply and cancel/close buttons
- bc().setOK(dialog_->button_ok);
- bc().setApply(dialog_->button_apply);
- bc().setCancel(dialog_->button_cancel);
+ // for activate ok/apply immediately upon input
+ fl_set_input_return(dialog_->input_preamble, FL_RETURN_CHANGED);
}
void FormPreamble::apply()
{
- controller().params() = fl_get_input(dialog_->input_preamble);
+ controller().params(getString(dialog_->input_preamble));
}
{
fl_set_input(dialog_->input_preamble, controller().params().c_str());
}
+
+} // namespace frontend
+} // namespace lyx