3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
8 * Full author contact details are available in file CREDITS
14 #pragma implementation
17 #include "ControlUrl.h"
22 #include "QURLDialog.h"
25 #include <qcheckbox.h>
26 #include <qpushbutton.h>
27 #include <qlineedit.h>
29 typedef Qt2CB<ControlUrl, Qt2DB<QURLDialog> > base_class;
33 : base_class(_("URL"))
38 void QURL::build_dialog()
40 dialog_.reset(new QURLDialog(this));
42 bc().setOK(dialog_->okPB);
43 bc().setCancel(dialog_->closePB);
44 bc().addReadOnly(dialog_->urlED);
45 bc().addReadOnly(dialog_->nameED);
46 bc().addReadOnly(dialog_->hyperlinkCB);
50 void QURL::update_contents()
52 InsetCommandParams const & params = controller().params();
54 dialog_->urlED->setText(params.getContents().c_str());
55 dialog_->nameED->setText(params.getOptions().c_str());
56 dialog_->hyperlinkCB->setChecked(params.getCmdName() != "url");
62 InsetCommandParams & params = controller().params();
64 params.setContents(dialog_->urlED->text().latin1());
65 params.setOptions(dialog_->nameED->text().latin1());
67 if (dialog_->hyperlinkCB->isChecked())
68 params.setCmdName("htmlurl");
70 params.setCmdName("url");
76 string const u(dialog_->urlED->text().latin1());
77 string const n(dialog_->nameED->text().latin1());
79 return !u.empty() && !n.empty();