VR-Forces 4.0.4 Class Documentation
include/vrvCoreQt/DtTacticalGraphicOverlayTreeLogic.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile:  $ $Revision:  $ $State:  $
00007 ******************************************************************************/
00008 
00012 
00013 #pragma once
00014 #include <vrvCoreQt/vrvCoreQt.h>
00015 #include <vrvUtil/DtSignalConnectionManager.h>
00016 #include <vrvUtil/DtVirtualBaseClass.h>
00017 #include <vrvCore/DtSelectionManager.h>
00018 #include <vrvCore/DtUniqueID.h>
00019 #include <QtCore/QHash>
00020 #include <boost/unordered_map.hpp>
00021 
00022 namespace makVrv
00023 {
00024    class DtTacticalGraphicOverlayTreeInterface;
00025    class DtTacticalGraphicOverlayManager;   
00026    class DtFeatureLayer;
00027 
00030    class DT_DLL_VRVCOREQT DtTacticalGraphicOverlayTreeLogic : public DtVirtualBaseClass
00031    {
00032 
00033    public:
00034 
00036       DtTacticalGraphicOverlayTreeLogic(DtDe& de, DtTacticalGraphicOverlayTreeInterface* iface);
00037 
00039       ~DtTacticalGraphicOverlayTreeLogic();
00040 
00041    protected:
00042 
00045       virtual void slot_tacticalGraphicAdded(const DtUniqueID& id, const std::string& name);
00046 
00050       virtual void slot_tacticalGraphicRenamed(const DtUniqueID& id, const std::string& newName);
00051 
00055       virtual void slot_tacticalGraphicOverlayRenamed(const DtUniqueID& id, const std::string& overlayName);
00056 
00060       virtual void slot_tacticalGraphicRemoved(const DtUniqueID& id);
00061 
00064       virtual void slot_overlayDeleted(const std::string& name);
00065 
00068       virtual void slot_tacticalGraphicSelected(const DtUniqueID& id);
00069 
00071       virtual void slot_tacticalGraphicVisibilityChanged(const DtUniqueID& id, bool flag);
00072 
00074       virtual void slot_overlaySelected(const std::string& name);
00075 
00077       virtual void slot_filterStatusChanged(const std::string& name, bool flag);
00078 
00080       virtual void slot_overlayVisibilityChanged(const std::string& name, bool flag);
00081 
00083       virtual void slot_overlayVisibilityChangedFromManager(const std::string& layer, bool b);
00084 
00086       virtual void slot_showEmptyOverlays(bool flag);
00087 
00088 
00090       virtual void slot_overlayAdded(const std::string& name);
00091 
00094       virtual void refreshOverlays();
00095 
00097       virtual void slot_selMgrCurrentSelectionChanged(
00098          const DtSelectionManager::IdSet& selected,
00099          const DtSelectionManager::IdSet& deselected);
00100 
00102       virtual void fillGui();
00103 
00104    protected:
00105 
00106       typedef boost::unordered_map<DtUniqueID, std::string> KeyToNameMap;
00107 
00108       DtDe& myDe;
00109       DtTacticalGraphicOverlayTreeInterface* myWidget;      
00110       DtSignalConnectionManager myManager;
00111       KeyToNameMap myKeyToName;
00112       bool myHideEmptyOverlays;
00113    };
00114 
00115    // Creator class for DtTacticalGraphicOverlayTreeLogic
00117    class DT_DLL_VRVCOREQT DtTacticalGraphicOverlayTreeLogicCreator : public DtVirtualBaseClass
00118    {
00119 
00120    public:
00121 
00122       // Get the creator instance for this DE object.
00123       // DtCorruptedState if no instance is found.
00124       static DtTacticalGraphicOverlayTreeLogicCreator& instance(DtDe& de);
00125 
00126       // Register the creator instance with an DE.
00127       static void registerInstance(DtDe& de, DtTacticalGraphicOverlayTreeLogicCreator* instance);
00128       
00129       //Create the widget's logic.
00130       static DtVirtualBaseClass* create(DtDe& de, DtTacticalGraphicOverlayTreeInterface* pIf);
00131       
00132    };
00133 }
00134 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)