]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk/frame.h
2b52e132c47cf2164322d7c1f3fc5f69e32d27e6
1 /////////////////////////////////////////////////////////////////////////////
4 // Author: Robert Roebling
7 // Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
8 // Licence: wxWindows licence
9 /////////////////////////////////////////////////////////////////////////////
20 #include "wx/object.h"
21 #include "wx/window.h"
23 //-----------------------------------------------------------------------------
25 //-----------------------------------------------------------------------------
27 class wxMDIChildFrame
;
28 class wxMDIClientWindow
;
36 //-----------------------------------------------------------------------------
38 //-----------------------------------------------------------------------------
40 extern const char *wxFrameNameStr
;
41 extern const char *wxToolBarNameStr
;
43 //-----------------------------------------------------------------------------
45 //-----------------------------------------------------------------------------
47 class wxFrame
: public wxWindow
49 DECLARE_DYNAMIC_CLASS(wxFrame
)
53 wxFrame( wxWindow
*parent
, wxWindowID id
, const wxString
&title
,
54 const wxPoint
&pos
= wxDefaultPosition
, const wxSize
&size
= wxDefaultSize
,
55 long style
= wxDEFAULT_FRAME_STYLE
, const wxString
&name
= wxFrameNameStr
);
56 bool Create( wxWindow
*parent
, wxWindowID id
, const wxString
&title
,
57 const wxPoint
&pos
= wxDefaultPosition
, const wxSize
&size
= wxDefaultSize
,
58 long style
= wxDEFAULT_FRAME_STYLE
, const wxString
&name
= wxFrameNameStr
);
62 virtual bool Show( bool show
);
63 virtual void Enable( bool enable
);
65 virtual void GetClientSize( int *width
, int *height
) const;
66 virtual void SetClientSize( int const width
, int const height
);
68 // set minimal/maxmimal size for the frame
69 virtual void SetSizeHints( int minW
, int minH
, int maxW
, int maxH
, int incW
= -1 );
71 virtual wxStatusBar
* CreateStatusBar(int number
=1, long style
= wxST_SIZEGRIP
, wxWindowID id
= 0,
72 const wxString
& name
= "statusBar");
73 virtual wxStatusBar
*OnCreateStatusBar( int number
, long style
, wxWindowID id
,
74 const wxString
& name
);
75 virtual wxStatusBar
*GetStatusBar() const;
76 virtual void SetStatusText( const wxString
&text
, int number
= 0 );
77 virtual void SetStatusWidths( int n
, const int widths_field
[] );
79 virtual wxToolBar
* CreateToolBar( long style
= wxNO_BORDER
|wxTB_HORIZONTAL
, wxWindowID id
= -1,
80 const wxString
& name
= wxToolBarNameStr
);
81 virtual wxToolBar
*OnCreateToolBar( long style
, wxWindowID id
, const wxString
& name
);
82 virtual wxToolBar
*GetToolBar(void) const;
84 virtual void SetMenuBar( wxMenuBar
*menuBar
);
85 virtual wxMenuBar
*GetMenuBar() const;
87 virtual void SetTitle( const wxString
&title
);
88 virtual wxString
GetTitle() const { return m_title
; }
90 virtual void SetIcon( const wxIcon
&icon
);
92 void OnActivate( wxActivateEvent
&WXUNUSED(event
) ) { } // called from docview.cpp
93 void OnSize( wxSizeEvent
&event
);
94 void OnCloseWindow( wxCloseEvent
& event
);
95 void OnIdle(wxIdleEvent
& event
);
97 virtual void AddChild( wxWindow
*child
);
98 virtual void GtkOnSize( int x
, int y
, int width
, int height
);
102 friend wxMDIChildFrame
;
103 friend wxMDIClientWindow
;
105 // update frame's menus (called from OnIdle)
106 void DoMenuUpdates();
107 void DoMenuUpdates(wxMenu
* menu
);
109 GtkWidget
*m_mainWindow
;
110 wxMenuBar
*m_frameMenuBar
;
111 wxStatusBar
*m_frameStatusBar
;
112 wxToolBar
*m_frameToolBar
;
114 bool m_addPrivateChild
; // for toolbar (and maybe menubar)
118 DECLARE_EVENT_TABLE()
121 #endif // __GTKFRAMEH__