]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/dcbase.cpp
Hopefully fixed library names generated by wx-config for OS/2's PM port.
[wxWidgets.git] / src / common / dcbase.cpp
index c683ff4f585943387bb7d0cef03cde66fb9989bf..9c9ba611e7769b4fb7b9fae08e56eec36cdbfc0a 100644 (file)
@@ -30,9 +30,7 @@
 
 #include "wx/dc.h"
 
-#include <math.h>
-
-// bool wxDCBase::sm_cacheing = FALSE;
+// bool wxDCBase::sm_cacheing = false;
 
 // ============================================================================
 // implementation
@@ -291,7 +289,7 @@ static bool wx_spline_add_point(double x, double y)
   point->x = (int) x;
   point->y = (int) y;
   wx_spline_point_list.Append((wxObject*)point);
-  return TRUE;
+  return true;
 }
 
 static void wx_spline_draw_point_array(wxDCBase *dc)
@@ -316,6 +314,10 @@ void wxDCBase::DoDrawSpline( wxList *points )
     double           x1, y1, x2, y2;
 
     wxList::compatibility_iterator node = points->GetFirst();
+    if (node == wxList::compatibility_iterator())
+        // empty list
+        return;
+
     p = (wxPoint *)node->GetData();
 
     x1 = p->x;
@@ -371,12 +373,12 @@ void wxDCBase::DoDrawSpline( wxList *points )
 
 
 // Each element of the widths array will be the width of the string up to and
-// including the coresoponding character in text.  This is the generic
+// including the corresponding character in text.  This is the generic
 // implementation, the port-specific classes should do this with native APIs
 // if available and if faster.  Note: pango_layout_index_to_pos is much slower
 // than calling GetTextExtent!!
 
-#define FWC_SIZE 128
+#define FWC_SIZE 256
 
 class FontWidthCache
 {
@@ -571,7 +573,7 @@ void wxDCBase::DrawLabel(const wxString& text,
             width0 = width;
     if ( bitmap.Ok() )
     {
-        DrawBitmap(bitmap, x, y, TRUE /* use mask */);
+        DrawBitmap(bitmap, x, y, true /* use mask */);
 
         wxCoord offset = bitmap.GetWidth() + 4;
         x += offset;
@@ -762,7 +764,7 @@ void wxDCBase::Rotate( wxList* points, double angle, wxPoint center )
 {
     if( angle != 0.0 )
     {
-        double pi(3.1415926536);
+        double pi(M_PI);
         double dSinA = -sin(angle*2.0*pi/360.0);
         double dCosA = cos(angle*2.0*pi/360.0);
         for ( wxNode* node = points->First(); node; node = node->Next() )
@@ -790,7 +792,7 @@ void wxDCBase::CalculateEllipticPoints( wxList* points,
                                         wxCoord w, wxCoord h,
                                         double sa, double ea )
 {
-    double pi = 3.1415926535;
+    double pi = M_PI;
     double sar = 0;
     double ear = 0;
     int xsa = 0;