23 #include <tulip/tulipconf.h>
29 #include <tulip/GlSimpleEntity.h>
49 GlComposite(
bool deleteComponentsInDestructor=
true);
61 void reset(
bool deleteElems);
73 void deleteGlEntity(
const std::string &key,
bool informTheEntity=
true);
79 void deleteGlEntity(
GlSimpleEntity *entity,
bool informTheEntity=
true);
91 const std::map<std::string, GlSimpleEntity*> &
103 this->stencil=stencil;
105 for(std::list<GlSimpleEntity*>::iterator it=_sortedElements.begin(); it!=_sortedElements.end(); ++it) {
106 (*it)->setStencil(stencil);
114 this->deleteComponentsInDestructor=deleteComponentsInDestructor;
120 virtual void translate(
const Coord &mouvement);
125 virtual void getXML(std::string &outString);
130 virtual void setWithXML(
const std::string &inString,
unsigned int ¤tPosition);
137 virtual void acceptVisitor(GlSceneVisitor *visitor) {
139 for(std::list<GlSimpleEntity*>::iterator it=_sortedElements.begin(); it!=_sortedElements.end(); ++it) {
140 if((*it)->isVisible()) {
146 for(std::map<std::string, GlSimpleEntity*>::iterator itE=elements.begin(); itE!=elements.end(); ++itE) {
147 if((*itE).second==(*it)) {
148 tlp::warning() <<
"Invalid bounding box for entity : " << (*itE).first << std::endl;
156 (*it)->acceptVisitor(visitor);
164 virtual void addLayerParent(GlLayer *layer);
169 virtual void removeLayerParent(GlLayer *layer);
174 void notifyModified(GlSimpleEntity *entity);
179 virtual void draw(
float,Camera *) {}
185 std::map<std::string, GlSimpleEntity*> elements;
186 std::list<GlSimpleEntity *> _sortedElements;
187 std::vector<GlLayer *> layerParents;
188 bool deleteComponentsInDestructor;