27 #include "../dataaccess/dataset/ObjectIdSet.h"
28 #include "../se/Style.h"
29 #include "../srs/Config.h"
35 : te::common::TreeItem(parent),
38 m_visibilityChanged(false),
48 : te::common::TreeItem(parent),
52 m_visibilityChanged(false),
62 const std::string& title,
64 : te::common::TreeItem(parent),
69 m_visibilityChanged(false),
108 std::vector<AbstractLayer*> layers;
109 std::vector<AbstractLayer*> childrenLayers;
111 std::size_t numChildren = getChildrenCount();
112 for(std::size_t i = 0; i < numChildren; ++i)
115 layers.push_back(childLayer);
120 for(std::size_t i = 0; i < childrenLayers.size(); ++i)
121 layers.push_back(childrenLayers[i]);
130 std::vector<AbstractLayer*> layers;
135 layers.push_back(parentLayer);
151 m_visibilityChanged =
false;
155 if(m_visibility != prevVisibility)
156 m_visibilityChanged =
true;
161 return m_visibilityChanged;
166 m_visibilityChanged = visChanged;
174 bool allVisible =
true;
175 bool allNotVisible =
true;
181 std::vector<AbstractLayer*> childrenVec(numChildren);
183 for(
int i = 0; i < numChildren; ++i)
190 allNotVisible =
false;
194 allNotVisible =
false;
202 else if(allNotVisible)
207 if(parentVisibility != prevParentVisibility)
248 if(m_selected->size() == 0)
257 m_selected->Union(oids);
275 if(m_selected->size() == 0)
278 m_selected->difference(oids);
300 m_grouping = grouping;
316 return m_geomPropertyName;
321 m_geomPropertyName = name;
326 return m_compositionMode;
331 m_compositionMode = mode;
virtual const std::string & getId() const
It returns the layer id.
const TreeItemPtr & getChild(std::size_t i) const
It returns the n-th child.
virtual ~AbstractLayer()
Virtual destructor.
std::size_t getChildrenCount() const
It returns the number of children of this node.
The Style defines the styling that is to be applied to a geographic dataset (vector geometries or cov...
This is the base class for layers.
virtual const te::gm::Envelope & getExtent() const
It returns the Layer extent (or minimum bounding box).
virtual const std::string & getTitle() const
It returns the layer title.
virtual void updateVisibility()
It updates the visibility of this layer.
bool hasChildren() const
It returns true if the item has descendants.
void setCompositionMode(te::map::CompositionMode mode)
It sets the composition mode.
This is the base class for Layers.
bool hasVisibilityChanged()
It gets the flag that indicates if the layer visibility has changed.
virtual void setGrouping(te::map::Grouping *grouping)
It sets the Grouping associated to the Layer.
virtual void setOutOfDate()
Its indicate that the layer schema is out of date.
virtual Visibility getVisibility() const
It returns the layer visibility.
virtual void setTitle(const std::string &title)
It sets the layer title.
virtual te::map::Chart * getChart() const
It returns the Chart associated to the Layer.
te::map::CompositionMode getCompositionMode() const
It returns the composition mode.
CompositionMode
The composition mode used to render the canvas.
virtual void setGeomPropertytName(const std::string &name)
This class contains the parameters needed for grouping the values of a Property.
virtual void setChart(te::map::Chart *chart)
It sets the Chart associated to the Layer.
This class represents the informations needed to build map charts.
An Envelope defines a 2D rectangular region.
#define TE_UNKNOWN_SRS
A numeric value to represent a unknown SRS identification in TerraLib.
This class represents a set of unique ids created in the same context. i.e. from the same data set...
std::vector< te::map::AbstractLayer * > getAncestors()
It returns a list with the ancestors of this layer.
virtual te::se::Style * getStyle() const
It returns the Style associated to the layer.
void updateVisibilityOfAncestors()
It updates the visibility of the ancestors of this layer, if any.
virtual void setVisibility(Visibility v)
It sets the layer visibility.
std::vector< te::map::AbstractLayer * > getDescendants()
It returns a list with the descendants of this layer.
virtual void clearSelected()
It clears the selected group of this Layer.
virtual void setExtent(const te::gm::Envelope &mbr)
It sets the Layer extent (or minimum bounding box).
This class represents the informations needed to build map charts.
virtual void select(te::da::ObjectIdSet *oids)
It adds the given oids to the selected group of this Layer.
virtual const te::da::ObjectIdSet * getSelected() const
It returns the selected group of this Layer.
virtual void setSRID(int srid)
It sets the Spatial Reference System ID associated to the Layer.
virtual te::map::Grouping * getGrouping() const
It returns the Grouping associated to the Layer.
TreeItem * getParent() const
It returns a pointer to the parent of this node.
virtual void setStyle(te::se::Style *style)
It sets the Style associated to the layer.
virtual const std::string & getGeomPropertyName() const
virtual int getSRID() const
It returns the Spatial Reference System ID associated to the Layer.
This class contains the parameters needed for grouping the values of a Property.
AbstractLayer(AbstractLayer *parent=0)
It initializes a new layer.
Visibility
Each layer can have three states of visibility.
Visibility m_visibility
It indicates the layer visibility.
virtual void setId(const std::string &id)
It sets the layer id.
void setVisibilityAsChanged(bool visChanged)
It sets that the status of the layer visibility is to be changed or not..
bool m_visibilityChanged
It indicates if the layer visibility has changed.
virtual void deselect(const te::da::ObjectIdSet *oids)
It removes the given oids from the selected group of this Layer.