* contrib/hbct/ctnet.c
* contrib/hbct/disk.c
! Fixed all functions to be present in non-win builds and
return permanent error.
! NETDISK() fixed to not throw two RTEs in a rare case.
* harbour/contrib/hbwin/win_tprn.prg
* updated some comments
* harbour/contrib/hbwin/win_prn1.c
! replaced yet another constant value by DMORIENT_LANDSCAPE macro
* contrib/hbnetio/tests/netiotst.prg
! Fixed to REQUEST dir related functions to avoid RTE.
- contrib/hbnetio/tests/data
- Deleted. Now it's created by RPC call.
* contrib/hbwin/tests/testprn.prg
* Formatting.
* contrib/hbwin/win_prn1.c
! Using constants for dmOrientation.
* harbour/contrib/hbwin/win_tprn.prg
+ added automatic destructors to avoid resource leak
+ added support for late new page initialization by:
oWinPrn:newPage( .T. )
it allows to eliminate blank page when nothing is printed after
:newPage() method
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/idefindreplace.prg
* contrib/hbide/ideobject.prg
* contrib/hbide/idethemes.prg
! Fixed: to ensure that next invocation correctly sets the last
working codec. [ Marco Bra ]
! Fixed: to correctly dispay the last line nos while inserting
or deleting bottom lines. [ Marco Bra ]
! Enabled HBQT_RELEASE_WITH_DELETE protocol for hbIDE.
* harbour/contrib/hbwin/win_prn1.c
* changed 7-th parameter of WIN_TEXTOUT() function to operate on
TA_* constant value instead of custom 0, 1, 2
* modified WIN_SETBKMODE() to return current BkMode setting when called
without 2-nd parameter
* harbour/contrib/hbwin/win_tprn.prg
+ added BkMode member to WIN_PRN class
* modified TextOut(), TextOutAt() and TextAtFont() methods to use
nAlign as windows TA_* value instead of custom 0, 1, 2 and set
default alignment to ( TA_BOTTOM + TA_LEFT )
* formatting
* harbour/contrib/hbnetio/netiosrv.c
! fixed c&p typo - it should fix problem reported by Viktor in netiostv
* harbour/contrib/hbwin/win_prn1.c
* casting
* contrib/hbct/disk.c
! TRUENAME() compiler time error fixed for non-win OS after recent change.
* contrib/hbct/diskhb.c
! GETVOLINFO() fixed to return empty string on non-win OS.
* harbour/contrib/hbwin/win_tprn.prg
! removed left by mistake unused variable
* save only numeric parameters in SetColor() method.
QUESTION: TextOut() method uses 4-th parameter to control text
alignment but it uses own constant values:
0 == left, 1 == right, 2 == centered
instead of TA_* constants. Should we keep it or rather
use windows constant values adding also support for vertical
alignment? In current xHarbour code this parameter was changed
to accept windows constants and 5-th parameter was added which
is OR-ed with the 4-th one but for me this part is redundant.
* harbour/contrib/hbwin/win_prn1.c
% minor optimization
* src/vm/set.c
! ULONG -> HB_FATTR. Missed this occurrence of this ULONG
in previous global modification pass.
Error reported by Istvan Bisz.
* contrib/hbct/Makefile
* contrib/hbct/disk.c
+ contrib/hbct/diskhb.c
! Cleaned the way Windows headers are included.
* Cleaned TRUENAME(), GETVOLINFO() and VOLSERIAL().
+ Using new UNICODE macros in TRUENAME(), GETVOLINFO() and VOLSERIAL().
! GETVOLINFO(), which is not a CT function, got moved
to a separate source file to avoid name collisions.
; TOFIX: It should be moved to xhb lib eventually.
* contrib/hbct/ctnet.c
* Cleaned NETREDIR() and NETRMTNAME() functions.
+ Reworked NETREDIR() and NETRMTNAME() functions to use new UNICODE macros.
+ Extended return buffer in network functions to 128 (from 80).
+ NETRMTNAME() got support to return embedded zeros in name string.
+ Documented a hidden xhb extension in NETREDIR().
% hb_WNetErrorHandler() static function merged into NETREDIR().
; TOFIX: Above hidden extension in NETREDIR() very much looks like
a debugging feature, so I left a TOFIX to convert it to
HB_TRACE() call.
; Please test them.
* contrib/hbsqlit3/hbsqlit3.c
* contrib/hbmisc/dates2.c
- Deleted two functions which were recently made static,
and it turned out they're not even used by Harbour.
Warning reported by Istvan Bisz.
* src/vm/hashfunc.c
* src/vm/asort.c
* src/rtl/cdpapi.c
* contrib/xhb/xhbat.c
* contrib/xhb/txtline.c
* LONG -> HB_ISIZ
* contrib/xhb/bkgtsks.c
* SHORT -> int
* contrib/xhb/hbcomprs.c
* contrib/xhb/xhberrc.c
* LONG -> long
* harbour/include/hbclass.ch
* enable strict parameters validation in method declaration and
implementation when warning level (-w?) is 3 or higher
* small modification in error messages
* harbour/contrib/hbwin/win_prn1.c
! fixed WIN_FILLRECT() to return logical value (result of FillRect()
function)
+ extended WIN_SETPEN() to accept previously created by this function
HPEN handles
! fixed WIN_SETCOLOR() to return previously allocated color.
This function is used in such context in WIN_PRN class.
* harbour/contrib/hbwin/win_tprn.prg
+ added PageNumber member
! fixed printer output detection to respect also graphic primitives
! fixed SetColor() not changed to win_SetColor() when code was ported
from xHarbour
* include/hbdefs.h
+ Marked BOOL, TRUE and FALSE as HB_LEGACY_LEVEL3.
This means these types will disappear from Harbour after next
major release.
Please start to migrate to the new, pure Harbour replacement
types for portable Harbour code:
HB_BOOL, HB_TRUE, HB_FALSE.
Notice that you still may (and should) use BOOL, TRUE, FALSE
when dealing with Windows API (and some other 3rd party APIs),
where these are valid types in their own context.
* include/clipdefs.h
+ Added BOOL, TRUE and FALSE as Clipper compatibility type.
TRUE equals to 1 here for better Clipper compatibility
(was: !0)
* contrib/hbide/hbide.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/idesources.prg
* contrib/hbqt/hbqt.h
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
* contrib/hbqt/hbqt_hbslots.cpp
+ Implemented "Set Mark" and "Goto Mark" toolbar actions.
This implementation has a little glitch which I am lookking
to be realized with subclassing. But the prototype is in place.
! Fixed a bug reported by Marco Bra.
* contrib/hbide/hbide.ch
* contrib/hbide/hbide.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/ideobject.prg
* contrib/hbide/idesaveload.prg
+ Implemented current line highliting.
Currently it is ON by default. Later when all components
will be in place then it will fall under generic category
in thought of "Setup" dialog.
+ Implemented to show number of selection characters in status-bar.
Requested by: Rodrigo Machado.
+ Implemented to retain last selected codec from the main menu
to be populated at next run. It is also displayed
in the status-bar.
; Please comment.
* harbour/include/hbclass.ch
! fixed compilation with strong typed parameters in method
implementation
* enable strict parameters validation only when method is declared
with (), i.e.:
method open
does not force any parameter validation so it can be implemented
with any parameters but:
method open()
needs open method implementation with only one parameter and:
method open( file )
needs open method implementation with exactly one parameter 'file'
* contrib/hbwin/win_prn3.c
* ULONG -> HB_SIZE
! Fixed new warning in hb_tstrncat() (assigment in conditional).
I've now basically restored my original version taken from common lib.
* contrib/hbwin/mapi.c
* Formatting.
* contrib/hbide/ideeditor.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideobject.prg
* contrib/hbide/idesources.prg
+ Implemented line numbers in editing objects.
I used a very simplified way to achieve which
otherwise is implemented in altogether different ways
in Qt examples scattered over the net.
+ Thoughly reworked Edit engine. Please text.
TODO: Synchronize method definitions with declarations.
* harbour/src/compiler/harbour.y
* harbour/src/compiler/harbour.yyh
* harbour/src/compiler/harbour.yyc
! pacified compile time error when ... is used as parameter in _HB_MEMBRER
declaration. TODO: Remove or fix this strong typing grammar rules.
* harbour/src/debug/dbgtwin.prg
* harbour/src/debug/dbgtmenu.prg
* harbour/src/debug/tbrwtext.prg
* harbour/src/debug/debugger.prg
* harbour/src/debug/dbgtinp.prg
* harbour/src/rtl/tbcolumn.prg
* harbour/src/rtl/listbox.prg
* harbour/src/rtl/pushbtn.prg
* harbour/src/rtl/treport.prg
* harbour/src/rtl/radiogrp.prg
* harbour/src/rtl/tthreadx.prg
* harbour/src/rtl/checkbox.prg
* harbour/src/rtl/tsymbol.prg
* harbour/src/rtl/teditor.prg
* harbour/src/rtl/tmenuitm.prg
* harbour/src/rtl/tbrowse.prg
* harbour/contrib/hbmysql/tmysql.prg
* harbour/contrib/xhb/stream.prg
* harbour/contrib/xhb/trpccli.prg
* harbour/contrib/xhb/hblognet.prg
* harbour/contrib/xhb/tfile.prg
* harbour/contrib/xhb/tframe.prg
* harbour/contrib/xhb/htjlist.prg
* harbour/contrib/xhb/hblog.prg
* harbour/contrib/xhb/trpc.prg
* harbour/contrib/xhb/thtm.prg
* harbour/contrib/xhb/tcgi.prg
* harbour/contrib/xhb/ttable.prg
* harbour/contrib/xhb/txml.prg
* harbour/contrib/xhb/hjwindow.prg
* harbour/contrib/xhb/htmutil.prg
* harbour/contrib/hbodbc/todbc.prg
* harbour/contrib/hbfbird/tfirebrd.prg
* harbour/contrib/xpp/tthreadx.prg
* harbour/contrib/hbpgsql/tpostgre.prg
* harbour/contrib/hbgd/gdchart.prg
* harbour/contrib/hbgd/gdimage.prg
* harbour/contrib/hbgd/gdbar.prg
* harbour/contrib/hbgd/gdbarcod.prg
* harbour/contrib/hbmisc/twirler.prg
* harbour/contrib/hbtip/thtml.prg
* harbour/contrib/hbtip/cgi.prg
* harbour/contrib/hbtip/httpcli.prg
* harbour/contrib/hbtip/smtpcli.prg
* harbour/contrib/hbtip/client.prg
* harbour/contrib/hbtip/ftpcli.prg
* harbour/contrib/hbtip/mail.prg
* harbour/contrib/hbtip/popcli.prg
* harbour/contrib/hbwin/win_tprn.prg
* harbour/contrib/hbbtree/tbtree.prg
* harbour/utils/hbformat/hbformat.prg
! fixed class method declarations to be synced with method implementations
All of the above missdeclarations were detected by compilation with:
HB_USER_PRGFLAGS=-DHB_CLS_PARAMS_ERR
Few years ago in hbclass.ch I defined PP rules to force strict method
declarations but I had to disable them due to problems with old PP.
I defined HB_CLS_NO_PARAMS_ERR and left this note in hbclass.ch:
> I have to enable this definition by default until we will not fix
> preprocessor. [druzus]
Current PP code works correctly so we can remove it and activate this
code. Anyhow as above commit shows a lot of code has been created with
wrong declarations. I fixed Harbour core code (except HBQT, HBXBP and
GTWVG - I hope Pritpal or Viktor will fix it) but setting
HB_CLS_PARAMS_ERR as default will exploit a lot of similar problems in
user code so I would like the hear other developers' opinions about it.
* src/rtl/memoedit.prg
! Fixed to set K_ESC as lastkey() if exiting with changed
buffer and answering 'yes' to confirmation question.
Thanks Przemek for reporting it.
! Fixed to not save buffer if exiting with <Esc> and
SET SCOREBOARD OFF.
* src/rtl/tget.prg
% Minor optimization when displaying delim chars.
* contrib/hbwin/win_prn3.c
! Fixed function name in file header comment.