OS/2 updates for easier VA debugging

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@8631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Webster 2000-10-24 21:47:55 +00:00
parent d7e1a32274
commit 415ca026b4
2 changed files with 46 additions and 3 deletions

View File

@ -365,13 +365,15 @@ void wxInitializeStockObjects ()
#ifdef __WXMSW__
static const int sizeFont = 10;
#else
static const int sizeFont = 12;
#endif
*/
// wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxNORMAL);
#if defined(__WXPM__)
static const int sizeFont = 12;
wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxNORMAL);
#else
wxNORMAL_FONT = new wxFont(wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT));
static const int sizeFont = wxNORMAL_FONT->GetPointSize();
#endif
wxSMALL_FONT = new wxFont (sizeFont - 2, wxSWISS, wxNORMAL, wxNORMAL);
wxITALIC_FONT = new wxFont (sizeFont, wxROMAN, wxITALIC, wxNORMAL);

View File

@ -42,12 +42,26 @@
#if defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT
// for wxObject::Dump
#include "wx/ioswrap.h"
#if defined(__VISAGECPP__)
// help with VA debugging
#define DEBUG_PRINTF(NAME) { static int raz=0; \
printf( #NAME " %i\n",raz); fflush(stdout); \
raz++; \
}
#else
#define DEBUG_PRINTF(NAME)
#endif
#endif
wxClassInfo wxObject::sm_classwxObject((wxChar *) wxT("wxObject"), (wxChar *) NULL, (wxChar *) NULL, (int ) sizeof(wxObject), (wxObjectConstructorFn) NULL);
wxClassInfo* wxClassInfo::sm_first = (wxClassInfo *) NULL;
wxHashTable* wxClassInfo::sm_classTable = (wxHashTable*) NULL;
#if defined(__WXDEBUG__) && defined(__VISAGECPP__)
int wxObject::N = 0; // total number of objects
int wxObject::Nid = 0;// object serial counter
#endif // __WXDEBUG__
// These are here so we can avoid 'always true/false' warnings
// by referring to these instead of TRUE/FALSE
const bool wxTrue = TRUE;
@ -63,6 +77,12 @@ wxObject::wxObject()
#if wxUSE_SERIAL
m_serialObj = (wxObject_Serialize *)NULL;
#endif
#if defined(__WXDEBUG__) && defined(__VISAGECPP__)
id = Nid++;
N++;
// { printf("wxObject %i/%i \t",id,N);
// }
#endif
}
wxObject::~wxObject()
@ -72,6 +92,11 @@ wxObject::~wxObject()
if (m_serialObj)
delete m_serialObj;
#endif
#if defined(__WXDEBUG__) && defined(__VISAGECPP__)
N--;
// { printf("~wxObject %i/%i \t",id,N);
// }
#endif //__WXDEBUG__
}
/*
@ -127,10 +152,19 @@ void *wxObject::operator new (size_t size, wxChar * fileName, int lineNum)
return wxDebugAlloc(size, fileName, lineNum, TRUE);
}
#if defined(__VISAGECPP__)
# if __DEBUG_ALLOC__
void wxObject::operator delete (void * buf,const char * _fname, size_t _line)
{
wxDebugFree(buf);
}
# endif //__DEBUG_ALLOC__
#else
void wxObject::operator delete (void * buf)
{
wxDebugFree(buf);
}
#endif // __VISAGECPP__
// VC++ 6.0
#if defined(__VISUALC__) && (__VISUALC__ >= 1200)
@ -266,6 +300,8 @@ void wxClassInfo::CleanUpClasses()
wxObject *wxCreateDynamicObject(const wxChar *name)
{
DEBUG_PRINTF(wxObject *wxCreateDynamicObject)
if (wxClassInfo::sm_classTable)
{
wxClassInfo *info = (wxClassInfo *)wxClassInfo::sm_classTable->Get(name);
@ -300,6 +336,8 @@ wxObject* wxCreateStoredObject( wxInputStream &stream )
void wxObject::StoreObject( wxObjectOutputStream& stream )
{
DEBUG_PRINTF(wxObject::StoreObject)
wxString obj_name = wxString(GetClassInfo()->GetClassName()) + "_Serialize";
wxLibrary *lib = wxTheLibraries.LoadLibrary("wxserial");
@ -325,6 +363,8 @@ void wxObject::StoreObject( wxObjectOutputStream& stream )
void wxObject::LoadObject( wxObjectInputStream& stream )
{
DEBUG_PRINTF(wxObject::LoadObject)
wxString obj_name = wxString(GetClassInfo()->GetClassName()) + "_Serialize";
wxLibrary *lib = wxTheLibraries.LoadLibrary("wxserial");
@ -352,6 +392,7 @@ void wxObject::LoadObject( wxObjectInputStream& stream )
void wxObject::Ref(const wxObject& clone)
{
DEBUG_PRINTF(wxObject::Ref)
// delete reference to old data
UnRef();
// reference new data