1 /////////////////////////////////////////////////////////////////////////////// 
   2 // Name:        wx/x11/toplevel.h 
   3 // Purpose:     wxTopLevelWindowX11 is the X11 implementation of wxTLW 
   4 // Author:      Julian Smart 
   8 // Copyright:   (c) 2002 Julian Smart 
   9 // Licence:     wxWindows licence 
  10 /////////////////////////////////////////////////////////////////////////////// 
  12 #ifndef _WX_X11_TOPLEVEL_H_ 
  13 #define _WX_X11_TOPLEVEL_H_ 
  15 #if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) 
  16     #pragma interface "toplevel.h" 
  19 // ---------------------------------------------------------------------------- 
  20 // wxTopLevelWindowX11 
  21 // ---------------------------------------------------------------------------- 
  23 class WXDLLEXPORT wxTopLevelWindowX11 
: public wxTopLevelWindowBase
 
  26     // constructors and such 
  27     wxTopLevelWindowX11() { Init(); } 
  29     wxTopLevelWindowX11(wxWindow 
*parent
, 
  31                         const wxString
& title
, 
  32                         const wxPoint
& pos 
= wxDefaultPosition
, 
  33                         const wxSize
& size 
= wxDefaultSize
, 
  34                         long style 
= wxDEFAULT_FRAME_STYLE
, 
  35                         const wxString
& name 
= wxFrameNameStr
) 
  39         (void)Create(parent
, id
, title
, pos
, size
, style
, name
); 
  42     bool Create(wxWindow 
*parent
, 
  44                 const wxString
& title
, 
  45                 const wxPoint
& pos 
= wxDefaultPosition
, 
  46                 const wxSize
& size 
= wxDefaultSize
, 
  47                 long style 
= wxDEFAULT_FRAME_STYLE
, 
  48                 const wxString
& name 
= wxFrameNameStr
); 
  50     virtual ~wxTopLevelWindowX11(); 
  52     // implement base class pure virtuals 
  53     virtual void Maximize(bool maximize 
= TRUE
); 
  54     virtual bool IsMaximized() const; 
  55     virtual void Iconize(bool iconize 
= TRUE
); 
  56     virtual bool IsIconized() const; 
  57     virtual void SetIcon(const wxIcon
& icon
) { SetIcons( wxIconBundle( icon 
) ); } 
  58     virtual void SetIcons(const wxIconBundle
& icons
); 
  59     virtual void Restore(); 
  61     virtual bool Show( bool show 
= TRUE 
); 
  63     virtual bool ShowFullScreen( bool show
, long style 
= wxFULLSCREEN_ALL 
); 
  64     virtual bool IsFullScreen() const { return m_fsIsShowing
; } 
  66     virtual void SetTitle( const wxString
& title
); 
  67     virtual wxString 
GetTitle() const; 
  70     void SetNeedResizeInIdle( bool set 
= TRUE 
) 
  71         { m_needResizeInIdle 
= set
; } 
  72     void SetConfigureGeometry( int x
, int y
, int width
, int height 
) 
  73         { m_x 
= x
; m_y 
= y
; m_width 
= width
; m_height 
= height
; } 
  75     virtual bool SetShape(const wxRegion
& region
); 
  78     // common part of all ctors 
  81     // set the icon for the window 
  82     void DoSetIcon( const wxIcon
& icon 
); 
  84     // For implementation purposes - sometimes decorations make the 
  85     // client area smaller 
  86     virtual wxPoint 
GetClientAreaOrigin() const; 
  88     // For implementation of delayed resize events 
  89     bool m_needResizeInIdle
; 
  90     virtual void OnInternalIdle(); 
  92     virtual void DoGetClientSize( int *width
, int *height 
) const; 
  93     virtual void DoGetSize( int *width
, int *height 
) const; 
  94     virtual void DoSetClientSize(int width
, int height
); 
  95     virtual void DoSetSize(int x
, int y
, 
  96         int width
, int height
, 
  97         int sizeFlags 
= wxSIZE_AUTO
); 
  98     virtual void DoGetPosition( int *x
, int *y 
) const; 
 100     // Is the frame currently iconized? 
 103     // Should the frame be maximized when it will be shown? set by Maximize() 
 104     // when it is called while the frame is hidden 
 105     bool m_maximizeOnShow
; 
 107     // Data to save/restore when calling ShowFullScreen 
 108     long                  m_fsStyle
;   // Passed to ShowFullScreen 
 110     bool                  m_fsIsMaximized
; 
 115     int                   m_x
,m_y
,m_width
,m_height
; 
 118 // list of all frames and modeless dialogs 
 119 //extern WXDLLEXPORT_DATA(wxWindowList) wxModelessWindows; 
 121 #endif // _WX_X11_TOPLEVEL_H_