]> git.saurik.com Git - wxWidgets.git/blobdiff - src/cocoa/dc.mm
Use wxLogTrace instead of wxLogDebug
[wxWidgets.git] / src / cocoa / dc.mm
index 79c10e055550ebe406b193e4d0628992952ea223..7b54beb5905ea94d5842545115c59ce5e867555d 100644 (file)
@@ -107,7 +107,11 @@ void wxDC::DoDrawText(const wxString& text, wxCoord x, wxCoord y)
 
     NSRange glyphRange = [sm_cocoaNSLayoutManager glyphRangeForTextContainer:sm_cocoaNSTextContainer];
     NSRect usedRect = [sm_cocoaNSLayoutManager usedRectForTextContainer:sm_cocoaNSTextContainer];
-
+    // NOTE: We'll crash trying to get the location of glyphAtIndex:0 if
+    // there is no length or we don't start at zero
+    if(!glyphRange.length)
+        return;
+    wxASSERT_MSG(glyphRange.location==0,"glyphRange must begin at zero");
 
     NSAffineTransform *transform = [NSAffineTransform transform];
     [transform translateXBy:x yBy:y];
@@ -145,6 +149,27 @@ void wxDC::DoDrawText(const wxString& text, wxCoord x, wxCoord y)
     [context restoreGraphicsState];
 }
 
+// wxDCBase functions
+int wxDCBase::DeviceToLogicalX(int x) const
+{
+    return x;
+}
+
+int wxDCBase::DeviceToLogicalY(int y) const
+{
+    return y;
+}
+
+int wxDCBase::LogicalToDeviceX(int x) const
+{
+    return x;
+}
+
+int wxDCBase::LogicalToDeviceY(int y) const
+{
+    return y;
+}
+
 ///////////////////////////////////////////////////////////////////////////
 // cut here, the rest is stubs
 ///////////////////////////////////////////////////////////////////////////
@@ -394,13 +419,3 @@ void wxDC::ComputeScaleAndOrigin(void)
   }
 };
 
-int wxDCBase::DeviceToLogicalX(int x) const
-{
-    return x;
-}
-
-int wxDCBase::DeviceToLogicalY(int y) const
-{
-    return y;
-}
-