lyx_mirror/src/frontends/xforms/FormUrl.C
Angus Leeming e22ee4208d port the minipage dialog to the new scheme. Various other small changes
in the inset mailers and in the controllers.
Enable the include dialog to be lauched for a new inset (should please John ;-)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6374 a592a061-630c-0410-9148-cb99ea01b6c8
2003-03-07 14:08:10 +00:00

74 lines
1.7 KiB
C

/**
* \file FormUrl.C
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author Angus Leeming
*
* Full author contact details are available in file CREDITS
*/
#include <config.h>
#include "xformsBC.h"
#include "ControlCommand.h"
#include "FormUrl.h"
#include "forms/form_url.h"
#include FORMS_H_LOCATION
typedef FormController<ControlCommand, FormView<FD_url> > base_class;
FormUrl::FormUrl(Dialog & parent)
: base_class(parent, _("Url"))
{}
void FormUrl::build()
{
dialog_.reset(build_url(this));
fl_set_input_return(dialog_->input_name, FL_RETURN_CHANGED);
fl_set_input_return(dialog_->input_url, FL_RETURN_CHANGED);
setPrehandler(dialog_->input_name);
setPrehandler(dialog_->input_url);
// Manage the ok, apply, restore and cancel/close buttons
bc().setOK(dialog_->button_ok);
bc().setApply(dialog_->button_apply);
bc().setCancel(dialog_->button_close);
bc().setRestore(dialog_->button_restore);
bc().addReadOnly(dialog_->input_name);
bc().addReadOnly(dialog_->input_url);
bc().addReadOnly(dialog_->check_html);
}
void FormUrl::update()
{
fl_set_input(dialog_->input_url,
controller().params().getContents().c_str());
fl_set_input(dialog_->input_name,
controller().params().getOptions().c_str());
if (controller().params().getCmdName() == "url")
fl_set_button(dialog_->check_html, 0);
else
fl_set_button(dialog_->check_html, 1);
}
void FormUrl::apply()
{
controller().params().setContents(fl_get_input(dialog_->input_url));
controller().params().setOptions(fl_get_input(dialog_->input_name));
if (fl_get_button(dialog_->check_html))
controller().params().setCmdName("htmlurl");
else
controller().params().setCmdName("url");
}