00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef SO_TEXT_EFFECTS_ELEMENT
00025 #define SO_TEXT_EFFECTS_ELEMENT
00026
00027 #include <Inventor/elements/SoInt32Element.h>
00028
00041 SoEXTENDER_Documented class SoTextStyleElement : public SoInt32Element
00042 {
00043
00044 SO_ELEMENT_HEADER(SoTextStyleElement);
00045
00046 public:
00050 enum Style
00051 {
00053 NONE = 1 << 0,
00055 UNDERLINE = 1 << 1,
00057 STRIKETHROUGH = 1 << 2,
00059 DOUBLE_STRIKETHROUGH = 1 << 3,
00061 BACK_FRAME = 1 << 4,
00063 BACK_FRAME_LINE = 1 << 5,
00065 OVERLINE = 1 << 6
00066 };
00067
00071 static void set(SoState *state, Style style);
00072
00076 static void set(SoState *state, SoNode *, Style style)
00077 { set(state, style); }
00078
00082 static Style get(SoState *state)
00083 { return (Style)SoInt32Element::get(getClassTypeId(), getClassStackIndex(), state); }
00084
00088 static Style getDefault();
00089
00090 private:
00091
00093 virtual void init(SoState *state);
00094
00095 private:
00096
00097 static void initClass();
00098 static void exitClass();
00099
00100 private:
00101 virtual ~SoTextStyleElement();
00102 };
00103
00104 #endif // SO_TEXT_EFFECTS_ELEMENT
00105
00106
00107