19 #include <ubit/udefs.hpp> 20 #include <ubit/uobject.hpp> 21 #include <ubit/uchild.hpp> 22 #include <ubit/uparent.hpp> 55 CDATA_SECTION_NODE = 4,
56 ENTITY_REFERENCE_NODE = 5,
58 PROCESSING_INSTRUCTION_NODE = 7,
61 DOCUMENT_TYPE_NODE = 10,
62 DOCUMENT_FRAGMENT_NODE = 11,
68 WINLIST=-1, UNDISPLAYBLE=0, ATTRIBUTE, DATA, INLINE, BLOCK, BORDER, HARDWIN, SOFTWIN
88 virtual int getDisplayType()
const {
return UNDISPLAYBLE;}
89 virtual int isDisplayable()
const {
return getDisplayType() > 0;}
96 virtual bool isChildOf(
const UElem& parent,
bool indirect =
true)
const;
128 virtual bool hasSceneGraphParent()
const;
137 if (dynamic_cast<CC*>(*p)) {
return (CC*)*p;}
138 else return ((
UNode*)(*p))->findParent<CC>();
144 virtual int getBoxParents(std::vector<UBox*>& parvect)
const;
241 virtual void addChangeCall(
UCall&);
242 virtual UElem* getSubGroup()
const {
return null;}
virtual void update()
updates object graphics.
Definition: unode.hpp:202
virtual void removingFrom(UChild &, UElem &parent)
called when this object is removed from a parent (SEE DETAILS IF YOU REDEFINE THIS METHOD)...
Definition: unode.hpp:222
Parent list.
Definition: uparent.hpp:57
Definition: uparent.hpp:39
Box container.
Definition: ubox.hpp:64
Base class of objects that can be added to the UBIT scene graph (SEE DETAILS!).
Definition: unode.hpp:38
Ubit Event class.
Definition: uevent.hpp:30
CC * findParent() const
< this object has at least one parent in the scene graph.
Definition: unode.hpp:135
UNode & setAutoUpdate(bool state=true)
changes the update policy of this object when its is modified.
Definition: unode.cpp:40
virtual bool fire(UEvent &) const
fires callback functions that match this event.
Definition: unode.cpp:270
virtual UParents & parents() const
returns the list of direct parents (
Definition: unode.hpp:116
Base class for Ubit conditions.
Definition: ucond.hpp:29
DisplayType
Ubit display types.
Definition: unode.hpp:67
UNode()
constructor, can anly be called by subclasses because UNode is abstract.
Definition: unode.cpp:34
virtual UElem * getParent(int pos=0) const
returns the Nth direct parent.
virtual int getBoxParents(std::vector< UBox *> &parvect) const
retrieves direct and indirect parents that are boxes.
Definition: unode.cpp:151
specifies how to update UElem, UBox, UWin objects and subclasses.
Definition: uupdate.hpp:25
NodeType
redefines Class() and getClass() methods (
Definition: unode.hpp:51
UChildIter _aend() const
[impl] to be removed @.
Definition: unode.hpp:250
virtual UNode * toNode()
dynamic cast: returns this object if it derives from UNode and null otherwise.
Definition: unode.hpp:91
void fireParents(const UCond &c, UNode *n)
fire parents callbacks that match this event.
Definition: unode.cpp:386
virtual const UStr & getNodeName() const
return the XML node name.
Definition: unode.cpp:36
virtual void addingTo(UChild &, UElem &parent)
called when this object is added to a parent.
Definition: unode.hpp:219
lightweight general purpose container.
Definition: uelem.hpp:44
Child (or attribute) list.
Definition: uchild.hpp:79
virtual ~UNode()
destructor, note that children are recursively destroyed except if pointed elsewhere ( ...
Definition: unode.hpp:75
base class of callback objects for firing functions or methods.
Definition: ucall.hpp:144
virtual UView * getParentView(const UView *) const
returns the direct or indirect parent's view that contains this view.
Argument list (for passing arguments to constructor or add functions).
Definition: uargs.hpp:43
friend UChild operator/(const UCond &, UNode &)
conditional expression for callback functions and conditionnal objects.
void _addAttr(const UChild &attribute)
[impl] to be removed @.
Definition: unode.cpp:83
virtual void destructs()
unlinks the object from its parents and destroys its children.
Definition: unode.cpp:56
Box View.
Definition: uview.hpp:65
UParentIter pend() const
returns an iterator to the end of the parent list (
Definition: unode.hpp:113
Definition: uhardfont.hpp:31
virtual int getNodeType() const
returns the XML node type.
Definition: unode.hpp:79
void updateAutoParents(const UUpdate &)
removes the first element that is pointing to this child.
Definition: unode.cpp:378
UParentIter pbegin() const
returns an iterator to the beginning of the list of direct parents.
Definition: unode.hpp:101
virtual bool isChildOf(const UElem &parent, bool indirect=true) const
returns true if this object a child of 'parent'.
Definition: unode.cpp:249
virtual void removeFromParents(bool update_parents=true)
[impl] removes this object from all direct parents.
Definition: unode.cpp:202
UChildIter _abegin() const
[impl] to be removed @.
Definition: unode.hpp:247
bool isAutoUpdate() const
return current update policy: see setAutoUpdate().
Definition: unode.hpp:205
virtual UNode & removeAllAttrs(bool autodel=true)
removes all attributes (if any, redefined by subclasses).
Definition: unode.cpp:101
virtual UStr getNodeValue() const
return the XML node value.
Definition: unode.cpp:38
virtual const UNode * toNode() const
dynamic cast: returns this object if it derives from UNode and null otherwise.
Definition: unode.hpp:92
Ubit String.
Definition: ustr.hpp:72
Base class of most Ubit objects (SEE DETAILS!).
Definition: uobject.hpp:113
[impl] Internal implementation of a child node.
Definition: uchild.hpp:23