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

Generated on 24 Feb 2005 with doxygen version 1.3.9.1. Valid HTML 4.0! Valid CSS!