mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-25 02:49:46 +00:00
b02242bfaf
* src/insets/insetcommandparams.[Ch]: (operator[]): New, access a parameter (clear): New, clear all parameters (info_): New, stire info about this command (cmdname): Rename to name_ (contents, options, sec_options): Replace with params_. Parameters are now stored as docstring. (findInfo): New factor for command info for all commands (read, write): Use new syntax (parameter set and get methods): reimplemenmt for new parameter storage * src/insets/insetcommand.h (getParam): New, get a parameter (setParam): New, set a parameter (parameter set and get methods): Adjust to InsetCommandParams changes * src/insets/insetbibitem.[Ch] (write): Remove, not needed anymore (directWrite): ditto * src/insets/insetbibitem.C (InsetBibitem::read): Use InsetCommand::read * src/insets/insetref.C (InsetRef::latex): Use new InsetCommandParams interface * src/mathed/InsetMathHull.C (InsetMathHull::doDispatch): ditto * src/text3.C (LyXText::dispatch): ditto * src/factory.C (createInset): Create InsetCommandParams with command name (readInset): ditto (readInset): Remove error message for bibitem, since bibitem is now a normal command inset * src/buffer.C: Bump file format number * src/frontends/controllers/ControlCommand.[Ch] (ControlCommand): take an additional command name parameter * src/text.C (readParToken): Remove code for \bibitem * lib/lyx2lyx/LyX.py: Bump latest file format number * lib/lyx2lyx/lyx_1_5.py (convert_bibitem, convert_commandparams): new, convert to new format (revert_commandparams): new, convert to old format * development/FORMAT: document new format * many other files: Adjust to the changes above git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15357 a592a061-630c-0410-9148-cb99ea01b6c8
58 lines
1.1 KiB
C
58 lines
1.1 KiB
C
/**
|
|
* \file ControlCommand.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 "ControlCommand.h"
|
|
|
|
#include "funcrequest.h"
|
|
#include "insets/insetcommand.h"
|
|
|
|
|
|
using std::string;
|
|
|
|
namespace lyx {
|
|
namespace frontend {
|
|
|
|
ControlCommand::ControlCommand(Dialog & dialog, string const & command_name,
|
|
string const & lfun_name)
|
|
: Dialog::Controller(dialog), params_(command_name),
|
|
lfun_name_(lfun_name)
|
|
{}
|
|
|
|
|
|
bool ControlCommand::initialiseParams(string const & data)
|
|
{
|
|
// The name passed with LFUN_INSET_APPLY is also the name
|
|
// used to identify the mailer.
|
|
InsetCommandMailer::string2params(lfun_name_, data, params_);
|
|
return true;
|
|
}
|
|
|
|
|
|
void ControlCommand::clearParams()
|
|
{
|
|
params_.clear();
|
|
}
|
|
|
|
|
|
void ControlCommand::dispatchParams()
|
|
{
|
|
if (lfun_name_.empty())
|
|
return;
|
|
|
|
string const lfun = InsetCommandMailer::params2string(lfun_name_,
|
|
params_);
|
|
kernel().dispatch(FuncRequest(getLfun(), lfun));
|
|
}
|
|
|
|
} // namespace frontend
|
|
} // namespace lyx
|