27 #include <tulip/DataSet.h> 28 #include <tulip/Observable.h> 29 #include <tulip/GlComposite.h> 33 class GlConvexGraphHull;
40 struct ConvexHullItem;
49 class TLP_QT_SCOPE GlCompositeHierarchyManager :
private Observable {
52 GlCompositeHierarchyManager(Graph* graph, GlLayer* layer,
53 const std::string& layerName,
54 LayoutProperty* layout, SizeProperty* size,
55 DoubleProperty* rotation,
bool visible =
false,
56 const std::string& namingProperty =
"name",
57 const std::string& subCompositeSuffix =
" sub-hulls");
61 void setData(
const DataSet &dataSet);
63 void createComposite();
65 void setVisible(
bool visible);
66 bool isVisible()
const;
69 virtual void treatEvents(
const std::vector<Event> &events );
70 virtual void treatEvent(
const Event&);
74 const tlp::Color getColor();
84 GlComposite* _composite;
85 LayoutProperty* _layout;
87 DoubleProperty* _rotation;
88 std::vector<Color> _fillColors;
89 std::string _layerName;
91 const std::string _subCompositesSuffix;
92 const std::string _nameAttribute;
94 const static std::string temporaryPropertyValue;
98 std::map<tlp::Graph*, std::pair<tlp::GlComposite*, GlConvexGraphHull*> > _graphsComposites;
101 class GlHierarchyMainComposite :
public GlComposite {
103 GlHierarchyMainComposite(GlCompositeHierarchyManager* manager);
104 virtual void setVisible(
bool visible);
106 GlCompositeHierarchyManager* _manager;
GlSimpleEntity used to agregate other GlEntity.