#include "StdAfx.h" #include "Tracing.h" static int _trace_level = 0; void SetTracingLevel(int l) { _trace_level = l; } void EnableTracing(BOOL on) { SetTracingLevel(on ? 0xFFFF : 0); } BOOL TracingEnabled() { return _trace_level > 0; } BOOL Trace(int level, const char* fmt, ...) { if (level > _trace_level) return FALSE; CFrameWnd* pFrame = (CFrameWnd*)AfxGetMainWnd(); ASSERT(pFrame); CTreeView* pTreeView = (CTreeView*)pFrame->GetActiveView(); ASSERT(pTreeView); CTreeCtrl& pTreeCtrl = pTreeView->GetTreeCtrl(); char msg[256]; va_list argptr; va_start(argptr,fmt); vsprintf(msg,fmt,argptr); va_end(argptr); HTREEITEM hItem = pTreeCtrl.InsertItem(msg, 0, 0); BOOL ok = hItem != NULL; return ok; }