]> git.saurik.com Git - wxWidgets.git/commitdiff
guarding all text methods against unset font
authorStefan Csomor <csomor@advancedconcepts.ch>
Sat, 2 Aug 2008 06:40:21 +0000 (06:40 +0000)
committerStefan Csomor <csomor@advancedconcepts.ch>
Sat, 2 Aug 2008 06:40:21 +0000 (06:40 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/generic/graphicc.cpp
src/msw/graphics.cpp
src/osx/carbon/graphics.cpp

index a783be44a813fb2f384524afc5b6b2d53e59ba14..a4bfe01fd85f6c076f64423f8eada44b57b9519f 100644 (file)
@@ -1400,7 +1400,9 @@ void wxCairoContext::DrawIcon( const wxIcon &icon, wxDouble x, wxDouble y, wxDou
 
 void wxCairoContext::DrawText( const wxString &str, wxDouble x, wxDouble y )
 {
-    if ( m_font.IsNull() || str.empty())
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxCairoContext::DrawText - no valid font set") );
+
+    if ( str.empty())
         return;
 
 #ifdef __WXGTK__
@@ -1433,6 +1435,8 @@ void wxCairoContext::DrawText( const wxString &str, wxDouble x, wxDouble y )
 void wxCairoContext::GetTextExtent( const wxString &str, wxDouble *width, wxDouble *height,
                                     wxDouble *descent, wxDouble *externalLeading ) const
 {
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxCairoContext::GetTextExtent - no valid font set") );
+
     if ( width )
         *width = 0;
     if ( height )
@@ -1442,7 +1446,7 @@ void wxCairoContext::GetTextExtent( const wxString &str, wxDouble *width, wxDoub
     if ( externalLeading )
         *externalLeading = 0;
 
-    if ( m_font.IsNull() || str.empty())
+    if ( str.empty())
         return;
 
 #ifdef __WXGTK__
@@ -1511,6 +1515,8 @@ void wxCairoContext::GetPartialTextExtents(const wxString& text, wxArrayDouble&
     widths.Empty();
     widths.Add(0, text.length());
 
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxCairoContext::GetPartialTextExtents - no valid font set") );
+
     if (text.empty())
         return;
 
index 9d8aac3fbd6973cb017b5bece3cde81698b13496..7ffc36e55c08a0b4f1f2eef0ddf533066e6e9ea1 100644 (file)
@@ -1261,7 +1261,9 @@ void wxGDIPlusContext::DrawIcon( const wxIcon &icon, wxDouble x, wxDouble y, wxD
 
 void wxGDIPlusContext::DrawText( const wxString &str, wxDouble x, wxDouble y )
 {
-    if ( m_font.IsNull() || str.IsEmpty())
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxGDIPlusContext::DrawText - no valid font set") );
+
+    if ( str.IsEmpty())
         return ;
 
     wxWCharBuffer s = str.wc_str( *wxConvUI );
@@ -1272,6 +1274,8 @@ void wxGDIPlusContext::DrawText( const wxString &str, wxDouble x, wxDouble y )
 void wxGDIPlusContext::GetTextExtent( const wxString &str, wxDouble *width, wxDouble *height,
                                      wxDouble *descent, wxDouble *externalLeading ) const
 {
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxGDIPlusContext::GetTextExtent - no valid font set") );
+
     wxWCharBuffer s = str.wc_str( *wxConvUI );
     FontFamily ffamily ;
     Font* f = ((wxGDIPlusFontData*)m_font.GetRefData())->GetGDIPlusFont();
@@ -1317,6 +1321,8 @@ void wxGDIPlusContext::GetPartialTextExtents(const wxString& text, wxArrayDouble
     widths.Empty();
     widths.Add(0, text.length());
 
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxGDIPlusContext::GetPartialTextExtents - no valid font set") );
+
     if (text.empty())
         return;
 
index 07446d9a17fdc577ef78bbdf8aecd5ee17ebf213..cef1c5d8055eb27110bb25eb2dfd54941611e9f5 100644 (file)
@@ -1941,8 +1941,7 @@ void wxMacCoreGraphicsContext::PopState()
 
 void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDouble y )
 {
-    if ( m_font.IsNull() )
-        return;
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxMacCoreGraphicsContext::DrawText - no valid font set") );
 
     EnsureIsValid();
 #if wxOSX_USE_CORE_TEXT
@@ -1998,8 +1997,7 @@ void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDoub
 
 void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDouble y, wxDouble angle )
 {
-    if ( m_font.IsNull() )
-        return;
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxMacCoreGraphicsContext::DrawText - no valid font set") );
 
     EnsureIsValid();
 #if wxOSX_USE_CORE_TEXT
@@ -2103,7 +2101,7 @@ void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDoub
 void wxMacCoreGraphicsContext::GetTextExtent( const wxString &str, wxDouble *width, wxDouble *height,
                             wxDouble *descent, wxDouble *externalLeading ) const
 {
-    wxCHECK_RET( !m_font.IsNull(), wxT("wxDC(cg)::DoGetTextExtent - no valid font set") );
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxMacCoreGraphicsContext::GetTextExtent - no valid font set") );
 
     if ( width )
         *width = 0;
@@ -2207,6 +2205,8 @@ void wxMacCoreGraphicsContext::GetPartialTextExtents(const wxString& text, wxArr
     widths.Empty();
     widths.Add(0, text.length());
 
+    wxCHECK_RET( !m_font.IsNull(), wxT("wxMacCoreGraphicsContext::DrawText - no valid font set") );
+
     if (text.empty())
         return;