27 #include <tulip/DataSet.h>
28 #include <tulip/Observable.h>
29 #include <tulip/GlConvexGraphHull.h>
45 class TLP_QT_SCOPE GlCompositeHierarchyManager :
private Observable {
48 GlCompositeHierarchyManager(Graph *graph, GlLayer *layer,
const std::string &layerName,
49 LayoutProperty *layout, SizeProperty *size, DoubleProperty *rotation,
50 bool visible =
false,
const std::string &namingProperty =
"name",
51 const std::string &subCompositeSuffix =
" sub-hulls");
55 void setData(
const DataSet &dataSet);
57 void createComposite();
59 void setVisible(
bool visible);
60 bool isVisible()
const;
63 void treatEvents(
const std::vector<Event> &events)
override;
64 void treatEvent(
const Event &)
override;
67 const tlp::Color &getColor();
69 const std::string &getTexture();
75 void buildComposite(
tlp::Graph *current, tlp::GlConvexGraphHullsComposite *composite);
79 GlConvexGraphHullsComposite *_composite;
80 LayoutProperty *_layout;
82 DoubleProperty *_rotation;
83 std::vector<Color> _fillColors;
84 std::vector<std::string> _fillTextures;
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::GlConvexGraphHullsComposite *, GlConvexGraphHull *>>