26 #ifndef __TERRALIB_QT_WIDGETS_LAYER_EXPLORER_INTERNAL_LAYERTREEVIEW_H 
   27 #define __TERRALIB_QT_WIDGETS_LAYER_EXPLORER_INTERNAL_LAYERTREEVIEW_H 
   30 #include "../../../../maptools/AbstractLayer.h" 
   31 #include "../../Config.h" 
   37 #include <boost/noncopyable.hpp> 
   52       class AbstractTreeItem;
 
   73             MULTIPLE_ITEMS_SELECTED
 
   87           std::list<AbstractTreeItem*> getSelectedItems() 
const;
 
   94           std::list<AbstractTreeItem*> getSelectedLayerItems() 
const;
 
  101           std::list<AbstractTreeItem*> getSelectedSingleLayerItems() 
const;
 
  108           std::list<te::map::AbstractLayerPtr> getSelectedSingleLayers() 
const;
 
  115           std::list<te::map::AbstractLayerPtr> getSelectedAndVisibleSingleLayers() 
const;
 
  127           void add(QAction* action,
 
  128                    const std::string& menu = 
"",
 
  129                    const std::string& itemType = 
"",
 
  139           void remove(QAction* action);
 
  143           void onSelectedLayersChanged(
const QItemSelection& selected, 
const QItemSelection& deselected);
 
  159           void selectedLayersChanged(
const std::list<te::map::AbstractLayerPtr>& selectedLayers);
 
  163           void dragEnterEvent(QDragEnterEvent* e);
 
  165           void dragMoveEvent(QDragMoveEvent* e);
 
  167           void dragLeaveEvent(QDragLeaveEvent* e);
 
  169           void dropEvent(QDropEvent* e);
 
  171           void contextMenuEvent(QContextMenuEvent* e);
 
  175           void onItemActivated(
const QModelIndex& index);
 
  177           void onItemClicked(
const QModelIndex& index);
 
  179           void onItemDoubleClicked(
const QModelIndex& index);
 
  181           void onItemEntered(
const QModelIndex& index);
 
  183           void onItemPressed(
const QModelIndex& index);
 
  196 #endif  // __TERRALIB_QT_WIDGETS_LAYER_EXPLORER_INTERNAL_LAYERTREEVIEW_H 
boost::intrusive_ptr< AbstractLayer > AbstractLayerPtr