X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1248b41f9f71110347659db8c54c75786eba23c6..9572bf1d442006beba3528dc00c3fc05eb523c24:/src/motif/scrolbar.cpp diff --git a/src/motif/scrolbar.cpp b/src/motif/scrolbar.cpp index 3d17e927af..f12accfcf8 100644 --- a/src/motif/scrolbar.cpp +++ b/src/motif/scrolbar.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: scrolbar.cpp +// Name: src/motif/scrolbar.cpp // Purpose: wxScrollBar // Author: Julian Smart // Modified by: @@ -9,19 +9,13 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "scrolbar.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#include "wx/defs.h" #include "wx/scrolbar.h" #ifdef __VMS__ #pragma message disable nosimpint -#define XtDisplay XTDISPLAY #endif #include #include @@ -45,6 +39,7 @@ bool wxScrollBar::Create(wxWindow *parent, wxWindowID id, { if( !CreateControl( parent, id, pos, size, style, validator, name ) ) return false; + PreCreation(); wxSize newSize = ( style & wxHORIZONTAL ) ? wxSize( 140, 16 ) : wxSize( 16, 140 ); @@ -58,9 +53,9 @@ bool wxScrollBar::Create(wxWindow *parent, wxWindowID id, (wxOrientation)(style & (wxHORIZONTAL|wxVERTICAL)), (void (*)())wxScrollBarCallback ); + PostCreation(); AttachWidget (parent, m_mainWidget, (WXWidget) NULL, pos.x, pos.y, newSize.x, newSize.y); - ChangeBackgroundColour(); return true; } @@ -107,7 +102,7 @@ void wxScrollBar::SetScrollbar(int position, int thumbSize, int range, int pageS void wxScrollBar::Command(wxCommandEvent& event) { - SetThumbPosition(event.m_commandInt); + SetThumbPosition(event.GetInt()); ProcessCommand(event); } @@ -130,7 +125,9 @@ static void wxScrollBarCallback(Widget widget, XtPointer clientData, XmScaleCallbackStruct *cbs) { wxScrollBar *scrollBar = (wxScrollBar*)wxGetWindowFromTable(widget); - wxOrientation orientation = (wxOrientation)(int)clientData; + wxCHECK_RET( scrollBar, wxT("invalid widget in scrollbar callback") ); + + wxOrientation orientation = (wxOrientation)wxPtrToUInt(clientData); wxEventType eventType = wxEVT_NULL; switch (cbs->reason) @@ -186,5 +183,5 @@ static void wxScrollBarCallback(Widget widget, XtPointer clientData, wxScrollEvent event(eventType, scrollBar->GetId(), cbs->value, orientation); event.SetEventObject(scrollBar); - scrollBar->GetEventHandler()->ProcessEvent(event); + scrollBar->HandleWindowEvent(event); }