+ wxCHECK_MSG( N >= 0 && N < m_datas.GetCount(), NULL,
+ "invalid index in wxChoice::GetClientData" );
+
+ return (void *)m_datas[N];
+}
+
+void wxChoice::DoSetItemClientObject( int n, wxClientData* clientData )
+{
+ DoSetItemClientData(n, clientData);
+}
+
+wxClientData* wxChoice::DoGetItemClientObject( int n ) const
+{
+ return (wxClientData *)DoGetItemClientData(n);
+}
+
+void wxChoice::MacHandleControlClick( ControlHandle control , SInt16 controlpart )
+{
+ wxCommandEvent event(wxEVT_COMMAND_CHOICE_SELECTED, m_windowId );
+ event.SetInt(GetSelection());
+ event.SetEventObject(this);
+ event.SetString(GetStringSelection());
+ ProcessCommand(event);