source: experimental/osgVisual-GUI/Sichtsystem-GUI/debug.h @ 257

Last change on this file since 257 was 238, checked in by Torben Dannhauer, 14 years ago
File size: 1.7 KB
RevLine 
[238]1#ifndef DEBUG_H
2#define DEBUG_H
3
4#include "QtGui"
5
6/**
7class debug
8
9----------- Dieses debug.h hat kein zughöriges .cpp File! --------------
10
11Diese Datei beinhaltet die nötigen Funktionen, um den Messagehandler für die Debugfunktionen auf ein eigenes Text-widget umzuleiten.
12
13@version 1.0
14
15@author Torben Dannhauer
16@date 2008
17*/
18
19/**
20* Pointer auf den TextEdit, in dem die Debugmeldungen erscheinen, sofern die Debug-Meldungen in den Settings aktiviert sind.
21*/
22QTextEdit *deb;
23
24
25/**
26* Diese Funktion setzt den Debug-eigenen Pointer für das Ausgabe-Widget
27* @return void
28* @param deb_ : Pointer auf ein Textfeld, auf dem die Debugmeldungen ab jetzt ausgegeben werden sollen.
29*/
30void setDebugPointer( QTextEdit *deb_ )
31{
32        deb=deb_;
33        deb->resize(500, 700);
34}
35
36
37/**
38* Diese Funktion wird vom Debug-MsgHandler für jede auszugebende Debug-Meldung aufgerufen, nachdem sie in diesen Installiert wurde.
39* @return void
40* @param type : Typ der DebugMeldung
41* @param msg : Auszugebende Debugmeldung
42*/
43void myMessageOutput(QtMsgType type, const char *msg)
44{
45        if (deb==0)  {
46                deb = new QTextEdit;
47                deb->resize(500, 700);
48        }
49        deb->show();
50
51
52        if ( deb->isVisible() )
53        {
54                switch (type) {
55                        case QtDebugMsg:
56                                deb->append(QString("<b>Debug:</b> ")+QString(msg));
57                                break;
58                        case QtWarningMsg:
59                                deb->append(QString("<font color=\"blue\"><b>Warning:</b> ")+QString(msg)+QString("</font>"));
60                                break;
61                        case QtCriticalMsg:
62                                deb->append(QString("<font color=\"red\"><b>Critical:</b> ")+QString(msg)+QString("</font>"));
63                                break;
64                        case QtFatalMsg:
65                                QMessageBox::critical(0, "Debug - Fatal", msg);
66                } //SwitchENDE
67        }
68}
69
70
71#endif // DEBUG_H
Note: See TracBrowser for help on using the repository browser.