a1bdd4ab9b
This is a generalization of wxMessageDialog based on the native task dialog under recent (Vista and later) Windows versions and implemented generically for the other ports for now. It provides the possibility to use additional controls in the message boxes (checkbox useful for the "Don't ask me again" kind of dialogs and collapsible detailed explanations field) and better look and feel under Windows. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
55 lines
1.7 KiB
C++
55 lines
1.7 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: wx/generic/richmsgdlgg.h
|
|
// Purpose: wxGenericRichMessageDialog
|
|
// Author: Rickard Westerlund
|
|
// Created: 2010-07-04
|
|
// RCS-ID: $Id$
|
|
// Copyright: (c) 2010 wxWidgets team
|
|
// Licence: wxWindows licence
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _WX_GENERIC_RICHMSGDLGG_H_
|
|
#define _WX_GENERIC_RICHMSGDLGG_H_
|
|
|
|
class WXDLLIMPEXP_FWD_CORE wxCheckBox;
|
|
class WXDLLIMPEXP_FWD_CORE wxCollapsiblePane;
|
|
class WXDLLIMPEXP_FWD_CORE wxCollapsiblePaneEvent;
|
|
|
|
class WXDLLIMPEXP_CORE wxGenericRichMessageDialog
|
|
: public wxRichMessageDialogBase
|
|
{
|
|
public:
|
|
wxGenericRichMessageDialog(wxWindow *parent,
|
|
const wxString& message,
|
|
const wxString& caption,
|
|
long style)
|
|
: wxRichMessageDialogBase( parent, message, caption, style ),
|
|
m_checkBox(NULL),
|
|
m_detailsPane(NULL)
|
|
{ }
|
|
|
|
virtual bool IsCheckBoxChecked() const
|
|
{
|
|
// This function can be called before the dialog is shown and hence
|
|
// before the check box is created.
|
|
return m_checkBox? m_checkBoxValue : m_checkBox->IsChecked();
|
|
}
|
|
|
|
protected:
|
|
wxCheckBox *m_checkBox;
|
|
wxCollapsiblePane *m_detailsPane;
|
|
|
|
// overrides methods in the base class
|
|
virtual void AddMessageDialogCheckBox(wxSizer *sizer);
|
|
virtual void AddMessageDialogDetails(wxSizer *sizer);
|
|
|
|
private:
|
|
void OnPaneChanged(wxCollapsiblePaneEvent& event);
|
|
|
|
DECLARE_EVENT_TABLE()
|
|
|
|
wxDECLARE_NO_COPY_CLASS(wxGenericRichMessageDialog);
|
|
};
|
|
|
|
#endif // _WX_GENERIC_RICHMSGDLGG_H_
|