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,
const std::string &layerName,
53 LayoutProperty *layout, SizeProperty *size, DoubleProperty *rotation,
54 bool visible =
false,
const std::string &namingProperty =
"name",
55 const std::string &subCompositeSuffix =
" sub-hulls");
59 void setData(
const DataSet &dataSet);
61 void createComposite();
63 void setVisible(
bool visible);
64 bool isVisible()
const;
67 void treatEvents(
const std::vector<Event> &events)
override;
68 void treatEvent(
const Event &)
override;
72 const tlp::Color getColor();
82 GlComposite *_composite;
83 LayoutProperty *_layout;
85 DoubleProperty *_rotation;
86 std::vector<Color> _fillColors;
87 std::string _layerName;
89 const std::string _subCompositesSuffix;
90 const std::string _nameAttribute;
92 const static std::string temporaryPropertyValue;
96 std::map<tlp::Graph *, std::pair<tlp::GlComposite *, GlConvexGraphHull *>> _graphsComposites;
99 class GlHierarchyMainComposite :
public GlComposite {
101 GlHierarchyMainComposite(GlCompositeHierarchyManager *manager);
102 void setVisible(
bool visible)
override;
105 GlCompositeHierarchyManager *_manager;
GlSimpleEntity used to agregate other GlEntity.