00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
#ifndef COIN_SOWWWANCHOR_H
00021
#define COIN_SOWWWANCHOR_H
00022
00023
#include <Inventor/nodes/SoSubNode.h>
00024
#include <Inventor/nodes/SoLocateHighlight.h>
00025
#include <Inventor/fields/SoSFString.h>
00026
#include <Inventor/fields/SoSFEnum.h>
00027
00028
00029
class SoWWWAnchor;
00030
00031
typedef void SoWWWAnchorCB(
const SbString & url,
void * data,
00032
SoWWWAnchor * node);
00033
00034
00035
00036 class COIN_DLL_API SoWWWAnchor :
public SoLocateHighlight {
00037
typedef SoLocateHighlight inherited;
00038
00039 SO_NODE_HEADER(SoWWWAnchor);
00040
00041
public:
00042
static void initClass(
void);
00043 SoWWWAnchor(
void);
00044
00045 enum Mapping {
00046 NONE, POINT
00047 };
00048
00049
SoSFString name;
00050
SoSFString description;
00051
SoSFEnum map;
00052
00053
void setFullURLName(
const SbString & url);
00054
const SbString & getFullURLName(
void);
00055
00056
virtual void handleEvent(
SoHandleEventAction * action);
00057
00058
static void setFetchURLCallBack(SoWWWAnchorCB * f,
void * userData);
00059
static void setHighlightURLCallBack(SoWWWAnchorCB * f,
void * userData);
00060
00061
protected:
00062
virtual ~SoWWWAnchor();
00063
00064
virtual void redrawHighlighted(
SoAction * act, SbBool isNowHighlighting);
00065 };
00066
00067
#endif // !COIN_SOWWWANCHOR_H