* contrib/hbwin/hbwapi.h
* contrib/hbwin/wapi_alloc.c
* contrib/hbwin/wapi_wingdi.c
* contrib/hbwin/tests/testgdi.prg
+ Reworked the way DEVMODE structure is handled. As many winapi
interfacing methods, this is also a strange beast, it contains
some hidden information, so it must be created using some
winapi calls. I finally settled with these three functions
to handle DEVMODE structure from .prg level:
__WAPI_DEVMODE_NEW( <cPrinterName> ) => <pDEVMODE>
__WAPI_DEVMODE_SET( <pDEVMODE>, <hashToWriteFrom> )
__WAPI_DEVMODE_GET( <pDEVMODE>, <hashToReadInto> )
Then <pDEVMODE> can be passed to WAPI_CREATEDC() and WAPI_RESETDC().
Remember to recreate <pDEVMODE> after using __WAPI_DEVMODE_SET()
and before using __WAPI_DEVMODE_GET() to refresh the structure
content with actual device settings.
* contrib/hbwin/wapi_wingdi.c
! Guarded for ! HB_OS_WIN_CE.
(mingwarm compiles it, but poccarm doesn't)
Maybe to focus on important things, we should drop
POCC support altogether?
* contrib/hbwin/win_tprn.prg
* WIN_DELETEDC() calls deleted. 'hDC := NIL' is enough.
* contrib/hbwin/Makefile
+ contrib/hbwin/wapi_alloc.c
* contrib/hbwin/win_prn1.c
+ Moved hbwapi_* low-level object handling functions to
separate WAPI source.
* WIN_DELETEDC() converted to compatibility stub, it
will no longer release the handle.
* contrib/hbwin/win_prn1.c
* contrib/hbwin/win_prn2.c
* contrib/hbwin/win_prn3.c
* contrib/hbwin/win_dll.c
% Deleted '#if defined( HB_OS_WIN )' guards.
(we can readd them for extra safety, but in this case
they should be readded consistently for all source files)
% Deleted '! defined( __RSXNT__ )' guards
RSXNT is not supported a dead compiler since long.
% Deleted '! defined( __CYGWIN__ )' guards.
It compiles with current Cygwin, if someone is interested
in older versions, pls send build results.