/************************************************************************
 * This file has been generated automatically from                      *
 *                                                                      *
 * src/core/qgsmessageoutput.h                                          *
 *                                                                      *
 * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 ************************************************************************/







class QgsMessageOutput
{
%Docstring
 Interface for showing messages from QGIS in GUI independent way.
 This class provides abstraction of a dialog for showing output to the user.
 By default QgsMessageConsoleOutput will be used if not overridden with other
 message output creator function.

 QGIS application uses QgsMessageView class for displaying a dialog to the user.

 Object deletes itself when it's not needed anymore. Children should use
 signal destroyed() to notify the deletion
%End

%TypeHeaderCode
#include "qgsmessageoutput.h"
%End
  public:

    enum MessageType { MessageText, MessageHtml };

    virtual ~QgsMessageOutput();
%Docstring
message can be in plain text or in html format
%End

    virtual void setMessage( const QString &message, MessageType msgType ) = 0;
%Docstring
set message, it won't be displayed until
%End

    virtual void appendMessage( const QString &message ) = 0;
%Docstring
message to be appended to the current text
%End

    virtual void setTitle( const QString &title ) = 0;
%Docstring
set title for the messages
%End

    virtual void showMessage( bool blocking = true ) = 0;
%Docstring
display the message to the user and deletes itself
%End

    static void showMessage( const QString &title, const QString &message, MessageType msgType );
%Docstring
 Display the blocking message to the user.
.. versionadded:: 2.10
%End


    static QgsMessageOutput *createMessageOutput();
%Docstring
(don't forget to delete it then if showMessage(bool) is not used showMessage(bool) deletes the instance)
 :rtype: QgsMessageOutput
%End

};


class QgsMessageOutputConsole : QObject, QgsMessageOutput
{
%Docstring
 Default implementation of message output interface

This class outputs messages to the standard output. Therefore it might
be the right choice for apps without GUI.
%End

%TypeHeaderCode
#include "qgsmessageoutput.h"
%End
  public:

    QgsMessageOutputConsole();

    virtual void setMessage( const QString &message, MessageType msgType );

    virtual void appendMessage( const QString &message );

    virtual void setTitle( const QString &title );

    virtual void showMessage( bool blocking = true );
%Docstring
sends the message to the standard output
%End

  signals:

    void destroyed();
%Docstring
signals that object will be destroyed and shouldn't be used anymore
%End

};

/************************************************************************
 * This file has been generated automatically from                      *
 *                                                                      *
 * src/core/qgsmessageoutput.h                                          *
 *                                                                      *
 * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 ************************************************************************/