X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/caf6e6dee8d177844bb633786ec8c05eba6972bc..15f0ad701496612df8c145e8e46d4b38515c0bbf:/src/gtk/listbox.cpp diff --git a/src/gtk/listbox.cpp b/src/gtk/listbox.cpp index 5712ee3955..f3c5f07d2e 100644 --- a/src/gtk/listbox.cpp +++ b/src/gtk/listbox.cpp @@ -591,7 +591,7 @@ wxListBox::~wxListBox() // ---------------------------------------------------------------------------- void wxListBox::GtkInsertItems(const wxArrayString& items, - void** clientData, int pos) + void** clientData, unsigned int pos) { wxCHECK_RET( m_treeview != NULL, wxT("invalid listbox") ); @@ -599,8 +599,8 @@ void wxListBox::GtkInsertItems(const wxArrayString& items, // Create and set column ids and GValues - size_t nNum = items.GetCount(); - int nCurCount = wxListBox::GetCount(); + unsigned int nNum = items.GetCount(); + unsigned int nCurCount = wxListBox::GetCount(); wxASSERT_MSG(pos <= nCurCount, wxT("Invalid index passed to wxListBox")); GtkTreeIter* pIter = NULL; // append by default @@ -610,7 +610,7 @@ void wxListBox::GtkInsertItems(const wxArrayString& items, gboolean res = gtk_tree_model_iter_nth_child( GTK_TREE_MODEL(m_liststore), &iter, NULL, //NULL = parent = get first - pos ); + (int)pos ); if(!res) { wxLogSysError(wxT("internal wxListBox error in insertion")); @@ -620,15 +620,15 @@ void wxListBox::GtkInsertItems(const wxArrayString& items, pIter = &iter; } - for (size_t i = 0; i < nNum; ++i) + for (unsigned int i = 0; i < nNum; ++i) { wxString label = items[i]; #if wxUSE_CHECKLISTBOX && !wxUSE_NATIVEGTKCHECKLIST - if (m_hasCheckBoxes) - { - label.Prepend(wxCHECKLBOX_STRING); - } + if (m_hasCheckBoxes) + { + label.Prepend(wxCHECKLBOX_STRING); + } #endif // wxUSE_CHECKLISTBOX @@ -660,15 +660,17 @@ void wxListBox::GtkInsertItems(const wxArrayString& items, } } -void wxListBox::DoInsertItems(const wxArrayString& items, int pos) +void wxListBox::DoInsertItems(const wxArrayString& items, unsigned int pos) { + wxCHECK_RET( IsValidInsert(pos), wxT("invalid index in wxListBox::InsertItems") ); + GtkInsertItems(items, NULL, pos); } int wxListBox::DoAppend( const wxString& item ) { // Call DoInsertItems - int nWhere = wxListBox::GetCount(); + unsigned int nWhere = wxListBox::GetCount(); wxArrayString aItems; aItems.Add(item); wxListBox::DoInsertItems(aItems, nWhere); @@ -695,7 +697,7 @@ void wxListBox::Clear() gtk_list_store_clear( m_liststore ); /* well, THAT was easy :) */ } -void wxListBox::Delete( int n ) +void wxListBox::Delete(unsigned int n) { wxCHECK_RET( m_treeview != NULL, wxT("invalid listbox") ); @@ -706,7 +708,7 @@ void wxListBox::Delete( int n ) GTK_TREE_MODEL(m_liststore), &iter, NULL, //NULL = parent = get first n - ); + ); wxCHECK_RET( res, wxT("wrong listbox index") ); @@ -730,7 +732,7 @@ struct _GtkTreeEntry* wxListBox::GtkGetEntry(int n) const if (!res) { wxLogDebug(wxT("gtk_tree_model_iter_nth_child failed\n") - wxT("Passed in value was:[%i] List size:[%i]"), + wxT("Passed in value was:[%i] List size:[%u]"), n, wxListBox::GetCount() ); return NULL; } @@ -747,9 +749,9 @@ struct _GtkTreeEntry* wxListBox::GtkGetEntry(int n) const // client data // ---------------------------------------------------------------------------- -void* wxListBox::DoGetItemClientData( int n ) const +void* wxListBox::DoGetItemClientData(unsigned int n) const { - wxCHECK_MSG( n >= 0 && n < wxListBox::GetCount(), NULL, + wxCHECK_MSG( IsValid(n), NULL, wxT("Invalid index passed to GetItemClientData") ); GtkTreeEntry* entry = GtkGetEntry(n); @@ -760,14 +762,14 @@ void* wxListBox::DoGetItemClientData( int n ) const return userdata; } -wxClientData* wxListBox::DoGetItemClientObject( int n ) const +wxClientData* wxListBox::DoGetItemClientObject(unsigned int n) const { return (wxClientData*) wxListBox::DoGetItemClientData(n); } -void wxListBox::DoSetItemClientData( int n, void* clientData ) +void wxListBox::DoSetItemClientData(unsigned int n, void* clientData) { - wxCHECK_RET( n >= 0 && n < wxListBox::GetCount(), + wxCHECK_RET( IsValid(n), wxT("Invalid index passed to SetItemClientData") ); GtkTreeEntry* entry = GtkGetEntry(n); @@ -777,7 +779,7 @@ void wxListBox::DoSetItemClientData( int n, void* clientData ) g_object_unref(G_OBJECT(entry)); } -void wxListBox::DoSetItemClientObject( int n, wxClientData* clientData ) +void wxListBox::DoSetItemClientObject(unsigned int n, wxClientData* clientData) { // wxItemContainer already deletes data for us wxListBox::DoSetItemClientData(n, (void*) clientData); @@ -787,8 +789,9 @@ void wxListBox::DoSetItemClientObject( int n, wxClientData* clientData ) // string list access // ---------------------------------------------------------------------------- -void wxListBox::SetString( int n, const wxString &string ) +void wxListBox::SetString(unsigned int n, const wxString &string) { + wxCHECK_RET( IsValid(n), wxT("invalid index in wxListBox::SetString") ); wxCHECK_RET( m_treeview != NULL, wxT("invalid listbox") ); GtkTreeEntry* entry = GtkGetEntry(n); @@ -797,8 +800,8 @@ void wxListBox::SetString( int n, const wxString &string ) wxString label = string; #if wxUSE_CHECKLISTBOX && !wxUSE_NATIVEGTKCHECKLIST - if (m_hasCheckBoxes) - label.Prepend(wxCHECKLBOX_STRING); + if (m_hasCheckBoxes) + label.Prepend(wxCHECKLBOX_STRING); #endif // wxUSE_CHECKLISTBOX // RN: This may look wierd but the problem is that the TreeView @@ -818,7 +821,7 @@ void wxListBox::SetString( int n, const wxString &string ) wxListBox::GtkSetSelection(n, true, true); } -wxString wxListBox::GetString( int n ) const +wxString wxListBox::GetString(unsigned int n) const { wxCHECK_MSG( m_treeview != NULL, wxEmptyString, wxT("invalid listbox") ); @@ -839,11 +842,11 @@ wxString wxListBox::GetString( int n ) const return label; } -int wxListBox::GetCount() const +unsigned int wxListBox::GetCount() const { - wxCHECK_MSG( m_treeview != NULL, -1, wxT("invalid listbox") ); + wxCHECK_MSG( m_treeview != NULL, 0, wxT("invalid listbox") ); - return gtk_tree_model_iter_n_children(GTK_TREE_MODEL(m_liststore), NULL); + return (unsigned int)gtk_tree_model_iter_n_children(GTK_TREE_MODEL(m_liststore), NULL); } int wxListBox::FindString( const wxString &item, bool bCase ) const @@ -851,12 +854,12 @@ int wxListBox::FindString( const wxString &item, bool bCase ) const wxCHECK_MSG( m_treeview != NULL, wxNOT_FOUND, wxT("invalid listbox") ); //Sort of hackish - maybe there is a faster way - int nCount = wxListBox::GetCount(); + unsigned int nCount = wxListBox::GetCount(); - for(int i = 0; i < nCount; ++i) + for(unsigned int i = 0; i < nCount; ++i) { if( item.IsSameAs( wxListBox::GetString(i), bCase ) ) - return i; + return (int)i; } @@ -964,7 +967,7 @@ void wxListBox::GtkSetSelection(int n, const bool select, const bool blockEvent) void wxListBox::DoSetFirstItem( int n ) { wxCHECK_RET( m_treeview, wxT("invalid listbox") ); - wxCHECK_RET( n >= 0 && n < wxListBox::GetCount(), wxT("invalid index")); + wxCHECK_RET( IsValid(n), wxT("invalid index")); //RN: I have no idea why this line is needed... if (gdk_pointer_is_grabbed () && GTK_WIDGET_HAS_GRAB (m_treeview)) @@ -1092,13 +1095,13 @@ wxSize wxListBox::DoGetBestSize() const // Get the visible area of the tree view (limit to the 10th item // so that it isn't too big) - int count = GetCount(); + unsigned int count = GetCount(); if (count) { int wLine; // Find the widest line - for(int i = 0; i < count; i++) { + for(unsigned int i = 0; i < count; i++) { wxString str(GetString(i)); GetTextExtent(str, &wLine, NULL); lbWidth = wxMax(lbWidth, wLine); @@ -1116,8 +1119,8 @@ wxSize wxListBox::DoGetBestSize() const } #endif - // don't make the listbox too tall (limit height to around 10 items) but don't - // make it too small neither + // don't make the listbox too tall (limit height to around 10 items) but don't + // make it too small neither lbHeight = (cy+4) * wxMin(wxMax(count, 3), 10); }