25 #ifndef __TERRALIB_QT_WIDGETS_LAYER_INTERNAL_LAYERITEMVIEW_H
26 #define __TERRALIB_QT_WIDGETS_LAYER_INTERNAL_LAYERITEMVIEW_H
28 #include "../../Config.h"
32 #include "../../../../maptools/AbstractLayer.h"
43 class QStyledItemDelegate;
57 class LayerViewMenuManager;
107 void addLayers(
const std::list<te::map::AbstractLayerPtr>& layers,
const QModelIndex& idx,
const std::string& idxPath =
"./");
113 void setLayers(
const std::list<te::map::AbstractLayerPtr>& layers);
121 std::list<te::map::AbstractLayerPtr> getAllLayers()
const;
127 std::list<te::map::AbstractLayerPtr> getVisibleLayers()
const;
133 std::list<te::qt::widgets::TreeItem*> getSelectedItems()
const;
140 void addFolder(
const std::string& name,
const QModelIndex& idx);
147 void updateChart(
const QModelIndex& idx);
154 void updateGrouping(
const QModelIndex& idx);
172 void addNoLayerAction(QAction* act);
178 void addAllLayerAction(QAction* act);
184 void addVectorLayerAction(QAction* act);
190 void addRasterLayerAction(QAction* act);
196 void addTabularLayerAction(QAction* act);
202 void addFolderLayerAction(QAction* act);
208 void addMultipleSelectionAction(QAction* act);
214 void addInvalidLayerAction(QAction* act);
222 QModelIndex findLayerIndex(QAbstractItemModel* model,
const QModelIndex& parent,
te::map::AbstractLayer* l);
234 void removeItems(
const QModelIndexList& idxs);
239 void removeSelectedItems();
256 void removeDelegate(QStyledItemDelegate* d);
268 void setMenuEventHandler(QObject* obj);
274 QObject* getMenuEventHandler()
const;
285 void removeMenuEventHandler(QObject* handler);
311 void visibilityChanged();
317 void selectedLayersChanged(
const std::list<te::map::AbstractLayerPtr>& layers);
322 void layerOrderChanged();
332 void selectionChanged(
const QItemSelection & selected,
const QItemSelection & deselected);
334 void dropEvent(QDropEvent * event);
336 void mouseDoubleClickEvent(QMouseEvent* event);
347 #endif //__TERRALIB_QT_WIDGETS_LAYER_INTERNAL_LAYERITEMVIEW_H
This is the base class for layers.
A wdiget used to customize a chart's style parameters.
boost::intrusive_ptr< AbstractLayer > AbstractLayerPtr