]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/dialog.h
1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxDialog class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart and Markus Holzem
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
16 #pragma interface "dialog.h"
21 WXDLLEXPORT_DATA(extern const wxChar
*) wxDialogNameStr
;
24 class WXDLLEXPORT wxDialog
: public wxDialogBase
26 DECLARE_DYNAMIC_CLASS(wxDialog
)
31 // Constructor with a modal flag, but no window id - the old convention
32 wxDialog(wxWindow
*parent
,
33 const wxString
& title
, bool modal
,
34 int x
= -1, int y
= -1, int width
= 500, int height
= 500,
35 long style
= wxDEFAULT_DIALOG_STYLE
,
36 const wxString
& name
= wxDialogNameStr
)
38 long modalStyle
= modal
? wxDIALOG_MODAL
: wxDIALOG_MODELESS
;
39 Create(parent
, -1, title
, wxPoint(x
, y
), wxSize(width
, height
),
40 style
| modalStyle
, name
);
43 // Constructor with no modal flag - the new convention.
44 wxDialog(wxWindow
*parent
, wxWindowID id
,
45 const wxString
& title
,
46 const wxPoint
& pos
= wxDefaultPosition
,
47 const wxSize
& size
= wxDefaultSize
,
48 long style
= wxDEFAULT_DIALOG_STYLE
,
49 const wxString
& name
= wxDialogNameStr
)
51 Create(parent
, id
, title
, pos
, size
, style
, name
);
54 bool Create(wxWindow
*parent
, wxWindowID id
,
55 const wxString
& title
,
56 const wxPoint
& pos
= wxDefaultPosition
,
57 const wxSize
& size
= wxDefaultSize
,
58 long style
= wxDEFAULT_DIALOG_STYLE
,
59 const wxString
& name
= wxDialogNameStr
);
63 virtual bool Destroy();
65 virtual void DoSetClientSize(int width
, int height
);
67 virtual void GetPosition(int *x
, int *y
) const;
71 void Iconize(bool iconize
);
73 #if WXWIN_COMPATIBILITY
74 bool Iconized() const { return IsIconized(); };
77 virtual bool IsIconized() const;
80 virtual bool IsTopLevel() const { return TRUE
; }
82 void SetTitle(const wxString
& title
);
83 wxString
GetTitle() const ;
85 void OnSize(wxSizeEvent
& event
);
87 void OnCharHook(wxKeyEvent
& event
);
88 void OnPaint(wxPaintEvent
& event
);
89 void OnCloseWindow(wxCloseEvent
& event
);
91 void SetModal(bool flag
);
93 virtual void Centre(int direction
= wxBOTH
);
94 virtual bool IsModal() const;
96 // For now, same as Show(TRUE) but returns return code
97 virtual int ShowModal();
98 virtual void EndModal(int retCode
);
101 void OnOK(wxCommandEvent
& event
);
102 void OnApply(wxCommandEvent
& event
);
103 void OnCancel(wxCommandEvent
& event
);
105 // Responds to colour changes
106 void OnSysColourChanged(wxSysColourChangedEvent
& event
);
111 long MSWWindowProc(WXUINT message
, WXWPARAM wParam
, WXLPARAM lParam
);
113 virtual WXHBRUSH
OnCtlColor(WXHDC pDC
, WXHWND pWnd
, WXUINT nCtlColor
,
114 WXUINT message
, WXWPARAM wParam
, WXLPARAM lParam
);
116 bool IsModalShowing() const { return m_modalShowing
; }
118 // tooltip management
120 WXHWND
GetToolTipCtrl() const { return m_hwndToolTip
; }
121 void SetToolTipCtrl(WXHWND hwndTT
) { m_hwndToolTip
= hwndTT
; }
126 WXHWND m_hwndOldFocus
; // the window which had focus before we were shown
130 WXHWND m_hwndToolTip
;
134 DECLARE_EVENT_TABLE()