3 * \file ControlCommand.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Angus Leeming
9 * Full author contact details are available in file CREDITS
11 * ControlCommand is a controller class for dialogs that create or modify
12 * an inset derived from InsetCommand.
15 #ifndef CONTROLCOMMAND_H
16 #define CONTROLCOMMAND_H
20 #include "insets/insetcommandparams.h"
21 #include "commandtags.h" // kb_action
24 class ControlCommand : public Dialog::Controller {
27 ControlCommand(Dialog &, kb_action=LFUN_NOACTION);
29 InsetCommandParams & params() { return params_; }
31 InsetCommandParams const & params() const { return params_; }
33 virtual void initialiseParams(string const & data);
35 virtual void clearParams();
37 virtual void dispatchParams();
39 virtual bool isBufferDependent() const { return true; }
43 InsetCommandParams params_;
44 /// Flags what action is taken by Kernel::dispatch()
45 kb_action const action_;
49 #endif // CONTROLCOMMAND_H