r186: *** empty log message ***
[ctsim.git] / include / sgp.h
index 0a5fe0344ea7a9c9bd5359d750a7106f703b1a08..b026cdc6f1634cdcb67f2b08fae8b4633d28406a 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
-**  $Id: sgp.h,v 1.15 2000/08/27 20:32:55 kevin Exp $
+**  $Id: sgp.h,v 1.16 2000/08/31 08:38:58 kevin Exp $
 **
 **  This program is free software; you can redistribute it and/or modify
 **  it under the terms of the GNU General Public License (version 2) as
 **
 **  This program is free software; you can redistribute it and/or modify
 **  it under the terms of the GNU General Public License (version 2) as
@@ -72,7 +72,7 @@ public:
 #endif
 
   SGPDriver (const char* szWinTitle = "", int xsize = 640, int ysize = 480);
 #endif
 
   SGPDriver (const char* szWinTitle = "", int xsize = 640, int ysize = 480);
-
+  
   ~SGPDriver ();
 
   int getPhysicalXSize () const
   ~SGPDriver ();
 
   int getPhysicalXSize () const
@@ -96,6 +96,9 @@ public:
 #ifdef HAVE_WXWINDOWS
   wxDC* idWX () const
     { return m_pDC; }
 #ifdef HAVE_WXWINDOWS
   wxDC* idWX () const
     { return m_pDC; }
+
+  void setDC (wxDC* dc)
+      { m_pDC = dc; }
 #endif
 };
 
 #endif
 };
 
@@ -105,7 +108,7 @@ class SGP {
 private:
   int m_iPhysicalXSize;   // Physical Window size 
   int m_iPhysicalYSize;
 private:
   int m_iPhysicalXSize;   // Physical Window size 
   int m_iPhysicalYSize;
-  const SGPDriver m_driver;
+  SGPDriver m_driver;
 
   double xw_min;    // Window extents 
   double yw_min;
 
   double xw_min;    // Window extents 
   double yw_min;
@@ -199,6 +202,7 @@ public:
   void setMarker (int idMarker, int color);
   void setRasterOp (int ro);
 
   void setMarker (int idMarker, int color);
   void setRasterOp (int ro);
 
+  void getViewport (double &xmin, double &ymin, double& xmax, double& ymax);
   void getTextExtent (const char *szText, double* x, double* y);
   double getCharHeight ();
 
   void getTextExtent (const char *szText, double* x, double* y);
   double getCharHeight ();
 
@@ -219,6 +223,10 @@ public:
   void stylusNDC (double x, double y, bool beam);
   void pointNDC (double x, double y);
   void markerNDC (double x, double y);
   void stylusNDC (double x, double y, bool beam);
   void pointNDC (double x, double y);
   void markerNDC (double x, double y);
+
+#if HAVE_WXWINDOWS
+  void setDC (wxDC* pDC);
+#endif
 };
 
 
 };