]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk1/spinbutt.cpp
zipstrm link fix
[wxWidgets.git] / src / gtk1 / spinbutt.cpp
index 4847cc4de5b6f0a2e096479e92fc8d738b265b4d..898eb4f4b935bce55eaa5aa3ad19c09de99503f4 100644 (file)
@@ -55,22 +55,27 @@ static void gtk_spinbutt_callback( GtkWidget *WXUNUSED(widget), wxSpinButton *wi
     wxEventType command = wxEVT_NULL;
 
     float line_step = win->m_adjust->step_increment;
-    float page_step = win->m_adjust->page_increment;
 
     if (fabs(diff-line_step) < sensitivity) command = wxEVT_SCROLL_LINEDOWN;
     else if (fabs(diff+line_step) < sensitivity) command = wxEVT_SCROLL_LINEUP;
-    else if (fabs(diff-page_step) < sensitivity) command = wxEVT_SCROLL_PAGEDOWN;
-    else if (fabs(diff+page_step) < sensitivity) command = wxEVT_SCROLL_PAGEUP;
     else command = wxEVT_SCROLL_THUMBTRACK;
 
     int value = (int)ceil(win->m_adjust->value);
 
     wxSpinEvent event( command, win->GetId());
     event.SetPosition( value );
-    event.SetOrientation( wxVERTICAL );
     event.SetEventObject( win );
-
     win->GetEventHandler()->ProcessEvent( event );
+    
+    /* always send a thumbtrack event */
+    if (command != wxEVT_SCROLL_THUMBTRACK)
+    {
+        command = wxEVT_SCROLL_THUMBTRACK;
+        wxSpinEvent event2( command, win->GetId());
+        event2.SetPosition( value );
+        event2.SetEventObject( win );
+        win->GetEventHandler()->ProcessEvent( event2 );
+    }
 }
 
 //-----------------------------------------------------------------------------
@@ -98,9 +103,12 @@ bool wxSpinButton::Create(wxWindow *parent,
     if (new_size.y == -1)
         new_size.y = 30;
 
-    PreCreation( parent, id, pos, new_size, style, name );
-
-//  SetValidator( validator );
+    if (!PreCreation( parent, pos, new_size ) ||
+        !CreateBase( parent, id, pos, new_size, style, wxDefaultValidator, name ))
+    {
+        wxFAIL_MSG( _T("wxXX creation failed") );
+       return FALSE;
+    }
 
     m_oldPos = 0.0;