89 lines
2.7 KiB
C
89 lines
2.7 KiB
C
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// Name: wx/richmsgdlg.h
|
||
|
// Purpose: wxRichMessageDialogBase
|
||
|
// Author: Rickard Westerlund
|
||
|
// Created: 2010-07-03
|
||
|
// Copyright: (c) 2010 wxWidgets team
|
||
|
// Licence: wxWindows licence
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#ifndef _WX_RICHMSGDLG_H_BASE_
|
||
|
#define _WX_RICHMSGDLG_H_BASE_
|
||
|
|
||
|
#include "wx/defs.h"
|
||
|
|
||
|
#if wxUSE_RICHMSGDLG
|
||
|
|
||
|
#include "wx/msgdlg.h"
|
||
|
|
||
|
// Extends a message dialog with an optional checkbox and user-expandable
|
||
|
// detailed text.
|
||
|
class WXDLLIMPEXP_CORE wxRichMessageDialogBase : public wxGenericMessageDialog
|
||
|
{
|
||
|
public:
|
||
|
wxRichMessageDialogBase( wxWindow *parent,
|
||
|
const wxString& message,
|
||
|
const wxString& caption,
|
||
|
long style )
|
||
|
: wxGenericMessageDialog( parent, message, caption, style ),
|
||
|
m_detailsExpanderCollapsedLabel( wxGetTranslation("&See details") ),
|
||
|
m_detailsExpanderExpandedLabel( wxGetTranslation("&Hide details") ),
|
||
|
m_checkBoxValue( false )
|
||
|
{ }
|
||
|
|
||
|
void ShowCheckBox(const wxString& checkBoxText, bool checked = false)
|
||
|
{
|
||
|
m_checkBoxText = checkBoxText;
|
||
|
m_checkBoxValue = checked;
|
||
|
}
|
||
|
|
||
|
wxString GetCheckBoxText() const { return m_checkBoxText; }
|
||
|
|
||
|
void ShowDetailedText(const wxString& detailedText)
|
||
|
{ m_detailedText = detailedText; }
|
||
|
|
||
|
wxString GetDetailedText() const { return m_detailedText; }
|
||
|
|
||
|
virtual bool IsCheckBoxChecked() const { return m_checkBoxValue; }
|
||
|
|
||
|
protected:
|
||
|
const wxString m_detailsExpanderCollapsedLabel;
|
||
|
const wxString m_detailsExpanderExpandedLabel;
|
||
|
|
||
|
wxString m_checkBoxText;
|
||
|
bool m_checkBoxValue;
|
||
|
wxString m_detailedText;
|
||
|
|
||
|
private:
|
||
|
void ShowDetails(bool shown);
|
||
|
|
||
|
wxDECLARE_NO_COPY_CLASS(wxRichMessageDialogBase);
|
||
|
};
|
||
|
|
||
|
// Always include the generic version as it's currently used as the base class
|
||
|
// by the MSW native implementation too.
|
||
|
#include "wx/generic/richmsgdlgg.h"
|
||
|
|
||
|
#if defined(__WXMSW__) && !defined(__WXUNIVERSAL__)
|
||
|
#include "wx/msw/richmsgdlg.h"
|
||
|
#else
|
||
|
class WXDLLIMPEXP_CORE wxRichMessageDialog
|
||
|
: public wxGenericRichMessageDialog
|
||
|
{
|
||
|
public:
|
||
|
wxRichMessageDialog( wxWindow *parent,
|
||
|
const wxString& message,
|
||
|
const wxString& caption = wxMessageBoxCaptionStr,
|
||
|
long style = wxOK | wxCENTRE )
|
||
|
: wxGenericRichMessageDialog( parent, message, caption, style )
|
||
|
{ }
|
||
|
|
||
|
private:
|
||
|
wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxRichMessageDialog);
|
||
|
};
|
||
|
#endif
|
||
|
|
||
|
#endif // wxUSE_RICHMSGDLG
|
||
|
|
||
|
#endif // _WX_RICHMSGDLG_H_BASE_
|