* harbour/src/compiler/harbour.y
* harbour/src/compiler/harbour.yyh
* harbour/src/compiler/harbour.yyc
* increase the maximum bison stack size limit
from 10000 items to 100000
* harbour/src/rtl/gtsln/kbsln.c
+ added support for HB_K_RESIZE
* harbour/contrib/hbwin/axcore.c
* harbour/contrib/hbwin/hbolesrv.c
* do not pass message ID (DISPID) as first parameter of codeblock
or function taken from hash array indexed by DISPIDs.
This modification restores old format, i.e. the one expected
by GTWVG code.
* harbour/contrib/hbwin/tests/olesrv1.prg
! comment
* src/rtl/gtcrs/gtcrs.c
+ GTCRS will now generate HB_K_RESIZE Harbour INKEY() events
if the terminal window is resized.
Thanks for Tamas Tevesz for the suggestion + patch.
* Whitespace formatting.
* include/std.ch
+ Added .hbv version of SAVE TO / RESTORE FROM commands.
Use 'SAVE HBV ...' and 'RESTORE HBV ...' commands to
use Harbour specific mem file format (with .hbv extension).
The file format supports long variable names and much
larger amount of data then Clipper compatible .mem files.
The file format is NOT compatible with Clipper.
; Pls review. This is my first time extending Harbour
commands, plus I'm not very much a command freak, so
maybe there is more natural (and compatible) way to
extend existing SAVE/RESTORE command.
* utils/hbrun/hbrun.prg
* Variable scope cleanup to prev.
* src/rtl/gttrm/gttrm.c
+ GTTRM will now generate HB_K_RESIZE Harbour INKEY() events
if the terminal window is resized.
* utils/hbrun/hbrun.prg
+ Will now automatically resize the UI if the window is
resized (on GTs which support this: GTTRM, GTWVT, GTXWC)
+ Now shows little red 'o' sign if history recording is enabled (default)
+ Set resize mode to 'rows' (only meaningful if using GTs
that support it).
% hbrun_Info() optimized.
* utils/hbrun/hbrun.prg
+ Added load/save of command history.
It can be disabled by -p cmdline option or by adding
a single line "no" (without quotes) to the history filename.
Otherwise last 500 commands will be remembered.
History filename is %APPDATA|HOME%/.harbour/.hbrun_history
if such envvar is present, otherwise hbrun dir. On MS-DOS
it's hbrun dir and hbrunhst.ini.
* utils/hbmk2/hbmk2.prg
* Minor variable/constant name cleanup.
* contrib/hbqt/hbmk2_plugin_qt.prg
! Typo in #if statements.
* src/vm/extend.c
* include/hbapi.h
+ Added hb_retclen_const() to return constant byte arrays.
* contrib/hbqt/hbmk2_plugin_qt.prg
* contrib/hbide/hbide.prg
+ Implemented pure Harbour .c QT resource support.
Commented, waiting for HBQT API to load resources
from byte stream.
This method will create a pure .c source files
from binary QT resource, so it doesn't require
QT headers to be present.
* contrib/hbqt/hbmk2_plugin_qt.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideskeletons.prg
* Changed 'ui' prefix to 'hbqtui_' for compiled .ui
file entry function names.
* utils/hbmk2/hbmk2.prg
+ Added hbmk2_FNameToSymbol() plugin function to convert
filename to Harbour symbol name.
* contrib/hbide/hbide.env
- Deleted QT setup from compilers where QT is not supported.
* external/bzip2/Makefile
- Deleted now not needed old URL tag.
* external/patchup.prg
+ Added option to create temp dir in cwd.
+ Using --force-local tar option to make broken Windows
tar build (gnuwin32 latest 1.13 release from 2003) happy.
+ Changing to target dir on our own instead of using -C
tar option. This option is broken on Windows tar build
(gnuwin32 latest 1.13 release from 2003)
* package/winuni/RELNOTES
+ libcurl updated.
* contrib/hbide/ideedit.prg
% Changed: context-menu options for "Split..." are now
edit instance's state dependent.
! Thumbnail window is not closed while split is closed.
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
! Fixed: the paint behavior in "thumbnail".
Selected text was covered behind highlight area.
* contrib/hbide/idebrowse.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/idesaveload.prg
+ Added: more icons to ideDBU toolbar, close and toggle form view.
+ Implemented: to save and restore table informations per panel.
Now ideDBU is presented with opened tables as was closed previously.
+ Implemented: "Panels" concept where each panel can hold
different tables.
TODO: interface to add panels.
Please test.
* contrib/hbide/ideedit.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/idetools.prg
% Minor fix in "buttonBrowse_clicked" event which was causing
RTE when there was no other Tool defined.
! Fix to Ctrl+G which stopped working after keyboard macros
synchronization few days back.
! Thumbnail window is closed if a source is closed. To
activate it for another source you need to activate it again.
However, switching over to another source, it stays as is.
+ Reimplemented: split behavior of current editing instance.
Before it was done in fixed halved window plus split
was available verically and horintally any level deep.
This was neither appropriate nor desired behavior.
Now split is presented in resizable window either horizontally
or vertically. The behavior can be changed if all splitted
windows are closed first and then again split is initiated.
Above anomalies reported by Viktor, thanks.
Please test and report back any fix is not upto mark.
* contrib/hbide/ideprojmanager.prg
+ Changed to not save hbide options with empty or
default values to .hbp files.
* contrib/hbqt/hbqscintilla/hbqscintilla.hbp
* contrib/gtwvg/tests/demowvg.hbp
* contrib/hbide/hbide.hbp
% Deleted empty and default hbide options from .hbp files.
* utils/hbmk2/hbmk2.prg
+ Addeded support for specifying dependencies in .hbc files.
* contrib/hbide/hbide.hbp
* contrib/hbqt/hbqt.hbc
* Moved qt dependency specification from local make file to
central hbqt.hbc.
* INSTALL
* contrib/hbqt/hbmk2_plugin_qt.prg
! Minor correction to compile to hbmk2 plugin .hrb if compiled
with harbour.
+ Added support for HB_QTPATH, HB_QTPOSTFIX envvars. This is
now the recommended way to override QT tools autodetection.
Kept HB_QT_MOC_BIN for compatibility. Deprecated.
(just added support for HB_QT_UIC_BIN, HB_QT_RCC_BIN removed)
- Deleted hardcoded hack to look for '-qt4' postfix when looking
for QT tools. Now it's QT version agnostic. Use HB_QTPOSTFIX instead.
! Fixed deleting temp .uic file in stdalone mode.
+ Added -w3 pragma.
* contrib/hbide/ideactions.prg
- Removed: "Insert Randome Name" option in <Edit><Insert>.
Actually inserting any text can be accomplished through macros.
* contrib/hbide/idesources.prg
% Fixed: "Save all sources" option of <File> menu. A fatal one.
Thanks to Reinaldo for reporting.
* contrib/hbxbp/xbpbrowse.prg
! Some more tweaking in event handelling.
* contrib/hbide/idebrowse.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/ideeditor.prg
+ Prepared: to honor multiple panels to host views of ideDBU
sessions plus arranged to host a tree-view at the left
if there will be a need in the future.
+ Added: toolbar to ideDBU interface with ounly one button
<Open> to add a table to the view. Now table open dialog
is not presented at the time of invocation.
+ Improved: ideDBU view to take care of available
space more intelligently.
* utils/hbmk2/hbmk2.prg
+ Will now defined macro __HBSCRIPT__HBMK for all scripts
executed in source form.
* utils/hbrun/hbrun.prg
+ Will now defined macro __HBSCRIPT__HBRUN for all scripts
executed in source form.
* contrib/hbqt/hbmk2_plugin_qt.prg
+ Will now act as a stdalone uic to prg converter tool if
invoked via hbrun (or anything other than hbmk2). This is
useful for testing this conversion process easily.
* Variable rename.
- contrib/hbqt/utils
- Deleted hbqtui stdalone tool.
* contrib/makefile.prg
+ Updated TODOs
* contrib/hbide/ideharbourhelp.prg
* contrib/hbide/idehome.prg
+ Changed to use embedded .png resources in html pages.
; /resources dir isn't required now to run hbide.
* contrib/hbide/ideskeletons.prg
! Fixed to use embedded UI resource.
* contrib/hbide/ideplugins.prg
+ Added support for .hbs extension (handled similarly as .prg).
The logic is very fuzzy here, it could be greatly simplified
like it is in hbrun or hbmk2. I don't understand why hbide
is trying to guess the filename, shouldn't it be the basic
input parameter? or even better the result of a DIRECTORY()
scan, as we've discussed?
* contrib/hbide/plugins/savebackup.prg
- Deleted .ch header reference to make it work as source
code plugin.
- contrib/hbide/plugins/savebackup.hrb
- Delete prebuilt .hrb. It's better to use the source version
by default.
* contrib/hbide/hbide.env
! Fixed all entries. Synced with INSTALL and other required changes
to work with current Harbour. Deleted unnecessary forced platform,
compiler values, deleted unnecessary, wrong and misleading version
informations. Deleted left padding spaces from section headers.
* utils/hbmk2/hbmk2.prg
+ Separated package dependency by key header autodetection logic
from header dependency parsing logic. This way the code is
cleaner and it has the added benefit that dependencies
will be detected even without actual source code using the
key headers. This f.e. makes it possible to pull dependencies
for autogenerated code (such example can be found in hbide
where generated .cpp depends on qt).
Another benefit is that pkg detection by header will also
work in non incremental mode or forcefully disabled header
parsing option, it also causes better header parsing
performance.
* contrib/hbqt/hbqt_common.hbm
- contrib/hbqt/hbmk2_plugin_moc.prg
* contrib/hbqt/hbmk2_plugin_qt.prg
+ Merged moc plugin into qt plugin. This way some of the
common code and logic is now integrated, forming a common
hbmk2 plugin for all QT purposes.
% Merged common code.
* Some internal renames.
* Further changes regarding proper -clean behavior.
* contrib/hbide/hbide.prg
* contrib/hbide/ideprojmanager.prg
- contrib/hbide/resources/hbide.env
+ contrib/hbide/hbide.env
* Moved hbide.env to hbide root.
; TODO: It remains to be solved that hbide.env be searched
at the same locations as as hbide.ini. It would be even better
if hbide.env could use more standard .ini layout and be simply
merged into hbide.ini.
Pritpal, could you check this issue?
* INSTALL
+ Added HB_QT_RCC_BIN
; TODO: Change these envvars to HB_QTPOSTFIX and HB_QTPATH.
* contrib/hbqt/hbqt.hbc
- contrib/hbqt/hbmk2_plugin_ui.prg
+ contrib/hbqt/hbmk2_plugin_qt.prg
* Renamed. This plugin now handles .qrc files too.
+ Added support to compile .qrc files into final executables.
This uses 'rcc' QT tool and since this one generates a .cpp
file, the build process will require QT headers.
; TODO: If possible, create QRC .cpp to .prg converter to
remove this dependency. Pritpal, do you think it's
possible?
+ contrib/hbide/hbide.qrc
+ Added QRC file with all the .png files in resources dir.
* contrib/hbide/hbide.hbp
+ Added QT detection. I'm not so secrectly hoping someone will
create a qrc .cpp to .prg converter so we can drop this
dependency.
* contrib/hbide/idemisc.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/hbide.prg
* Changed to pick resource .png files from internal resource
except external files. This means that /resources dir doesn't
need to be distributed along hbide executable, IOW hbide
executable is now self-contained (except a few exceptions like
hbide.env, plus the fact the internal html pages make references
to these external files, too.)
- Deleted some unnecessary trash from source.
; TOFIX: hbide.env should reside in same place as hbide.ini.
Pritpal could you check it?
; TOFIX: hbide internal html pages make reference to .png files
on disk.
* INSTALL
+ Added HB_QT_UIC_BIN.
* utils/hbmk2/hbmk2.prg
! Fixed to call 'pre_prg' plugin state from a better
position, so that it works in incremental mode.
* contrib/hbqt/hbmk2_plugin_ui.prg
* Variable name cleanup.
* Marked parameters passed by reference.
* contrib/Makefile
* Finalizing GNU Make -> hbmk2 job transfer.
* contrib/makefile.prg
* Finalizing clean/install/make job control.
* contrib/hbide/hbide.hbp
+ Use explicit .ui input file list instead of using wildcards.
* contrib/hbide/setup.ui
! Fixed mixed-case hbide.ini filename on UI.
! Fixed .exe extension (and mixed case) on UI.
* contrib/hbxbp/xbpbrowse.prg
% Rearrangement of code. Was calculating rows console based.
* contrib/hbide/idedocks.prg
% Minor.
* contrib/hbide/idebrowse.prg
+ Implemented: browse and corresponding form view of a table,
wrapped inside splitters.
Multiple tables are presented in vertical splitters
and form view is presented in horizontal splitter.
; NOTE: still work in progress. But proof of concept is
already working.
* contrib/hbqt/hbmk2_plugin_ui.prg
* Further cleanup.
+ Added detailed error messages for remaining (rare) error cases.
* contrib/hbqt/hbmk2_plugin_ui.prg
* contrib/hbqt/hbmk2_plugin_moc.prg
* Minor cleanup to use hb_StrFormat() in two more places.
* contrib/makefile.prg
- Deleted reference to hbqtui.
* contrib/hbqt/hbmk2_plugin_ui.prg
% Deleted unnecessary parantheses
% Using FOR EACH.
% Minor optimizations
! Variables renamed to not use one-letter variable names
and ones ending with underscore.
* contrib/hbqt/hbmk2_plugin_ui.prg
+ Rewritten to look for uic tool. Using same rules as
moc. Marco is silent so I'm not sure about some of the
rules, anyway I hope someone will review it, until then
it won't cause any harm.
+ Merged hbqtui functionality. The code has been formatted,
some logic cleaned. Made all the changes that were needed
in order to include the code in a hbmk2 plugin.
hbqtui is not needed anymore.
; TODO: Use hb_regexAll() instead of hb_regex() if possible.
* contrib/hbqt/hbmk2_plugin_moc.prg
* Minor cleanup in error messages.
* utils/hbmk2/hbmk2.prg
* Added HB_REGEX() to the executable until it's cleaned away from
ui plugin.
* contrib/hbqt/qtwebkit/hbqtwebkit.hbp
* contrib/hbqt/qtdesigner/hbqtdesigner.hbp
+ Enabled moc tool for future .hpp files.
* contrib/hbqt/utils/hbqtui.prg
* contrib/hbqt/utils/hbqtui.hbp
- Deleted hbqt.ch requirement.
For some strange reason (which turned out to be copy/paste
programming from THbQtUI() class) the converter also did
some PP job, which created the unnecessary dependency to
hbqt.ch.
* Cleanups. Note the code is so hacky that it would take
many days to clean it up. I might have broken stuff,
you touch something and something else breaks on a
completely different area.
- Commented maintaining a duplicate of hbqt.ch constants.
% Deleted OOP style coding. It was not necessary and quite
half-baked anyway.
* Changed to use ui_ prefix and std .prg extension
instead of .uip.
; TOFIX: The generator creates reference to function named
Q__TR() which turned out to be part of HBQT.
What is this function?
* contrib/hbqt/hbmk2_plugin_ui.prg
* Changed to use ui_ prefix and std .prg extension
instead of .uip.
- external/minizip/readme.txt
- Deleted. Most information was obsolete and now update
is automatic.
- contrib/hbide/resources/hbmk2_plugin_ui.prg
+ contrib/hbqt/hbmk2_plugin_ui.prg
+ Moved this hbmk2 plugin to its proper place inside
hbqt. It's QT specific functionality.
* contrib/hbide/hbide.hbp
* contrib/hbqt/hbqt.hbc
* contrib/hbqt/hbqts.hbc
* Changed to follow above plugin location change.
* contrib/hbide/ideprojmanager.prg
- Commented ui plugin from hbide. It's needs to be solved
differently. ui plugin is QT specific so it cannot be
inside hbide tree.
* config/postinst.prg
+ Some more feedback.
! Slight correction to another feedback.
* harbour/include/hbcom.ch
* harbour/rtl/hbcom.c
* implemented new error code HB_COM_ALREADYOPEN in hb_comOpen()
* harbour/contrib/hbct/ctcom1.c
* changed COM_OPEN() behaviour to be compatible with HBCOM API
and original CT behaviour
* external/patchup.prg
* Changed gtcgi force option to be the more portable-style one.
* contrib/hbqt/utils/hbqtui.prg
+ Added error message
; TOFIX: This tool needs serious ruggedizing to be ready for
production environment. It just fails to give _any_
on screen feedback about what's happening, or what
fails. This means that the caller will fail in various
ways depending on how hbqtui failed. It also doesn't
return anything via errorlevel. Pritpal can you look
at it?
* contrib/Makefile
* contrib/makefile.prg
+ Added experimental call out from GNU Make to Harbour
contrib make orchestrator script.
* contrib/hbide/hbide.hbp
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
+ contrib/hbide/idebrowse.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/ideobject.prg
* contrib/hbxbp/xbpbrowse.prg
+ Implemented: database tables manager ( dbu ).
A work-in-progress but you can have a feel of it.
1. "View"->"Browser Widget"->Select a Table.
2. Hide the widget and repeat process 1, select another table.
3. The widget will now contain both browsers.
NOTE: many surprises may be there, just bear with me,
it is a quick commit. Refinements are scheduled for
this whole week.
* contrib/hbide/toolsutilities.ui
+ Added "Plugin" "Init at startup" slots.
* contrib/hbqt/hbqt_hbslots.cpp
+ Deactivated: one tracelog entry.
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/ideedit.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideplugins.prg
* contrib/hbide/ideprojmanager.prg
* contrib/hbide/idethemes.prg
* contrib/hbide/idetools.prg
% Fixed: docking widgets had stopped to be resizable.
+ Enhanced: plugins are now supported in .prg format also.
+ REQUESTed all hbQT and hbXBP classes for scripts to be
completely functional.
+ Added: "Plugins" combo-box and "Init at startup" checkbox in
"Tools & Utilities" dialog below to "Command Line Parameters".
If "Init at startup" checkbox is checked then this plugin
is initialized at startup. Such defined plugins can be placed
on user-defined toolbars and can be executed directly from
there.
"Parameters" editbox can hold the parameters passed to the plugin.
The format of such parameters is like command line but with one
difference that string parameter are enclosed in double quotes and
separated by spaces. For example: "open" 100 100 700 500.
+ Initialized: plugins at the startup which are flagged as such
through "Tools & Utilities" interface. It facilitate to hook
user defined parameters, object tweakings, etc at the startup.
For example, user can setup compiler and or build environment
with hb_setEnv() functions.
+ Top-Toolbar icon "Run as Script". This option allow you to run
source of current editing instance as a script. It is especially
handy to debug isolated dialogs etc on the fly. Below is an
example to test a dialog:
FUNCTION Main()
LOCAL oDlg
LOCAL nT := 10, nL := 10, nW := 300, nH := 200
oDlg := QDialog():new()
oDlg:move( nT, nL )
oDlg:resize( nW, nH )
oDlg:exec()
RETURN NIL
NOTE: no preprocessor is available, so all variable must be self contained.
Preceived, thoughtof, tested, by Antonio Linares, thanks.
* contrib/hbqt/qtwebkit/hbqtwebkit.hbp
+ contrib/hbqt/qtwebkit/hbqtwebkits.hbp
* contrib/hbqt/qtdesigner/hbqtdesigner.hbp
+ contrib/hbqt/qtdesigner/hbqtdesigners.hbp
+ Added working hbmk2 make files, also for Windows static mode.
(BTW, basically a simple copy of existing qt ones)
* utils/hbmk2/hbmk2.prg
* config/postinst.prg
+ Changed the way default .hbc search paths are setup. Now
instead of being speficied by hbmk.cfg, they are hard-coded
into hbmk2: contrib, addons. This makes these
search paths work even whithout 'install' build phase.
Pls note that 'examples' fell out of the std search path list.
- hbmk2 will _no longer_ automatically process .hbc files in
current directory. This concept was causing more trouble
than good, as it turned out. Also removed -nohbc option,
which has now lost its meaning.
; TODO: Rename hbmk.cfg to hbmk.hbc to have a standard
extension.
; TODO: To solve the search path issue on *nix dir structures.
Currently the search paths are:
bin/../contrib/, bin/../addons/
; TODO: Delete -nohbc options from all hbmk2 project files.
; TODO: Delete paths from .hbc references (possibly after
solving the *nix search path arrangement issue)
* package/winuni/mpkg_win_uni_extra_copy.bat
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* Renamed hbrun-x64-dll.exe -> hbrun-dll-x64.exe
* examples/rddado/rddado.hbc
! Fixed .hbc reference path. Thanks to Itamar for reporting it.
* package/winuni/mpkg_win_uni_extra_copy.bat
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* package/winuni/mpkg_win_uni.bat
* utils/hbformat/Makefile
* utils/hbi18n/Makefile
* utils/hbtest/Makefile
* config/postinst.prg
* Forcing shared build for hbformat, hbi18n and hbtest.
Simply to save binary sizes on all platforms.
* Disabled extra shared (-dll) version for hbformat, hbi18 and hbtest
because this is now the default mode for these.
* Disabled extra shared (-dll) version for hbmk2.
* Changed distro to always include hbrun x64 shared build, too.
; To sum it up: hbformat, hbi18n, hbtest will now have shared exes
generated and distributed, for hbmk2 only static one, and for hbrun
both. This simplifies build and install, and fully syncs x64 tools
distributed, with 32-bit ones.
* utils/hbrun/Makefile
* utils/hbrun/hbrun.hbp
+ Enabled MT mode for hbrun. Not required, but it's a good way to
start off with experimenting. It could be useful for scripts, too.
* contrib/hbcups/Makefile
* contrib/hbcups/hbcups.hbp
- Disabled for win, wce, dos. It's actually support by
win/mingw and win/cygwin, but it's not very useful plus
enabling it causes much more trouble than benefit at
this point.
* contrib/makefile.prg
* Install .dlls to bin dir.
* contrib/hbide/ideprojmanager.prg
* contrib/hbide/hbide.hbp
- contrib/hbide/resources/hbmk2_plugin_uip.prg
+ contrib/hbide/resources/hbmk2_plugin_ui.prg
* Renamed for consistency.
* contrib/hbide/resources/hbmk2_plugin_ui.prg
* contrib/hbqt/hbmk2_plugin_moc.prg
* Minor cleanup.
* include/hbapicom.h
! Fixed missing HB_EXTERN_BEGIN/END
+ Added HB_EXTERN
* external/patchup.prg
; Patch and log text by Tamas Tevesz:
+ don't let first `map' source be non-flat (would break
tree top search)
+ on errors, also cite line numbers for easier makefile debugging
+ check and enforce destination files to fit in the 8+3 naming
scheme
+ document (mis)features of, and requirements for `URL' + small
clarifications