]> git.saurik.com Git - wxWidgets.git/commitdiff
Applied patch [ 905577 ] Removed copystring from OGL library
authorJulian Smart <julian@anthemion.co.uk>
Tue, 23 Mar 2004 22:07:56 +0000 (22:07 +0000)
committerJulian Smart <julian@anthemion.co.uk>
Tue, 23 Mar 2004 22:07:56 +0000 (22:07 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

contrib/include/wx/ogl/drawnp.h
contrib/src/ogl/divided.cpp
contrib/src/ogl/drawn.cpp
contrib/src/ogl/oglmisc.cpp

index d837811f7cce1e4a04200f5a6f33d7edc91091a5..a2fd6eb17e06d5787964c4f80cfb1f37fe5b50cf 100644 (file)
@@ -146,7 +146,7 @@ class WXDLLIMPEXP_OGL wxOpDraw: public wxDrawOp
 {
  public:
   wxOpDraw(int theOp, double theX1, double theY1, double theX2, double theY2,
-         double radius = 0.0, wxChar *s = NULL);
+         double radius = 0.0, const wxString& s = wxEmptyString);
   ~wxOpDraw();
   void Do(wxDC& dc, double xoffset, double yoffset);
   void Scale(double scaleX, double scaleY);
@@ -166,7 +166,7 @@ public:
   double     m_x3;
   double     m_y3;
   double     m_radius;
-  wxChar*    m_textString;
+  wxString   m_textString;
 
 };
 
index 50737984c032dc384c993b36a7ce56ef252bddbb..9d682b8120e45e9b466896e7a236245410c75c26 100644 (file)
@@ -700,9 +700,8 @@ void wxDividedShapeControlPoint::OnEndDragLeft(double WXUNUSED(x), double y, int
         wxShapeRegion *region = (wxShapeRegion *)node->GetData();
         if (region->GetText())
         {
-        wxChar *s = copystring(region->GetText());
-        dividedObject->FormatText(dc, s, i);
-        delete[] s;
+        wxString s(region->GetText());
+        dividedObject->FormatText(dc, s.c_str(), i);
         }
         node = node->GetNext();
         i++;
index 20bea6a216fe5c3d399167c9379df03cd00c794f..3733cdacd03a2df1dcd975c2a348fd9ad36821d5 100644 (file)
@@ -676,7 +676,7 @@ void wxOpSetClipping::ReadExpr(wxPseudoMetaFile *WXUNUSED(image), wxExpr *expr)
  */
 
 wxOpDraw::wxOpDraw(int theOp, double theX1, double theY1, double theX2, double theY2,
-         double theRadius, wxChar *s) : wxDrawOp(theOp)
+         double theRadius, const wxString& s) : wxDrawOp(theOp)
 {
   m_x1 = theX1;
   m_y1 = theY1;
@@ -685,13 +685,11 @@ wxOpDraw::wxOpDraw(int theOp, double theX1, double theY1, double theX2, double t
   m_x3 = 0.0;
   m_y3 = 0.0;
   m_radius = theRadius;
-  if (s) m_textString = copystring(s);
-  else m_textString = NULL;
+  m_textString = s;
 }
 
 wxOpDraw::~wxOpDraw()
 {
-  if (m_textString) delete[] m_textString;
 }
 
 wxDrawOp *wxOpDraw::Copy(wxPseudoMetaFile *WXUNUSED(newImage))
@@ -968,8 +966,7 @@ void wxOpDraw::ReadExpr(wxPseudoMetaFile *WXUNUSED(image), wxExpr *expr)
     {
       m_x1 = expr->Nth(1)->RealValue();
       m_y1 = expr->Nth(2)->RealValue();
-      wxString str(expr->Nth(3)->StringValue());
-      m_textString = copystring(str);
+      m_textString = wxString(expr->Nth(3)->StringValue());
       break;
     }
     case DRAWOP_DRAW_ARC:
@@ -2365,7 +2362,7 @@ void wxPseudoMetaFile::DrawText(const wxString& text, const wxPoint& pt)
     wxOpDraw *theOp = new wxOpDraw(DRAWOP_DRAW_TEXT,
           (double) pt.x, (double) pt.y, 0.0, 0.0);
 
-    theOp->m_textString = copystring(text);
+    theOp->m_textString = text;
 
     m_ops.Append(theOp);
 }
index 0b773e393ed07646a948aacc8c911f1c26b1b0f6..d22eb0441c43deb770e59060b79f430d7b2179e4 100644 (file)
@@ -505,7 +505,7 @@ void oglDrawFormattedText(wxDC& dc, wxList *text_list,
 
   dc.SetClippingRegion(
                     (long)(m_xpos - width/2.0), (long)(m_ypos - height/2.0),
-                    (long)width, (long)height);
+                    (long)width+1, (long)height+1); // +1 to allow for rounding errors
 
   wxNode *current = text_list->GetFirst();
   while (current)