Coin Logo http://www.sim.no
http://www.coin3d.org

Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

SoVRMLFontStyle.h

00001 /**************************************************************************\
00002  *
00003  *  This file is part of the Coin 3D visualization library.
00004  *  Copyright (C) 1998-2004 by Systems in Motion.  All rights reserved.
00005  *
00006  *  This library is free software; you can redistribute it and/or
00007  *  modify it under the terms of the GNU General Public License
00008  *  ("GPL") version 2 as published by the Free Software Foundation.
00009  *  See the file LICENSE.GPL at the root directory of this source
00010  *  distribution for additional information about the GNU GPL.
00011  *
00012  *  For using Coin with software that can not be combined with the GNU
00013  *  GPL, and for taking advantage of the additional benefits of our
00014  *  support services, please contact Systems in Motion about acquiring
00015  *  a Coin Professional Edition License.
00016  *
00017  *  See <URL:http://www.coin3d.org/> for more information.
00018  *
00019  *  Systems in Motion, Teknobyen, Abels Gate 5, 7030 Trondheim, NORWAY.
00020  *  <URL:http://www.sim.no/>.
00021  *
00022 \**************************************************************************/
00023 
00024 #ifndef COIN_SOVRMLFONTSTYLE_H
00025 #define COIN_SOVRMLFONTSTYLE_H
00026 
00027 #include <Inventor/nodes/SoSubNode.h>
00028 #include <Inventor/nodes/SoNode.h>
00029 #include <Inventor/fields/SoSFFloat.h>
00030 #include <Inventor/fields/SoSFBool.h>
00031 #include <Inventor/fields/SoMFString.h>
00032 #include <Inventor/fields/SoSFString.h>
00033 #include <Inventor/SbString.h>
00034 
00035 class SoVRMLFontStyleP;
00036 
00037 class COIN_DLL_API SoVRMLFontStyle : public SoNode
00038 {
00039   typedef SoNode inherited;
00040   SO_NODE_HEADER(SoVRMLFontStyle);
00041 
00042 public:
00043   static void initClass(void);
00044   SoVRMLFontStyle(void);
00045 
00046   enum Family {
00047     SERIF,
00048     SANS,
00049     TYPEWRITER
00050   };
00051 
00052   enum Style {
00053     PLAIN      = 0x0,
00054     BOLD       = 0x1,
00055     ITALIC     = 0x2,
00056     BOLDITALIC = 0x3
00057   };
00058 
00059   SoSFFloat size;
00060   SoMFString family;
00061   SoMFString style;
00062   SoSFBool horizontal;
00063   SoSFBool leftToRight;
00064   SoSFBool topToBottom;
00065   SoSFString language;
00066   SoMFString justify;
00067   SoSFFloat spacing;
00068 
00069   SbString getFontName(void);
00070 
00071   virtual void doAction(SoAction * action);
00072   virtual void callback(SoCallbackAction * action);
00073   virtual void GLRender(SoGLRenderAction * action);
00074   virtual void getBoundingBox(SoGetBoundingBoxAction * action);
00075   virtual void pick(SoPickAction * action);
00076   virtual void getPrimitiveCount(SoGetPrimitiveCountAction * action);
00077 
00078 protected:
00079   virtual ~SoVRMLFontStyle();
00080 
00081 private:
00082   SoVRMLFontStyleP * pimpl;
00083 };
00084 
00085 #endif // ! COIN_SOVRMLFONTSTYLE_H

Copyright © 1998-2004 by Systems in Motion AS. All rights reserved.

Generated on Tue Jul 13 06:57:24 2004 for Coin by Doxygen. 1.3.6