- Timestamp:
- May 20, 2010, 8:30:38 PM (14 years ago)
- Location:
- code/branches/presentation3
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/presentation3
- Property svn:mergeinfo changed
/code/branches/hudelements (added) merged: 6599-6600,6602,6606,6614-6615,6631,6715-6717,6727,6796,6849,6865,6868,6873-6875,6880,6886,6897-6899,6907,6913-6914,6917,6922-6924,6941
- Property svn:mergeinfo changed
-
code/branches/presentation3/src/modules/overlays/hud/HUDNavigation.h
r6417 r6942 32 32 #include "overlays/OverlaysPrereqs.h" 33 33 34 #include <map> 35 #include <string> 36 34 37 #include "util/OgreForwardRefs.h" 35 38 #include "tools/interfaces/Tickable.h" 39 #include "interfaces/RadarListener.h" 36 40 #include "overlays/OrxonoxOverlay.h" 37 41 38 42 namespace orxonox 39 43 { 40 class _OverlaysExport HUDNavigation : public OrxonoxOverlay, public Tickable 44 class _OverlaysExport HUDNavigation : public OrxonoxOverlay, public Tickable, public RadarListener 41 45 { 42 46 public: … … 47 51 virtual void tick(float dt); 48 52 53 virtual void addObject(RadarViewable* object); 54 virtual void removeObject(RadarViewable* viewable); 55 virtual void objectChanged(RadarViewable* viewable) {} 56 57 virtual void changedOwner(); 58 virtual void sizeChanged(); 59 virtual void angleChanged() { } 60 virtual void positionChanged() { } 61 virtual void radarTick(float dt) {} 62 63 inline float getRadarSensitivity() const 64 { return 1.0f; } 65 49 66 private: 50 void sizeChanged(); 51 void angleChanged() { } 52 void positionChanged() { } 67 struct ObjectInfo 68 { 69 Ogre::PanelOverlayElement* panel_; 70 Ogre::TextAreaOverlayElement* text_; 71 bool outOfView_; 72 bool wasOutOfView_; 73 }; 53 74 54 75 // XMLPort accessors 55 void setNavMarkerSize(float size) { this->navMarkerSize_ = size; this->sizeChanged(); } 56 float getNavMarkerSize() const { return this->navMarkerSize_; } 57 58 /* 59 void setAimMarkerSize(float size) { this->aimMarkerSize_ = size; this->sizeChanged(); } 60 float getAimMarkerSize() const { return this->aimMarkerSize_; } 61 */ 76 void setNavMarkerSize(float size) 77 { navMarkerSize_ = size; this->sizeChanged(); } 78 float getNavMarkerSize() const 79 { return navMarkerSize_; } 62 80 63 81 void setTextSize(float size); … … 67 85 const std::string& getFont() const; 68 86 69 void updateMarker(); 70 void updateFocus(); 71 float getDist2Focus() const; 87 typedef std::map<RadarViewable*, ObjectInfo > ObjectMap; 88 ObjectMap activeObjectList_; 72 89 73 Ogre::PanelOverlayElement* navMarker_; //!< the panel used to show the arrow and the target marker 74 float navMarkerSize_; //!< One paramter size of the navigation marker 75 /* 76 Ogre::PanelOverlayElement* aimMarker_; //!< Panel used to show the aim Marker 77 float aimMarkerSize_; //!< One paramter size of the aim marker 78 */ 79 Ogre::TextAreaOverlayElement* navText_; //!< Text overlay to display the target distance 80 bool wasOutOfView_; //!< Performance booster variable: setMaterial is not cheap 90 float navMarkerSize_; 91 std::string fontName_; 92 float textSize_; 81 93 }; 82 94 }
Note: See TracChangeset
for help on using the changeset viewer.