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;