fix appending items to sorted control (patch 1940384)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -318,6 +318,7 @@ All (GUI):
|
|||||||
- Generalized wxScrolledWindow into wxScrolled<T> template that can derive
|
- Generalized wxScrolledWindow into wxScrolled<T> template that can derive
|
||||||
from any window class, not just wxPanel.
|
from any window class, not just wxPanel.
|
||||||
- Allow having menu separators with ids != wxID_SEPARATOR (Jeff Tupper)
|
- Allow having menu separators with ids != wxID_SEPARATOR (Jeff Tupper)
|
||||||
|
- Fix appending items to sorted wxComboCtrl after creation (Jaakko Salli)
|
||||||
|
|
||||||
wxGTK:
|
wxGTK:
|
||||||
|
|
||||||
|
@@ -1027,13 +1027,29 @@ int wxOwnerDrawnComboBox::DoInsertItems(const wxArrayStringsAdapter& items,
|
|||||||
EnsurePopupControl();
|
EnsurePopupControl();
|
||||||
|
|
||||||
const unsigned int count = items.GetCount();
|
const unsigned int count = items.GetCount();
|
||||||
for( unsigned int i = 0; i < count; ++i, ++pos )
|
|
||||||
{
|
|
||||||
GetVListBoxComboPopup()->Insert(items[i], pos);
|
|
||||||
AssignNewItemClientData(pos, clientData, i, type);
|
|
||||||
}
|
|
||||||
|
|
||||||
return pos - 1;
|
if ( HasFlag(wxCB_SORT) )
|
||||||
|
{
|
||||||
|
int n = pos;
|
||||||
|
|
||||||
|
for ( unsigned int i = 0; i < count; ++i )
|
||||||
|
{
|
||||||
|
int n = GetVListBoxComboPopup()->Append(items[i]);
|
||||||
|
AssignNewItemClientData(n, clientData, i, type);
|
||||||
|
}
|
||||||
|
|
||||||
|
return n;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
for ( unsigned int i = 0; i < count; ++i, ++pos )
|
||||||
|
{
|
||||||
|
GetVListBoxComboPopup()->Insert(items[i], pos);
|
||||||
|
AssignNewItemClientData(pos, clientData, i, type);
|
||||||
|
}
|
||||||
|
|
||||||
|
return pos - 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxOwnerDrawnComboBox::DoSetItemClientData(unsigned int n, void* clientData)
|
void wxOwnerDrawnComboBox::DoSetItemClientData(unsigned int n, void* clientData)
|
||||||
|
Reference in New Issue
Block a user