4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Lars Gullik Bjønnes
10 * Full author contact details are available in file CREDITS.
16 #include "FontEnums.h"
18 #include "support/docstring.h"
27 Bullet(int f = -1, int c = -1, int s = -1);
30 explicit Bullet(docstring const &);
33 void setCharacter(int);
39 void setText(docstring const &);
41 int getCharacter() const;
47 FontSize getFontSize() const;
49 docstring const & getText() const;
51 docstring const & getUnicode() const;
53 Bullet & operator=(Bullet const &);
55 friend bool operator==(Bullet const &, Bullet const &);
57 static docstring const bulletEntry(int, int);
60 void testInvariant() const;
63 This enum makes adding additional panels or changing panel sizes
64 easier. Since you only need change these values for all tests to
65 be correct for the new values.
67 Note: MAX means the size of the array so to test you need:
68 (x < MAX) *not* (x <= MAX)
82 void generateText() const;
84 void generateUnicode() const;
86 static docstring const bulletSize(int);
88 static FontSize bulletFontSize(int);
90 static docstring const bulletUnicode(int, int);
99 // size, character and font are array indices to access
100 // the predefined arrays of LaTeX equivalent strings.
102 /** flag indicates if user has control of text (1)
103 or if I can use it to generate strings (0)
106 mutable short user_text;
108 //NOTE: Arranging these four shorts above to be together
109 // like this should ensure they are in a single cache line
111 /** text may contain a user-defined LaTeX symbol command
112 or one generated internally from the font, character
115 mutable docstring text;
116 mutable docstring unicode;
121 bool operator!=(Bullet const & b1, Bullet const & b2)
128 Bullet const ITEMIZE_DEFAULTS[];
133 #endif /* BULLET_H_ */