]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/spinctrl.cpp
Fix nonsensical checked menu item label and behaviour
[wxWidgets.git] / src / os2 / spinctrl.cpp
index 6c44693285c16d608f560a96e388272a26bca39d..a7da77ea4ea0d72c8bd6eb3f191bee6bc6364015 100644 (file)
@@ -1,6 +1,6 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        msw/spinctrl.cpp
-// Purpose:     wxSpinCtrl class implementation for Win32
+// Name:        os2/spinctrl.cpp
+// Purpose:     wxSpinCtrl class implementation for OS/2
 // Author:      David Webster
 // Modified by:
 // Created:     10/15/99
 // declarations
 // ============================================================================
 
-
-#ifdef __GNUG__
-    #pragma implementation "spinctrlbase.h"
-    #pragma implementation "spinctrl.h"
-#endif
-
 // ----------------------------------------------------------------------------
 // headers
 // ----------------------------------------------------------------------------
@@ -31,7 +25,7 @@
     #include "wx/wx.h"
 #endif
 
-#if wxUSE_SPINBTN
+#if wxUSE_SPINCTRL
 
 #include "wx/spinctrl.h"
 #include "wx/os2/private.h"
@@ -50,7 +44,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl, wxControl)
 
 BEGIN_EVENT_TABLE(wxSpinCtrl, wxSpinButton)
     EVT_CHAR(wxSpinCtrl::OnChar)
-    EVT_SPIN(-1, wxSpinCtrl::OnSpinChange)
+    EVT_SPIN(wxID_ANY, wxSpinCtrl::OnSpinChange)
     EVT_SET_FOCUS(wxSpinCtrl::OnSetFocus)
 END_EVENT_TABLE()
 // ----------------------------------------------------------------------------
@@ -117,22 +111,20 @@ wxSpinCtrl::~wxSpinCtrl()
 // construction
 // ----------------------------------------------------------------------------
 
-bool wxSpinCtrl::Create(
-  wxWindow*                         pParent
-, wxWindowID                        vId
-, const wxString&                   rsValue
-, const wxPoint&                    rPos
-, const wxSize&                     rSize
-, long                              lStyle
-, int                               nMin
-, int                               nMax
-, int                               nInitial
-, const wxString&                   rsName
-)
+bool wxSpinCtrl::Create( wxWindow*       pParent,
+                         wxWindowID      vId,
+                         const wxString& WXUNUSED(rsValue),
+                         const wxPoint&  rPos,
+                         const wxSize&   rSize,
+                         long            lStyle,
+                         int             nMin,
+                         int             nMax,
+                         int             nInitial,
+                         const wxString& rsName )
 {
     SWP                             vSwp;
 
-    if (vId == -1)
+    if (vId == wxID_ANY)
         m_windowId = NewControlId();
     else
         m_windowId = vId;
@@ -174,7 +166,7 @@ bool wxSpinCtrl::Create(
                                       );
     if (m_hWnd == 0)
     {
-        return FALSE;
+        return false;
     }
     m_hWndBuddy = m_hWnd; // One in the same for OS/2
     if(pParent)
@@ -207,20 +199,21 @@ bool wxSpinCtrl::Create(
     fnWndProcSpinCtrl = (WXFARPROC)::WinSubclassWindow(m_hWnd, (PFNWP)wxSpinCtrlWndProc);
     m_svAllSpins.Add(this);
     delete pTextFont;
-    return TRUE;
+    return true;
 } // end of wxSpinCtrl::Create
 
 wxSize wxSpinCtrl::DoGetBestSize() const
 {
     wxSize                          vSizeBtn = wxSpinButton::DoGetBestSize();
     int                             nHeight;
+    wxFont                          vFont = (wxFont)GetFont();
 
     vSizeBtn.x += DEFAULT_ITEM_WIDTH + MARGIN_BETWEEN;
 
     wxGetCharSize( GetHWND()
                   ,NULL
                   ,&nHeight
-                  ,(wxFont*)&GetFont()
+                  ,&vFont
                  );
     nHeight = EDIT_HEIGHT_FROM_CHAR_HEIGHT(nHeight);
 
@@ -301,10 +294,10 @@ bool wxSpinCtrl::Enable(
 {
     if (!wxControl::Enable(bEnable))
     {
-        return FALSE;
+        return false;
     }
     ::WinEnableWindow(GetHwnd(), bEnable);
-    return TRUE;
+    return true;
 } // end of wxSpinCtrl::Enable
 
 wxSpinCtrl* wxSpinCtrl::GetSpinForTextCtrl(
@@ -356,7 +349,7 @@ void wxSpinCtrl::OnChar (
                 wxString                    sVal = wxGetWindowText(m_hWndBuddy);
 
                 InitCommandEvent(vEvent);
-                vEvent.SetString((char*)sVal.c_str());
+                vEvent.SetString(sVal);
                 vEvent.SetInt(GetValue());
                 if (GetEventHandler()->ProcessEvent(vEvent))
                     return;
@@ -417,23 +410,19 @@ void wxSpinCtrl::OnSetFocus (
     rEvent.Skip();
 } // end of wxSpinCtrl::OnSetFocus
 
-bool wxSpinCtrl::ProcessTextCommand(
-  WXWORD                            wCmd
-, WXWORD                            wId
-)
+bool wxSpinCtrl::ProcessTextCommand( WXWORD wCmd,
+                                     WXWORD WXUNUSED(wId) )
 {
     switch (wCmd)
     {
         case SPBN_CHANGE:
         {
-            wxCommandEvent          vEvent( wxEVT_COMMAND_TEXT_UPDATED
-                                           ,GetId()
-                                          );
+            wxCommandEvent vEvent( wxEVT_COMMAND_TEXT_UPDATED, GetId() );
             vEvent.SetEventObject(this);
 
-            wxString                sVal = wxGetWindowText(m_hWndBuddy);
+            wxString sVal = wxGetWindowText(m_hWndBuddy);
 
-            vEvent.SetString((char*)sVal.c_str());
+            vEvent.SetString(sVal);
             vEvent.SetInt(GetValue());
             return (GetEventHandler()->ProcessEvent(vEvent));
         }
@@ -441,9 +430,9 @@ bool wxSpinCtrl::ProcessTextCommand(
         case SPBN_SETFOCUS:
         case SPBN_KILLFOCUS:
         {
-            wxFocusEvent                vEvent( wCmd == EN_KILLFOCUS ? wxEVT_KILL_FOCUS : wxEVT_SET_FOCUS
-                                               ,m_windowId
-                                              );
+            wxFocusEvent vEvent( wCmd == EN_KILLFOCUS ? wxEVT_KILL_FOCUS : wxEVT_SET_FOCUS
+                                ,m_windowId
+                               );
 
             vEvent.SetEventObject(this);
             return(GetEventHandler()->ProcessEvent(vEvent));
@@ -455,7 +444,7 @@ bool wxSpinCtrl::ProcessTextCommand(
     //
     // Not processed
     //
-    return FALSE;
+    return false;
 } // end of wxSpinCtrl::ProcessTextCommand
 
 void wxSpinCtrl::SetFocus()
@@ -470,13 +459,13 @@ bool wxSpinCtrl::SetFont(
     if (!wxWindowBase::SetFont(rFont))
     {
         // nothing to do
-        return FALSE;
+        return false;
     }
 
     wxOS2SetFont( m_hWnd
                  ,rFont
                 );
-    return TRUE;
+    return true;
 } // end of wxSpinCtrl::SetFont
 
 void wxSpinCtrl::SetValue(
@@ -485,7 +474,7 @@ void wxSpinCtrl::SetValue(
 {
     long                            lVal;
 
-    lVal = atol(rsText.c_str());
+    lVal = atol((char*)rsText.c_str());
     wxSpinButton::SetValue(lVal);
 } // end of wxSpinCtrl::SetValue
 
@@ -495,9 +484,9 @@ bool wxSpinCtrl::Show(
 {
     if (!wxControl::Show(bShow))
     {
-        return FALSE;
+        return false;
     }
-    return TRUE;
+    return true;
 } // end of wxSpinCtrl::Show
 
 void wxSpinCtrl::SetSelection (
@@ -516,4 +505,4 @@ void wxSpinCtrl::SetSelection (
     ::WinSendMsg(m_hWnd, EM_SETSEL, MPFROM2SHORT((USHORT)lFrom, (USHORT)lTo), (MPARAM)0);
 } // end of wxSpinCtrl::SetSelection
 
-#endif //wxUSE_SPINBTN
+#endif //wxUSE_SPINCTRL