* harbour/src/rtl/gtwvt/gtwvt.c
! use ERROR_CLASS_ALREADY_EXISTS instead of hardcoded 1410 value
* allow to use GTWVT in programs linked as non GUI ones
(console programs)
* contrib/hbide/projectpropertiesex.ui
% Rearranged: tab names in accordance with new Project Management.
* contrib/hbide/hbide.hbp
! Loaded in hbIDE, added hbide.ch, and saved.
* contrib/hbide/idemain.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideprojmanager.prg
+ Implemented: in-demand-since-begining feature to contain
anciallary files within the project tree but still keeping
compatibility with hbMK2. Also to have single project
file with all its contents intact, for GUI and command line
interface.
It is how it is achieved: a .hbp is loaded in HBP tab "as is"
except stripping the header part which is readded when the
project is saved. The header part is comprised of :
#
# $Id$
#
-3rd=hbide_* contents.
Rest whole of the on-disk contents of .hbp are made available
for editing. When a source is added via Add button, it is checked
if it is a compilable source. If not then "-3rd=file=" + filename
is added at the bottom.
Compilable sources are recognized by extention:
".c,.cpp,.prg,.hbs,.rc,.res,.hbm,.hbc,.qrc,.ui"
If any is missing, please shout.
TODO: user defined list of extentions for this purpose.
The project tree is now more organized and is listed sorted
on extention and filename. User can easily locate the source
of interest and click to bring it into the editor.
Please test extensively, I might have left new bugs for sure.
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
+ Added: "QModelIndex,QModelIndex" constant.
* contrib/hbqt/tests/testbrow.prg
- Replaced: BREAK => EXIT.
Under such context, BREAK ( break; ) is a C statement not Harbour.
* contrib/hbide/idehome.prg
! Corrected: paths to be shown in original case in "Stats" tab.
It fixes the wrong representation of paths in *nix systems.
* contrib/hbcurl/hbcurl.hbc
* Changed to use 'libcurl' as implib name also for mingw.
This name will work for the implib generated
by Harbour build process. If you want to use something
else (f.e. one shipped with a prebuilt libcurl binary release),
update the .hbc file locally.
* utils/hbrun/hbrun.prg
* Minor stdization in recent output msgs.
* harbour/src/common/hbtrace.c
! fixed to not overwrite user trace settings with default or
environment configuration on 1-st call to hb_tr_level()/
hb_tracelevel() function
* harbour/contrib/hbct/hbct.hbx
* harbour/contrib/hbqt/qtuitools/hbqtuitools.hbx
* harbour/examples/httpsrv/home/js/ajax.js
! set svn:eol-style to native
* set svn:keywords to Author Date Id Revision
* harbour/src/lang/msgsv.c
* harbour/src/lang/msgsvwin.c
* harbour/contrib/xhb/xhbinkey.prg
* harbour/contrib/hbxbp/tests/dialogqt.prg
* harbour/contrib/hbxbp/tests/wvtqt.hbp
* harbour/contrib/hbxbp/tests/wvtqt.prg
* harbour/contrib/hbide/hbqtoolbar.prg
* harbour/contrib/hbide/hbqreportsmanager.prg
* harbour/contrib/hbide/plugins/hbide_script_rdds.prg
* harbour/contrib/hbide/idedict.prg
* harbour/contrib/hbide/idebrowse.prg
* set svn:keywords to Author Date Id Revision
* harbour/include/harbour.hbx
* harbour/include/hblang.hbx
* regenerated
BTW 'make install' does not regenerate core .hbx files so they
were not updated for quite long time thogh I have set
export HB_REBUILD_EXTERN=yes
* harbour/contrib/xhb/hbcompat.ch
+ added hb_bitTest() <-> hb_bitIsSet() translations
* utils/hbrun/hbrun.prg
+ Added support for registering/unregistering .hbs file type
in Windows registry. Based on .reg files provided by Mindaugas
(with modifications and unregister support). I changed the way
defaulticon entry is made, but it still doesn't appear, maybe
I need reboot or something. Pls test it.
Usage (from cmdline):
-r - register for current user
-ra - register for all users (requires admin rights)
-u - unregister for current user
-ua - unregister for all users (requires admin rights)
Tested on Win7 using current user only.
NOTE: regedit (the tool used for registration) doesn't
return errorlevels on error, so it's not possible
to write correct feedback (so hbrun always shows
success).
* package/winuni/mpkg_win_uni.bat
! Added .hbs files in contrib roots to unified windows
package. In practice this means that the hbmk2 qt plugin
will now be shipped with standard distro.
* utils/hbmk2/hbmk2.prg
! Typo in comment.
* contrib/hbqt/qtgui/hbqtgui.ch
+ Added: more constants.
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
* contrib/hbqt/qtcore/hbqt_hbqslots.h
% Reverted: back to signals previous protocol until new is mature enough.
* contrib/hbqt/qtcore/hbqtcore.hbx
* contrib/hbqt/qtgui/hbqtgui.hbx
* contrib/hbqt/qtnetwork/hbqtnetwork.hbx
* contrib/hbqt/qtuitools/hbqtuitools.hbx
* Re-generated.
* contrib/hbqt/qt*/g/*.prg
* Re-generated after effected changes in hbqtgen.prg.
* contrib/hbqt/qtgui/qth/QMainWindow.qth
! More children detached.
* contrib/hbide/idedocks.prg
! A small fix.
* contrib/hbide/ideprojmanager.prg
! Fixed: Launching a project from main-menu was generating a RTE
when there was no project defined, repoted by Frank.
* contrib/hbide/idemisc.prg
+ Applied: patch from Viktor. Now .hbm files are available inside
list of project files and it also become part of the .hbp if that
is written back on disk plus for editing purposes.
* harbour/src/debug/dbgwa.prg
! added missing REQUEST FIELDGET
+ added support for timestamp, hash and NIL values which
can be extracted from fields in some RDDs
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
! Added uic/rcc tools to install packages.
* QT related runtime/build time files are now installed
unconditionally and independently from HBIDE.
* harbour/src/compiler/hbmain.c
! reset function and class declaration between compiling files included
by SET PROCEDUR TO <name> or DO <name> [ WITH <args,...> ]
This behavior is synced with PP rules resetting.
* harbour/contrib/xhb/xhb.hbp
+ added two .ch files
* harbour/contrib/hbct/hbct.hbx
* regenerated with LF EOL.
I think that these files should be declared in SVN as using native
EOLs
* contrib/hbide/idebrowse.prg
% Changed: one signal to new format.
* contrib/hbide/idemain.prg
% Changed: instance variables to local ones.
* contrib/hbxbp/hbpprocess.prg
% Changed: one signal to new format.
* contrib/hbxbp/xbpbrowse.prg
% Changed: one signal to new format.
* contrib/hbxbp/xbpspinbutton.prg
! Destroy() was misbehaving.
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
* contrib/hbqt/qtcore/hbqt_hbqslots.h
+ Implemented: Francesco's signal/slot mechanism over older one.
It is a big leap forward, please cheer Francesco Perillo.
TODO: changing signal definitions to exactly that of Qt itself.
It is a challenging job and needs a real concentration.
* contrib/hbqt/qtgui/hbqtgui.hbx
+ contrib/hbqt/qtgui/THbQtUI.prg
* contrib/hbqt/qtgui/hbqtgui.hbm
* contrib/hbqt/qtuitools/hbqtuitools.hbm
* contrib/hbqt/qtuitools/hbqtuitools.hbx
- contrib/hbqt/qtuitools/THbQtUI.prg
+ contrib/hbqt/qtuitools/THbQtUILoader.prg
* contrib/hbqt/hbqt_hbmk2_plugin.hbs
+ Added new HbQtUI class (with temp name HbQtUI2) which
is light version of HbQtUI with no ties to qtuitools/uiloader
components.
New class is inheriting from HBQT root class, it
contains minor optimizations and cleanups.
It works, but it's not yet activated.
* Moved Q__TR() to hbqtgui from hbqtuitools.
; TODO: Clear all TOFIX/QUESTION/TODO items in THbQtUI.prg.
F.e. user code like hbide makes quite many direct
manipulations on HbQtUI internal variables. This should
pbly be fixed.
; TODO: Optimize the OnError way of doing things in HbQtUI class.
* Renamed THbQtUI.prg to THbQtUILoader.prg in hbqtuitools.
* contrib/hbxbp/hbxbp.hbc
* contrib/hbide/hbide.hbp
* Moved inclusion of hbqtuitools from hbxbp to hbide.
Dynamic QUiLoader shall only be needed if app explicitly
requires loading .ui/.uic files dynamically.
; TOFIX: Separate dynamic ui loader code from static one
(pbly HbQtUi class needs to be split into two
parts)
* contrib/hbide/idemain.prg
+ Reenabled puller code, because external scripts may need it.
* contrib/hbide/idemain.prg
% Do not link all HBXBP classes. It's not required now that .ui
files are compiled to .prg at build time.
This will make hbide slightly smaller.
* contrib/hbide/idemain.prg
% Do not link all GUI classes. It's not required now that .ui
files are compiled to .prg at build time.
This will make hbide slightly smaller.
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* Renamed QT license file (now shows "LGPL").
+ Added uic.exe and rcc.exe to Windows unified build.
+ Added QT implibs for mingw compiler.
; It means that now default Windows unified package can
be used to create QT apps without installing QT package
separately. Please someone verify this is in compliance
with LGPL QT license.
* contrib/hbqt/hbqt_hbmk2_plugin.hbs
- Removed support for compatibility setting HB_QT_MOC_BIN.
+ Will now autodetect uic/rcc/moc if present next to hbmk2
(only on win/os2 systems). This will be the case when
using unified Windows package. Only lightly tested.
* contrib/hbide/idemisc.prg
* contrib/hbide/idemain.prg
* contrib/hbide/hbide.ch
* Cleaned/optimized loading of UI.
- Deleted reference to HbQtUi() so that the static lib
QtUiTools is not required to build hbide. (it was not
actively used anyway)
; TOFIX: QUiLoader class should be moved to a separated lib
from hbqtgui.
* contrib/hbqt/utils/qtcore.qtp
! Reenabled recently disabled classes so that these generated
sources will get updated (and not generate false grep hits)
* contrib/hbqt/qtcore/hbqt_misc.prg
- Deleted HbQtObjectHandler:from() method.
If such object "casting" is needed, it should be added on a
per class basis, using something like this code:
---
METHOD <class>:from( oObject )
LOCAL pPtr
IF hbqt_isObject( oObject ) .AND. ;
( oObject:className == "xxx" .OR. oObject:className == "yyy" ... )
IF hbqt_isPointer( pPtr := oObject:pPtr )
::pPtr := pPtr
ENDIF
ELSE
__hbqt_Error()
ENDIF
RETURN Self
---
* contrib/hbqt/utils/hbqtgen.prg
! Fixed to generate doc source for classes without methods.
- Deleted :from() references.
- Do not generate <class>From() function anymore.
(TODO: Need regeneration after that)
* contrib/hbqt/utils/hbqtgen.prg
* contrib/hbqt/qtgui/THbQtUI.prg
* contrib/hbqt/hbqt_hbmk2_plugin.hbs
- Deleted commented references to :from() method.
* contrib/hbqt/qtgui/doc/*
* contrib/hbqt/qtwebkit/doc/*
* contrib/hbqt/qtcore/g/*
* contrib/hbqt/qtcore/doc/*
* contrib/hbqt/qtnetwork/doc/*
* contrib/hbqt/qscintilla/doc/*
* contrib/hbqt/qtdesigner/doc/*
* Regenerated.
* contrib/hbqt/qtcore/hbqt_pointer.cpp
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
* contrib/hbqt/qtcore/hbqt_hbqevents.cpp
* contrib/hbqt/qtcore/hbqt_misc.prg
* contrib/hbqt/utils/hbqtgen.prg
* Renamed HBQT_PTR() -> __HBQT_PTR().
(HBQT_PTR() still present and can be renamed once sources were regenerated)
* Renamed QT_[SLOTS|EVENTS]_*() -> __HBQT_[SLOTS|EVENTS]_*()
This also fixes the problem where these were missing from .hbx file.
* Renamed HBQT_ERROR() -> __HBQT_ERROR().
+ Added NOTE about contradiction where :hasValidPointer() will never
return .T. for valid objects created with <class>FromPointer() call.
Another reason to drop this object instantiation method.
+ Added more TODO/NOTE/TOFIX text.
* contrib/hbqt/qtcore/hbqtcore.hbx
* contrib/hbqt/qtnetwork/hbqtnetwork.hbx
* Refreshed.
* contrib/hbqt/tests/dialogqt.prg
* contrib/hbide/plugins/hbide_script_qtgui.hbs
* QT_[SLOTS|EVENTS]_*() -> __HBQT_[SLOTS|EVENTS]_*()
; QUESTION: Should these examples changed to use :connect()/:disconnect()?
* harbour/src/rtl/gtstd/gtstd.c
* updated to compile with WinCE
* harbour/package/harbour.spec
* modified to work with new HBMK2 translations
* harbour/contrib/hbmzip/hbmzip.c
! fixed function order
* harbour/contrib/hbwin/axcore.c
* include <olectl.h>
! fixed buffer sizes in debug function
* removed trailing spaces and tabs
* harbour/contrib/hbwin/hbolesrv.c
* include <tchar.h> - for some compilers which do not make it
with OLE header files
* contrib/hbqt/utils/hbqtgen.prg
! Fixed to pass 'uchar' where QT needs it (instead of current 'char')
; TOFIX: hb_parc() return value is still de-const-ed and passed
to QT which is 100% way to create random GPFs.
See TOFIXes in code.
* utils/hbmk2/hbmk2.prg
* Formatting.
* contrib/rddads/rddads.hbp
! Reordered lookup order for possible .dll (+ COFF .lib) location
to fix implib generation with some ADS releases (7.x, 8.x).
* contrib/hbqt/utils/hbqtgen.prg
+ Changed HB_<class> class instantiation function STATIC.
+ Added <class>FromPointer() function to create class from a raw class pointer.
(this should be eliminated ASAP)
+ Added <class>From() function to create class from another class.
It's now simply calling :from() in base class, which is wrong
and should be fixed for two reasons:
- raw pointer is allowed (all such calls should be changed to <class>FromPointer())
- no object type checking is made.
; NOTE: Please update HBIDE and HBXBP to use these rules:
HB_<class>:from( ptr ) => <class>FromPointer( ptr )
HB_<class>:from( obj ) => <class>From( obj )
* contrib/hbqt/qtcore/hbqt_pointer.cpp
* contrib/hbqt/qtcore/hbqtcore.hbx
+ HBQT_ISOBJECT() will return .T. is the passed object is a HBQT one.
* contrib/hbqt/qtcore/hbqt_misc.prg
* :isValidObject() -> :hasValidPointer()
+ :fromPointer(): New method used solely to convert raw QT pointers
to HBQT objects. In such case no object type checking can be done,
so it's dangerious, thus raw pointers should eventually be eliminated
from HBQT code and as final step this method removed.
The method will RTE is non-pointer parameter is passed.
+ Added TODOs.
; TODO: Change :from() method to only allow QT object input parameter
and RTE otherwise. At the same time :from() calls with pointer
input should be changed to :fromPointer(). As next step :from()
should be moved to class level and proper object type checking
added to avoid assigning wrong QT object to HBQT object wrapper.
* contrib/hbxbp/xbplistbox.prg
* contrib/hbxbp/xbpwindow.prg
* contrib/hbxbp/xbptreeview.prg
* contrib/hbide/idefindreplace.prg
* contrib/hbide/ideedit.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/hbqreportsmanager.prg
* contrib/hbide/ideharbourhelp.prg
* contrib/hbide/ideskeletons.prg
* :isValidObject() -> :hasValidPointer()
* INSTALL
+ Added OS/2 GCC link.