#include "support/debug.h"
#include "support/gettext.h"
+#include "frontends/Application.h"
+
using namespace std;
namespace lyx {
-InsetWrap::InsetWrap(BufferParams const & bp, string const & type)
- : InsetCollapsable(bp), name_(from_utf8(type))
+InsetWrap::InsetWrap(Buffer const & buf, string const & type)
+ : InsetCollapsable(buf), name_(from_utf8(type))
{
- setLabel(_("wrap: ") + floatName(type, bp));
+ setLabel(_("wrap: ") + floatName(type, buf.params()));
params_.type = type;
params_.lines = 0;
params_.placement = "o";
InsetWrap::~InsetWrap()
{
- InsetWrapMailer(*this).hideDialog();
+ hideDialogs("ert", this);
}
switch (cmd.action) {
case LFUN_INSET_MODIFY: {
InsetWrapParams params;
- InsetWrapMailer::string2params(to_utf8(cmd.argument()), params);
+ InsetWrap::string2params(to_utf8(cmd.argument()), params);
params_.lines = params.lines;
params_.placement = params.placement;
params_.overhang = params.overhang;
}
case LFUN_INSET_DIALOG_UPDATE:
- InsetWrapMailer(*this).updateDialog(&cur.bv());
+ cur.bv().updateDialog("wrap", params2string(params()));
break;
- case LFUN_MOUSE_RELEASE: {
- if (cmd.button() == mouse_button::button3 && hitButton(cmd)) {
- InsetWrapMailer(*this).showDialog(&cur.bv());
- break;
- }
- InsetCollapsable::doDispatch(cur, cmd);
- break;
- }
-
default:
InsetCollapsable::doDispatch(cur, cmd);
break;
void InsetWrap::updateLabels(ParIterator const & it)
{
- Counters & cnts = buffer().params().textClass().counters();
+ setLabel(_("wrap: ") + floatName(params_.type, buffer().params()));
+ Counters & cnts = buffer().params().documentClass().counters();
string const saveflt = cnts.current_float();
// Tell to captions what the current float is
}
-Inset * InsetWrap::clone() const
-{
- return new InsetWrap(*this);
-}
-
-
docstring InsetWrap::editMessage() const
{
return _("Opened Wrap Inset");
bool InsetWrap::showInsetDialog(BufferView * bv) const
{
if (!InsetText::showInsetDialog(bv))
- InsetWrapMailer(const_cast<InsetWrap &>(*this)).showDialog(bv);
+ bv->showDialog("wrap", params2string(params()),
+ const_cast<InsetWrap *>(this));
return true;
}
-string const InsetWrapMailer::name_("wrap");
-
-InsetWrapMailer::InsetWrapMailer(InsetWrap & inset)
- : inset_(inset)
-{}
-
-
-string const InsetWrapMailer::inset2string(Buffer const &) const
-{
- return params2string(inset_.params());
-}
-
-
-void InsetWrapMailer::string2params(string const & in, InsetWrapParams & params)
+void InsetWrap::string2params(string const & in, InsetWrapParams & params)
{
params = InsetWrapParams();
if (in.empty())
string name;
lex >> name;
- if (!lex || name != name_)
- return print_mailer_error("InsetWrapMailer", in, 1, name_);
+ if (!lex || name != "wrap") {
+ LYXERR0("InsetWrap::string2params(" << in << ")\n"
+ "Expected arg 1 to be \"wrap\"\n");
+ return;
+ }
// This is part of the inset proper that is usually swallowed
// by Text::readInset
string id;
lex >> id;
- if (!lex || id != "Wrap")
- return print_mailer_error("InsetBoxMailer", in, 2, "Wrap");
+ if (!lex || id != "Wrap") {
+ LYXERR0("InsetWrap::string2params(" << in << ")\n"
+ "Expected arg 2 to be \"Wrap\"\n");
+ return;
+ }
// We have to read the type here!
lex >> params.type;
}
-string const InsetWrapMailer::params2string(InsetWrapParams const & params)
+string InsetWrap::params2string(InsetWrapParams const & params)
{
ostringstream data;
- data << name_ << ' ';
+ data << "wrap" << ' ';
params.write(data);
return data.str();
}