annotate src/debugging/TSLogger.h @ 768:f3631db17328

Updated all date occurrences to the year 2011. git-svn-id: svn://svn.code.sf.net/p/universalindent/code/trunk@1045 59b1889a-e5ac-428c-b0c7-476e01d41282
author thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
date Thu, 21 Apr 2011 15:17:51 +0000
parents 4ec2ac09969d
children fa7aa6f543f1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
754
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
1 /***************************************************************************
768
f3631db17328 Updated all date occurrences to the year 2011.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents: 754
diff changeset
2 * Copyright (C) 2006-2011 by Thomas Schweitzer *
754
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
3 * thomas-schweitzer(at)arcor.de *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
4 * *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
5 * This program is free software; you can redistribute it and/or modify *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
6 * it under the terms of the GNU General Public License version 2.0 as *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
7 * published by the Free Software Foundation. *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
8 * *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
9 * This program is distributed in the hope that it will be useful, *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
12 * GNU General Public License for more details. *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
13 * *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
14 * You should have received a copy of the GNU General Public License *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
15 * along with this program in the file LICENSE.GPL; if not, write to the *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
16 * Free Software Foundation, Inc., *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
17 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
18 ***************************************************************************/
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
19
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
20 #ifndef TSLogger_H
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
21 #define TSLogger_H
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
22
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
23 #include <QDialog>
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
24 #include <QFile>
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
25
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
26 namespace Ui {
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
27 class TSLoggerDialog;
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
28 }
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
29
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
30 namespace tschweitzer { namespace debugging {
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
31
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
32 #define TSLoggerInfoMsg QtMsgType(4)
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
33
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
34 class TSLogger : public QDialog
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
35 {
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
36 Q_OBJECT
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
37
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
38 public:
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
39 static TSLogger* getInstance(int verboseLevel);
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
40 static TSLogger* getInstance();
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
41 static void messageHandler(QtMsgType type, const char *msg);
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
42 static void deleteInstance();
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
43 void setVerboseLevel(int level);
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
44
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
45 private slots:
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
46 void openLogFileFolder();
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
47
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
48 private:
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
49 Ui::TSLoggerDialog *_TSLoggerDialogForm;
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
50
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
51 enum LogFileInitState { NOTINITIALZED, INITIALIZING, INITIALZED } _logFileInitState;
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
52 TSLogger(int verboseLevel);
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
53 void writeToLogFile(const QString &message);
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
54
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
55 static TSLogger* _instance;
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
56 QtMsgType _verboseLevel;
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
57 QFile _logFile;
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
58 QStringList _messageQueue;
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
59 };
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
60
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
61 }} // namespace tschweitzer::debugging
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
62
4ec2ac09969d Renamed the logger class and put it into a namespace for later universal tool reuse.
thomas_-_s <thomas_-_s@59b1889a-e5ac-428c-b0c7-476e01d41282>
parents:
diff changeset
63 #endif // TSLogger_H