Home Hierarchy Members Alphabetical Related Pages

fontstyle.h

Go to the documentation of this file.
00001 #ifndef XDKWRL_FONTSTYLE_H
00002 #define XDKWRL_FONTSTYLE_H
00003 
00004 #include <xdkwrl/config.h>
00005 #include <xdkwrl/node.h>
00006 #include <xdkwrl/fieldtypes/mfstring.h>
00007 #include <xdkwrl/fieldtypes/sfbool.h>
00008 #include <xdkwrl/fieldtypes/sffloat.h>
00009 #include <xdkwrl/fieldtypes/sfstring.h>
00010 
00011 namespace wrl
00012 {
00013   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00014   // Interface of FontStyle
00015   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00016   class XDKWRL_EXPORT FontStyle : public Node
00017   {
00018    public:
00019      FontStyle(const char* name="");
00020      virtual ~FontStyle();
00021      virtual inline unsigned int nbFields() const;
00022      virtual FieldHandle field(const std::string& n);
00023      virtual FieldHandle field(unsigned int i);
00024      virtual bool isSetToDefaultValue(unsigned int i) const;
00025      virtual inline unsigned int nbEventsIn() const;
00026      virtual EventInHandle eventIn(const std::string& n);
00027      virtual EventInHandle eventIn(unsigned int i);
00028      virtual inline unsigned int nbEventsOut() const;
00029      virtual EventOutHandle eventOut(const std::string& n);
00030      virtual EventOutHandle eventOut(unsigned int i);
00031      inline const char* typeName() const;
00032      virtual Node* duplicate() const;
00033      virtual Node* duplicate(std::map<const Node*,Node*>&) const;
00034      /*!@name Exposed Fields
00035       * A field that is capable of receiving events via an eventIn to 
00036       * change its value(s), and generating events via an eventOut 
00037       * when its value(s) change.
00038       */
00039       //!@{
00040      //!@}
00041      /*!@name Fields
00042       * A property or attribute of a node. Each node type has a fixed set
00043       * of fields. Fields may contain various kinds of data and one or many
00044       * values. Each field has a default value.
00045       */
00046       //!@{
00047       /*!
00048        * See <a href="#_details" class="md">Detailed Description</a>
00049        * for meaning of this field.
00050        * Default value is set to 
00051        \code
00052        
00053         \endcode
00054        */
00055        MFString   family;
00056       /*!
00057        * See <a href="#_details" class="md">Detailed Description</a>
00058        * for meaning of this field.
00059        * Default value is set to 
00060        \code
00061        horizontal = true;
00062         \endcode
00063        */
00064        SFBool     horizontal;
00065       /*!
00066        * See <a href="#_details" class="md">Detailed Description</a>
00067        * for meaning of this field.
00068        * Default value is set to 
00069        \code
00070        
00071         \endcode
00072        */
00073        MFString   justify;
00074       /*!
00075        * See <a href="#_details" class="md">Detailed Description</a>
00076        * for meaning of this field.
00077        * Default value is set to 
00078        \code
00079        language = string("");
00080         \endcode
00081        */
00082        SFString   language;
00083       /*!
00084        * See <a href="#_details" class="md">Detailed Description</a>
00085        * for meaning of this field.
00086        * Default value is set to 
00087        \code
00088        leftToRight = true;
00089         \endcode
00090        */
00091        SFBool     leftToRight;
00092       /*!
00093        * See <a href="#_details" class="md">Detailed Description</a>
00094        * for meaning of this field.
00095        * Default value is set to 
00096        \code
00097        size = 1.0f;
00098         \endcode
00099        */
00100        SFFloat    size;
00101       /*!
00102        * See <a href="#_details" class="md">Detailed Description</a>
00103        * for meaning of this field.
00104        * Default value is set to 
00105        \code
00106        spacing = 1.0f;
00107         \endcode
00108        */
00109        SFFloat    spacing;
00110       /*!
00111        * See <a href="#_details" class="md">Detailed Description</a>
00112        * for meaning of this field.
00113        * Default value is set to 
00114        \code
00115        style = string("PLAIN");
00116         \endcode
00117        */
00118        SFString   style;
00119       /*!
00120        * See <a href="#_details" class="md">Detailed Description</a>
00121        * for meaning of this field.
00122        * Default value is set to 
00123        \code
00124        topToBottom = true;
00125         \endcode
00126        */
00127        SFBool     topToBottom;
00128      //!@}
00129      /*!@name Events In
00130       * 
00131       */
00132       //!@{
00133   //!@}
00134      /*!@name Events Out
00135       * 
00136       */
00137       //!@{
00138   //!@}
00139   };
00140 };
00141 //************************************************************
00142 // Implementation of FontStyle
00143 //************************************************************
00144 /*!
00145  * Returns <code>"FontStyle"</code>. Useful for printing.
00146  */
00147 inline const char*
00148 wrl::FontStyle::typeName() const
00149 {
00150   return "FontStyle";
00151 }
00152 /*!
00153  * Returns the number of fields (exposed or not) for this node type.
00154  */
00155 inline unsigned int
00156 wrl::FontStyle::nbFields() const
00157 {
00158    return 9;
00159 }
00160 /*!
00161  * Returns the number of events in for this node type.
00162  */
00163 inline unsigned int
00164 wrl::FontStyle::nbEventsIn() const
00165 {
00166    return 0;
00167 }
00168 /*!
00169  * Returns the number of events out for this node type.
00170  */
00171 inline unsigned int
00172 wrl::FontStyle::nbEventsOut() const
00173 {
00174    return 0;
00175 }
00176 #endif // XDKWRL_FONTSTYLE_H
00177 
00178 // Local variables section.
00179 // This is only used by emacs!
00180 // Local Variables:
00181 // ff-search-directories: ("../../" "../../../src/xdkwrl/nodes")
00182 // End:

Generated on 5 Jan 2007 with doxygen version 1.5.1. Valid HTML 4.0! Valid CSS!