18 #define _uchild_hpp_ 1 30 UNode* operator*() {
return obj;}
31 const UNode* operator*()
const {
return obj;}
33 UElem* getParent() {
return parent;}
35 const UCond* getCond()
const {
return cond;}
36 void setCond(
const UCond& c) {cond = &c;}
37 void setCond(
const UChild& c) {cond = c.cond;}
50 template <
class _Iter>
58 UNode* operator*() {
return static_cast<UNode*
>(*_Iter::operator*());}
59 UChild& child() {
return _Iter::operator*();}
60 const UCond* getCond() {
return _Iter::operator*().getCond();}
81 UChildIter at(
int pos);
84 UChildIter find(
const UNode& child);
87 UChildIter findStr(
const UStr& value,
bool ignore_case =
true);
92 UChildIter findBox(
const UStr& value,
bool ignore_case =
true);
107 for (UChildIter i = begin(); i != end(); ++i) {
108 if (dynamic_cast<CC*>(*i)) {c = (CC*)*i;
return i;}
Base class of objects that can be added to the UBIT scene graph (SEE DETAILS!).
Definition: unode.hpp:38
Base class for Ubit conditions.
Definition: ucond.hpp:29
Definition: uchild.hpp:51
lightweight general purpose container.
Definition: uelem.hpp:44
Child (or attribute) list.
Definition: uchild.hpp:79
[impl] Internal implementation of a parent node.
Definition: uparent.hpp:23
Definition: uhardfont.hpp:31
UChildIter findClass(CC *&c)
returns an iterator to the first child that derives from this class.
Definition: uchild.hpp:105
Ubit String.
Definition: ustr.hpp:72
[impl] Internal implementation of a child node.
Definition: uchild.hpp:23