* harbour/utils/hbmk2/hbmk2.prg
* harbour/config/win/bcc.mk
+ added support for BCC6.5 - please verify me.
; unicows library does not support BCC 6.5. BCC users who want
to compile Harbour should delete harbour/lib/3rd/win/bcc directory.
TODO: add build time option to disable unicows in windows harbour
builds
+ contrib/hbqt/tests/qtwvg.hbp
+ contrib/hbqt/tests/qtwvg.prg
+ Added: demonstration code to exploit the power of Qt with existing
GTWVT/GTWVG based applications. This demo opens a HbQt dialog
from where n number of GTWVG dialogs can be opened. This protocol
requires that your applications are MT based, at least for the
main application window to appear. Examine the code and adopt it
to your own advantage. This protocol opens up a vast horizon
for our console applications, believe me.
* harbour/config/dos/watcom.mk
* harbour/utils/hbmk2/hbmk2.prg
! cleaned and synced optimization flags which interacts with calling
convention
* harbour/src/3rd/zlib/zconf.h
! added missing export attribute in OS2 dll builds
* harbour/src/3rd/zlib/zlib.dif
* rediffed
* harbour/src/compiler/hbmain.c
* minor modification to pacify warning generated by some compilers
* harbour/src/rtl/gete.c
! added missing #include "hbapicdp.h" in DOS and OS2 builds
* harbour/src/rtl/gtdos/gtdos.c
! fixed typo
* harbour/contrib/3rd/sqlite3/sqlite3.hbp
! set SQLITE_OS_OTHER in Watcom OS2 builds - it does not support
PTHREAD and some OS extensions used in default SQLite builds
* harbour/src/rdd/workarea.c
! set FOUND flag in child workareas when non index but
record number relation is used - Clipper compatible behavior.
Many thanks to Davor Siklic for information about the problem
and self contain code example.
* contrib/gtwvg/crt.prg
! A Nasty Fix. Was not releasing children snd hence the memory.
* contrib/hbide/actions.prg
* contrib/hbide/docks.prg
+ Added: separate toolbar for "Files" actions.
- extras/hbapollo
- deleted. Too much effort and size for nothing, it was
untested, and strictly Windows-only for a dying product.
RDDADS is superior replacement.
* contrib/3rd/sqlite3/sqlite3.*
* contrib/3rd/sqlite3/sqlite3.hbp
* update to 3.7.14
* contrib/hbide/projectwizard.prg
! referring to .hbc files as '.hbc files' not 'Hbc files'
; TOFIX: this source is a total mess, replicating parts of
hbmk2 options in a rigid and limited, fully incompatible
with hbmk2, whilst hbmk2 supports these out of the box.
It also contains references to an arbitrary selection of
non-Harbour SVN project and payware products. Even after
reporting it on the list and received the answer that
it will get a meaning later. Well, it didn't.
* contrib/hbide/actions.prg
* contrib/hbide/docks.prg
* contrib/hbide/edit.prg
* contrib/hbide/editor.prg
* contrib/hbide/hbqtoolbar.prg
* contrib/hbide/main.prg
* contrib/hbide/misc.prg
* contrib/hbide/object.prg
* contrib/hbide/saveload.prg
% Normailization of code parts. Toolbars management transferred
from different sources to actions.prg.
+ Implemented: two more toolbars separating actions from main
into logical chunks. This facilitates better management and
placement of toolbars by user choice. Now these are the
available toolbars:
Main
Ide Parts
Ide Project
Docking Widgets
% Changed: dimensions of the toolbar icons. ow all toolbars have
the same height/width of icons and are made sleak to give
professional look.
* contrib/hbide/saveload.prg
% Changed: the behavior of active item in dictionaries list.
Now it is the most recent visited or first if first time.
Pointed out by Maurizio.
* contrib/hbqt/qtgui/hbqt_hbqplaintextedit.cpp
+ Implemented: auto activation of column-selection mode if
selction is made with mouse with ALT key is kept pressed.
A request by Maurizio, which btw, seems to be logical.
* contrib/hbide/editor.prg
* contrib/hbide/misc.prg
* contrib/hbide/saveload.prg
* contrib/hbide/setup.ui
% Changed: naming of <Setup><Font> => <Miscellaneous>
% Restored: the source extension on the editor tabs by default.
+ Implemented: to toggle source extension to be removed from
source tabs to get more sources viewable at any given time.
Activation: <Setup><HbIDE Setup><Miscellaneous><Remove File Extension>
This is not in-place activable, restart of HbIDE is required.
+ Implemented: source tabs having closable button.
Activation: <Setup><HbIDE Setup><Miscellaneous><Add Closing Button>
This is not in-place activable, restart of HbIDE is required.
This is not the default, needs to be activated.
* contrib/hbide/main.prg
* contrib/hbxbp/listbox.prg
% Changed: XbpListBox():addItem( cItem, qIcon ) => :addItem( cItem )
to confirm to Xbase++ calling arguments.
+ Added: XbpListBox():setIcon( nIndex, oIcon ) to attach image
to a listbox item. This is Harbour extension and is documented
in the sources.
* contrib/hbide/editor.prg
* contrib/hbide/main.prg
* contrib/hbide/sources.prg
! Fixed: bug in Opening a source from main menu where the source
was being distributed on another panel (untitled) which should
not have happened. Reported by Francessco Perillo, thanks.
* harbour/src/rtl/chruni.c
* harbour/include/harbour.hbx
+ added new functions to operate on unicode and binary strings.
They work like hb_At() but are CP independent.
hb_UAt( <cSubString>, <cString>, [<nFrom>], [<nTo>] ) -> <nAt>
hb_BAt( <cSubString>, <cString>, [<nFrom>], [<nTo>] ) -> <nAt>
* contrib/hbide/functions.prg
* contrib/hbide/uisrcmanager.prg
! Fixed: QBrush, a non-QOject derived object was being applied
:setObjectName() method. There may be few more, but will
will be implemented if those are actually used under
Qt Designer properties.
* contrib/hbide/browse.prg
* contrib/hbide/docks.prg
* contrib/hbide/hbide.ch
* contrib/hbide/hbide.hbp
* contrib/hbide/hbqreportsmanager.prg
* contrib/hbide/main.prg
* contrib/hbide/object.prg
+ contrib/hbide/parts.prg
+ Separated: the code to manage IdePARTS effectively and efficiently,
in anticipation that many more extensions will be added in future
and also some existing components qualifies to fall under the
domain of this protocol.
* contrib/hbide/browse.prg
% Changed: IdeDBU will be available both ways, new implemented
or previous one. Switching one mode to another will switch
the parenting too. This has rendered IdeDBU versatile, really!!!
* contrib/hbide/resources/browser.png
% Replaced with new image.
+ contrib/hbide/resources/editor.png
+ Added: new image
* contrib/hbide/hbide.qrc
* contrib/hbide/actions.prg
* contrib/hbide/browse.prg
* contrib/hbide/docks.prg
* contrib/hbide/main.prg
+ Implemented: future ready stacked widget as central widget of
main window. For now IdeDBU is transferred to one of the stacks.
If preferred by the user, he/she can continue to work as
current. Two button on main toolbar are added. One for IdeDBU
and another for IdeEDITOR. The functionality is as such:
1. Click on the IdeDBU icon on the main toolbar.
2. Editing interface will hide and DBU will appear occupying
all of the HbIDE's real-estate.
3. Status-bar will disappear.
4. Once activated, IdeDBU will not show up in right-side
docking area. If not activated via IdeDBU icon, IdeDBU
can be used as before.
5. Clicking on the IdeEDITOR icon, editing interface will be
restored and status-bar will show-up again.
This implementation makes HbIDE future ready in the sense that
application real-estate will never be a problem, and hence, a
lot of diversified actions can be brought into play.
I am interested in groups views as which other parts can be
brought to this new implementation, existing as well as futuristic.
* contrib/hbqt/qtgui/hbqt_hbqplaintextedit.cpp
! Done: pairing of #ifdef|#if - #endif.
With this commit pair highlighting is complete until someone
points to which escaped my knowledge.
* contrib/hbide/console.prg
! Fixed: at some unknown states Console UI Designer was GPFing.
This seems to be the two event loops clashing somewhere.
Jope it should behave properly now.
* contrib/hbxbp/window.prg
* Activated: QEvent_Resize signal be manipulated per Xbase++ docs.
* contrib/hbxbp/dialog.prg
! Fixed: the way a XbpDialog() was assigned :drawingArea()
(a.k.a. centralWidget()) via a .ui file.
+ contrib/hbide/resources/dictionary.png
+ contrib/hbide/resources/launch_r.png
* contrib/hbide/hbide.qrc
* contrib/hbide/actions.prg
* contrib/hbide/functions.prg
* contrib/hbide/main.prg
+ Implemented: creation of .tag file usable as a dictionary.
The activation is :
<Project Tree><Projact Name><Right-Click><Create .tag Dictionary>
Dictionary will be created in same folder where .hbp resides
having same name with extention .tag. Thus created tags are not
populated in the existing list of tags.
* contrib/hbide/docks.prg
* Changed: placement of Selected-text toolbar in stream-selection-mode
to position itself on one line above the current selected row if
selection is performed bottom-up. For bottom-down process, position
is at one line below the current row.
* contrib/hbide/hbide.qrc
+ contrib/hbide/resources/stringify.png
* contrib/hbide/docks.prg
* contrib/hbide/edit.prg
* contrib/hbide/editor.prg
+ Implementd: Stringify a selection.
The activation is via "Stringify" icon ( added new ) next to
"Double to Single Quotes" icon on editing-instance top toolbar
or Selected-text toolbar.
The behavior:
Column-selection Mode :
Simply Superb
Anyway Excellent
Left Blanks
Starts Here and Ends Longer
=>
"Simply Superb"
"Anyway Excellent"
" Left Blanks"
"Starts Here and Ends Longer"
Stream-selection Mode:
Multi-line - No quotes
Single-line|word - no trimming at the right.
This is a Long text and a part will be Selected.
^^^^^ - Selection
>
This is a "Long "text and a part will be Selected.
* contrib/hbide/dict.prg
* contrib/hbide/functions.prg
* contrib/hbide/saveload.prg
+ Added: to load HbIDE created {project_name}.tag files
for "Dictionaries" implementation.The options earlier were
.hbx, .dic, .txt. It will save you a lot of time to create
disctionaries manually.
* contrib/hbqt/qtgui/hbqt_init.cpp
! Fixed: QTableWidgetItem => QTableWidgetItem*
Was breaking QTableWidget() signals which used QTableWidgetItem* argument.
* contrib/hbide/main.prg
% Changed: the theme for the code fregment editors.
! Fixed: a small glich where only first window-full of source
was being highlighted.
* contrib/hbide/editor.prg
* contrib/hbide/main.prg
+ Implemented: display of code fragment of an identifier
in a separate window. This small display editor is powered
with syntax highliting, opens new window 10/20 pixels away
in x/y coordinates with same window size of the last opened.
There is no limit to the open windows. These windows have
Qt_Sheet attribute set, so will always remain floated
on top of the main window.
To activate:
1. Bring into display <Functions List> docking window.
2. Right-click on the identifier the display is sought.
3. From the context menu, select <Show Code Fragment>.
4. Adjust the position and size of the window.
5. Next window will open 10/20 pixels away from this window.
This is a productivity tool. At times we need reference from
other functions and switch forth and back in the editing instances.
With this feature you can keep frequently referenced identifier,
i.e., function/method/class/procedure within viweing without
leaving the current editing instance.
* harbour/src/rtl/fstemp.c
! added yet another protection against buffer overflow
% eliminated redundant code
* harbour/include/hbvmpub.h
* harbour/include/hberrors.h
* harbour/src/compiler/hbgenerr.c
* harbour/src/compiler/hbmain.c
* harbour/src/compiler/genc.c
+ added new warning message:
STATIC Function '????' defined but never used
It's enabled by -w2 and higher.
The idea was inspired by recent modification in xHarbour but
implementation is completely different. BTW I cannot even make
this warning working in xHarbour.
* harbour/src/rtl/cdpdet.prg
! disabled static functions which are unused in different builds
* harbour/src/debug/debugger.prg
! removed unused function StripUntil()
* harbour/utils/hbmk2/hbmk2.prg
! compile hbmk_COMP_Setup() and FindInSamePath() static functions
only for platforms were they are used
! commented out unused static functions: ArrayJoinNoClone(),
AAddNewAtTop(), DepTreeToList()
! commented out unused static functions:
rtlnk_libtrans(), rtlnk_filetrans()
Looks that this functionality is not longer supported.
TOFIX: re-enable it or remove this code and document that automatic
translation for libraries and files defined in Clipper .lank
files is not longer supported~.
* harbour/src/rdd/usrrdd/rdds/arrayrdd.prg
* harbour/contrib/hbtip/cgi.prg
* harbour/contrib/hbide/hbqreportsmanager.prg
* harbour/contrib/hbide/actions.prg
* harbour/contrib/hbide/console.prg
* harbour/contrib/hbide/themes.prg
* harbour/contrib/hbide/editor.prg
* harbour/contrib/hbxbp/browse.prg
* harbour/contrib/hbmysql/tmysql.prg
* harbour/contrib/hbsms/sms.prg
* harbour/contrib/xhb/hterrsys.prg
! commented out unused static functions - please review the code
; Warning: I tested only Linux builds. Please check other builds and
disable unused static functions in the rest of code.
* harbour/src/rtl/fstemp.c
! added protection against possible buffer overflow
* enable mkstemps() for GLIBC 2.12 and higher
* harbour/src/compiler/harbour.y
! added missing ';' at the end of C code - newer bisons
do not add them automatically
* contrib/hbxbp/listbox.prg
+ Extended: method :addItem( cText, qImage ) in XbpListBox() class.
This is Harbour extension, Xbase++ does not accepts <qImage>.
+ contrib/hbide/resources/dc_class.png
+ contrib/hbide/resources/dc_method.png
+ contrib/hbide/resources/dc_procedure.png
* contrib/hbide/docks.prg
* contrib/hbide/editor.prg
* contrib/hbide/hbide.qrc
* contrib/hbide/main.prg
* contrib/hbide/misc.prg
* contrib/hbide/tags.prg
+ Added: icons to represent the type of identifier in <Functions List>.
The following four types are considered:
1. Class 2. Method 3. Procedure 4. Function
STATIC FUNCTION/PROCEDURE is considered normal FUNCTION/PROCEDURE.