3 * \file ControlCharacter.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.
12 #ifndef CONTROLCHARACTER_H
13 #define CONTROLCHARACTER_H
17 #include "frontend_helpers.h"
26 class ControlCharacter : public Dialog::Controller {
29 ControlCharacter(Dialog &);
31 virtual bool initialiseParams(std::string const & data);
33 virtual void clearParams();
35 virtual void dispatchParams();
37 virtual bool isBufferDependent() const { return true; }
39 virtual kb_action getLfun() const { return LFUN_FONT_FREE_UPDATE; }
42 void setFamily(Font::FONT_FAMILY);
44 void setSeries(Font::FONT_SERIES);
46 void setShape(Font::FONT_SHAPE);
48 void setSize(Font::FONT_SIZE);
50 void setBar(FONT_STATE);
52 void setColor(Color_color);
54 void setLanguage(std::string const &);
56 void setToggleAll(bool);
59 Font::FONT_FAMILY getFamily() const;
61 Font::FONT_SERIES getSeries() const;
63 Font::FONT_SHAPE getShape() const;
65 Font::FONT_SIZE getSize() const;
67 FONT_STATE getBar() const;
69 Color_color getColor() const;
71 std::string getLanguage() const;
73 bool getToggleAll() const;
76 boost::scoped_ptr<Font> font_;
79 /// If true the language should be reset.
80 /// If false the language of font_ is used.
84 } // namespace frontend
87 #endif // CONTROLCHARACTER_H