File: msgdlg.h

package info (click to toggle)
wxpython3.0 3.0.2.0%2Bdfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 482,760 kB
  • ctags: 518,293
  • sloc: cpp: 2,127,226; python: 294,045; makefile: 51,942; ansic: 19,033; sh: 3,013; xml: 1,629; perl: 17
file content (70 lines) | stat: -rw-r--r-- 2,312 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/////////////////////////////////////////////////////////////////////////////
// Name:        wx/cocoa/msgdlg.h
// Purpose:     wxMessageDialog class
// Author:      Gareth Simpson
// Created:     2007-10-29
// Licence:     wxWindows licence
/////////////////////////////////////////////////////////////////////////////

#ifndef _WX_COCOA_MSGDLG_H_
#define _WX_COCOA_MSGDLG_H_

#include "wx/msgdlg.h"

DECLARE_WXCOCOA_OBJC_CLASS(NSAlert);

#ifndef wxUSE_COCOA_NATIVE_MSGDLG
// trunk: Always use Cocoa dialog
// 2.8: Only use Cocoa dialog if ABI incompatible features is on
// Build both on both branches (there was no wxCocoaMessageDialog class so it's not an ABI issue)
    #if 1/* wxUSE_ABI_INCOMPATIBLE_FEATURES */
        #define wxUSE_COCOA_NATIVE_MSGDLG 1
    #else
        #define wxUSE_COCOA_NATIVE_MSGDLG 0
    #endif
#endif

#if wxUSE_COCOA_NATIVE_MSGDLG
    #define wxMessageDialog wxCocoaMessageDialog
#else
    #include "wx/generic/msgdlgg.h"

    #define wxMessageDialog wxGenericMessageDialog
#endif

// ----------------------------------------------------------------------------
// wxCocoaMessageDialog
// ----------------------------------------------------------------------------


class WXDLLIMPEXP_CORE wxCocoaMessageDialog
    : public wxMessageDialogWithCustomLabels
{
public:
    wxCocoaMessageDialog(wxWindow *parent,
                    const wxString& message,
                    const wxString& caption = wxMessageBoxCaptionStr,
                    long style = wxOK|wxCENTRE,
                    const wxPoint& pos = wxDefaultPosition);

    virtual int ShowModal();

protected:
    // not supported for message dialog
    virtual void DoSetSize(int WXUNUSED(x), int WXUNUSED(y),
                           int WXUNUSED(width), int WXUNUSED(height),
                           int WXUNUSED(sizeFlags) = wxSIZE_AUTO) {}

    // override wxMessageDialogWithCustomLabels method to get rid of
    // accelerators in the custom label strings
    //
    // VZ: I have no idea _why_ do we do this but the old version did and
    //     I didn't want to change the existing behaviour
    virtual void DoSetCustomLabel(wxString& var, const ButtonLabel& label);

    DECLARE_DYNAMIC_CLASS(wxCocoaMessageDialog)
    wxDECLARE_NO_COPY_CLASS(wxCocoaMessageDialog);
};

#endif // _WX_MSGDLG_H_