wxMaxima
Loading...
Searching...
No Matches
LoggingMessageDialog.h
Go to the documentation of this file.
1// -*- mode: c++; c-file-style: "linux"; c-basic-offset: 2; indent-tabs-mode: nil -*-
2//
3// Copyright (C) 2019 Gunter Königsmann <wxMaxima@physikbuch.de>
4//
5// This program is free software; you can redistribute it and/or modify
6// it under the terms of the GNU General Public License as published by
7// the Free Software Foundation; either version 2 of the License, or
8// (at your option) any later version.
9//
10// This program is distributed in the hope that it will be useful,
11// but WITHOUT ANY WARRANTY; without even the implied warranty of
12// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13// GNU General Public License for more details.
14//
15//
16// You should have received a copy of the GNU General Public License
17// along with this program; if not, write to the Free Software
18// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19//
20// SPDX-License-Identifier: GPL-2.0+
21
26#ifndef LOGGINGMESSAGEDIALOG_H
27#define LOGGINGMESSAGEDIALOG_H
28
29
30#include "precomp.h"
31#include <wx/msgdlg.h>
32#include <wx/log.h>
33
34
37class LoggingMessageDialog : public wxMessageDialog
38{
39public:
40 LoggingMessageDialog(wxWindow *parent, const wxString &message,
41 wxString caption = wxMessageBoxCaptionStr,
42 long style = wxOK|wxCENTRE, const wxPoint &pos = wxDefaultPosition):
43 wxMessageDialog (parent, message, caption, style, pos)
44 {
45 wxString logString = message;
46 logString.Replace(wxS("%"), wxS("%%"));
47 wxLogMessage(logString);
48 wxLogMessage(message);
49 }
50};
51
52extern int LoggingMessageBox( const wxString & message,
53 const wxString & caption = wxString(wxMessageBoxCaptionStr),
54 int style = wxOK|wxCENTRE,
55 wxWindow * parent = NULL,
56 int x = wxDefaultCoord,
57 int y = wxDefaultCoord
58 );
59
60#endif // LOGGINGMESSAGEDIALOG_H
A message dialog that sends its contents to the log message sink.
Definition: LoggingMessageDialog.h:38