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
00073 #ifndef IV_STRICT
00074
00077 static void set(SoState *state, SoNode *, Style style)
00078 { set(state, style); }
00079 #endif
00080
00084 static Style get(SoState *state)
00085 { return (Style)SoInt32Element::get(getClassTypeId(), getClassStackIndex(), state); }
00086
00090 static Style getDefault();
00091
00092 private:
00093
00095 virtual void init(SoState *state);
00096
00097 private:
00098
00099 static void initClass();
00100 static void exitClass();
00101
00102 private:
00103 virtual ~SoTextStyleElement();
00104 };
00105
00106 #endif // SO_TEXT_EFFECTS_ELEMENT
00107
00108
00109