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, std::string layerName, LayoutProperty* layout, SizeProperty* size,
53 DoubleProperty* rotation,
bool visible =
false, std::string namingProperty =
"name", std::string subCompositeSuffix =
" sub-hulls");
57 void setData(
const DataSet &dataSet);
59 void createComposite();
61 void setVisible(
bool visible);
62 bool isVisible()
const;
65 virtual void treatEvents(
const std::vector<Event> &events );
66 virtual void treatEvent(
const Event&);
70 const tlp::Color getColor();
80 GlComposite* _composite;
81 LayoutProperty* _layout;
83 DoubleProperty* _rotation;
84 std::vector<Color> _fillColors;
85 std::string _layerName;
87 const std::string _subCompositesSuffix;
88 const std::string _nameAttribute;
90 const static std::string temporaryPropertyValue;
94 std::map<tlp::Graph*, std::pair<tlp::GlComposite*, GlConvexGraphHull*> > _graphsComposites;
97 class GlHierarchyMainComposite :
public GlComposite {
99 GlHierarchyMainComposite(GlCompositeHierarchyManager* manager);
100 virtual void setVisible(
bool visible);
102 GlCompositeHierarchyManager* _manager;