X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8d7eaf91403705cdd94acaae0d7413e711cce3dc..f239a20092359e3c914adb79bd39f3f5d2b2e06f:/src/generic/sashwin.cpp diff --git a/src/generic/sashwin.cpp b/src/generic/sashwin.cpp index b9e554da14..aab0b33b90 100644 --- a/src/generic/sashwin.cpp +++ b/src/generic/sashwin.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: sashwin.cpp +// Name: src/generic/sashwin.cpp // Purpose: wxSashWindow implementation. A sash window has an optional // sash on each edge, allowing it to be dragged. An event // is generated when the sash is released. @@ -15,27 +15,27 @@ #include "wx/wxprec.h" #ifdef __BORLANDC__ -#pragma hdrstop + #pragma hdrstop #endif #if wxUSE_SASH +#include "wx/sashwin.h" + #ifndef WX_PRECOMP #include "wx/dialog.h" #include "wx/frame.h" #include "wx/settings.h" + #include "wx/dcclient.h" + #include "wx/dcscreen.h" + #include "wx/math.h" #endif -#include "wx/math.h" - #include -#include "wx/dcscreen.h" -#include "wx/dcclient.h" -#include "wx/sashwin.h" #include "wx/laywin.h" -DEFINE_EVENT_TYPE(wxEVT_SASH_DRAGGED) +wxDEFINE_EVENT( wxEVT_SASH_DRAGGED, wxSashEvent ); IMPLEMENT_DYNAMIC_CLASS(wxSashWindow, wxWindow) IMPLEMENT_DYNAMIC_CLASS(wxSashEvent, wxCommandEvent) @@ -46,7 +46,7 @@ BEGIN_EVENT_TABLE(wxSashWindow, wxWindow) EVT_MOUSE_EVENTS(wxSashWindow::OnMouseEvent) #if defined( __WXMSW__ ) || defined( __WXMAC__) EVT_SET_CURSOR(wxSashWindow::OnSetCursor) -#endif // wxMSW +#endif // __WXMSW__ || __WXMAC__ END_EVENT_TABLE() @@ -289,7 +289,7 @@ void wxSashWindow::OnMouseEvent(wxMouseEvent& event) ReleaseMouse(); m_mouseCaptured = false; } - else if (event.Moving() && !event.Dragging()) + else if ((event.Moving() || event.Leaving()) && !event.Dragging()) { // Just change the cursor if required if ( sashHit != wxSASH_NONE ) @@ -426,10 +426,10 @@ void wxSashWindow::DrawBorders(wxDC& dc) int w, h; GetClientSize(&w, &h); - wxPen mediumShadowPen(m_mediumShadowColour, 1, wxSOLID); - wxPen darkShadowPen(m_darkShadowColour, 1, wxSOLID); - wxPen lightShadowPen(m_lightShadowColour, 1, wxSOLID); - wxPen hilightPen(m_hilightColour, 1, wxSOLID); + wxPen mediumShadowPen(m_mediumShadowColour, 1, wxPENSTYLE_SOLID); + wxPen darkShadowPen(m_darkShadowColour, 1, wxPENSTYLE_SOLID); + wxPen lightShadowPen(m_lightShadowColour, 1, wxPENSTYLE_SOLID); + wxPen hilightPen(m_hilightColour, 1, wxPENSTYLE_SOLID); if ( GetWindowStyleFlag() & wxSW_3DBORDER ) { @@ -475,16 +475,16 @@ void wxSashWindow::DrawSash(wxSashEdgePosition edge, wxDC& dc) int w, h; GetClientSize(&w, &h); - wxPen facePen(m_faceColour, 1, wxSOLID); - wxBrush faceBrush(m_faceColour, wxSOLID); - wxPen mediumShadowPen(m_mediumShadowColour, 1, wxSOLID); - wxPen darkShadowPen(m_darkShadowColour, 1, wxSOLID); - wxPen lightShadowPen(m_lightShadowColour, 1, wxSOLID); - wxPen hilightPen(m_hilightColour, 1, wxSOLID); + wxPen facePen(m_faceColour, 1, wxPENSTYLE_SOLID); + wxBrush faceBrush(m_faceColour, wxBRUSHSTYLE_SOLID); + wxPen mediumShadowPen(m_mediumShadowColour, 1, wxPENSTYLE_SOLID); + wxPen darkShadowPen(m_darkShadowColour, 1, wxPENSTYLE_SOLID); + wxPen lightShadowPen(m_lightShadowColour, 1, wxPENSTYLE_SOLID); + wxPen hilightPen(m_hilightColour, 1, wxPENSTYLE_SOLID); wxColour blackClr(0, 0, 0); wxColour whiteClr(255, 255, 255); - wxPen blackPen(blackClr, 1, wxSOLID); - wxPen whitePen(whiteClr, 1, wxSOLID); + wxPen blackPen(blackClr, 1, wxPENSTYLE_SOLID); + wxPen whitePen(whiteClr, 1, wxPENSTYLE_SOLID); if ( edge == wxSASH_LEFT || edge == wxSASH_RIGHT ) { @@ -587,7 +587,7 @@ void wxSashWindow::DrawSashTracker(wxSashEdgePosition edge, int x, int y) ClientToScreen(&x1, &y1); ClientToScreen(&x2, &y2); - wxPen sashTrackerPen(*wxBLACK, 2, wxSOLID); + wxPen sashTrackerPen(*wxBLACK, 2, wxPENSTYLE_SOLID); screenDC.SetLogicalFunction(wxINVERT); screenDC.SetPen(sashTrackerPen); @@ -703,6 +703,6 @@ void wxSashWindow::OnSetCursor(wxSetCursorEvent& event) //else: do nothing, in particular, don't call Skip() } -#endif // wxMSW +#endif // __WXMSW__ || __WXMAC__ #endif // wxUSE_SASH