#include "wx/utils.h"
#include "wx/math.h"
-#include "wx/gtk/private.h"
+#include "wx/gtk1/private.h"
//-----------------------------------------------------------------------------
// idle system
event.SetEventObject( win );
win->GetEventHandler()->ProcessEvent( event );
+ if ( evtType != wxEVT_SCROLL_THUMBTRACK )
+ {
+ wxScrollEvent event2(wxEVT_SCROLL_CHANGED, win->GetId(), value, orient);
+ event2.SetEventObject( win );
+ win->GetEventHandler()->ProcessEvent( event2 );
+ }
+
wxCommandEvent cevent( wxEVT_COMMAND_SLIDER_UPDATED, win->GetId() );
cevent.SetEventObject( win );
cevent.SetInt( value );
return;
wxEventType evtType;
-#ifdef __WXGTK20__
- if ( win->m_isScrolling )
- evtType = wxEVT_SCROLL_THUMBTRACK;
- // it could seem that UP/DOWN are inversed but this is what wxMSW does
- else if ( AreSameAdjustValues(diff, adjust->step_increment) )
- evtType = wxEVT_SCROLL_LINEDOWN;
- else if ( AreSameAdjustValues(diff, -adjust->step_increment) )
- evtType = wxEVT_SCROLL_LINEUP;
- else if ( AreSameAdjustValues(diff, adjust->page_increment) )
- evtType = wxEVT_SCROLL_PAGEDOWN;
- else if ( AreSameAdjustValues(diff, -adjust->page_increment) )
- evtType = wxEVT_SCROLL_PAGEUP;
- else if ( AreSameAdjustValues(adjust->value, adjust->lower) )
- evtType = wxEVT_SCROLL_TOP;
- else if ( AreSameAdjustValues(adjust->value, adjust->upper) )
- evtType = wxEVT_SCROLL_BOTTOM;
-#else
evtType = GtkScrollTypeToWx(GET_SCROLL_TYPE(win->m_widget));
-#endif
ProcessScrollEvent(win, evtType, dvalue);
m_adjust = gtk_range_get_adjustment( GTK_RANGE(m_widget) );
-#ifdef __WXGTK20__
- if (style & wxSL_INVERSE)
- gtk_range_set_inverted( GTK_RANGE(m_widget), TRUE );
-#endif
-
GtkEnableEvents();
gtk_signal_connect( GTK_OBJECT(m_widget),
"button_press_event",
bool wxSlider::IsOwnGtkWindow( GdkWindow *window )
{
GtkRange *range = GTK_RANGE(m_widget);
-#ifdef __WXGTK20__
- return (range->event_window == window);
-#else
return ( (window == GTK_WIDGET(range)->window)
|| (window == range->trough)
|| (window == range->slider)
|| (window == range->step_forw)
|| (window == range->step_back) );
-#endif
}
void wxSlider::GtkDisableEvents()