Open Inventor Reference
SoFontStyle.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (C) 2000 Silicon Graphics, Inc. All Rights Reserved.
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * Further, this software is distributed without any warranty that it is
16  * free of the rightful claim of any third person regarding infringement
17  * or the like. Any license provided herein, whether implied or
18  * otherwise, applies only to this software file. Patent licenses, if
19  * any, provided herein do not apply to combinations of this program with
20  * other software, or any other product whatsoever.
21  *
22  * You should have received a copy of the GNU Lesser General Public
23  * License along with this library; if not, write to the Free Software
24  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25  *
26  * Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
27  * Mountain View, CA 94043, or:
28  *
29  * http://www.sgi.com
30  *
31  * For further information regarding this notice, see:
32  *
33  * http://oss.sgi.com/projects/GenInfo/NoticeExplan/
34  *
35  */
36 
37 
38 /*
39  *
40  _______________________________________________________________________
41  ______________ S I L I C O N G R A P H I C S I N C . ____________
42  |
43  | $Revision: 1.1.1.1 $
44  |
45  | Description:
46  | Defines the SoFontStyle class
47  |
48  | Author(s): Chris Marrin
49  |
50  ______________ S I L I C O N G R A P H I C S I N C . ____________
51  _______________________________________________________________________
52  */
53 
54 #ifndef _SO_FONTSTYLE_
55 #define _SO_FONTSTYLE_
56 
59 #include <Inventor/nodes/SoFont.h>
61 
62 
65 
92 
94 
96 
97  public:
98 
101 
102  enum Family {
105  TYPEWRITER
106  };
107 
108  enum Style {
109  NONE = 0,
110  BOLD = 0x1,
111  ITALIC = 0x2
112  };
113 
115 
116 
119 
122 
124 
127 
128  SoEXTENDER public:
129  virtual void doAction(SoAction *action);
130  virtual void callback(SoCallbackAction *action);
131  virtual void GLRender(SoGLRenderAction *action);
132  virtual void getBoundingBox(SoGetBoundingBoxAction *action);
133  virtual void pick(SoPickAction *action);
134 
135  SoINTERNAL public:
136  static void initClass();
137 
138  protected:
139  virtual ~SoFontStyle();
140 
141  private:
142  static const char *fontList[][4];
143 };
144 
145 #endif /* _SO_FONTSTYLE_ */
#define SoEXTENDER
Provide inline template functions for abs, swap, min, max, and clamp.
Definition: SbBasic.h:154
#define SoINTERNAL
Definition: SbBasic.h:155
#define INVENTOR_API
Disable some annoying warnings on MSVC 6.
Definition: SbSystem.h:81
#define SO_NODE_HEADER(className)
Non-abstract classes have everything abstract classes have, plus a way to create an instance.
Definition: SoSubNode.h:170
Class for smart character strings.
Definition: SbString.h:85
Abstract base class for all actions.
Definition: SoAction.h:179
Performs a generic traversal of the scene graph.
Simple 3D text shape node.
Definition: SoFontStyle.h:93
SoSFEnum family
Defines the family of font to use.
Definition: SoFontStyle.h:118
static void initClass()
SbString getFontName()
Returns the font name used by this node based on the settings of family and style.
virtual void GLRender(SoGLRenderAction *action)
These virtual functions implement all of the actions for nodes, Most of the default implementations d...
SoSFBitMask style
Defines style modifications to the chosen font, either bold or italic or no change.
Definition: SoFontStyle.h:121
virtual void doAction(SoAction *action)
This method performs the "typical" operation of a node for any action.
virtual ~SoFontStyle()
@ SERIF
Use Serif style (such as Times-Roman)
Definition: SoFontStyle.h:103
@ SANS
Use Sans Serif style (such as Helvetica)
Definition: SoFontStyle.h:104
virtual void callback(SoCallbackAction *action)
virtual void getBoundingBox(SoGetBoundingBoxAction *action)
SoFontStyle()
Creates a font style node with default settings.
virtual void pick(SoPickAction *action)
Node that defines font type and size for text.
Definition: SoFont.h:94
Renders a scene graph using OpenGL.
Computes bounding box of a scene.
Abstract base class for picking objects in a scene.
Definition: SoPickAction.h:77
Single-value field containing a set of bit flags.
Definition: SoSFBitMask.h:99
Field containing an enumerated value.
Definition: SoSFEnum.h:93