+int wxChoice::DoAppend(
+ const wxString& rsItem
+)
+{
+ int nIndex;
+ LONG nIndexType = 0;
+ if (m_windowStyle & wxCB_SORT)
+ nIndexType = LIT_SORTASCENDING;
+ else
+ nIndexType = LIT_END;
+ nIndex = (int)::WinSendMsg( GetHwnd()
+ ,LM_INSERTITEM
+ ,(MPARAM)nIndexType
+ ,(MPARAM)rsItem.c_str()
+ );
+ return nIndex;
+} // end of wxChoice::DoAppend
+
+int wxChoice::DoInsert( const wxString& rsItem, unsigned int pos )
+{
+ wxCHECK_MSG(!(GetWindowStyle() & wxCB_SORT), -1, wxT("can't insert into sorted list"));
+ wxCHECK_MSG(IsValidInsert(pos), -1, wxT("invalid index"));
+
+ if (pos == GetCount())
+ return DoAppend(rsItem);
+
+ int nIndex;
+ LONG nIndexType = 0;
+
+ if (m_windowStyle & wxCB_SORT)
+ nIndexType = LIT_SORTASCENDING;
+ else
+ nIndexType = pos;
+ nIndex = (int)::WinSendMsg( GetHwnd()
+ ,LM_INSERTITEM
+ ,(MPARAM)nIndexType
+ ,(MPARAM)rsItem.c_str()
+ );
+ return nIndex;
+} // end of wxChoice::DoInsert
+
+void wxChoice::Delete(unsigned int n)