*
* \file ControlExternal.C
* \author Asger Alstrup
- * \author John Levon
+ * \author John Levon, moz@compsoc.man.ac.uk
* \author Angus Leeming, a.leeming@ic.ac.uk
*/
// Create a local copy of the inset and initialise it with this
// params struct.
- InsetExternal ie;
- ie.setFromParams(params());
+ boost::scoped_ptr<InsetExternal> ie;
+ ie.reset(static_cast<InsetExternal *>(inset()->Clone(*lv_.buffer())));
+ ie->setFromParams(params());
- ie.editExternal();
+ ie->editExternal();
}
void ControlExternal::viewExternal()
{
view().apply();
- InsetExternal ie;
- ie.setFromParams(params());
+ boost::scoped_ptr<InsetExternal> ie;
+ ie.reset(static_cast<InsetExternal *>(inset()->Clone(*lv_.buffer())));
+ ie->setFromParams(params());
- ie.viewExternal();
+ ie->viewExternal();
}
void ControlExternal::updateExternal()
{
view().apply();
- InsetExternal ie;
- ie.setFromParams(params());
+ boost::scoped_ptr<InsetExternal> ie;
+ ie.reset(static_cast<InsetExternal *>(inset()->Clone(*lv_.buffer())));
+ ie->setFromParams(params());
- ie.updateExternal();
+ ie->updateExternal();
}
vector<string> const ControlExternal::getTemplates() const
}
fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_gravity(obj, FL_SouthWest, FL_SouthEast);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 0);
{
char const * const dummy = N_("Edit file|#E");
fdui->button_edit = obj = fl_add_button(FL_NORMAL_BUTTON, 435, 50, 110, 30, idex(_(dummy)));
using std::endl;
InsetExternal::InsetExternal()
- : view(0)
+ : view_(0)
{
- tempname = lyx::tempName(string(), "lyxext");
+ tempname_ = lyx::tempName(string(), "lyxext");
//ExternalTemplateManager::Templates::const_iterator i1;
params_.templ = ExternalTemplateManager::get().getTemplates().begin()->second;
}
InsetExternal::~InsetExternal()
{
- lyx::unlink(tempname);
+ lyx::unlink(tempname_);
hideDialog();
}
void InsetExternal::Edit(BufferView * bv,
int /*x*/, int /*y*/, unsigned int /*button*/)
{
- view = bv;
- view->owner()->getDialogs()->showExternal(this);
+ view_ = bv;
+ view_->owner()->getDialogs()->showExternal(this);
}
{
InsetExternal * inset = new InsetExternal();
inset->params_ = params_;
+ inset->view_ = view_;
return inset;
}
result = subst(result, "$$Basename", basename);
result = subst(result, "$$Parameters", params_.parameters);
result = ReplaceEnvironmentPath(result);
- result = subst(result, "$$Tempname", tempname);
+ result = subst(result, "$$Tempname", tempname_);
result = subst(result, "$$Sysdir", system_lyxdir);
// Handle the $$Contents(filename) syntax
if (cit == et.formats.end())
return;
- executeCommand(doSubstitution(view->buffer(),
+ executeCommand(doSubstitution(view_->buffer(),
(*cit).second.updateCommand),
- view->buffer());
+ view_->buffer());
}
if (et.automaticProduction)
updateExternal();
- executeCommand(doSubstitution(view->buffer(),
+ executeCommand(doSubstitution(view_->buffer(),
et.viewCommand),
- view->buffer());
+ view_->buffer());
}
if (et.automaticProduction)
updateExternal();
- executeCommand(doSubstitution(view->buffer(),
+ executeCommand(doSubstitution(view_->buffer(),
et.editCommand),
- view->buffer());
+ view_->buffer());
}