- Create(parent, id, pos, size, nStrings, choices, style|wxLB_OWNERDRAW, val, name);
+ Create(parent, id, pos, size, nStrings, choices,
+ style | wxLB_OWNERDRAW, val, name);
+}
+
+void wxCheckListBox::Delete(int N)
+{
+ wxCHECK_RET( N >= 0 && N < m_noItems,
+ wxT("invalid index in wxListBox::Delete") );
+
+ wxListBox::Delete(N);
+
+ // free memory
+ delete m_aItems[N];
+
+ m_aItems.RemoveAt(N);
+}
+
+void wxCheckListBox::InsertItems(int nItems, const wxString items[], int pos)
+{
+ wxCHECK_RET( pos >= 0 && pos <= m_noItems,
+ wxT("invalid index in wxCheckListBox::InsertItems") );
+
+ wxListBox::InsertItems(nItems, items, pos);
+
+ int i;
+ for ( i = 0; i < nItems; i++ ) {
+ wxOwnerDrawn *pNewItem = CreateItem((size_t)(pos + i));
+ pNewItem->SetName(items[i]);
+ pNewItem->SetFont(GetFont());
+
+ m_aItems.Insert(pNewItem, (size_t)(pos + i));
+
+ ListBox_SetItemData((HWND)GetHWND(), i + pos, pNewItem);
+ }
+}
+
+
+bool wxCheckListBox::SetFont( const wxFont &font )
+{
+ size_t i;
+ for ( i = 0; i < m_aItems.GetCount(); i++ )
+ m_aItems[i]->SetFont(font);
+
+ wxListBox::SetFont(font);
+
+ return TRUE;