]> git.lyx.org Git - lyx.git/blob - src/frontends/xforms/FormCharacter.h
Bugfixes: checkboxes to radiobuttons (from J�rgen S) and remove a little
[lyx.git] / src / frontends / xforms / FormCharacter.h
1 // -*- C++ -*-
2 /** 
3  * \file FormCharacter.h
4  * Copyright 2001 The LyX Team.
5  * See the file COPYING.
6  * 
7  * \author Edwin Leuven, leuven@fee.uva.nl
8  * \author Angus Leeming, a.leeming@.ac.uk
9  */
10
11 #ifndef FORM_CHARACTER_H
12 #define FORM_CHARACTER_H
13
14 #include <boost/smart_ptr.hpp>
15
16 #ifdef __GNUG_
17 #pragma interface
18 #endif
19
20 #include "FormBase.h"
21 #include "lyxfont.h"          // for LyXFont enums
22 #include "ControlCharacter.h" // for ControlCharacter enum
23 #include "LColor.h"           // for LColor enum
24 #include "character.h"        // for FONT_STATE enum
25
26 class Combox;
27 struct FD_form_character;
28
29 /** 
30  * This class provides an XForms implementation of the Character Dialog.
31  * The character dialog allows users to change the character settings
32  * in their documents.
33  */
34 class FormCharacter
35         : public FormCB<ControlCharacter, FormDB<FD_form_character> > {
36 public:
37         ///
38         FormCharacter(ControlCharacter &);
39 private:
40
41         /// Apply from dialog
42         virtual void apply();
43    
44         /// Build the dialog
45         virtual void build();
46    
47         /// Update the dialog.
48         virtual void update();
49
50         /// Filter the inputs on callback from xforms
51         virtual ButtonPolicy::SMInput input(FL_OBJECT *, long);
52
53         /** Callback method (used only to activate Apply button when
54             combox is changed */
55         static void ComboInputCB(int, void *, Combox *);
56
57         /// Fdesign generated method
58         FD_form_character * build_character();
59         
60         ///
61         boost::scoped_ptr<Combox> combo_language2_;
62         ///
63         std::vector<LyXFont::FONT_FAMILY>  family_;
64         ///
65         std::vector<LyXFont::FONT_SERIES>  series_;
66         ///
67         std::vector<LyXFont::FONT_SHAPE>   shape_;
68         ///
69         std::vector<LyXFont::FONT_SIZE>    size_;
70         ///
71         std::vector<character::FONT_STATE> bar_;
72         ///
73         std::vector<LColor::color>         color_;
74 };
75
76 #endif