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 // Common part of all ctors
104 wxWindow
* m_pOldFocus
;
105 bool m_endModalCalled
; // allow for closing within InitDialog
107 // this pointer is non-NULL only while the modal event loop is running
108 wxDialogModalData
*m_modalData
;
111 // While we are showing a modal dialog we disable the other windows using
114 class wxWindowDisabler
* m_pWindowDisabler
;
116 DECLARE_DYNAMIC_CLASS(wxDialog
)
117 wxDECLARE_NO_COPY_CLASS(wxDialog
);
118 }; // end of CLASS wxDialog
120 #endif // _WX_DIALOG_H_