#ifdef TEST_STDPATHS
 
 #include "wx/stdpaths.h"
+#include "wx/wxchar.h"      // wxPrintf
 
 static void TestStandardPaths()
 {
 
 
     dc.DrawText( _T("This is Swiss 18pt text."), 110, 40 );
 
-    long length;
-    long height;
-    long descent;
+    wxCoord length;
+    wxCoord height;
+    wxCoord descent;
     dc.GetTextExtent( _T("This is Swiss 18pt text."), &length, &height, &descent );
     text.Printf( wxT("Dimensions are length %ld, height %ld, descent %ld"), length, height, descent );
     dc.DrawText( text, 110, 80 );
 
     dc.SetTextForeground(m_colour);
 
     // the size of one cell (Normally biggest char + small margin)
-    long maxCharWidth, maxCharHeight;
+    wxCoord maxCharWidth, maxCharHeight;
     dc.GetTextExtent(wxT("W"), &maxCharWidth, &maxCharHeight);
     int w = maxCharWidth + 5,
         h = maxCharHeight + 4;
         {
             wxChar c = (wxChar)(32 * (i + 1) + j);
 
-            long charWidth, charHeight;
+            wxCoord charWidth, charHeight;
             dc.GetTextExtent(c, &charWidth, &charHeight);
             dc.DrawText
             (
 
 
     { // GetTextExtent demo:
         wxString words[7] = {_T("This "), _T("is "), _T("GetTextExtent "), _T("testing "), _T("string. "), _T("Enjoy "), _T("it!")};
-        long w, h;
+        wxCoord w, h;
         long x = 200, y= 250;
         wxFont fnt(15, wxSWISS, wxNORMAL, wxNORMAL);
 
     float topMarginLogical = (float)(mmToLogical*topMargin);
     float rightMarginLogical = (float)(mmToLogical*(pageWidthMM - rightMargin));
 
-    long xExtent, yExtent;
+    wxCoord xExtent, yExtent;
     dc->GetTextExtent(text, &xExtent, &yExtent);
     float xPos = (float)(((((pageWidthMM - leftMargin - rightMargin)/2.0)+leftMargin)*mmToLogical) - (xExtent/2.0));
     dc->DrawText(text, (long)xPos, (long)topMarginLogical);