1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/os2/dialog.h
3 // Purpose: wxDialog class
4 // Author: David Webster
8 // Copyright: (c) David Webster
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
17 WXDLLIMPEXP_DATA_CORE(extern const char) wxDialogNameStr
[];
19 class WXDLLIMPEXP_FWD_CORE wxDialogModalData
;
24 class WXDLLIMPEXP_CORE wxDialog
: public wxDialogBase
28 inline wxDialog() { Init(); }
31 wxDialog(wxWindow
*parent
, wxWindowID id
,
32 const wxString
& title
,
33 const wxPoint
& pos
= wxDefaultPosition
,
34 const wxSize
& size
= wxDefaultSize
,
35 long style
= wxDEFAULT_DIALOG_STYLE
,
36 const wxString
& name
= wxDialogNameStr
)
40 (void)Create(parent
, id
, title
, pos
, size
, style
, name
);
43 bool Create( wxWindow
* pParent
45 ,const wxString
& rsTitle
46 ,const wxPoint
& rPos
= wxDefaultPosition
47 ,const wxSize
& rSize
= wxDefaultSize
48 ,long lStyle
= wxDEFAULT_DIALOG_STYLE
49 ,const wxString
& rsName
= wxDialogNameStr
53 // return true if we're showing the dialog modally
54 virtual bool IsModal() const { return m_modalData
!= NULL
; }
56 // show the dialog modally and return the value passed to EndModal()
57 virtual int ShowModal();
59 // may be called to terminate the dialog with the given return code
60 virtual void EndModal(int retCode
);
62 // implementation only from now on
63 // -------------------------------
65 // override some base class virtuals
66 virtual bool Show(bool show
= true);
71 virtual MRESULT
OS2WindowProc( WXUINT uMessage
75 #if WXWIN_COMPATIBILITY_2_6
77 // Constructor with a modal flag, but no window id - the old convention
78 wxDEPRECATED( wxDialog( wxWindow
* pParent
79 ,const wxString
& rsTitle
85 ,long lStyle
= wxDEFAULT_DIALOG_STYLE
86 ,const wxString
& rsName
= wxDialogNameStr
89 // just call Show() or ShowModal()
90 wxDEPRECATED( void SetModal(bool bFlag
) );
93 wxDEPRECATED( bool IsModalShowing() const );
95 #endif // WXWIN_COMPATIBILITY_2_6
99 // find the window to use as parent for this dialog if none has been
100 // specified explicitly by the user
104 wxWindow
*FindSuitableParent() const;
107 // Common part of all ctors
112 wxWindow
* m_pOldFocus
;
113 bool m_endModalCalled
; // allow for closing within InitDialog
115 // this pointer is non-NULL only while the modal event loop is running
116 wxDialogModalData
*m_modalData
;
119 // While we are showing a modal dialog we disable the other windows using
122 class wxWindowDisabler
* m_pWindowDisabler
;
124 DECLARE_DYNAMIC_CLASS(wxDialog
)
125 wxDECLARE_NO_COPY_CLASS(wxDialog
);
126 }; // end of CLASS wxDialog
128 #endif // _WX_DIALOG_H_