1 #############################################################################
2 ## Name: XS/SplitterWindow.xs
3 ## Purpose: XS for Wx::SplitterWindow
4 ## Author: Mattia Barbon
7 ## RCS-ID: $Id: SplitterWindow.xs 2057 2007-06-18 23:03:00Z mbarbon $
8 ## Copyright: (c) 2000-2003, 2005-2006 Mattia Barbon
9 ## Licence: This program is free software; you can redistribute it and/or
10 ## modify it under the same terms as Perl itself
11 #############################################################################
14 #include <wx/splitter.h>
19 %name{Wx::SplitterEvent} class wxSplitterEvent
21 wxSplitterEvent( wxEventType type = wxEVT_NULL,
22 wxSplitterWindow* window = NULL );
24 int GetSashPosition();
27 wxWindow* GetWindowBeingRemoved();
28 void SetSashPosition( int pos );
32 #define wxSplitterWindowNameStr wxT("splitter")
35 %name{Wx::SplitterWindow} class wxSplitterWindow
39 %code{% RETVAL = new wxSplitterWindow();
40 wxPli_create_evthandler( aTHX_ RETVAL, CLASS ); %};
43 wxSplitterWindow( wxWindow* parent, wxWindowID id = wxID_ANY,
44 const wxPoint& pos = wxDefaultPosition,
45 const wxSize& size = wxDefaultSize,
47 wxString name = wxSplitterWindowNameStr )
48 %code{% RETVAL = new wxSplitterWindow( parent, id, pos, size,
50 wxPli_create_evthandler( aTHX_ RETVAL, CLASS ); %};
52 bool Create( wxWindow* parent, wxWindowID id = wxID_ANY,
53 const wxPoint& pos = wxDefaultPosition,
54 const wxSize& size = wxDefaultSize,
56 wxString name = wxSplitterWindowNameStr );
58 int GetMinimumPaneSize();
59 int GetSashPosition();
61 wxWindow* GetWindow1();
62 wxWindow* GetWindow2();
64 void Initialize( wxWindow* window );
68 bool ReplaceWindow( wxWindow* winOld, wxWindow* winNew );
70 #if WXPERL_W_VERSION_GE( 2, 5, 4 )
71 void SetFocusIgnoringChildren();
73 void SetSashPosition( int position, bool redraw = true );
74 void SetMinimumPaneSize( int paneSize );
75 void SetSplitMode( int mode );
77 bool SplitHorizontally( wxWindow* window1, wxWindow* window2,
78 int sashPosition = 0 );
79 bool SplitVertically( wxWindow* window1, wxWindow* window2,
80 int sashPosition = 0 );
81 bool Unsplit( wxWindow* toRemove = NULL );
82 #if WXPERL_W_VERSION_GE( 2, 6, 0 )
83 void SetSashGravity( double gravity );
84 double GetSashGravity();
86 #if WXPERL_W_VERSION_GE( 2, 5, 3 )
88 void SetSashSize( int width );
98 MATCH_VOIDM_REDISP( newDefault )
99 MATCH_ANY_REDISP( newFull )
100 END_OVERLOAD( "Wx::SplitterWindow::new" )