VR-Forces 4.0.4 Class Documentation
include/vrvCore/DtEnvironmentalIndicatorVisualizer.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2009 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile: DtEnvironmentalIndicatorVisualizer.h,v $ $Revision: 1.43 $ $State: Exp $
00007 ******************************************************************************/
00008 
00012 
00013 #pragma once
00014 
00015 #include <matrix/vlVector.h>
00016 #include <vrvCore/DtIndicatorVisualizer.h>
00017 
00018 namespace makVrv
00019 {
00020    class DtControlPointWidget;
00021    class DtEnvironmentalStateListener;
00022 
00028    class DT_DLL_VRVCORE DtEnvironmentalIndicatorVisualizer : 
00029       public DtIndicatorVisualizer
00030    {
00031    public:
00033       DtEnvironmentalIndicatorVisualizer(DtBaseConnection& simulation, 
00034          DtStateListener& listener, int modelSet);
00035 
00037       virtual ~DtEnvironmentalIndicatorVisualizer();
00038 
00039       virtual void setWidgetEventsEnabled(bool b);
00040 
00041       virtual void setColor(float r,float g,float b,float a);
00042       virtual void setIndicatorModelDefinitions(const std::string& normalTheme, 
00043          const std::string& activeTheme, const std::string& selectedTheme, 
00044          const std::string& multiSelectedTheme );
00045 
00046       virtual void setIndicatorsEnabled(bool);
00047       virtual void setShowInfoPopupOnSelect(bool b);
00048 
00049       virtual void setUniqueID(DtUniqueID id);
00050 
00051       virtual void setSelected(bool);
00052       virtual void setMultiSelected(bool);
00053       virtual void setIndicatorPinned(bool b);
00054 
00055       DtEnvironmentalStateListener& environmentalStateListener()
00056       {
00057          return *myEnvironmentalListener;
00058       }
00059 
00060       bool multiSelected() const
00061       {
00062          return myMultiSelected;
00063       }
00064 
00066       virtual const DtStateVisualizer::TypeInfo& typeInfo() const;
00067 
00069       static const DtStateVisualizer::TypeInfo& theTypeInfo();
00070 
00071    protected:
00072       virtual void createIndicator();
00073       virtual void destroyIndicator();
00074       virtual void createModelAgents();
00075       virtual DtUnicode generateInfoString() const;
00076       virtual bool indicatorsRealizable() const;
00077       virtual bool indicatorsVisible() const;
00078       virtual void updateIndicatorVisibility();
00079       virtual void updateDefinitionState();
00080       virtual bool selected() const;
00081       virtual void slot_mouseInChanged(bool isMouseInIndicator);
00082       
00083    protected:
00084       DtControlPointWidget* myIndicator;
00085       bool myMultiSelected;
00086       std::string myNormalTheme;
00087       std::string myActiveTheme;
00088       std::string myNormalPointTheme;
00089       std::string myActivePointTheme;
00090       bool myNeedsDefinitionUpdate;
00091 
00092       // Same as myListener, but casted for convenience
00093       DtEnvironmentalStateListener* myEnvironmentalListener;
00094    };
00095 
00096    typedef DtStateVisualizerCreatorTemplate<DtEnvironmentalIndicatorVisualizer>
00097       DtEnvironmentalIndicatorVisualizerCreator;
00098 }

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)