wxWidgets/include/wx/generic/richmsgdlgg.h
Vadim Zeitlin a1bdd4ab9b Add wxRichMessageDialog class.
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
2010-08-18 22:48:41 +00:00

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_