Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

TraceManager.h

Go to the documentation of this file.
00001 #ifndef TRACEMANAGER_H 00002 #define TRACEMANAGER_H 00003 00004 #include <qdict.h> 00005 #include <qdom.h> 00006 #include <qlist.h> 00007 #include <qlistview.h> 00008 #include <qstring.h> 00009 00010 #include "TraceWindow.h" 00011 #include "TraceModule.h" 00012 00013 class CTraceManager: public QObject 00014 { 00015 Q_OBJECT 00016 friend class CTraceModule; 00017 private: 00018 CTraceWindowDlg *m_pWindow; 00019 QDict<CTraceModule> m_Modules; 00020 CTraceModule *m_pSelectedModule; 00021 00022 int m_Indent; 00023 QString m_IndentString; 00024 QStringList m_FullText; 00025 bool m_ResetText; 00026 00027 bool m_Visible; 00028 bool m_Mute; 00029 bool m_Output; 00030 bool m_CatchQDebug, m_CatchQWarning; 00031 bool m_AppendToFile; 00032 QString m_LogFileName; 00033 00034 void OpenLog(); 00035 void CloseLog(); 00036 00037 static void MessageHandler(QtMsgType type, const char *msg); 00038 00039 protected: 00040 CTraceManager(); 00041 00042 void IncIndent(); 00043 void DecIndent(); 00044 00045 protected slots: 00046 void ClickedListItem(QListViewItem *); 00047 void IncLogging(); 00048 void DecLogging(); 00049 00050 void ToggledCatchQDebug(bool); 00051 void ToggledCatchQWarning(bool); 00052 void ToggledOutput(bool); 00053 void ToggledAppendToFile(bool); 00054 void SetLogFileName(); 00055 00056 public: 00057 ~CTraceManager(); 00058 00059 static CTraceManager *Instance(); 00060 CTraceModule *RegisterModule(const QString &module_name, int initial_value = 1); 00061 void Log(const QString &log_string); 00062 00063 void GetConfiguration(QDomNode &); 00064 void SetConfiguration(const QDomNode &); 00065 00066 public slots: 00067 void Show(); 00068 void Hide(); 00069 void ClearText(); 00070 void Mark(); 00071 void SetMute(bool); 00072 void UseOutput(bool); 00073 }; 00074 00075 #endif

Generated on Wed Dec 13 23:38:46 2006 for CamStream by doxygen 1.3.7