mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-29 09:09:52 -06:00
Upgrade WX to r74856, mainly to support @2x.
This commit is contained in:
50
Externals/wxWidgets3/include/wx/dialog.h
vendored
50
Externals/wxWidgets3/include/wx/dialog.h
vendored
@ -4,7 +4,6 @@
|
||||
// Author: Vadim Zeitlin
|
||||
// Modified by:
|
||||
// Created: 29.06.99
|
||||
// RCS-ID: $Id: dialog.h 70345 2012-01-15 01:05:28Z VZ $
|
||||
// Copyright: (c) Vadim Zeitlin
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
@ -12,8 +11,8 @@
|
||||
#ifndef _WX_DIALOG_H_BASE_
|
||||
#define _WX_DIALOG_H_BASE_
|
||||
|
||||
#include "wx/defs.h"
|
||||
#include "wx/toplevel.h"
|
||||
#include "wx/containr.h"
|
||||
|
||||
class WXDLLIMPEXP_FWD_CORE wxSizer;
|
||||
class WXDLLIMPEXP_FWD_CORE wxStdDialogButtonSizer;
|
||||
@ -65,10 +64,10 @@ enum wxDialogModality
|
||||
|
||||
extern WXDLLIMPEXP_DATA_CORE(const char) wxDialogNameStr[];
|
||||
|
||||
class WXDLLIMPEXP_CORE wxDialogBase : public wxTopLevelWindow
|
||||
class WXDLLIMPEXP_CORE wxDialogBase : public wxNavigationEnabled<wxTopLevelWindow>
|
||||
{
|
||||
public:
|
||||
wxDialogBase() { Init(); }
|
||||
wxDialogBase();
|
||||
virtual ~wxDialogBase() { }
|
||||
|
||||
// define public wxDialog methods to be implemented by the derived classes
|
||||
@ -80,6 +79,11 @@ public:
|
||||
virtual void ShowWindowModal () ;
|
||||
virtual void SendWindowModalDialogEvent ( wxEventType type );
|
||||
|
||||
#ifdef wxHAS_EVENT_BIND
|
||||
template<typename Functor>
|
||||
void ShowWindowModalThenDo(const Functor& onEndModal);
|
||||
#endif // wxHAS_EVENT_BIND
|
||||
|
||||
// Modal dialogs have a return code - usually the id of the last
|
||||
// pressed button
|
||||
void SetReturnCode(int returnCode) { m_returnCode = returnCode; }
|
||||
@ -242,9 +246,6 @@ protected:
|
||||
static bool sm_layoutAdaptation;
|
||||
|
||||
private:
|
||||
// common part of all ctors
|
||||
void Init();
|
||||
|
||||
// helper of GetParentForModalDialog(): returns the passed in window if it
|
||||
// can be used as our parent or NULL if it can't
|
||||
wxWindow *CheckIfCanBeUsedAsParent(wxWindow *parent) const;
|
||||
@ -395,5 +396,40 @@ typedef void (wxEvtHandler::*wxWindowModalDialogEventFunction)(wxWindowModalDial
|
||||
#define EVT_WINDOW_MODAL_DIALOG_CLOSED(winid, func) \
|
||||
wx__DECLARE_EVT1(wxEVT_WINDOW_MODAL_DIALOG_CLOSED, winid, wxWindowModalDialogEventHandler(func))
|
||||
|
||||
#ifdef wxHAS_EVENT_BIND
|
||||
template<typename Functor>
|
||||
class wxWindowModalDialogEventFunctor
|
||||
{
|
||||
public:
|
||||
wxWindowModalDialogEventFunctor(const Functor& f)
|
||||
: m_f(f), m_wasCalled(false)
|
||||
{}
|
||||
|
||||
void operator()(wxWindowModalDialogEvent& event)
|
||||
{
|
||||
if ( m_wasCalled )
|
||||
{
|
||||
event.Skip();
|
||||
return;
|
||||
}
|
||||
|
||||
m_wasCalled = true;
|
||||
m_f(event.GetReturnCode());
|
||||
}
|
||||
|
||||
private:
|
||||
Functor m_f;
|
||||
bool m_wasCalled;
|
||||
};
|
||||
|
||||
template<typename Functor>
|
||||
void wxDialogBase::ShowWindowModalThenDo(const Functor& onEndModal)
|
||||
{
|
||||
Bind(wxEVT_WINDOW_MODAL_DIALOG_CLOSED,
|
||||
wxWindowModalDialogEventFunctor<Functor>(onEndModal));
|
||||
ShowWindowModal();
|
||||
};
|
||||
#endif // wxHAS_EVENT_BIND
|
||||
|
||||
#endif
|
||||
// _WX_DIALOG_H_BASE_
|
||||
|
Reference in New Issue
Block a user