]> git.saurik.com Git - wxWidgets.git/blobdiff - src/palmos/radiobox.cpp
update from Martin Srebotnjak
[wxWidgets.git] / src / palmos / radiobox.cpp
index d6ead07206db0855de30970fb68b3d19bccf8f96..f592c79cd889a60e8f3e955f5faf36529b670893 100644 (file)
     #include "wx/log.h"
 #endif
 
-#include "wx/palmos/private.h"
-
 #if wxUSE_TOOLTIPS
     #include "wx/tooltip.h"
 #endif // wxUSE_TOOLTIPS
 
+#include "wx/radiobut.h"
+
 // TODO: wxCONSTRUCTOR
 #if 0 // wxUSE_EXTENDED_RTTI
 WX_DEFINE_FLAGS( wxRadioBoxStyle )
@@ -102,19 +102,6 @@ IMPLEMENT_DYNAMIC_CLASS(wxRadioBox, wxControl)
         item
 */
 
-#define RADIOBTN_PARENT_IS_RADIOBOX 0
-
-// ---------------------------------------------------------------------------
-// private functions
-// ---------------------------------------------------------------------------
-
-// ---------------------------------------------------------------------------
-// global vars
-// ---------------------------------------------------------------------------
-
-// the pointer to standard radio button wnd proc
-static WXFARPROC s_wndprocRadioBtn = (WXFARPROC)NULL;
-
 // ===========================================================================
 // implementation
 // ===========================================================================
@@ -167,7 +154,28 @@ bool wxRadioBox::Create(wxWindow *parent,
                         const wxValidator& val,
                         const wxString& name)
 {
-    return false;
+    // initialize members
+    m_majorDim = majorDim == 0 ? n : majorDim;
+
+    if(!wxControl::Create(parent, id, pos, size, style, val, name))
+        return false;
+
+    for(int i=0; i<n; i++)
+    {
+        wxRadioButton* rb = new wxRadioButton();
+        rb->SetGroup( id );
+        rb->Create(
+              this,
+              wxID_ANY,
+              choices[n],
+              pos,
+              size,
+              ( n == 0 ? wxRB_GROUP : 0 ) |
+              ( style & wxRA_USE_CHECKBOX ) ? wxRB_USE_CHECKBOX : 0
+        );
+    }
+
+    SetSize(size);
 }
 
 bool wxRadioBox::Create(wxWindow *parent,
@@ -181,7 +189,10 @@ bool wxRadioBox::Create(wxWindow *parent,
                         const wxValidator& val,
                         const wxString& name)
 {
-    return false;
+    wxCArrayString chs(choices);
+
+    return Create( parent, id, title, pos, size, chs.GetCount(),
+                   chs.GetStrings(), majorDim, style, val, name );
 }
 
 wxRadioBox::~wxRadioBox()
@@ -234,14 +245,6 @@ void wxRadioBox::DoSetSize(int x, int y, int width, int height, int sizeFlags)
 {
 }
 
-void wxRadioBox::GetSize(int *width, int *height) const
-{
-}
-
-void wxRadioBox::GetPosition(int *x, int *y) const
-{
-}
-
 void wxRadioBox::SetFocus()
 {
 }
@@ -267,19 +270,10 @@ void wxRadioBox::Show(int item, bool show)
 {
 }
 
-bool wxRadioBox::ContainsHWND(WXHWND hWnd) const
-{
-    return false;
-}
-
 void wxRadioBox::Command(wxCommandEvent & event)
 {
 }
 
-void wxRadioBox::SubclassRadioButton(WXHWND hWndBtn)
-{
-}
-
 void wxRadioBox::SendNotificationEvent()
 {
 }
@@ -289,17 +283,4 @@ bool wxRadioBox::SetFont(const wxFont& font)
     return false;
 }
 
-// ----------------------------------------------------------------------------
-// our window proc
-// ----------------------------------------------------------------------------
-
-WXHBRUSH wxRadioBox::OnCtlColor(WXHDC pDC, WXHWND WXUNUSED(pWnd), WXUINT WXUNUSED(nCtlColor),
-                               WXUINT WXUNUSED(message),
-                               WXWPARAM WXUNUSED(wParam),
-                               WXLPARAM WXUNUSED(lParam)
-    )
-{
-    return (WXHBRUSH)0;
-}
-
 #endif // wxUSE_RADIOBOX