X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2ba06d5a8ccf8c224fcfbd52fa01a55abf7befbd..3285ee538be44537a0d4e43252db18f5e7362782:/contrib/src/ogl/oglmisc.cpp diff --git a/contrib/src/ogl/oglmisc.cpp b/contrib/src/ogl/oglmisc.cpp index 9b575499d5..bedff9915d 100644 --- a/contrib/src/ogl/oglmisc.cpp +++ b/contrib/src/ogl/oglmisc.cpp @@ -220,7 +220,7 @@ void oglCentreText(wxDC& dc, wxList *text_list, // Store text extents for speed double *widths = new double[n]; - wxNode *current = text_list->GetFirst(); + wxObjectList::compatibility_iterator current = text_list->GetFirst(); int i = 0; while (current) { @@ -282,7 +282,7 @@ void oglCentreText(wxDC& dc, wxList *text_list, i ++; } - delete widths; + delete[] widths; } // Centre a list of strings in the given box @@ -303,7 +303,7 @@ void oglCentreTextNoClipping(wxDC& dc, wxList *text_list, // Store text extents for speed double *widths = new double[n]; - wxNode *current = text_list->GetFirst(); + wxObjectList::compatibility_iterator current = text_list->GetFirst(); int i = 0; while (current) { @@ -359,7 +359,7 @@ void oglGetCentredTextExtent(wxDC& dc, wxList *text_list, long max_width = 0; long current_width = 0; - wxNode *current = text_list->GetFirst(); + wxObjectList::compatibility_iterator current = text_list->GetFirst(); while (current) { wxShapeTextLine *line = (wxShapeTextLine *)current->GetData(); @@ -383,7 +383,7 @@ wxStringList *oglFormatText(wxDC& dc, const wxString& text, double width, double // Make new lines into NULL strings at this point int i = 0; int j = 0; int len = text.Length(); - wxChar word[200]; word[0] = 0; + wxChar word[400]; word[0] = 0; bool end_word = false; bool new_line = false; while (i < len) { @@ -444,15 +444,15 @@ wxStringList *oglFormatText(wxDC& dc, const wxString& text, double width, double wxStringList *string_list = new wxStringList; wxString buffer; - wxStringListNode *node = word_list.GetFirst(); + wxStringList::compatibility_iterator node = word_list.GetFirst(); long x, y; while (node) { wxString oldBuffer(buffer); - wxChar *s = (wxChar *)node->GetData(); - if (!s) + wxString s = node->GetData(); + if (s.empty()) { // FORCE NEW LINE if (buffer.Length() > 0) @@ -507,7 +507,7 @@ void oglDrawFormattedText(wxDC& dc, wxList *text_list, (long)(m_xpos - width/2.0), (long)(m_ypos - height/2.0), (long)width+1, (long)height+1); // +1 to allow for rounding errors - wxNode *current = text_list->GetFirst(); + wxObjectList::compatibility_iterator current = text_list->GetFirst(); while (current) { wxShapeTextLine *line = (wxShapeTextLine *)current->GetData(); @@ -529,7 +529,7 @@ void oglFindPolylineCentroid(wxList *points, double *x, double *y) double xcount = 0; double ycount = 0; - wxNode *node = points->GetFirst(); + wxObjectList::compatibility_iterator node = points->GetFirst(); while (node) { wxRealPoint *point = (wxRealPoint *)node->GetData(); @@ -807,7 +807,7 @@ void UpdateListBox(wxListBox *item, wxList *list) if (!list) return; - wxNode *node = list->GetFirst(); + wxObjectList::compatibility_iterator node = list->GetFirst(); while (node) { wxChar *s = (wxChar *)node->GetData(); @@ -871,10 +871,12 @@ wxColour oglHexToColour(const wxString& hex) hex.Mid(0,2).ToLong(&r, 16); hex.Mid(2,2).ToLong(&g, 16); hex.Mid(4,2).ToLong(&b, 16); - return wxColour(r, g, b); + return wxColour((unsigned char)r, + (unsigned char)g, + (unsigned char)b); } else - return wxColour(0,0,0); + return *wxBLACK; } // RGB to 3-digit hex