#include "wx/settings.h"
#include "wx/log.h"
+DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED)
+DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING)
+DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_DOUBLECLICKED)
+DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_UNSPLIT)
+
IMPLEMENT_DYNAMIC_CLASS(wxSplitterWindow, wxWindow)
IMPLEMENT_DYNAMIC_CLASS(wxSplitterEvent, wxCommandEvent)
DrawSash(dc);
}
-void wxSplitterWindow::OnIdle(wxIdleEvent& WXUNUSED(event))
+void wxSplitterWindow::OnIdle(wxIdleEvent& event)
{
if (m_needUpdating)
SizeWindows();
+
+ event.Skip();
}
void wxSplitterWindow::OnMouseEvent(wxMouseEvent& event)
return;
}
}
-
+
if (new_sash_position == m_sashPosition)
return;
if ( GetBorderSize() > 0 )
DrawBorders(dc);
DrawSash(dc);
-
+
SetNeedUpdating(FALSE);
}
if ( sashPosition > 0 )
m_sashPosition = sashPosition;
else if ( sashPosition < 0 )
- m_sashPosition = w - sashPosition;
+ m_sashPosition = w + sashPosition; // It's negative so adding is subtracting
else // default
m_sashPosition = w/2;
if ( sashPosition > 0 )
m_sashPosition = sashPosition;
else if ( sashPosition < 0 )
- m_sashPosition = h - sashPosition;
+ m_sashPosition = h + sashPosition; // It's negative so adding is subtracting
else // default
m_sashPosition = h/2;
wxDELETE( m_hilightPen );
// Shadow colours
-#if defined(__WIN95__)
+#ifndef __WIN16__
wxColour faceColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE));
m_facePen = new wxPen(faceColour, 1, wxSOLID);
m_faceBrush = new wxBrush(faceColour, wxSOLID);
wxColour hilightColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DHILIGHT));
m_hilightPen = new wxPen(hilightColour, 1, wxSOLID);
-#else // !Win32
+#else
m_facePen = new wxPen("LIGHT GREY", 1, wxSOLID);
m_faceBrush = new wxBrush("LIGHT GREY", wxSOLID);
m_mediumShadowPen = new wxPen("GREY", 1, wxSOLID);
m_darkShadowPen = new wxPen("BLACK", 1, wxSOLID);
m_lightShadowPen = new wxPen("LIGHT GREY", 1, wxSOLID);
m_hilightPen = new wxPen("WHITE", 1, wxSOLID);
-#endif // Win32/!Win32
+#endif // __WIN16__
}
void wxSplitterWindow::SendUnsplitEvent(wxWindow *winRemoved)