From 0610dd4f3064220a2e8fb1d8dc120044eb6c64a8 Mon Sep 17 00:00:00 2001
From: scuri <scuri>
Date: Tue, 23 Jun 2009 03:18:33 +0000
Subject: *** empty log message ***

---
 test/cdtest/cdtest.c      |  11 +-
 test/cdtest/cdtest.sln    |  16 -
 test/cdtest/cdtest.vcproj | 161 --------
 test/cdtest/cdtest_led.c  | 910 +++++++++++++++++++++++-----------------------
 test/simple/iupmain.c     |   8 +-
 test/simple/simple.c      | 339 +++++++++--------
 test/simple/simple.sln    |  20 -
 test/simple/simple.vcproj | 131 -------
 8 files changed, 637 insertions(+), 959 deletions(-)
 delete mode 100644 test/cdtest/cdtest.sln
 delete mode 100644 test/cdtest/cdtest.vcproj
 delete mode 100644 test/simple/simple.sln
 delete mode 100644 test/simple/simple.vcproj

(limited to 'test')

diff --git a/test/cdtest/cdtest.c b/test/cdtest/cdtest.c
index bf701b9..9180bf4 100644
--- a/test/cdtest/cdtest.c
+++ b/test/cdtest/cdtest.c
@@ -393,6 +393,8 @@ static void CDTestClose(void)
   cdKillCanvas(ctgc.wd_canvas);
   cdKillCanvas(ctgc.iup_canvas);
 
+  memset(&ctgc, 0, sizeof(tCTC));
+
   IupDestroy(IupGetHandle("dlgLB"));
   IupDestroy(IupGetHandle("dlgAS"));
   IupDestroy(IupGetHandle("dlgPixel"));
@@ -2378,6 +2380,9 @@ int fMotionCB(Ihandle *self, int x, int y, char *r)
   ignore(self);
   ignore(r);
 
+  if (!ctgc.iup_canvas)
+    return IUP_DEFAULT;
+
   cdActivate(ctgc.iup_canvas);
   cdUpdateYAxis(&y);
   mouse_pos(x, y);
@@ -2626,12 +2631,12 @@ void cdtest_loadled(void);
 /*-------------------------------------------------------------------------*/
 /* Rotina principal.                                                       */
 /*-------------------------------------------------------------------------*/
-void main(void)
+int main(int argc, char** argv)
 {
   char *err = NULL;
 
   /* inicializa o IUP */
-  IupOpen();                        
+  IupOpen(&argc, &argv);                        
 
   /* carrega o LED */
 #ifdef USE_LED
@@ -2658,5 +2663,7 @@ void main(void)
   CDTestClose();
 
   IupClose();
+
+  return 0;
 }
 
diff --git a/test/cdtest/cdtest.sln b/test/cdtest/cdtest.sln
deleted file mode 100644
index fb19d0c..0000000
--- a/test/cdtest/cdtest.sln
+++ /dev/null
@@ -1,16 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cdtest", "cdtest.vcproj", "{A7E49FB8-700A-45EC-9174-FB1C2C7E83C9}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Win32 = Debug|Win32
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{A7E49FB8-700A-45EC-9174-FB1C2C7E83C9}.Debug|Win32.ActiveCfg = Debug|Win32
-		{A7E49FB8-700A-45EC-9174-FB1C2C7E83C9}.Debug|Win32.Build.0 = Debug|Win32
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal
diff --git a/test/cdtest/cdtest.vcproj b/test/cdtest/cdtest.vcproj
deleted file mode 100644
index 2323676..0000000
--- a/test/cdtest/cdtest.vcproj
+++ /dev/null
@@ -1,161 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-	ProjectType="Visual C++"
-	Version="8.00"
-	Name="cdtest"
-	ProjectGUID="{A7E49FB8-700A-45EC-9174-FB1C2C7E83C9}"
-	>
-	<Platforms>
-		<Platform
-			Name="Win32"
-		/>
-	</Platforms>
-	<ToolFiles>
-	</ToolFiles>
-	<Configurations>
-		<Configuration
-			Name="Debug|Win32"
-			OutputDirectory="..\bin"
-			IntermediateDirectory="..\obj\cdtest"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			CharacterSet="2"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				PreprocessorDefinitions="_DEBUG"
-				MkTypLibCompatible="true"
-				SuppressStartupBanner="true"
-				TargetEnvironment="1"
-				TypeLibraryName="..\bin/cdtest.tlb"
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="..\..\include,..\..\..\iup\include"
-				PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;CDTEST_WIN32;_CRT_SECURE_NO_DEPRECATE"
-				RuntimeLibrary="1"
-				PrecompiledHeaderFile="..\obj/cdtest.pch"
-				AssemblerListingLocation=""
-				ObjectFile="$(IntDir)/"
-				ProgramDataBaseFileName="..\obj/cdtest"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="1"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG"
-				Culture="1046"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalOptions="/MACHINE:I386"
-				AdditionalDependencies="comctl32.lib cd.lib cdiup.lib cdgdiplus.lib iup.lib gdiplus.lib cdpdflib.lib"
-				OutputFile="..\bin/cdtest.exe"
-				LinkIncremental="2"
-				SuppressStartupBanner="true"
-				AdditionalLibraryDirectories="..\..\lib,..\..\..\iup\lib"
-				GenerateDebugInformation="true"
-				ProgramDatabaseFile="..\bin/cdtest.pdb"
-				SubSystem="2"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCWebDeploymentTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-	</Configurations>
-	<References>
-	</References>
-	<Files>
-		<Filter
-			Name="Source Files"
-			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-			>
-			<File
-				RelativePath="Cdtest.c"
-				>
-			</File>
-			<File
-				RelativePath=".\cdtest.led"
-				>
-			</File>
-			<File
-				RelativePath="cdtest.rc"
-				>
-			</File>
-			<File
-				RelativePath="cdtest_led.c"
-				>
-			</File>
-			<File
-				RelativePath="Colorbar.c"
-				>
-			</File>
-			<File
-				RelativePath="Drivers.c"
-				>
-			</File>
-			<File
-				RelativePath="List.c"
-				>
-			</File>
-			<File
-				RelativePath="Rubber.c"
-				>
-			</File>
-		</Filter>
-		<Filter
-			Name="Header Files"
-			Filter="h;hpp;hxx;hm;inl"
-			>
-			<File
-				RelativePath="Cdtest.h"
-				>
-			</File>
-		</Filter>
-	</Files>
-	<Globals>
-	</Globals>
-</VisualStudioProject>
diff --git a/test/cdtest/cdtest_led.c b/test/cdtest/cdtest_led.c
index b48b467..b4530b4 100644
--- a/test/cdtest/cdtest_led.c
+++ b/test/cdtest/cdtest_led.c
@@ -1,10 +1,10 @@
-/* Arquivo gerado automaticamente por ledc 2.5         */
+/* Automatically generated by Iup ledc 2.6         */
 
 #include <stdlib.h>
 #include <stdarg.h>
 #include <iup.h>
 
-static Ihandle* named[    172 ]; 
+static Ihandle* named[    172 ];
 
 static Ihandle* decl( char* name, Ihandle* elem, char* first, ...)
 {
@@ -25,7 +25,7 @@ static Ihandle* decl( char* name, Ihandle* elem, char* first, ...)
 
 static void image_imgLine (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
@@ -48,12 +48,12 @@ static void image_imgLine (void)
 
   decl( "imgLine", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
-    "1", "0 0 0", 0 );
+    "1", "0 0 0", NULL );
 }
 
 static void image_imgClip (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
@@ -76,12 +76,12 @@ static void image_imgClip (void)
 
   decl( "imgClip", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
-    "1", "0 0 0", 0 );
+    "1", "0 0 0", NULL );
 }
 
 static void image_imgImage (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,
@@ -106,12 +106,12 @@ static void image_imgImage (void)
     "0", "BGCOLOR", 
     "1", "0 0 0", 
     "2", "255 255 255", 
-    "3", "153 153 153", 0 );
+    "3", "153 153 153", NULL );
 }
 
 static void image_imgImageRGB (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -136,12 +136,12 @@ static void image_imgImageRGB (void)
     "0", "BGCOLOR", 
     "1", "255 0 0", 
     "2", "0 255 0", 
-    "3", "0 0 255", 0 );
+    "3", "0 0 255", NULL );
 }
 
 static void image_imgBox (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
@@ -165,12 +165,12 @@ static void image_imgBox (void)
   decl( "imgBox", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
     "1", "0 0 0", 
-    "2", "255 255 255", 0 );
+    "2", "255 255 255", NULL );
 }
 
 static void image_imgRect (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
@@ -194,12 +194,12 @@ static void image_imgRect (void)
   decl( "imgRect", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
     "1", "0 0 0", 
-    "2", "255 255 255", 0 );
+    "2", "255 255 255", NULL );
 }
 
 static void image_imgSector (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
@@ -223,12 +223,12 @@ static void image_imgSector (void)
   decl( "imgSector", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
     "1", "0 0 0", 
-    "2", "255 255 255", 0 );
+    "2", "255 255 255", NULL );
 }
 
 static void image_imgChord (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 0, 0, 0, 0, 0,
@@ -252,12 +252,12 @@ static void image_imgChord (void)
   decl( "imgChord", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
     "1", "0 0 0", 
-    "2", "255 255 255", 0 );
+    "2", "255 255 255", NULL );
 }
 
 static void image_imgArc (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -281,12 +281,12 @@ static void image_imgArc (void)
   decl( "imgArc", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
     "1", "0 0 0", 
-    "2", "255 255 255", 0 );
+    "2", "255 255 255", NULL );
 }
 
 static void image_imgText (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -310,12 +310,12 @@ static void image_imgText (void)
   decl( "imgText", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
     "1", "255 255 255", 
-    "2", "0 0 0", 0 );
+    "2", "0 0 0", NULL );
 }
 
 static void image_imgPoly (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -338,12 +338,12 @@ static void image_imgPoly (void)
 
   decl( "imgPoly", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
-    "1", "0 0 0", 0 );
+    "1", "0 0 0", NULL );
 }
 
 static void image_imgMark (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -366,12 +366,12 @@ static void image_imgMark (void)
 
   decl( "imgMark", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
-    "1", "0 0 0", 0 );
+    "1", "0 0 0", NULL );
 }
 
 static void image_imgPixel (void)
 {
-  char map[] = {
+  unsigned char map[] = {
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -395,7 +395,7 @@ static void image_imgPixel (void)
   decl( "imgPixel", IupImage( 18, 18, map ), 
     "0", "BGCOLOR", 
     "1", "0 0 0", 
-    "2", "255 255 255", 0 );
+    "2", "255 255 255", NULL );
 }
 
 
@@ -417,66 +417,66 @@ void cdtest_loadled (void)
   named[0] = decl( "mnOpen", IupMenu(
     IupItem( "MF...", "cmdPlayMF" ),
     named[1] = decl( "itPlayCGM", IupItem( "CGM...", "cmdPlayCGM" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[2] = decl( "itPlayEMF", IupItem( "EMF...", "cmdPlayEMF" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[3] = decl( "itPlayWMF", IupItem( "WMF...", "cmdPlayWMF" ), 
-      "ACTIVE", "NO", 0 ),
-  NULL), 0 );
+      "ACTIVE", "NO", NULL ),
+  NULL), NULL );
   named[4] = decl( "mnSave", IupMenu(
     IupItem( "MF...", "cmdMF" ),
     named[5] = decl( "itPDF", IupItem( "PDF...", "cmdPDF" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[6] = decl( "itPS", IupItem( "PS...", "cmdPS" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[7] = decl( "itEPS", IupItem( "EPS...", "cmdEPS" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[8] = decl( "itCGMt", IupItem( "CGMt...", "cmdCGMt" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[9] = decl( "itCGMb", IupItem( "CGMb...", "cmdCGMb" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[10] = decl( "itDGN", IupItem( "DGN...", "cmdDGN" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[11] = decl( "itDXF", IupItem( "DXF...", "cmdDXF" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[12] = decl( "itEMF", IupItem( "EMF...", "cmdEMF" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[13] = decl( "itWMF", IupItem( "WMF...", "cmdWMF" ), 
-      "ACTIVE", "NO", 0 ),
-  NULL), 0 );
+      "ACTIVE", "NO", NULL ),
+  NULL), NULL );
   named[14] = decl( "mnFile", IupMenu(
-    decl( 0, IupSubmenu( "Open",
+    decl( NULL, IupSubmenu( "Open",
       named[0] /* mnOpen */
     ), 
-      "KEY", "K_O", 0 ),
+      "KEY", "K_O", NULL ),
     IupSeparator(),
-    decl( 0, IupSubmenu( "Save",
+    decl( NULL, IupSubmenu( "Save",
       named[4] /* mnSave */
     ), 
-      "KEY", "K_S", 0 ),
+      "KEY", "K_S", NULL ),
     IupSeparator(),
     named[15] = decl( "itPrint", IupItem( "Print...", "cmdPrint" ), 
-      "KEY", "K_P", 0 ),
+      "KEY", "K_P", NULL ),
     IupSeparator(),
-    decl( 0, IupItem( "Exit", "cmdFileExit" ), 
-      "KEY", "K_x", 0 ),
-  NULL), 0 );
+    decl( NULL, IupItem( "Exit", "cmdFileExit" ), 
+      "KEY", "K_x", NULL ),
+  NULL), NULL );
   named[16] = decl( "mnEdit", IupMenu(
-    named[17] = decl( "itEditUndo", IupItem( "Undo", "cmdEditUndo" ), 0 ),
+    named[17] = decl( "itEditUndo", IupItem( "Undo", "cmdEditUndo" ), NULL ),
     IupSeparator(),
     named[18] = decl( "itClipBoard", IupItem( "Copy as EMF/WMF", "cmdClipBoard" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[19] = decl( "itClipBoardBitmap", IupItem( "Copy as Bitmap", "cmdClipBoardBitmap" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[20] = decl( "itClipBoardMetafile", IupItem( "Copy as CD Metafile", "cmdClipBoardMetafile" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     named[21] = decl( "itClipBoardPaste", IupItem( "Paste", "cmdClipBoardPaste" ), 
-      "ACTIVE", "NO", 0 ),
+      "ACTIVE", "NO", NULL ),
     IupSeparator(),
     IupItem( "Clear", "cmdEditClear" ),
     IupSeparator(),
     IupItem( "Options...", "cmdOptions" ),
-  NULL), 0 );
+  NULL), NULL );
   named[22] = decl( "mnPrimitives", IupMenu(
     IupItem( "Pixel...", "cmdPixel" ),
     IupItem( "Mark...", "cmdMark" ),
@@ -491,91 +491,91 @@ void cdtest_loadled (void)
     IupSeparator(),
     IupItem( "Server Image...", "cmdImage" ),
     IupItem( "RGB Image...", "cmdImageRGB" ),
-  NULL), 0 );
+  NULL), NULL );
   named[23] = decl( "mnDraw", IupMenu(
-    decl( 0, IupSubmenu( "Primitives",
+    decl( NULL, IupSubmenu( "Primitives",
       named[22] /* mnPrimitives */
     ), 
-      "KEY", "K_P", 0 ),
+      "KEY", "K_P", NULL ),
     IupSeparator(),
     IupItem( "Clipping...", "cmdClip" ),
     IupItem( "Attributes...", "cmdAttributes" ),
     IupSeparator(),
-    named[24] = decl( "itWDCanvas", IupItem( "Show WD Canvas", "cmdWDCanvas" ), 0 ),
-    named[25] = decl( "itPICCanvas", IupItem( "Show Picture Canvas", "cmdPICCanvas" ), 0 ),
+    named[24] = decl( "itWDCanvas", IupItem( "Show WD Canvas", "cmdWDCanvas" ), NULL ),
+    named[25] = decl( "itPICCanvas", IupItem( "Show Picture Canvas", "cmdPICCanvas" ), NULL ),
   NULL), 
-    "ISMENU", "YES", 0 );
+    "ISMENU", "YES", NULL );
   named[26] = decl( "mnHelp", IupMenu(
     IupItem( "About...", "cmdHelpAbout" ),
-  NULL), 0 );
+  NULL), NULL );
   named[27] = decl( "mnMain", IupMenu(
-    decl( 0, IupSubmenu( "File",
+    decl( NULL, IupSubmenu( "File",
       named[14] /* mnFile */
     ), 
-      "KEY", "K_mF", 0 ),
-    decl( 0, IupSubmenu( "Edit",
+      "KEY", "K_mF", NULL ),
+    decl( NULL, IupSubmenu( "Edit",
       named[16] /* mnEdit */
     ), 
-      "KEY", "K_mE", 0 ),
-    decl( 0, IupSubmenu( "Draw",
+      "KEY", "K_mE", NULL ),
+    decl( NULL, IupSubmenu( "Draw",
       named[23] /* mnDraw */
     ), 
-      "KEY", "K_mD", 0 ),
-    decl( 0, IupSubmenu( "Help",
+      "KEY", "K_mD", NULL ),
+    decl( NULL, IupSubmenu( "Help",
       named[26] /* mnHelp */
     ), 
-      "KEY", "K_mH", 0 ),
-  NULL), 0 );
+      "KEY", "K_mH", NULL ),
+  NULL), NULL );
   named[28] = decl( "lbStatusLine", IupLabel( "Esta eh a barra de status do CDTest." ), 
-    "EXPAND", "HORIZONTAL", 0 );
+    "EXPAND", "HORIZONTAL", NULL );
   named[29] = decl( "btLine", IupButton( "", "cmdLine" ), 
     "IMAGE", "imgLine", 
-    "TIP", "Line", 0 );
+    "TIP", "Line", NULL );
   named[30] = decl( "btBox", IupButton( "", "cmdBox" ), 
     "IMAGE", "imgBox", 
-    "TIP", "Box", 0 );
+    "TIP", "Box", NULL );
   named[31] = decl( "btRect", IupButton( "", "cmdRect" ), 
     "IMAGE", "imgRect", 
-    "TIP", "Rect", 0 );
+    "TIP", "Rect", NULL );
   named[32] = decl( "btArc", IupButton( "", "cmdArc" ), 
     "IMAGE", "imgArc", 
-    "TIP", "Arc", 0 );
+    "TIP", "Arc", NULL );
   named[33] = decl( "btSector", IupButton( "", "cmdSector" ), 
     "IMAGE", "imgSector", 
-    "TIP", "Sector", 0 );
+    "TIP", "Sector", NULL );
   named[34] = decl( "btChord", IupButton( "", "cmdChord" ), 
     "IMAGE", "imgChord", 
-    "TIP", "Chord", 0 );
+    "TIP", "Chord", NULL );
   named[35] = decl( "btPixel", IupButton( "", "cmdPixel" ), 
     "IMAGE", "imgPixel", 
-    "TIP", "Pixel", 0 );
+    "TIP", "Pixel", NULL );
   named[36] = decl( "btMark", IupButton( "", "cmdMark" ), 
     "IMAGE", "imgMark", 
-    "TIP", "Mark", 0 );
+    "TIP", "Mark", NULL );
   named[37] = decl( "btText", IupButton( "", "cmdText" ), 
     "IMAGE", "imgText", 
-    "TIP", "Text", 0 );
+    "TIP", "Text", NULL );
   named[38] = decl( "btPoly", IupButton( "", "cmdPoly" ), 
     "IMAGE", "imgPoly", 
-    "TIP", "Polygon", 0 );
+    "TIP", "Polygon", NULL );
   named[39] = decl( "btImageRGB", IupButton( "", "cmdImageRGB" ), 
     "IMAGE", "imgImageRGB", 
-    "TIP", "RGB Image", 0 );
+    "TIP", "RGB Image", NULL );
   named[40] = decl( "btImage", IupButton( "", "cmdImage" ), 
     "IMAGE", "imgImage", 
-    "TIP", "Server Image", 0 );
+    "TIP", "Server Image", NULL );
   named[41] = decl( "btClip", IupButton( "", "cmdClip" ), 
     "IMAGE", "imgClip", 
-    "TIP", "Clipping Area", 0 );
+    "TIP", "Clipping Area", NULL );
   named[42] = decl( "btCurPrim", IupButton( "", "cmdShowDialog" ), 
     "IMAGE", "imgLine", 
-    "TIP", "Show primitive dialog", 0 );
+    "TIP", "Show primitive dialog", NULL );
   named[43] = decl( "lbMousePos", IupLabel( "(    ,    )" ), 
-    "SIZE", "90", 0 );
+    "SIZE", "90", NULL );
   named[44] = decl( "PrimBar", IupVbox(
     named[42] /* btCurPrim */,
-    decl( 0, IupFill(), 
-      "SIZE", "20", 0 ),
+    decl( NULL, IupFill(), 
+      "SIZE", "20", NULL ),
     named[35] /* btPixel */,
     named[36] /* btMark */,
     named[29] /* btLine */,
@@ -586,56 +586,56 @@ void cdtest_loadled (void)
     named[33] /* btSector */,
     named[34] /* btChord */,
     named[37] /* btText */,
-    decl( 0, IupFill(), 
-      "SIZE", "5", 0 ),
+    decl( NULL, IupFill(), 
+      "SIZE", "5", NULL ),
     named[40] /* btImage */,
     named[39] /* btImageRGB */,
-    decl( 0, IupFill(), 
-      "SIZE", "5", 0 ),
+    decl( NULL, IupFill(), 
+      "SIZE", "5", NULL ),
     named[41] /* btClip */,
-    decl( 0, IupFill(), 
-      "SIZE", "30", 0 ),
+    decl( NULL, IupFill(), 
+      "SIZE", "30", NULL ),
   NULL), 
-    "GAP", "2", 0 );
+    "GAP", "2", NULL );
   named[45] = decl( "cnvColorBar", IupCanvas( "cmdColorBarRepaint" ), 
     "BUTTON_CB", "cmdColorBarButtonCB", 
     "RESIZE_CB", "cmdColorBarResizeCB", 
     "SIZE", "220x12", 
     "BORDER", "NO", 
-    "EXPAND", "NO", 0 );
+    "EXPAND", "NO", NULL );
   named[46] = decl( "cnvMain", IupCanvas( "cmdRepaint" ), 
     "MOTION_CB", "cmdMotionCB", 
     "BUTTON_CB", "cmdButtonCB", 
-    "RESIZE_CB", "cmdResizeCB", 0 );
+    "RESIZE_CB", "cmdResizeCB", NULL );
   named[47] = decl( "DeskTop", IupVbox(
-    decl( 0, IupFill(), 
-      "SIZE", "5", 0 ),
+    decl( NULL, IupFill(), 
+      "SIZE", "5", NULL ),
     IupHbox(
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[44] /* PrimBar */,
-      decl( 0, IupFill(), 
-        "SIZE", "2", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "2", NULL ),
       IupVbox(
-        decl( 0, IupFill(), 
-          "SIZE", "2", 0 ),
+        decl( NULL, IupFill(), 
+          "SIZE", "2", NULL ),
         named[43] /* lbMousePos */,
-        decl( 0, IupFill(), 
-          "SIZE", "5", 0 ),
+        decl( NULL, IupFill(), 
+          "SIZE", "5", NULL ),
         named[46] /* cnvMain */,
-        decl( 0, IupFill(), 
-          "SIZE", "2", 0 ),
+        decl( NULL, IupFill(), 
+          "SIZE", "2", NULL ),
         named[45] /* cnvColorBar */,
-        decl( 0, IupFill(), 
-          "SIZE", "5", 0 ),
+        decl( NULL, IupFill(), 
+          "SIZE", "5", NULL ),
         named[28] /* lbStatusLine */,
       NULL),
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
     NULL),
-    decl( 0, IupFill(), 
-      "SIZE", "5", 0 ),
-  NULL), 0 );
+    decl( NULL, IupFill(), 
+      "SIZE", "5", NULL ),
+  NULL), NULL );
   named[48] = decl( "dlgMain", IupDialog(
     named[47] /* DeskTop */
   ), 
@@ -645,9 +645,9 @@ void cdtest_loadled (void)
     "K_cZ", "cmdEditUndo", 
     "GETFOCUS_CB", "cmdGetFocusCB", 
     "KILLFOCUS_CB", "cmdKillFocusCB", 
-    "CLOSE_CB", "cmdFileExit", 0 );
+    "CLOSE_CB", "cmdFileExit", NULL );
   named[49] = decl( "cnvWDCanvas", IupCanvas( "cmdWDRepaint" ), 
-    "BORDER", "NO", 0 );
+    "BORDER", "NO", NULL );
   named[50] = decl( "dlgWDCanvas", IupDialog(
     named[49] /* cnvWDCanvas */
   ), 
@@ -655,9 +655,9 @@ void cdtest_loadled (void)
     "CLISE_CB", "cmdCloseWD", 
     "SIZE", "200x200", 
     "PARENTDIALOG", "dlgMain", 
-    "GAP", "5x5", 0 );
+    "GAP", "5x5", NULL );
   named[51] = decl( "cnvPICCanvas", IupCanvas( "cmdPICRepaint" ), 
-    "BORDER", "NO", 0 );
+    "BORDER", "NO", NULL );
   named[52] = decl( "dlgPICCanvas", IupDialog(
     named[51] /* cnvPICCanvas */
   ), 
@@ -665,46 +665,46 @@ void cdtest_loadled (void)
     "CLISE_CB", "cmdClosePIC", 
     "SIZE", "200x200", 
     "PARENTDIALOG", "dlgMain", 
-    "GAP", "5x5", 0 );
+    "GAP", "5x5", NULL );
   named[53] = decl( "btOptionsHide", IupButton( "Hide", "cmdOptionsHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[54] = decl( "tgSimulate", IupToggle( "Simulate", "cmdSimulate" ), 
     "VALUE", "OFF", 
-    "SIZE", "55", 0 );
+    "SIZE", "55", NULL );
   named[55] = decl( "tgStretchPlay", IupToggle( "Stretch Play", "cmdStretchPlay" ), 
     "VALUE", "OFF", 
-    "SIZE", "70", 0 );
+    "SIZE", "70", NULL );
   named[56] = decl( "tgNoBuffering", IupToggle( "No buffering", "cmdNoBuffering" ), 
-    "VALUE", "ON", 0 );
-  named[57] = decl( "tgImageBuffer", IupToggle( "CD_DBUFFER", "cmdImageBuffer" ), 0 );
-  named[58] = decl( "tgRGBBuffer", IupToggle( "CD_DBUFFERRGB", "cmdRGBBuffer" ), 0 );
+    "VALUE", "ON", NULL );
+  named[57] = decl( "tgImageBuffer", IupToggle( "CD_DBUFFER", "cmdImageBuffer" ), NULL );
+  named[58] = decl( "tgRGBBuffer", IupToggle( "CD_DBUFFERRGB", "cmdRGBBuffer" ), NULL );
   named[59] = decl( "rdBuffering", IupRadio(
     IupVbox(
       named[56] /* tgNoBuffering */,
       named[57] /* tgImageBuffer */,
       named[58] /* tgRGBBuffer */,
     NULL)
-  ), 0 );
+  ), NULL );
   named[60] = decl( "OptionsDesktop", IupVbox(
-    decl( 0, IupVbox(
-      decl( 0, IupFrame(
+    decl( NULL, IupVbox(
+      decl( NULL, IupFrame(
         named[59] /* rdBuffering */
       ), 
         "TITLE", "Buffering:", 
         "MARGIN", "5x5", 
-        "SIZE", "80", 0 ),
-      decl( 0, IupFill(), 
-        "SIZE", "10", 0 ),
+        "SIZE", "80", NULL ),
+      decl( NULL, IupFill(), 
+        "SIZE", "10", NULL ),
       named[54] /* tgSimulate */,
       named[55] /* tgStretchPlay */,
-      decl( 0, IupFill(), 
-        "SIZE", "10", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "10", NULL ),
       named[53] /* btOptionsHide */,
-      decl( 0, IupFill(), 
-        "SIZE", "2", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "2", NULL ),
     NULL), 
-      "GAP", "2", 0 ),
-  NULL), 0 );
+      "GAP", "2", NULL ),
+  NULL), NULL );
   named[61] = decl( "dlgOptions", IupDialog(
     named[60] /* OptionsDesktop */
   ), 
@@ -713,7 +713,7 @@ void cdtest_loadled (void)
     "MAXBOX", "NO", 
     "MINBOX", "NO", 
     "RESIZE", "NO", 
-    "MARGIN", "5x2", 0 );
+    "MARGIN", "5x2", NULL );
   named[62] = decl( "lstTextAlignment", IupList( "cmdTextAlignment" ), 
     "1", "CD_NORTH", 
     "2", "CD_SOUTH", 
@@ -729,11 +729,11 @@ void cdtest_loadled (void)
     "12", "CD_BASE_RIGHT", 
     "DROPDOWN", "YES", 
     "VALUE", "10", 
-    "SIZE", "89", 0 );
+    "SIZE", "89", NULL );
   named[63] = decl( "txtMarkSize", IupText( "cmdInteger" ), 
     "NC", "4", 
     "SIZE", "20x12", 
-    "VALUE", "10", 0 );
+    "VALUE", "10", NULL );
   named[64] = decl( "lstMarkType", IupList( "cmdMarkType" ), 
     "1", "CD_PLUS", 
     "2", "CD_STAR", 
@@ -746,14 +746,14 @@ void cdtest_loadled (void)
     "9", "CD_HOLLOW_DIAMOND", 
     "DROPDOWN", "YES", 
     "VALUE", "2", 
-    "SIZE", "80", 0 );
+    "SIZE", "80", NULL );
   named[65] = decl( "lstWriteMode", IupList( "cmdWriteMode" ), 
     "1", "CD_REPLACE", 
     "2", "CD_XOR", 
     "3", "CD_NOT_XOR", 
     "VALUE", "1", 
     "DROPDOWN", "YES", 
-    "SIZE", "80", 0 );
+    "SIZE", "80", NULL );
   named[66] = decl( "lstFontTypeFace", IupList( "cmdFontTypeFace" ), 
     "1", "CD_SYSTEM", 
     "2", "CD_COURIER", 
@@ -761,27 +761,27 @@ void cdtest_loadled (void)
     "4", "CD_HELVETICA", 
     "VALUE", "1", 
     "DROPDOWN", "YES", 
-    "SIZE", "80", 0 );
+    "SIZE", "80", NULL );
   named[67] = decl( "lstLineCap", IupList( "cmdLineCap" ), 
     "1", "CD_CAPFLAT", 
     "2", "CD_CAPSQUARE", 
     "3", "CD_CAPROUND", 
     "VALUE", "1", 
     "DROPDOWN", "YES", 
-    "SIZE", "80", 0 );
+    "SIZE", "80", NULL );
   named[68] = decl( "lstLineJoin", IupList( "cmdLineJoin" ), 
     "1", "CD_BEVEL", 
     "2", "CD_MITER", 
     "3", "CD_ROUND", 
     "VALUE", "1", 
     "DROPDOWN", "YES", 
-    "SIZE", "80", 0 );
+    "SIZE", "80", NULL );
   named[69] = decl( "lstFillMode", IupList( "cmdFillMode" ), 
     "1", "CD_EVENODD", 
     "2", "CD_WINDING", 
     "VALUE", "1", 
     "DROPDOWN", "YES", 
-    "SIZE", "80", 0 );
+    "SIZE", "80", NULL );
   named[70] = decl( "lstFontStyle", IupList( "cmdFontStyle" ), 
     "1", "CD_PLAIN", 
     "2", "CD_BOLD", 
@@ -789,19 +789,19 @@ void cdtest_loadled (void)
     "4", "CD_BOLD_ITALIC", 
     "VALUE", "1", 
     "DROPDOWN", "YES", 
-    "SIZE", "80", 0 );
+    "SIZE", "80", NULL );
   named[71] = decl( "txtLineWidth", IupText( "cmdInteger" ), 
     "SIZE", "30", 
     "NC", "3", 
-    "VALUE", "1", 0 );
+    "VALUE", "1", NULL );
   named[72] = decl( "txtFontSize", IupText( "cmdInteger" ), 
     "SIZE", "30", 
     "NC", "3", 
-    "VALUE", "12", 0 );
+    "VALUE", "12", NULL );
   named[73] = decl( "txtTextOrientation", IupText( "cmdInteger" ), 
     "SIZE", "30", 
     "NC", "3", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[74] = decl( "lstLineStyle", IupList( "cmdLineStyle" ), 
     "1", "CD_CONTINUOUS", 
     "2", "CD_DASHED", 
@@ -811,19 +811,19 @@ void cdtest_loadled (void)
     "6", "CD_CUSTOM", 
     "VALUE", "1", 
     "DROPDOWN", "YES", 
-    "SIZE", "80", 0 );
+    "SIZE", "80", NULL );
   named[75] = decl( "tgSolid", IupToggle( "CD_SOLID", "cmdSolid" ), 
-    "VALUE", "ON", 0 );
-  named[76] = decl( "tgHatch", IupToggle( "CD_HATCH", "cmdHatch" ), 0 );
-  named[77] = decl( "tgStipple", IupToggle( "CD_STIPPLE", "cmdStipple" ), 0 );
-  named[78] = decl( "tgPattern", IupToggle( "CD_PATTERN", "cmdPattern" ), 0 );
+    "VALUE", "ON", NULL );
+  named[76] = decl( "tgHatch", IupToggle( "CD_HATCH", "cmdHatch" ), NULL );
+  named[77] = decl( "tgStipple", IupToggle( "CD_STIPPLE", "cmdStipple" ), NULL );
+  named[78] = decl( "tgPattern", IupToggle( "CD_PATTERN", "cmdPattern" ), NULL );
   named[79] = decl( "lstOpacity", IupList( "cmdOpacity" ), 
     "1", "CD_OPAQUE", 
     "2", "CD_TRANSPARENT", 
     "VALUE", "2", 
     "DROPDOWN", "YES", 
     "SIZE", "80", 
-    "ACTIVE", "YES", 0 );
+    "ACTIVE", "YES", NULL );
   named[80] = decl( "lstHatchStyle", IupList( "cmdHatchStyle" ), 
     "1", "CD_HORIZONTAL", 
     "2", "CD_VERTICAL", 
@@ -834,9 +834,9 @@ void cdtest_loadled (void)
     "VALUE", "1", 
     "DROPDOWN", "YES", 
     "SIZE", "80", 
-    "ACTIVE", "YES", 0 );
+    "ACTIVE", "YES", NULL );
   named[81] = decl( "btAttributesHide", IupButton( "Hide", "cmdAttributesHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[82] = decl( "rdInteriorStyle", IupRadio(
     IupVbox(
       named[75] /* tgSolid */,
@@ -844,110 +844,110 @@ void cdtest_loadled (void)
       named[77] /* tgStipple */,
       named[78] /* tgPattern */,
     NULL)
-  ), 0 );
+  ), NULL );
   named[83] = decl( "AttributesDesktop", IupVbox(
     IupHbox(
-      decl( 0, IupVbox(
+      decl( NULL, IupVbox(
         IupLabel( "Write Mode:" ),
         named[65] /* lstWriteMode */,
-        decl( 0, IupFill(), 
-          "SIZE", "4", 0 ),
-        decl( 0, IupFrame(
+        decl( NULL, IupFill(), 
+          "SIZE", "4", NULL ),
+        decl( NULL, IupFrame(
           IupVbox(
             IupLabel( "Back Opacity:" ),
             named[79] /* lstOpacity */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
             IupLabel( "Fill Mode:" ),
             named[69] /* lstFillMode */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
-            decl( 0, IupFrame(
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
+            decl( NULL, IupFrame(
               named[82] /* rdInteriorStyle */
             ), 
               "TITLE", "Interior Style:", 
               "MARGIN", "5x5", 
-              "SIZE", "80", 0 ),
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
+              "SIZE", "80", NULL ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
             IupLabel( "Hatch Style:" ),
             named[80] /* lstHatchStyle */,
           NULL)
         ), 
           "TITLE", "Fill Attributes", 
-          "MARGIN", "5x5", 0 ),
-        decl( 0, IupFill(), 
-          "SIZE", "10", 0 ),
-        decl( 0, IupFrame(
+          "MARGIN", "5x5", NULL ),
+        decl( NULL, IupFill(), 
+          "SIZE", "10", NULL ),
+        decl( NULL, IupFrame(
           IupVbox(
             IupLabel( "Mark Type:" ),
             named[64] /* lstMarkType */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
             IupLabel( "Mark Size:" ),
             named[63] /* txtMarkSize */,
           NULL)
         ), 
           "TITLE", "Mark Attributes", 
-          "MARGIN", "5x5", 0 ),
-        decl( 0, IupFill(), 
-          "SIZE", "10", 0 ),
+          "MARGIN", "5x5", NULL ),
+        decl( NULL, IupFill(), 
+          "SIZE", "10", NULL ),
         named[81] /* btAttributesHide */,
       NULL), 
-        "GAP", "2", 0 ),
-      decl( 0, IupVbox(
-        decl( 0, IupFrame(
+        "GAP", "2", NULL ),
+      decl( NULL, IupVbox(
+        decl( NULL, IupFrame(
           IupVbox(
             IupLabel( "Font Typeface:" ),
             named[66] /* lstFontTypeFace */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
             IupLabel( "Font Style:" ),
             named[70] /* lstFontStyle */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
             IupLabel( "Font Size:" ),
             named[72] /* txtFontSize */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
-            decl( 0, IupLabel( "Text Alignment:" ), 
-              "SIZE", "x9", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
+            decl( NULL, IupLabel( "Text Alignment:" ), 
+              "SIZE", "x9", NULL ),
             named[62] /* lstTextAlignment */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
-            decl( 0, IupLabel( "Text Orientation:" ), 
-              "SIZE", "x9", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
+            decl( NULL, IupLabel( "Text Orientation:" ), 
+              "SIZE", "x9", NULL ),
             named[73] /* txtTextOrientation */,
           NULL)
         ), 
           "TITLE", "Text Attributes", 
-          "MARGIN", "5x5", 0 ),
-        decl( 0, IupFill(), 
-          "SIZE", "10", 0 ),
-        decl( 0, IupFrame(
+          "MARGIN", "5x5", NULL ),
+        decl( NULL, IupFill(), 
+          "SIZE", "10", NULL ),
+        decl( NULL, IupFrame(
           IupVbox(
             IupLabel( "Line Style:" ),
             named[74] /* lstLineStyle */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
             IupLabel( "Line Width:" ),
             named[71] /* txtLineWidth */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
             IupLabel( "Line Cap:" ),
             named[67] /* lstLineCap */,
-            decl( 0, IupFill(), 
-              "SIZE", "2", 0 ),
+            decl( NULL, IupFill(), 
+              "SIZE", "2", NULL ),
             IupLabel( "Line Join:" ),
             named[68] /* lstLineJoin */,
           NULL)
         ), 
           "TITLE", "Line Attributes", 
-          "MARGIN", "5x5", 0 ),
+          "MARGIN", "5x5", NULL ),
       NULL), 
-        "GAP", "2", 0 ),
+        "GAP", "2", NULL ),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[84] = decl( "dlgAttributes", IupDialog(
     named[83] /* AttributesDesktop */
   ), 
@@ -957,51 +957,51 @@ void cdtest_loadled (void)
     "MINBOX", "NO", 
     "RESIZE", "NO", 
     "CLOSE_CB", "cmdAttributesHide", 
-    "MARGIN", "5x2", 0 );
+    "MARGIN", "5x2", NULL );
   named[85] = decl( "txtLBX1", IupText( "cmdInteger" ), 
     "NC", "8", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[86] = decl( "txtLBX2", IupText( "cmdInteger" ), 
     "NC", "8", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[87] = decl( "txtLBY1", IupText( "cmdInteger" ), 
     "NC", "8", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[88] = decl( "txtLBY2", IupText( "cmdInteger" ), 
     "NC", "8", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[89] = decl( "btLBDraw", IupButton( "Draw", "cmdDraw" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[90] = decl( "btLBHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[91] = decl( "LBData", IupVbox(
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "X1:" ), 
-        "SIZE", "15x9", 0 ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "X1:" ), 
+        "SIZE", "15x9", NULL ),
       named[85] /* txtLBX1 */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Y1:" ), 
-        "SIZE", "15x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Y1:" ), 
+        "SIZE", "15x9", NULL ),
       named[87] /* txtLBY1 */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "X2:" ), 
-        "SIZE", "15x9", 0 ),
+      "ALIGNMENT", "ACENTER", NULL ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "X2:" ), 
+        "SIZE", "15x9", NULL ),
       named[86] /* txtLBX2 */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Y2:" ), 
-        "SIZE", "15x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Y2:" ), 
+        "SIZE", "15x9", NULL ),
       named[88] /* txtLBY2 */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-  NULL), 0 );
+      "ALIGNMENT", "ACENTER", NULL ),
+  NULL), NULL );
   named[92] = decl( "LBDeskTop", IupVbox(
     IupHbox(
       IupFill(),
@@ -1011,12 +1011,12 @@ void cdtest_loadled (void)
     IupHbox(
       IupFill(),
       named[89] /* btLBDraw */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[90] /* btLBHide */,
       IupFill(),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[93] = decl( "dlgLB", IupDialog(
     named[92] /* LBDeskTop */
   ), 
@@ -1026,70 +1026,70 @@ void cdtest_loadled (void)
     "MINBOX", "NO", 
     "RESIZE", "NO", 
     "CLOSE_CB", "cmdMsgHide", 
-    "MARGIN", "5x5", 0 );
+    "MARGIN", "5x5", NULL );
   named[94] = decl( "txtASXC", IupText( "cmdInteger" ), 
     "NC", "4", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[95] = decl( "txtASYC", IupText( "cmdInteger" ), 
     "NC", "4", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[96] = decl( "txtASW", IupText( "cmdInteger" ), 
     "NC", "4", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[97] = decl( "txtASH", IupText( "cmdInteger" ), 
     "NC", "4", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[98] = decl( "txtASAngle1", IupText( "cmdReal" ), 
     "NC", "10", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[99] = decl( "txtASAngle2", IupText( "cmdReal" ), 
     "NC", "10", 
     "SIZE", "30x12", 
-    "VALUE", "360", 0 );
+    "VALUE", "360", NULL );
   named[100] = decl( "btASDraw", IupButton( "Draw", "cmdDraw" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[101] = decl( "btASHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[102] = decl( "ASData", IupVbox(
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "Xc:" ), 
-        "SIZE", "30x9", 0 ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "Xc:" ), 
+        "SIZE", "30x9", NULL ),
       named[94] /* txtASXC */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Yc:" ), 
-        "SIZE", "30x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Yc:" ), 
+        "SIZE", "30x9", NULL ),
       named[95] /* txtASYC */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "W:" ), 
-        "SIZE", "30x9", 0 ),
+      "ALIGNMENT", "ACENTER", NULL ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "W:" ), 
+        "SIZE", "30x9", NULL ),
       named[96] /* txtASW */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "H:" ), 
-        "SIZE", "30x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "H:" ), 
+        "SIZE", "30x9", NULL ),
       named[97] /* txtASH */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "Angle1:" ), 
-        "SIZE", "30x9", 0 ),
+      "ALIGNMENT", "ACENTER", NULL ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "Angle1:" ), 
+        "SIZE", "30x9", NULL ),
       named[98] /* txtASAngle1 */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Angle2:" ), 
-        "SIZE", "30x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Angle2:" ), 
+        "SIZE", "30x9", NULL ),
       named[99] /* txtASAngle2 */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-  NULL), 0 );
+      "ALIGNMENT", "ACENTER", NULL ),
+  NULL), NULL );
   named[103] = decl( "ASDeskTop", IupVbox(
     IupHbox(
       IupFill(),
@@ -1099,12 +1099,12 @@ void cdtest_loadled (void)
     IupHbox(
       IupFill(),
       named[100] /* btASDraw */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[101] /* btASHide */,
       IupFill(),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[104] = decl( "dlgAS", IupDialog(
     named[103] /* ASDeskTop */
   ), 
@@ -1114,32 +1114,32 @@ void cdtest_loadled (void)
     "MINBOX", "NO", 
     "RESIZE", "NO", 
     "CLOSE_CB", "cmdMsgHide", 
-    "MARGIN", "5x5", 0 );
+    "MARGIN", "5x5", NULL );
   named[105] = decl( "txtPixelX", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[106] = decl( "txtPixelY", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[107] = decl( "btPixelDraw", IupButton( "Draw", "cmdDraw" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[108] = decl( "btPixelHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[109] = decl( "PixelData", IupVbox(
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "X:" ), 
-        "SIZE", "10x9", 0 ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "X:" ), 
+        "SIZE", "10x9", NULL ),
       named[105] /* txtPixelX */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Y:" ), 
-        "SIZE", "10x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Y:" ), 
+        "SIZE", "10x9", NULL ),
       named[106] /* txtPixelY */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-  NULL), 0 );
+      "ALIGNMENT", "ACENTER", NULL ),
+  NULL), NULL );
   named[110] = decl( "PixelDeskTop", IupVbox(
     IupHbox(
       IupFill(),
@@ -1149,12 +1149,12 @@ void cdtest_loadled (void)
     IupHbox(
       IupFill(),
       named[107] /* btPixelDraw */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[108] /* btPixelHide */,
       IupFill(),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[111] = decl( "dlgPixel", IupDialog(
     named[110] /* PixelDeskTop */
   ), 
@@ -1164,34 +1164,34 @@ void cdtest_loadled (void)
     "MINBOX", "NO", 
     "RESIZE", "NO", 
     "CLOSE_CB", "cmdMsgHide", 
-    "MARGIN", "5x5", 0 );
+    "MARGIN", "5x5", NULL );
   named[112] = decl( "txtMarkX", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[113] = decl( "txtMarkY", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[114] = decl( "btMarkDraw", IupButton( "Draw", "cmdDraw" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[115] = decl( "btMarkHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[116] = decl( "MarkData", IupVbox(
-    decl( 0, IupHbox(
+    decl( NULL, IupHbox(
       IupFill(),
-      decl( 0, IupLabel( "X:" ), 
-        "SIZE", "10x9", 0 ),
+      decl( NULL, IupLabel( "X:" ), 
+        "SIZE", "10x9", NULL ),
       named[112] /* txtMarkX */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Y:" ), 
-        "SIZE", "10x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Y:" ), 
+        "SIZE", "10x9", NULL ),
       named[113] /* txtMarkY */,
       IupFill(),
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-  NULL), 0 );
+      "ALIGNMENT", "ACENTER", NULL ),
+  NULL), NULL );
   named[117] = decl( "MarkDeskTop", IupVbox(
     IupHbox(
       IupFill(),
@@ -1201,12 +1201,12 @@ void cdtest_loadled (void)
     IupHbox(
       IupFill(),
       named[114] /* btMarkDraw */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[115] /* btMarkHide */,
       IupFill(),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[118] = decl( "dlgMark", IupDialog(
     named[117] /* MarkDeskTop */
   ), 
@@ -1216,43 +1216,43 @@ void cdtest_loadled (void)
     "MINBOX", "NO", 
     "RESIZE", "NO", 
     "CLOSE_CB", "cmdMsgHide", 
-    "MARGIN", "5x5", 0 );
+    "MARGIN", "5x5", NULL );
   named[119] = decl( "txtTextX", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[120] = decl( "txtTextY", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[121] = decl( "txtTextS", IupText( "cmdString" ), 
     "NC", "100", 
     "SIZE", "89x12", 
-    "VALUE", "Text", 0 );
+    "VALUE", "Text", NULL );
   named[122] = decl( "btTextDraw", IupButton( "Draw", "cmdDraw" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[123] = decl( "btTextHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[124] = decl( "TextData", IupVbox(
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "X:" ), 
-        "SIZE", "10x9", 0 ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "X:" ), 
+        "SIZE", "10x9", NULL ),
       named[119] /* txtTextX */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Y:" ), 
-        "SIZE", "10x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Y:" ), 
+        "SIZE", "10x9", NULL ),
       named[120] /* txtTextY */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
+      "ALIGNMENT", "ACENTER", NULL ),
     IupHbox(
       IupVbox(
-        decl( 0, IupLabel( "Text:" ), 
-          "SIZE", "25x9", 0 ),
+        decl( NULL, IupLabel( "Text:" ), 
+          "SIZE", "25x9", NULL ),
         named[121] /* txtTextS */,
       NULL),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[125] = decl( "TextDeskTop", IupVbox(
     IupHbox(
       IupFill(),
@@ -1262,12 +1262,12 @@ void cdtest_loadled (void)
     IupHbox(
       IupFill(),
       named[122] /* btTextDraw */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[123] /* btTextHide */,
       IupFill(),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[126] = decl( "dlgText", IupDialog(
     named[125] /* TextDeskTop */
   ), 
@@ -1277,15 +1277,15 @@ void cdtest_loadled (void)
     "MINBOX", "NO", 
     "CLOSE_CB", "cmdMsgHide", 
     "RESIZE", "NO", 
-    "MARGIN", "5x5", 0 );
+    "MARGIN", "5x5", NULL );
   named[127] = decl( "tgOpenLines", IupToggle( "CD_OPEN_LINES", "cmdOpenLines" ), 
-    "VALUE", "ON", 0 );
-  named[128] = decl( "tgClosedLines", IupToggle( "CD_CLOSED_LINES", "cmdClosedLines" ), 0 );
-  named[129] = decl( "tgFilled", IupToggle( "CD_FILL", "cmdFill" ), 0 );
-  named[130] = decl( "tgClip", IupToggle( "CD_CLIP", "cmdPolyClip" ), 0 );
-  named[131] = decl( "tgBezier", IupToggle( "CD_BEZIER", "cmdPolyBezier" ), 0 );
+    "VALUE", "ON", NULL );
+  named[128] = decl( "tgClosedLines", IupToggle( "CD_CLOSED_LINES", "cmdClosedLines" ), NULL );
+  named[129] = decl( "tgFilled", IupToggle( "CD_FILL", "cmdFill" ), NULL );
+  named[130] = decl( "tgClip", IupToggle( "CD_CLIP", "cmdPolyClip" ), NULL );
+  named[131] = decl( "tgBezier", IupToggle( "CD_BEZIER", "cmdPolyBezier" ), NULL );
   named[132] = decl( "btPolyHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[133] = decl( "rdMode", IupRadio(
     IupVbox(
       named[127] /* tgOpenLines */,
@@ -1294,32 +1294,32 @@ void cdtest_loadled (void)
       named[130] /* tgClip */,
       named[131] /* tgBezier */,
     NULL)
-  ), 0 );
+  ), NULL );
   named[134] = decl( "PolyDesktop", IupVbox(
-    decl( 0, IupFill(), 
-      "SIZE", "5", 0 ),
+    decl( NULL, IupFill(), 
+      "SIZE", "5", NULL ),
     IupHbox(
       IupFill(),
-      decl( 0, IupFrame(
+      decl( NULL, IupFrame(
         IupHbox(
-          decl( 0, IupFill(), 
-            "SIZE", "5", 0 ),
+          decl( NULL, IupFill(), 
+            "SIZE", "5", NULL ),
           named[133] /* rdMode */,
         NULL)
       ), 
-        "TITLE", "Polygon Mode:", 0 ),
+        "TITLE", "Polygon Mode:", NULL ),
       IupFill(),
     NULL),
-    decl( 0, IupFill(), 
-      "SIZE", "10", 0 ),
+    decl( NULL, IupFill(), 
+      "SIZE", "10", NULL ),
     IupHbox(
       IupFill(),
       named[132] /* btPolyHide */,
       IupFill(),
     NULL),
-    decl( 0, IupFill(), 
-      "SIZE", "5", 0 ),
-  NULL), 0 );
+    decl( NULL, IupFill(), 
+      "SIZE", "5", NULL ),
+  NULL), NULL );
   named[135] = decl( "dlgPoly", IupDialog(
     named[134] /* PolyDesktop */
   ), 
@@ -1328,55 +1328,55 @@ void cdtest_loadled (void)
     "MAXBOX", "NO", 
     "MINBOX", "NO", 
     "RESIZE", "NO", 
-    "CLOSE_CB", "cmdMsgHide", 0 );
+    "CLOSE_CB", "cmdMsgHide", NULL );
   named[136] = decl( "txtClipXmin", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[137] = decl( "txtClipXmax", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[138] = decl( "txtClipYmin", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[139] = decl( "txtClipYmax", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[140] = decl( "btClipOff", IupButton( "Off", "cmdClipOff" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[141] = decl( "btClipArea", IupButton( "Area", "cmdClipArea" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[142] = decl( "btClipPoly", IupButton( "Polygon", "cmdClipPoly" ), 
-    "SIZE", "50", 0 );
+    "SIZE", "50", NULL );
   named[143] = decl( "btClipHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[144] = decl( "ClipData", IupVbox(
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "Xmin:" ), 
-        "SIZE", "25x9", 0 ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "Xmin:" ), 
+        "SIZE", "25x9", NULL ),
       named[136] /* txtClipXmin */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Ymin:" ), 
-        "SIZE", "25x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Ymin:" ), 
+        "SIZE", "25x9", NULL ),
       named[138] /* txtClipYmin */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "Xmax:" ), 
-        "SIZE", "25x9", 0 ),
+      "ALIGNMENT", "ACENTER", NULL ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "Xmax:" ), 
+        "SIZE", "25x9", NULL ),
       named[137] /* txtClipXmax */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Ymax:" ), 
-        "SIZE", "25x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Ymax:" ), 
+        "SIZE", "25x9", NULL ),
       named[139] /* txtClipYmax */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-  NULL), 0 );
+      "ALIGNMENT", "ACENTER", NULL ),
+  NULL), NULL );
   named[145] = decl( "ClipDeskTop", IupVbox(
     IupHbox(
       IupFill(),
@@ -1386,18 +1386,18 @@ void cdtest_loadled (void)
     IupHbox(
       IupFill(),
       named[140] /* btClipOff */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[141] /* btClipArea */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[142] /* btClipPoly */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[143] /* btClipHide */,
       IupFill(),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[146] = decl( "dlgClip", IupDialog(
     named[145] /* ClipDeskTop */
   ), 
@@ -1407,53 +1407,53 @@ void cdtest_loadled (void)
     "CLOSE_CB", "cmdMsgHide", 
     "MINBOX", "NO", 
     "RESIZE", "NO", 
-    "MARGIN", "5x5", 0 );
+    "MARGIN", "5x5", NULL );
   named[147] = decl( "txtImageX", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[148] = decl( "txtImageY", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[149] = decl( "txtImageW", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[150] = decl( "txtImageH", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[151] = decl( "btImagePut", IupButton( "Put", "cmdImagePut" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[152] = decl( "btImageGet", IupButton( "Get", "cmdImageGet" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[153] = decl( "btImageHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[154] = decl( "ImageData", IupVbox(
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "X:" ), 
-        "SIZE", "30x9", 0 ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "X:" ), 
+        "SIZE", "30x9", NULL ),
       named[147] /* txtImageX */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Y:" ), 
-        "SIZE", "30x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Y:" ), 
+        "SIZE", "30x9", NULL ),
       named[148] /* txtImageY */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "Width:" ), 
-        "SIZE", "30x9", 0 ),
+      "ALIGNMENT", "ACENTER", NULL ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "Width:" ), 
+        "SIZE", "30x9", NULL ),
       named[149] /* txtImageW */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Height:" ), 
-        "SIZE", "30x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Height:" ), 
+        "SIZE", "30x9", NULL ),
       named[150] /* txtImageH */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-  NULL), 0 );
+      "ALIGNMENT", "ACENTER", NULL ),
+  NULL), NULL );
   named[155] = decl( "ImageDeskTop", IupVbox(
     IupHbox(
       IupFill(),
@@ -1463,15 +1463,15 @@ void cdtest_loadled (void)
     IupHbox(
       IupFill(),
       named[152] /* btImageGet */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[151] /* btImagePut */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[153] /* btImageHide */,
       IupFill(),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[156] = decl( "dlgImage", IupDialog(
     named[155] /* ImageDeskTop */
   ), 
@@ -1481,53 +1481,53 @@ void cdtest_loadled (void)
     "MINBOX", "NO", 
     "CLOSE_CB", "cmdMsgHide", 
     "RESIZE", "NO", 
-    "MARGIN", "5x5", 0 );
+    "MARGIN", "5x5", NULL );
   named[157] = decl( "txtImageRGBX", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[158] = decl( "txtImageRGBY", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[159] = decl( "txtImageRGBW", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[160] = decl( "txtImageRGBH", IupText( "cmdInteger" ), 
     "NC", "5", 
     "SIZE", "30x12", 
-    "VALUE", "0", 0 );
+    "VALUE", "0", NULL );
   named[161] = decl( "btImageRGBPut", IupButton( "Put", "cmdImageRGBPut" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[162] = decl( "btImageRGBGet", IupButton( "Get", "cmdImageRGBGet" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[163] = decl( "btImageRGBHide", IupButton( "Hide", "cmdMsgHide" ), 
-    "SIZE", "30", 0 );
+    "SIZE", "30", NULL );
   named[164] = decl( "ImageRGBData", IupVbox(
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "X:" ), 
-        "SIZE", "30x9", 0 ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "X:" ), 
+        "SIZE", "30x9", NULL ),
       named[157] /* txtImageRGBX */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Y:" ), 
-        "SIZE", "30x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Y:" ), 
+        "SIZE", "30x9", NULL ),
       named[158] /* txtImageRGBY */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-    decl( 0, IupHbox(
-      decl( 0, IupLabel( "Width:" ), 
-        "SIZE", "30x9", 0 ),
+      "ALIGNMENT", "ACENTER", NULL ),
+    decl( NULL, IupHbox(
+      decl( NULL, IupLabel( "Width:" ), 
+        "SIZE", "30x9", NULL ),
       named[159] /* txtImageRGBW */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
-      decl( 0, IupLabel( "Height:" ), 
-        "SIZE", "30x9", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
+      decl( NULL, IupLabel( "Height:" ), 
+        "SIZE", "30x9", NULL ),
       named[160] /* txtImageRGBH */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
-  NULL), 0 );
+      "ALIGNMENT", "ACENTER", NULL ),
+  NULL), NULL );
   named[165] = decl( "ImageRGBDeskTop", IupVbox(
     IupHbox(
       IupFill(),
@@ -1537,15 +1537,15 @@ void cdtest_loadled (void)
     IupHbox(
       IupFill(),
       named[162] /* btImageRGBGet */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[161] /* btImageRGBPut */,
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       named[163] /* btImageRGBHide */,
       IupFill(),
     NULL),
-  NULL), 0 );
+  NULL), NULL );
   named[166] = decl( "dlgImageRGB", IupDialog(
     named[165] /* ImageRGBDeskTop */
   ), 
@@ -1555,30 +1555,30 @@ void cdtest_loadled (void)
     "MINBOX", "NO", 
     "CLOSE_CB", "cmdMsgHide", 
     "RESIZE", "NO", 
-    "MARGIN", "5x5", 0 );
-  named[167] = decl( "btCDTest", IupButton( "Close", "cmdCloseAbout" ), 0 );
+    "MARGIN", "5x5", NULL );
+  named[167] = decl( "btCDTest", IupButton( "Close", "cmdCloseAbout" ), NULL );
   named[168] = decl( "AboutDeskTop", IupHbox(
     IupFill(),
-    decl( 0, IupVbox(
+    decl( NULL, IupVbox(
       IupLabel( "CD Test 5.3" ),
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       IupLabel( "Antonio Scuri" ),
       IupLabel( "Diego Nehab" ),
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       IupLabel( "Tecgraf/PUC-Rio" ),
-      decl( 0, IupFill(), 
-        "SIZE", "5", 0 ),
+      decl( NULL, IupFill(), 
+        "SIZE", "5", NULL ),
       IupLabel( "CD Library Version" ),
-      named[169] = decl( "lblVersion", IupLabel( "" ), 0 ),
+      named[169] = decl( "lblVersion", IupLabel( "" ), NULL ),
       named[167] /* btCDTest */,
     NULL), 
-      "ALIGNMENT", "ACENTER", 0 ),
+      "ALIGNMENT", "ACENTER", NULL ),
     IupFill(),
   NULL), 
     "MARGIN", "5x5", 
-    "GAP", "2", 0 );
+    "GAP", "2", NULL );
   named[170] = decl( "dlgHelpAbout", IupDialog(
     named[168] /* AboutDeskTop */
   ), 
@@ -1586,5 +1586,5 @@ void cdtest_loadled (void)
     "TITLE", "About", 
     "MAXBOX", "NO", 
     "MINBOX", "NO", 
-    "RESIZE", "NO", 0 );
+    "RESIZE", "NO", NULL );
 }
diff --git a/test/simple/iupmain.c b/test/simple/iupmain.c
index 7db2672..4eb4a5d 100644
--- a/test/simple/iupmain.c
+++ b/test/simple/iupmain.c
@@ -1,4 +1,4 @@
-
+#include <stdlib.h>
 #include <iup.h>
 #include <cd.h>
 
@@ -11,9 +11,9 @@ int cmdExit(void)
 
 void simple_loadled (void);
 
-int main(void)
+int main(int argc, char** argv)
 {
-  IupOpen();
+  IupOpen(&argc, &argv);                        
 
   cdInitContextPlus();
 
@@ -79,5 +79,5 @@ int main(void)
 
   IupClose();
 
-  return 1;
+  return EXIT_SUCCESS;
 }
diff --git a/test/simple/simple.c b/test/simple/simple.c
index efdee2e..c9ba361 100644
--- a/test/simple/simple.c
+++ b/test/simple/simple.c
@@ -511,8 +511,8 @@ int SimpleDrawAll(void)
     wdWindow(0,1,0,(double)h/(double)w);
 
   /* Clear the background to be white */
-//  cdBackground(CD_WHITE);
-  cdBackground(CD_GREEN);
+  cdBackground(CD_WHITE);
+//  cdBackground(CD_GREEN);
   cdClear();
 
   cdLineWidth(3);
@@ -831,21 +831,82 @@ int SimpleDrawAll(void)
   return 0;
 }
 
+void DrawVectorTextBox(int x, int y, char* text)
+{
+  int rect[8], draw_box;
+
+  cdLineWidth(1);
+  cdLineStyle(CD_CONTINUOUS);
+
+  draw_box = 0;
+  if (draw_box)
+  {
+    int xmin, xmax, ymin, ymax;
+    cdCanvasGetVectorTextBox(cdActiveCanvas(), x, y, text, &xmin, &xmax, &ymin, &ymax);
+    cdForeground(CD_GREEN);
+    cdRect(xmin, xmax, ymin, ymax);
+
+    if (cdTextOrientation(CD_QUERY) == 0)
+    {
+      cdForeground(CD_RED);
+      cdLine(xmin, y, xmax, y);
+    }
+  }
+  else
+  {
+    /* bounding box */
+    cdGetVectorTextBounds(text, x, y, rect);
+    cdForeground(CD_GREEN);
+    cdBegin(CD_CLOSED_LINES);
+    cdVertex(rect[0], rect[1]);
+    cdVertex(rect[2], rect[3]);
+    cdVertex(rect[4], rect[5]);
+    cdVertex(rect[6], rect[7]);
+    cdEnd();
+  }
+
+  /* reference point */
+  cdForeground(CD_BLUE);
+  cdMarkType(CD_PLUS);
+  cdMarkSize(30);
+  cdMark(x, y);
+
+  cdForeground(CD_BLACK);
+  cdVectorText(x, y, text);
+}
+
 void DrawTextBox(int x, int y, char* text)
 {
-  int xmin, xmax, ymin, ymax;
+  int rect[8], draw_box;
 
   cdLineWidth(1);
   cdLineStyle(CD_CONTINUOUS);
 
-  /* bounding box */
-  cdTextBox(x, y, text, &xmin, &xmax, &ymin, &ymax);
-  cdForeground(CD_GREEN);
-  cdRect(xmin, xmax, ymin, ymax);
+  draw_box = 0;
+  if (draw_box)
+  {
+    int xmin, xmax, ymin, ymax;
+    cdTextBox(x, y, text, &xmin, &xmax, &ymin, &ymax);
+    cdRect(xmin, xmax, ymin, ymax);
 
-  /* baseline */
-  cdForeground(CD_RED);
-  cdLine(xmin, y, xmax, y);
+    if (cdTextOrientation(CD_QUERY) == 0)
+    {
+      cdForeground(CD_RED);
+      cdLine(xmin, y, xmax, y);
+    }
+  }
+  else
+  {
+    /* bounding box */
+    cdTextBounds(x, y, text, rect);
+    cdForeground(CD_GREEN);
+    cdBegin(CD_CLOSED_LINES);
+    cdVertex(rect[0], rect[1]);
+    cdVertex(rect[2], rect[3]);
+    cdVertex(rect[4], rect[5]);
+    cdVertex(rect[6], rect[7]);
+    cdEnd();
+  }
 
   /* reference point */
   cdForeground(CD_BLUE);
@@ -859,7 +920,7 @@ void DrawTextBox(int x, int y, char* text)
 
 int SimpleDrawTextAlign(void)
 {
-  int w, h, i, xoff, yoff;
+  int w, h, i, xoff, yoff, use_vector;
 
   int text_aligment[] = {
   CD_NORTH,
@@ -876,20 +937,37 @@ int SimpleDrawTextAlign(void)
   CD_BASE_LEFT
   };
 
+#if 1
   char* text_aligment_str[] = {
-  "jNorth (�y)",
-  "jSouth (�y)",
-  "jEast (�y)",
-  "jWest (�y)",
-  "jNorth East (�y)",
-  "jNorth West (�y)",
-  "jSouth East (�y)",
-  "jSouth West (�y)",
-  "jCenter (�y)",
-  "jBase Center (�y)",
-  "jBase Right (�y)",
-  "jBase Left (�y)"
+  "North (�yj)\nSecond Line (�yj)",
+  "South (�yj)\nSecond Line (�yj)",
+  "East (�yj)\nSecond Line (�yj)",
+  "West (�yj)\nSecond Line (�yj)",
+  "North East (�yj)\nSecond Line (�yj)",
+  "North West (�yj)\nSecond Line (�yj)",
+  "South East (�yj)\nSecond Line (�yj)",
+  "South West (�yj)\nSecond Line (�yj)",
+  "Center (�yj)\nSecond Line (�yj)",
+  "Base Center (�yj)\nSecond Line (�yj)",
+  "Base Right (�yj)\nSecond Line (�yj)",
+  "Base Left (�yj)\nSecond Line (�yj)"
   };
+#else
+  char* text_aligment_str[] = {
+  "North (�yj)",
+  "South (�yj)",
+  "East (�yj)",
+  "West (�yj)",
+  "North East (�yj)",
+  "North West (�yj)",
+  "South East (�yj)",
+  "South West (�yj)",
+  "Center (�yj)",
+  "Base Center (�yj)",
+  "Base Right (�yj)",
+  "Base Left (�yj)"
+  };
+#endif
 
   cdGetCanvasSize(&w, &h, 0, 0);
 
@@ -898,26 +976,43 @@ int SimpleDrawTextAlign(void)
 
   simple_draw = DRAW_TEXTALIGN;
 
-//  cdTextOrientation(45);
+  use_vector = 0;
+
+  //if (use_vector)
+  //  cdVectorTextDirection(0, 0, 1, 1);
+  //else
+  //  cdTextOrientation(45);
 
   xoff = w/4;
   yoff = h/7;
 
-//cdFont(CD_TIMES_ROMAN, CD_PLAIN, 14);
-  cdFont(CD_HELVETICA, CD_PLAIN, 18);
+  if (use_vector)
+    cdVectorCharSize(30);
+  else
+  {
+    //cdFont(CD_TIMES_ROMAN, CD_PLAIN, 14);
+    cdFont(CD_HELVETICA, CD_PLAIN, 18);
+  }
 
   for (i = 0; i < 12; i++)
   {
     cdTextAlignment(text_aligment[i]);
     if (i < 6)
     {
-      DrawTextBox(xoff, yoff*(i+1), text_aligment_str[i]);
+      if (use_vector)
+        DrawVectorTextBox(xoff, yoff*(i+1), text_aligment_str[i]);
+      else
+        DrawTextBox(xoff, yoff*(i+1), text_aligment_str[i]);
     }
     else
     {
-      DrawTextBox(3*xoff, yoff*(i-5), text_aligment_str[i]);
+      if (use_vector)
+        DrawVectorTextBox(3*xoff, yoff*(i-5), text_aligment_str[i]);
+      else
+        DrawTextBox(3*xoff, yoff*(i-5), text_aligment_str[i]);
     }
   }
+
   cdFlush();
   return 0;
 }
@@ -952,13 +1047,10 @@ int SimpleDrawTextFonts(void)
 
   cdTextAlignment(CD_CENTER);
 
-//  DrawTextFont(CD_COURIER, size, xoff, yoff, "Courier");
-
-//  DrawTextFont(CD_TIMES_ROMAN, size, xoff, 2*yoff, "Times Roman");
-
-//  DrawTextFont(CD_HELVETICA, size, xoff, 3*yoff, "Helvetica");
-
-//  DrawTextFont(CD_SYSTEM, size, xoff, 4*yoff, "System");
+  DrawTextFont(CD_COURIER, size, xoff, yoff, "Courier");
+  DrawTextFont(CD_TIMES_ROMAN, size, xoff, 2*yoff, "Times Roman");
+  DrawTextFont(CD_HELVETICA, size, xoff, 3*yoff, "Helvetica");
+  DrawTextFont(CD_SYSTEM, size, xoff, 4*yoff, "System");
 
   {
 //    static char native[50] = "Tecmedia, -60";
@@ -977,10 +1069,10 @@ int SimpleDrawTextFonts(void)
 
   //cdNativeFont("Tecmedia, 36");
 
-  cdSetAttribute("ADDFONTMAP", "WingDings=WingDing");
-  cdNativeFont("WingDings, 36");
+  //cdSetAttribute("ADDFONTMAP", "WingDings=WingDing");
+  //cdNativeFont("WingDings, 36");
 
-  cdText(500, 50, "X");
+  //cdText(500, 50, "X");
   //cdText(500, 50, "abcdefghijklmnopqrstuvwxyz");
   //cdText(500, 150, "ABCDEFGHIJKLMNOPQRSTUVWXYZ");
   //cdText(500, 250, "1234567890");
@@ -996,8 +1088,8 @@ int SimpleDrawTextFonts(void)
   return 0;
 }
 
-void SimpleDrawTest(void)
-//void SimpleDrawMainTest(void)
+//void SimpleDrawTest(void)
+void SimpleDrawMainTest(void)
 {
   long pattern[16];  /* 4x4 pattern */
   int w, h;
@@ -1074,31 +1166,49 @@ void SimpleDrawTest(void)
 
 void draw_wd(void)
 {
+  char* text;
+  double x, y;
+  double rect[8];
+
   cdBackground(CD_WHITE);
   cdClear();
   cdLineStyle(CD_CONTINUOUS);
   cdLineWidth(1);
 
-  wdVectorTextDirection(0, 0, 1, 1);
+//  wdVectorTextDirection(0, 0, 1, 1);
+  cdTextAlignment(CD_NORTH_WEST);
+
+//  text = "Vector Text";
+  text = "Vector Text\nSecond Line\nThird Line";
+  x = 0.25;
+  y = 0.40;
 
+  cdForeground(CD_BLACK);
+  wdLine(0, 0, 1, 1);
+  wdLine(0, 1, 1, 0);
+
+  cdForeground(CD_GREEN);
+  cdMarkType(CD_STAR);
+  wdMark(x, y);
+
+  cdForeground(CD_BLUE);
   wdVectorCharSize(0.1);
-  wdVectorText(0.25, 0.35, "Vector Text");
+  wdVectorText(x, y, text);
+
+  cdForeground(CD_RED);
+  wdGetVectorTextBounds(text, x, y, rect);
+  cdBegin(CD_CLOSED_LINES);
+  wdVertex(rect[0], rect[1]);
+  wdVertex(rect[2], rect[3]);
+  wdVertex(rect[4], rect[5]);
+  wdVertex(rect[6], rect[7]);
+  cdEnd();
 
-  {
-    double rect[8];
-    cdForeground(CD_RED);
-    wdGetVectorTextBounds("Vector Text", 0.25, 0.35, rect);
-    cdBegin(CD_CLOSED_LINES);
-    wdVertex(rect[0], rect[1]);
-    wdVertex(rect[2], rect[3]);
-    wdVertex(rect[4], rect[5]);
-    wdVertex(rect[6], rect[7]);
-    cdEnd();
-  }
   cdFlush();
 }
 
-void SimpleDrawTestHardCopy(void)
+void SimpleDrawTest(void)
+//void SimpleDrawTestHardCopy(void)
 {
   int w, h;
   cdGetCanvasSize(&w, &h, 0, 0);
@@ -1113,10 +1223,11 @@ void SimpleDrawTestHardCopy(void)
 
   draw_wd();
 
-  wdHardcopy(CD_CLIPBOARD, "800x600", cdActiveCanvas(), draw_wd );
-  cdFlush();
+  //wdHardcopy(CD_CLIPBOARD, "800x600", cdActiveCanvas(), draw_wd );
+  //cdFlush();
 }
 
+//void SimpleDrawTest(void)
 void SimpleDrawTestImageRGB(void)
 {
   int size = 2048*2048;
@@ -1139,7 +1250,7 @@ void SimpleDrawTestImageRGB(void)
 }
 
 //void SimpleDrawTest(void)
-void SimpleDrawVectorText(void)
+void SimpleDrawVectorFont(void)
 {
   simple_draw = DRAW_TEST;
   cdBackground(CD_WHITE);
@@ -1149,7 +1260,7 @@ void SimpleDrawVectorText(void)
 
 //  wdVectorText(0.1, 0.4, "���� ����� ����� ����� �����");
 //  wdVectorText(0.1, 0.2, "���� ����� ����� ����� ����� ");
-  cdVectorFont("../../etc/vectorfont26.txt"); /* original Simplex II */
+  cdVectorFont("../etc/vectorfont26.txt"); /* original Simplex II */
   {
     int i;
     char t[2];
@@ -1198,115 +1309,3 @@ void SimpleDrawVectorText(void)
   }
   cdFlush();
 }
-
-typedef struct _point
-{
-  double x, y;
-} point;
-
-point* load_point_file(const char* file_name, int *count)
-{
-  float x, y;
-  point* point_list;
-  int max_count = 100, dummy;
-  FILE* file = fopen(file_name, "rb");
-  if (!file)
-    return NULL;
-
-  point_list = malloc(max_count*sizeof(point));
-
-  /* read header */
-  fscanf(file, "##### %d\n", &dummy);
-
-  *count = 0;
-  while (!feof(file))
-  {
-     if (fscanf(file, "( %g | %g )\n", &x, &y) == 2)
-     {
-       if (*count == max_count)
-       {
-         max_count += 100;
-         point_list = realloc(point_list, max_count*sizeof(point));
-       }
-
-       point_list[*count].x = x;
-       point_list[*count].y = y;
-
-       (*count)++;
-     }
-  }
-
-  fclose(file);
-
-  return point_list;
-}
-
-point square[4] = {
-  {100,100},
-  {200,100},
-  {200,200},
-  {100,200},
-};
-
-point corner[6] = {
-  {100,100},
-  {200,100},
-  {200,200},
-  {150,200},
-  {150,300},
-  {100,300},
-};
-
-//void SimpleDrawTest(void)
-void SimpleDrawPolygon(void)
-{
-  int count, i;
-  point* point_list;
-  char* file_name;
-
-  simple_draw = DRAW_TEST;
-  cdBackground(CD_WHITE);
-  cdClear();
-  cdLineStyle(CD_CONTINUOUS);
-  cdLineWidth(1);
-  cdInteriorStyle(CD_SOLID);
-
-//  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\continentes_geom_id_78_polygon_1_440x512.txt";
-//  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\continentes_geom_id_78_polygon_1_558x650.txt";
-//  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\guanabara_oceano_obj_id_5_geom_id_11_polygon_ring_2.txt";
-  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\guanabara_oceano_obj_id_5_geom_id_11_polygon_ring_6.txt";
-//  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\guanabara_oceano_obj_id_5_geom_id_11_polygon_ring_15.txt";
-//  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\guanabara_oceano_obj_id_5_geom_id_11_polygon_ring_34.txt";
-//  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\guanabara_oceano_obj_id_5_geom_id_11_polygon_ring_37.txt";
-//  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\guanabara_oceano_obj_id_5_geom_id_11_polygon_ring_53.txt";
-//  file_name = "D:\\Downloads\\TesteCdCanvas\\example_data\\guanabara_oceano_obj_id_5_geom_id_11_polygon_ring_59.txt";
-
-//  point_list = square;
-//  count = 4;
-//  point_list = corner;
-//  count = 6;
-
-  point_list = load_point_file(file_name, &count);
-  if (!point_list)
-    return;
-
-  cdForeground(CD_BLACK);
-  cdBegin(CD_CLOSED_LINES);
-  for (i=0; i<count; i++)
-  {
-    cdVertex((int)point_list[i].x, (int)point_list[i].y);
-  }
-  cdEnd();
-
-  cdForeground(CD_RED);
-  cdBegin(CD_FILL);
-  for (i=0; i<count; i++)
-  {
-    cdVertex((int)point_list[i].x, (int)point_list[i].y);
-  }
-  cdEnd();
-
-  cdFlush();
-
-  free(point_list);
-}
diff --git a/test/simple/simple.sln b/test/simple/simple.sln
deleted file mode 100644
index fc2222e..0000000
--- a/test/simple/simple.sln
+++ /dev/null
@@ -1,20 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "simple", "simple.vcproj", "{82BC36B1-9F7A-41D4-A24F-DBE012378CE6}"
-	ProjectSection(ProjectDependencies) = postProject
-	EndProjectSection
-EndProject
-Global
-	GlobalSection(SolutionConfiguration) = preSolution
-		Debug = Debug
-	EndGlobalSection
-	GlobalSection(ProjectDependencies) = postSolution
-	EndGlobalSection
-	GlobalSection(ProjectConfiguration) = postSolution
-		{82BC36B1-9F7A-41D4-A24F-DBE012378CE6}.Debug.ActiveCfg = Debug|Win32
-		{82BC36B1-9F7A-41D4-A24F-DBE012378CE6}.Debug.Build.0 = Debug|Win32
-	EndGlobalSection
-	GlobalSection(ExtensibilityGlobals) = postSolution
-	EndGlobalSection
-	GlobalSection(ExtensibilityAddIns) = postSolution
-	EndGlobalSection
-EndGlobal
diff --git a/test/simple/simple.vcproj b/test/simple/simple.vcproj
deleted file mode 100644
index 87a199c..0000000
--- a/test/simple/simple.vcproj
+++ /dev/null
@@ -1,131 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-	ProjectType="Visual C++"
-	Version="9,00"
-	Name="simple"
-	ProjectGUID="{82BC36B1-9F7A-41D4-A24F-DBE012378CE6}"
-	TargetFrameworkVersion="131072"
-	>
-	<Platforms>
-		<Platform
-			Name="Win32"
-		/>
-	</Platforms>
-	<ToolFiles>
-	</ToolFiles>
-	<Configurations>
-		<Configuration
-			Name="Debug|Win32"
-			OutputDirectory="..\bin"
-			IntermediateDirectory="..\obj\simple"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			CharacterSet="2"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\..\bin/simple.tlb"
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="..\..\include,..\..\..\iup\include"
-				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;__CD__;simple;_CRT_SECURE_NO_DEPRECATE"
-				RuntimeLibrary="0"
-				PrecompiledHeaderFile=".\..\obj\simple/simple.pch"
-				AssemblerListingLocation=".\..\obj\simple/"
-				ObjectFile=".\..\obj\simple/"
-				ProgramDataBaseFileName=".\..\obj\simple/"
-				WarningLevel="4"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="1"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG"
-				Culture="1046"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalOptions="/MACHINE:I386"
-				AdditionalDependencies="freetype6.lib cd.lib iupcd.lib iup.lib comctl32.lib cdgdiplus.lib gdiplus.lib cdpdflib.lib iupcontrols.lib"
-				OutputFile="..\bin/simple.exe"
-				LinkIncremental="2"
-				SuppressStartupBanner="true"
-				AdditionalLibraryDirectories="..\..\lib,..\..\..\iup\lib"
-				GenerateDebugInformation="true"
-				ProgramDatabaseFile=".\..\bin/simple.pdb"
-				SubSystem="2"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-	</Configurations>
-	<References>
-	</References>
-	<Files>
-		<File
-			RelativePath="iupmain.c"
-			>
-		</File>
-		<File
-			RelativePath="simple.c"
-			>
-		</File>
-		<File
-			RelativePath="simple.h"
-			>
-		</File>
-		<File
-			RelativePath="simple.led"
-			>
-		</File>
-		<File
-			RelativePath="simple_led.c"
-			>
-		</File>
-	</Files>
-	<Globals>
-	</Globals>
-</VisualStudioProject>
-- 
cgit v1.2.3