36#include "pi_TexFont.h" 
   40#include <wx/glcanvas.h> 
   46void piDrawGLThickLine(
float x1, 
float y1, 
float x2, 
float y2, wxPen pen,
 
   63  void SetBackground(
const wxBrush &brush);
 
   64  void SetPen(
const wxPen &pen);
 
   65  void SetBrush(
const wxBrush &brush);
 
   66  void SetTextForeground(
const wxColour &colour);
 
   67  void SetFont(
const wxFont &font);
 
   68  static void SetGLAttrs(
bool highQuality);
 
   69  void SetGLStipple() 
const;
 
   71  void SetDC(wxDC *dc_in) { dc = dc_in; }
 
   73  const wxPen &GetPen() 
const;
 
   74  const wxBrush &GetBrush() 
const;
 
   75  const wxFont &GetFont() 
const;
 
   77  void GetSize(wxCoord *width, wxCoord *height) 
const;
 
   79  void DrawLine(wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2,
 
   80                bool b_hiqual = 
true);
 
   81  void DrawLines(
int n, wxPoint points[], wxCoord xoffset = 0,
 
   82                 wxCoord yoffset = 0, 
bool b_hiqual = 
true);
 
   84  void StrokeLine(wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2);
 
   85  void StrokeLine(wxPoint a, wxPoint b) { StrokeLine(a.x, a.y, b.x, b.y); }
 
   86  void StrokeLines(
int n, wxPoint *points);
 
   89  void DrawRectangle(wxCoord x, wxCoord y, wxCoord w, wxCoord h);
 
   90  void DrawRoundedRectangle(wxCoord x, wxCoord y, wxCoord w, wxCoord h,
 
   92  void DrawCircle(wxCoord x, wxCoord y, wxCoord radius);
 
   93  void DrawCircle(
const wxPoint &pt, wxCoord radius) {
 
   94    DrawCircle(pt.x, pt.y, radius);
 
   96  void StrokeCircle(wxCoord x, wxCoord y, wxCoord radius);
 
   98  void DrawEllipse(wxCoord x, wxCoord y, wxCoord width, wxCoord height);
 
   99  void DrawPolygon(
int n, wxPoint points[], wxCoord xoffset = 0,
 
  100                   wxCoord yoffset = 0, 
float scale = 1.0, 
float angle = 0.0);
 
  101  void DrawPolygonTessellated(
int n, wxPoint points[], wxCoord xoffset = 0,
 
  102                              wxCoord yoffset = 0);
 
  103  void StrokePolygon(
int n, wxPoint points[], wxCoord xoffset = 0,
 
  104                     wxCoord yoffset = 0, 
float scale = 1.0);
 
  106  void DrawBitmap(
const wxBitmap &bitmap, wxCoord x, wxCoord y, 
bool usemask);
 
  108  void DrawText(
const wxString &text, wxCoord x, wxCoord y);
 
  109  void GetTextExtent(
const wxString &
string, wxCoord *w, wxCoord *h,
 
  110                     wxCoord *descent = NULL, wxCoord *externalLeading = NULL,
 
  111                     wxFont *font = NULL);
 
  113  void ResetBoundingBox();
 
  114  void CalcBoundingBox(wxCoord x, wxCoord y);
 
  116  void DestroyClippingRegion() {}
 
  118  wxDC *GetDC()
 const { 
return dc; }
 
  120  void DrawGLLineArray(
int n, 
float *vertex_array, 
unsigned char *color_array,
 
  122  void DrawGLLineArray(
int n, 
float *vertex_array, 
float *color_array,
 
  126  GLfloat *s_odc_tess_work_buf;
 
  129#ifdef USE_ANDROID_GLES2 
  130  int s_odc_tess_vertex_idx;
 
  131  int s_odc_tess_vertex_idx_this;
 
  132  int s_odc_tess_buf_len;
 
  133  GLenum s_odc_tess_mode;
 
  135  vec4 s_odc_tess_color;
 
  137  GLUtesselator *m_tobj;
 
  143  bool ConfigureBrush();
 
  145  void GLDrawBlendData(wxCoord x, wxCoord y, wxCoord w, wxCoord h, 
int format,
 
  146                       const unsigned char *data);
 
  148  void drawrrhelperGLES2(wxCoord x0, wxCoord y0, wxCoord r, 
int quadrant,
 
  151  wxGLCanvas *glcanvas;
 
  155  wxColour m_textforegroundcolour;
 
  163#if wxUSE_GRAPHICS_CONTEXT 
  164  wxGraphicsContext *pgc;
 
  169  unsigned int workBufIndex;
 
Contains view parameters and status information for a chart display viewport.
PlugIn Object Definition/API.