Provided by: inventor-doc_2.1.5-10-18_all bug


       SoWWWAnchor — separator group node with a URL hyperlink


       SoBase  >  SoFieldContainer  >  SoNode  >  SoGroup  >  SoSeparator  >  SoLocateHighlight >


       #include <Inventor/nodes/SoWWWAnchor.h>

     typedef void        SoWWWAnchorCB(const SbString &url, void *userData, SoWWWAnchor *node)

     enum Mapping {
          SoWWWAnchor::NONE   Do not add information to the URL
          SoWWWAnchor::POINT  Add object-space coordinates to URL

          Fields from class SoWWWAnchor:

     SoSFString          name
     SoSFString          description
     SoSFEnum            map

          Fields from class SoLocateHighlight:

     SoSFColor           color
     SoSFEnum            style
     SoSFEnum            mode

          Fields from class SoSeparator:

     SoSFEnum            renderCaching
     SoSFEnum            boundingBoxCaching
     SoSFEnum            renderCulling
     SoSFEnum            pickCulling

          Methods from class SoWWWAnchor:

     static SoType       getClassTypeId()
     void                setFullURLName(const SbString &url)
     const SbString &    getFullURLName()
     static void         setFetchURLCallBack(SoWWWAnchorCB *f, void *userData)
     static void         setHighlightURLCallBack(SoWWWAnchorCB *f, void *userData)

          Methods from class SoSeparator:

     static void         setNumRenderCaches(int howMany)
     static int          getNumRenderCaches()

          Methods from class SoGroup:

     void                addChild(SoNode *child)
     void                insertChild(SoNode *child, int newChildIndex)
     SoNode *            getChild(int index) const
     int                 findChild(const SoNode *child) const
     int                 getNumChildren() const
     void                removeChild(int index)
     void                removeChild(SoNode *child)
     void                removeAllChildren()
     void                replaceChild(int index, SoNode *newChild)
     void                replaceChild(SoNode *oldChild, SoNode *newChild)

          Methods from class SoNode:

     void                setOverride(SbBool state)
     SbBool              isOverride() const
     SoNode *            copy(SbBool copyConnections = FALSE) const
     virtual SbBool      affectsState() const
     static SoNode *     getByName(const SbName &name)
     static int          getByName(const SbName &name, SoNodeList &list)

          Methods from class SoFieldContainer:

     void                setToDefaults()
     SbBool              hasDefaultValues() const
     SbBool              fieldsAreEqual(const SoFieldContainer *fc) const
     void                copyFieldValues(const SoFieldContainer  *fc,  SbBool  copyConnections  =
     SbBool              set(const char *fieldDataString)
     void                get(SbString &fieldDataString)
     virtual int         getFields(SoFieldList &resultList) const
     virtual SoField *   getField(const SbName &fieldName) const
     SbBool              getFieldName(const SoField *field, SbName &fieldName) const
     SbBool              isNotifyEnabled() const
     SbBool              enableNotify(SbBool flag)

          Methods from class SoBase:

     void                ref()
     void                unref() const
     void                unrefNoDelete() const
     void                touch()
     virtual SoType      getTypeId() const
     SbBool              isOfType(SoType type) const
     virtual void        setName(const SbName &name)
     virtual SbName      getName() const


       This  node  defines  a  separator  group  which  has  a  URL  (Universal Resource Locator)
       hyperlink. When clicked on, this node invokes an application callback to  fetch  the  URL.
       The  application may fetch the data itself, or call a World Wide Web browser like the HTML
       based Netscape Navigator or the VRML based WebSpace Navigator to load the URL.


     SoSFString          name
          URL which the application will be called back to fetch when this node is activated by a
          left mouse click (e.g. "").

     SoSFString          description
          A  description  of the URL which may make more sense to users than the URL itself (e.g.
          "The Open Inventor Home Page").

     SoSFEnum            map
          Specifies what additional information should be added to the end of the URL when passed
          back  to  the application for fetching. If set to POINT, then the x,y,z location of the
          object space intersection point when the mouse was clicked will be suffixed to the URL.
          Since the comma character does not transmit through some web browsers, it is written in
          hex form (e.g. if the intersection point is 17,4.5,1 the URL passed to the  application
          callback would be "").


          Creates an anchor node with default settings.

     static SoType       getClassTypeId()
          Returns type identifier for this class.

     void                setFullURLName(const SbString &url)
     const SbString &    getFullURLName()
          If   the   name   field   contains   a   relative   URL   (e.g.  "foo.wrl"  instead  of
          ""), the anchor cannot resolve the URL reference.  This  method
          allows   the   application   to   tell  the  anchor  what  it's  full  URL  should  be.
          getFullURLName() returns the fullURL set here, or if not set, returns the  contents  of
          the name field.

     static void         setFetchURLCallBack(SoWWWAnchorCB *f, void *userData)
          Application  callbacks  invoked  when  the  mouse  is  clicked on an anchor so that the
          application can fetch the URL or call Netscape or WebSpace to fetch the URL.

     static void         setHighlightURLCallBack(SoWWWAnchorCB *f, void *userData)
          Application callbacks invoked when the mouse is moved over an anchor so  that  the  app
          can  provide feedback such as changing the cursor, or displaying the anchor description
          and name.


          When the left mouse is clicked over a child of this anchor  node,  the  application  is
          called back to fetch the URL (see setFetchURLCallBack()).


       WWWAnchor {
          renderCaching       AUTO
          boundingBoxCaching  AUTO
          renderCulling       AUTO
          pickCulling         AUTO
          mode                AUTO
          style               EMISSIVE
          color               0.3 0.3 0.3
          name                "<Undefined URL>"
          description         ""
          map                 NONE