]> git.mxchange.org Git - flightgear.git/blobdiff - src/GUI/MapWidget.hxx
Canvas: First version of new Canvas GUI system.
[flightgear.git] / src / GUI / MapWidget.hxx
index 934198603f20b74b802df88880ba783fded07290..0025357172825c99eca084e08eadcd630eee29f3 100644 (file)
@@ -32,6 +32,8 @@ public:
     
   void setProperty(SGPropertyNode_ptr prop);
 private:
+  int zoom() const;
+  
   void handlePan(int x, int y);
   
   void pan(const SGVec2d& delta);
@@ -71,24 +73,28 @@ private:
   MapData* getOrCreateDataForKey(void* key);
   MapData* createDataForKey(void* key);
   void setAnchorForKey(void* key, const SGVec2d& anchor);
+  void clearData();
   
   SGVec2d project(const SGGeod& geod) const;
   SGGeod unproject(const SGVec2d& p) const;
   double currentScale() const;
   
+  int displayHeading(double trueHeading) const;
+  
   void circleAt(const SGVec2d& center, int nSides, double r);
   void circleAtAlt(const SGVec2d& center, int nSides, double r, double r2);
   void drawLine(const SGVec2d& p1, const SGVec2d& p2);
   void drawLegendBox(const SGVec2d& pos, const std::string& t);
   
   int _width, _height;
-  int _zoom;
+  int _cachedZoom;
   double _drawRangeNm;
   double _upHeading; // true heading corresponding to +ve y-axis
   bool _magneticHeadings;
   bool _hasPanned;
   
   SGGeod _projectionCenter;
+  bool _orthoAzimuthProject;
   SGGeod _aircraft;
   SGGeod _clickGeod;
   SGVec2d _hitLocation;