/* * $Id$ */ /* Use this format for entry headers: YYYY-MM-DD HH:MM UTC[-|+]hhmm Your Full Name (your_email address) 2010-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. A summary of the license and the full legal text is included in file: COPYING. If you wish to distribute some or all of this work under different terms, please contact respective author(s). The license applies to all entries newer than 2009-04-28 and all past entries belonging to author(s): Viktor Szakats. */ 2010-01-24 13:54 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpdialog.prg + Implemented :maxSize and :minSize instance variables. 2010-01-24 13:32 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpdataref.prg % Changed the way class is recognized to facilitate sub-classing. Currently only for XbpSLE and XbpMLE. * contrib/hbxbp/xbpwindow.prg ! Method :isDerivedFrom( cClassOrObject ) extended to match the class name of oParent till it matches the given parameter. I am wondering if this functionality be included in class engine itself. Przemek ? 2010-01-24 19:40 UTC+0100 Xavi (jarabal/at/gmail.com) * contrib/hbwin/win_prn1.c + Added support for printing RAW compressed formats JPEG and PNG BitMaps. + Added new PRGs functions: win_TypeBitMap() and win_CheckPrnDrvFormat() Example of use in the class win_BMP() * Changes in WIN_LOADBITMAPFILE, WIN_DRAWBITMAP to support new formats. * contrib/hbwin/win_tprn.prg + Extended the class win_BMP() to allow printing compressed formats JPEG and PNG if the printer driver allows. + Added method CheckPrnDrvFormat( oPrn, @cErrMsg ) for check printer driver. + New VAR INT Type. Type of BitMap: 1 == BM, 2 == JPEG, 3 == PNG + New VAR array DimXY. Original Image Dimensions X Y in pixels. * New parameter aDimXY in LoadFile( cFileName, aDimXY ) * New parameter aDimXY in Draw( oPrn, aRectangle, aDimXY ) to introduce the original image dimensions in pixels X Y. Some printer drivers may require the insertion of the original image dimensions for processing, others read from the data source and by default only need have aDimXY := { 1, 1 } * Use DimXY VAR of win_BMP() in method DrawBitMap( oBmp ) of win_PRN() * src/compiler/hbusage.c + Added author ID mail 2010-01-24 14:30 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg + Added support to recognize .C (uppercase .c) extension as C++ file. (this won't be enabled in MS-DOS builds) 2010-01-24 14:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg ! Fixed to recognize files when uppercase extensions are is in .hbc/sources= directive. [TOMERGE 2.0] 2010-01-24 12:06 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.pt_BR.po * utils/hbmk2/hbmk2.hu_HU.po ! \n -> \\n (in previous commit) 2010-01-24 11:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/estack.c ! Replaced printf() calls with hb_snprintf() and hb_conOutErr() calls. This will avoid reported problems where MinGW binary build refers to internal printf function. As a rule we should never use printf() in Harbour code. There are still a few commented ones in hbrtl. [TOMERGE 2.0] * src/vm/hvm.c ! Replaced printf() (commented) call with HB_TRACE(). [TOMERGE 2.0] * utils/hbmk2/hbmk2.prg ! Fixed -build= option not being recognized. ! Fixed -build= option not being ignored in second option parsing loop. ! Fixed -lang= option not being ignored in second option parsing loop. [TOMERGE 2.0] * utils/hbmk2/hbmk2.pt_BR.po * utils/hbmk2/hbmk2.hu_HU.po * utils/hbmk2/hbmk2.prg + Extended help text for -head option. * contrib/hbwin/win_prn1.c % WIN_LOADBITMAPFILE() optimized to use hb_retclen_buffer(). ! WIN_LOADBITMAPFILE() fixed to return empty string instead of NIL in case of file read failure. * examples/rddado/adordd.ch + Added new 'adCmd*' constants. From xhb. (2010-01-20 20:53 UTC+0100 Miguel Angel Marchuet) * Formatting. 2010-01-23 13:32 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/idefindreplace.prg ! Fixed: error when find operation was unsuccessful. * contrib/hbxbp/xbp.ch + Added HBXBP_DBG( HB_TR_ALWAYS,... ) * contrib/hbxbp/xbppushbutton.prg + Behavior: if focus is set on the object, then its property is changed to autodefault() which means the button will be highlighted with additional border to indicate that it can be activated with "Return" press. However this property does not work in buttons if XbpDialog() is the parent. * contrib/hbxbp/xbpgeneric.prg * contrib/hbxbp/xbpwindow.prg * contrib/hbxbp/xbpdialog.prg + Implemented: XbpDialog():maxButton, :minButton QUESTION: which instance variable controls the resizing behavior? * contrib/hbxbp/xbpsle.prg + Added: callback slot :returnPressed. oSle1:returnPressed := {|| SetAppFocus( oSle2 ) } This facilitates the TAB behavior which navigating the SLE's. This effectively also means you can control the SLE's like ReadModal(). Just validate the SLE (oGet) and move to another SLE or any other part. Angel, your observation will matter. 2010-01-23 14:05 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * 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( ) => __WAPI_DEVMODE_SET( , ) __WAPI_DEVMODE_GET( , ) Then can be passed to WAPI_CREATEDC() and WAPI_RESETDC(). Remember to recreate after using __WAPI_DEVMODE_SET() and before using __WAPI_DEVMODE_GET() to refresh the structure content with actual device settings. 2010-01-23 12:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbide/ideprojmanager.prg ! Don't delete temp .hbp file when creating PPO file, otherwise hbmk2 couldn't find it (at least on my system). * Changed temp .hbp name to have "_tmp.hbp" appended (instead of "._tmp.hbp"). 2010-01-23 12:25 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * Typo in last ChangeLog entry. 2010-01-23 12:17 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg + Added -env: option, command line only, it serves to alter local environment, which is used by hbmk2 itself and which is passed to external commands. This means it's now possible to call hbmk2 in a way that it configures the whole build environment for itself: hbmk2 hello.hbp -env:PATH#C:\mingw\bin; -env:HB_WITH_QT=C:\qt\4.5.3 Read more in --help. ; Please experiment with it. * contrib/hbide/ideprojmanager.prg + Added simple way (HBIDE_DIR_HBMK2 envvar) to configure location of hbmk2. * contrib/hbqt/generator/hbqtgen.prg ! Minor formatting fix to generated code. 2010-01-22 19:24 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/ideprojmanager.prg ! Fix in "Launch" option with respect to :WrkDirectory just before launch of the application. 2010-01-23 02:27 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbwin/win_tprn.prg ! do not ignore :setBkMode() called before :create() 2010-01-23 02:21 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnetio/utils/netiosrv.prg * contrib/hbnetio/utils/netiocmd.prg % Optimizations to latest patch (using FOR EACH). * Formatting and indenting to latest patch. 2010-01-22 17:10 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpdataref.prg % Formatting. * contrib/hbxbp/xbpgeneric.prg ! Little refinment in MsgBox(). * contrib/hbxbp/xbpwindow.prg ! A major fix to not allow XbpDialog() to invalidate buffers. * contrib/hbxbp/xbpdialog.prg + Implemented :setModal() method. ; Angel now your submitted application will run out of the box. You may need one or two changes. oSLE1:oWIDGET:selectAll() SetAppFocus(oSLE1) oDlg:showModal() nEvent := 0 DO WHILE ! lExit .AND. ! lOk .AND. nEvent <> xbeP_Close nEvent := AppEvent( @mp1, @mp2, @oXbp ) oXbp:handleEvent( nEvent, mp1, mp2 ) ENDDO oSle1:getdata() //// DOESN'T WORK oSle2:getdata() //// GIVES ME DATA OF FIRST SLE !!!! SetAppFocus(SetAppWindow()) oDlg:Destroy() //RECURSIVE RUNTIME ERROR !! //oDlg:hide() NOTE: See how a little interest of you have fixed many artifacts !!! 2010-01-23 01:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/memvars.c ! fixed RELEASE ALL [LIKE | EXCEPT ] command - thanks to Enrico for information 2010-01-22 15:07 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/ideprojmanager.prg % Changed the behavior of placement of project components. 1 If is empty == .hbp will be placed in as /.hbp .hbp will include -workdir=/${hb_plat}/${hb_compl} 2. If is empty == .hbp will include -o/ This has facilitated to build projects from any location. < Example follows on the mailing-list taking Angel Pais's recent sent hbXBP based small application which bears the 99% Xbase++ code > 2010-01-22 23:46 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rdd/dbf1.c ! fixed trailing character in empty DBF file - thanks to Saulius * added common RTE function, cleaned some RTE and added some missing ones 2010-01-22 22:19 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnetio/utils/netiosrv.hbp * contrib/hbnetio/utils/netiosrv.prg + contrib/hbnetio/utils/netiocmd.prg + Applied patch sent by Vailton Renato. * Some formatting applied to it. 2010-01-22 18:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/wapi_wingdi.c - Dropped array support for DOCINFO parameter. ; Array has only any point for really simple/obvious structures like point and rect, for anything more complicated hash is a much convenient answer (don't have to remember structure member positions, can pass them in any order and combination, and MSDN docs can be used when coding .prg for Windows). * contrib/hbwin/tests/testgdi.prg % Inlined DOCINFO hash parameter syntax. 2010-01-22 17:48 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/strapi.c * allow to pass NULL as item pointer in hb_item{Get,Copy}Str*() functions * updated hb_itemCopyStr*() functions to set '\0' in the buffer if not string item is passed as parameter * updated hb_itemCopyStr to return number of characters which could be stored in buffer if buffer when passed buffer is NULL and its size is 0 Now all hb_itemCopyStr*() functions can be used to retirve the size in character of destination string by: ulSize = hb_itemCopyStr*( pItem ..., NULL, 0 ) * harbour/contrib/hbnetio/netiocli.c * simplified the code by removing one unnecessary protection * harbour/contrib/xhb/xhw32prn.prg ! fixed stupid typo in method redirecting: :StartPage() was redirected to :Create() and :Create() was redirected to :StartPage() 2010-01-22 17:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/hbwapi.h * contrib/hbwin/wapi_wingdi.c ! Fixed potential GPD in hbwapi_par/stor*() functions when parameter was not passed at all. + Added hbwapi_par_DOCINFO() and hbwapi_strfree_DOCINFO() pairs to retrieve structures with strings in them. Hashes are supported now as well. ; TODO: Low-level string handling functions will GPF yet if the related hashes are missing (f.e. in posted test code). This requires proposed extra guards in low-level string functions. [DONE] + WAPI_STARTDOC() changed to use hbwapi_par_DOCINFO(). % Minor cleanup in WAPI_SELECTOBJECT(). + contrib/hbwin/tests/testgdi.prg + Added test code for GDI function structure parameter exchange. * contrib/hbide/idethemes.prg * contrib/hbide/ideeditor.prg + Added 'sequence' and 'endsequence' to keywords. ; TOFIX: try/catch and a few more are not Harbour keywords. * contrib/hbide/ideeditor.prg % Optimized low-level keyword lookup functions: - Use hashes instead of arrays and ascan. - Use STATIC vars to avoid rebuilding tables on every call. 2010-01-22 08:24 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbqplaintextedit.cpp ! Fix to handle unused variable : "txt". 2010-01-22 07:44 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + contrib/hbqt/hbqt_hbqplaintextedit.cpp + Added missing source file. Surely I am not in my level best today. 2010-01-22 07:09 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + contrib/hbqt/hbqt_hbqplaintextedit.h ! Missing file from prev commit. I was hanging in sleep. 2010-01-22 13:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/wapi_wingdi.c * contrib/hbwin/wapi_winuser.c * contrib/hbwin/hbwapi.h + Added hbwapi_stor_*() functions to store Windows structures RECT, POINT and DEVMODE. Latter supports hash only (due to large number of structure members), other two supports both array and hash. Please review my code. + WAPI_MOVETOEX() now uses hbwapi_stor_POINT(). ! WAPI_DRAWTEXT() fixed to return RECT (using hbwapi_stor_RECT()). * contrib/hbwin/legacy.prg * contrib/xhb/xhw32prn.prg * Moved Win32Bmp compatibility class from hbwin to xhb lib. ! Deleted Win32Prn compatibility clsss from hbwin, as it's now implemented in xhb in a better way. * harbour-win-spec * harbour-wce-spec * harbour.spec * include/hbver.h * config/global.mk + Changed to new major version number: 2.1.0dev (from 2.0.1dev) This gives way for 2.0.x branch to take the 2.0.1dev version number. 2010-01-21 23:59 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/qt45.qtp + contrib/hbqt/qth/HBQPlainTextEdit.qth * contrib/hbqt/qth/QApplication.qth * contrib/hbqt/qth/QPlainTextEdit.qth * contrib/hbqt/qtgui/filelist.mk * contrib/hbqt/qtgui/QApplication.cpp * contrib/hbqt/qtgui/QPlainTextEdit.cpp + contrib/hbqt/qtgui/HBQPlainTextEdit.cpp + contrib/hbqt/qtgui/THBQPlainTextEdit.prg * contrib/hbqt/filelist.mk * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_garbage.h * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesources.prg + Added HBQPlainTextEdit() class which implements some constructs which were not possible in pure prg code. The underlying code has been borrowed from TextEdit.c of QWriter - a work of Gancov Kostya , a big thank you. The code has been extensively formatted and changed to adopt to Harbour standards. The direct benefits by adopting this class are: : * Current line highlighting is absolutely ok now. * Line numbers display is extremely fast and optimized. * Book-marks are shown at the left of line-numbers. * Parenthesis matching is absolutely delightful. * To Upper/Lower implementation is accurate spanning many lines. * Stream commenting is made possible. * Book-marks management is smooth. In IDE book-marks are implemented in different way than most IDE's offer. Here is the description: * Click on "Toggle Mark" icon on the toolbar. * A small dot will appear on the left of current line. * Look at status-bar, a small colored pushbutton will appear. * Navigate the document as usual. * Click on the colored push button staying in statusbar. * The editing cursor will stay at book-mark represented by that colored button and current line will appear highlighted with the same color as that of button. * Navigate to another location and click again on "Toggle Mark" icon. * A new dot and one more colored button will appear in the statusbar. * You can create 6 book marks as such and all will have different colors. * You can click on any of desired usage. * To delete a book-mark click on the button then "Toggle Mark" * One button at the right will disappear. * All tabs will contain their own book-marks. * And every split window will have its own. * Navigating different tabs or split windows will rearrange the buttons according to its own settings. ; QUESTION : Is it worth the effort to save book-marks settings for next session? 2010-01-22 01:25 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbtip/sendmail.prg ! Applied set of HB_SENDMAIL() patches sent by Francesco Perillo: - nTimeOut defaults to 10 seconds - check for actually receiving "250 " to EHLO and not waiting for timeout - don't wait for timeout - check for actually receiving "250 " to HELO and not waiting for timeout [TOMERGE 2.0] * contrib/hbwin/wapi_wingdi.c + Added TODO to WAPI_SELECTOBJECT() to implement reference counting when assigning an GC collected object to another one (DC). Any idea how to do this properly? * contrib/hbwin/wapi_winuser.c + Added WAPI_GETSYSTEMMETRICS(). * contrib/hbwin/hbwin.ch + Added WIN_SM_* constants for WAPI_GETSYSTEMMETRICS().. * contrib/hbwin/wapi_winuser.c * contrib/hbwin/wapi_shellapi.c - Deleted unnecessary Windows headers. * contrib/hbwin/win_dlg.c + WAPI_PRINTDLGDC() now sets owner window for better results (f.e. in GTWVT it will block clicking on app window and newer style printer dialog will be presented) * contrib/hbwin/win_prn1.c * Minor. 2010-01-22 00:33 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c + added support for independent CP setting for BOX and normal characters * disabled Clipper VGA compatible memory buffer in GTXWC default settings to keep information about character sets (box vs normal) + added support for HB_GTI_BOXCP 2010-01-21 16:59 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/memoedit.prg ! Fixed to not return edited memoedit buffer if :Saved flag is false. This patch is meant to fix sf.net bug #2936334. Again such a huge bug I wonder no one noticed it so far. MEMOEDIT() is the remaining last dark corners of Harbour RTL (maybe with AChoice()) which is not fully C5.x compatible, and it's a heap of patches and hacks to give answer to reported problems. Eventually some concerned MEMOEDIT() user will have to rework it like we did with GET/TBROWSE to give a proper fix to all reported issues. (F.e. in TEditor() there is a bug where chars are stuffed to the wrong position if initially we position cursor after EOL. Try by deleting text.txt in attached example.) Please test, review, fixme, look also for regressions. + Added initial support for ME_PAST Xbase++ event. Please test, I didn't make any testing against Xbase++. * contrib/hbwin/wapi_wingdi.c + WAPI_SELECTOBJECT() got support for HBRUSH. * contrib/hbwin/win_prn1.c + Added two TOFIX comments to serious security holes and potential GPFs to bitmap handling functions. Enough to load a malformed or corrupted .bmp file to exploit it. Any takers for fixing them? * contrib/hbide/idemisc.prg * Two STATIC variables prefixed with 's_' 2010-01-21 12:42 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/harbour.spec ! restored removed harbour-lib RPM - all RPMs generated when it was removed have broken dependencies list 2010-01-21 12:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/wapi_alloc.c * contrib/hbwin/hbwapi.h + Added GC collected HBRUSH support functions. * contrib/hbwin/wapi_wingdi.c + Added link to WinCE MSDN documentation page. + Added hbwapi_par_POINT(). Handles both hash and array. + Added WAPI_CREATESOLIDBRUSH() + Added WAPI_CREATEHATCHBRUSH() + WAPI_SELECTOBJECT() corrected to return integer when region is passed. + Added: WAPI_FILLRECT() WAPI_ROUNDRECT() WAPI_RECTANGLE() WAPI_ARC() WAPI_ELLIPSE() * contrib/hbwin/hbwin.ch + WIN_HS_* constants added for WAPI_CREATEHATCHBRUSH() + WIN_DT_* constants converted to hex format. 2010-01-21 11:50 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Documented minimum requirement of CEGCC 0.55 (mingwarm) * contrib/hbwin/hbwin.ch + Added WIN_*_PRECIS constants. + Added WIN_DT_* (WAPI_DRAWTEXT()) constants. * contrib/hbwin/Makefile + contrib/hbwin/win_dlg.c + Added WIN_PRINTDLGDC() printer dialog. Some ideas/lines taken from HWGUI project. * contrib/hbwin/hbwapi.h * contrib/hbwin/wapi_wingdi.c + Added hbwapi_par_RECT() supporting both hash and array input. ! WAPI_CREATEFONT() fixed to use neutral defaults. ! WAPI_SELECTOBJECT() fixed two warnings. * contrib/hbwin/wapi_winuser.c + Added WAPI_DRAWTEXT(). 2010-01-21 11:50 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbnetio/netiocli.c * respect passed parameters as default values in netio_decode() 2010-01-21 10:17 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/common/hbffind.c * harbour/src/rtl/filesys.c * harbour/src/rtl/spfiles.c ! fixed HB_TRACE() messages to work with new HB_FATTR type 2010-01-21 09:33 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbct/video.c ! fixed compilation for compilers using 'char' as unsigned type * harbour/contrib/hbmzip/hbmzip.c ! fixed to work with HB_FATTR * harbour/contrib/hbnetio/netiocli.c * pacified BCC warning 2010-01-20 18:33 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg + Implemented: Formatting - ; These formatting actions are initiated from the fact that code examples scattered on the net about Qt examples are written in such a way that I was unable to grasp the contents. I found it usual to include such functionality into hbIDE. Hopefully it will be useful to all. 2010-01-20 17:16 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idefindreplace.prg * contrib/hbide/idesaveload.prg + Implemented: Formatting - This can be achieved via Mainmenu option. ! New: Find/Replace: Current selelcted text in "Find what:" control in selected state. % Changed: The way hbide.ini is loaded. cHbideIni := hb_argv( 0 ) IF empty( cHbideIni ) IF file( "hbide.ini" ) cHbideIni := "hbide.ini" ELSE cHbideIni := hb_dirBase() + "hbide.ini" ENDIF ENDIF oIde:cProjIni := cHbideIni ! Improved qTextDocument:isModified() handelling. ; TO CONSIDER: QPlainTextEdit() class by itself is not providing enough methods to have finest of the editing experience. So, it may be necessary to subclass it for extended features. 2010-01-21 01:09 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbnetio/netiocli.c * harbour/contrib/hbnetio/readme.txt + added new client side function: NETIO_DECODE( [@], [@], [@], [@], ; [@], [@], [@] ) -> Decode connection parameters from and default settings. Return .T. if contains any connection settings. should not contain "net:" prefix. * harbour/src/rtl/itemseri.c + added support for hash array flags and default value serialization Warning: before this modification hash arrays were always restored with binary sorting with default auto assign setting and without any default value and resorted if necessary. Now only non binary hash arrays are resorted what may cause problems for hash arrays not using binary sorting serialized by old code and restored by the current one. In such case it's necessary to restore original flags manually using hb_h*() functions to force resorting. - removed my TODO note: "extended hash format with default value and hash flags" 2010-01-21 00:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added new item to TROUBLESHOOTING section describing common problem when native executables are forgotten to be rebuilt, and causing error in cross-build. This typically causes problems when compiler/pp/hbmk2 get new feature. * contrib/hbwin/win_tprn.prg ! Deleted trace msg left there by mistake. * contrib/hbwin/hbwin.ch + Added WIN_*_QUALITY constants. * config/global.mk + Displaying HB_BIN_COMPILE even if explicitly specified by user. 2010-01-20 09:19 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h ! More improved syntax highlighting, specially in quoted strings. * contrib/hbide/hbide.prg * contrib/hbide/ideeditor.prg * contrib/hbide/ideobject.prg * contrib/hbide/idethemes.prg + Ctrl+D - Duplicate Line. ! Improved current line highlighting. But seems some more work is required. ! Tried to disable zooming in line numbers area but seems Qt has it by default. In edit area zooming is now made available via toolbar icons only. 2010-01-20 17:48 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_prn1.c * contrib/hbwin/win_prn2.c * Cleanups. 2010-01-20 16:57 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * 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 compiler and dead since long. % Deleted '! defined( __CYGWIN__ )' guards. It compiles with current Cygwin, if someone is interested in older versions, pls send build results. 2010-01-20 13:51 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/Makefile + contrib/hbwin/wapi_wingdi.c + Added experimental WAPI wrappers for Windows GDI printing functions also found in win_prn1.c. This is partially to avoid the legacy interface which is a combination of WIN_* functions and Harbour class. Which may seem to make thing more complicated at first, but IME it provides a much cleaner interface, as you only have to adapt to MSDN docs. It's also a test bed for structure passing in WAPI situations. I've used hashes as the best looking solution, but even this has some things left to solve (like handling string types and returning values). Anyway it's a food for thought. * contrib/hbwin/hbwin.ch + Added WIN_DMORIENT_* constants. * contrib/hbwin/win_prn1.c ! Fixed to not accept raw pointers where HDC or HPEN is expected. I've added this feature last year, without making special mention of it in ChangeLog, so it was a double-mistake. * Minor cleanups (hb_retnl() vs hb_retni()) % Optimization in WIN_SETBKMODE(). 2010-01-20 14:28 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt) * harbour/contrib/hbcairo/pdf.c * harbour/contrib/hbcairo/png.c * updated harbour level functions to be available, but return error result, if it is not supported by some version of cairo library * harbour/contrib/hbcairo/image.c * comment typo 2010-01-19 17:46 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h * contrib/hbqt/qtgui/HBQSyntaxHighlighter.cpp * contrib/hbqt/qtgui/THBQSyntaxHighlighter.prg * contrib/hbqt/qth/HBQSyntaxHighLighter.qth % Improved syntax highlighting. * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/ideobject.prg * contrib/hbide/idethemes.prg ! Struggling to get some artifacts fixed, mainly at a time when enter is pressed for new line. + Implemented F7 == "/*" + replicate( "-", 70 ) + "*/". 2010-01-19 23:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_tprn.prg * contrib/hbwin/win_prn1.c + WIN_CREATEFONT() extended with 10th parameter which makes it possible to switch to raw height/width specification. This is crucial for precise positioning using integer parameters. Not very elegant parameter, but this class and low-level interface is already extremely hacky so this won't really make it any worse. + WIN_PRN():SetFont() extended with lManualSize option which maps to above 10th parameter. * contrib/hbwin/tests/testprn.prg + Added some text on the solution for overwritten underline problem described in test program. 2010-01-19 21:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/gtwvg/wvgdarea.prg ! Deleted method declaration without definition. This caused unresolved external when trying to build demos. * contrib/gtwvg/wvgscrlb.prg * contrib/gtwvg/gtwvg.h * contrib/gtwvg/wvgmle.prg * contrib/gtwvg/wvglistb.prg * contrib/gtwvg/wvggui.c * contrib/gtwvg/wvgtoolb.prg * contrib/gtwvg/wvgpushb.prg * contrib/gtwvg/wvggui.h * contrib/gtwvg/wvgsle.prg * contrib/gtwvg/wvgtreev.prg * contrib/gtwvg/wvgwnd.prg * contrib/gtwvg/wvgdatar.prg * contrib/gtwvg/wvgradio.prg * contrib/gtwvg/wvgbitmp.prg * contrib/gtwvg/wvgcheck.prg * contrib/gtwvg/wvgstatb.prg * contrib/gtwvg/wvgstatc.prg * contrib/gtwvg/wvgtabpg.prg * contrib/gtwvg/wvgsink.c * contrib/gtwvg/wvg3stat.prg * contrib/gtwvg/wvgwing.c - C level local debugging solutions deleted. * .prg level debugging calls changed to HB_TRACELOG() from xhb lib specific former solution. * contrib/hbwin/win_prn1.c + Added WIN_BITMAPDIMENSIONS( , @x, @y ) -> logical Based on logic found in WIN_DRAWBITMAP(). ; TOFIX: Both of these functions may GPF is passed wrong data. I don't know how to fix it, so if you do, please help. * contrib/hbwin/win_prn2.c * Formatting. 2010-01-19 09:16 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideeditor.prg * contrib/hbide/ideobject.prg + Started : auto indentation and keyword capitalization. ; Please test and forward your suggessions. 2010-01-19 09:11 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/generator/qt45.qtp * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_garbage.h * contrib/hbqt/qtcore/filelist.mk * contrib/hbqt/qtcore/QChar.cpp * contrib/hbqt/qtcore/QDir.cpp * contrib/hbqt/qtcore/QLocale.cpp * contrib/hbqt/qtcore/QTextCodec.cpp * contrib/hbqt/qtcore/QTextEncoder.cpp * contrib/hbqt/qtcore/QTextStream.cpp * contrib/hbqt/qtcore/QVariant.cpp * contrib/hbqt/qtcore/TQChar.prg * contrib/hbqt/qtcore/TQDir.prg * contrib/hbqt/qtcore/TQLocale.prg * contrib/hbqt/qtcore/TQTextCodec.prg * contrib/hbqt/qtcore/TQTextEncoder.prg * contrib/hbqt/qtcore/TQTextStream.prg * contrib/hbqt/qtcore/TQVariant.prg * contrib/hbqt/qtgui/QFontMetrics.cpp * contrib/hbqt/qtgui/QFontMetricsF.cpp * contrib/hbqt/qtgui/QTextDocument.cpp * contrib/hbqt/qtgui/TQFontMetrics.prg * contrib/hbqt/qtgui/TQFontMetricsF.prg * contrib/hbqt/qtgui/TQTextDocument.prg * contrib/hbqt/qth/QChar.qth * contrib/hbqt/qth/QDir.qth * contrib/hbqt/qth/QLocale.qth * contrib/hbqt/qth/QTextCodec.qth * contrib/hbqt/qth/QTextDocument.qth * contrib/hbqt/qth/QTextEncoder.qth * contrib/hbqt/qth/QTextStream.qth * contrib/hbqt/qth/QVariant.qth ! Enabled QChar() class. 2010-01-19 14:21 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg + Allowing -hbdyn and -shared option together. Absolutely not tested combination, so it may need further development to make it usable. ! Fixed bad typo in .c stub enabler logic, which have added .c stub also to libs/dynlibs when -main option was used (plus some other rare cases) [TOMERGE 2.0] ! Fixed gcc linker option order in -hbdyn mode. [TOMERGE 2.0] ; Please test. 2010-01-19 10:24 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/maindllp.c * utils/hbmk2/hbmk2.prg * config/global.mk + Added more (untested) support for WinCE x86 targets. 2010-01-19 10:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbwin/win_prn1.c ! fixed missing dmFields assignment - please test if this fix does not change the behavior of printer dialog window when :AskProperties is set to .T. - thanks to Chen for information 2010-01-19 09:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/pp/ppcore.c * pacified BCC warning * harbour/src/compiler/harbour.yyc * harbour/src/compiler/harbour.yyh * regenerated with patched bison to pacify BCC warnings * harbour/include/hbwinuni.h + added HB_ITEMCOPYSTR() macro * harbour/src/common/hbwince.c * redirected Beep() to MessageBeep() - it does not allow to set time and duration but should generate some default system voice signal - please test the results with real devices using WinCE/ Win Mobile TODO: New MinGW support LockFileEx() and UnlockFileEx() but they are part of coredll6 library not coredll. I guess it's designed to use with Windows Mobile 6.x. Add compile and link time support for it. TODO: Add link time support for MinGWCE and non ARM processors. New MinGWCE supports x86 compatible Intel CPUs for pocket devices. 2010-01-18 17:52 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_base.cpp * contrib/hbqt/hbqt_hbevents.cpp * contrib/hbqt/hbqt_hbslots.cpp ! HB_TRUE/FALSE <=> true/false. * contrib/hbide/hbide.prg * contrib/hbide/ideeditor.prg ! Updated to manage split windows properly. Presently the behavior is as such: Horizontal Split - Top row is columns are splitted Vertical Split - More row is added at the bottom. Delete Splitted Window - Focus is always shifted to main edit window. i.e., parent of all. Please comment. 2010-01-19 00:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/gtwvt/gtwvt.c * contrib/gtwvg/gtwvg.c ! Fixed GFX drawing functions to forward success/failure results from Windows API calls. 2010-01-18 20:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/extrap.c * src/rtl/diskspac.c * src/rtl/disksphb.c * src/rtl/gtwvt/gtwvt.c * contrib/gtwvg/gtwvg.c * contrib/gtwvg/wvgwin.c * contrib/hbwin/win_prn2.c * contrib/hbwin/win_prn3.c + Using HBTEXT() macro on 2nd parameter of GetProcAddress() in _all_ cases. This can't hurt, but it's useful to never forget it for WinCE targets/branches. Recent change got also simplified after this. Pls review me. 2010-01-18 20:08 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbwin/win_tprn.prg ! fixed GetDefaultPrinter() => win_PrinterGetDefault() * harbour/contrib/hbwin/win_prn2.c * harbour/contrib/hbwin/win_prn3.c ! fixed to compile with WinCE 2010-01-18 19:57 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbwince.c - Deleted definition of FreeResource(). It's noe used anywhere in Harbour, and its declaration was also missing. * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_destruct.cpp - Deleted no longer used macros: hbqt_ret_*(). + Added TOFIX to hbqt_par_*() where essentially the GC pointer type checking is completely worked around, which makes it easy to create GPFs by passing wrong pointer type to functions. Probably its unavoidable to introduce parameter validation to HBQT wrappers. Such validation could decide which types are accepted (f.e. objects and parent objects, whether NULL is accepted or rejected). If not accepted a proper RTE should be thrown instead of letting the app GPF. + Added two TOFIXes where low-level parameter retrieving function returns NULL. 2010-01-18 09:55 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/idesources.prg * contrib/hbide/idethemes.prg ! Updated to honor latest changes. + Added: ZoomIn, ZoomOut feature, currently via toolbar. ! Fixed: open dialog respecting last opened path. ! Fixed: to display codec in the statusbar at the startup. ! Fixed: context menu gpf'ing if no prompt is selected. + Prepared: to allow extended book-"Mark" feature. + Prepared: to handle extended syntax highlighting. ! More artifacts I must be missing. 2010-01-18 09:14 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_base.cpp * contrib/hbqt/hbqt_destruct.cpp * contrib/hbqt/hbqt_garbage.h * contrib/hbqt/hbqt_hbdbfmodel.cpp * contrib/hbqt/hbqt_hbevents.cpp * contrib/hbqt/hbqt_hbevents.h * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h * contrib/hbqt/hbqt_hbqtableview.cpp * contrib/hbqt/hbqt_hbslots.cpp * contrib/hbqt/hbqt_hbslots.h * contrib/hbqt/qth/HBQTextBlockUserData.qth * contrib/hbqt/qth/QAbstractItemModel.qth * contrib/hbqt/qth/QSyntaxHighlighter.qth * contrib/hbqt/qth/QTableView.qth + contrib/hbqt/qth/HBQTableView.qth + contrib/hbqt/qth/HBDbfModel.qth + contrib/hbqt/qth/HBQSyntaxHighLighter.qth + Separated parts to auto/static generation. + contrib/hbqt/qth/HBEvents.qth + contrib/hbqt/qth/HBSlots.qth + Prepared to bring Events/Slots management on OO level. Stll not activated as I have some technical issues on c++ level. Just a matter of time... * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/generator/qt45.qtp + This commit is generally towards separation of static/auto generated parts of classes which has been hanging in for manual updates to the structures indivisually if changes were made effective overhaul. * contrib/hbqt/qtcore/* * contrib/hbqt/qtgui/* * contrib/hbqt/qtnetwork/* 2010-01-18 17:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbwince.h * harbour/src/common/hbwince.c - removed added for WinCE builds and not longer used wrappers for some C RTL functions 2010-01-18 16:34 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbcompdf.h * src/compiler/cmdcheck.c * src/compiler/hbmain.c * src/compiler/hbcomp.c * src/compiler/hbopt.c * src/compiler/hbusage.c * src/compiler/hbgenerr.c + Added options to control error/warning output format/style in Harbour, to make it possible to switch to formats which are handled by popular IDEs, like Eclipse, Code::Blocks. Currently these are supported: -ge[0]: Clipper compatible (default) -ge1: "IDE friendly". Mimics the one submitted by Lorenzo for Eclipse. The goal is to cover the most IDEs with the less options, so please test them to reach this optimum. 2010-01-18 15:53 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/common/hbwince.c - removed LocalLock()/LocalUnlock()/LocalHandle() function wrappers for WinCE builds - we do not use these functions in current code * harbour/contrib/xhb/xhw32prn.prg - removed commented :AskProperties - it's already implemented in WIN_PRN class 2010-01-18 15:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbwince.h * harbour/src/common/hbwince.c - disabled not longer necessary in WinCE builds system() and strerror() functions 2010-01-18 15:30 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/tests/testprn.prg + Brings up printer setup dialog if run with 'ask' cmdline parameter. 2010-01-18 14:56 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapi.h * harbour/src/common/hbver.c + added BOOL hb_iswin9x( void ) C function * harbour/src/rtl/version.c + added HB_OSISWIN9X() PRG function * harbour/src/rtl/gttone.c % simplified the code using hb_iswin9x() function TODO: Check if WinCE support WinNT file IO functions and if yes then replace in src/rtl/filesys.c 'if( hb_iswinnt() )' with 'if( !hb_iswin9x() )' * harbour/contrib/hbwin/win_tprn.prg * harbour/contrib/hbwin/win_prn1.c + added ::AskProperties in WIN_PRN class If it is assigned .t. prior to calling ::Create(), a DocumentProperties dialog is displayed. By Budyanto Dj. borrowed from xHarbour. NOTE: this modification does not contain win9x hack present in xHarbour. Please make tests and update this code if necessary 2010-01-18 14:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * hbwin/hbwapi.h * hbwin/win_prn1.c + Added HFONT GC interface. 2010-01-18 13:27 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_prn1.c * contrib/hbwin/hbwapi.h + Added public functions to return and retrieve HDC and HPEN handles. This makes it possible to use these in 3rd party code and other parts of hbwin lib. F.e. to create pure wrappers for GDI functions. + win_prn1.c now uses hbwapi_ret_*() functions to return HDC and HPEN handles. * Renamed static GC related functions. ! WIN_SETPEN() fixed to retrieve pointer from _2nd_ param. (it was 1st previously, pls review me) ! WIN_SETPEN() fixed to not allocate new GC pointer if an existing GC pointer was passed as 2nd parameter. (please review me) * contrib/hbwin/mapi.c * contrib/hbwin/wapi_commctrl.c ! Fixed to compile with Cygwin. [TOMERGE 2.0] * contrib/hbwin/win_prn1.c - Deleted unnecessary winspool.h header. * contrib/hbwin/win_prn2.c * contrib/hbwin/win_prn3.c - Deleted winspool.h header for LCC compiler. We don't support LCC compiler in Harbour. ! Cleaned windows.h inclusion. * contrib/hbfimage/fi_winfu.c * contrib/hbfimage/fi_wrp.c * Formatting. + TOFIX added to use GC collected pointers. 2010-01-18 11:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/hbwin.ch * contrib/hbwin/win_tprn.prg + Added constants for WIN_SETBKMODE() mode parameter. 2010-01-18 11:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/dbinfo.ch * harbour/include/hbrdddbf.h * harbour/src/rdd/dbf1.c * harbour/src/rdd/dbfntx/dbfntx1.c * harbour/src/rdd/dbfnsx/dbfnsx1.c * renamed DB_DBFLOCK_XHB64 => DB_DBFLOCK_HB64 * harbour/contrib/hbwin/win_tprn.prg * updated some comments and formatting * harbour/contrib/xhb/Makefile + harbour/contrib/xhb/xhw32prn.prg + added WIN32PRN class, it inherits from WIN_PRN class hiding some differences between Harbour and xHarbour in paper size setting and separated horizontal and vertical alignment setting 2010-01-18 11:04 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_tprn.prg ! Fix to prev. 2010-01-18 10:58 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_tprn.prg ! Using constant. * Minor formatting/cleanup. * contrib/hbhpdf/harupdf.c ! HPDF_Page_GetMiterLimit() fixed to return double instead of long. As suggested by Saulius. [TOMERGE 2.0] * Formatting. 2010-01-17 23:08 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * hbqt/hbqt.h * hbqt/hbqt.ch * hbqt/hbqt_destruct.cpp * hbqt/hbqt_hbqsyntaxhighlighter.cpp * contrib/hbqt/tests/demoqt.prg - Deleted unused remains of memory release method selection. 2010-01-17 22:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/hbwin.ch + Added HB_WINFONT_* constants for WIN_ENUMFONTS() returned array positions. + Now possible to disable legacy defintions by defining HB_WIN_NO_LEGACY. This paves the way to include this file in .c files. * contrib/hbwin/win_prn1.c ! WIN_ENUMFONTS() fixed to return empty array (instead of NIL) in error cases. 2010-01-17 20:34 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_reg.prg * contrib/hbwin/win_os.prg * contrib/hbwin/win_tprn.prg * contrib/hbwin/wapi_winbase.c * contrib/hbwin/hbwin.h * contrib/hbwin/hbwin.ch * contrib/hbwin/tests/testprn.prg * contrib/hbwin/tests/testcom1.prg * contrib/hbwin/tests/testcom2.prg * contrib/hbwin/tests/testreg.prg * contrib/hbwin/tests/testmapi.prg * contrib/hbwin/win_com.c * contrib/hbwin/win_prn1.c * MM_TO_INCH macro moved from hbwin.ch to win_tprn.prg. (INCOMPATIBLE is someone happened to use this in app code) + Prefixed all Windows constants with WIN_ in hbwin.ch. + Prefixed all hbwin specific constants with HB_ in hbwin.ch. + Retained all old legacy / deprecated hbwin.ch constants for compatibility. Users are encourages to use the new ones, as the old ones will be deleted in the future. * Changed WIN_MULDIV() to use hb_retni() (instead of hb_retnl()) * WIN_MULDIV() renamed to WAPI_MULDIV() and moved to wapi source. (INCOMPATIBLE, although it's unlikely anyone is using WIN_MULDIV() so I didn't keep it.) + Added some additional printing related Windows constants. + Added comments to hbwin.ch saying which constant is used in which WIN_*() function. * HB_WIN_MAPI_* constants renamed to WIN_MAPI_*. (I haven't dealt with compatibility as this is brand new functions with not much users yet) + Marked all hbwin.ch deprecated macros with HB_LEGACY_LEVEL3 ! Fixed to use hbwin.ch constants in few remaining places in testprn.prg ; Now it's possible to include hbwin.ch in .c files. ; QUESTION: Why RGB_* color constants aren't using pure colors? If there is no special reason, I think it should be changed to pure ones (with 0xFF components). * src/compiler/hbgenerr.c * Formatting. 2010-01-17 15:06 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_tprn.prg ! Fixed to not refer to legacy function WIN_GETEXEFILENAME(). Probably this was causing the link-time symbol collision problem once reported by Mindaugas. * contrib/hbwin/hbwin.ch + Added WIN_RGB() macro to replace RGB(). Latter is now deprectaed. * ChangeLog + TOMERGE added to prev entry. 2010-01-17 10:34 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbhpdf/harupdf.c ! HPDF_Page_TextWidth() fixed to return double instead of long. As suggested by Francesco Perillo. [TOMERGE 2.0] * contrib/hbwin/hbwin.ch * contrib/hbwin/tests/testprn.prg + Renamed FORM_* to WIN_PRN_DMPAPER*. (old constants are still there for compatibility. + Added new WIN_PRN_DMPAPER* constants. (the list is far from complete, but my first goal was to be about in sync with hbhpdf) 2010-01-16 23:14 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg ! Updated to respect latest changes. 2010-01-16 22:29 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/generator/qt45.qtp * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_base.cpp * contrib/hbqt/hbqt_garbage.h * contrib/hbqt/hbqt_hbdbfmodel.cpp * contrib/hbqt/hbqt_hbevents.cpp * contrib/hbqt/hbqt_hbqmainwindow.cpp * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h * contrib/hbqt/hbqt_hbqtableview.cpp * contrib/hbqt/hbqt_hbslots.cpp + contrib/hbqt/qth/HBQTextBlockUserData.qth * contrib/hbqt/qth/QAbstractTextDocumentLayout.qth * contrib/hbqt/qth/QApplication.qth * contrib/hbqt/qth/QClipboard.qth * contrib/hbqt/qth/QComboBox.qth * contrib/hbqt/qth/QCursor.qth * contrib/hbqt/qth/QDragEnterEvent.qth * contrib/hbqt/qth/QDragLeaveEvent.qth * contrib/hbqt/qth/QDropEvent.qth * contrib/hbqt/qth/QFocusEvent.qth * contrib/hbqt/qth/QGradient.qth * contrib/hbqt/qth/QKeyEvent.qth * contrib/hbqt/qth/QLabel.qth * contrib/hbqt/qth/QLayoutItem.qth * contrib/hbqt/qth/QLineEdit.qth * contrib/hbqt/qth/QMoveEvent.qth * contrib/hbqt/qth/QPaintDevice.qth + contrib/hbqt/qth/QPaintEngine.qth * contrib/hbqt/qth/QPrintEngine.qth * contrib/hbqt/qth/QResizeEvent.qth * contrib/hbqt/qth/QSplitter.qth * contrib/hbqt/qth/QStandardItemModel.qth * contrib/hbqt/qth/QStyleHintReturn.qth * contrib/hbqt/qth/QStyleHintReturnMask.qth * contrib/hbqt/qth/QStyleHintReturnVariant.qth * contrib/hbqt/qth/QTextBlock.qth * contrib/hbqt/qth/QTextCursor.qth + contrib/hbqt/qth/QTextList.qth * contrib/hbqt/qth/QWheelEvent.qth * contrib/hbqt/qth/QWidget.qth * contrib/hbqt/tests/demoqt.prg * contrib/hbxbp/tests/demoxbp.prg * contrib/hbxbp/xbpgeneric.prg * contrib/hbxbp/xbpmenubar.prg * contrib/hbqt/qtcore/*.cpp * contrib/hbqt/qtgui/*.cpp * contrib/hbqt/qtnetwork/*.cpp ! This commit change some rules to parse .qth files to prepare the wrappers to be encapsulated in hb_retptrGC envelop. It also attempts to pin-point the spots where mem-leak could occur. Only very few calls are left to plain hb_retptr() which eventually will be handled the other way. Only delete ( Q* ) p; is retained. Other two methods are eliminated. Demos are updated to respect it. demoQT and demoXBP now consume very less memory when new dialogs are opened. It means memory management has improved with this commit. Anyhow still I can see memory growing specially in browser navigation. As I remember sometime in past I could manage the sonstant memory, but now I do not remember at what stage we were on Qt. Though all the three variants, demoQT, demoXBP, hbIDE are working properly, still there could be regression, please test. 2010-01-16 13:43 UTC+0500 April White (april users.sourceforge.net) * contrib/hbbtree/test/test.prg * moved existing code into procedures in preparation for introducing more robust testing; a work in progress * contrib/hbbtree/test/test.hbp * added switches to reduce memory footprint and standard gt 2010-01-16 15:28 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * external/libpng/LICENSE * external/libpng/Makefile * external/libpng/png.c * external/libpng/png.h * external/libpng/pngrio.c * external/libpng/pngerror.c * external/libpng/pngconf.h * external/libpng/pngwrite.c * external/libpng/pngset.c * external/libpng/pngpread.c * external/libpng/pngwtran.c * external/libpng/pngwio.c * external/libpng/pngrutil.c * external/libpng/pngwutil.c * external/libpng/pngread.c * external/libpng/pngmem.c * external/libpng/pngget.c * external/libpng/pngrtran.c * external/libpng/pngtrans.c - external/libpng/pngvcrd.c - external/libpng/pnggccrd.c + external/libpng/pngpriv.h * Updated to 1.4.0 (from 1.2.40) * external/libpng/Makefile + Added -DPNG_NO_SETJMP for watcom builds to prevent these errors from happening: wcc386 -zq -bt=nt -bm -w0 -6s -fp6 -onaehtr -s -ei -zp4 -zt0 -oi -i. -i..\..\..\..\..\include -IF:\work\harbour\harbour\external\zlib -DUSE_FAR_KEYWORD -fo=pngread.obj ..\..\..\pngread.c ..\..\..\pngread.c(86): Error! E1071: Type of parameter 2 does not agree with previous definition ..\..\..\pngread.c(86): Note! N2003: source conversion type is 'void (__watcall *)(unsigned int __p1[],int __p2)' ..\..\..\pngread.c(86): Note! N2004: target conversion type is 'void (__cdecl *)(unsigned int __p1[],int __p2)' wcc386 -zq -bt=nt -bm -w0 -6s -fp6 -onaehtr -s -ei -zp4 -zt0 -oi -i. -i..\..\..\..\..\include -IF:\work\harbour\harbour\external\zlib -fo=pngwrite.obj ..\. .\..\pngwrite.c ..\..\..\pngwrite.c(507): Error! E1071: Type of parameter 2 does not agree with previous definition ..\..\..\pngwrite.c(507): Note! N2003: source conversion type is 'void (__watcall *)(unsigned int __p1[],int __p2)' ..\..\..\pngwrite.c(507): Note! N2004: target conversion type is 'void (__cdecl *)(unsigned int __p1[],int __p2)' * external/sqlite3/sqlite3.c * external/sqlite3/sqlite3.h + sqlite upgraded to 3.6.22 (from 3.6.21) 2010-01-16 12:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbwin/hbwin.ch * harbour/contrib/hbwin/win_tprn.prg * harbour/contrib/hbwin/win_prn1.c + added support for custom paper size - based on code borrowed from xHarbour by Peter Rees and Budyanto Dj. Unlike in xHarbour to use custom page size it's necessary to set :FormType to FORM_CUSTOM 2010-01-16 12:20 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbct/Makefile + contrib/hbct/diskhb.prg - contrib/hbct/diskhb.c + GETVOLINFO() rewritten in pure .prg code. It means it will work on all OSes which we have core support for. This currently means dos and win. OS/2 and other systems still have this as TODO. Anyone to add them? 2010-01-16 12:08 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbct/dattime3.c ! Cleaned windows header inclusion. 2010-01-16 12:05 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbct/files.c - Deleted no longer necessary OS/2 and Windows specific headers. * contrib/hbct/print.c ! Fixed PRINTSEND() to return permanent zero (instead of NIL) on non-win/djgpp targets. 2010-01-16 12:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * 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. 2010-01-16 11:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnetio/utils/netiosrv.prg ! Fixed server not setting password. + Added command history support. + Added sysinfo command. + Added clipboard paste support. + Implemented suggestions by Przemek (QOUT(), HB_STRCLEAR()) 2010-01-16 09:53 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbwin/win_tprn.prg * updated some comments * harbour/contrib/hbwin/win_prn1.c ! replaced yet another constant value by DMORIENT_LANDSCAPE macro 2010-01-15 21:14 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/qt45.qtp * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_garbage.h * contrib/hbqt/qtgui/filelist.mk + contrib/hbqt/qtgui/QMdiArea.cpp + contrib/hbqt/qtgui/QMdiSubWindow.cpp + contrib/hbqt/qtgui/TQMdiArea.prg + contrib/hbqt/qtgui/TQMdiSubWindow.prg + contrib/hbqt/qth/QMdiArea.qth + contrib/hbqt/qth/QMdiSubWindow.qth + Added QMDiArea() and QMdiSubWindow() classes. 2010-01-16 02:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * 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. 2010-01-16 01:37 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbwin/win_prn1.c % eliminated some unnecessary HB_ISNUM( ) calls ! fixed numeric values directly assigned to HB_BOOL 2010-01-16 00:48 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * 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 2010-01-15 15:36 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * 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. 2010-01-15 21:23 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * 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 2010-01-15 20:48 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * 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 2010-01-15 20:25 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbct/disk.c ! TRUENAME() compile-time error fixed for non-win OS after recent change. * contrib/hbct/diskhb.c ! GETVOLINFO() fixed to return empty string on non-win OS. 2010-01-15 20:09 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * 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 2010-01-15 19:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * 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 2010-01-15 19:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * 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 2010-01-15 17:33 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/cmdarg.c * contrib/hbct/disk.c % Using HB_SIZEOFARRAY() instead of repeating declaration size. * src/vm/maindllp.c * src/vm/extend.c * include/hbtypes.h * include/hbapi.h + 'parinfa' retval ULONG -> HB_SIZE * src/vm/arrayshb.c * src/rtl/substr.c * src/rtl/replic.c * src/rtl/padr.c * src/rtl/padc.c * src/rtl/strtran.c * src/rtl/padl.c * src/rtl/lang.c * src/rtl/right.c * src/rtl/left.c * src/rtl/space.c * src/rtl/hbstrsh.c * src/rtl/rat.c * contrib/hbct/charsprd.c * contrib/xhb/xhbarr.c * contrib/hbpgsql/postgres.c * contrib/hbclipsm/stack.c * contrib/hbmisc/stringsx.c + 'long' -> HB_ISIZ * src/common/hbwince.c * include/hbwince.h * contrib/xhb/xhbat.c * contrib/xhb/cstructc.c + 'unsigned long' -> HB_SIZE * src/rtl/fstemp.c * src/rtl/net.c ! L'x' -> TEXT( 'x' ). 'L' was used also in non-UNICODE mode, which doesn't seem right. * src/rtl/diskspac.c * contrib/hbct/disk.c * contrib/hbwin/win_com.c * contrib/hbwin/win_prn3.c * TCHAR literals enclosed inside TEXT() macro. * contrib/hbwin/win_prn1.c ! WIN_GETPRINTERFONTNAME(): Fixed buffer overrun in UNICODE mode for font names longer than 64 bytes. [TOMERGE 2.0] * ChangeLog + Added two missed changes to this entry: 2010-01-15 12:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbdefs.h + Added HB_ISIZ temporary type to mark string/array/hash index/length variable already using signed 'long' type. This will have to converted to HB_SIZE, one HB_SIZE gets also mapped to 'long'. * HB_FATTR mapped to HB_U32 (was: unsigned long) 2010-01-15 15:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbexprb.c ! s&r error bug in recent change. * utils/hbmk2/hbmk2.prg + Accepting name=, description=, version= .hbc lines. Just a step, no real purpose. * contrib/hbodbc/odbc.c * long -> HB_SIZE * ULONG -> HB_SIZE 2010-01-15 12:17 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * 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) 2010-01-15 12:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/gtwvg/gtwvg.h * contrib/gtwvg/wvggui.c * contrib/gtwvg/wvgcuig.c * contrib/gtwvg/wvgwin.c * contrib/gtwvg/wvgutils.c * contrib/gtwvg/wvgcore.c * contrib/gtwvg/wvgwing.c * TRUE -> HB_TRUE * FALSE -> HB_FALSE 2010-01-15 12:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbdefs.h + Added HB_ISIZ temporary type to mark string/array/hash index/length variable already using signed 'long' type. This will have to converted to HB_SIZE, one HB_SIZE gets also mapped to 'long'. * HB_FATTR mapped to HB_U32 (was: unsigned long) * src/macro/macro.yyc * src/macro/macro.y * src/macro/macrolex.c * src/rtl/gtwvt/gtwvt.h * doc/en-EN/hb_apigt.txt * doc/en-EN/hb_api.txt * doc/en-EN/hb_vm.txt * doc/en-EN/hb_apiln.txt * doc/en-EN/hb_macro.txt * doc/en-EN/hb_apiit.txt * doc/en-EN/hb_apifs.txt * doc/codestyl.txt * include/hbthread.h * include/hbxvm.h * include/hbvm.h * include/hbcomp.h * include/hbcompdf.h * include/hbwmain.c * include/hbexpra.c * include/hbfloat.h * include/hbapicls.h * include/hbexprb.c * contrib/hbtpathy/tpos2.c * contrib/hbtpathy/tpunix.c * contrib/hbnf/prtscr.c * contrib/hbnf/proper.c * contrib/hbnf/fttext.c * contrib/hbnf/dispc.c * contrib/hbnf/ontick.c * contrib/hbnf/poke.c * contrib/hbpgsql/postgres.c * contrib/rddads/rddads.h * contrib/hbmisc/strfmt.c * contrib/hbmisc/ffind.c * contrib/hbwin/wapi_winbase.c * contrib/hbwin/axcore.c * contrib/hbwin/win_dll.c * examples/hbdoc/examples/core_es/hb_vm.txt * examples/hbdoc/examples/core_es/hb_apiln.txt * examples/rddado/adordd.prg * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE ; Final touches after verification of whole codebase. GTWVG still needs changes. ! Fixed FT_FBOF() returning random value after FT_USE(). ! Fixed some bool values stored in int types. 2010-01-15 02:13 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * 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. 2010-01-14 18:21 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * 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. 2010-01-15 01:45 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/compiler/cmdcheck.c * src/compiler/compi18n.c * src/compiler/complex.c * src/compiler/genc.c * src/compiler/gencc.c * src/compiler/genobj32.c * src/compiler/harbour.y * src/compiler/harbour.yyc * src/compiler/harbour.yyh * src/compiler/hbcomp.c * src/compiler/hbdead.c * src/compiler/hbfunchk.c * src/compiler/hbgenerr.c * src/compiler/hblbl.c * src/compiler/hbmain.c * src/compiler/hbopt.c * src/compiler/hbstripl.c * src/compiler/ppcomp.c * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE ; Only gtwvw is left now. But maybe some local hack will be enough there until the code is unstable. 2010-01-15 00:45 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbbmcdx/bmdbfcdx.c * contrib/hbbmcdx/hbbmcdx.h * include/hbapirdd.h * include/hbdbsort.h * include/hbrddcdx.h * include/hbrdddbf.h * include/hbrdddel.h * include/hbrddfpt.h * include/hbrddnsx.h * include/hbrddntx.h * include/hbrddsdf.h * src/rdd/dbcmd.c * src/rdd/dbcmd53.c * src/rdd/dbdetach.c * src/rdd/dbf1.c * src/rdd/dbfcdx/dbfcdx1.c * src/rdd/dbffpt/dbffpt1.c * src/rdd/dbfnsx/dbfnsx1.c * src/rdd/dbfntx/dbfntx1.c * src/rdd/dbsql.c * src/rdd/delim1.c * src/rdd/hbdbsort.c * src/rdd/hbsix/sxcompr.c * src/rdd/hbsix/sxcrypt.c * src/rdd/hbsix/sxfname.c * src/rdd/hbsix/sxord.c * src/rdd/hbsix/sxsem.c * src/rdd/hbsix/sxtable.c * src/rdd/hbsix/sxutil.c * src/rdd/hsx/hsx.c * src/rdd/nulsys/nulsys.c * src/rdd/sdf1.c * src/rdd/usrrdd/usrrdd.c * src/rdd/wacore.c * src/rdd/wafunc.c * src/rdd/workarea.c * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE 2010-01-14 23:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/rddsql/sddmy/mysqldd.c * contrib/rddsql/sddpg/pgsqldd.c * contrib/rddsql/sddfb/fbirddd.c * contrib/rddsql/sddodbc/odbcdd.c * contrib/rddsql/hbrddsql.h * contrib/rddsql/sqlbase.c * contrib/rddsql/sqlmix.c * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE 2010-01-14 23:35 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/rddads/adsx.c * contrib/rddads/adsfunc.c * contrib/rddads/rddads.h * contrib/rddads/ads1.c * contrib/rddads/adsmgmnt.c * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE ! Cleaned some bool type usage cases. 2010-01-14 22:57 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/pp/pplib.c * src/pp/ppcore.c * src/pp/hbpp.c * include/hbpp.h * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE 2010-01-14 22:04 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbct/ctnet.c * Further cleanups. * contrib/hbmemio/memio.c ! Fixed to use HB_TRUE/HB_FALSE instead of 1/0. * contrib/gtwvg/wvgwing.c + TOFIXes added to two suspicious boolean casts. * contrib/hbfimage/fi_wrp.c + Added proper conversion between Harbour boolean and FreeImage boolean value. % Optimized out unnecessary HB_ISNUM()/HB_ISLOG() calls. * contrib/hbnetio/netiocli.c * contrib/hbnetio/netiosrv.c * contrib/hbmemio/memio.c * src/nortl/nortl.c * examples/pp/pp.c * examples/pp/hbpragma.c * examples/pp/hbppcore.c * examples/pp/hbppcomp.c * examples/pp/hbppdef.h * examples/rddado/adordd.prg * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE 2010-01-14 20:09 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbct/ctnet.c * Code cleanup. * contrib/hbct/bitnum.c * contrib/hbct/screen2.c * contrib/hbct/token2.c * contrib/hbct/ctnet.c * contrib/hbct/ctwin.c * contrib/hbct/ctwin.h * contrib/hbct/files.c * contrib/hbct/video.c * contrib/hbct/dattime3.c * contrib/hbct/screen1.c * contrib/hbct/token1.c * contrib/hbct/numcount.c * contrib/hbct/ctwfunc.c * contrib/hbct/setrc.c * contrib/hbct/blank.c * contrib/hbct/disk.c * contrib/hbct/ctstrfil.c * contrib/hbct/ctstrfil.h * contrib/hbct/dattime2.c * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE 2010-01-14 10:08 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesources.prg ! Updated to latest Harbour standards : Method Definition == Method Declaration. 2010-01-14 10:03 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbp3state.prg * contrib/hbxbp/xbpbitmap.prg * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbpcheckbox.prg * contrib/hbxbp/xbpcombobox.prg * contrib/hbxbp/xbpdataref.prg * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbpfiledialog.prg * contrib/hbxbp/xbpfontdialog.prg * contrib/hbxbp/xbphtmlviewer.prg * contrib/hbxbp/xbplistbox.prg * contrib/hbxbp/xbpmenubar.prg * contrib/hbxbp/xbpmle.prg * contrib/hbxbp/xbpparthandler.prg * contrib/hbxbp/xbpprintdialog.prg * contrib/hbxbp/xbpprinter.prg * contrib/hbxbp/xbppushbutton.prg * contrib/hbxbp/xbpqtuiloader.prg * contrib/hbxbp/xbpradiobutton.prg * contrib/hbxbp/xbprtf.prg * contrib/hbxbp/xbpscrollbar.prg * contrib/hbxbp/xbpsle.prg * contrib/hbxbp/xbpspinbutton.prg * contrib/hbxbp/xbpstatic.prg * contrib/hbxbp/xbpstatusbar.prg * contrib/hbxbp/xbptabpage.prg * contrib/hbxbp/xbptoolbar.prg * contrib/hbxbp/xbptreeview.prg * contrib/hbxbp/xbpwindow.prg ! Updated to latest Harbour standards : Method Definition == Method Declaration. 2010-01-14 18:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/strclear.c + HB_STRCLEAR() return value will now precisely inform about successful clear operation. Thanks to Mindaugas. * src/vm/hashfunc.c * src/vm/macro.c * src/vm/strapi.c * src/vm/runner.c * src/vm/estack.c * src/vm/codebloc.c * src/vm/hashes.c * src/vm/maindll.c * src/vm/dynsym.c * src/vm/debug.c * src/vm/itemapi.c * src/vm/garbage.c * src/vm/asort.c * src/vm/hvm.c * src/vm/cmdarg.c * src/vm/mainstd.c * src/vm/maindllp.c * src/vm/arrays.c * src/vm/task.c * src/vm/fm.c * src/vm/proc.c * src/vm/thread.c * src/vm/memvars.c * src/vm/arrayshb.c * src/vm/eval.c * src/vm/extend.c * src/vm/dynlibhb.c * src/vm/set.c * src/vm/classes.c * src/debug/dbgentry.c * src/common/hbgete.c * src/common/hbffind.c * src/common/hbver.c * src/common/hbprintf.c * src/common/hbfsapi.c * src/common/hbstr.c * src/common/expropt1.c * src/common/expropt2.c * src/common/hbdate.c * src/common/strwild.c * src/common/hbhash.c * src/rtl/gtdos/gtdos.c * src/rtl/fscopy.c * src/rtl/run.c * src/rtl/gtwin/gtwin.c * src/rtl/gtxwc/gtxwc.h * src/rtl/gtxwc/gtxwc.c * src/rtl/math.c * src/rtl/empty.c * src/rtl/gtcrs/gtcrs.c * src/rtl/trim.c * src/rtl/filehb.c * src/rtl/hbtoken.c * src/rtl/fstemp.c * src/rtl/gtchrmap.c * src/rtl/strmatch.c * src/rtl/gtstd/gtstd.c * src/rtl/gttrm/gttrm.c * src/rtl/padr.c * src/rtl/hbstrfmt.c * src/rtl/transfrm.c * src/rtl/fserr.c * src/rtl/minmax.c * src/rtl/hbfeof.c * src/rtl/dates.c * src/rtl/padc.c * src/rtl/gtcgi/gtcgi.c * src/rtl/errapi.c * src/rtl/version.c * src/rtl/hbregexc.c * src/rtl/hbrandom.c * src/rtl/strtran.c * src/rtl/hbprocfn.c * src/rtl/hbsocket.c * src/rtl/hbinet.c * src/rtl/copyfile.c * src/rtl/errintlo.c * src/rtl/gtapi.c * src/rtl/filesys.c * src/rtl/padl.c * src/rtl/hbregex.c * src/rtl/hbbit.c * src/rtl/isprint.c * src/rtl/saverest.c * src/rtl/diskspac.c * src/rtl/console.c * src/rtl/spfiles.c * src/rtl/gtos2/gtos2.c * src/rtl/philes.c * src/rtl/hbbffnc.c * src/rtl/hbgtcore.c * src/rtl/cdpapi.c * src/rtl/dirdrive.c * src/rtl/hbi18n1.c * src/rtl/gtclip.c * src/rtl/mlcfunc.c * src/rtl/gtapiu.c * src/rtl/accept.c * src/rtl/idle.c * src/rtl/itemseri.c * src/rtl/hbrunfun.c * src/rtl/setcolor.c * src/rtl/setkey.c * src/rtl/gtsln/mousesln.c * src/rtl/gtsln/gtsln.c * src/rtl/gtsln/kbsln.c * src/rtl/gtsln/gtsln.h * src/rtl/disksphb.c * src/rtl/strc.c * src/rtl/gtpca/gtpca.c * src/rtl/gtgui/gtgui.c * src/rtl/hbhex.c * src/rtl/trace.c * src/rtl/gt_tpl/gt_tpl.c * src/rtl/inkeyapi.c * src/rtl/filebuf.c * src/rtl/gete.c * src/rtl/setcurs.c * src/rtl/hbproces.c * src/rtl/langapi.c * src/rtl/gtwvt/gtwvt.h * src/rtl/gtwvt/gtwvt.c * src/rtl/mouse53.c * src/rtl/fssize.c * src/rtl/hbbyte.c * src/rtl/mouseapi.c * src/rtl/memofile.c * src/rtl/valtostr.c * src/rtl/file.c * src/rtl/val.c * src/rtl/rat.c * src/rdd/hbsix/sxcompr.c * include/hbvmpub.h * include/hbset.h * include/hbapicdp.h * include/hbstack.h * include/hbapilng.h * include/hbgtcore.h * include/hbapifs.h * include/hbthread.h * include/hbxvm.h * include/hbmacro.h * include/hbtypes.h * include/hbapi.h * include/hbapiitm.h * include/hbznet.h * include/hbvm.h * include/hbapidbg.h * include/hbcomp.h * include/hbsxfunc.h * include/hbcompdf.h * include/hbmather.h * include/hbapistr.h * include/hbwmain.c * include/hbexpra.c * include/hbexprop.h * include/hbsocket.h * include/hbapigt.h * include/hbapicls.h * include/hbhash.h * include/hbregex.h * include/hbexprb.c * include/hbdate.h * contrib/gtalleg/gtalleg.c * contrib/xhb/hboutdbg.c * contrib/xhb/hbserv.h * contrib/xhb/bkgtsks.c * contrib/xhb/dbf2txt.c * contrib/xhb/xhbis.c * contrib/xhb/fparse.c * contrib/xhb/xhb.h * contrib/xhb/xhbsave.c * contrib/xhb/xhbmsgs.c * contrib/xhb/freadlin.c * contrib/xhb/txtline.c * contrib/xhb/dbgfxc.c * contrib/xhb/xhberrc.c * contrib/xhb/filestat.c * contrib/xhb/xhbcopyf.c * contrib/xhb/hbnxs.h * contrib/xhb/hbserv.c * contrib/xhb/cstructc.c * contrib/xhb/xhbfunc.c * contrib/hbmzip/hbmzip.c * contrib/gtqtc/gtqtc.cpp * contrib/gtwvg/gtwvg.c * contrib/gtwvg/gtwvg.h * contrib/gtwvg/wvggui.c * contrib/gtwvg/wvgcuig.c * contrib/gtwvg/wvggui.h * contrib/gtwvg/wvgwin.c * contrib/gtwvg/wvgutils.c * contrib/gtwvg/wvgcore.c * contrib/gtwvg/wvgwing.c * contrib/hbmisc/hb_f.c * contrib/hbmisc/dates2.c * contrib/hbwin/hbwapi.h * contrib/hbbtree/tests/ctest.c * BOOL -> HB_BOOL * TRUE -> HB_TRUE * FALSE -> HB_FALSE ; If possible please try to verify me, at least your own are of interest or expertise. Look for HB_BOOL/HB_TRUE/HB_FALSE usage in WINAPI calls, if you see such thing, it's wrong. Also some, HB_BOOL WINAPI BOOL implicit conversions may need to be cleaned. ; I didn't touch PP, RDD, SDD and compiler parts yet. ; In few places it's possible that some in-line comments are disaligned after this operation. 2010-01-14 13:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rdd/hbsix/sxcompr.c * src/rdd/hbsix/sxcrypt.c * include/hbsxfunc.h + ULONG -> HB_SIZE (some remain) * include/hbapiitm.h * include/hbvm.h + ULONG -> HB_SIZE (missed from prev) * contrib/hbbmcdx/bmdbfcdx.c ! Fixed another legacy call. 2010-01-14 13:20 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbdefs.h + Added HB_FATTR type to represent file attribute (mapped to unsigned long). * src/common/hbffind.c * src/rtl/fstemp.c * src/rtl/filesys.c * src/rtl/spfiles.c * src/rtl/philes.c * src/rtl/filebuf.c * include/hbapifs.h * contrib/hbct/files.c + ULONG -> HB_FATTR * contrib/hbct/charsprd.c * contrib/hbct/misc2.c * contrib/hbct/blank.c * contrib/hbct/disk.c * contrib/hbct/dattime2.c * contrib/hbct/expand.c + ULONG -> HB_SIZE * include/hbapifs.h * contrib/xhb/xhb.h + ULONG -> HB_SIZE (missed from prev) 2010-01-14 12:44 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbpp.h * harbour/src/pp/ppcore.c * harbour/src/pp/pplib.c * harbour/src/compiler/ppcomp.c + added support for __pragma( ) in #if expressions, i.e.: #if __pragma( WARNINGLEVEL ) >= 3 #stdout Warnings set to level 3 or higher #endif #if !__pragma( z ) #stdout Shortcut optimization enabled #else #stdout Force complete boolean evaluation #endif #if __pragma( kj ) #stdout NO JUMP OPTIMIZATION #endif #if __pragma( km ) #stdout MACRO TEXT SUBSTITUTION DISABLED #endif #if __pragma( kh ) #stdout HARBOUR EXTENSIONS #endif 2010-01-14 12:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/xhb/hbcrypt.c * contrib/xhb/dbf2txt.c * contrib/xhb/xstrdel.c * contrib/xhb/hbcomprs.c * contrib/xhb/txtline.c * contrib/hbbmcdx/bmdbfcdx.c ! Fixed to use current APIs instead of legacy/compatibility ones. ; Pls review the cdp ones. * src/rtl/langapi.c * include/hbapilng.h + Un-marked hb_langDGetErrorDesc() with HB_LEGACY_LEVEL3. [REVERT] 2010-01-14 12:25 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/hashfunc.c * src/vm/macro.c * src/vm/strapi.c * src/vm/codebloc.c * src/vm/hashes.c * src/vm/debug.c * src/vm/itemapi.c * src/vm/asort.c * src/vm/hvm.c * src/vm/cmdarg.c * src/vm/maindllp.c * src/vm/arrays.c * src/vm/memvars.c * src/vm/arrayshb.c * src/vm/extend.c * src/vm/set.c * src/rtl/strtran.c * include/hbxvm.h * include/hbtypes.h * include/hbapi.h * include/hbapistr.h * ULONG -> HB_SIZE 2010-01-14 11:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/gtwin/gtwin.c * src/rtl/gtcrs/gtcrs.c * src/rtl/gtstd/gtstd.c * src/rtl/gtcgi/gtcgi.c * src/rtl/gtpca/gtpca.c * src/rtl/gtgui/gtgui.c * src/rtl/gtwvt/gtwvt.c * src/rtl/transfrm.c * src/rtl/hbprocfn.c * src/rtl/console.c * src/rtl/hbgtcore.c * src/rtl/accept.c * src/rtl/hbproces.c * include/hbgtcore.h * ULONG -> HB_SIZE 2010-01-14 11:31 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/set.c * src/debug/dbgentry.c * src/common/hbgete.c * src/common/hbffind.c * src/common/hbwince.c * src/common/hbstr.c * src/common/hbmem.c * src/common/strwild.c * src/common/hbhash.c * src/rtl/lennum.c * src/rtl/strxor.c * src/rtl/strcase.c * src/rtl/hbzlibgz.c * src/rtl/trim.c * src/rtl/base64c.c * src/rtl/binnum.c * src/rtl/hbtoken.c * src/rtl/ampm.c * src/rtl/descend.c * src/rtl/strpeek.c * src/rtl/replic.c * src/rtl/padr.c * src/rtl/hbstrfmt.c * src/rtl/hbntos.c * src/rtl/hbadler.c * src/rtl/at.c * src/rtl/fserr.c * src/rtl/hbcrc.c * src/rtl/hbmd5.c * src/rtl/hbascii.c * src/rtl/padc.c * src/rtl/strzero.c * src/rtl/hbregexc.c * src/rtl/strtran.c * src/rtl/hbsocket.c * src/rtl/hbinet.c * src/rtl/strtoexp.c * src/rtl/gtapi.c * src/rtl/filesys.c * src/rtl/padl.c * src/rtl/hbregex.c * src/rtl/saverest.c * src/rtl/right.c * src/rtl/hbbffnc.c * src/rtl/cdpapi.c * src/rtl/hbi18n1.c * src/rtl/gtclip.c * src/rtl/mlcfunc.c * src/rtl/left.c * src/rtl/xsavescr.c * src/rtl/hardcr.c * src/rtl/setkey.c * src/rtl/hbzlib.c * src/rtl/strc.c * src/rtl/stuff.c * src/rtl/hbhex.c * src/rtl/trace.c * src/rtl/samples.c * src/rtl/inkeyapi.c * src/rtl/inkey.c * src/rtl/mtran.c * src/rtl/gete.c * src/rtl/mouse53.c * src/rtl/colorind.c * src/rtl/ati.c * src/rtl/soundex.c * src/rtl/memofile.c * src/rtl/valtostr.c * src/rtl/rat.c * include/hbapicdp.h * include/hbgtcore.h * include/hbapifs.h * include/hbapi.h * include/hbchksum.h * include/hbapigt.h * include/hbhash.h * contrib/xhb/hboutdbg.c * contrib/xhb/hbxml.c * contrib/xhb/hbcrypt.c * contrib/xhb/dbf2txt.c * contrib/xhb/xstrdel.c * contrib/xhb/xhbsave.c * contrib/xhb/hbcomprs.c * contrib/xhb/datesxhb.c * contrib/xhb/xhbat.c * contrib/xhb/xhbmsgs.c * contrib/xhb/xhbarr.c * contrib/xhb/txtline.c * contrib/xhb/xhbtrim.c * contrib/xhb/hbserv.c * contrib/xhb/cstructc.c * contrib/xhb/xhbfunc.c * ULONG -> HB_SIZE * src/rtl/langapi.c * include/hbapilng.h * ULONG -> int + Marked hb_langDGetErrorDesc() with HB_LEGACY_LEVEL3. * src/common/hbprintf.c ! ULONG -> int * src/debug/dbgentry.c * Formatting. 2010-01-14 10:11 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * 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' 2010-01-14 00:57 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/gtwvg/wvg3stat.prg * contrib/gtwvg/wvgax.prg * contrib/gtwvg/wvgbitmp.prg * contrib/gtwvg/wvgcheck.prg * contrib/gtwvg/wvgcombo.prg * contrib/gtwvg/wvgcrt.prg * contrib/gtwvg/wvgdarea.prg * contrib/gtwvg/wvgdatar.prg * contrib/gtwvg/wvgdlg.prg * contrib/gtwvg/wvghtmlv.prg * contrib/gtwvg/wvglistb.prg * contrib/gtwvg/wvgmenub.prg * contrib/gtwvg/wvgmle.prg * contrib/gtwvg/wvgpushb.prg * contrib/gtwvg/wvgradio.prg * contrib/gtwvg/wvgscrlb.prg * contrib/gtwvg/wvgsle.prg * contrib/gtwvg/wvgstatb.prg * contrib/gtwvg/wvgstatc.prg * contrib/gtwvg/wvgsysw.prg * contrib/gtwvg/wvgtabpg.prg * contrib/gtwvg/wvgtoolb.prg * contrib/gtwvg/wvgtreev.prg * contrib/gtwvg/wvgwnd.prg ! Methods definition matched with methods as per Harbour specs. It compiles fine but it will be wise to reformat them for consistency. 2010-01-13 22:24 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/gtwvg/wvgclass.prg ! Fixed method declarations as per current requirements. ! Formatting. 2010-01-14 05:18 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnf/mouse.c * contrib/hbnf/getver.c * contrib/hbclipsm/status.c * contrib/hbmisc/dates2.c * examples/gtwvw/gtwvw.c * examples/gtwvw/wvwstbar.c * examples/gtwvw/wvwfuncs.c % hb_arraySet( ..., hb_itemPut*() ) optimized to hb_arraySet*(). % hb_itemArrayPut( ... ) optimized to hb_arraySet*(). % hb_itemReturn() + hb_itemRelease() optimized to hb_itemReturnRelease(). ! Fixed two win64 bugs in above gtwvw calls. * contrib/hbclipsm/status.c ! Fixed wrong color string buffer declaration masked by casts. 2010-01-14 04:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/mousex.c * src/rdd/dbcmdx.c * contrib/xpp/mousex.c * contrib/xpp/dbcmdx.c * contrib/hbtpathy/tpwin.c * contrib/hbgt/bitflags.c * contrib/hbsqlit3/hbsqlit3.c * contrib/hbnf/fttext.c * contrib/hbnf/putkey.c * contrib/hbclipsm/time.c * contrib/hbtip/utils.c * contrib/hbtip/encmthd.c + BOOL/TRUE/FALSE -> HB_BOOL/HB_TRUE/HB_FALSE * contrib/hbsqlit3/hbsqlit3.c ! Marked local support functions as 'static'. * contrib/hbnf/mouse.c * BOOL -> int % Using hb_arraySet*() API. * contrib/hbgd/gdwrp.c ! Added missing hb_numToHandle() calls. 2010-01-14 04:04 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/binnumx.c * contrib/xpp/binnumx.c * contrib/hbmisc/stringsx.c * contrib/hbtip/utils.c * contrib/hbcairo/context.c * contrib/hbcairo/core.c * ULONG -> HB_SIZE * contrib/hbgt/ascposgt.c * ULONG -> HB_SIZE ! hb_parni() -> hb_parnl() * contrib/hbsqlit3/hbsqlit3.c ! ULONG -> int (var used in 3rd party interface) * contrib/hbmzip/hbmzip.c * Formatting. * contrib/hbclipsm/num.c % hb_retnl() -> hb_retni() * ULONG -> HB_SIZE * contrib/hbgd/gdwrp.c % Deleted few unnecessary ULONG casts. ! Fixed win64 problem where file handle was read from hb_parnl() instead of hb_parnint(). ! Fixed 'hb_parnl( 2 ) > -1' code checking for valid file handle to 'hb_parnint( 2 ) != FS_ERROR'. * ULONG -> HB_SIZE % Elmininated few variables. * Formatting. * contrib/hbmisc/strfmt.c * ULONG -> int, HB_SIZE * BOOL -> HB_BOOL. 2010-01-14 03:22 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * 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. 2010-01-13 18:19 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * 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. 2010-01-14 02:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/qth/QSyntaxHighlighter.qth * contrib/hbqt/hbqt_misc.prg ! Synced method declaration with definition. ; (I'm leaving hbxbp and gtwvg to Pritpal) * contrib/hbqt/qtgui/* * contrib/hbqt/qtcore/* * contrib/hbqt/qtnetwork/* * Regenerated. * contrib/hbxbp/Makefile * Sorted files alphabetically. 2010-01-14 01:44 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * 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. 2010-01-14 01:35 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * 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 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. 2010-01-14 00:30 UTC+0100 Xavi (jarabal/at/gmail.com) * harbour/contrib/hbwin/win_prn3.c * pacified warnings 2010-01-13 22:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/achoice.prg ! fixed RTE reported by Robert Skowronek - thanks for the code example ! fixed not shown immediately newly added achoice items (see Robert's example) - please verify this modification. 2010-01-13 20:14 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/hashes.c ! fixed missing HB_STACK_TLS_PRELOAD - thanks to Xavi * harbour/contrib/hbnetio/netiosrv.c ! fixed wrong declaration and casting of rpcFilter - thanks to Xavi + harbour/contrib/hbnetio/readme.txt + added small description of NETIO functions - now only client parts * harbour/contrib/hbwin/win_tprn.prg * updated class name in comments * harbour/contrib/hbwin/win_prn1.c * minor formatting * harbour/contrib/hbwin/win_prn3.c % removed unnecessary rest of buffer clearing in hb_tstrncat() 2010-01-13 18:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/tget.prg ! Fixed cursor positioning bug, when @S picture length is higher than actual edit buffer length. Thanks to Stupar for report. [TOMERGE 2.0] * contrib/hbnetio/utils/netiosrv.prg * Minor. 2010-01-13 08:53 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg ! Code cleanup. ! Started preparations for line nos dispaly commented out with #if 0/#endif construct. * contrib/hbqt/hbqt_hbslots.cpp ! Fixed to initialize the C to PRG calling block with correct parameters number. 2010-01-13 17:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/Makefile + src/rtl/strclear.c * include/hbextern.ch + Added HB_STRCLEAR() function to safely clear the content of a string variable. Notice that this method by itself can only work if the string variable has no other references, and generally you have to code carefully to avoid creating unwanted copies of the string when passing it around in an app. So this is no silver bullet, but rather just one component to solve this problem. * contrib/hbnetio/utils/netiosrv.prg + Added steps to avoid having the password stored in memory, while the server is running. * src/rtl/philes.c % Minor cleanup. 2010-01-13 15:45 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnetio/utils/netiosrv.prg + Internal change moving all server object related variables to one array. + Added 'config' command. * Changed exit command to quit to be in sync with other tools and hbrun. + Attempt to free password variable. + Showing 'unsafe' warning if RPC is enabled without filter module. 2010-01-13 15:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbsetup.ch * Disabled HB_LEGACY_LEVEL2 by default. * HB_LEGACY_OFF now controls HB_LEGACY_LEVEL3 (was HB_LEGACY_LEVEL2). + Added HB_LEGACY_LEVEL4 ; SVN users notice: This may make your C code INCOMPATIBLE with this version, please review required changes (documented in older ChangeLog entries) and update your code. Look for HB_LEGACY_LEVEL2 and INCOMPATIBLE keywords. * contrib/hbnetio/utils/netiosrv.prg + contrib/hbnetio/utils/modules.hbp + contrib/hbnetio/utils/modules + contrib/hbnetio/utils/modules/test.prg + Added simple command line to server. + Added list of possible feature as TODO. Most of these will need backend support from hbnetio lib. + Added detailed help screen. + Added --version option support. + Added support for -rpc=file.hrb option. Although for some reason (most likely my omission) it doesn't work yet. + -DHB_EXTERN will now enable inclusion of all core functions. + Added build file for .hrb modules. + Added little test module. + Added SETCANCEL( .F. ) to avoid irregular shutdown with Ctrl+C. * src/rtl/memoedit.prg ! Deleted hack which explicitly set lastkey to CTRL_END/W when exiting with changes saved. The comment said that it was added to make DBU happy, but it doesn't seem to be necessary anymore, at least I couldn't spot any problem without it. Pls check it. ! Fixed MEMOEDIT() not recognizing K_ESC as exit key when custom function is used. This fixes DBU not recognizing K_ESC as a way to exit memo editing. Please review, I'm not MEMOEDIT() user and this was such an obvious omission that I wonder if there was some real reason for it. Anyhow it was wrong before. * contrib/hbfimage/fi_wrp.c * contrib/hbclipsm/num.c * contrib/hbclipsm/numfloor.c * contrib/hbclipsm/status.c * contrib/hbclipsm/numceil.c * Formatting. 2010-01-13 13:07 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rdd/hbsix/sxcompat.prg ! fixed bug reported by Stupar: OrdSetFocus() used instead of OrdNumber() 2010-01-13 09:37 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapi.h * harbour/src/vm/hashes.c + added new function hb_hashGetCItemPtr() which accepts ASCIIZ string as index. * harbour/contrib/hbnetio/netiosrv.c + added support for using HASH arrays as RPC filter. Such hash array should be indexed by function/procedure name set of codeblocks or function references or even objects which understand EVAL method. Please remember that function names passed from client side are case sensitive so if you do not need it then please disable case matching in the hash array, i.e. using HB_HSETCASEMATCH( hValue, .F. ). * renamed NETIO_RPCFUNC() to NETIO_RPCFILTER() it's better name now because we added support for using hash arrays as RPC filters: NETIO_RPCFILTER( , | | NIL ) -> NIL * harbour/contrib/hbnetio/netiomt.prg + added support for setting RPC filter in NETIO_MTSERVER() using its 4-th parameter: NETIO_MTSERVER( [], [], [], [ | | ], [], [], [] ) -> * harbour/contrib/hbclipsm/environ.c ! fixed GPF in FILEDRIVE() function on platforms which do not support drive letters or when path does not contain drive. % small optimization in FILEPATH(), FILEBASE(), FILEEXT(), FILEDRIVE() [TOMERGE 2.0] 2010-01-11 18:12 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/qth/QTextCodec.qth * contrib/hbqt/qtcore/* * contrib/hbqt/qtgui/* * contrib/hbqt/qtnetwork/* + Implemented Linguistic Translation Mechanism base call. The next step is to feed translations into Qt's engine. This means any string sent to QWidgets will be translated through the language set with hbqt_SetCodecForTr( cCodec ). The translated string is in the context of the widget it is being applied to. TODO: Feed the translations from outer source. 2010-01-12 01:53 UTC+0500 April White (april users.sourceforge.net) * contrib/hbbtree/hb_btree.c * read-only flag is not hidden when a file is opened * allow skip size to be optional * raise error when inserting or deleting into a read-only file ! this does not apply to a created read-only file * improved argument checks * fixed TOFIX regarding portable binary format reading/writing * fixed TOFIX regarding a suspicious sizeof of a constant ! TOFIX: in-memory btree's cause a fatal error; this is a work in progress 2010-01-11 16:58 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.ch * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idefindreplace.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesources.prg + Implemented various actions on current editing window honoring splitted windows indivisually, i.e., Find/Replace, Goto, Function activated via Function List, etc., etc. Though I have attempted resonable debugging but still for sure I must have left undesirable, please report. + Thoroughly overhauled "Editor Tab" management, more elegant and encapsulated. 2010-01-12 19:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbsqlit3/hbsqlit3.c * contrib/hbfimage/fi_wrp.c ! Fixed to use hb_vmRequest*() in callbacks. * contrib/hbfimage/fi_wrp.c % Optimized FreeImageErrorHandler(). % FreeImageErrorHandler() made static. * Formatting. ; Please test and review. I didn't test these modifications at all. 2010-01-11 10:21 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_destruct.cpp + HBQT_SETCODECFORTR() * contrib/hbxbp/xbpgeneric.prg + HbXbp_SetCodecForTr( cCodec ) A step closer to internationalization. I do not know yet what other steps be needed but... 2010-01-11 08:20 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/ideprojmanager.prg ! Fixed bug reported by Marco Bra * contrib/hbqt/hbqt_destruct.cpp * contrib/hbqt/hbqt_hbqmainwindow.cpp * contrib/hbqt/qtgui/QMainWindow.cpp * contrib/hbqt/qth/QMainWindow.qth % Moved hbqt_QMainWindow_save(rest)Settings() from hbqt_destruct.cpp to QMainWindow.cpp. 2010-01-12 16:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbstr.c * Formatting. * contrib/hbwin/win_prn3.c + Added static versions of strlen and strncat working on TCHARs, to replace lstrlen(), lstrcat() unsafe calls. * contrib/hbnetio/utils/netiosrv.prg + Option renamed: -addr= -> -iface= + Added warning for unknown options. * contrib/hbnetio/tests/netiot02.prg + Date setup. * contrib/hbcurl/hbcurl.c * contrib/hbssl/ssl.c * contrib/hbssl/pem.c ! Wrapped hb_vmEvalBlockV() calls between hb_vmRequestReender() and hb_vmRequestRestore() call pairs. [TOMERGE 2.0] 2010-01-12 15:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/examples/gtwvw/gtwvw.c * updated to use hbgtreg.h to register the GT 2010-01-12 13:08 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnetio/utils/netiosrv.prg + Added new parameter parsing allowing to pass options in free order in any combination. 2010-01-12 12:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnetio/utils/netiosrv.hbp + Now includes hbmk.hbm so that the .hbp file works when hbmk2 is launched from other directory. 2010-01-11 01:52 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_destruct.cpp + Added .prg callable hbqt_QMainWindow_saveSettings() and hbqt_QMainWindow_restSettings(). These two functions are essential to save and restore last hbIDE interface exactly in the same state it was closed last. This I could not achieve via pure .prg code. * contrib/hbide/hbide.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idesaveload.prg + Implemented restoring exact geometry of main window plus all the docking windows plus toolbars. hbIDE creates idesettings.ini in the folder returned by hb_dirBase(). Note that idesettings.ini is not a windows .ini format and please do not try to change even a single byte of its contents. + Implemented splitting any source into multiple windows. This implementation allows you to edit different parts of same source simultaneously. This feature allows you to split window horizontally or vertically. You can split many times. This feature can be activated as such: 1. Right-click somewhere in the editing tab 2. Context menu will be displayed, point to item 3. Select from "Split Horiz..." etc. Please report any functionality which may be incorporated hereunder. 2010-01-11 08:12 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + contrib/hbide/resources/findsource.ui %+ TOBE implemented in "Sources List" tabpage of "Project Properties" dialog. * contrib/hbide/resources/projectproperties.ui + Added some buttons to "Sources List" tabpage. * contrib/hbide/hbide.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideprojmanager.prg + Implemented case-insensitive sorting of source files list per: 1) Ascending 2) Descending 3) Organized per source type { ".ch", ".prg", ".c", ".cpp", ".h", ".obj", ".o", ".lib", ".a", ".rc", ".res" } This may look like : # # .prg # C:\MySources\abc.prg C:\MySources\harbour.prg C:\MySources\system.prg # .c C:\MySources\a.c C:\MySources\zaa.c Opinions are welcome. 2010-01-11 19:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbnetio/netio.h * harbour/contrib/hbnetio/netiomt.prg * harbour/contrib/hbnetio/netiocli.c * harbour/contrib/hbnetio/netiosrv.c * updated some comments * harbour/examples/gtwvw/gtwvw.c ! fixed typo in HB_TRACE() message 2010-01-11 08:12 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/ideeditor.prg * contrib/hbide/idesources.prg * contrib/hbide/resources/projectproperties.ui ! Re-worked "New" file management. 2010-01-11 16:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + harbour/contrib/hbnetio/tests/netiot02.prg + added yet another example of NETIO client. It needs netiosrv executed on the same machine, see comments inside this code for details. 2010-01-11 14:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbnetio/tests/netiotst.prg * added netio_disconnect() to test code * harbour/ChangeLog * harbour/examples/gtwvw/gtwvw.c ! replaced TABs with spaces * harbour/contrib/hbnetio/tests/hbmk.hbm * harbour/examples/hbdoc/examples/hbmisc/readme.txt * harbour/examples/gtwvw/hbgtwvw.h * harbour/examples/gtwvw/hbole.h ! fixed hardcoded \r\n EOLs * harbour/src/vm/strapi.c * harbour/src/common/strwild.c * harbour/src/nortl/nortl.c * harbour/src/nortl/Makefile * harbour/src/rtl/hbascii.c * harbour/src/rtl/hbsocket.c * harbour/src/rtl/hbbffnc.c * harbour/src/rtl/hbznet.c * harbour/src/rtl/hbbfish.c * harbour/src/rtl/hbbyte.c * harbour/src/codepage/uc646_yu.c * harbour/src/codepage/cphriso.c * harbour/src/rdd/dbrename.c * harbour/tests/cpinfo.prg * harbour/include/hbmsgreg.h * harbour/include/hbgtreg.h * harbour/include/hbznet.h * harbour/include/hbmather.h * harbour/include/hbsocket.ch * harbour/include/hbtrace.ch * harbour/include/hbapistr.h * harbour/include/hbiniseg.h * harbour/include/hbsocket.h * harbour/include/hbbfish.h * harbour/include/hbcdpreg.h * harbour/include/hbfloat.h * harbour/contrib/hbqt/qtgui/QPageSetupDialog.cpp * harbour/contrib/hbqt/qtgui/QDragEnterEvent.cpp * harbour/contrib/hbqt/qtgui/TQToolBox.prg * harbour/contrib/hbqt/qtgui/QGridLayout.cpp * harbour/contrib/hbqt/qtgui/TQTreeView.prg * harbour/contrib/hbqt/qtgui/TQTextCharFormat.prg * harbour/contrib/hbqt/qtgui/QItemSelectionModel.cpp * harbour/contrib/hbqt/qtgui/TQTextLine.prg * harbour/contrib/hbqt/qtgui/QConicalGradient.cpp * harbour/contrib/hbqt/qtgui/QTextLength.cpp * harbour/contrib/hbqt/qtgui/TQInputEvent.prg * harbour/contrib/hbqt/qtgui/TQWidgetItem.prg * harbour/contrib/hbqt/qtgui/TQTextItem.prg * harbour/contrib/hbqt/qtgui/QGradient.cpp * harbour/contrib/hbqt/qtgui/TQTimeEdit.prg * harbour/contrib/hbqt/qtgui/TQDropEvent.prg * harbour/contrib/hbqt/qtgui/QStandardItemModel.cpp * harbour/contrib/hbqt/qtgui/QItemSelection.cpp * harbour/contrib/hbqt/qtgui/TQTextObject.prg * harbour/contrib/hbqt/qtgui/TQPainterPath.prg * harbour/contrib/hbqt/qtgui/QTransform.cpp * harbour/contrib/hbqt/qtgui/QPicture.cpp * harbour/contrib/hbqt/qtgui/QAction.cpp * harbour/contrib/hbqt/qtgui/QPaintEvent.cpp * harbour/contrib/hbqt/qtgui/TQStyleHintReturn.prg * harbour/contrib/hbqt/qtgui/QStyledItemDelegate.cpp * harbour/contrib/hbqt/qtgui/QWidget.cpp * harbour/contrib/hbqt/qtgui/TQProgressBar.prg * harbour/contrib/hbqt/qtgui/TQFontDatabase.prg * harbour/contrib/hbqt/qtgui/QFontDialog.cpp * harbour/contrib/hbqt/qtgui/QToolBox.cpp * harbour/contrib/hbqt/qtgui/TQLineEdit.prg * harbour/contrib/hbqt/qtgui/TQHBoxLayout.prg * harbour/contrib/hbqt/qtgui/QTextListFormat.cpp * harbour/contrib/hbqt/qtgui/QMouseEvent.cpp * harbour/contrib/hbqt/qtgui/QTextEdit.cpp * harbour/contrib/hbqt/qtgui/TQToolBar.prg * harbour/contrib/hbqt/qtgui/TQTreeWidget.prg * harbour/contrib/hbqt/qtgui/QFontComboBox.cpp * harbour/contrib/hbqt/qtgui/TQSplitter.prg * harbour/contrib/hbqt/qtgui/QStyle.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionHeader.cpp * harbour/contrib/hbqt/qtgui/TQComboBox.prg * harbour/contrib/hbqt/qtgui/QAbstractTextDocumentLayout.cpp * harbour/contrib/hbqt/qtgui/QListView.cpp * harbour/contrib/hbqt/qtgui/QWheelEvent.cpp * harbour/contrib/hbqt/qtgui/TQAbstractItemDelegate.prg * harbour/contrib/hbqt/qtgui/TQSessionManager.prg * harbour/contrib/hbqt/qtgui/QRadialGradient.cpp * harbour/contrib/hbqt/qtgui/QLayout.cpp * harbour/contrib/hbqt/qtgui/QCursor.cpp * harbour/contrib/hbqt/qtgui/TQProgressDialog.prg * harbour/contrib/hbqt/qtgui/QPainterPath.cpp * harbour/contrib/hbqt/qtgui/QLabel.cpp * harbour/contrib/hbqt/qtgui/TQBoxLayout.prg * harbour/contrib/hbqt/qtgui/TQPolygon.prg * harbour/contrib/hbqt/qtgui/QFocusEvent.cpp * harbour/contrib/hbqt/qtgui/QBrush.cpp * harbour/contrib/hbqt/qtgui/QStyleHintReturn.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionToolButton.cpp * harbour/contrib/hbqt/qtgui/QStylePainter.cpp * harbour/contrib/hbqt/qtgui/TQRadioButton.prg * harbour/contrib/hbqt/qtgui/TQSystemTrayIcon.prg * harbour/contrib/hbqt/qtgui/QLinearGradient.cpp * harbour/contrib/hbqt/qtgui/TQListWidgetItem.prg * harbour/contrib/hbqt/qtgui/QProgressBar.cpp * harbour/contrib/hbqt/qtgui/TQTextBlock.prg * harbour/contrib/hbqt/qtgui/TQTextFrame.prg * harbour/contrib/hbqt/qtgui/QDragLeaveEvent.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionViewItem.prg * harbour/contrib/hbqt/qtgui/TQInputContext.prg * harbour/contrib/hbqt/qtgui/QClipboard.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionToolBox.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionTabBarBase.cpp * harbour/contrib/hbqt/qtgui/QToolBar.cpp * harbour/contrib/hbqt/qtgui/TQStatusBar.prg * harbour/contrib/hbqt/qtgui/TQTextBlockFormat.prg * harbour/contrib/hbqt/qtgui/TQTextFrameFormat.prg * harbour/contrib/hbqt/qtgui/QFontMetricsF.cpp * harbour/contrib/hbqt/qtgui/TQTabWidget.prg * harbour/contrib/hbqt/qtgui/TQLCDNumber.prg * harbour/contrib/hbqt/qtgui/TQMainWindow.prg * harbour/contrib/hbqt/qtgui/QToolButton.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionTitleBar.prg * harbour/contrib/hbqt/qtgui/QWindowsStyle.cpp * harbour/contrib/hbqt/qtgui/TQDockWidget.prg * harbour/contrib/hbqt/qtgui/QColor.cpp * harbour/contrib/hbqt/qtgui/QListWidget.cpp * harbour/contrib/hbqt/qtgui/QTextLayout.cpp * harbour/contrib/hbqt/qtgui/QTextCursor.cpp * harbour/contrib/hbqt/qtgui/TQSound.prg * harbour/contrib/hbqt/qtgui/QTextDocument.cpp * harbour/contrib/hbqt/qtgui/TQHelpEvent.prg * harbour/contrib/hbqt/qtgui/QAbstractProxyModel.cpp * harbour/contrib/hbqt/qtgui/QPolygon.cpp * harbour/contrib/hbqt/qtgui/TQGradient.prg * harbour/contrib/hbqt/qtgui/TQAbstractPrintDialog.prg * harbour/contrib/hbqt/qtgui/QRadioButton.cpp * harbour/contrib/hbqt/qtgui/TQWizard.prg * harbour/contrib/hbqt/qtgui/TQApplication.prg * harbour/contrib/hbqt/qtgui/QAbstractButton.cpp * harbour/contrib/hbqt/qtgui/TQSyntaxHighlighter.prg * harbour/contrib/hbqt/qtgui/QStyleOptionViewItem.cpp * harbour/contrib/hbqt/qtgui/QFileIconProvider.cpp * harbour/contrib/hbqt/qtgui/TQTextOption.prg * harbour/contrib/hbqt/qtgui/QTextFrameFormat.cpp * harbour/contrib/hbqt/qtgui/QTextBlockFormat.cpp * harbour/contrib/hbqt/qtgui/TQInputDialog.prg * harbour/contrib/hbqt/qtgui/TQMovie.prg * harbour/contrib/hbqt/qtgui/TQKeySequence.prg * harbour/contrib/hbqt/qtgui/QStyleOptionToolBar.cpp * harbour/contrib/hbqt/qtgui/QBitmap.cpp * harbour/contrib/hbqt/qtgui/QCalendarWidget.cpp * harbour/contrib/hbqt/qtgui/TQPrinter.prg * harbour/contrib/hbqt/qtgui/QStyleOptionTitleBar.cpp * harbour/contrib/hbqt/qtgui/QHeaderView.cpp * harbour/contrib/hbqt/qtgui/QScrollBar.cpp * harbour/contrib/hbqt/qtgui/TQActionGroup.prg * harbour/contrib/hbqt/qtgui/TQTextEdit.prg * harbour/contrib/hbqt/qtgui/QStyleOptionButton.cpp * harbour/contrib/hbqt/qtgui/TQWizardPage.prg * harbour/contrib/hbqt/qtgui/QCommandLinkButton.cpp * harbour/contrib/hbqt/qtgui/TQFontComboBox.prg * harbour/contrib/hbqt/qtgui/QFocusFrame.cpp * harbour/contrib/hbqt/qtgui/QSizePolicy.cpp * harbour/contrib/hbqt/qtgui/TQListView.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionSizeGrip.prg * harbour/contrib/hbqt/qtgui/QAbstractPrintDialog.cpp * harbour/contrib/hbqt/qtgui/QApplication.cpp * harbour/contrib/hbqt/qtgui/TQTextBlockGroup.prg * harbour/contrib/hbqt/qtgui/QAbstractSlider.cpp * harbour/contrib/hbqt/qtgui/QTextFragment.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionGroupBox.prg * harbour/contrib/hbqt/qtgui/Makefile * harbour/contrib/hbqt/qtgui/QAbstractScrollArea.cpp * harbour/contrib/hbqt/qtgui/TQPrintEngine.prg * harbour/contrib/hbqt/qtgui/TQStylePainter.prg * harbour/contrib/hbqt/qtgui/QPlainTextEdit.cpp * harbour/contrib/hbqt/qtgui/QInputDialog.cpp * harbour/contrib/hbqt/qtgui/QKeySequence.cpp * harbour/contrib/hbqt/qtgui/QPrinter.cpp * harbour/contrib/hbqt/qtgui/TQMessageBox.prg * harbour/contrib/hbqt/qtgui/QKeyEvent.cpp * harbour/contrib/hbqt/qtgui/QActionGroup.cpp * harbour/contrib/hbqt/qtgui/QTextCharFormat.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionSlider.cpp * harbour/contrib/hbqt/qtgui/TQFontMetricsF.prg * harbour/contrib/hbqt/qtgui/TQDragMoveEvent.prg * harbour/contrib/hbqt/qtgui/QInputEvent.cpp * harbour/contrib/hbqt/qtgui/QWidgetItem.cpp * harbour/contrib/hbqt/qtgui/TQCommonStyle.prg * harbour/contrib/hbqt/qtgui/QMenu.cpp * harbour/contrib/hbqt/qtgui/TQWindowsStyle.prg * harbour/contrib/hbqt/qtgui/TQPushButton.prg * harbour/contrib/hbqt/qtgui/QStyleOptionSizeGrip.cpp * harbour/contrib/hbqt/qtgui/TQDoubleSpinBox.prg * harbour/contrib/hbqt/qtgui/QTextObject.cpp * harbour/contrib/hbqt/qtgui/TQTreeWidgetItem.prg * harbour/contrib/hbqt/qtgui/TQTableView.prg * harbour/contrib/hbqt/qtgui/TQTextDocument.prg * harbour/contrib/hbqt/qtgui/QStyleOptionGroupBox.cpp * harbour/contrib/hbqt/qtgui/QPrintEngine.cpp * harbour/contrib/hbqt/qtgui/QFontInfo.cpp * harbour/contrib/hbqt/qtgui/QImage.cpp * harbour/contrib/hbqt/qtgui/TQButtonGroup.prg * harbour/contrib/hbqt/qtgui/TQFrame.prg * harbour/contrib/hbqt/qtgui/TQCompleter.prg * harbour/contrib/hbqt/qtgui/QValidator.cpp * harbour/contrib/hbqt/qtgui/TQTextFormat.prg * harbour/contrib/hbqt/qtgui/QIcon.cpp * harbour/contrib/hbqt/qtgui/TQColorDialog.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionProgressBar.prg * harbour/contrib/hbqt/qtgui/QPolygonF.cpp * harbour/contrib/hbqt/qtgui/TQFileIconProvider.prg * harbour/contrib/hbqt/qtgui/QHBoxLayout.cpp * harbour/contrib/hbqt/qtgui/TQStyleHintReturnVariant.prg * harbour/contrib/hbqt/qtgui/QTreeWidget.cpp * harbour/contrib/hbqt/qtgui/QCommonStyle.cpp * harbour/contrib/hbqt/qtgui/TQTextDocumentWriter.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionTab.prg * harbour/contrib/hbqt/qtgui/TQStringListModel.prg * harbour/contrib/hbqt/qtgui/QAbstractItemView.cpp * harbour/contrib/hbqt/qtgui/QSessionManager.cpp * harbour/contrib/hbqt/qtgui/TQTextBrowser.prg * harbour/contrib/hbqt/qtgui/QProgressDialog.cpp * harbour/contrib/hbqt/qtgui/TQTableWidget.prg * harbour/contrib/hbqt/qtgui/TQTabBar.prg * harbour/contrib/hbqt/qtgui/TQSpacerItem.prg * harbour/contrib/hbqt/qtgui/QButtonGroup.cpp * harbour/contrib/hbqt/qtgui/QStyleFactory.cpp * harbour/contrib/hbqt/qtgui/TQDialog.prg * harbour/contrib/hbqt/qtgui/TQFileDialog.prg * harbour/contrib/hbqt/qtgui/TQStandardItemModel.prg * harbour/contrib/hbqt/qtgui/TQFormLayout.prg * harbour/contrib/hbqt/qtgui/QSystemTrayIcon.cpp * harbour/contrib/hbqt/qtgui/TQItemSelection.prg * harbour/contrib/hbqt/qtgui/QListWidgetItem.cpp * harbour/contrib/hbqt/qtgui/QColorDialog.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionDockWidget.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionTabWidgetFrame.cpp * harbour/contrib/hbqt/qtgui/TQFileSystemModel.prg * harbour/contrib/hbqt/qtgui/TQAbstractSpinBox.prg * harbour/contrib/hbqt/qtgui/TQTextFragment.prg * harbour/contrib/hbqt/qtgui/QInputMethodEvent.cpp * harbour/contrib/hbqt/qtgui/QDateTimeEdit.cpp * harbour/contrib/hbqt/qtgui/TQTransform.prg * harbour/contrib/hbqt/qtgui/TQVBoxLayout.prg * harbour/contrib/hbqt/qtgui/QStyleOptionFocusRect.cpp * harbour/contrib/hbqt/qtgui/QMoveEvent.cpp * harbour/contrib/hbqt/qtgui/TQImageWriter.prg * harbour/contrib/hbqt/qtgui/QMainWindow.cpp * harbour/contrib/hbqt/qtgui/QDesktopWidget.cpp * harbour/contrib/hbqt/qtgui/QTableWidgetSelectionRange.cpp * harbour/contrib/hbqt/qtgui/QWidgetAction.cpp * harbour/contrib/hbqt/qtgui/TQMenuBar.prg * harbour/contrib/hbqt/qtgui/QStringListModel.cpp * harbour/contrib/hbqt/qtgui/TQKeyEvent.prg * harbour/contrib/hbqt/qtgui/QDockWidget.cpp * harbour/contrib/hbqt/qtgui/TQPaintDevice.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionMenuItem.prg * harbour/contrib/hbqt/qtgui/TQFontMetrics.prg * harbour/contrib/hbqt/qtgui/QTextBrowser.cpp * harbour/contrib/hbqt/qtgui/TQStyle.prg * harbour/contrib/hbqt/qtgui/QTableWidget.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionHeader.prg * harbour/contrib/hbqt/qtgui/TQMenu.prg * harbour/contrib/hbqt/qtgui/TQMatrix.prg * harbour/contrib/hbqt/qtgui/QErrorMessage.cpp * harbour/contrib/hbqt/qtgui/QWizard.cpp * harbour/contrib/hbqt/qtgui/QFileSystemModel.cpp * harbour/contrib/hbqt/qtgui/TQPrintDialog.prg * harbour/contrib/hbqt/qtgui/QAbstractSpinBox.cpp * harbour/contrib/hbqt/qtgui/TQPrintPreviewDialog.prg * harbour/contrib/hbqt/qtgui/TQLabel.prg * harbour/contrib/hbqt/qtgui/QDial.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionComboBox.prg * harbour/contrib/hbqt/qtgui/TQSlider.prg * harbour/contrib/hbqt/qtgui/TQFontInfo.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionToolButton.prg * harbour/contrib/hbqt/qtgui/QTextOption.cpp * harbour/contrib/hbqt/qtgui/TQBrush.prg * harbour/contrib/hbqt/qtgui/QImageWriter.cpp * harbour/contrib/hbqt/qtgui/TQScrollArea.prg * harbour/contrib/hbqt/qtgui/TQIcon.prg * harbour/contrib/hbqt/qtgui/TQLayoutItem.prg * harbour/contrib/hbqt/qtgui/TQPolygonF.prg * harbour/contrib/hbqt/qtgui/TQPixmap.prg * harbour/contrib/hbqt/qtgui/QMenuBar.cpp * harbour/contrib/hbqt/qtgui/TQClipboard.prg * harbour/contrib/hbqt/qtgui/TQTextImageFormat.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionTabBarBase.prg * harbour/contrib/hbqt/qtgui/QPaintDevice.cpp * harbour/contrib/hbqt/qtgui/QFontMetrics.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionMenuItem.cpp * harbour/contrib/hbqt/qtgui/QWizardPage.cpp * harbour/contrib/hbqt/qtgui/TQImageReader.prg * harbour/contrib/hbqt/qtgui/QDropEvent.cpp * harbour/contrib/hbqt/qtgui/TQAbstractItemView.prg * harbour/contrib/hbqt/qtgui/TQColor.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionComplex.prg * harbour/contrib/hbqt/qtgui/QTextBlockGroup.cpp * harbour/contrib/hbqt/qtgui/QPrintDialog.cpp * harbour/contrib/hbqt/qtgui/TQRegion.prg * harbour/contrib/hbqt/qtgui/QStandardItem.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionComboBox.cpp * harbour/contrib/hbqt/qtgui/TQStyleFactory.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionSpinBox.prg * harbour/contrib/hbqt/qtgui/TQPalette.prg * harbour/contrib/hbqt/qtgui/QSplashScreen.cpp * harbour/contrib/hbqt/qtgui/TQDateTimeEdit.prg * harbour/contrib/hbqt/qtgui/QSizeGrip.cpp * harbour/contrib/hbqt/qtgui/TQInputMethodEvent.prg * harbour/contrib/hbqt/qtgui/TQPainter.prg * harbour/contrib/hbqt/qtgui/QMessageBox.cpp * harbour/contrib/hbqt/qtgui/TQResizeEvent.prg * harbour/contrib/hbqt/qtgui/TQTextTableFormat.prg * harbour/contrib/hbqt/qtgui/QTextImageFormat.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionFocusRect.prg * harbour/contrib/hbqt/qtgui/QGroupBox.cpp * harbour/contrib/hbqt/qtgui/QImageReader.cpp * harbour/contrib/hbqt/qtgui/TQDragEnterEvent.prg * harbour/contrib/hbqt/qtgui/QTextDocumentFragment.cpp * harbour/contrib/hbqt/qtgui/QPushButton.cpp * harbour/contrib/hbqt/qtgui/TQWidgetAction.prg * harbour/contrib/hbqt/qtgui/TQGridLayout.prg * harbour/contrib/hbqt/qtgui/TQScrollBar.prg * harbour/contrib/hbqt/qtgui/TQItemSelectionModel.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionButton.prg * harbour/contrib/hbqt/qtgui/TQTextLength.prg * harbour/contrib/hbqt/qtgui/TQCommandLinkButton.prg * harbour/contrib/hbqt/qtgui/QTreeWidgetItem.cpp * harbour/contrib/hbqt/qtgui/QBoxLayout.cpp * harbour/contrib/hbqt/qtgui/TQErrorMessage.prg * harbour/contrib/hbqt/qtgui/QTextFormat.cpp * harbour/contrib/hbqt/qtgui/QPalette.cpp * harbour/contrib/hbqt/qtgui/QTextFrame.cpp * harbour/contrib/hbqt/qtgui/QTextBlock.cpp * harbour/contrib/hbqt/qtgui/QPainter.cpp * harbour/contrib/hbqt/qtgui/TQDial.prg * harbour/contrib/hbqt/qtgui/QStyleOptionProgressBar.cpp * harbour/contrib/hbqt/qtgui/QResizeEvent.cpp * harbour/contrib/hbqt/qtgui/TQTableWidgetItem.prg * harbour/contrib/hbqt/qtgui/QTextTableFormat.cpp * harbour/contrib/hbqt/qtgui/TQAction.prg * harbour/contrib/hbqt/qtgui/TQPaintEvent.prg * harbour/contrib/hbqt/qtgui/QStyleHintReturnVariant.cpp * harbour/contrib/hbqt/qtgui/QStatusBar.cpp * harbour/contrib/hbqt/qtgui/TQStyledItemDelegate.prg * harbour/contrib/hbqt/qtgui/TQPlainTextEdit.prg * harbour/contrib/hbqt/qtgui/QTextInlineObject.cpp * harbour/contrib/hbqt/qtgui/QTabWidget.cpp * harbour/contrib/hbqt/qtgui/QContextMenuEvent.cpp * harbour/contrib/hbqt/qtgui/QLCDNumber.cpp * harbour/contrib/hbqt/qtgui/TQWidget.prg * harbour/contrib/hbqt/qtgui/TQFontDialog.prg * harbour/contrib/hbqt/qtgui/QTextDocumentWriter.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionTab.cpp * harbour/contrib/hbqt/qtgui/QDateEdit.cpp * harbour/contrib/hbqt/qtgui/TQStyleOption.prg * harbour/contrib/hbqt/qtgui/TQTextListFormat.prg * harbour/contrib/hbqt/qtgui/TQMouseEvent.prg * harbour/contrib/hbqt/qtgui/QCheckBox.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionSlider.prg * harbour/contrib/hbqt/qtgui/QSound.cpp * harbour/contrib/hbqt/qtgui/QHelpEvent.cpp * harbour/contrib/hbqt/qtgui/QTabBar.cpp * harbour/contrib/hbqt/qtgui/QSpacerItem.cpp * harbour/contrib/hbqt/qtgui/TQAbstractTextDocumentLayout.prg * harbour/contrib/hbqt/qtgui/QFileDialog.cpp * harbour/contrib/hbqt/qtgui/QDirModel.cpp * harbour/contrib/hbqt/qtgui/QDialog.cpp * harbour/contrib/hbqt/qtgui/TQWheelEvent.prg * harbour/contrib/hbqt/qtgui/QFormLayout.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionFrame.cpp * harbour/contrib/hbqt/qtgui/TQRadialGradient.prg * harbour/contrib/hbqt/qtgui/QSyntaxHighlighter.cpp * harbour/contrib/hbqt/qtgui/QFont.cpp * harbour/contrib/hbqt/qtgui/TQCursor.prg * harbour/contrib/hbqt/qtgui/TQLayout.prg * harbour/contrib/hbqt/qtgui/TQStandardItem.prg * harbour/contrib/hbqt/qtgui/QTableWidgetItem.cpp * harbour/contrib/hbqt/qtgui/TQFocusEvent.prg * harbour/contrib/hbqt/qtgui/QVBoxLayout.cpp * harbour/contrib/hbqt/qtgui/TQImage.prg * harbour/contrib/hbqt/qtgui/TQSpinBox.prg * harbour/contrib/hbqt/qtgui/QMovie.cpp * harbour/contrib/hbqt/qtgui/TQValidator.prg * harbour/contrib/hbqt/qtgui/TQLinearGradient.prg * harbour/contrib/hbqt/qtgui/TQSplashScreen.prg * harbour/contrib/hbqt/qtgui/TQDragLeaveEvent.prg * harbour/contrib/hbqt/qtgui/TQSizeGrip.prg * harbour/contrib/hbqt/qtgui/QStyleOption.cpp * harbour/contrib/hbqt/qtgui/TQStyleHintReturnMask.prg * harbour/contrib/hbqt/qtgui/QTreeView.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionToolBox.prg * harbour/contrib/hbqt/qtgui/QTextLine.cpp * harbour/contrib/hbqt/qtgui/TQGroupBox.prg * harbour/contrib/hbqt/qtgui/TQTextDocumentFragment.prg * harbour/contrib/hbqt/qtgui/QTextItem.cpp * harbour/contrib/hbqt/qtgui/TQToolButton.prg * harbour/contrib/hbqt/qtgui/QTimeEdit.cpp * harbour/contrib/hbqt/qtgui/QMatrix.cpp * harbour/contrib/hbqt/qtgui/TQListWidget.prg * harbour/contrib/hbqt/qtgui/TQPen.prg * harbour/contrib/hbqt/qtgui/TQTextCursor.prg * harbour/contrib/hbqt/qtgui/TQTextLayout.prg * harbour/contrib/hbqt/qtgui/QPrintPreviewDialog.cpp * harbour/contrib/hbqt/qtgui/TQAbstractProxyModel.prg * harbour/contrib/hbqt/qtgui/QSlider.cpp * harbour/contrib/hbqt/qtgui/QSpinBox.cpp * harbour/contrib/hbqt/qtgui/QScrollArea.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionDockWidget.prg * harbour/contrib/hbqt/qtgui/TQAbstractButton.prg * harbour/contrib/hbqt/qtgui/TQStyleOptionTabWidgetFrame.prg * harbour/contrib/hbqt/qtgui/QFontDatabase.cpp * harbour/contrib/hbqt/qtgui/QLayoutItem.cpp * harbour/contrib/hbqt/qtgui/QLineEdit.cpp * harbour/contrib/hbqt/qtgui/QPixmap.cpp * harbour/contrib/hbqt/qtgui/QStyleHintReturnMask.cpp * harbour/contrib/hbqt/qtgui/TQMoveEvent.prg * harbour/contrib/hbqt/qtgui/TQTextInlineObject.prg * harbour/contrib/hbqt/qtgui/TQContextMenuEvent.prg * harbour/contrib/hbqt/qtgui/TQBitmap.prg * harbour/contrib/hbqt/qtgui/QDragMoveEvent.cpp * harbour/contrib/hbqt/qtgui/QSplitter.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionToolBar.prg * harbour/contrib/hbqt/qtgui/TQDesktopWidget.prg * harbour/contrib/hbqt/qtgui/TQCalendarWidget.prg * harbour/contrib/hbqt/qtgui/TQPageSetupDialog.prg * harbour/contrib/hbqt/qtgui/QComboBox.cpp * harbour/contrib/hbqt/qtgui/TQTableWidgetSelectionRange.prg * harbour/contrib/hbqt/qtgui/TQDateEdit.prg * harbour/contrib/hbqt/qtgui/QDoubleSpinBox.cpp * harbour/contrib/hbqt/qtgui/QAbstractItemDelegate.cpp * harbour/contrib/hbqt/qtgui/TQHeaderView.prg * harbour/contrib/hbqt/qtgui/TQConicalGradient.prg * harbour/contrib/hbqt/qtgui/TQCheckBox.prg * harbour/contrib/hbqt/qtgui/QStyleOptionComplex.cpp * harbour/contrib/hbqt/qtgui/QTableView.cpp * harbour/contrib/hbqt/qtgui/QPen.cpp * harbour/contrib/hbqt/qtgui/QRegion.cpp * harbour/contrib/hbqt/qtgui/TQFocusFrame.prg * harbour/contrib/hbqt/qtgui/TQSizePolicy.prg * harbour/contrib/hbqt/qtgui/TQDirModel.prg * harbour/contrib/hbqt/qtgui/QFrame.cpp * harbour/contrib/hbqt/qtgui/QCompleter.cpp * harbour/contrib/hbqt/qtgui/QStyleOptionSpinBox.cpp * harbour/contrib/hbqt/qtgui/TQStyleOptionFrame.prg * harbour/contrib/hbqt/qtgui/TQFont.prg * harbour/contrib/hbqt/qtgui/TQAbstractSlider.prg * harbour/contrib/hbqt/qtgui/QInputContext.cpp * harbour/contrib/hbqt/qtgui/TQAbstractScrollArea.prg * harbour/contrib/hbqt/qtgui/TQPicture.prg * harbour/contrib/hbqt/qtcore/TQSettings.prg * harbour/contrib/hbqt/qtcore/QSettings.cpp * harbour/contrib/hbqt/qtcore/TQUiLoader.prg * harbour/contrib/hbqt/qtcore/QUiLoader.cpp * harbour/contrib/hbqt/hbqt_errorsys.prg * harbour/contrib/hbqt/hbqt_destruct.cpp * harbour/contrib/hbqt/qtnetwork/QHttp.cpp * harbour/contrib/hbqt/qtnetwork/TQHttpHeader.prg * harbour/contrib/hbqt/qtnetwork/TQFtp.prg * harbour/contrib/hbqt/qtnetwork/QHttpHeader.cpp * harbour/contrib/hbqt/qtnetwork/QFtp.cpp * harbour/contrib/hbqt/qtnetwork/TQHttpRequestHeader.prg * harbour/contrib/hbqt/qtnetwork/TQNetworkRequest.prg * harbour/contrib/hbqt/qtnetwork/TQHttpResponseHeader.prg * harbour/contrib/hbqt/qtnetwork/QHttpRequestHeader.cpp * harbour/contrib/hbqt/qtnetwork/QNetworkRequest.cpp * harbour/contrib/hbqt/qtnetwork/QHttpResponseHeader.cpp * harbour/contrib/hbqt/qtnetwork/TQHttp.prg * harbour/contrib/hbqt/qtnetwork/Makefile * harbour/contrib/hbqt/hbqt_misc.prg * harbour/contrib/hbxbp/xbppresspace.prg * harbour/contrib/hbxbp/xbprtf.prg * harbour/contrib/hbxbp/xbpbrowse.prg * harbour/contrib/hbxbp/xbpprintdialog.prg * harbour/contrib/hbxbp/xbpdev.ch * harbour/contrib/hbxbp/xbpprinter.prg * harbour/contrib/hbxbp/xbpqtuiloader.prg * harbour/contrib/hbnetio/netio.h * harbour/contrib/hbnetio/netiomt.prg * harbour/contrib/hbnetio/netiocli.c * harbour/contrib/hbnetio/netiosrv.c * harbour/contrib/hbnetio/Makefile * harbour/contrib/hbide/ideobject.prg * harbour/contrib/hbide/hbide.hbp * harbour/contrib/hbide/iderequests.prg * harbour/contrib/hbide/idestylesheets.prg * harbour/contrib/hbide/idefindreplace.prg * harbour/contrib/hbide/idethemes.prg * harbour/contrib/hbide/ideeditor.prg * harbour/contrib/hbide/hbide.prg * harbour/contrib/hbide/idemisc.prg * harbour/contrib/hbide/hbide.ch * harbour/contrib/hbide/idetags.prg * harbour/contrib/hbide/idesaveload.prg * harbour/contrib/hbide/ideactions.prg * harbour/contrib/hbide/idedocks.prg * harbour/contrib/hbide/ideparseexpr.c * harbour/contrib/hbide/ideprojmanager.prg * set svn:keywords attribute to "Author Date Id Revision" 2010-01-11 12:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/hbznet.c * move hb_znetOpen() parameter validation from HB_INETCOMPRESS() to hb_znetOpen() - it should help keeping other code using hb_znetOpen() more simple * harbour/contrib/hbnetio/netio.h * harbour/contrib/hbnetio/netiocli.c * harbour/contrib/hbnetio/netiosrv.c + added support for compression and encryption in NETIO connection streams. Enabling encryption (password) automatically enable also compression. If necessary user can set compression level to HB_ZLIB_COMPRESSION_NONE. HB_ZLIB_COMPRESSION_DISABLE used as compression level removes compression and encryption. See below for details of NETIO server and client code modifications. * harbour/contrib/hbnetio/netiocli.c + extended NETIO_CONNECT() client side function parameters: NETIO_CONNECT( [], [], [], ; [], [], [] ) -> % changed the behavior of NETIO_CONNECT() client side function. In the previous version this function was connecting to the server and then disconnecting so it was used to check if connection is available and to set default connection parameters. Now it does not disconnect after successful connection so created connection is keept and can be reused by any pending NETIO_*() calls. User can open many different connections in the same time. The connections are recognized by server and port address. The connections set by NETIO_CONNECT() function can be closed by NETIO_DISCONNECT() function. Each repeated call to NETIO_CONNECT() increase reference counter in the connection stream and need corresponding number of NETIO_DISCONNECT() calls. + added new PRG client side function: NETIO_DISCONNECT( [], [] ) -> which closes connections set by NETIO_CONNECT(). + added support for passing connection password as part of file path or function name in format: [:[:]]: i.e.: 192.168.0.1:2941:secret:path/to/file Please remember that it's only an alternative method of setting encryption which does not allow to use CHR(0) or ":" in passwords. User can always set connection using NETIO_CONNECT() function which will be used in RPC or FILE IO calls. If more then one connection is set by NETIO_CONNECT() then user can chose the connection using only server and port. It's not necessary to pass other connection parameters. + added support for UNC paths: //[:]/ i.e.: //192.168.0.1:2941/path/to/file backslashes (\\) are also supported. * harbour/contrib/hbnetio/netiosrv.c % moved 1-st login identification from NETIO_ACCEPT() to NETIO_SERVER() Such version do not block other connection accepting when server waits for NETIO_LOGIN frame so it improve scalability and also protect against code which may want to block access to the server by opening dummy connections. + added new parameters to NETIO_ACCEPT() function which allows to set encryption and compression for new connections: NETIO_ACCEPT( , [], [], [], [] ) -> | NIL + added new server side function: NETIO_COMPRESS( , [], [], [] ) -> NIL which allow to set or change encryption and compression parameters in existing connections * harbour/contrib/hbnetio/netiomt.prg * updated to accept new connection parameters in NETIO_MTSERVER() function: NETIO_MTSERVER( [], [], [], [], [], [], [] ) -> * harbour/contrib/hbnetio/utils/netiosrv.prg + added 5-th parameter which enable encryption with compression, current syntx is: netiosrv [] [] [] [] [] For default values use "" in command line for skipped parameters, i.e.: netiosrv "" "" "" 1 topsecret * harbour/contrib/hbnetio/tests/netiotst.prg * enable RPC, compression and encryption in test code + added simple code which use RPC to create directory on the server side Now it's possible to easy create secure NETIO connections and compression should help in slow connections when big number of data has to be exchange. In RDD file access it mostly help when tables use long records. Hope you will find it useful. Please make tests. 2010-01-10 22:54 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + contrib/hbide/resources/folder.png + Added new image to be placed on "Property Dialog"s folder selection push buttons. * contrib/hbide/resources/projectproperties.ui + Made resizable. Now it renders more usefulness. * contrib/hbide/hbide.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesources.prg ! Fixed and corrected many artifacts. Mainly in the area of project building, please test. 2010-01-10 16:54 UTC-0300 Vailton Renato (vailtom gmail.com) * contrib/hbide/ideactions.prg + Added new action "CloseOther" referenced in the menu, but missing in IdeActions:loadActions() * contrib/hbide/idesources.prg ! Rewritten the method closeAllOthers() because the old code did not work properly. Please test and report. 2010-01-10 07:34 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/idedocks.prg * contrib/hbide/ideobject.prg * contrib/hbxbp/xbprtf.prg ! Fixed: double-click on Output Console error information line now correctly places the editor positions. The error will not occur in future. 2010-01-10 10:50 UTC-0300 Vailton Renato (vailtom gmail.com) * contrib/hbide/idesources.prg ! Fixed to call ::oIde:updateTitleBar() after close any file. After closing all the files, the hbIDE was not updating the title bar of the main window. 2010-01-10 12:58 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_prn3.c % Dropped hb_xgrab() return value checks for NULL. * Avoided lstrcpy(). 2010-01-10 11:57 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added gcc pkg to opensolaris pkg list. * harbour.spec ! Do not mark Red Hat and SUSE as discontinued. These names seem to be used for "enterprise" versions of these distros, but correct me if I'm wrong. * utils/hbmk2/hbmk2.pt_BR.po * utils/hbmk2/hbmk2.hu_HU.po * utils/hbmk2/hbmk2.prg + Made it clean on the help screen which options can only be used from the command line. 2010-01-10 02:16 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesources.prg * contrib/hbide/idethemes.prg * contrib/hbide/resources/projectproperties.ui ! Some fixes and code optimizations. Please report if some feature is not working ok. 2010-01-09 15:39 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.ch * contrib/hbide/hbide.hbp * contrib/hbide/hbide.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg + contrib/hbide/idesources.prg * contrib/hbide/projects/hbide.hbi ! Next round of reforms, may be second-last, mainly concentrating on accessing the different components with ease. ! Some formattig and code optimizations. 2010-01-09 10:53 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbslots.cpp * contrib/hbqt/hbqt_hbslots.h + Added few more slots. ! Improved formatting. * contrib/hbxbp/xbprtf.prg ! Corrected "undoAvailable(bool)" slot string. * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg + Implemented context menu in the editor tabs. Now it is synchronized with toolbar with same look and feel. + Implemented to re-position editor tabs with drag. HOWTO: Place mouse pointer over a tab -> keep pressed left button -> move mouse pointer left or right -> ( tab will move with your action ) -> release left button when desired position is obtained. 2010-01-09 12:54 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Extended Linux deb/rpm sections: - Added list of base packages - Listed actual active distro names - Added pkg install command for various rpm distros - Added link to webpage containing extensive information about pkg management commands on different distros + Added SUNWsvn package for OpenSolaris. * harbour.spec ! Typo in comment. + Added 'DISCONTINUED' comments to those distros which are (suprise!) discontinued. * contrib/hbwin/wapi_winbase.c ! Fixed to set internal getlasterror value in WAPI_FORMATMESSAGE(). Thanks Xavi. * contrib/hbwin/wapi_err.c ! Fixed to include 'hbwapi.h' Thanks Xavi again. * config/global.mk + Added autodetection of Gentoo Linux package manager. * contrib/hbbtree/hb_btree.c + Added two TOFIX notes. Both reported on the list previously. 2010-01-09 02:31 UTC+0500 April White (april users.sourceforge.net) * contrib/hbbtree/tbtree.prg * updated copyright date * formatting * hide constructor; use TBTreeNew() % this parallels the Open() merthod and TBTreeOpen() * contrib/hbbtree/hb_btree.h * updated copyright date * removed internal ChangeLog * formatting * change BOOL/TRUE/FALSE to HB_* * contrib/hbbtree/hb_btree.c * updated copyright date * change BOOL/TRUE/FALSE to HB_* - HB_BTREE error codes moved to hb_btree.ch * renamed (remove hb_ prefix) from internal error raise function * error gencode used * contrib/hbbtree/hb_btree.ch * updated copyright date * removed internal ChangeLog + HB_BTREE error codes 2010-01-08 18:10 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideprojmanager.prg + Enabled .PPO creation in a tab sharing the other sources. So all other editing features are available to it. .ppo is opened in separate tab than the original source. .ppo is not included in "Recent Files" list and hance it is not made available at next execution. 2010-01-09 01:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/global.mk ! Fixed to not require HB_BIN_COMPILE is host and target platform is the same, host is x64 and target is x86. x64 hosts can run x86 binaries. (pls shout if you know any exception) * INSTALL + Added extra info to openSUSE section. ; TODO: Update .rpm/opensuse section. * harbour.spec + Added initialization of HB_USER_DFLAGS. ; TOFIX: Current setup doesn't allow passing -m32 to force 32-bit .rpm builds on 64-bit systems. ; TOFIX: OpenSUSE 10.2 uses 'gpm' instead of 'gpm-devel'. * contrib/hbqt/hbqt.hbc * contrib/hbqt/hbqts.hbc * Changed to enable -hbcppmm only on win and os2 platforms. I don't know about linux, but on darwin this option caused this error: hbide(70507,0x7fff708a0be0) malloc: *** error for object 0x1019d3948: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug Abort trap 2010-01-08 15:44 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbslots.cpp ! Fixed a very bad omission : if( object->property( signal ).toInt() == i ) => if( object->property( signal ).toInt() == i + 1 ) It fixes if an action is not already defined for a widget. TO WATCH: Is is desirable ? * contrib/hbxbp/xbpfiledialog.prg ! Small optimization. * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg ! Separated toolbar and menu actions, the whole point of recent reported issues, because toolbar and menu implementation call different methods with different intensions. Please test if toolbar and menu option behave correctly. GROUP DECISION: should I go for QProcess() to manage build phase or keep Harbour centric implementation as well ? Qt seems to be proper choice under this context. 2010-01-08 18:28 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/dynsym.c + accept also function name (not only symbol index) as parameter of __DYNSISFUN() * harbour/src/rtl/hbznet.c * pacified BCC warnings 2010-01-08 14:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbnetio/netiocli.c * pacified BCC warning * harbour/include/hbznet.h * harbour/src/rtl/hbznet.c + added support for blowfish encryption in HB_ZNETSTREAM + added C function void hb_znetEncryptKey( PHB_ZNETSTREAM pStream, const void * keydata, int keylen ); which enables data encryption in HB_ZNETSTREAM + added 4-th parameter to to .PRG HB_INETCOMPRESS() function: HB_INETCOMPRESS( , [], [], [] ) is initial value to create blowfish key. Please test. 2010-01-08 12:25 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/wce/msvcarm.mk ! Fixed typo in prev modification. 2010-01-08 01:37 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbslots.cpp * contrib/hbqt/hbqt_hbslots.h + Added QListlistObj member. There was no guard against an object connected more than once for the same slot. That's why menu and toolbar actions were being executed twice. * contrib/hbqt/qtcore/QSettings.cpp * contrib/hbqt/qtcore/TQSettings.prg * contrib/hbqt/qth/QSettings.qth ! Added missing static functions. * contrib/hbxbp/xbpmenubar.prg ! Extended guard against invalid QAction. * contrib/hbxbp/xbpwindow.prg ! QPoint() was being accessed without initialization. * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idesaveload.prg ! Fixes to execution of menu and toolbar events twice. ! Some more artifacts set right. 2010-01-07 19:59 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpmenubar.prg ! Fix to prev, last minute rush of blood. 2010-01-07 18:52 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpmenubar.prg ! Fixed nasty bug which was preventing removal of items with oXbo:delItem(). * contrib/hbxbp/xbpstatusbar.prg ! Removed the parenting of StatusBar as it was being done twice. * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idestylesheets.prg * contrib/hbide/idethemes.prg ! Fixed to not flicker main window at start-up. ! Fix to recent files/projects menu. The issue was related with XbpMenu() class. ! Menu-bar now correctly displays foreground color. ! "Bare Minimum" theme is set as default theme instead of "Pritpal Favourite". ! Fixed many other artifacts. 2010-01-08 01:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/wce/msvcarm.mk + Added -nxcompat and -dynamicbase to .dll link command. (I'm unsure what -dynamicbase is good for in a .dll, but it's accepted and set) ! Fixed to add -nxcompat/-dynamicbase for MSVC 2008 and upper. (it's also possible to use it with MSVS 2005 SP1 though, but build won't detect this case) * include/hbwince.h * Formatting. 2010-01-08 01:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/dlmalloc.c ! Fixed two potentially uninitialized variables, signaled by MSVC. * src/common/hbgete.c + Changed to use native SetEnvironmentVariable() API instead of forced ANSI one. * src/common/hbwince.c * include/hbwince.h % Deleted unused ANSI Windows API stubs. + Added empty SetEnvironmentVariable() stub for WinCE builds where it's missing. * Reconfigured these stubs: SetCurrentDirectory() GetCurrentDirectory() GetComputerName() GetUserName() * config/win/global.mk * Comment updated. * config/win/msvc.mk + Added -nxcompat and -dynamicbase to .dll link command. (I'm unsure what -dynamicbase is good for in a .dll, but it's accepted and set) ! Fixed to add -nxcompat/-dynamicbase for MSVC 2008 and upper. (it's also possible to use it with MSVS 2005 SP1 though, but build won't detect this case) 2010-01-07 21:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added free SVN book link. * src/vm/extrap.c % Marked exception filter callback as 'static' ; TOCHECK: Please verify that OS/2 still works this way. * src/rtl/oemansi.c ! Fixed two tabs. * src/rtl/gtwvt/gtwvt.c * contrib/gtwvg/gtwvg.c * contrib/rddads/adsfunc.c ! Fixed to not use unsafe/ANSI CharToOemBuffA() API. ; Please review me. * config/win/mingw.mk + Added information about MinGW alternatives for MSVC security features. Unfortunately they need Cygwin binary plus some depend on MinGW host platform and/or version. * include/hbwince.h * src/common/hbwince.c - Deleted CharToOemBuffA(), OemToCharBuffA(). No longer needed by Harbour. ; TODO: Delete rest of not anymore used ANSI WinAPI functions. Now Harbour never uses ANSI WinAPI functions in UNICODE mode. [DONE] * config/win/global.mk - Deleted reference to CharToOemBuffA(), OemToCharBuffA(). 2010-01-07 10:34 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/idethemes.prg * contrib/hbide/resources/selectionlist.ui ! selectionlist.ui updated to have buttons. 2010-01-07 09:28 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/idethemes.prg + Added "Bare Minimum" theme. 2010-01-07 18:22 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Made it clear that valgrind only support 32-bit Intel darwin systems ATM. 2010-01-07 18:16 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/extrap.c * contrib/hbwin/win_prn3.c + Added TOFIXes for unsafe function usage: IsBadWritePtr(), IsBadReadPtr(), lstrlen(), lstrcpy(), lstrcat() ; QUESTION: Any idea how to fix that? win_prn3.c can probably be fixed with some good general coding idea. [DONE: lstrlen(), lstrcpy(), lstrcat()] * contrib/hbwin/wce_smsc.c ! Fixed to not use unsafe CRTL functions. * src/rtl/oemansi.c ! Rewritten HB_OEMTOANSI() and HB_ANSITOOEM() to not use Windows API functions marked as unsafe. New version is a bit slower but won't mark Harbour apps as unsafe in an audit. ; Please test and review. * utils/hbmk2/hbmk2.prg * config/wce/msvcarm.mk * config/win/msvc.mk % Deleted -Gs MSVC option. Testing with MSVC 2008 I've found this have no effect on x86 builds, and it makes x64 builds slighly less efficient by forcing stack checks in each function call. This seems to contradict MSDN, which doesn't suggest such difference between x86 and x64: http://msdn.microsoft.com/en-us/library/9598wk25.aspx % Deleted -GS- MSVC option used for wce targets for MSVC >= 8.00. '-GS-' will disable stack cookies (on by default), thus trading app size/speed for security. Maybe this is preferred for wce users, but in Harbour I'd rather opt to pass this decision to users for all targets. Enable with: HB_USER_CFLAGS=-GS- / -cflag={allmsvc}-GS- MSDN: http://msdn.microsoft.com/en-us/library/8dbf701c.aspx 2010-01-07 08:58 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idethemes.prg ! Fixed some flow artifacts, mainly in "Files" management. 2010-01-07 16:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnetio/utils/netiosrv.hbp * utils/hbformat/hbformat.hbp * utils/hbmk2/hbmk2.hbp * utils/hbi18n/hbi18n.hbp * utils/hbtest/hbtest.hbp * utils/hbrun/hbrun.hbp * config/wce/msvcarm.mk * config/win/msvc.mk + Added -fixed:no to msvc command line. It seems to be needed for ASLR compatibility. 2010-01-07 16:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL * Updated valgrind example. * contrib/hbnetio/utils/netiosrv.hbp * utils/hbformat/hbformat.hbp * utils/hbmk2/hbmk2.hbp * utils/hbi18n/hbi18n.hbp * utils/hbtest/hbtest.hbp * utils/hbrun/hbrun.hbp * config/wce/msvcarm.mk * config/win/msvc.mk + Added MSVC linker switches to enhance security by enabling NX compatibility and ASLR. Especially important for server apps like netiosrv and hbrun. ; TODO: Enable the same for MinGW. ; TOCHECK: Please test this with old MSVC versions and MSVCARM, maybe we will need to disable them in some cases. [DONE] * config/wce/msvcarm.mk + Changed to use link.exe for linking instead of cl[arm].exe. This now syncs it with rest of Harbour. 2010-01-07 14:14 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbnetio/netiocli.c ! use hb_vmAtInit() to initialize NETIO - looks that winsock initialization in startup code does not work - please test 2010-01-07 14:07 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/hbznet.c * harbour/include/hbznet.h * added new optional parameter to hb_znetWrite() function which allow to catch result of last hb_socketSend() operation * removed automatic flushing from hb_znetWrite() function, it should help in implementing more efficient C code using hb_znet*() functions * harbour/src/rtl/hbinet.c * flush HB_ZNETSTREAM output after write operation % small optimization in internal inet error setting 2010-01-07 10:53 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog * Some changes marked DONE. * mpkg_tgz.sh ! Fixed to use tar command even when it's mapped to bsdtar. 2010-01-07 10:27 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbvmpub.h * minor formatting * harbour/contrib/hbnetio/netio.h * harbour/contrib/hbnetio/netiosrv.c + added new PRG function: NETIO_RPCFUNC( [, ] ) -> NIL which allows to set user filter for RPC calls. is executed on each RPC request instead of requested function and receives as first parameter requested function symbol then function parameters. A simple wrapper may look like: static function rpc_filter( sFunc, ... ) ? "DO", sFunc:name, "WITH", ... return sFunc:exec( ... ) and can be activated by: netio_rpcfunc( pConnectionSocket, @rpc_filter() ) When NETIO_RPCFUNC() is called without valid function symbol then existing user RPC filter is cleared. Please remember that setting user RPC filter does not automatically enable RPC support for given connection socket. RPC support has to be enabled by NETIO_RPC() function or by 4-th parameter of NETIO_LISTEN() socket. 2010-01-06 18:57 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/ideactions.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idestylesheets.prg ! Fixed few more artifacts. ! Recent Files and Projects Menu was growing crazy, was a result of not deleting the menu item in XbpMenu() class. More attention is required yet. ! Fixed Viktor's reported bug. * contrib/hbxbp/xbpmenubar.prg ! Fixed a very bad type, copy/paste syndrome. 2010-01-06 17:53 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/ideprojmanager.prg ! Small fix to prev. 2010-01-06 17:10 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/projects/hbide.hbi ! Deleted hard-coded -o directive, no longer needed. ! Project paths are now shown without meta-dat. * contrib/hbide/resources/projectproperties.ui ! Changed components background behavior not to use gradients. Now it is plain vanila white. * contrib/hbide/hbide.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesaveload.prg * contrib/hbide/idestylesheets.prg ! Another round of reforms. And I am almost done with them. But wait... ! Started implementation of .env concept. What was missing from hbIDE => hbMK2 were the shell commands minimum necessary to let hbMK2 engine take control of. Now it can be done via QProcess:setEnvironment() call. I have left under the commented code in ideprojmanager.prg: /* Mechanism to supply environment variables to called process */ /* I do not know nixes but assume that Qt must be issueing proper */ /* shell command for the target OS to set them. */ /* If I am not wrong, HBMK2 can have these variables alread set */ /* and hence developer can choose any compiler of his choice. */ /* */ /* Actually, this was the intension in hbIDE.env I commited in IDE root */ I am been able to compile/link/execute hbIDE.exe after setting ( WinXP ) qListSets := QStringList():new() qListSets:append( "HB_WITH_QT=c:\qt\4.5.3\lib" ) ::qProcess:setEnvironment( qListSets ) just before triggering the process. Your input is desired as I know nothing about make system. ! Fixed many artifacts difficult to jot-down. + Implemented not to load any source until brought forward for view. This has increased the loading speed extremely fast and always consistent in timing. This feature was hanging on my drawing board since begining. This effectively means that sessions with any number of source tabs will not pose speed panelty. TODO: Syntax highlighting is a slow process, to speed-up. 2010-01-07 01:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/Makefile - contrib/hbwin/win_err.c + contrib/hbwin/wapi_err.c * contrib/hbwin/hbwin.h * contrib/hbwin/hbwapi.h * contrib/hbwin/wapi_winbase.c * contrib/hbwin/wapi_winuser.c * contrib/hbwin/wapi_winbase_mutex.c * Naming cleanup of recent change. 2010-01-07 00:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_err.c * contrib/hbwin/hbwin.h * contrib/hbwin/wapi_winbase_mutex.c * Changed low-level hbwin_SetLastError() to accept lasterror as parameter. * contrib/hbwin/wapi_winbase.c * contrib/hbwin/wapi_winuser.c + Added internal handling of GetLastError(). This fixes lost GetLastError() values with apps linked with MT HVM. [ I didn't review wapi_commctrl.c, but some lazy checking on MSDN showed that these are generally not setting GetLastError(). ] * WAPI_GETSCROLLRANGE() now set ref params even in case of failure. ; TODO: Do some final renaming and rearrangement on the low-level. [DONE] * contrib/hbwin/wapi_winbase_mutex.c * Formatting. 2010-01-06 23:53 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_err.c ! Fixed GetLastError() in MT mode. * utils/hbmk2/hbmk2.prg % nSize++ -> nSize = 1 * contrib/hbide/hbide.hbp ! Typo in comment. 2010-01-06 22:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL ! Fixed instructions for .deb binary build. * contrib/hbide/hbide.hbp + Comment extended. * utils/hbmk2/hbmk2.prg + Comment extended. * config/globsh.mk ! Fixed typos in nt clean commands. [TOMERGE 2.0] * ChangeLog + Added TOMERGE 2.0 to prev entry. 2010-01-06 21:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * mpkg_tgz.sh ! Fixed to detect case when tar is mapped to bsdtar (such is the case on Snow Leopard). Use slightly modified tar command in this case. Please review. ; TOFIX?: Unpacking stub script always uses 'tar', maybe this needs to be fixed, although current command should work on Snow Leopard. [CLEARED] - Deleted comment no longer valid. [TOMERGE 2.0] * utils/hbmk2/hbmk2.prg ! Fixed C++ memory manager override to handle zero size memory request and added protection when free operations are called with NULL. Thanks Istvan Bisz and Przemek for input. 2010-01-06 17:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/hbznet.c ! do not use DEF_MEM_LEVEL to avoid potential problems when is not available * harbour/contrib/hbnetio/netio.h * harbour/contrib/hbnetio/netiocli.c * harbour/contrib/hbnetio/netiosrv.c + implemented RPC in HBNETIO protocol + added the following client functions: check if function/procedure exists on the server side: NETIO_PROCEXISTS( ) -> execute function/procedure on server the side, do not wait for confirmation: NETIO_PROCEXEC( [, ] ) -> execute function/procedure on the server side and wait for confirmation: NETIO_PROCEXECW( [, ] ) -> execute function on the server side and wait for its return value: NETIO_FUNCEXEC( [, ] ) -> All above functions use default connection set by NETIO_CONNECT() for RPCs but it's also possible to specify server address and port in / just like in parameter in RDD functions, i.e.: NETIO_PROCEXISTS( "192.168.0.1:10005:MYFUNC" ) + added new server side functions to enable/disable/check RPC support: NETIO_RPC( | [, ] ) -> if RPC is enabled for listen socket then connection sockets inherit this setting. + added 4-th parameter to NETIO_LISTEN() function. .T. enable RPC support in returned listen socket which is later inherited by connection sockets * changed protocol version ID - current NETIO clients and servers cannot be used with old code * harbour/contrib/hbnetio/utils/netiosrv.prg * added option to enable RPC support in NETIO server If you want to make some test then you can execute netiosrv with non empty 4-th parameter as server, i.e.: ./netiosrv "" "" "" 1 and try this code as client: proc main() // pass server address to netio_connect() for non localhost tests ? "NETIO_CONNECT():", netio_connect() ? ? "DATE() function is supported:", netio_procexists( "DATE" ) ? "QOUT() function is supported:", netio_procexists( "DATE" ) ? "HB_DATETIME() function is supported:", ; netio_procexists( "HB_DATETIME" ) ? ? netio_procexec( "QOUT", repl( "=", 50 ) ) ? netio_procexec( "QOUT", "This is RPC TEST", date(), hb_datetime() ) ? netio_procexecw( "QOUT", repl( "=", 50 ) ) ? ? "SERVER DATE:", netio_funcexec( "DATE" ) ? "SERVER TIME:", netio_funcexec( "TIME" ) ? "SERVER DATETIME:", netio_funcexec( "HB_DATETIME" ) ? ? netio_funcexec( "upper", "hello world !!!" ) return Please remember that only functions linked with server are available. If you want to enabled all core functions in netiosrv then please uncomment this line in netiosrv.prg: REQUEST __HB_EXTERN__ Have a fun with a new toy. I hope that many Harbour user will find it very interesting. Please only be careful !!!. This feature allows to execute remotely _ANY_ code on the server side. _NEVER_ leave open ports with RPC support for untrusted access. 2010-01-06 00:21 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/idedocks.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideprojmanager.prg ! Many artifacts corrected. ! Build process is now very satisfying if selected an option with right-click on project node in Project Tree window. ! Diabled gradients in any window. Is it ok to fine tune the windows with plain colors ? 2010-01-06 08:33 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added HB_TR_OUTPUT to DEBUG section. 2010-01-06 07:27 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtwin/gtwin.c + added support for HB_GTI_ISUNICODE * harbour/include/hbapifs.h * added missing 'extern' in some declarations * harbour/include/hbzlib.ch + added HB_ZLIB_STRATEGY_* constants + added HB_ZLIB_COMPRESSION_DISABLE * harbour/include/Makefile + harbour/include/hbznet.h * harbour/include/hbextern.ch * harbour/src/rtl/Makefile * harbour/src/rtl/hbinet.c + harbour/src/rtl/hbznet.c + added support for ZLIB compression in stream sockets. + added .prg function: HB_INETCOMPRESS( , [], [] ) which enables ZLIB compression for given HB_INET*() socket. is a socket created by one of HB_INET*() functions is compression factor between 1 (fastest) and 9 (best) (see HB_ZLIB_COMPRESSION_*) 0 (none) disable compression on output data but decompression is still working. is used to tune compression algorithm, see HB_ZLIB_STRATEGY_* The compression must be enabled on both connection sides, i.e. on the server side: conn := hb_inetAccept( sock ) hb_inetCompress( conn ) and on the client side: sock := hb_inetConnect( cServer, nPort ) hb_inetCompress( sock ) in the same moment but it's not necessary to enable it at the beginning of connection. It can be done later, i.e. when both sides agree to enable connection using some custom protocol. The compression has effect only on stream connections, i.e. TCP and it's ignored in datagram connections like UDP. This function can be executed more then once changing the compression parameters but it causes that all data in readahead decompression buffer is discarded. When called with HB_ZLIB_COMPRESSION_DISABLE as then support for stream compression is removed and sockets works again in raw mode. The compression level and strategy do not have to be the same on both connection sides. Each side can chose the best settings for data it's going to send. This code was written in a way which allows to easy implement alternative compression methods or other extensions like encryption in existing HB_INET*() sockets also by non core code. The public C functions declared in hbznet.h allows to use this extension with raw harbour sockets two. 2010-01-05 19:01 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/tests/demoxbp.prg ! Changed to HBQT_SET_RELEASE_METHOD( HBQT_RELEASE_WITH_DELETE ) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideprojmanager.prg ! Another round of reforms. Vailton, I had to delete some of your code causing the recursions. Please note that never ever you should call the methods like a->b->a. Please check the code and its usability as per your line-of-thinking. More refinements are under-way. 2010-01-06 01:29 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL * Minor update to prev. 2010-01-06 01:24 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added new section: 7. DEBUGGING OPTIONS So far covered: tracing, memory statistics, valgrind and codeguard. I'd like to ask our experts to review and if needed extend these informations (send me suggestions and I'll update it). * bin/postinst.bat + Enabling -debug option on shared tool hbmk2 builds if HB_BUILD_DEBUG=yes. * contrib/hbide/ideactions.prg ! Typo. 2010-01-05 20:35 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbide/projects/hbide.hbi ! Deleted windows and local environment specific hbmk2 options, plus a few ones which are automatically pulled anyway via hbqt.hbc (which is in turn pulled by hbxbp.hbc). Please set HB_WITH_QT to make it find the QT libs. This is the universal method. 2010-01-05 20:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/detect.mk + Will now verify if HB_QT_MOC_BIN is pointing to an existing filename. If not, an error message will be shown, trying to make it clear how to set it up properly. Many users like to set the dir only, which makes the build process fail. * contrib/hbide/hbide.prg + Switched to HBQT_RELEASE_WITH_DELETE as suggested by Istvan Bisz. * contrib/hbqt/generator/hbqtgen.prg * Minor cosmetic. 2010-01-05 19:13 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg + Added disctinctive static text which is always linked in when C++ mm override is active. This makes it easy to verify if C++ mm override is activated in an executable. * ChangeLog ! Fixed messed text in latest hbmk2 changes. 2010-01-05 18:48 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.pt_BR.po * utils/hbmk2/hbmk2.hu_HU.po * utils/hbmk2/hbmk2.prg + Added support for C++ input files. Now C++ files will be compiled in a separate pass where native C++ compiler is used, which means that C++ compilation mode is now enforced by using .cpp extension. This also means that it's now possible to build mixed mode projects with both C and C++ input files. In general, this feature makes -cpp option unnecessary, its only purpose now is to override default mode. + Added option to override standard C++ memory management functions with Harbour ones. Enable with option: -hbcppmm (cmdline) or hbcppmm=yes (in .hbc files) NOTE1: Suggestions for better names are welcome. NOTE2: hbide will now crash with mingw if this option is enabled. Any idea why? ; Please test. * utils/hbmk2/hbmk2.prg - Deleted support for link-related macros in C compilation phase, these weren't used anymore inside current hbmk2, so it seems safe, but it's possible nevertheless that it will cause regressions in some exotic use cases. * utils/hbmk2/hbmk2.prg ! Fixed parsing -warn option on the commandline and .hbm/.hbp files. [TOMERGE 2.0] * contrib/hbqt/generator/hbmk.hbm ! Deleted xhb lib. It's not required and was probably added for "outdebug" stuff. * contrib/hbqt/hbqt.hbc * contrib/hbqt/hbqts.hbc * contrib/gtqtc/gtqtcs.hbc * contrib/gtqtc/gtqtc.hbc + Added hbcppmm=yes option. This will force C++ memory allocation functions to be overridden by Harbour mm functions. * src/vm/fm.c - Deleted C++ memory allocation functions. This feature now lives inside hbmk2, and it now doesn't require whole Harbour to be built in C++ mode. * contrib/hbqt/* * Regenerated. 2010-01-05 14:54 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbct/dummy.c + Added dummy stubs for all CT functions which are not yet implemented in Harbour. This file is intentionally not built, because a link-time error is better than a runtime one, anyhow we could convert them to real dummies emulating error behavior and add them to build process. * contrib/hbqt/generator/hbqtgen.prg % Optimization to parameter list ptr conversion loop. ; TODO: Regenerate QT sources. [DONE] 2010-01-05 14:03 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbct/video.c % use hb_gtColorToN() function instead of own code to decode Clipper color in VGAPALETTE() ! added protection against possible transfer buffer overflow in SETFONT() function ! return -2 when SETFONT() is not implemented TODO: clean these functions, add support for other DOS compilers, add some missing functions and redirect few of them like VGAPALETTE() to hb_gtInfo() in non DOS builds * harbour/src/rtl/hbgtcore.c ! fixed missing ';' => CHR( 13 ) translation in __KEYBOARD() function [TOMERGE 2.0] 2010-01-05 02:59 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpmenubar.prg * contrib/hbxbp/xbptoolbar.prg + Implemented to accept QAction() as menu constructor. Before only cCaption or XbpMenu() were accepted. * contrib/hbide/hbide.ch * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg ! Next round of reforms. + Implemented IdeActions() class which forms the basis of IDE's menus and toolbars. Now we have greater control over the uniformity of different actions hooked into different interface elements, i.e., menu option, toolbar option or popup option. The same visual experience is presented in all the three flavours. It also implies that we can switch on/off any action only at one place. For example, if you issue this command: ::oAC:getAction( "Save" ):setEnabled( .f. ) then the option will be grayed in any flavour of user interaction, viz., menu, toolbar, or context menu. The code is much cleaner and paves the way to be reloaded with various means. 2010-01-05 03:51 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapicdp.h * removed unused in current code HB_CODEPAGE_INIT() macro 2010-01-04 16:28 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.ch * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesaveload.prg * contrib/hbide/idestylesheets.prg * contrib/hbide/idethemes.prg ! Another round of reforms. + Implemented visual reflection of current project tree node and current editing tab tab. + Implemented default theme get/set, check the menu . 2010-01-05 02:39 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/common/hbtrace.c ! fixed casting for C++ mode in my recent modification 2010-01-04 16:28 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesaveload.prg ! Next round of reforms, stay patient. ! Implemented to hold last working project. ! Fixed to not generate error if an open project is tried to reopen. ! Many small artifacts correctd. 2010-01-05 00:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/tests/demoqt.prg + Added hbqt_errorsys(). * contrib/hbxbp/xbpgeneric.prg + Calling hbqt_errorsys() on startup. * contrib/hbide/hbide.prg - Deleted call to hbqt_errorsys(). It's now done by hbxbp. 2010-01-04 14:31 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idethemes.prg ! Continued reforms. ! Menu options are working again. 2010-01-04 23:28 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg + Will now ignore hbdebug and hbcplr static Harbour libs when creating dynamic binaries, if these libs are not present. 2010-01-04 19:01 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/ChangeLog ! fixed typo in my recent ChangeLog entry * harbour/src/vm/fm.c % minor simplification * harbour/src/common/hbtrace.c ! fixed possible recursive call reported by Istvan 2010-01-04 18:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbgd/hbgd.hbc + examples/httpsrv/modulesg.hbp * examples/httpsrv/uhttpdgd.hbp * examples/httpsrv/readme.txt * Merged gd linking logic from uhttpdgd.hbp to hbgd.hbc. (contains little hack, too) (untested) + Added .hbp file to build GD enabled modules. * Modified readme to reflect above change. + Changed .hbp files to use hbgd.hbc and hbct.hbc to build with hbgd and hbct libs. This is much better method, since hbmk2 will locate them automatically plus set header path as well. 2010-01-04 08:33 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/resources/selectionlist.ui ! A little less-height window. * contrib/hbide/ideeditor.prg * contrib/hbxbp/xbpmenubar.prg * contrib/hbxbp/xbpprintdialog.prg * contrib/hbxbp/xbpwindow.prg % Fixed calls to removed Qt functions. 2010-01-04 15:56 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbide/idethemes.prg * contrib/hbide/ideeditor.prg * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideprojmanager.prg ! Reapplied my File() -> hb_FileExists() pacth. Please note that it's not my favourite pass-time to find out which of my changes were overwritten and such practice pretty much defeats the purpose of version tracking systems like SVN altogther. It's committers job to properly resolve conflicts, unless there is as advance request for commit-stop. Since it's also not very efficient for me to refix all future File() usages to hb_FileExists(), it would be much more beneficiary for the whole project if coding practices like that would be adopted by other developers and taken care of in future updates. Thanks in advance. 2010-01-04 13:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c ! cleaned a little bit hack with euro sign support + added optional support for input respecting locale settings To enable it it's necessary to recompile GTXWC with HB_XWC_USE_LOCALE macro. It can be done globally using export HB_USER_CFLAGS=-DHB_XWC_USE_LOCALE and recompiling Harbour core code. When enabled GTXWC initialize locale at startup (LC_CTYPE only) what enable national keyboard layout support in default input context (XLookupString()). Current Harbour core code does not use any functions so enabling locale should not effect user national settings in HVM. Please test. 2010-01-04 01:58 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.hbp * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idefindreplace.prg * contrib/hbide/idemisc.prg * contrib/hbide/ideobject.prg * contrib/hbide/ideprojmanager.prg * contrib/hbide/idesaveload.prg * contrib/hbide/idethemes.prg * contrib/hbide/projects/hbide.hbi + contrib/hbide/resources/insert-datetime.png + contrib/hbide/resources/insert-external-file.png + contrib/hbide/resources/insert-procname.png + contrib/hbide/resources/readonly.png * contrib/hbide/resources/tabreadonly.png * contrib/hbxbp/xbpqtuiloader.prg A lot of changes are in effect including the patch sent by Vailton. The code is in the middle of restructing phase and may take several days to finish. Till the I request you all to bear with me and may expect some bumps too. Please do not update this code until I finish preliminaries. To sumup this commit includes: ! Thourough reclassification of classes and separation of code fragments in a way that not two developers collide with each other. One may takeup one segment and the other another. + Used hbide_* namespace and have changed almost every function. + Implemented, though not in a way I wanted, building a project via Qt's process classes. You will see a refreshing difference. + A major breakthrough in XbpQtUiLoader() class implementation. Now you can access the child widgets of a .ui component per this syntax: oUI:qObj[ "checkMatchCase" ]:setChecked( .t. ) => oUI:q_checkMatchCase:seChecked( .t. ) ^^ just prefix object name with "q_" ( Q + Underscore ). This greatly simmplifies coding and allows to exploit child widgets as real-time objects. 2010-01-03 21:19 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_hbevents.cpp * contrib/hbqt/hbqt_hbslots.cpp - Deleted old method of slots/events handling. * contrib/hbide/idethemes.prg * contrib/hbide/ideeditor.prg * contrib/hbide/hbide.prg * contrib/hbide/idemisc.prg * contrib/hbide/idesaveload.prg % Using hb_FileExists() instead of File(). ! Fixed to not force lowercase on filenames. 2010-01-03 11:57 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbpwindow.prg % Normalized some left-overs. 2010-01-03 09:22 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/idedocks.prg * contrib/hbide/ideeditor.prg % Qt_Connect_Signal( ... ) => Qt_Slots_Connect( ::pSlots, ... ) % Qt_Connect_Events( ... ) => Qt_Events_Connect( ::pEvents, ... ) And reverse of it. * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbpgeneric.prg * contrib/hbxbp/xbplistbox.prg * contrib/hbxbp/xbpqtuiloader.prg * contrib/hbxbp/xbpsle.prg * contrib/hbxbp/xbpspinbutton.prg * contrib/hbxbp/xbptreeview.prg * contrib/hbxbp/xbpwindow.prg % Qt_Connect_Signal( ... ) => Qt_Slots_Connect( ::pSlots, ... ) % Qt_Connect_Events( ... ) => Qt_Events_Connect( ::pEvents, ... ) And reverse of it. Viktor, you may delete the previous implementation. 2010-01-03 14:07 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/qth/QApplication.qth * Minor optimizations. % One static var deleted. ; TOFIX/TOCHECK: argv/argc usage. * contrib/hbqt/qtgui/QApplication.cpp * contrib/hbqt/hbqt_garbage.h * Regenerated. * contrib/hbxbp/xbpgeneric.prg - Deleted unused statics. ; TOFIX: HBQT has an irregularity which I couldn't find a reason yet. It maintains a pointer to QApplication in a static variable on C level, plus every HBQT app maintains a copy of the QApp object in a .prg level STATIC var. Both are inited using C/prg level init/exit functions. 2010-01-03 13:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog ! Fixed accindentally committed corrupted file in prev commit. (unclean system shutdowns due to hangs) * contrib/hbqt/tests/demoqt.prg * Variable rename. 2010-01-03 13:24 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added OS/2 to QT supported platforms. * harbour.spec + Merged lib and static subpackages into main one. hbmk2 requires that both dynamic and static libs (namely hbcplr) are present for successful linking. Please test and comment, I can revert old version in case of any problems. * contrib/hbqt/filelist.mk * contrib/hbqt/hbqt_hbevents.cpp * contrib/hbqt/hbqt_hbslots.cpp - contrib/hbqt/hbqt_hbevents2.cpp - contrib/hbqt/hbqt_hbslots2.cpp * Merged new EVENTS/SLOTS implementation with old one, removing all existing redundancies and fixing double definition of low-level classes. 2010-01-03 03:00 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg ! Applied Vailton's patch posted as diff. 2010-01-03 11:00 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/generator/hbqtgen.prg ! Fixed formatting for one generated headder. * contrib/hbqt/hbqt_hbqmainwindow.cpp * contrib/hbqt/qth/QApplication.qth + Moved HB_QT declaration to QApplication. * contrib/hbqt/qtgui/QApplication.cpp * Regenerated. * contrib/hbqt/qtgui/QTextCursor.cpp * contrib/hbqt/qtgui/TQTextCursor.prg * contrib/hbqt/qtgui/QSyntaxHighlighter.cpp * contrib/hbqt/qtgui/TQSyntaxHighlighter.prg * Changed after regeneration. (Someone pbly changed these files without .qth, or run older generator, or didn't run generator after modifying .qth) * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp ! Fixed warning. * Formatting. * contrib/hbqt/hbqt_hbqtableview.cpp * contrib/hbqt/hbqt_hbqmainwindow.cpp % GC callbacks made 'static'. * contrib/hbqt/detect.mk * contrib/hbxbp/Makefile + Enabled for OS/2. * contrib/hbqt/hbqt_hbqmainwindow.cpp - Deleted mutex handling. (was commented for while with no problems reported) * contrib/hbwin/Makefile * contrib/hbwin/hbwin.h * contrib/hbwin/hbwapi.h + contrib/hbwin/win_err.c * contrib/hbwin/wapi_winbase.c + Added hbwin_SetLastError(), hbwin_GetLastError() low-level functions to save/get GetLastError() values. This is required to preserve win lasterror value on .prg level. The reason we need this is because TlsGetValue() (called internally by Harbour core) is overwriting this value. Thanks to Xavi for research. * contrib/hbwin/wapi_winbase_mutex.c ! Fixed to use hbwin_SetLastError(). ; TODO: Call hbwin_SetLastError() after _all_ winapi calls which modify lasterror value. Until then, WAPI_GETLASTERROR() is broken. [DONE] * contrib/hbwin/hbwinole.h + Added self-guard. 2010-01-02 22:47 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) /* This commint is from Vailton Renato and applied as is Please set me right if something is omitted. Changes are written below as published on DL. */ * contrib/hbide/hbide.ch * contrib/hbide/hbide.env * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/idesaveload.prg * contrib/hbide/resources/hb-16x16.png + contrib/hbide/resources/hb-32x32.png + contrib/hbide/resources/list-developers.png + contrib/hbide/resources/list-users.png + contrib/hbide/resources/new2.png + contrib/hbide/resources/project.png + contrib/hbide/resources/vr-16x16.png ! isValidText() some more valid extensions added ! editSource() message appears if the file open is not supported. ! loadIni() Implemented support for RecentFiles & RECENTPROJECTS sections. Optimized support for section names regardless of case used. Enhanced with SWITCH instead of CASE. Optimized initialization oide:Aini regardless of the amount expected items in the INI file. Implemented a basic validation to ignore invalid sections in the INI file. + Added a few new icons for the menu of the application. ! FILE > recent files -> implementation done. ! FILE > recent projects -> implementation done. ! FILE > SAVE AND EXIT -> implementation done. ! FILE > OPEN -> supports opening multiple files ! FILE > REVERT -> implementation done. + findEditByFileName() - new method to Find an item in a Edits[] based on the file name passed as argument. + findEditByID() - new method to Find an item in aEdits[] based on the ID passed as argument. + HbIde:closeAllSources() -> implementation done. ! HbIde:closeSource() -> rewritten to support the closeAllSources() method + HbIde:closeAllOther() -> implementation done. + HbIde:saveSourceAs() -> implementation done. + HbIde:updateTitleBar() -> New method to updates the title bar of the main window, indicating the project and the current filename. + HELP > About - implementation done. + HELP > Harbour on line - implementation done. + HELP > HB Users Mailing - implementation done. + HELP > HB Developers Mailing - implementation done. + EDIT menu items were attached to the existing options in ::executeAction() ! IdeFindReplace:show() -> Detect if current edit has any selected text. ! hbide now displays the text "Untitled XX" on creating a new file. NOTE: Something is not right because when I click the close button to close the main window and he asks me if I want to save the files and when I click CANCEL it has to abort the process and not close the system as it is occurring. 2010-01-02 19:31 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg * contrib/hbide/idesaveload.prg * contrib/hbide/idethemes.prg + contrib/hbide/resources/selectionlist.ui * contrib/hbide/resources/themes.ui ! Changed the way .ppo is presented. Now a new modeless window displays .ppo source and thus you have more control over comaprison with original source. You can keep as many such .ppo windows on the screen. + Implemented Editor Themes. HBIDE provides 5 default themes, along the lines of xMate, viz., 1. Classic 2. City Lights 3. Evening Glamour 4. Sand Storm with a few changes, and 5. Pritpal's Favourite. Themes interface provides for changing the existing themes as well as constructing a new one based on any exiting themes. Then user can save them in hbide.hbt file. HBIDE always loads default 5 themes as above then, HBIDE looks for hbide.hbt in the same folder where it is. If it finds one, it attempts to load it. In the loading process it will merge the duplicate themes, including the default ones. It means, if you modify an existing default theme and then save it in hbide.hbt, at next invocation default theme will be overwritten and your changes are reflected. But if the name of the theme is changed you have yours plus default both themes available. Default theme is "Pritpal's Favourite" which will be applied to any source file opened. You can override it by applying new theme to it. Right click on <_any_source_file_> and select "Apply Theme" and finally select from a list of themes presented in a list box by double clicking onto one of choice. Next time you open HBIDE thus souce will be applied the last theme selected. You can re-define various labels on the Themes Dialog including drop-down list items of different parts of the sources. Just examine hbide.hbt and change the values of dialog elements. Differences from xMate implementation: 1. Theme can be applied to indivisual source separately. 2. Theme elements can have , and attributes. 3. Themes can be copied and re-defined for n numbers. TODO: To apply themes per project. To implement some missing parts of source, such as, background color of selections, etc. You are encouraged to test this implementation. I will be more than happy to implement descent thoughts you can imagine. 2010-01-02 19:31 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpfiledialog.prg ! An important fix. 2010-01-02 19:26 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h * contrib/hbqt/qtgui/TQSyntaxHighlighter.prg * contrib/hbqt/qth/QSyntaxHighlighter.qth + Added more functions to manage highlighting properly. 2010-01-03 02:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/tests/demoqt.prg + Changed to use new EVENTS/SLOTS layout. These are currently two STATIC vars, may be better to add :events / :slots to oWnd and keep them tied to windows, or threads. It's difficult to find out from current usage. ; Please test. 2010-01-03 02:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/filelist.mk + contrib/hbqt/hbqt_hbslots2.cpp + contrib/hbqt/hbqt_hbevents2.cpp + Added new implementation of slots and events. This fixes potential leaks in old implementation by moving HB_EVENTS, HB_SLOTS low level per-thread structures to .prg level and adding proper GC destructors to them. To use the new interface in .prg level code, following changes will have to be applied: 1. Adding new :events, :slots holder variables to .prg level. 2. Init these holder variables with QT_EVENTS_NEW() and QT_SLOTS_NEW(). 3. Make these conversions: QT_CONNECT_EVENT( ... ) -> QT_EVENTS_CONNECT( p, ... ) QT_DISCONNECT_EVENT( ... ) -> QT_EVENTS_DISCONNECT( p, ... ) QT_CONNECT_SIGNAL( ... ) -> QT_SLOTS_CONNECT( p, ... ) QT_DISCONNECT_SIGNAL( ... ) -> QT_SLOTS_DISCONNECT( p, ... ) QT_GETEVENTFILTER() -> QT_EVENTS_PTR( p ) (there is a TOFIX here for the future) 4. Delete these calls: QT_EVENTS_DESTROY() QT_SLOTS_DESTROY() ; Pritpal, can you please review this method? * contrib/hbqt/hbqt_hbdbfmodel.cpp * contrib/hbqt/hbqt.h % Memory allocation internals made static. 2010-01-03 01:30 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/tests/demoqt.prg ! Possible fix for leaks in this .prg code. Added these two calls before exit: QT_EVENTS_DESTROY() QT_SLOTS_DESTROY() * contrib/hbqt/filelist.mk - contrib/hbqt/hbqt_events.h + contrib/hbqt/hbqt_hbevents.h - contrib/hbqt/hbqt_events.cpp + contrib/hbqt/hbqt_hbevents.cpp - contrib/hbqt/hbqt_slots.h + contrib/hbqt/hbqt_hbslots.h - contrib/hbqt/hbqt_slots.cpp + contrib/hbqt/hbqt_hbslots.cpp * Renamed Events class to HBEvents. * Renamed Slots class to HBSlots. * src/vm/fm.c % Deleted unnecessary guard added in prev commit. 2010-01-03 00:28 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/fm.c + Overriding some additional C++ memory allocation operators to cover the full set required by QT, according to this document: http://doc.trolltech.com/4.5/qt-performance.html#alternative-memory-allocation ; Please report if it causes problem in other areas, also retest HBQT memory allocation after change. 2010-01-03 00:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/fm.c ! Fixed to not display "Warning, memory allocated but not released" message for non-fmstat builds. ! Fixed to display "Memory allocated but not released: none" message (without 'warning' sign) when built with fmstat and there was no unrelease blocks. 2010-01-02 23:07 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/dir.mk % Deleted code handling pre-3.81 GNU Make versions. We require 3.81 now, so no longer required. Sent by Tamas Tevesz. 2009-01-02 22:59 UTC+0100 Istvan Bisz (istvan.bisz/at/t-online.hu) * /src/vm/fm.c * Not adequate defitions of the subsequent CRT functions for the MinGW implemetations: #ifndef USE_DL_PREFIX #define dlcalloc calloc #define dlfree free #define dlmalloc malloc ... #endif /* USE_DL_PREFIX */ The malloc/free CRT functions should'nt be redefined in this way. * The mesage: "Warning, memory allocated but not released..." is sent on request (//INFO cmdarg). 2010-01-02 22:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt.h + Will now fail with forced compiler error if used with QT libs older than 4.5.0. * package/winuni/mpkg_win_uni_extra_copy.bat * Formatting. 2010-01-02 21:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/global.mk % Applied optimization sent by Tamas Tevesz. % Applied little further optimization. * One variable renamed. - Deleted checking for MAKE_381 when using 3.81 features. Now 3.81 is the minimum required so there is no point. 2010-01-02 20:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbide/hbide.prg ! Don't add binary extensions to target names. It will be added by hbmk2 automatically and properly according to target platform/compiler. ! Don't add .exe extension to hbmk2 executable name. 2010-01-02 20:45 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * harbour.spec ! Modified this line: %define hb_lflag export HB_USER_LDFLAGS="${CC_HB_USER_LDFLAGS} %{?_with_static:-static}" to this: %define hb_lflag export HB_USER_LDFLAGS= _with_static is later converted to HB_BUILD_SHARED setting which is right. * Formatting. 2010-01-02 18:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/global.mk % Applied little optimization from Tamas Tevesz. * contrib/hbide/idemisc.prg + hbide_PathProc() This function can combine relative paths together so it's the key to avoid macros dealing with placing paths to their intended location. It can replace current method of = hb_dirBase(). F.e.: hbide_PathProc( "src/mysource_in_project.prg", "projects_dir/" ) -> "projects_dir/src/mysource_in_project.prg" hbide_PathProc( "projects/myproject.hbi", hb_dirBase() ) -> "C:/harbour/contrib/hbide/projects/myproject.hbi" Please use it. ; TOFIX: Since hbide seems to intend to support a hbrun-like command prompt, maybe it's a good idea to prefix all public functions with hbide_, otherwise there will be problems when name collision occurs with user code. If this is not the goal, we can leave it. 2010-01-02 08:28 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/projects/hbide.hbi + Added missing files. A little formatting. 2010-01-02 17:06 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL * Clean Linux .rpm section, added full install commands just like for Ubuntu, added qt45-devel, added more description. (not tested, I don't have .rpm based distro) * config/global.mk ! Fixed debian package manager detection, as suggest by Tamas Tevesz. 2010-01-02 15:00 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/global.mk + Added rudamentary package manager detection (so far for darwin and linux). Please extend. This will allow to make proper dependency checking in detect.mk. 2010-01-02 13:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * harbour.spec + Added hbcairo enabler logic. ! Cleaned gtalleg inclusion. (not included anymore in base package, only in extra one) 2010-01-02 13:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * mpkg_rpm.sh + Really added cairo enabler logic. 2010-01-02 13:42 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbextcdp.ch ! Deleted unnecessary #include. [TOMERGE 2.0] 2010-01-02 12:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * mpkg_rpm.sh * Sorted '-with' checks. + Added freeimage and cairo enabler logic (none tested) * INSTALL - Deleted gtk2-devel from instructions. + Added freeimage-devel and cairo-devel to rpm pkg list. (none tested) * contrib/hbide/projects/hbide.hbi ! Deleted .exe extension from output name for portability. ! Fixed -workdir option to also have ${hb_plat} macro for portability. ; Pls remember that hbide is meant to be a portable tool. ; TOFIX: Delete -workdir option altogether. Not needed. ; TOFIX: Hard-wired dir C:\qt\2009.01\qt\lib should be stored in SVN. 2010-01-02 02:28 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * harbour.spec ! Some local leftovers deleted. 2010-01-02 02:25 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added note on libharu on Linux. * harbour.spec + Added cairo, freeimage (commented) and gtalleg sections for separate RPMs. * Reordered RPM sections alphabetically. ! Fixed typo in extra RPM decription. ; TODO: Enable above sections. [DONE] Test. ; TOFIX: gtalleg is already added in some special way, which pbly needs to be removed. [DONE] ; TOFIX: OpenSSL dependency is never set. * INSTALL + Added --with cairo + Added --with freeimage (with TOFIX markup) * Reordered --with options alphabetically. 2010-01-01 14:00 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog ; Happy New 2010. 2009-12-31 18:32 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.ch * contrib/hbide/hbide.hbp * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idemisc.prg * contrib/hbide/idesaveload.prg + contrib/hbide/idethemes.prg * contrib/hbide/resources/themes.ui + Added class to save/load themes, a work-in-progress. You can just play with user interface. More to come soon. 2009-12-31 19:07 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added QT MinGW version requirement information. * contrib/rddads/ads1.c * Formatting. 2009-12-31 08:19 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + contrib/hbide/resources/themes.ui + Added skeleton .ui file for editor themes management. 2009-12-31 07:29 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpdialog.prg ! Fixed (probably) the bug causing RTE on Ubuntu reported by Marek. 2009-12-31 13:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/codepage/Makefile ! added missing cphriso.c 2009-12-31 13:59 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt) * harbour/contrib/rddads/ads1.c ! fixed softseek seeklast behavior in case seek positions at EOF * added additional ADS function return value check in seek operation 2009-12-31 12:43 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbextcdp.ch * harbour/include/hbextlng.ch * harbour/src/lang/Makefile - harbour/src/lang/msghr437.c + harbour/src/lang/msghr646.c - harbour/src/codepage/cphr437.c + harbour/src/codepage/cphr646.c * renamed HR437 CP and LANG modules to HR646 (CROSCII / ISO-646-YU) * harbour/include/hbextcdp.ch * harbour/include/hbextlng.ch * harbour/src/codepage/Makefile - harbour/src/lang/msgsl437.c + harbour/src/lang/msgsl646.c - harbour/src/codepage/cpsl437.c + harbour/src/codepage/cpsl646.c * renamed CL437 CP and LANG modules to CL646 (SLOSCII / ISO-646-YU) * harbour/src/lang/msghriso.c ! fixed language ID + harbour/src/codepage/cphr646.c * harbour/src/codepage/cphr852.c * harbour/src/codepage/cphrwin.c + harbour/src/codepage/cpsl646.c * harbour/src/codepage/cpsliso.c * harbour/src/codepage/cpslwin.c * harbour/src/codepage/cpsl852.c ! changed the collation order so X and Y characters are sorted before Z It's CL5.2 ntxcro.obj compatible behavior. Now HR646 and SL646 Harbour CPs can be used to share data with Clipper application linked with ntxcro.obj. * harbour/include/hbextcdp.ch * harbour/src/codepage/Makefile + harbour/src/codepage/cphriso.c + added HRISO (ISO-8859-2) Harbour CP module Please test all these modifications. [TOMERGE 2.0] 2009-12-30 11:44 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h * contrib/hbqt/qtgui/QSyntaxHighlighter.cpp * contrib/hbqt/qtgui/TQSyntaxHighlighter.prg * contrib/hbqt/qth/QSyntaxHighlighter.qth + Implemented syntax highlighting mechanism at PRG level. * contrib/hbide/hbide.hbp * contrib/hbide/ideeditor.prg * contrib/hbide/idemisc.prg + contrib/hbide/iderequests.prg * contrib/hbide/idestylesheets.prg + Showcased syntax highlighting in action under prg control. This implementation offer colored tokens, bold, italic, underlined fonts. Please test. TODO: User interface to build new themes besides HBIDE defined ones. If you have, furinish the themes to be included as HBIDE's default themes, under follwoing heads: * Compiler Directives - #include... * Harbour Keywords - FUNCTION, DOCASE, ... * Operators - :=, .or., ... * Parenthesis and braces - (), {}, ... * Functions in general - DBCreate(), ... * Strings - "This is text", 'and this also' * Comments - // Comment, /* Useful Routine */, .. * Numeric constants - 123, 212.33,... * Background color The attributes will be ( in the order shown below ) aRGB = { 127,213,123 } lItalic = .T. | .F. lBold = .T. | .F. lUnderline = = .T. | .F. There are few more exotic attributes but for later... 2009-12-31 03:17 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapicdp.h * harbour/src/codepage/Makefile - harbour/src/codepage/ucyuscii.c + harbour/src/codepage/uc646_yu.c * harbour/src/codepage/cphr437.c * harbour/src/codepage/cpsl437.c * renamed internal unicode table name YUSCII->ISO-646-YU 2009-12-30 21:22 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/nortl/nortl.c ! added hb_xtraced() * harbour/src/common/hbstr.c * do not fill unused part of buffer with '\0' bytes in hb_strncpy(), hb_strncpyLower(), hb_strncpyUpper(), hb_strncpyUpperTrim(), hb_strncpyTrim() * harbour/src/common/hbtrace.c % small optimization in building Unicode OutputDebugString() message * harbour/src/codepage/Makefile * harbour/include/hbapicdp.h + harbour/src/codepage/ucyuscii.c + added YUSCII unicode table * harbour/src/codepage/cphr437.c * harbour/src/codepage/cpsl437.c ! fixed unicode table used in HR437 and SL437 Harbour CPs. It's not CP-437 but YUSCII - removed my old note "TOFIX: is it really CP-437?" TOFIX: change Harbour names of above CPs, i.e. to HRYU and SLYU * harbour/src/codepage/uckam.c * removed TOFIX note I forgot to remove when committed correct Kamenicky Unicode table. * harbour/src/codepage/uckoi8.c * harbour/src/codepage/uc857.c * harbour/src/codepage/uc1250.c * harbour/src/codepage/uc1254.c * harbour/src/codepage/uc866.c * harbour/src/codepage/uc850.c * harbour/src/codepage/uc1251.c * harbour/src/codepage/ucmaz.c * harbour/src/codepage/uc1252.c * harbour/src/codepage/uc8859_1.c * harbour/src/codepage/uc88591b.c * harbour/src/codepage/uc852.c * harbour/src/codepage/uc737.c * harbour/src/codepage/uc1253.c * harbour/src/codepage/uc1257.c * harbour/src/codepage/uc8859_2.c * updated some of my old copyright messages 2009-12-30 12:07 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/idestylesheets.prg + Some visual enhancements. 2009-12-30 10:40 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/idemisc.prg * contrib/hbide/idestylesheets.prg + Applied the patch submitted by Vailton Renato with some omissions, thanks. 1. I do like xMate's build* icons and "gotoline" icon which depics the meaning of action properly, just update them to have more colors. 2. Toolbar must not be clutted with so many options. For this purpose we have menus. * contrib/hbide/resources/*.png ! Some new and some refined imaged from Vailton. 2009-12-30 10:35 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpmenubar.prg ! Removed default style-sheet application which has to be done at .prg level with oXbp:setStyleSheet(). * contrib/hbxbp/xbptoolbar.prg ! Fix to adjust toolbar button size with :imageHeight and :imageWidth. 2009-12-29 14:34 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapi.h * harbour/src/common/hbprintf.c + added new function 'int hb_printf_params( const char * format )' which returns number of parameters necessary for format string * harbour/src/common/hbtrace.c * added protection against recursive calls when number of parameters used by HB_TRACE message us bigger then 16 and fm.c module was compiled with HB_TR_DEBUG macro % use the same number of characters for unicode and byte string buffers % use common memory area (union) for unicode and byte messages to reduce C stack usage Please test these modifications in real MS-Windows systems. 2009-12-29 00:41 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/qtgui/QTextCursor.cpp * contrib/hbqt/qtgui/TQTextCursor.prg * contrib/hbqt/qth/QTextCursor.qth ! Enabled :block() commented out method. * contrib/hbide/hbide.prg * contrib/hbide/idedocks.prg * contrib/hbide/idemisc.prg + Implemented double-click on any error/warning compiler output. This opens or brings forward source file and cursor stays at the offending source line. 2009-12-28 18:54 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/idedocks.prg + Added skeleton to process double-click on compile output. A work-in-progress. 2009-12-28 17:29 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idedocks.prg * contrib/hbide/idemisc.prg + Applied Vailton's patch. It sets the menu's in right perspective. Actions will follow shortly. 2009-12-28 15:32 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.hbp * contrib/hbide/hbide.prg + contrib/hbide/idesaveload.prg + Added new file separating the code for loading configuration. Another round of reforms, more follows. 2009-12-28 14:56 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.hbp * contrib/hbide/hbide.prg + contrib/hbide/idedocks.prg + Added new file separating the code building docking widgets. Another round of reforms, more follows. * contrib/hbide/idefindreplace.prg ! Minor. 2009-12-28 13:43 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_misc.prg % Fixed small omission, thanks Vailton. * contrib/hbxbp/xbprtf.prg % Fixed wrong Qt call, thanks Vailton. * contrib/hbide/hbide.hbp * contrib/hbide/hbide.prg + contrib/hbide/idefindreplace.prg ! Separated Find/Replace class. 2nd round of reforms. More follows. 2009-12-28 20:48 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/fm.c * include/hbapi.h + Added hb_xtraced(). Please check it might be wrong. * src/common/hbtrace.c - Deleted hack to disable winout to avoid recursive calls. + Added TOFIX to avoid recursive calls with some clever detection on error case (hb_xtracd() && no_of_formatt_strings > 16) I didn't implement it, pls do so if interested. ! Fixed MultiByteToWideChar sizeof() to HB_SIZEOFARRAY(). 2009-12-28 10:43 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + contrib/hbide/ideeditor.prg + Added missing file from previous commit. 2009-12-28 10:37 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_slots.cpp * contrib/hbqt/hbqt_slots.h + Added more signal/slots. * contrib/hbide/hbide.ch * contrib/hbide/hbide.hbp * contrib/hbide/hbide.prg ! First step of reforms. You can expect bumps. Please DONOT update atlease HBIDE in any way till I declare I am done with. 2009-12-28 10:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbtrace.c * Deleted TOFIX for va_end(). It's not required (and wasn't ever required there) since there is no va_start() call in hb_tracelog_() function at all. 2009-12-28 10:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbtrace.c ! Fixed some leftover causing error on non-win. % Replaces \r\n with \n in printf() calls. [TOMERGE 2.0] * config/win/bcc.mk + Added -CP437 bcc option as default, so that it fixes compilation on windows systems are setup to use certain (f.e. far east) multibytes codepages as default non-Unicode CP. 2009-12-28 02:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbtrace.c ! Readded hack to disable reentrancy for win specific trace logic until we clear up the issue with some Harbour API calls used from win specific trace code are calling back to the trace engine. 2009-12-28 01:56 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbtrace.c ! Fixed to not call hb_xgrab() via HB_TRACE_CONVTO() causing infinite recursion into trace engine. This replaces previously committed trick to avoid the same thing in a generic manner. It was a bug in previous Windows-support addition, which is now fixed. * Adding \r\n for OutputDebugString() text to make WinDbg display look readable, this time by simply extending printf() mask. - Deleted space trimming from OutputDebugString() passed text. Such issues should be fixed in high level code, it's not trace engine's job to make cosmetic corrections on trace text content. ; Tested with both WinDbg and DbgView. [TOMERGE 2.0] ; TOFIX: va_end() has been commented for all platforms, although it's required by all documentation I could verify. If this causes problems for specific platforms/compilers, we should only add this hack for those targets, and only when HB_TR_WINOUT is enabled. Now every non-Windows and Windows non-HB_TR_WINOUT setups are not complying with CRTL documentation. Could someone help here? [CLEARED] 2009-12-27 22:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbtrace.c ! Formatting. ! Fixed to use HB_ISSPACE(). ; NOTE/TOFIX: Anyhow I think last patch should be reverted to not manipulate passed by user string before passing it to Windows. Plus current anti-reentrancy logic should be changed to something robust, as current solution drops trace messages which is a very dangerous thing to do if we want to rely on trace output for debugging. It's not clear what "stack overflow events" are. [DONE] * doc/codestyl.txt ! Fixed link. Thanks Vailton. [TOMERGE 2.0] 2009-12-27 16:30 UTC+0100 Istvan Bisz (istvan.bisz/at/t-online.hu) * harbour/src/common/hbtrace.c * early va_end( ap ) elimination, to avoid access violation generation in a subsequent hb_vsnprintf * fix nested HB_TRACE calls handlig to avoid stack overflow events * normalized debug info sending to OutputDebugString with ending CR/LF/NULto ensure a correct view in windbg. 009-12-26 14:56 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.ch * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/idemisc.prg * contrib/hbide/resources/projectproperties.ui + contrib/hbide/resources/selectproject.ui + Applied Vailton Renato's submitted patch with one or two fixes and little formatting. This patch provides the missing functionalities which I did not concentrated on yet. Many thanks. This patch also implies that now HBIDE will reach to its final goal earlier than expected. Thanks Vailton, for your jumping in the project. To Vailton: I was having a different concept for .ppo display in non-modal independant widget having only one edit object. Can you change the current way of doing so. 2009-12-26 14:12 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/Makefile * harbour/include/hbmath.h + harbour/include/hbmather.h * harbour/include/hbsetup.h * harbour/include/hbapi.h * moved math error handler definitions and settings separate header file * moved hb_random_num() declaration from hbmath.h to hbapi.h After above modification hbmath file should be use only by code which wants to use math functions declared usually in math.h + harbour/include/hbfloat.h + added header file with test macros for floating point numbers this file should be included before any other files * harbour/src/vm/hvmall.c * harbour/src/vm/itemapi.c * harbour/src/common/hbprintf.c * harbour/src/rtl/math.c * use new macros from hbfloat.h * harbour/src/rtl/math.c + include "hbmather.h" * harbour/src/rtl/hbrandom.c * harbour/src/rdd/dbf1.c * harbour/contrib/xhb/hboutdbg.c - removed not longer necessary include "hbmath.h" * harbour/contrib/hbct/ctmath.h - do not include and * harbour/contrib/hbct/ct.h - do not include "hbmath.h" and "ctmath.h" * harbour/contrib/hbct/ctmath.c * harbour/contrib/hbct/exponent.c * harbour/contrib/hbct/ctc.c + include "ctmath.h" * harbour/contrib/hbct/trig.c * harbour/contrib/hbct/finan.c * harbour/contrib/hbct/ctmath2.c + include "ctmath.h" + include "hbmather.h" * harbour/contrib/hbct/num1.c + include "ctmath.h" + include * harbour/include/hbinit.h * harbour/src/rtl/hbsocket.c * added patches from Tamas - thanks * harbour/bin/hb-func.sh * harbour/harbour.spec + create /etc/ld.so.conf.d/harbour.conf with Harbour shared lib directory if /etc/ld.so.conf.d directory exists and user has sufficient write permission or install package is created. This modification allows to install Harbour anywhere and in modern distros using /etc/ld.so.conf.d/ harbour shared libraries will be always available for all programs [TOMERGE 2.0] 2009-12-26 12:17 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added note that at least QT 4.5.0 is required for Harbour. [TOMERGE 2.0] * package/winuni/mpkg_win_uni_extra_copy.bat + Copying full source of hbide to Windows binary release. ; TODO: Probably it'd be better to move this tool to examples to avoid such exceptions. [TOMERGE 2.0] * package/winuni/RELNOTES + Added link to sf.net files. * Next Windows binary release to not include HBQT libs built against static QT libs. [TOMERGE 2.0] * contrib/hbwin/mapi.c ! Minor correction / optimization. [TOMERGE 2.0] 2009-12-24 18:46 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg + Provided menu option which sets the codec for current session. It is also provided a slot in the statusbar. * contrib/hbqt/generator/qt45.qtp * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_garbage.h * contrib/hbqt/qtcore/filelist.mk + contrib/hbqt/qtcore/QSettings.cpp + contrib/hbqt/qtcore/TQSettings.prg + contrib/hbqt/qth/QSettings.qth + Added QSettings() class. * contrib/hbxbp/xbpmenubar.prg ! Fixed an awkward bug. 2009-12-24 15:56 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_destruct.cpp + Added prg callable function hbqt_setCodecForCStrings( cCodec ). This is base function to exploit codepages. * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbpwindow.prg ! Fixed a long standing bug which was preventing the mouse events to be submitted to parent widget. * contrib/hbxbp/xbpgeneric.prg + Added HbXbp_SetCodec( cCodec ) This function takes as parameter the Qt's codec (codepage) name and set it for conversion of CStrings automatically. NOTE: This is an attempt to introduce CodePage concept in HBQT but, because I am not conversant with codepage terminology and usage, it is a shot in the dark. Please test. I will try to hook a menu option to select a codec to hook into HBIDE. * contrib/hbide/resources/mainwindow.ui * contrib/hbide/idestylesheets.prg * contrib/hbide/hbide.prg + Implemented resizable docking widgets to hold , , , . This has rendered HBIDE very flexible and expandable with futuristic elements. 2009-12-23 22:26 UTC+0500 April White (april users.sourceforge.net) * contrib/hbbtree/hb_btree.c * bug fix: array access was in bounds but to wrong value [TOMERGE 2.0] 2009-12-23 18:40 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/filelist.mk + contrib/hbqt/hbqt_errorsys.prg * contrib/hbqt/hbqt_misc.prg * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbpgeneric.prg * contrib/hbxbp/xbpqtuiloader.prg * contrib/hbxbp/xbpwindow.prg * contrib/hbide/hbide.prg * contrib/hbide/resources/mainwindow.ui + Implemented hbqt_errorSys(). It is actually original rtl/errorsys.prg tuned to display error in a message-box. ! An experimental stage passed, leaning towards next. Please bear with me if you see a little clumsy hbide. 2009-12-23 09:07 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/resources/mainwindow.ui * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbpdialog.prg + Added an experimental protocol scheduled to be polished in next few days. 2009-12-23 13:31 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/mpkg_win_uni_extra_copy.bat + Added automatized (but not generic) logic to assemble 'unified' package. [TOMERGE 2.0] 2009-12-23 12:59 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/harbour-win-spec * harbour/harbour-wce-spec ! removed unused hbmk.cfg files which break RPM build process [TOMERGE 2.0] TODO: add support for hbmk2 configuration which cab be used with above Win32/64 and WinCE binaries 2009-12-23 12:31 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbmath.h ! enable HB_MATH_ERRNO in all *unix builds not only in GCC ones * harbour/src/vm/itemapi.c ! use finite() to check for valid double values - looks that SunCC does not report iDODO warnings so we were not informed about the problem * harbour/include/hbdefs.h * harbour/src/common/hbprintf.c % use also _STDC_C99 macro not only _ISOC99_SOURCE to detect C99 mode and do not reduce such detection to GCC [TOMERGE 2.0] 2009-12-23 05:39 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/ChangeLog * updated last entry 2009-12-23 05:36 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtwin/gtwin.c ! applied a little bit modified the patch from Jacek Potempa for setmode() in GTWIN - many thanks. Please test. [TOMERGE 2.0] 2009-12-23 02:59 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.pt_BR.po ! Restored stripped accents while saving the file with Windows-1250 CP (instead of Windows-1252). Please retest again. [TOMERGE 2.0] 2009-12-23 02:33 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.pt_BR.po + Converted to PTISO CP (which is for our purpose equivalent to Windows-1252). Thanks Vailton for the conversion. Please retest this version to be sure. 2009-12-23 01:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.pt_BR.po ! Possible fix (still guessing) to change source codepage of this file to PT850 (from PTISO). I'd like to ask native speakers to give feedback ASAP. I'm preparing 2.0.0 binary build and I'll have to include what I have. 2009-12-22 23:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/thread.c * src/vm/dynlibhb.c * src/common/hbgete.c * src/common/hbffind.c * src/common/hbfsapi.c * src/rtl/gtstd/gtstd.c * src/rtl/hbsocket.c * src/rtl/filesys.c * src/rtl/gtpca/gtpca.c * src/rtl/hbproces.c * 'int TODO' -> 'int iTODO' patch from Tamas Tevesz. Thank you. 2009-12-22 23:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/mpkg_win.nsi ! Fixed uninstallation of Start Menu on Vista/Win7, at the same time it won't ask for admin credentials anymore on these OS versions. [TOMERGE 2.0] 2009-12-22 23:16 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * harbour-win-spec * harbour-wce-spec * harbour.spec * include/hbver.h * config/global.mk * Changed version to interim version number 2.0.1dev (from 2.0.0) 2009-12-22 23:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * doc/whatsnew.txt ! Fixed date of 2.0.0 release. [TOMERGE 2.0] * external/sqlite3/sqlite3.c * external/sqlite3/sqlite3.h + sqlite upgraded to 3.6.21 (from 3.6.20) ---------- 2.0.0 ---------- 2009-12-22 22:00 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * harbour-win-spec * harbour-wce-spec * harbour.spec * include/hbver.h * package/winuni/RELNOTES * config/global.mk * Changed version to 2.0.0 (from 2.0.0rc1) * package/winuni/RELNOTES * Finalization (djgpp -> watcom) * package/winuni/mpkg_win_uni.nsi ! Fixed uninstallation of Start Menu on Vista/Win7, at the same time it won't ask for admin credentials anymore on these OS versions. * MS-DOS/OS2/Linux libs are now not selected by default. * config/dos/watcom.mk * config/dos/djgpp.mk * Disabled .dll generation for MS-DOS build for now. dos/watcom doesn't work, dos/djgpp needs special fixes in djgpp to work. In the meantime, for testing purposes they can be enabled using: HB_BUILD_DLL=dostest 2009-12-22 19:08 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * debian/changelog * Changed version to 2.0.0 (from 2.0.0rc1) * debian/copyright * Synced content with /COPYING. * debian/control * 'MS-Windows' -> 'MS Windows' ! 'MAC-OSX' -> 'Mac OS X' - debian/harbour.cfg - Deleted, no longer used. 2009-12-22 18:15 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/RELNOTES ! Typo. + Documented one more change. * utils/hbmk2/hbmk2.pt_BR.po ! Fix to prev. (codepage setup related) 2009-12-22 07:36 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg ! More refinements in Find/Replace. 2009-12-22 16:19 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/rddsql/sddfb/fbirddd.c ! Fixed warning reported by linux/watcom. 2009-12-22 16:14 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/RELNOTES * Adjusted sizes. * package/winuni/mpkg_win_uni.bat ! Fixed to create .7z and log in-place. 2009-12-22 16:05 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/mpkg_win_uni_extra_copy.bat ! Minor fix to prev. * package/winuni/mpkg_win_uni.bat * package/winuni/mpkg_win_uni.nsi + Enhanced to make it run in-place. 2009-12-22 15:17 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/mpkg_win_uni_extra_copy.bat + Added some more automatism. 2009-12-22 15:00 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) - package/winuni/HARBOUR_README_ADDINS + package/winuni/HARBOUR_README_ADDONS * Renamed. * package/winuni/mpkg_win_uni_extra_copy.bat * Changed to work from its original location. * package/winuni/mpkg_win_uni.bat * package/winuni/mpkg_win_uni.nsi * Added dos/watcom. - Commented dos/djgpp 2009-12-22 13:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.pt_BR.po ! Applied fix received from Vailton Renato to prev version. ! Fixed win/dos/os2 and *nix codepage to be PT850 and PTISO. I hope I didn't break it, please test it. * contrib/hbsqlit3/hbsqlit3.c ! Fixed to use HB_FHANDLE instead of int. It was reported by msvc64 compiler. 2009-12-22 13:09 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/RELNOTES + Added brief list of changes since beta3. (pls review / add any missing items) * utils/hbmk2/hbmk2.prg ! Use 'rc' as ar command for hpux. To be in sync with build system. 2009-12-22 11:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/config/bsd/gcc.mk + added c i s to ar parameters * harbour/src/vm/estack.c * formatting * harbour/include/hbtypes.h % replaced #ifdef ... / #undef ... with simple #undef 2009-12-22 10:51 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/RELNOTES * Finalizing. * contrib/hbbtree/hb_btree.c ! Fixed typo in prev fix. (BTW only indicated by msvc64) 2009-12-22 10:20 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * bin/postinst.prg ! Fixed typo. hbmk.cfg was not created because of this. 2009-12-22 03:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/gtwvt/gtwvt.c % Deleted unnecessary cast. * utils/hbmk2/hbmk2.pt_BR.po + Uploaded new version received from Vailton Renato. Thanks! * utils/hbmk2/hbmk2.hu_HU.po + Updated. + Added some new translations. * utils/hbmk2/hbmk2.prg * Minor formatting. ! Fixed typo in one of the displayed texts. + examples/gtwvw + examples/gtwvw/Makefile + examples/gtwvw/hbgtwvw.h + examples/gtwvw/hbole.h + examples/gtwvw/gtwvw.c + examples/gtwvw/wvwdraw.c + examples/gtwvw/wvwmenu.c + examples/gtwvw/wvwstbar.c + examples/gtwvw/wvwcheck.c + examples/gtwvw/wvwfuncs.c + examples/gtwvw/wvwpush.c + examples/gtwvw/wvwedit.c + examples/gtwvw/wvwtbar.c + examples/gtwvw/gtwvw.hbc + examples/gtwvw/gtwvw.hbp + examples/gtwvw/readme.txt + examples/gtwvw/tests + examples/gtwvw/tests/wvwtest9.rc + examples/gtwvw/tests/prog1.prg + examples/gtwvw/tests/prog2.prg + examples/gtwvw/tests/dia_excl.ico + examples/gtwvw/tests/drawimg.prg + examples/gtwvw/tests/vouch1.bmp + examples/gtwvw/tests/wvwmouse.prg + examples/gtwvw/tests/wvwtest9.hbp + examples/gtwvw/tests/hbmk.hbm + examples/gtwvw/tests/cbtest1.prg + examples/gtwvw/tests/def2.bmp + examples/gtwvw/tests/maincoor.prg + examples/gtwvw/tests/wvt2wvw.ch + examples/gtwvw/tests/cbtest6.prg + examples/gtwvw/tests/wvwtest9.prg + examples/gtwvw/tests/ebtest7.prg + examples/gtwvw/tests/vouch1.gif + examples/gtwvw/tests/maximize.prg + examples/gtwvw/tests/readme.txt + examples/gtwvw/tests/wvwtest9.xml + examples/gtwvw/tests/inpfocus.prg + examples/gtwvw/tests/prog0.prg + examples/gtwvw/docs + examples/gtwvw/docs/funclist.txt + examples/gtwvw/docs/gtwvw.txt + examples/gtwvw/docs/whatsnew.txt + Added rudimentary port of GTWVW to Harbour. (The source was current xhb CVS repository.) The port is very very (very) far from anything else than can be found in Harbour, this port involved making all the minimum required steps to build and link under Harbour, plus some extra cleanups. ! Lots of cleanups and fixes. + Added Harbour make files (both GNU make and hbmk2) + Cleaned tests to avoid multiple symbols and much simpler interdependencies. ! Removed extra test.dbf and what32 dependency. ; TOFIX: Due to public symbol collisions, this GTWVW it's probably not possible to use it with gtwin lib. ; NOTE: GTWVW is limited to non-UNICODE, non-C++, 32-bit Windows (no WinCE) builds, and for a clean compiler I had to suppress Harbour standard warning levels. Anyway, not basic tests program seems to work, although I didn't dig into them very deeply. We will see if this contrib turns out to be useful or not, and we can decide to drop it or maybe moving it to contrib once it has been brought up to Harbour standards. Although the code is huge, so don't expect to happen this very soon. 2009-12-21 18:28 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/idemisc.prg ! More refinements in Find/Replace logic. 2009-12-21 17:32 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/hbqt_misc.prg + Introduced new class HbQtObjectHandler() and made all Qt classes INHERIT from it. This class is responsible for managing common variables and tasks. Shifted VAR pPtr and METHODS configure() and OnError() into this class. * Regenerated .prg sources 2009-12-21 16:51 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/hbqt_misc.prg + Implemented class level error handelling if wrong message is sent to the object. The message is displayed in Qt's message box and includes ProcName()/ProcLine(). * Regenerated .prg sources 2009-12-22 01:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * external/pcre/Makefile ! Forcing C mode for this external component, which is mainly tested and developed for C compiler. Currently sunpro has problems in C++ mode due to little bug in current PCRE code. Reported to author here: http://bugs.exim.org/show_bug.cgi?id=939 * utils/hbmk2/hbmk2.prg * Minor formatting. * contrib/hbcairo/core.c * Using HB_TRUE/HB_FALSE instead of 1/0. 2009-12-22 02:22 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt) * harbour/contrib/hbcairo/core.c * used current GC API to store references between GC blocks ! fixed GC block storage * added additional protection against using released path in cairo_path_iterator_*() * harbour/contrib/hbcairo/text.c ! fixed copy-paste typo in cairo_set_font_matrix() 2009-12-22 00:15 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbbtree/hb_btree.c ! Cleaned code to compile without warning on BCC. ; TOFIX: ? This code looks suspicious, pls check it: --- pHeader += sizeof( HEADER_ID ) - 1; pHeader += sizeof( ( UINT32 ) HB_BTREE_HEADERSIZE ); --- * utils/hbmk2/hbmk2.pt_BR.po * utils/hbmk2/hbmk2.hu_HU.po * utils/hbmk2/hbmk2.prg + Added support for warn= (similar to -warn option) to .hbc files. 2009-12-21 15:04 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/qtgui/QMenuBar.cpp ! Regenerated after rebuilding hbqtgen.prg. 2009-12-21 23:29 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapi.h * harbour/src/vm/garbage.c - removed function hb_gcRefDec() * functions hb_gcRefInc() and hb_gcRefFree() moved to public API After recent modifications in GC which introduced user defined mark functions it's reasonable to make these function public to extend functionality and give GC full interface to user defined blocks. 2009-12-21 23:19 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/rddsql/hbrddsql.h * harbour/contrib/rddsql/sqlbase.c ! reverted recent modification which forces updating also low level SDD code ! fixed casting in C++ mode with local only modification 2009-12-21 13:07 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/qtgui/QMenuBar.cpp * contrib/hbqt/qth/QMenuBar.qth ! Fixed one remaining warning at auto generation level. 2009-12-21 22:33 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog ! Fixed UTF offset for my commits from last week. 2009-12-21 22:18 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rdd/wafunc.c * harbour/contrib/rddsql/hbrddsql.h * harbour/contrib/rddsql/sqlbase.c ! casting fod C++ builds * harbour/contrib/hbcairo/paths.c ! fixed very bad typo which probably cause GPF in function CAIRO_GET_CURRENT_POINT() 2009-12-21 13:07 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/qtgui/QMenu.cpp * contrib/hbqt/qth/QMenu.qth ! Fixed some warning reported at the time of auto generation. 2009-12-21 21:38 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/generator/hbqtgen.prg ! Fixed to use 'hbqt_gcRelease_*' instead of 'release_*' names for public release callbacks. * contrib/hbqt/qth/QApplication.qth ! Fixed static vars to be prefixed with s_. * contrib/hbqt/* * Regenerated. 2009-12-21 12:10 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/qt45.qtp * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_garbage.h + contrib/hbqt/qth/QHttpHeader.qth * contrib/hbqt/qtnetwork/filelist.mk + contrib/hbqt/qtnetwork/QHttpHeader.cpp + contrib/hbqt/qtnetwork/TQHttpHeader.prg + Added QHttpHeader() class. 2009-12-21 20:33 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/sha2.h * use '__int64' instead of 'long long' in MSC builds - older MSC versions do not support 'long long' * harbour/utils/hbmk2/hbmk2.prg * use cleaner method proposed by Viktor for adding 'clib3r' to linked library list in DOS OpenWatcom builds. 2009-12-21 20:11 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/utils/hbmk2/hbmk2.prg * added 'clib3r' to linked library list in DOS OpenWatcom builds. In pure C mode this library is not included automatically. ! do not use version suffix for harbour shared library in DJGPP builds to keep 8.3 plain DOS names (harbour[m].dxe) ! added -U to DXE3GEN parameters 2009-12-21 16:13 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg + Enabled -shared support for dos/djgpp. Not tested. + Enabled -hbdyn support for dos/djgpp. Blind coding, not tested. * ChangeLog + TODOs/TOFIXes marked as done. 2009-12-21 15:46 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/Makefile * enable HB_HVM_ALL=yes in OpenWatcom C builds - it does not cause such huge compile time overheads as in C++ mode * harbour/src/vm/dynlibhb.c * generate TODO warning also in DOS builds when HB_LIBLOAD()/HB_LIBFREE() is unsupported * harbour/include/hbwince.h ! fixed recent modification 2009-12-21 14:28 UTC+0500 April White (april users.sourceforge.net) * contrib/hbbtree/hb_btree.c * store a const to a var to be written to file in place of writing the const to the file via a cast * typo fix: store 16-bit numbers as 32-bit numbers within the file 2009-12-21 14:38 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbwince.h + added hack for missing GetEnvironmentVariable?() declarations in POCC header files for WinCE. * harbour/src/common/hbwince.c * minor simplification * harbour/src/pp/pplib.c * workaround for MSVC6 errors 2009-12-21 13:33 UTC+0500 April White (april users.sourceforge.net) * contrib/hbbtree/hb_btree.c * formatting - removed internal history (changelog) text - fixed TOFIX: casting pointer to ULONG! * this was corrected in Changelog 13312 2009-12-19 15:32:24Z april * opening a file with read-only attribute now succeeds when the read-only flag is given * reading and writing of the file header uses internal buffer built or read by little endian macros * opening & reading file header was incorrect * header is not written at close if it was opened read-only * file header size is now fixed * creating a file with read-only flag affects only the OS-level attribute; the flag itself is not saved to the file * creating with read-only and shared flags will have the shared flag discarded * altered organization of file header; this will invalidate any existing hb_btree file 2009-12-21 00:38 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/resources/finddialog.ui ! Some aesthetic artifacts set corrected. 2009-12-21 08:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbgtcore.h * harbour/include/hbapigt.h * moved declaration of hb_gtSetDefault() from hbgtcore.h to hbapigt.h * harbour/include/hbapi.h * harbour/src/vm/hvm.c + added new function hb_vmSetDefaultGT() * harbour/bin/hb-func.sh * harbour/utils/hbmk2/hbmk2.prg * use hb_vmSetDefaultGT() to set default GT * removed extern declarations for functions defined in hbapi.h * harbour/src/vm/dynlibhb.c + added support for HB_LIBLOAD()/HB_LIBFREE() in DJGPP 2.04 builds * harbour/config/global.mk * use 8.3 names for harbour dynamic libraries in all DOS builds * harbour/config/dos/djgpp.mk + added support for dynamic libraries (DXE) in DJGPP builds. DXE is sth similar to DLL in Windows and can be used with DJGPP 2.04. I had to make some modifications in DXE header files to make it working so it will not work in default DJGPP installation. I'll document these modifications in the future. * harbour/config/dos/watcom.mk * enable creating of harbour dynamic libraries only when HB_BUILD_DLL is explictly set by user to 'yes'. In DOS DJGPP and OpenWatcom builds DLLs support is not functional yet. * harbour/config/dyn.mk * added an option to create harbour dynamic libraries from static ones instead of .o|.obj files. It's necessary for DXE3GEN which internally calls LD which has some limited on maximum size of passed parameters. TODO: make HB_DYN_LIBS definition common for dyn.mk and lib.mk 2009-12-21 02:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt.ch * contrib/hbxbp/xbp.ch + Using HB_TRACE() macro. This means that now .prg level trace messages have to be enabled the standard way, __HB_DEBUG__ has no meaning anymore. * contrib/hbwin/tests/testwmtx.prg - Deleted some bits added by me as per Xavi's suggestions. 2009-12-21 00:59 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbextern.ch + Added new trace functions. ; TODO: Use these new functions in HBQT, HBXBP. [DONE] * contrib/hbwin/win_dll.c ! Fix for OpenWatcom. Seems to require LPVOID in asm code. * contrib/hbqt/hbqt_destruct.cpp * Minor formatting. ('return( x )' -> 'return x', return is not a function) + Added 'TODO:' to todo text. + Added TOFIX to hb_parptr() usage. Without reference counting this is still dangerous. Probably some mechanisms would be needed to count references when attaching one GC collected pointer to another object, and decrement references when disconnecting or deleting holder object. Without this, there will always be a possibility that some objects refer to deleted objects. Unless I'm missing some logic which already that. Probably "delayed release" is the mechanism which is trying to solve that problem at the moment. * contrib/hbwin/wapi_winbase_mutex.c * Minor formatting (superfluous brackets) 2009-12-20 22:12 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/Makefile + harbour/include/hbtrace.ch * harbour/include/hbtrace.h * harbour/src/rtl/trace.c * harbour/src/common/hbtrace.c ! fixed hb_tracelevel() C function to change trace filter instead of last message level. It also fixed .prg function HB_TRACELEVEL(). + added new C function: void hb_tracelog( int level, const char * file, int line, const char * proc, const char * fmt, ... ) + added new .prg functions: hb_traceLogLevel( ) -> hb_traceLog( ) // generate message at // hb_traceLogLevel() hb_traceLogAt( , ) + added support for HB_TRACE() messages in .prg code with the same functionality as in C code: HB_TRACE( , ) HB_TRACE() code if filtered at compile time by HB_TR_LEVEL_* macros i.e. -DHB_TR_LEVEL_INFO used as harbour compiler parameter and at runtime by HB_TR_LEVEL= envvar (set HB_TR_LEVEL=DEBUG) or by hb_traceLevel( ) function (hb_traceLevel( HB_TR_DEBUG )) Default compile time and runtime trace level for C and .prg code is HB_TR_WARNING. 2009-12-20 11:53 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbqtableview.cpp % Fixed one TOFIX. * contrib/hbqt/hbqt_destruct.cpp % Fixed one TOFIX. * contrib/hbqt/hbqt_events.cpp % Fixed one TOFIX. * contrib/hbqt/hbqt_slots.cpp % Fixed one TOFIX. Please review me, though everything is working fine. 2009-12-20 09:11 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_slots.cpp * contrib/hbqt/hbqt_slots.h + Added more signal/slots. * contrib/hbide/hbide.ch * contrib/hbide/hbide.prg ! Improved Find/Replace functionality. Now it is usable feature though I have to tweak it a little more. The current functionality is as: CTRL+F or "Find" icon => Opens dialog. CTRL+N finds next occurance of current "Find" string - always shown in one of the panels of status-bar. This invocation is equivalent to if you click pushbutton of the dialog. CTRL+R Replaces the current selection with current "Replace" string previously entered or selected with push button. This invocation is equivalent to if you click pushbutton of the dialog. History of / strings is maintained and is populated in drop-down list of respective combo-boxes. TODO: and features. 2009-12-20 16:15 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/tests/testdll.prg * contrib/hbwin/win_dll.c + Added support for passing parameters by reference in win64 mode. + Added logic to detect UNICODE mode. Enabled only in win64. ! One regression fixed in previous version (in non-win64 mode). ! Fixed default return to be the same in win64 as in non-win64 mode. ; TOFIX: Strings passed by reference seems to be wrong. ; TOFIX: UNICODE support for string passed by reference doesn't work. ; Please test/review and contribute to this, current state is pretty much the extent I'm willing and capable of implementing this. 2009-12-20 12:29 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_dll.c + Added support for Win64 dll calls to functions with no parameter. + Added internal support to call UNICODE functions in Win64 mode. + Added support for CP conversion for non-UNICODE functions in Win64 mode. (for now this is the only active mode). ! DllCall() made static function. * Renamed some constants, functions and variables. ; TODO: Add logic to enable UNICODE mode when needed. 2009-12-20 05:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/dynlibhb.c * src/rtl/hbinet.c * src/compiler/hbcmplib.c * contrib/hbpgsql/postgres.c ! Suppressing MSVC C mode warnings by ( void * ) casting in hb_xfree() calls. 2009-12-20 04:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + contrib/hbwin/tests/testwmtx.prg + Added Windows mutex example. 2009-12-20 04:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/Makefile + contrib/hbwin/wapi_winbase_mutex.c + Added Windows mutex wrappers. Contributed by Xavi . ! Added SVN header, some minor formatting. 2009-12-20 04:35 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_dll.c + Added portable Win64 support (both x86_64 and IA64 and anything else). ; TODO: double parameters and return value. ; TODO: parameters passed by reference. * Renamed some structure to not look like Windows ones. * Using HB_BOOL. ! Fixed to return NIL when CTYPE_VOID is requested. (was 0 before) 2009-12-20 02:42 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_dll.c * Little cleanup to FARPROC casting. Now cast is done at Harbour interface points, not internally. It now generates more warnings. If someone has a fix how to suppress FAPROC to void * cast warnings, pls tell. 2009-12-19 17:17 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.ch * contrib/hbide/ideactions.prg * contrib/hbide/hbide.prg + Implemented ::goto() method. Invoke it by "Goto Line" icon. + Implemented save/restore position of various dialogs. 2009-12-20 01:53 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbbtree/hb_btree.c * Fixed 'const' usage in some cast. (some cast were not required anymore, two has been changed to not strip const) 2009-12-19 23:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/tests/demoqt.prg ! Fixed to use :pPtr instead of now dummy QT_PTROF() macro. 2009-12-19 13:54 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg ! Made functional based on XbpQtUiLoader() class. * contrib/hbqt/hbqt.ch % QT_PTROF( obj ) ( obj:pPtr ) => ( obj ). Converted to dummy for backward compatibility. * contrib/hbxbp/xbpqtuiloader.prg ! Minor. 2009-12-19 22:48 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/hbwapi.h ! Fixed some wapi_ret_*() macros. This caused that several WAPI_TREEVIEW*() functions were not returning a value. Thanks to Petr Chornyj for reporting it. 2009-12-19 09:23 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbp.ch ! Removed QT_PTROFXBP() macro. I have retained QT_PTROF() macro because a lot of you must still be using it in your code. It is sceduled to be removed after this release. 2009-12-19 09:14 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbxbp/xbpqtuiloader.prg * contrib/hbxbp/xbpstatusbar.prg ! Removed QT_PTROF() and QT_PTROFXBP() macro calls entirely. We can delete these macros alltogether. 2009-12-19 08:15 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbprtf.prg * contrib/hbxbp/xbpwindow.prg ! Removed all QT_PTROF() macro calls. 2009-12-19 16:52 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/thread.c * added hb_threadOnceInit() to .prg function list * harbour/include/hbinit.h * use HB_STATIC_STARTUP as default initialization method of all C++ compilers 2009-12-19 15:18 UTC+0500 April White (april users.sourceforge.net) * contrib/hbbtree/hb_btree.c * add a union field to encapsulate a var and a pointer, to pacify 64-compiler warning * removed unnecessary casts (I hope) 2009-12-19 13:45 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg * config/global.mk ! Not considering /opt and /opt/harbour as "system location" for Harbour, following Lorenzo's advice. 2009-12-19 13:34 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/sha2.c ! Added trick to make it compile with Pelles C 6.00.6. Without this trick Pelles C compiler exits with internal error. * doc/whatsnew.txt + Added NOTE about Pelles C 6. 2009-12-19 12:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/codepage/Makefile + src/codepage/cpel437.c - src/codepage/cpgr437.c * include/hbextcdp.ch * Renamed GR437 codepage to EL437. EL is the ISO language code for Greek. 2009-12-19 02:30 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbxbp/xbpqtuiloader.prg ! Implemented signal/slot mechanism. A working usage is the "Find/Replace" dialog is now entirely based on XbpQtUiLoader() class. "Project Properties" dialogs skeleton is also in place and is working, just a little more required to make it completely functional. XbpQtUiLoader() class appears to be heading towards an excellent tool and will eliminate to have a native Form Designer. Simply design a complex widget in Qt's powerful Qt Creater and exploit is with this class in the application. I have a lot many ideas to cook, your suggestions are welcome. 2009-12-19 11:22 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtwin/gtwin.c ! applied Xavi's patch fixing CTRL+C error handler setting in newly allocated consoles 2009-12-18 22:13 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/qth/QCoreApplication.qth * contrib/hbqt/qth/QErrorMessage.qth * contrib/hbqt/qth/QList.qth * contrib/hbqt/qth/QTextEdit.qth ! Supressed some error reported generation process messages. * contrib/hbqt/generator/hbqtgen.prg ! Implemented highly flexible and optimized code for METHOD QSomeObj:new(...), thanks to Przemek for tips. Now all classes have the same way the constructor is called. [ Regenerated Sources Follows ] 2009-12-18 19:15 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/idemisc.prg * contrib/hbxbp/Makefile * contrib/hbxbp/xbpgeneric.prg + contrib/hbxbp/xbpqtuiloader.prg + Started XbpQtUiLoader() CLASS TO manage .ui components. A work-in-progress. 2009-12-18 16:01 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/generator/hbqtgen.prg * contrib/hbide/hbide.prg * contrib/hbqt/tests/demoqt.prg * contrib/hbxbp/xbpstatic.prg * contrib/hbxbp/xbpwindow.prg + Implemented passing HBQT objects to METHOD QSomeObj:new(...). Now there is seldome a need to use QT_PTROF() macro. demoxbp/demoqt/hbide are working perfectly. [ Regenerated sources follow ] 2009-12-18 13:04 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbpwindow.prg ! Fixed "lSuccess" issue. 2009-12-18 18:53 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * doc/whatsnew.txt + Added text documenting whatsnew missing parts. * utils/hbmk2/hbmk2.prg ! Potential fix to external commands when using script and called in a loop. 2009-12-18 14:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/RELNOTES + Added Cairo version. 2009-12-18 14:34 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/RELNOTES * Updated FreeImage component version missed form prev commit. 2009-12-18 13:17 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/bin/hb-func.sh ! use CC_HB_USER_LIBS instead of HB_USER_LIBS in linked library list current HB_USER_LIBS has different meaning in build process then in the past 2009-12-18 12:54 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/gtxwc/gtxwc.c * Prefixed static vars with s_. 2009-12-18 12:43 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/mapi.c ! Fixed typo in r13235 patch. This could have caused memory corruption and MAPI errors. ; Please retest. 2009-12-18 12:31 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/RELNOTES + Updated packages used by upcoming release. 2009-12-18 11:20 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c + accept "TEXT" selections is better forms cannot be found * removed hack not necessary after recent code cleanup 2009-12-18 10:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_destruct.cpp ! Added missing 'extern'. % Deleted '#include hbstack.h' * Formatting. 2009-12-18 01:37 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_base.cpp * contrib/hbqt/hbqt_destruct.cpp * contrib/hbqt/hbqt_events.cpp * contrib/hbqt/hbqt_slots.cpp * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbphtmlviewer.prg * contrib/hbxbp/xbpmenubar.prg * contrib/hbxbp/xbpprinter.prg * contrib/hbxbp/xbppushbutton.prg * contrib/hbxbp/xbptoolbar.prg * contrib/hbxbp/xbpwindow.prg * contrib/hbqt/tests/demoqt.prg * contrib/hbide/hbide.prg ! Cleaned up QT_PTROF() macro altogether. A few instances are left in the HBXBP scheduled to be reviewed later. 2009-12-18 10:19 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added more generic link for QT OSS downloads. * contrib/hbqt/* * Regenerated. (Please list only '* contrib/hbqt/*' to avoid growing ChangeLog with several hundred entries each time the generator changes) 2009-12-18 09:58 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_hbdbfmodel.cpp * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/hbqt_hbqtableview.cpp * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_destruct.cpp * contrib/hbqt/hbqt_hbqmainwindow.cpp * contrib/hbqt/hbqt_base.cpp ! Fixed gcFuncs() to be named hbqt_gcFuncs(). This is a public function, please remember to prefix all public functions to have a lib specific prefix. ; TODO: Regenerate. [DONE] 2009-12-18 09:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Added direct link to QT Windows 4.5.3 pkg. * contrib/hbqt/detect.mk * contrib/hbqt/moc.mk + Added my copyright. * contrib/hbqt/hbqt_hbdbfmodel.cpp * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/hbqt_hbqtableview.cpp * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_hbqmainwindow.cpp ! Fixed some public C functions to hold hbqt_ prefix, instead of using generic names. ! Added one missing 'extern' keyword. + Added TOFIX for QT_HBQTABLEVIEW_NAVIGATE() which has a remaining leak of one typical type. ; TOFIX: Do the same with gcFuncs(). [DONE] 2009-12-17 22:24 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/idemisc.prg * contrib/hbqt/tests/demoqt.prg * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbphtmlviewer.prg * contrib/hbxbp/xbpmenubar.prg * contrib/hbxbp/xbppushbutton.prg * contrib/hbxbp/xbprtf.prg * contrib/hbxbp/xbptoolbar.prg * contrib/hbxbp/xbpwindow.prg ! Further cleanup of QT_PTROF() macro. * contrib/hbqt/generator/hbqtgen.prg ! Minor. 2009-12-18 04:08 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c ! fixed yet another one memory leak 2009-12-18 03:58 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c ! fixed memory leak caused by unreleased text property value 2009-12-17 18:57 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbp3state.prg * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbpcheckbox.prg * contrib/hbxbp/xbpcombobox.prg * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbpfiledialog.prg * contrib/hbxbp/xbpfontdialog.prg * contrib/hbxbp/xbplistbox.prg * contrib/hbxbp/xbpmenubar.prg * contrib/hbxbp/xbppushbutton.prg * contrib/hbxbp/xbpradiobutton.prg * contrib/hbxbp/xbpstatusbar.prg * contrib/hbxbp/xbptoolbar.prg * contrib/hbxbp/xbpwindow.prg ! Cleaned QT_PTROF() macro, first phase. 2009-12-17 18:31 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/tests/demoqt.prg * contrib/hbxbp/tests/demoxbp.prg ! Cleaned some QT_PTROF() macros, first phase. ! Some more debug info. 2009-12-17 18:10 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg ! Some more info capturing in project building phase with QProcess(). 2009-12-18 03:02 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c ! fixed holders for properties format 32 to be long - it's important for 64 bit platforms. ! removed unsupported in current code "COMPOUND_TEXT" target ! readded support for "TEXT" target 2009-12-17 16:04 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg ! Removed dummy macros to honor original ones. ! Removed QT_PTROF() whereever these were not needed anymore. ! Retained QT_PTROFXBP() until further discussions. Now all the components are working fine. 2009-12-17 15:17 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbp3state.prg * contrib/hbxbp/xbpcheckbox.prg * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbplistbox.prg * contrib/hbxbp/xbpmenubar.prg * contrib/hbxbp/xbpmle.prg * contrib/hbxbp/xbpradiobutton.prg * contrib/hbxbp/xbprtf.prg * contrib/hbxbp/xbpscrollbar.prg * contrib/hbxbp/xbpsle.prg * contrib/hbxbp/xbpspinbutton.prg * contrib/hbxbp/xbpstatic.prg * contrib/hbxbp/xbpstatusbar.prg * contrib/hbxbp/xbptabpage.prg * contrib/hbxbp/xbptoolbar.prg * contrib/hbxbp/xbptreeview.prg + Added METHOD hbCreateFromQtPtr(), skeletons only. 2009-12-17 22:59 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/mapi.c ! Fixed typo causing GPF when using 'long' calling form. ! Fixed not counting recipients when using 'simple' calling form. ; Toninho, could you pls retest? 2009-12-17 22:21 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_misc.prg * contrib/hbide/hbide.prg - Deleted hack which moved HBXBP specific functionality into the core of HBQT. I had to restore QT_PTROFXBP() macros inside hbide. QT_PTROFXBP() has not much to do with QT_PTROF() as the former serves to access oWidget member of passed class. I see no need to move such logic into HBQT core code. I restored QT_PTROF() also, but it's redefined as a dummy in hbide.prg. I don't understand now why QT_PTROF() works as dummy in hbide, but it doesn't when used as dummy in HBXBP. All in all, this means the .prg level :pPtr trick is still needed in some places, while it's not needed in some others. ; TOFIX: HBQT has no pointer checking at all before accessing C++ level objects, which means the simplest .prg level error is instantly resulting in a GPF. All hb_par_*() results must be checked for NULL before accessing them, or better yet, and RTE should be generated right from the hb_par_*() function. * src/vm/classes.c * Minor formatting. 2009-12-17 12:46 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c + added hack for accessing selections marked by FireFox which does not inform about UTF8_STRING target though it supports it 2009-12-17 02:06 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/filelist.mk + contrib/hbqt/hbqt_misc.prg * contrib/hbqt/generator/hbqtgen.prg * contrib/hbqt/qtcore/TQAbstractItemModel.prg * contrib/hbqt/qtcore/TQAbstractListModel.prg * contrib/hbqt/qtcore/TQAbstractTableModel.prg * contrib/hbqt/qtcore/TQBitArray.prg * contrib/hbqt/qtcore/TQByteArray.prg * contrib/hbqt/qtcore/TQCoreApplication.prg * contrib/hbqt/qtcore/TQDataStream.prg * contrib/hbqt/qtcore/TQDate.prg * contrib/hbqt/qtcore/TQDateTime.prg * contrib/hbqt/qtcore/TQDir.prg * contrib/hbqt/qtcore/TQEvent.prg * contrib/hbqt/qtcore/TQEventLoop.prg * contrib/hbqt/qtcore/TQFile.prg * contrib/hbqt/qtcore/TQFileInfo.prg * contrib/hbqt/qtcore/TQIODevice.prg * contrib/hbqt/qtcore/TQLatin1Char.prg * contrib/hbqt/qtcore/TQLatin1String.prg * contrib/hbqt/qtcore/TQLine.prg * contrib/hbqt/qtcore/TQLineF.prg * contrib/hbqt/qtcore/TQList.prg * contrib/hbqt/qtcore/TQLocale.prg * contrib/hbqt/qtcore/TQMimeData.prg * contrib/hbqt/qtcore/TQModelIndex.prg * contrib/hbqt/qtcore/TQObject.prg * contrib/hbqt/qtcore/TQPoint.prg * contrib/hbqt/qtcore/TQPointF.prg * contrib/hbqt/qtcore/TQProcess.prg * contrib/hbqt/qtcore/TQRect.prg * contrib/hbqt/qtcore/TQRectF.prg * contrib/hbqt/qtcore/TQRegExp.prg * contrib/hbqt/qtcore/TQResource.prg * contrib/hbqt/qtcore/TQSignalMapper.prg * contrib/hbqt/qtcore/TQSize.prg * contrib/hbqt/qtcore/TQSizeF.prg * contrib/hbqt/qtcore/TQStringList.prg * contrib/hbqt/qtcore/TQTextBoundaryFinder.prg * contrib/hbqt/qtcore/TQTextCodec.prg * contrib/hbqt/qtcore/TQTextDecoder.prg * contrib/hbqt/qtcore/TQTextEncoder.prg * contrib/hbqt/qtcore/TQTextStream.prg * contrib/hbqt/qtcore/TQThread.prg * contrib/hbqt/qtcore/TQTime.prg * contrib/hbqt/qtcore/TQTimer.prg * contrib/hbqt/qtcore/TQTranslator.prg * contrib/hbqt/qtcore/TQUiLoader.prg * contrib/hbqt/qtcore/TQUrl.prg * contrib/hbqt/qtcore/TQVariant.prg * contrib/hbqt/qtgui/TQAbstractButton.prg * contrib/hbqt/qtgui/TQAbstractItemDelegate.prg * contrib/hbqt/qtgui/TQAbstractItemView.prg * contrib/hbqt/qtgui/TQAbstractPrintDialog.prg * contrib/hbqt/qtgui/TQAbstractProxyModel.prg * contrib/hbqt/qtgui/TQAbstractScrollArea.prg * contrib/hbqt/qtgui/TQAbstractSlider.prg * contrib/hbqt/qtgui/TQAbstractSpinBox.prg * contrib/hbqt/qtgui/TQAbstractTextDocumentLayout.prg * contrib/hbqt/qtgui/TQAction.prg * contrib/hbqt/qtgui/TQActionGroup.prg * contrib/hbqt/qtgui/TQApplication.prg * contrib/hbqt/qtgui/TQBitmap.prg * contrib/hbqt/qtgui/TQBoxLayout.prg * contrib/hbqt/qtgui/TQBrush.prg * contrib/hbqt/qtgui/TQButtonGroup.prg * contrib/hbqt/qtgui/TQCalendarWidget.prg * contrib/hbqt/qtgui/TQCheckBox.prg * contrib/hbqt/qtgui/TQClipboard.prg * contrib/hbqt/qtgui/TQColor.prg * contrib/hbqt/qtgui/TQColorDialog.prg * contrib/hbqt/qtgui/TQComboBox.prg * contrib/hbqt/qtgui/TQCommandLinkButton.prg * contrib/hbqt/qtgui/TQCommonStyle.prg * contrib/hbqt/qtgui/TQCompleter.prg * contrib/hbqt/qtgui/TQConicalGradient.prg * contrib/hbqt/qtgui/TQContextMenuEvent.prg * contrib/hbqt/qtgui/TQCursor.prg * contrib/hbqt/qtgui/TQDateEdit.prg * contrib/hbqt/qtgui/TQDateTimeEdit.prg * contrib/hbqt/qtgui/TQDesktopWidget.prg * contrib/hbqt/qtgui/TQDial.prg * contrib/hbqt/qtgui/TQDialog.prg * contrib/hbqt/qtgui/TQDirModel.prg * contrib/hbqt/qtgui/TQDockWidget.prg * contrib/hbqt/qtgui/TQDoubleSpinBox.prg * contrib/hbqt/qtgui/TQDragEnterEvent.prg * contrib/hbqt/qtgui/TQDragLeaveEvent.prg * contrib/hbqt/qtgui/TQDragMoveEvent.prg * contrib/hbqt/qtgui/TQDropEvent.prg * contrib/hbqt/qtgui/TQErrorMessage.prg * contrib/hbqt/qtgui/TQFileDialog.prg * contrib/hbqt/qtgui/TQFileIconProvider.prg * contrib/hbqt/qtgui/TQFileSystemModel.prg * contrib/hbqt/qtgui/TQFocusEvent.prg * contrib/hbqt/qtgui/TQFocusFrame.prg * contrib/hbqt/qtgui/TQFont.prg * contrib/hbqt/qtgui/TQFontComboBox.prg * contrib/hbqt/qtgui/TQFontDatabase.prg * contrib/hbqt/qtgui/TQFontDialog.prg * contrib/hbqt/qtgui/TQFontInfo.prg * contrib/hbqt/qtgui/TQFontMetrics.prg * contrib/hbqt/qtgui/TQFontMetricsF.prg * contrib/hbqt/qtgui/TQFormLayout.prg * contrib/hbqt/qtgui/TQFrame.prg * contrib/hbqt/qtgui/TQGradient.prg * contrib/hbqt/qtgui/TQGridLayout.prg * contrib/hbqt/qtgui/TQGroupBox.prg * contrib/hbqt/qtgui/TQHBoxLayout.prg * contrib/hbqt/qtgui/TQHeaderView.prg * contrib/hbqt/qtgui/TQHelpEvent.prg * contrib/hbqt/qtgui/TQIcon.prg * contrib/hbqt/qtgui/TQImage.prg * contrib/hbqt/qtgui/TQImageReader.prg * contrib/hbqt/qtgui/TQImageWriter.prg * contrib/hbqt/qtgui/TQInputContext.prg * contrib/hbqt/qtgui/TQInputDialog.prg * contrib/hbqt/qtgui/TQInputEvent.prg * contrib/hbqt/qtgui/TQInputMethodEvent.prg * contrib/hbqt/qtgui/TQItemSelection.prg * contrib/hbqt/qtgui/TQItemSelectionModel.prg * contrib/hbqt/qtgui/TQKeyEvent.prg * contrib/hbqt/qtgui/TQKeySequence.prg * contrib/hbqt/qtgui/TQLabel.prg * contrib/hbqt/qtgui/TQLayout.prg * contrib/hbqt/qtgui/TQLayoutItem.prg * contrib/hbqt/qtgui/TQLCDNumber.prg * contrib/hbqt/qtgui/TQLinearGradient.prg * contrib/hbqt/qtgui/TQLineEdit.prg * contrib/hbqt/qtgui/TQListView.prg * contrib/hbqt/qtgui/TQListWidget.prg * contrib/hbqt/qtgui/TQListWidgetItem.prg * contrib/hbqt/qtgui/TQMainWindow.prg * contrib/hbqt/qtgui/TQMatrix.prg * contrib/hbqt/qtgui/TQMenu.prg * contrib/hbqt/qtgui/TQMenuBar.prg * contrib/hbqt/qtgui/TQMessageBox.prg * contrib/hbqt/qtgui/TQMouseEvent.prg * contrib/hbqt/qtgui/TQMoveEvent.prg * contrib/hbqt/qtgui/TQMovie.prg * contrib/hbqt/qtgui/TQPageSetupDialog.prg * contrib/hbqt/qtgui/TQPaintDevice.prg * contrib/hbqt/qtgui/TQPainter.prg * contrib/hbqt/qtgui/TQPainterPath.prg * contrib/hbqt/qtgui/TQPaintEvent.prg * contrib/hbqt/qtgui/TQPalette.prg * contrib/hbqt/qtgui/TQPen.prg * contrib/hbqt/qtgui/TQPicture.prg * contrib/hbqt/qtgui/TQPixmap.prg * contrib/hbqt/qtgui/TQPlainTextEdit.prg * contrib/hbqt/qtgui/TQPolygon.prg * contrib/hbqt/qtgui/TQPolygonF.prg * contrib/hbqt/qtgui/TQPrintDialog.prg * contrib/hbqt/qtgui/TQPrintEngine.prg * contrib/hbqt/qtgui/TQPrinter.prg * contrib/hbqt/qtgui/TQPrintPreviewDialog.prg * contrib/hbqt/qtgui/TQProgressBar.prg * contrib/hbqt/qtgui/TQProgressDialog.prg * contrib/hbqt/qtgui/TQPushButton.prg * contrib/hbqt/qtgui/TQRadialGradient.prg * contrib/hbqt/qtgui/TQRadioButton.prg * contrib/hbqt/qtgui/TQRegion.prg * contrib/hbqt/qtgui/TQResizeEvent.prg * contrib/hbqt/qtgui/TQScrollArea.prg * contrib/hbqt/qtgui/TQScrollBar.prg * contrib/hbqt/qtgui/TQSessionManager.prg * contrib/hbqt/qtgui/TQSizeGrip.prg * contrib/hbqt/qtgui/TQSizePolicy.prg * contrib/hbqt/qtgui/TQSlider.prg * contrib/hbqt/qtgui/TQSound.prg * contrib/hbqt/qtgui/TQSpacerItem.prg * contrib/hbqt/qtgui/TQSpinBox.prg * contrib/hbqt/qtgui/TQSplashScreen.prg * contrib/hbqt/qtgui/TQSplitter.prg * contrib/hbqt/qtgui/TQStandardItem.prg * contrib/hbqt/qtgui/TQStandardItemModel.prg * contrib/hbqt/qtgui/TQStatusBar.prg * contrib/hbqt/qtgui/TQStringListModel.prg * contrib/hbqt/qtgui/TQStyle.prg * contrib/hbqt/qtgui/TQStyledItemDelegate.prg * contrib/hbqt/qtgui/TQStyleFactory.prg * contrib/hbqt/qtgui/TQStyleHintReturn.prg * contrib/hbqt/qtgui/TQStyleHintReturnMask.prg * contrib/hbqt/qtgui/TQStyleHintReturnVariant.prg * contrib/hbqt/qtgui/TQStyleOption.prg * contrib/hbqt/qtgui/TQStyleOptionButton.prg * contrib/hbqt/qtgui/TQStyleOptionComboBox.prg * contrib/hbqt/qtgui/TQStyleOptionComplex.prg * contrib/hbqt/qtgui/TQStyleOptionDockWidget.prg * contrib/hbqt/qtgui/TQStyleOptionFocusRect.prg * contrib/hbqt/qtgui/TQStyleOptionFrame.prg * contrib/hbqt/qtgui/TQStyleOptionGroupBox.prg * contrib/hbqt/qtgui/TQStyleOptionHeader.prg * contrib/hbqt/qtgui/TQStyleOptionMenuItem.prg * contrib/hbqt/qtgui/TQStyleOptionProgressBar.prg * contrib/hbqt/qtgui/TQStyleOptionSizeGrip.prg * contrib/hbqt/qtgui/TQStyleOptionSlider.prg * contrib/hbqt/qtgui/TQStyleOptionSpinBox.prg * contrib/hbqt/qtgui/TQStyleOptionTab.prg * contrib/hbqt/qtgui/TQStyleOptionTabBarBase.prg * contrib/hbqt/qtgui/TQStyleOptionTabWidgetFrame.prg * contrib/hbqt/qtgui/TQStyleOptionTitleBar.prg * contrib/hbqt/qtgui/TQStyleOptionToolBar.prg * contrib/hbqt/qtgui/TQStyleOptionToolBox.prg * contrib/hbqt/qtgui/TQStyleOptionToolButton.prg * contrib/hbqt/qtgui/TQStyleOptionViewItem.prg * contrib/hbqt/qtgui/TQStylePainter.prg * contrib/hbqt/qtgui/TQSyntaxHighlighter.prg * contrib/hbqt/qtgui/TQSystemTrayIcon.prg * contrib/hbqt/qtgui/TQTabBar.prg * contrib/hbqt/qtgui/TQTableView.prg * contrib/hbqt/qtgui/TQTableWidget.prg * contrib/hbqt/qtgui/TQTableWidgetItem.prg * contrib/hbqt/qtgui/TQTableWidgetSelectionRange.prg * contrib/hbqt/qtgui/TQTabWidget.prg * contrib/hbqt/qtgui/TQTextBlock.prg * contrib/hbqt/qtgui/TQTextBlockFormat.prg * contrib/hbqt/qtgui/TQTextBlockGroup.prg * contrib/hbqt/qtgui/TQTextBrowser.prg * contrib/hbqt/qtgui/TQTextCharFormat.prg * contrib/hbqt/qtgui/TQTextCursor.prg * contrib/hbqt/qtgui/TQTextDocument.prg * contrib/hbqt/qtgui/TQTextDocumentFragment.prg * contrib/hbqt/qtgui/TQTextDocumentWriter.prg * contrib/hbqt/qtgui/TQTextEdit.prg * contrib/hbqt/qtgui/TQTextFormat.prg * contrib/hbqt/qtgui/TQTextFragment.prg * contrib/hbqt/qtgui/TQTextFrame.prg * contrib/hbqt/qtgui/TQTextFrameFormat.prg * contrib/hbqt/qtgui/TQTextImageFormat.prg * contrib/hbqt/qtgui/TQTextInlineObject.prg * contrib/hbqt/qtgui/TQTextItem.prg * contrib/hbqt/qtgui/TQTextLayout.prg * contrib/hbqt/qtgui/TQTextLength.prg * contrib/hbqt/qtgui/TQTextLine.prg * contrib/hbqt/qtgui/TQTextListFormat.prg * contrib/hbqt/qtgui/TQTextObject.prg * contrib/hbqt/qtgui/TQTextOption.prg * contrib/hbqt/qtgui/TQTextTableFormat.prg * contrib/hbqt/qtgui/TQTimeEdit.prg * contrib/hbqt/qtgui/TQToolBar.prg * contrib/hbqt/qtgui/TQToolBox.prg * contrib/hbqt/qtgui/TQToolButton.prg * contrib/hbqt/qtgui/TQTransform.prg * contrib/hbqt/qtgui/TQTreeView.prg * contrib/hbqt/qtgui/TQTreeWidget.prg * contrib/hbqt/qtgui/TQTreeWidgetItem.prg * contrib/hbqt/qtgui/TQValidator.prg * contrib/hbqt/qtgui/TQVBoxLayout.prg * contrib/hbqt/qtgui/TQWheelEvent.prg * contrib/hbqt/qtgui/TQWidget.prg * contrib/hbqt/qtgui/TQWidgetAction.prg * contrib/hbqt/qtgui/TQWidgetItem.prg * contrib/hbqt/qtgui/TQWindowsStyle.prg * contrib/hbqt/qtgui/TQWizard.prg * contrib/hbqt/qtgui/TQWizardPage.prg * contrib/hbqt/qtnetwork/TQFtp.prg * contrib/hbqt/qtnetwork/TQHttp.prg * contrib/hbqt/qtnetwork/TQHttpRequestHeader.prg * contrib/hbqt/qtnetwork/TQHttpResponseHeader.prg * contrib/hbqt/qtnetwork/TQNetworkRequest.prg * contrib/hbide/hbide.prg + Implemented to avoid use of QT_PTROF() and QT_PTROFXBP() macros. The functionality is transparent and accepts HBQT and HBXBP objects as is. TODO: Method SomeQtClass:new( ... ) ::pPtr := QSomeClass( ... ) In above construct it is not known how many parameters are of type pointer and otherwise and how, if resolved, be forwarded to Qt wrapper with (...) syntax. 2009-12-17 11:54 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c ! added protection against putting K_RESIZE into keyboard queue if XServer generates ConfigureNotify event but window size is not changed ! clear own selections on application exit - looks that some WMs have problems when selection owner does not response and can even crash. Please remember that some WMs periodically (i.e. once per second) create copy of existing selections to his own structures so it's later available even if selection owner terminates. This is VM behavior which is not controlled by Harbour GTXWC code so selection set by Harbour application is available after its termination only if such Window Manager is used and it has enough time to make selection copy. ! use hb_cdpFindExt() instead of hb_cdpFind() to find UTF8 CP It fixes national character translations in selections (clipboard) broken during recent modifications for new CDP API. 2009-12-17 03:45 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/gtxwc/gtxwc.c ! fixed timeout checking in function taking text from clipboard. Due to typo it was waiting for XServer answer for 3 milliseconds instead of 3 seconds so sometimes it was too small even in local usage (i.e. when clipboard was accessed 1-st time by application and some internal XLib structures had to be initialized) and probably using remote XServers it was able to retrieve only the 1-st type of selection (if any). 2009-12-16 21:38 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/hbwin.ch * contrib/hbwin/tests/testmapi.prg * contrib/hbwin/mapi.c + Added HB_WIN_MAPI_* constants for recipient types. + WIN_MAPISENDMAIL() now accepts 8th (sender) as simple string, this will be passed as sender name to Windows. + WIN_MAPISENDMAIL() now accepts 9th (recipient) parameter as simple list of strings. Values will be passed as 'TO' recipient names to Windows. + WIN_MAPISENDMAIL() now accepts 10th (attachment) parameter as simple list of strings. Values will be passed as pathname to Windows. % One minor optimization in WIN_MAPISENDMAIL(). + Added example for simple form of WIN_MAPISENDMAIL() call. 2009-12-16 21:18 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/mapi.c * WIN_MAPISENDMAIL() fixed to set sender as MAPI_ORIG. This is the default value (zero), but we shouldn't assume such things. + WIN_MAPISENDMAIL() recipient arrays elements third parameter is optional. ! WIN_MAPISENDMAIL() fixed to set recipient address type as MAPI_TO by default (if there is no 3rd element or 3rd element is non-numeric). So far it was defaulting to MAPI_ORIG in these case, which is wrong. ! WIN_MAPISENDMAIL() fixed to skip recipient if neither first nor second element is a non-empty string. It may have caused GPFs before. * WIN_MAPISENDMAIL() changed to accept 1st element of file attachment array list as pathname, and 2nd element as optional filename. 2nd element is now truly optional, files won't be skipped if omitted. Original code accepted filename in 1st element, but it's cleaner this way and also testmapi.prg calls it this way, so it might have been a typo. ! WIN_MAPISENDMAIL() fixed file attachments handling to not cause GPF is 1st array element (pathname) is non-string or empty. These items will now be skipped. ; Please retest also with bad parameters. And I'd appreciate if someone could review as it's blind coding. 2009-12-16 19:05 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/tests/gtkeys.prg + added code to test clipboard (CTRL+INS shows clipboard text and CTRL+END set new text in clipboard). 2009-12-16 18:28 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * harbour-win-spec * harbour-wce-spec * include/hbver.h * package/winuni/RELNOTES * package/winuni/mpkg_win_uni.bat * package/winuni/mpkg_win_uni.nsi * harbour.spec * config/global.mk * Changed version to 2.0.0rc1 (from 2.0.0beta3) ; TODO: Please also change debian/changelog. ; Rehearsing version change, I don't plan to make binary release of this interim version. * doc/codestyl.txt * Minor update. I don't plan a full update this time, as we have a huge amount of well formatted source code, and it's pretty consistent too, so it's enough to peek into any one of them for a perfect example. So if someone needs and example, just look under src/* for both .c and .prg. 2009-12-16 09:59 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/common/hbdate.c * casting for some more pedantic C/C++ compilers * harbour/include/hbinit.h * allow to force static C++ initialization as startup code in GCC and SunPRO builds by HB_STATIC_STARTUP macro 2009-12-16 04:53 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg ! Fixed watcom targets to switch to single input file mode when C mode (now default) is used. Maybe OpenWatcom developers should finally sync such basic behavior between their C and C++ compilers. Until then we keep adding hacks. 2009-12-16 03:54 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbbtree/tests/ctest.c ! Changed sprintf() to safe hb_snprintf() to avoid MSVC warnings. 2009-12-16 03:17 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/common/watcom.mk ! Fixed for dos/watcom after previous change. 2009-12-16 03:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * config/common/watcom.mk * config/global.mk * config/rules.mk ! Added relatively ugly hack to change dir separators in CC_RULE in a generic way. It's ugly because it's only needed for non-linux Watcom C (not C++!) builds, but this way it's possible to avoid CC_RULE override in common/watcom.mk. CC_RULE override didn't implement dynlib support, which meant that after switching to C mode as default for watcom, dynlib generation got broken on win and os2. 2009-12-16 02:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_hbqmainwindow.cpp * Minor formatting after latest changes. 2009-12-16 01:53 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/rddsql/sddmy/mysqldd.c ! Fixed warning reported by linux/watcom. * src/rtl/gtwin/gtwin.c * Minor formatting. 2009-12-16 01:26 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbwin/mapi.c ! fixed compilation with OpenWatcom 2009-12-16 01:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog ! Typo in prev entry. 2009-12-16 00:58 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/Makefile + contrib/hbwin/wapi_winnls.c + Added WAPI_GETACP() + Added WAPI_GETOEMCP() ; NOTE: TODO? These values could be used as a base for default HB_GTI_CODEPAGE setting and _SET_OSCODEPAGE for non-UNICODE Harbour builds. 2009-12-16 00:26 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/ChangeLog ! removed repeated entry 2009-12-16 00:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbinit.h * added error messages when some mixed forms of startup initialization are defined 2009-12-16 00:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/bin/hb-func.sh * use -n2 as default harbour compiler parameter in hb* scripts 2009-12-15 21:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbinit.h ! fixed typo in section name in last commit - thanks to Tamas again * in C++ mode encapsulate startup functions inside 'extern "C" { ... }' to eliminate reallocation problems 2009-12-15 21:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbinit.h * use more portable asm() directive instead of __asm__() * explicitly restore .text segment for compilers which do not make it automatically Thanks to Tamas for the information. 2009-12-15 20:43 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbinit.h * eliminated from ASM code used in HB_INITSEG_STARTUP direct references to public functions - it resolves the problem with non relocatable code breaking Harbour shared library. TODO: find portable method to mark function as used for C compiler without using any public symbols (functions or variables) which may cause conflicts between modules. Compilers like modern GCC versions are clever enough to detect cyclic references (only compile time warnings are pacified in such case) and they strip even group of functions it they are not accessed externally. 2009-12-15 19:47 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbinit.h + added new alternative form for initialization code activated by HB_INITSEG_STARTUP macro. This method uses asm() directive to store call to startup function in .init segment. It's a work in progress though current code is working in Linux static builds and probably should work also with few other compilers. Final version should help in adding support for native non GCC based C compilers in some *nixes. Thanks to Tamas for his help. 2009-12-15 18:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * package/winuni/RELNOTES ! Typo. * contrib/hbqt/qtgui/qtguis/Makefile * contrib/hbqt/qtcore/qtcores/Makefile * contrib/hbqt/hbqts/Makefile * contrib/hbqt/qtnetwork/qtnetworks/Makefile ! Fixed HB_QT_STATIC=yes mode. * contrib/hbclipsm/date.c ! Fixed DATEASARRAY() to return empty array instead of { NIL, NIL, NIL } if non-date was passed. % Optimized DATEASARRAY(). * contrib/hbcairo/image.c ! Fixed two warnings. * INSTALL + Added CYGWIN= envvar to mingwarm example to suppress useless Cygwin warning. 2009-12-15 11:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt.hbc * contrib/gtqtc/gtqtcs.hbc * contrib/gtqtc/gtqtcs/Makefile * contrib/gtqtc/Makefile * contrib/gtqtc/gtqtc.hbc * Cleanups. ! Static mode fix for gtqtc. * contrib/gtqtc/gtqtc.cpp ! Deleted HB_TCHAR references in commented code. 2009-12-15 11:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog ! Fixed ChangeLog entry header of my last commit. 2009-12-15 04:32 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbdefs.h * modified PHB_FUNC/HB_FUNC_PTR declaration to use external 'extern "C"' encapsulation for C++ compilers which do not accept it directly (i.e. BORLAND or GCC 2.xx) 2009-12-15 00:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_regc.c * Minor cleanup to make code more robust. * contrib/hbqt/qtgui/QTableView.cpp * Some minor changes after regenerating it with current generator tool. 2009-12-14 10:01 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_hbqtableview.cpp * contrib/hbqt/qtgui/QTableView.cpp * contrib/hbqt/qtgui/TQTableView.prg * contrib/hbqt/qth/QTableView.qth * contrib/hbxbp/xbpbrowse.prg + Implemented GC collectible pointers for HBTableView() class. 2009-12-14 10:01 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_hbdbfmodel.cpp * contrib/hbqt/hbqt_hbdbfmodel.h * contrib/hbqt/qtcore/QAbstractItemModel.cpp * contrib/hbqt/qtcore/TQAbstractItemModel.prg * contrib/hbqt/qth/QAbstractItemModel.qth * contrib/hbxbp/xbpbrowse.prg + Implemented GC collectible pointer for HBDbfModel() class. 2009-12-14 17:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/rtl/hbcrc.c ! fixed hb_crcct() to work with polynomials smaller then 8 bit, i.e. parity bit: x^1+1 => 3 % small simplification in hb_crc() function 2009-12-14 14:21 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_os.prg * contrib/hbwin/wapi_winuser.c * contrib/hbwin/axcore.c * contrib/hbwin/wapi_commctrl.c * Formatting. 2009-12-14 13:52 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_prn2.c ! Missing hb_itemRelease() from prev commit. 2009-12-14 13:45 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_prn2.c + Eliminated rest of HB_TCHAR*() calls. Please review, and test for memory leaks. ; No more HB_TCHAR*() macros in hbwin code. * contrib/hbwin/win_misc.c + Added cast. * contrib/hbqt/hbqt_base.cpp * Minor formatting. 2009-12-14 00:04 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_misc.c ! Fixed WIN_ANSITOWIDE() and WIN_WIDETOANSI() to return string with proper length in all cases. Peer-review me pls. 2009-12-13 22:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/compiler/cmdcheck.c * src/compiler/hbmain.c * src/compiler/hbcomp.c * src/compiler/hbusage.c * include/hbcompdf.h + Added support for -i- and -i+ options. They will disable/enable handling of INCLUDE envvar. * config/rules.mk + Added -i- Harbour compiler switch to avoid any interference with user set INCLUDE envvars. 2009-12-13 12:43 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbqmainwindow.cpp * contrib/hbqt/hbqt_hbqmainwindow.h * contrib/hbxbp/xbpwindow.prg + Implemented GC collectible pointer for HBQMainWindow(). /* Please do not commit anything in HBQT/HBXBP/HBIDE as I will be cleaning up the code. BTW how can I invoke HBXBP_DEBUG() functionality. I was just busy with the preparations of my daughter's wedding. */ 2009-12-13 17:29 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/mapi.c ! Added back zeroing rcp/file structure list. * INSTALL * Minor. * contrib/gtwvg/wvgutils.c * contrib/hbwin/win_misc.c * contrib/hbwin/mapi.c * ZeroMemory() -> memset() 2009-12-13 14:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/mapi.c + Added support for unlimited number of recipients and attached files. Please test and review. * utils/hbmk2/hbmk2.prg + Added support for linux/open64. (Please test) * INSTALL + Added open64. 2009-12-12 20:48 UTC-0300 Antonio Carlos Pantaglione * harbour/contrib/hbwin/tests/testmapi.prg ! Very small fix 2009-12-12 23:29 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbsetup.h * harbour/include/hbdefs.h * harbour/include/hbthread.h * harbour/src/common/hbver.c * harbour/bin/hb-func.sh * harbour/bin/postinst.sh * harbour/config/linux/gcc.mk + harbour/config/linux/open64.mk + added support for Open64 C/C++ compiler in Linux builds * harbour/src/common/hbver.c * removed unnecessary casting compiler version number parameters to 'short' * extended the size of szBuf buffer as requested by Tamas 2009-12-12 21:24 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/tests/testmapi.prg * contrib/hbwin/mapi.c ! Fixes. 2009-12-12 19:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_misc.c ! Fixed declaration following code. 2009-12-12 19:27 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/mapi.c + Added support for UNICODE. ; Untested, I don't have a mailer on any Windows systems I have access to to try it. Please make tests with MSVC also, to check UNICODE. ! Fixed typo in prev modification. ! Added ( ULONG ) cast to -1 value. + Added copyright header. * contrib/hbwin/tests/testmapi.prg + Added some test data to make it work. (couldn't test it though, all I get is msgbox that I have no mailer) 2009-12-12 18:41 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/vmmt/Makefile ! added missing strapi.c for some compilers which do not use hvmall.c 2009-12-12 16:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/gtwin/gtwin.c * Using HB_SIZEOFARRAY(). * include/hbapi.h * Typo in comment. * ChangeLog + Added missing item to prev. * contrib/hbwin/tests/testmapi.prg ! Fixed missing SVN props. ! Added missing SVN ID. * Formatting. ; TOFIX: This example expects arrays and logical value from command line, so it won't work. [DONE] 2009-12-12 15:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbwinuni.h + Added HB_ARRAYGETSTR(). * ChangeLog + Added missing item to prev. 2009-12-12 15:42 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/Makefile * contrib/hbwin/mapi.c + Added to Makefile. * Renamed HB_MAPISENDMAIL() to WIN_MAPISENDMAIL(). ! Added SVN ID. ! Added SVN props. ! Added License header. (pls add your name to copyright headers) ! Fixed to use simple quote to include Harbour headers. ! Fixed Windows header inclusion. ! Disabled for UNICODE. ! Fixed to not use return value on stack as temporary HB_ITEM. ! Fixed to not use static variable. ! Fixed UNICODE literals (also for WinCE). ! Fixed to not create NULL "holes" in passed to Windows lists if received arrays have wrong content. ! Fixed to check return value of GetProcAddress(). % Optimized to only do parameter processing if MAPISendMail is available. * Cleaned string parameter defaulting to "". * Castings added and changed. * Optimizations. * Formatting (indentation, deleted unnecessary {}, variable scopes, ' ;' endings) * Variable scopes. * Using HB_SIZE. * Avoiding duplicating constants. + Added some provisions for UNICODE support. Otherwise whole code is disabled until this gets fully implemented. ; TODO: It'd be probably beneficial to remove artificial limit of 100 recipients and file attachments. [DONE] ; NOTE: I didn't make any functional tests, so please make some. An example/test code would be nice in tests subdir. 2009-12-12 14:36 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbwinuni.h ! fixed typo in last commit * harbour/contrib/hbwin/win_com.c * eliminated HB_TCHAR_*() usage 2009-12-12 10:45 UTC-0300 Antonio Carlos Pantaglione + harbour/contrib/hbwin/mapi.c + harbour/contrib/hbwin/tests/testmapi.prg * MAPI send mail function. 2009-12-12 13:52 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbwinuni.h + added new macro HB_ITEMGETSTR() * harbour/src/rtl/gtwin/gtwin.c * modified to use new UNICODE API instead of HB_TCHAR_*() * harbour/contrib/hbwin/win_misc.c * rewritten WIN_GETCOMMANDLINEPARAM() New version does not use old HB_TCHAR_*() API and respect multiple quoting by "" (i.e. .\"myapp"li"cation".exe) TOFIX: WIN_ANSITOWIDE() and WIN_WIDETOANSI() are wrong and have to be fixed. Please remember that number of character after conversion to/from UNICODE can be different then original number of chars, i.e. multibyte characters can be replaced by single Unicode character or one Unicode character may use few bytes representation. [DONE] 2009-12-12 12:48 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_hbqmainwindow.cpp * Temporarily disabled mutex for HBMainWindow. Please report any problems and experiences, or any reason for the mutex implemented here, it's possible that I'm missing something. * contrib/hbqt/qtgui/qtguis/Makefile * contrib/hbqt/qtgui/Makefile * contrib/hbqt/Makefile * contrib/hbqt/detect.mk * contrib/hbqt/hbqts/Makefile * contrib/hbqt/qtnetwork/qtnetworks/Makefile * contrib/hbqt/qtnetwork/Makefile * Generalized the way QT component header dirs are enabled. This makes it possible to use this logic with gtqtc. * contrib/gtqtc/gtqtcs/Makefile * contrib/gtqtc/Makefile + 'moc' logic synced with hbqt. ! Fixed to use QT component header inclusion. * contrib/hbqt/hbqt_slots.cpp * Line ending spaces. 2009-12-12 12:28 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/dynlibhb.c + Using new UNICODE conversion macros in HB_LIBLOAD(). * INSTALL * Minor. * contrib/xhb/hbsyslog.c + HB_SYSLOGOPEN(): Added UNICODE support. (this bug was hidden by explicit cast) * Using HB_TRUE/HB_FALSE. + Using new UNICODE conversion macros in HB_SYSLOGMESSAGE(). (functionally not tested) * Formatting. * contrib/xhb/hblogdef.ch + Added comment that the header is used by C code. * contrib/hbqt/detect.mk ! Fixed static build after last commit. * contrib/hbwin/wapi_winbase.c * contrib/hbwin/win_dll.c * Variable renamed. * contrib/hbwin/win_prn2.c % Minor optimization. * contrib/hbwin/win_osc.c + Using new UNICODE conversion macros in WIN_OSVERSIONINFO(). ; NOTE: Remaining "problem area" is HB_TCHAR_* usage in low level code, when conversion needs to be done from/to C buffer instead of Harbour parameter/return value. The problem is that I don't have a pattern for that. 2009-12-12 02:43 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/vm/strapi.c % Minor optimization (using cdp variable instead of repeated hb_vmCDP() calls.) * include/hbwinuni.h + Added HB_ITEMPUTSTR[LEN]() macros. + Added HB_STRUNSHARE() macro. ! Fixed typos in HB_ARRAYSETSTRLEN() macro values. * contrib/hbwin/win_prn2.c + Using new HB_ITEMPUTSTR() macro instead of HB_TCHAR*(). * contrib/hbwin/win_misc.c ! WIN_RUNDETACHED(): Fixed to guarantee writable buffer in second parameter of CreateProcess(). I've choosen to always pass a writable buffer, although MS requires this only for UNICODE mode. * contrib/hbwin/wapi_commctrl.c + Using new UNICODE parameter passing macros instead of HB_TCHAR*() ones. ! Fixed return values of WAPI_IMAGELIST_GETIMAGEINFO() to be empty string instead of unset (NIL) in case of error. + contrib/hbqt/filelist.mk ! Missed from previous commit. * contrib/hbwin/win_regc.c * Removed trailing spaces (realized I used a temp instance of 64-bit Far Manager for the last couple of days) (there will be more) 2009-12-12 01:42 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/strapi.c * harbour/include/hbapistr.h + added new functions: hb_itemPutStr(), hb_itemPutStrUTF8(), hb_itemPutStrU16(), hb_arrayGetStr(), hb_arrayGetStrUTF8(), hb_arrayGetStrU16(), hb_arraySetStrLen(), hb_arraySetStrLenUTF8(), hb_arraySetStrLenU16(), hb_arraySetStr(), hb_arraySetStrUTF8(), hb_arraySetStrU16(), * harbour/include/hbwinuni.h * removed unnecessary and danger casting in UNICODE version of HB_RETSTR(), HB_RETSTRLEN(), HB_STORSTR() and HB_STORSTRLEN() macros * modify HB_ARRAYSETSTR() and HB_ARRAYSETSTRLEN() macros to use new STR API functions * harbour/external/Makefile * modified the order of compiled libraries for better performance in parallel compilation (-j) 2009-12-11 20:42 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/strapi.c * harbour/include/hbapistr.h + added new functions to operate on Harbour wide character strings: ULONG hb_wstrlen( const HB_WCHAR * szText ); HB_WCHAR * hb_wstrdup( const HB_WCHAR * szText ); HB_WCHAR * hb_wstrndup( const HB_WCHAR * szText, ULONG ulLen ); int hb_wstrcmp( const HB_WCHAR * s1, const HB_WCHAR * s2 ); int hb_wstrncmp( const HB_WCHAR * s1, const HB_WCHAR * s2, ULONG count ); + added new functions to convert NULL pointers to empty strings: const char * hb_strnull( const char * str ); const HB_WCHAR * hb_wstrnull( const HB_WCHAR * str ); + added new functions to convert string buffer returned by Harbour string functions to writable state: char * hb_strunshare( void ** phStr, const char * pStr, ULONG ulLen ); HB_WCHAR * hb_wstrunshare( void ** phStr, const HB_WCHAR * pStr, ULONG ulLen ); * harbour/include/hbwinuni.h ! fixed HB_PARSTRDEF() to return empty string instead of NULL ! fixed HB_ARRAYSETSTR() to accept NULL as string parameter 2009-12-11 20:25 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_regc.c ! WIN_REGSETVALUEEX(): Off by one bug fixed in prev commit. 2009-12-11 20:16 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/wapi_winbase.c * Eliminated hb_parclen() call in WAPI_FORMATMESSAGE() function. * contrib/hbwin/win_regc.c * WIN_REGSETVALUEEX(): Adjusted casting to not drop const. ! WIN_REGSETVALUEEX(): Added support for UNICODE builds when string types (non-binary data) are passed. * contrib/hbwin/tests/testreg.prg + Extended with basic test for above. 2009-12-11 19:56 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/wce_smsc.c + Eliminated hb_parclen() usage. * contrib/hbwin/win_prn3.c ! Fixed typos. 2009-12-11 19:51 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbwin/wapi_winbase.c ! fixed casting * harbour/contrib/hbwin/wce_simc.c * use Harbour API functions to change items passed by reference * harbour/contrib/hbwin/win_prn3.c % eliminated unnecessary hb_parclen() call 2009-12-11 19:41 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/Makefile * contrib/hbqt/detect.mk + contrib/hbqt/moc.mk * contrib/hbqt/hbqts/Makefile * contrib/hbqt/qtgui/qtguis/Makefile * contrib/hbqt/qtgui/Makefile * contrib/hbqt/qtcore/qtcores/Makefile * contrib/hbqt/qtcore/Makefile * contrib/hbqt/qtnetwork/qtnetworks/Makefile * contrib/hbqt/qtnetwork/Makefile + Moved 'moc' build logic to separate file. + Added support for MOC_HEADERS in all sub-libs. This allows to avoid hacks to place every custom created component in central lib. (It probably allows to avoid central lib altogether.) ! Fixed broken static build after recent changes. (I've readded central filelist.mk to avoid redundancy, but the file isn't an automatically generated one anymore) % Optimized build to not provide all subsystem header dirs for each QT sub-libs, only those which are needed. Now QtCore header dir is passed to all components, but QtGui and QtNetwork is passed only to these subcomponents. Central hbqt lib gets all dirs, but hopefully this will be cleaned eventually. % Cleaned to not use /Qt include dir. It's apparently not needed. * contrib/hbqt/qth/QObject.qth * contrib/hbqt/qtcore/QObject.cpp ! Core component was referring to a GUI one, and hbqt_par_QWidget() was used to retieve a QObject inside QObject wrappers. Please fix me if it was intentional, but it didn't look right and came out after cleaning header dir usage. * contrib/hbide/hbide.hbp + Added MSVC link switches sent by Andi to make QT 4.6.0 libs work with default Harbour build. 2009-12-11 18:17 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbwinuni.h + Added HB_ARRAYSETSTR*(). Based on Przemek's post. * contrib/hbwin/wce_simc.c * contrib/hbwin/wce_smsc.c * contrib/hbwin/win_prn1.c * contrib/hbwin/win_prn2.c * contrib/hbwin/win_regc.c + Using new UNICODE parameter passing macros instead of HB_TCHAR*() ones. * Minor rework WIN_TEXTOUT() and WIN_GETTEXTSIZE() to not use hb_parclen() and protect some more against wrong length parameter. ; TOFIX: HB_ARRAYSETSTR() usage crashes (tested in non-UNICODE with testprn3) I didn't want to undo the whole thing, but can't find the err either. [DONE] ; TOFIX: hb_parclen() usage. [DONE] ; TOFIX: HB_ARRAYSETSTR() with NULL string parameter. [DONE] ; TOFIX: HB_PARSTRDEF() to really default to empty string for non-string params. [DONE] ; TODO: Remaining HB_TCHAR_*() usages. ; TODO: Peer-review what I did. * contrib/hbwin/wapi_winbase.c ! Fixed for WinCE after recent addition of new wrappers. This means exclusion of WAPI_WAITFORSINGLEOBJECTEX() and WAPI_WAITFORMULTIPLEOBJECTSEX() for this platform. ! Minor fix in size of allocated buffer in WAPI_FORMATMESSAGE(). (buffer was too large in non-UNICODE). 2009-12-11 10:59 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbextern.ch + Added HB_THREADONCEINIT(). * contrib/hbqt/hbqt.ch * contrib/hbxbp/xbp.ch ! Moved XBP specific macro to HBXBP header. * contrib/hbqt/tests/demoqt.prg ! Deleted no more needed init calls. * contrib/hbqt/hbqt_events.cpp + Added TOFIX about GC collected pointer stored in low level structure. (source of GPF). * contrib/hbwin/win_misc.c * contrib/hbwin/wapi_winbase.c * contrib/hbwin/wapi_winuser.c * contrib/hbwin/win_regc.c * contrib/hbwin/win_prn1.c * contrib/hbwin/win_prn3.c * contrib/hbwin/wapi_shellapi.c * contrib/hbwin/legacyco.c - Deleted now unnecessary '( LP[C]TSTR )' casts. + Cleaned const usage in WIN_PRINTERSETDEFAULT(). F.e. OpenPrinter() has apparently wrong winapi declaration, so a cast must have been added. ; TOFIX: CreateProcessW() second parameter has to be a read/write buffer. Przemek, do you have an idea how to solve that the cleanest way? (for now I kept a cast, assuming that a buffer is created by Harbour conversion API, but that's not something it guarantees in the future.) [DONE] 2009-12-11 04:37 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/vm/thread.c ! added missing HB_STACK_TLS_PRELOAD 2009-12-11 04:13 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapiitm.h * harbour/src/vm/classes.c * added new internal HVM macro * harbour/src/vm/thread.c + added new function hb_threadOnceInit( @ ) -> It assigns to if is NIL in MT safe way so it's assigned only once. It's reduced but faster version of hb_threadOnce() * harbour/include/hbapicdp.h * define HB_WCHAR as wchar_t on Windows platforms for compilers which refuse to make conversions between types using the same base type. * harbour/contrib/hbwin/win_dll.c * code cleanup 2009-12-11 00:20 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + contrib/hbqt/hbqt_hbdbfmodel.h + Missed from prev commits. * contrib/hbqt/hbqt_slots.cpp * Formatting. 2009-12-10 23:22 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/qth/QAbstractItemModel.qth * contrib/hbqt/qth/QTableView.qth * contrib/hbqt/hbqt_events.cpp * contrib/hbqt/hbqt_slots.cpp * contrib/hbqt/hbqt_hbqmainwindow.cpp + Added TOFIX (also one QUESTION) to these code parts. All of them are potential leak or GPF generator issues. Could someone take a look at these? * contrib/hbqt/Makefile - contrib/hbqt/hbqt_hbdrawingarea.h - contrib/hbqt/hbqt_hbdrawingarea.cpp - Deleted unused custom class. * contrib/hbqt/qtgui/QTableView.cpp * contrib/hbqt/qtcore/QAbstractItemModel.cpp * Regenerated. 2009-12-10 22:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_events.cpp * contrib/hbqt/hbqt_slots.cpp ! Fixed events/slots handling to make sure the objects always exist on access. % This also made explicit initialization from .prg code unnecessary, so these two functions got deleted: QT_SETEVENTFILTER(), QT_SETEVENTSLOTS() ! Fixed events/slots handling to reset thread local object pointer to NULL after destruction. * contrib/hbxbp/xbpsle.prg * contrib/hbxbp/xbplistbox.prg * contrib/hbxbp/xbpwindow.prg * contrib/hbxbp/xbptreeview.prg * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbpspinbutton.prg * contrib/hbxbp/xbpgeneric.prg % Simple wrapper named HBXBP_SETEVENTFILTER() deleted and replaced with QT_GETEVENTFILTER() calls. (name still subject to change) ; NOTE: 1) In demoxbp MT mode build, the second dialog behaves strangely. It updates the screen slowly and not at all. Pritpal, please check it to make sure not some recent change broke it. 2) Forgot to mention in prev entry, but removing HBQMainWindow() mutex altogether didn't cause any change/loss of functionality in my tests, so my question is: Is it really needed? 2009-12-10 22:22 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_hbqmainwindow.cpp * contrib/hbxbp/xbpgeneric.prg + Replaced HB_MUTEXCREATE() and HB_MUTEXDESTROY() with automatic initialization and deinitialization. ; NOTE: From now on HBQT needs to be requested by apps willing to use HBQT, with: REQUEST HB_QT This will ensure in the future that all init and deinit procedure are done correctly. It also makes it safe to use QT even from INIT and EXIT PROCECUREs. * contrib/hbqt/tests/demoqt.prg * contrib/hbxbp/tests/demoxbp.prg * contrib/hbide/hbide.prg + Added REQUEST HB_QT. 2009-12-10 21:49 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbatomic.h * removed 'static inline' from OpenWatcom ASM functions defined by '#pragma aux ...' to make OpenWatcom < 1.8 happy. Version 1.8 ignores 'static inline' attributes in such declarations. * harbour/config/dos/watcom.mk * harbour/utils/hbmk2/hbmk2.prg * switched from DOS/4GW to DOS/32A extender. It's faster what is noticeable also in final Harbour binaries, does not have DOS4G command line limitations and has nice tools which allow to easy set different runtime parameters (ss.exe) or compress final executable (sc.exe) BTW people having problem with maximum command line size in OpenWatcom tools can replace DOS/4GW with DOS/32A in this tools It can be made also globally by coping dos32a.exe to dos4gw.exe. NOTE: I've found why DOS Harbour OpenWatcom application created in my Linux box were not working. Just simply the directory with DOS extender setup files was not in PATH. Creating DOS OpenWatcom applications in other systems (i.e. Linux or OS2) do not forget to add directory with DOS binaries '%WATCOM%\binw' to PATH after directory with platform native OpenWatcom binaries '%WATCOM%\bin*' or copy DOS extender (dos32a.exe) to one of PATH directories. * harbour/config/dos/watcom.mk * added workaround for not included automatically by linker CLIB library when Harbour is compiler in pure C mode. I hope it's only temporary hack which we can remove in the future. I haven't added it to hbmk2 so linking DOS applications using hbmk2 user will have to add -lclib3r to hbmk2 parameters. * harbour/config/common/watcom.mk * disable DOS/32A banner messages 2009-12-10 21:00 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_slots.h - Deleted unnecessary headers. 2009-12-10 20:35 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/Makefile + Added generic support to MOC compile headers. ; If this works out well, it makes it possible to use granular (non-monolythic) headers for 'Q_OBJECT' classes. It's also possible to move this logic into sub-libs. This may also mean that some hacks which were currently employed can be solved cleanly. Please test/review. * contrib/hbqt/hbqt_slots.h + contrib/hbqt/hbqt_hbqtableview.h * contrib/hbqt/hbqt_hbqtableview.cpp * contrib/hbqt/qth/QTableView.qth * contrib/hbqt/hbqt_hbdbfmodel.cpp * contrib/hbqt/qth/QAbstractItemModel.qth + contrib/hbqt/hbqt_hbdrawingarea.h * contrib/hbqt/hbqt_hbdrawingarea.cpp + contrib/hbqt/hbqt_hbqmainwindow.h * contrib/hbqt/hbqt_hbqmainwindow.cpp + contrib/hbqt/hbqt_hbqsyntaxhighlighter.h * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp * contrib/hbqt/qth/QSyntaxHighlighter.qth + contrib/hbqt/hbqt_events.h * contrib/hbqt/hbqt_events.cpp * Split monolithic hbqt_slots.h header to distinct class headers. * contrib/hbqt/generator/hbqtgen.prg - contrib/hbqt/filelist.mk * contrib/hbqt/Makefile * Changed to not generate central filelist.mk. (no dynamic files in central lib) * config/rules.mk - Deleted .l reference. * contrib/hbqt/qtgui/QSyntaxHighlighter.cpp * contrib/hbqt/qtgui/QTableView.cpp * contrib/hbqt/qtcore/QAbstractItemModel.cpp * Regenerated. 2009-12-10 16:10 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/Makefile * contrib/hbqt/generator/hbqtgen.prg + Moved static source files from filelist.mk to Makefile. * contrib/hbqt/Makefile * contrib/hbqt/hbqt_slots.cpp + contrib/hbqt/hbqt_events.cpp + Moved event filter related stuff to separate file. % Cleaned lots of unnecessary QT headers includes. 2009-12-10 15:59 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_slots.cpp * contrib/hbxbp/xbpgeneric.prg * Rename: QT_QEVENTFILTER() -> QT_GETEVENTFILTER(). There will be some more renames to cleanup prefix usage. * contrib/hbwin/win_regc.c * Minor formatting. 2009-12-10 15:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * hbwin/win_misc.c * hbwin/win_prn1.c + Using new UNICODE parameter passing macros instead of HB_TCHAR*() ones. (where possible) WIN_RUNDETACHED(), WIN_LOADRESOURCE(), WIN_CREATEDC(), WIN_GETPRINTERFONTNAME() * hbwin/wapi_winbase.c ! Fixed typo in two recently added WAPI function names. * contrib/hbqt/hbqt.hbc * contrib/hbqt/hbqts.hbc + Added psapi for win platform, until it's needed for memory debugging purposes. 2009-12-10 11:24 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbver.c * Minor cleanup. * contrib/hbqt/generator/hbqtgen.prg ! Fixed typo in TRACE text. * contrib/hbqt/qtgui/* * contrib/hbqt/qtcore/* * contrib/hbqt/qtnetwork/* * Regenerated. 2009-12-10 10:42 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/xhb/fparse.c * pacified BCC warning * harbour/src/rtl/base64c.c * harbour/src/rtl/diskspac.c * harbour/src/rtl/filesys.c * harbour/src/rtl/hbproces.c * harbour/src/rtl/gtos2/gtos2.c * harbour/src/rdd/dbffpt/dbffpt1.c * harbour/contrib/xhb/freadlin.c * harbour/contrib/xhb/txtline.c * harbour/contrib/hbbtree/hb_btree.c * harbour/contrib/rddsql/sqlbase.c * harbour/contrib/rddsql/sddodbc/odbcdd.c * pacified OpenWatcom C warnings * harbour/include/hbatomic.h % rewritten OpenWatcom atomic ASM macros. Now they precisely informs compiler about used and modified registered and also force passing arguments in strictly defined what simplify ASM code. 2009-12-10 02:08 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/generator/hbqtgen.prg % Changed to only save files which have indeed changed (to avoid unnecessary rebuilds) * contrib/hbqt/Makefile * contrib/hbqt/hbqt.h * contrib/hbqt/hbqt_slots.h - contrib/hbqt/hbqt_hbqtdbfmodel.cpp + contrib/hbqt/hbqt_hbdbfmodel.cpp - contrib/hbqt/hbqt_hbqtsyntaxhighlighter.cpp + contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp - contrib/hbqt/hbqt_hbqtmymainwindow.cpp + contrib/hbqt/hbqt_hbqmainwindow.cpp - contrib/hbqt/hbqt_hbqtmydrawingarea.cpp + contrib/hbqt/hbqt_hbdrawingarea.cpp - contrib/hbqt/hbqt_hbqttableview.cpp + contrib/hbqt/hbqt_hbqtableview.cpp * contrib/hbqt/qth/QAbstractItemModel.qth * contrib/hbqt/qth/QSyntaxHighlighter.qth * contrib/hbqt/qth/QTableView.qth * Following class renames done: - HbSyntaxHighlighter -> HBQSyntaxHighlighter (HBIDE) - HbDbfModel -> HBDbfModel (HBXBP) - MyDrawingArea -> HBDrawingArea (UNUSED) - MyMainWindow -> HBQMainWindow - HbTableView -> HBQTableView (HBXBP) ; TOFIX: These classes seem to be the problematic parts of HBQT. They violate layering, there are naming inconsistencies (standard QT .prg level class internally refers to inherited special Harbour class, they implement HBXBP and IDE functionality embedded in HBQT to hack around the rule to not place .c code in HBXBP/HBIDE, they are not using GC collected pointers, they require mutexes which initialization isn't properly solved, one class is nowhere used. etcect) * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbpwindow.prg * contrib/hbxbp/xbpdialog.prg * Renames applied to HBXBP code. * contrib/hbqt/qtgui/TQTableView.prg * contrib/hbqt/qtgui/QSyntaxHighlighter.cpp * contrib/hbqt/qtgui/QTableView.cpp * contrib/hbqt/qtcore/TQAbstractItemModel.prg * contrib/hbqt/qtcore/QAbstractItemModel.cpp * Regenerated after .qth changes. 2009-12-10 01:21 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt.h % Minor cleanup after prev. * contrib/hbqt/generator/hbqtgen.prg * Changed to use HB_TRACE() instead of hbqt_debug(). ; NOTE: IMPORTANT: Now to enabled debug trace calls, you have to use the standard Harbour method: HB_USER_CFLAGS=-DHB_TR_LEVEL_DEBUG It's enough to enable this setting when build hbqt lib, to get HBQT trace calls. In addition, following setting stil works to enable .prg level debug trace calls: HB_USER_PRGFLAGS=-D__HB_DEBUG__ * contrib/hbqt/qtgui/QPageSetupDialog.cpp * contrib/hbqt/qtgui/QGridLayout.cpp * contrib/hbqt/qtgui/QItemSelectionModel.cpp * contrib/hbqt/qtgui/QTextLength.cpp * contrib/hbqt/qtgui/QConicalGradient.cpp * contrib/hbqt/qtgui/QStandardItemModel.cpp * contrib/hbqt/qtgui/QItemSelection.cpp * contrib/hbqt/qtgui/QTransform.cpp * contrib/hbqt/qtgui/QPicture.cpp * contrib/hbqt/qtgui/QAction.cpp * contrib/hbqt/qtgui/QPaintEvent.cpp * contrib/hbqt/qtgui/QStyledItemDelegate.cpp * contrib/hbqt/qtgui/QWidget.cpp * contrib/hbqt/qtgui/QFontDialog.cpp * contrib/hbqt/qtgui/QToolBox.cpp * contrib/hbqt/qtgui/QTextListFormat.cpp * contrib/hbqt/qtgui/QTextEdit.cpp * contrib/hbqt/qtgui/QMouseEvent.cpp * contrib/hbqt/qtgui/QFontComboBox.cpp * contrib/hbqt/qtgui/QStyleOptionHeader.cpp * contrib/hbqt/qtgui/QListView.cpp * contrib/hbqt/qtgui/QRadialGradient.cpp * contrib/hbqt/qtgui/QCursor.cpp * contrib/hbqt/qtgui/QLabel.cpp * contrib/hbqt/qtgui/QPainterPath.cpp * contrib/hbqt/qtgui/QStylePainter.cpp * contrib/hbqt/qtgui/QStyleOptionToolButton.cpp * contrib/hbqt/qtgui/QBrush.cpp * contrib/hbqt/qtgui/QLinearGradient.cpp * contrib/hbqt/qtgui/QProgressBar.cpp * contrib/hbqt/qtgui/QStyleOptionToolBox.cpp * contrib/hbqt/qtgui/QStyleOptionTabBarBase.cpp * contrib/hbqt/qtgui/QToolBar.cpp * contrib/hbqt/qtgui/QFontMetricsF.cpp * contrib/hbqt/qtgui/QToolButton.cpp * contrib/hbqt/qtgui/QWindowsStyle.cpp * contrib/hbqt/qtgui/QColor.cpp * contrib/hbqt/qtgui/QListWidget.cpp * contrib/hbqt/qtgui/QTextLayout.cpp * contrib/hbqt/qtgui/QTextCursor.cpp * contrib/hbqt/qtgui/QTextDocument.cpp * contrib/hbqt/qtgui/QPolygon.cpp * contrib/hbqt/qtgui/QRadioButton.cpp * contrib/hbqt/qtgui/QStyleOptionViewItem.cpp * contrib/hbqt/qtgui/QFileIconProvider.cpp * contrib/hbqt/qtgui/QTextFrameFormat.cpp * contrib/hbqt/qtgui/QTextBlockFormat.cpp * contrib/hbqt/qtgui/QStyleOptionToolBar.cpp * contrib/hbqt/qtgui/QBitmap.cpp * contrib/hbqt/qtgui/QCalendarWidget.cpp * contrib/hbqt/qtgui/QStyleOptionTitleBar.cpp * contrib/hbqt/qtgui/QHeaderView.cpp * contrib/hbqt/qtgui/QScrollBar.cpp * contrib/hbqt/qtgui/QStyleOptionButton.cpp * contrib/hbqt/qtgui/QCommandLinkButton.cpp * contrib/hbqt/qtgui/QFocusFrame.cpp * contrib/hbqt/qtgui/QSizePolicy.cpp * contrib/hbqt/qtgui/QApplication.cpp * contrib/hbqt/qtgui/QTextFragment.cpp * contrib/hbqt/qtgui/QPlainTextEdit.cpp * contrib/hbqt/qtgui/QInputDialog.cpp * contrib/hbqt/qtgui/QKeySequence.cpp * contrib/hbqt/qtgui/QPrinter.cpp * contrib/hbqt/qtgui/QActionGroup.cpp * contrib/hbqt/qtgui/QTextCharFormat.cpp * contrib/hbqt/qtgui/QStyleOptionSlider.cpp * contrib/hbqt/qtgui/QInputEvent.cpp * contrib/hbqt/qtgui/QWidgetItem.cpp * contrib/hbqt/qtgui/QMenu.cpp * contrib/hbqt/qtgui/QStyleOptionSizeGrip.cpp * contrib/hbqt/qtgui/QStyleOptionGroupBox.cpp * contrib/hbqt/qtgui/QImage.cpp * contrib/hbqt/qtgui/QFontInfo.cpp * contrib/hbqt/qtgui/QIcon.cpp * contrib/hbqt/qtgui/QPolygonF.cpp * contrib/hbqt/qtgui/QHBoxLayout.cpp * contrib/hbqt/qtgui/QTreeWidget.cpp * contrib/hbqt/qtgui/QCommonStyle.cpp * contrib/hbqt/qtgui/QProgressDialog.cpp * contrib/hbqt/qtgui/QStyleFactory.cpp * contrib/hbqt/qtgui/QButtonGroup.cpp * contrib/hbqt/qtgui/QSystemTrayIcon.cpp * contrib/hbqt/qtgui/QStyleOptionDockWidget.cpp * contrib/hbqt/qtgui/QColorDialog.cpp * contrib/hbqt/qtgui/QListWidgetItem.cpp * contrib/hbqt/qtgui/QStyleOptionTabWidgetFrame.cpp * contrib/hbqt/qtgui/QDateTimeEdit.cpp * contrib/hbqt/qtgui/QInputMethodEvent.cpp * contrib/hbqt/qtgui/QStyleOptionFocusRect.cpp * contrib/hbqt/qtgui/QMainWindow.cpp * contrib/hbqt/qtgui/QDesktopWidget.cpp * contrib/hbqt/qtgui/QTableWidgetSelectionRange.cpp * contrib/hbqt/qtgui/QWidgetAction.cpp * contrib/hbqt/qtgui/QStringListModel.cpp * contrib/hbqt/qtgui/QDockWidget.cpp * contrib/hbqt/qtgui/QTextBrowser.cpp * contrib/hbqt/qtgui/QTableWidget.cpp * contrib/hbqt/qtgui/QErrorMessage.cpp * contrib/hbqt/qtgui/QWizard.cpp * contrib/hbqt/qtgui/QFileSystemModel.cpp * contrib/hbqt/qtgui/QDial.cpp * contrib/hbqt/qtgui/QTextOption.cpp * contrib/hbqt/qtgui/QImageWriter.cpp * contrib/hbqt/qtgui/QMenuBar.cpp * contrib/hbqt/qtgui/QStyleOptionMenuItem.cpp * contrib/hbqt/qtgui/QWizardPage.cpp * contrib/hbqt/qtgui/QFontMetrics.cpp * contrib/hbqt/qtgui/QPrintDialog.cpp * contrib/hbqt/qtgui/QStandardItem.cpp * contrib/hbqt/qtgui/QStyleOptionComboBox.cpp * contrib/hbqt/qtgui/QSplashScreen.cpp * contrib/hbqt/qtgui/QSizeGrip.cpp * contrib/hbqt/qtgui/QMessageBox.cpp * contrib/hbqt/qtgui/QTextImageFormat.cpp * contrib/hbqt/qtgui/QGroupBox.cpp * contrib/hbqt/qtgui/QImageReader.cpp * contrib/hbqt/qtgui/QTextDocumentFragment.cpp * contrib/hbqt/qtgui/QPushButton.cpp * contrib/hbqt/qtgui/QTreeWidgetItem.cpp * contrib/hbqt/qtgui/QBoxLayout.cpp * contrib/hbqt/qtgui/QTextFormat.cpp * contrib/hbqt/qtgui/QPalette.cpp * contrib/hbqt/qtgui/QTextFrame.cpp * contrib/hbqt/qtgui/QTextBlock.cpp * contrib/hbqt/qtgui/QPainter.cpp * contrib/hbqt/qtgui/QStyleOptionProgressBar.cpp * contrib/hbqt/qtgui/QTextTableFormat.cpp * contrib/hbqt/qtgui/QStatusBar.cpp * contrib/hbqt/qtgui/QTabWidget.cpp * contrib/hbqt/qtgui/QContextMenuEvent.cpp * contrib/hbqt/qtgui/QLCDNumber.cpp * contrib/hbqt/qtgui/QTextDocumentWriter.cpp * contrib/hbqt/qtgui/QStyleOptionTab.cpp * contrib/hbqt/qtgui/QDateEdit.cpp * contrib/hbqt/qtgui/QCheckBox.cpp * contrib/hbqt/qtgui/QSound.cpp * contrib/hbqt/qtgui/QTabBar.cpp * contrib/hbqt/qtgui/QSpacerItem.cpp * contrib/hbqt/qtgui/QFileDialog.cpp * contrib/hbqt/qtgui/QDirModel.cpp * contrib/hbqt/qtgui/QDialog.cpp * contrib/hbqt/qtgui/QFormLayout.cpp * contrib/hbqt/qtgui/QStyleOptionFrame.cpp * contrib/hbqt/qtgui/QSyntaxHighlighter.cpp * contrib/hbqt/qtgui/QFont.cpp * contrib/hbqt/qtgui/QTableWidgetItem.cpp * contrib/hbqt/qtgui/QVBoxLayout.cpp * contrib/hbqt/qtgui/QMovie.cpp * contrib/hbqt/qtgui/QStyleOption.cpp * contrib/hbqt/qtgui/QTreeView.cpp * contrib/hbqt/qtgui/QTextLine.cpp * contrib/hbqt/qtgui/QTextItem.cpp * contrib/hbqt/qtgui/QTimeEdit.cpp * contrib/hbqt/qtgui/QMatrix.cpp * contrib/hbqt/qtgui/QPrintPreviewDialog.cpp * contrib/hbqt/qtgui/QSlider.cpp * contrib/hbqt/qtgui/QSpinBox.cpp * contrib/hbqt/qtgui/QScrollArea.cpp * contrib/hbqt/qtgui/QFontDatabase.cpp * contrib/hbqt/qtgui/QLineEdit.cpp * contrib/hbqt/qtgui/QPixmap.cpp * contrib/hbqt/qtgui/QSplitter.cpp * contrib/hbqt/qtgui/QComboBox.cpp * contrib/hbqt/qtgui/QDoubleSpinBox.cpp * contrib/hbqt/qtgui/QStyleOptionComplex.cpp * contrib/hbqt/qtgui/QTableView.cpp * contrib/hbqt/qtgui/QPen.cpp * contrib/hbqt/qtgui/QRegion.cpp * contrib/hbqt/qtgui/QFrame.cpp * contrib/hbqt/qtgui/QCompleter.cpp * contrib/hbqt/qtgui/QStyleOptionSpinBox.cpp * contrib/hbqt/qtcore/QDate.cpp * contrib/hbqt/qtcore/QProcess.cpp * contrib/hbqt/qtcore/QTextBoundaryFinder.cpp * contrib/hbqt/qtcore/QPoint.cpp * contrib/hbqt/qtcore/QTextStream.cpp * contrib/hbqt/qtcore/QObject.cpp * contrib/hbqt/qtcore/QTimer.cpp * contrib/hbqt/qtcore/QEvent.cpp * contrib/hbqt/qtcore/QDataStream.cpp * contrib/hbqt/qtcore/QResource.cpp * contrib/hbqt/qtcore/QModelIndex.cpp * contrib/hbqt/qtcore/QTranslator.cpp * contrib/hbqt/qtcore/QLineF.cpp * contrib/hbqt/qtcore/QRect.cpp * contrib/hbqt/qtcore/QTime.cpp * contrib/hbqt/qtcore/QLocale.cpp * contrib/hbqt/qtcore/QPointF.cpp * contrib/hbqt/qtcore/QBitArray.cpp * contrib/hbqt/qtcore/QFile.cpp * contrib/hbqt/qtcore/QLatin1String.cpp * contrib/hbqt/qtcore/QSizeF.cpp * contrib/hbqt/qtcore/QMimeData.cpp * contrib/hbqt/qtcore/QLine.cpp * contrib/hbqt/qtcore/QUrl.cpp * contrib/hbqt/qtcore/QStringList.cpp * contrib/hbqt/qtcore/QByteArray.cpp * contrib/hbqt/qtcore/QRectF.cpp * contrib/hbqt/qtcore/QEventLoop.cpp * contrib/hbqt/qtcore/QDir.cpp * contrib/hbqt/qtcore/QSignalMapper.cpp * contrib/hbqt/qtcore/QTextEncoder.cpp * contrib/hbqt/qtcore/QLatin1Char.cpp * contrib/hbqt/qtcore/QRegExp.cpp * contrib/hbqt/qtcore/QFileInfo.cpp * contrib/hbqt/qtcore/QDateTime.cpp * contrib/hbqt/qtcore/QVariant.cpp * contrib/hbqt/qtcore/QUiLoader.cpp * contrib/hbqt/qtcore/QThread.cpp * contrib/hbqt/qtcore/QTextDecoder.cpp * contrib/hbqt/qtcore/QSize.cpp * contrib/hbqt/qtcore/QList.cpp * contrib/hbqt/qtnetwork/QHttp.cpp * contrib/hbqt/qtnetwork/QHttpRequestHeader.cpp * contrib/hbqt/qtnetwork/QNetworkRequest.cpp * contrib/hbqt/qtnetwork/QHttpResponseHeader.cpp * contrib/hbqt/qtnetwork/QFtp.cpp * Regenerated after generator change. 2009-12-10 00:44 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_destruct.cpp * contrib/hbqt/hbqt_base.cpp * Moved some non-destructor related stuff to hbqt_base.cpp. - Deleted hbqt_debug() low level call. (this temporarily break build, pls be patient) * C level hbqt_getmemused() is now always defined in Windows builds. * Harbour level HBQT_GETMEMUSED() now always works (not just special debug builds). * contrib/hbqt/hbqt_hbqtdbfmodel.cpp * contrib/hbqt/hbqt_hbqttableview.cpp * contrib/hbqt/hbqt_hbqtmymainwindow.cpp * contrib/hbqt/hbqt_slots.cpp * Replaced hbqt_debug() with HB_TRACE() calls. * contrib/hbqt/hbqt.h ! Added missing 'extern' keywords. ! Added missing 'extern int hbqt_getmemused( void )'. 2009-12-09 23:40 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog - examples/hbapollo/ChangeLog - Deleted redundant old local ChangeLog. ; We have only one ChangeLog now. 2009-12-09 23:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog - contrib/hbtip/ChangeLog * Old local ChangeLog merged into the central one. - examples/hbvpdf/ChangeLog + examples/hbvpdf/readme.txt * Renamed. 2009-12-09 22:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * ChangeLog - contrib/hbtpathy/ChangeLog * Old local ChangeLog merged into the central one. 2009-12-09 22:22 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL * Minor cleanups. * ChangeLog - contrib/hbpgsql/ChangeLog * Old local ChangeLog merged into the central one. 2009-12-09 21:25 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/xhb/fparse.c ! fixed few GPF traps and memory leaks % added some minor optimization I strongly suggest to use hb_aTokens() and hb_token*() functions. They have more options and for really large data many times (even hundreds times) faster. 2009-12-09 21:17 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbgd/gdwrp.c * Formatting (deleted unnecessary returns and blocks). % Using HB_ERR_FUNCNAME. * ChangeLog - contrib/hbgd/ChangeLog * Merged local ChangeLog into central one. 2009-12-09 20:55 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/rddsql/sqlbase.c ! fixed yet another typo 2009-12-09 20:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/Makefile ! added missing newly added header files - thanks to Itamar for information about the problem * harbour/include/hbmsgreg.h ! fixed typo - thanks to Toninho for information about the problem 2009-12-09 20:11 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/wapi_winbase.c + WAPI_WAITFORSINGLEOBJECT() + WAPI_WAITFORSINGLEOBJECTEX() + WAPI_WAITFORMULTIPLEOBJECTS() + WAPI_WAITFORMULTIPLEOBJECTSEX() Added new wrappers. Untested. 2009-12-09 19:36 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/Makefile * contrib/hbqt/hbqt.ch - contrib/hbqt/hbqt_misc.prg * contrib/hbxbp/xbp.ch * contrib/hbxbp/xbpgeneric.prg + Replaced local trace solution with HB_TRACESTRING(). 2009-12-09 19:13 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbtrace.c + Added support for HB_TR_WINOUT envvar (on Windows platform-only) to enable pushing trace output via OutputDebugString() calls. Use this before running an app: set HB_TR_WINOUT=yes (anything non-empty would work, not just 'yes') * src/rtl/trace.c + HB_TRACESTRING(): Added support to accept multiple parameters, it also handles non-string parameters, just like OUTSTD()/QOUT(). % Minor optimization to HB_TRACE() call. ; NOTE: Above two changes make it unnecessary to use custom made debug/trace solutions inside each contrib, and it also makes it unnecessary to use xhb lib for other proprietary trace solutions. * src/rtl/console.c * Variable scope optimization. * contrib/hbgd/gdwrp.c * Minor formatting. 2009-12-09 17:51 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnf/dispc.c * contrib/hbfimage/fi_winfu.c * contrib/hbfimage/fi_wrp.c * contrib/hbgd/gdwrp.c * Changed to use HB_IS*() macros to check parameter types instead of using hb_parinfo() & HB_IT_*. * Formatting. (deleted unnecessary blocks, returns, spaces) 2009-12-09 08:07 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbxbp/xbpdataref.prg ! Fix in XbpMLE():setData() method, omitted in prev change. 2009-12-09 16:43 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/olecore.c * Changed to use HB_SIZE instead of ULONG. ; Please review me, I wouldn't like to break OLE code. ; Only one place remains in hbwin which uses ULONG, as return value of hb_fsSeek(). In this case we need to think about it some more. * contrib/hbqt/hbqt.ch * Minor formatting. 2009-12-09 16:33 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_slots.cpp % Eliminated two variables. * contrib/hbwin/oleinit.c * contrib/hbwin/win_misc.c * contrib/hbwin/wapi_winuser.c * contrib/hbwin/axcore.c * contrib/hbwin/olecore.c * contrib/hbwin/win_com.c * contrib/hbwin/wapi_commctrl.c * Using HB_TRUE / HB_FALSE consistenly everywhere. 2009-12-09 16:16 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL + Updated Open Watcom product names to reflect that now plain C is supported as well. 2009-12-09 16:09 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * INSTALL * utils/hbmk2/hbmk2.prg * config/dos/watcom.mk * config/win/watcom.mk * config/linux/watcom.mk * config/os2/watcom.mk + Switched back plain C mode for watcom compiler. 2009-12-09 15:41 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/win_regc.c * contrib/hbwin/win_prn3.c * contrib/hbwin/win_dll.c + Using new UNICODE parameter passing macros instead of HB_TCHAR*() ones. ; Please review me. The transition is not yet full, as there were some problematic cases, which I've left as is. ! Added UNICODE support for WIN_REGQUERYVALUEEX()'s string return values. * contrib/hbwin/tests/testreg.prg + Added one more test call. ! Fixed to not use legacy registry call. 2009-12-09 15:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbapilng.h + harbour/include/hbmsgreg.h + added common for all Harbour lang modules (msg*.c) header file with initialization code * harbour/src/lang/msgbe866.c * harbour/src/lang/msgbewin.c * harbour/src/lang/msgbg866.c * harbour/src/lang/msgbgiso.c * harbour/src/lang/msgbgmik.c * harbour/src/lang/msgbgwin.c * harbour/src/lang/msgca.c * harbour/src/lang/msgcs852.c * harbour/src/lang/msgcsiso.c * harbour/src/lang/msgcskam.c * harbour/src/lang/msgcswin.c * harbour/src/lang/msgde.c * harbour/src/lang/msgdewin.c * harbour/src/lang/msgel.c * harbour/src/lang/msgelwin.c * harbour/src/lang/msgeo.c * harbour/src/lang/msges.c * harbour/src/lang/msgeswin.c * harbour/src/lang/msgeu.c * harbour/src/lang/msgfr.c * harbour/src/lang/msggl.c * harbour/src/lang/msghe862.c * harbour/src/lang/msghewin.c * harbour/src/lang/msghr437.c * harbour/src/lang/msghr852.c * harbour/src/lang/msghriso.c * harbour/src/lang/msghrwin.c * harbour/src/lang/msghu852.c * harbour/src/lang/msghucwi.c * harbour/src/lang/msghuiso.c * harbour/src/lang/msghuwin.c * harbour/src/lang/msgid.c * harbour/src/lang/msgis850.c * harbour/src/lang/msgit.c * harbour/src/lang/msgko.c * harbour/src/lang/msgltwin.c * harbour/src/lang/msgnl.c * harbour/src/lang/msgpl852.c * harbour/src/lang/msgpliso.c * harbour/src/lang/msgplmaz.c * harbour/src/lang/msgplwin.c * harbour/src/lang/msgpt.c * harbour/src/lang/msgptiso.c * harbour/src/lang/msgro.c * harbour/src/lang/msgru866.c * harbour/src/lang/msgrukoi.c * harbour/src/lang/msgruwin.c * harbour/src/lang/msgsk852.c * harbour/src/lang/msgskiso.c * harbour/src/lang/msgskkam.c * harbour/src/lang/msgskwin.c * harbour/src/lang/msgsl437.c * harbour/src/lang/msgsl852.c * harbour/src/lang/msgsliso.c * harbour/src/lang/msgslwin.c * harbour/src/lang/msgsr852.c * harbour/src/lang/msgsriso.c * harbour/src/lang/msgsrwin.c * harbour/src/lang/msg_tpl.c * harbour/src/lang/msgtr857.c * harbour/src/lang/msgtrwin.c * harbour/src/lang/msgua866.c * harbour/src/lang/msguados.c * harbour/src/lang/msguakoi.c * harbour/src/lang/msguawin.c * harbour/src/lang/msgzhb5.c * harbour/src/lang/msgzhgb.c * modified to use initialization code defined in common for all lang modules header file. * harbour/contrib/gtwvg/wvggui.c * harbour/contrib/hbqt/qtgui/QApplication.cpp * harbour/contrib/hbqt/qth/QApplication.qth * use default GT startup cvode (#include "hbgtreg.h") * harbour/include/hbinit.h + harbour/include/hbiniseg.h * replaced HB_MSC_STARTUP code with more universal HB_DATASEG_STARTUP * moved HB_DATASEG_STARTUP code to separate header file to reduce modifications in other files when this code has to be changed or extended + added support for startup code in OpenWatcom C builds. Now we can create OpenWatcom Harbour binaries without forcing C++ mode. I've tested Linux and Win32 builds and they works correctly. Probably similar solution can be used also for other C compilers which do not have native interface to define starup code. * harbour/src/compiler/genc.c * harbour/utils/hbmk2/hbmk2.prg * harbour/include/hbcdpreg.h * harbour/include/hbgtreg.h * harbour/src/rtl/hbregex.c * harbour/src/rdd/dbf1.c * harbour/src/rdd/dbfcdx/dbfcdx1.c * harbour/src/rdd/dbffpt/dbffpt1.c * harbour/src/rdd/dbfnsx/dbfnsx1.c * harbour/src/rdd/dbfntx/dbfntx1.c * harbour/src/rdd/delim1.c * harbour/src/rdd/sdf1.c * harbour/src/pp/pplib3.c * harbour/contrib/rddads/ads1.c * harbour/contrib/rddads/adsx.c * harbour/contrib/rddsql/sddfb/fbirddd.c * harbour/contrib/rddsql/sddmy/mysqldd.c * harbour/contrib/rddsql/sddodbc/odbcdd.c * harbour/contrib/rddsql/sddpg/pgsqldd.c * harbour/contrib/rddsql/sqlbase.c * harbour/contrib/rddsql/sqlmix.c * harbour/contrib/hbbmcdx/bmdbfcdx.c * harbour/contrib/hbmemio/memio.c * harbour/contrib/hbnetio/netiocli.c * harbour/contrib/hbbtree/hb_btree.c * harbour/contrib/hbwin/olecore.c * harbour/contrib/hbwin/win_com.c * modified to use HB_DATASEG_STARTUP instead of HB_MSC_STARTUP Now HB_MSC_STARTUP is local macro used only in hbinit.h. Please make MSVC build tests. * harbour/contrib/hbmemio/memio.c ! declare s_fileFuncs structure as static * removed unnecessary code to directly register HB_MEMIO symbol. Mindaugas if you need it for some reasons then I can reactivate it but I would like to know why it's necessary for you. * harbour/src/vm/task.c ! added missing {} * harbour/src/vm/fm.c * locally disabled "unreachable code" warnings for dlmalloc.c compilation by OpenWatcom in pure C mode * harbour/src/rtl/hbzlibgz.c * minor code cleanup * harbour/src/rtl/filesys.c * pacified OS/2 warnings * harbour/contrib/hbcairo/core.c ! fixed casting for C++ builds * harbour/contrib/hbwin/wapi_winbase.c ! fixed casting * harbour/src/Makefile * changed the order of compiled libraries to improve little bit the speed in concurrent (-j) builds 2009-12-09 12:50 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbwin/legacyco.c * contrib/hbwin/wapi_winuser.c ! Added missing header. * ChangeLog + Missed change added to prev entry. 2009-12-09 04:06 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbwinuni.h + Added HB_PARSTRDEF() macro. So far the same as HB_PARSTR(), but it's supposed to mark places where hb_parcx() was used (where WinAPI expects non-optional string parameter). * contrib/hbwin/wapi_winbase.c * contrib/hbwin/wapi_winuser.c * contrib/hbwin/wapi_shellapi.c * contrib/hbwin/legacyco.c + Using new UNICODE parameter passing macros instead of HB_TCHAR*() ones. ; NOTE: I'm unsure how to apply the same to wapi_commctrl.c, could anyone help? Here the string is assigned to win structure and passed to winapi, which may mean that string space should be kept there after returning from function. ! WAPI_FORMATMESSAGE() fixed to return empty string (instead of gargabe) if there was an error returned (f.e. because of too small, or no buffer). * contrib/hbxbp/xbpgeneric.prg ! Using HB_SYMBOL_UNUSED() to mark unused parameters, instead of local solution. % Minor optimizations. * MSGBOX() changed to not display all text in bold. + Changed
to
in MSGBOX(). 2009-12-08 18:27 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/idemisc.prg * contrib/hbide/projects/hbide.hbi * contrib/hbqt/hbqt_slots.cpp * contrib/hbqt/hbqt_slots.h * contrib/hbxbp/xbpmle.prg + Implemented project building. Right click on project tree node and select or context menu options. I am looking for Qt like process management in Harbour. I mean, I need callback when process is running. 2009-12-08 16:56 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/common/hbver.c ! Fixed determining the patch level of MSVC compiler on or above version 2005. Adapted fix from xhb / Andi Jahja. * contrib/hbqt/hbqt_slots.cpp * Little renaming. 2009-12-08 15:34 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_slots.cpp * Further formatting and some variables renamed. Again sorry for using such long lines, but - at least to me - it reveals the slot logic so clearly. In fact from this point it's even visible how this could be made modular. 2009-12-08 13:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbcairo/core.c + Enabled HB_USE_ITEM mode which doesn't use Harbour internals. 2009-12-08 13:16 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/hbwinuni.h ! Fixed two typos in new macros. * contrib/hbwin/wapi_shellapi.c * Minor formatting. 2009-12-08 12:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * include/Makefile + include/hbwinuni.h * contrib/hbwin/wapi_shellapi.c * include/hbwince.h + Moved new UNICODE translation macros to separate header. 2009-12-08 11:43 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/macro/Makefile - src/macro/macro.l * src/compiler/Makefile - src/compiler/harbour.l - src/compiler/fixflex.c * INSTALL * config/c.mk * config/rules.mk * Deleted references to Flex and related files. Flex is not used since long. It couldn't generate MT safe lexer code. 2009-12-08 11:30 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + contrib/hbqt/hbqt_hbqtmymainwindow.cpp * contrib/hbqt/hbqt_slots.cpp * contrib/hbqt/Makefile * MyMainWindow() class moved to separate source file. * Deleted commented debug calls. * Code formatting. ! Fix to call mutex initialization on MyMainWindows creation, to guarantee its present. Anyhow current method is still not safe. % Cleaned some casts. ; TOFIX: mutex initialization in MyMainWindow. [DONE] ; TOFIX: MyMainWindow is a leakable resource and it _is_ leaked from hbxbp. [DONE] * contrib/hbxbp/xbpsle.prg * contrib/hbxbp/xbplistbox.prg * contrib/hbxbp/xbprtf.prg * contrib/hbxbp/xbpbrowse.prg * contrib/hbxbp/xbpwindow.prg * contrib/hbxbp/xbpcombobox.prg * contrib/hbxbp/xbppushbutton.prg * contrib/hbxbp/xbp.ch * contrib/hbxbp/xbptreeview.prg * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbpspinbutton.prg * contrib/hbxbp/xbpgeneric.prg * contrib/hbide/hbide.prg * :createFromQtPtr() -> hbCreateFromQtPtr() ! Fixed few non-Xbase++ public functions to hold the hbxbp_ prefix in their names. It probably needs further cleanup. % Highly optimized ConvertAFact(), now goes by the name hbxbp_ConvertAFactFromXBP(). Only one conversion was used in code, so I dropped the other, but it can be readded similarly if ever needed. ! Mutex destroy moved to the end of EXIT PROC, anyway it's still not safe and should be solved differently. (TOFIX) ; TOFIX: hbxbp_SetEventFilter() is passed to several function, but this function has no return value. [DONE] * contrib/hbcairo/core.c * Minor. 2009-12-07 23:43 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbqt/hbqt_hbqtdbfmodel.cpp * contrib/hbqt/hbqt_slots.cpp * contrib/hbxbp/tests/demoxbp.prg ! Fixed unoperational demoxbp.exe. 2009-12-08 04:07 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/contrib/hbcairo/core.c ! fixed code which operates on GC blocks and make both versions (with and without HB_USE_ITEM) working in the same way so thay can be easy compared. 2009-12-08 02:53 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_slots.cpp ! Fixed to check for NULL pointer and return error in QT_CONNECT_EVENT() and QT_DISCONNECT_EVENT() and MyMainWindow desctructor. ; TOFIX: Passing non-block to QT_MYMAINWINDOW() first parameter will cause GPFs. [MIS-REPORT] * contrib/hbxbp/tests/demoxbp.prg * contrib/hbxbp/xbpwindow.prg * contrib/hbxbp/xbpdialog.prg * contrib/hbxbp/xbpgeneric.prg ! THREADID() -> HB_THREADID(). (former is not necessarily available in core) 2009-12-08 02:41 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_slots.cpp % Eliminated local variable in all Slots:: method. 2009-12-08 02:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_slots.cpp * Formatting. ! Deleted explicit ( char * ) casts. ! Converted some types to const char *. + Added hbqt_ prefix to Slot*() callback names. * ChangeLog + Added missing changes to my 2009-12-08 01:09 entry. 2009-12-08 01:51 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/hbqt_destruct.cpp * contrib/hbxbp/xbptabpage.prg * contrib/hbxbp/xbptreeview.prg * contrib/hbide/hbide.prg ! Renamed ISEQUALGCQTPOINTER() to HBQT_ISEQUALGCQTPOINTER() 2009-12-07 16:30 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg + Added some more debug code. Now HBIDE exits cleanly. * contrib/hbqt/hbqt_destruct.cpp - Removed HBQT_QTPTR_FROM_GCPOINTER() + Added ISEQUALGCQTPOINTER() * contrib/hbqt/hbqt_slots.cpp ! Fixed MainWindow::~MainWindow() calls. Was a reason FOR many GPFs. * contrib/hbqt/qtgui/QApplication.cpp * contrib/hbqt/qth/QApplication.qth - Removed call to Qt_destroy_codeblocks(). * contrib/hbxbp/xbpfontdialog.prg ! Proper destruction of font and font metrix. * contrib/hbxbp/xbptabpage.prg % Replaced call to HBQT_QTPTR_FROM_GCPOINTER() => IsEqualGcQtPointer() * contrib/hbxbp/xbptreeview.prg % Replaced call to HBQT_QTPTR_FROM_GCPOINTER() => IsEqualGcQtPointer() * contrib/hbxbp/xbpwindow.prg % Replaced call to HBQT_QTPTR_FROM_GCPOINTER() => IsEqualGcQtPointer() * contrib/hbxbp/tests/demoxbp.prg ! Test calls to overview memory usage with different modes to release Qt pointers. Now it exits cleanly. * contrib/hbide/hbide.prg + Added some more debug code. Now HBIDE exits cleanly. * contrib/hbqt/hbqt_destruct.cpp - Removed HBQT_QTPTR_FROM_GCPOINTER() + Added ISEQUALGCQTPOINTER() * contrib/hbqt/hbqt_slots.cpp ! Matched hb_vmRequestReenter() / hb_vmRequestRestore() calls. ! Fixed MainWindow::~MainWindow() calls. Was a reason FOR many GPFs. * contrib/hbqt/qtgui/QApplication.cpp * contrib/hbqt/qth/QApplication.qth - Removed call to Qt_destroy_codeblocks(). * contrib/hbxbp/xbpfontdialog.prg ! Proper destruction of font and font metrix. * contrib/hbxbp/xbptabpage.prg % Replaced call to HBQT_QTPTR_FROM_GCPOINTER() => IsEqualGcQtPointer() * contrib/hbxbp/xbptreeview.prg % Replaced call to HBQT_QTPTR_FROM_GCPOINTER() => IsEqualGcQtPointer() * contrib/hbxbp/xbpwindow.prg % Replaced call to HBQT_QTPTR_FROM_GCPOINTER() => IsEqualGcQtPointer() * contrib/hbxbp/tests/demoxbp.prg ! Test calls to overview memory usage with different modes to release Qt pointers. Now it exits cleanly. 2009-12-08 01:09 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + contrib/hbqt/hbqt_hbqtsyntaxhighlighter.cpp + contrib/hbqt/hbqt_hbqtdbfmodel.cpp + contrib/hbqt/hbqt_hbqttableview.cpp + contrib/hbqt/hbqt_hbqtmydrawingarea.cpp * contrib/hbqt/hbqt_destruct.cpp * contrib/hbqt/hbqt_slots.cpp * contrib/hbqt/hbqt_slots.h * contrib/hbqt/Makefile * Formatting (some of these generated long lines, but for now I had to see what's happening in code) * Moved out some classes from hbqt_slots.cpp. (TODO/TOFIX: renaming, moving declarations) ! Fixed missing hb_vmRequestRestore() calls. (lots) + Added TOFIX hbqt_gcpointer(); % Certain functions marked static. % Optimized out listActv vars. - Deleted commented code. % Large amount of mutually exclusive 'if()'s converted to 'else if()'s. ! Added NULL check in QT_CONNECT_SIGNAL(). * contrib/rddads/adsx.c * contrib/rddads/ads1.c * Minor formatting. 2009-12-07 19:29 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/config/global.mk ! fixed variable name in output message 2009-12-07 18:42 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/src/pp/ppcore.c * strip UTF-8 BOM signature from compiled .prg files * harbour/include/hbdefs.h + added HB_MACRONAME_JOIN() macro * harbour/include/hbinit.h ! fixed startup function declaration when HB_STRICT_ANSI_C macro is set * harbour/src/rdd/dbfcdx/dbfcdx1.c * modified to use unique names for startup functions * harbour/include/hbcdpreg.h * modified to use unique names in CP startup functions for non #pragma based initialization. * harbour/include/Makefile + harbour/include/hbgtreg.h + added default GT startup code in header file which can be included by GT drivers. This version uses unique function names for non #pragma based initialization. * harbour/src/rtl/gt_tpl/gt_tpl.c * harbour/src/rtl/gtdos/gtdos.c * harbour/src/rtl/gtwin/gtwin.c * harbour/src/rtl/gtxwc/gtxwc.c * harbour/src/rtl/gtcrs/gtcrs.c * harbour/src/rtl/gtstd/gtstd.c * harbour/src/rtl/gttrm/gttrm.c * harbour/src/rtl/gtcgi/gtcgi.c * harbour/src/rtl/gtos2/gtos2.c * harbour/src/rtl/gtsln/gtsln.c * harbour/src/rtl/gtpca/gtpca.c * harbour/src/rtl/gtgui/gtgui.c * harbour/src/rtl/gtwvt/gtwvt.c * harbour/contrib/gtalleg/gtalleg.c * harbour/contrib/gtqtc/gtqtc.cpp * harbour/contrib/gtwvg/gtwvg.c * harbour/contrib/hbct/ctwin.c * use #include "hbgtreg.h" for startup code 2009-12-07 11:40 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt) * harbour/contrib/rddads/ads1.c * renamed RDD from ADT to ADSADT + added public functions ADSADT, ADSNTX, ADSCDX, ADSVFP to be able do a REQUEST RDD using RDD name from .prg code * harbour/contrib/rddads/adsx.c + added ADSNTXX, ADSCDXX, ADSADTX RDDs 2009-12-07 10:14 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * external/libpng/pngerror.c * external/libpng/pngrio.c * external/libpng/pngwrite.c * external/libpng/pngconf.h * external/libpng/pngwtran.c * external/libpng/pngpread.c * external/libpng/pngset.c * external/libpng/LICENSE * external/libpng/pngwio.c * external/libpng/pngrutil.c * external/libpng/pngwutil.c * external/libpng/pngread.c * external/libpng/pngmem.c * external/libpng/png.c * external/libpng/pngget.c * external/libpng/pnggccrd.c * external/libpng/png.h * external/libpng/pngrtran.c * external/libpng/pngtrans.c ! Reverted to 1.2.40 (from 1.2.41) Due to this regression: --- wcc386 -zq -bt=nt -bm -w0 -3s -i. -i../../../../../include -d2 -DHB_TR_LEVEL_DEBUG -I/home/ice/w/xhb/hbci/harbour-build/external/zlib -fo=pngmem.obj ../../../pngmem.c ../../../pngmem.c(447): Error! E1057: Modifiers disagree with previous definition of 'png_calloc' ../../../pngmem.c(447): Note! I2002: 'png_calloc' defined in: ../../../png.h(3754) --- 2009-12-07 00:48 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbxbp/xbptreeview.prg ! Fixed how children nodes are managed. * contrib/hbide/idemisc.prg * contrib/hbide/projects/hbide.hbi * contrib/hbide/idestylesheets.prg * contrib/hbide/hbide.prg ! More context menu options. RIGHT+CLICK on files presents options. + Implemented adding source files via