// Created: 29/01/98
// RCS-ID: $Id$
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_LOG_H_
#define wxTraceOleCalls 0x0100 // OLE interface calls
#endif
-#include "wx/ioswrap.h"
+#include "wx/iosfwrap.h"
// ----------------------------------------------------------------------------
// derive from this class to redirect (or suppress, or ...) log messages
// this method exists for backwards compatibility only, don't use
- bool HasPendingMessages() const { return true; }
+ bool HasPendingMessages() const { return TRUE; }
protected:
// the logging functions that can be overriden
wxLogPassThrough();
};
-// ----------------------------------------------------------------------------
-// the following log targets are only compiled in if the we're compiling the
-// GUI part (andnot just the base one) of the library, they're implemented in
-// src/generic/logg.cpp *and not src/common/log.cpp unlike all the rest)
-// ----------------------------------------------------------------------------
-
#if wxUSE_GUI
-
-#if wxUSE_TEXTCTRL
-
-// log everything to a text window (GUI only of course)
-class WXDLLEXPORT wxLogTextCtrl : public wxLog
-{
-public:
- wxLogTextCtrl(wxTextCtrl *pTextCtrl);
-
-private:
- // implement sink function
- virtual void DoLogString(const wxChar *szString, time_t t);
-
- // the control we use
- wxTextCtrl *m_pTextCtrl;
-
- DECLARE_NO_COPY_CLASS(wxLogTextCtrl)
-};
-
-#endif // wxUSE_TEXTCTRL
-
-// ----------------------------------------------------------------------------
-// GUI log target, the default one for wxWindows programs
-// ----------------------------------------------------------------------------
-
-#if wxUSE_LOGGUI
-
-class WXDLLEXPORT wxLogGui : public wxLog
-{
-public:
- // ctor
- wxLogGui();
-
- // show all messages that were logged since the last Flush()
- virtual void Flush();
-
-protected:
- virtual void DoLog(wxLogLevel level, const wxChar *szString, time_t t);
-
- // empty everything
- void Clear();
-
- wxArrayString m_aMessages; // the log message texts
- wxArrayInt m_aSeverity; // one of wxLOG_XXX values
- wxArrayLong m_aTimes; // the time of each message
- bool m_bErrors, // do we have any errors?
- m_bWarnings, // any warnings?
- m_bHasMessages; // any messages at all?
-
-};
-
-#endif // wxUSE_LOGGUI
-
-// ----------------------------------------------------------------------------
-// (background) log window: this class forwards all log messages to the log
-// target which was active when it was instantiated, but also collects them
-// to the log window. This window has it's own menu which allows the user to
-// close it, clear the log contents or save it to the file.
-// ----------------------------------------------------------------------------
-
-#if wxUSE_LOGWINDOW
-
-class WXDLLEXPORT wxLogWindow : public wxLogPassThrough
-{
-public:
- wxLogWindow(wxFrame *pParent, // the parent frame (can be NULL)
- const wxChar *szTitle, // the title of the frame
- bool bShow = TRUE, // show window immediately?
- bool bPassToOld = TRUE); // pass messages to the old target?
-
- ~wxLogWindow();
-
- // window operations
- // show/hide the log window
- void Show(bool bShow = TRUE);
- // retrieve the pointer to the frame
- wxFrame *GetFrame() const;
-
- // overridables
- // called immediately after the log frame creation allowing for
- // any extra initializations
- virtual void OnFrameCreate(wxFrame *frame);
- // called if the user closes the window interactively, will not be
- // called if it is destroyed for another reason (such as when program
- // exits) - return TRUE from here to allow the frame to close, FALSE
- // to prevent this from happening
- virtual bool OnFrameClose(wxFrame *frame);
- // called right before the log frame is going to be deleted: will
- // always be called unlike OnFrameClose()
- virtual void OnFrameDelete(wxFrame *frame);
-
-protected:
- virtual void DoLog(wxLogLevel level, const wxChar *szString, time_t t);
- virtual void DoLogString(const wxChar *szString, time_t t);
-
-private:
- wxLogFrame *m_pLogFrame; // the log frame
-
- DECLARE_NO_COPY_CLASS(wxLogWindow)
-};
-
-#endif // wxUSE_LOGWINDOW
-
+ // include GUI log targets:
+ #include "wx/generic/logg.h"
#endif // wxUSE_GUI
// ============================================================================
va_list argptr) {} \
inline void WXDLLEXPORT wxLog##level(arg1, const wxChar *szFormat, ...) {}
+// Empty Class to fake wxLogNull
+class WXDLLEXPORT wxLogNull
+{
+public:
+ wxLogNull() {}
+};
+
+// Dummy macros to replace some functions.
+#define wxSysErrorCode() (unsigned long)0
+#define wxSysErrorMsg( X ) (const wxChar*)NULL
+
+// Fake symbolic trace masks... for those that are used frequently
+#define wxTRACE_OleCalls wxT("") // OLE interface calls
+
#endif // wxUSE_LOG/!wxUSE_LOG
// a generic function for all levels (level is passes as parameter)
#endif // _WX_LOG_H_
-// vi:sts=4:sw=4:et