Common subdirectories: ucblogo-6.0/csls and ucblogo-6.0wx/csls Common subdirectories: ucblogo-6.0/docs and ucblogo-6.0wx/docs Common subdirectories: ucblogo-6.0/emacs and ucblogo-6.0wx/emacs Common subdirectories: ucblogo-6.0/helpfiles and ucblogo-6.0wx/helpfiles Common subdirectories: ucblogo-6.0/logolib and ucblogo-6.0wx/logolib diff -u ucblogo-6.0/wxTerminal.cpp ucblogo-6.0wx/wxTerminal.cpp --- ucblogo-6.0/wxTerminal.cpp 2019-08-30 11:44:20.982827709 -0600 +++ ucblogo-6.0wx/wxTerminal.cpp 2019-08-30 11:40:02.061790995 -0600 @@ -500,13 +500,7 @@ void LogoFrame::OnSaveAs(wxCommandEvent& WXUNUSED(event)) { wxFileDialog dialog(this, _T("Save Logo Workspace"), - (firstloadsave ? -#ifdef __WXMAC__ /* needed for wxWidgets 2.6 */ - *wxEmptyString : -#else - wxStandardPaths::Get().GetDocumentsDir() : -#endif - *wxEmptyString), + *wxEmptyString, wxEmptyString, _T("Logo workspaces(*.lg)|*.lg|All files(*)|*"), // "*", @@ -536,13 +530,7 @@ ( this, _T("Load Logo Workspace"), - (firstloadsave ? -#ifdef __WXMAC__ /* needed for wxWidgets 2.6 */ - *wxEmptyString : -#else - wxStandardPaths::Get().GetDocumentsDir() : -#endif - *wxEmptyString), + *wxEmptyString, wxEmptyString, _T("Logo workspaces(*.lg)|*.lg|All files(*)|*"), // "*", @@ -938,7 +926,7 @@ //dc.GetTextExtent("(", &dummy, ch); int descent, extlead; - dc.GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), cw, ch, &descent, &extlead); + dc.GetTextExtent(wxString("M", wxConvUTF8, wxString::npos), cw, ch, &descent, &extlead); //for the tails of g's and y's, if needed. #ifdef __WXMSW__ *ch += descent + extlead + 1; diff -u ucblogo-6.0/wxTurtleGraphics.cpp ucblogo-6.0wx/wxTurtleGraphics.cpp --- ucblogo-6.0/wxTurtleGraphics.cpp 2019-08-30 11:44:20.983827713 -0600 +++ ucblogo-6.0wx/wxTurtleGraphics.cpp 2019-08-30 11:41:21.255108083 -0600 @@ -558,7 +558,7 @@ extern "C" void wx_get_label_size(int *w, int *h) { /* returns size in pixels; converted to turtle steps in wxterm.c */ int descent, extlead; - m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), w, h, &descent, &extlead); + m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxString::npos), w, h, &descent, &extlead); } extern "C" void wx_adjust_label_height() { @@ -573,7 +573,7 @@ label_font.SetPointSize(font_size); m_memDC->SetFont(label_font); - m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), &cw, &ch, &descent, &extlead); + m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxString::npos), &cw, &ch, &descent, &extlead); //now... first figure out whether we undershot or overshot... //this determines which direction to change the size @@ -592,7 +592,7 @@ } if (expected == 100) break; m_memDC->SetFont(tmp_font); - m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), &cw, &tmp_height, &descent, &extlead); + m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxString::npos), &cw, &tmp_height, &descent, &extlead); if(tmp_height >= px_height) break; @@ -611,7 +611,7 @@ } if (expected == 2) break; m_memDC->SetFont(tmp_font); - m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), &cw, &tmp_height, &descent, &extlead); + m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxString::npos), &cw, &tmp_height, &descent, &extlead); if(tmp_height <= px_height) break; diff -u ucblogo-6.0wx/wxTerminal.cpp ucblogo-6.0wx3/wxTerminal.cpp --- ucblogo-6.0wx/wxTerminal.cpp 2019-08-30 11:40:02.061790995 -0600 +++ ucblogo-6.0wx3/wxTerminal.cpp 2019-08-30 16:40:39.664086823 -0600 @@ -1883,7 +1883,9 @@ // return; //} } - dc.Blit( t_x, t_y, w, h, &dc, t_x, t_y, wxINVERT); + if (w > 0 && h > 0) { + dc.Blit( t_x, t_y, w, h, &dc, t_x, t_y, wxINVERT); + } }