* src/rtl/cdpdet.prg
! *nix specific CP autodetection code missed to call
a local conversion subfunction.
* src/rtl/gtfunc.c
* HB_SETDISPCP(), HB_SETTERMCP(), HB_SETKEYCP() will
now not RTE when passed NIL as 1st paramater. This
makes it smoother to fall-back on purposedly invalid
values, f.e. return values of new HB_CDPOS() and
HB_CDPTERM() in case of failure.
* contrib/hblzf/tests/test2.prg
+ replaced in-source hbmk2 cmdline instructions with
#require directive
* contrib/gtwvg/tests/wvgactivex.prg
! fixed reference to non-existing batch file
* doc/en/file.txt
* doc/gmake.txt
* doc/windll.txt
* examples/gtwvw/docs/gtwvw.txt
* examples/gtwvw/docs/whatsnew.txt
* examples/gtwvw/tests/drawimg.prg
* examples/guestbk/guestbk.txt
* examples/hscript/readme.txt
- deleted references to non-existing/obsolete batch files
* contrib/gtwvg/wvgwin.c
+ Added: WVG_SetMenuItem( hMenu, nPos, nFlags, cPrompt|oSubMenu, lPrompt ).
* contrib/gtwvg/wvgmenub.prg
+ Implemented: ::setItem( nItemIndex, aItem )
* contrib/gtwvg/tests/demowvg.prg
+ Demonstrated: how to change the text of an existing menu prompt.
* contrib/gtwvg/wvgax.prg
* contrib/gtwvg/wvgcheck.prg
* contrib/gtwvg/wvgdarea.prg
* contrib/gtwvg/wvglistb.prg
* contrib/gtwvg/wvgpushb.prg
* contrib/gtwvg/wvgscrlb.prg
* contrib/gtwvg/wvgsle.prg
* contrib/gtwvg/wvgwin.c
* contrib/gtwvg/wvtwin.ch
+ Implemented: ::pointerFocus for WvgPushButton() and WvgCheckBox().
This facilitates not to keep focus on push buttons after click.
! Fixed: focussing issues for WvgScrollBar() objects.
+ Implemented: WvgActiveXControl() for CUI hosting.
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/wvgtbrowser.prg
+ Reworked: The browser demonstration now holds Shell.Explorer.2
active-x control to navigate the web. Just click on "Active-X"
check box.
! Fixed: navigation glitch when another control was activated
while the current focus has been on another GUI control.
NOTE: this implementation is now production ready, take use of it.
* contrib/gtwvg/wvggenrc.prg
* contrib/gtwvg/wvglistb.prg
* contrib/gtwvg/wvgphdlr.prg
* contrib/gtwvg/wvgsle.prg
* contrib/gtwvg/wvgwnd.prg
* Changed: SetAppWindow() => WvgSetAppWindow()
To facilitate simultaneous use of GTWVG with HBXBP.
* Fixed: the way an indivisual child was being destroyed.
It was causing flicker and GUI loss when clicking
inside a control. Thanks Zoran for pointer and code example.
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/wvgtbrowser.prg
* Refined: to accomodate above issues.
* contrib/gtwvg/tests/wvgtbrowser.prg
+ Extended: the way to anchor tree-view control's row-to to
maxrow()-1. This facilitattes that the control is automatically
resized keeping height adjusted to tbrowse's nBottom.
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/wvgtoolb.prg
* contrib/gtwvg/wvgtreev.prg
* contrib/gtwvg/wvgwin.c
! Fixed: some focussing issues.
For controls spread over GT console it is important to
set the input focus onto console window instead of child
window to execute defined action.
* contrib/gtwvg/tests/wvgtbrowser.prg
! Minor.
* contrib/gtwvg/gtwvg.hbp
+ Added: wvggenrc.prg
* contrib/gtwvg/gtwvg.h
+ Added: structure member - PHB_ITEM pNotifierGUI
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/wvgwin.c
* contrib/gtwvg/wvgwing.c
* contrib/gtwvg/hbgtwvg.ch
+ Added: event notification - HB_GTE_ANY
* contrib/gtwvg/wvg3stat.prg
* contrib/gtwvg/wvgax.prg
* contrib/gtwvg/wvgcheck.prg
* contrib/gtwvg/wvgclass.prg
* contrib/gtwvg/wvgcombo.prg
* contrib/gtwvg/wvgcrt.prg
* contrib/gtwvg/wvgcuig.c
* contrib/gtwvg/wvgdarea.prg
* contrib/gtwvg/wvgdatar.prg
* contrib/gtwvg/wvgdlg.prg
+ contrib/gtwvg/wvggenrc.prg
+ Implemented: Xbase++ compliant SetAppWindow() function.
The function simulates a WvgCRT() window from current
thread specific GT console if the function is called
without parameters and current thread has not posted
any application window. This facilitates hosting
WVG*Gui controls on pure GT invoked console.
* contrib/gtwvg/wvghtmlv.prg
* contrib/gtwvg/wvglistb.prg
* contrib/gtwvg/wvgmenub.prg
* contrib/gtwvg/wvgmle.prg
* contrib/gtwvg/wvgpaint.prg
+ Added: WVT_GetRGBColorByString( cClipperColorString, nForeBack )
Retrieves RGB color given the clipper color string from
active GT palette:
WVT_GetRGBColorByString( "W+/GR", 0 ) => nRGBForeColor
WVT_GetRGBColorByString( "W+/GR", 1 ) => nRGBBackColor
* contrib/gtwvg/wvgphdlr.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/wvgtoolb.prg
* contrib/gtwvg/wvgtreev.prg
* contrib/gtwvg/wvgwnd.prg
+ Restructured: GTWVG at GUI space.
Xbase++ compatible controls can be hosted on CUI console.
The only requirement is that the parent of such GUI
controls is an object created with WvgCRT(). If there
is no object of type WvgCRT() is in sight, in case of a
pure GT invoked console, a WvgCRT() object is created and
current console window handle is assigned to it. This is
achieved through SetAppWindow() function which is called
if a control's parent is supplied as NIL, in accordance
with Xbase++ documentation.
The events assigned and executed by such controls are not
posted to inkey() processing, instead, are executed directly.
Just before executing an assigned event, focus is imposed
on GT console and returned to GUI control after processing
the execution. This ensures that GT is always in focus while
GUI control executes an assignment.
+ Introduced: In accordance with console coordinate system, the
positioning and size parameters supplied at the time of
construction of GUI objects now support
aPos == { nRow, nColumn } and aSize == { nRows, nColumns }
protocol. This has been achieved by supplying all four values
in negative. Thus WVG engine checks for negativity of position
and size values and determines that coordinate system be
interpreted as row/column instead of x/y(s). For example,
WvgPushButton( , , { -10, -2 }, { -3, -10 } )
call will render the push button at 10,2,13,12 console area
in terms of rows and columns. These coordinates will be
maintained with resizing of console, etc.
To extend this coordinate system a step further, the pos
and size arrays can be populated with code blocks evaluating
to a negative numeric value. This implimentation facilitates
to ancor any GUI control to a specific postion always. Thus,
WvgPushButton( , , { {|| -( maxrow()-3 ) }, -2 }, { -10, -3 } )
will always position push button on last row-3 of the console
no matter how many rows the console is resized to.
+ Introduced: oWVG:SetColorFG/BG() now accept clipper color string
and renders the corresponding RGB color of active GT palette.
This facilitates the embedding of GUI controls on Clipper
complaint screen colors. Thus,
oStatic:setColorBG( "GR*" )
will render the background of text label as yellow.
IMPORTANT: The above concepts are on the top of existing ones
so no current functionality is lost.
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/wvgtbrowser.prg
* contrib/gtwvg/tests/wvgutilities.prg
* contrib/gtwvg/tests/wvgxbp.prg
+ Restructured: the code parts to demonstrate newly introduced
GTWVG concepts. Specialy look at main window's menu system,
push buttons at the bottom. Also look at
<Main Menu><Traditional><Browser - GTWVG - Threaded>.
This example is reworked entirely and is a testimony to
GTWVG power.
NOTE: more changes and code shifting and simplifying is
on the drawing board. Hopefully code will get an
an overhaul in coming days.
* contrib/gtwvg/tests/wvgtbrowser.prg
! Reworked: scrollbars of TBrowse. Now these are WvgScrollbar()s
instead of WvtScrollbar()s. WvtScrollbar() are best suited
for WvtCrt() protocol not for WvgCrt() protocol. Now these
are smooth. This concept is pulled from my applications and
slightly adjusted for demowvg.
* contrib/gtwvg/tests/wvgtbrowser.prg
* contrib/gtwvg/tests/wvgutilities.prg
* contrib/gtwvg/wvgclass.prg
+ Implemented: scrollbars used along TbrowseWVG() in demowvg
as requested by Zoran.
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/wvgmodal.prg
* contrib/gtwvg/tests/wvgtbrowser.prg
* contrib/gtwvg/tests/wvgutilities.prg
! Fixed: many artifacts which got broken with GT changes
in a couple of years.
+ Added: a menu option which to execute a modal Harbour Gt
window on top of a GUI window.
+ contrib/gtwvg/tests/demowvg1.prg
+ Added: a highly simplified demo for beginners to understand
the underlying concepts how GUI controls can be exploited
with CUI output. Press F2 which navigaing the GETS.
This demo used GTWVG's inbuilt GUI controls handelling
mechanism instead of devising one's own.
This mechanism was introduced in GTWVG mush later
that demowvg.prg was written. In future I will try to
rewrite the demowvg.prg with in-built protocol.
* package/harbour.spec
* package/harbour-win.spec.in
* package/harbour-wce.spec.in
* include/hbver.h
* config/global.mk
+ Changed version number to:
2.1.0beta3 (from 2.1.0beta2)
* contrib/gtwvg/gtwvg.hbc
! Typo.
* contrib/gtwvg/tests/wvgactivex.prg
* Eliminated WITH OBJECT. Now Harbour doesn't
use this statement except in test code.
* contrib/hbqt/tests/wvtqt.hbp
* contrib/hbxbp/tests/wvtqt.hbp
! Added missing SVN header.
% Cleanup.
* INSTALL
* contrib/hbpost.hbm
* config/global.mk
* Changed HB_BUILD_IMPLIB to HB_INSTALL_IMPLIB to reflect
new meaning after recent changes. With new build system
the implibs are always created in lib working dir, and
this setting only controls whether to copy it to final
install directory. The default is still 'no'. Setting it
to yes is only recommended if the installation will be
used in local environment (3rd party .dlls) only. IOW
never set this to yes when creating a build for other
users (f.e. for distribution).
INCOMPATIBLE if you used this setting, pls change it now.
* INSTALL
+ Documented HB_STATIC_* options.
* contrib/make.hbs
* Updated TODO list.
* src/debug/debugger.prg
* src/rtl/dirscan.prg
* tests/wcecon.prg
* contrib/xhb/traceprg.prg
* contrib/hbqt/tests/wvtqt.hbp
* contrib/hbqt/generator2/hbqtgen2.prg
* contrib/hbxbp/tests/demoxbp.prg
* contrib/hbxbp/tests/dialogqt.prg
* contrib/hbxbp/tests/wvtqt.hbp
* contrib/hbhpdf/tests/harupdf.prg
* contrib/gtwvg/tests/wvgtbrowser.prg
* contrib/gtwvg/tests/wvgwvtclasses.prg
* contrib/hbtip/tests/dbtohtml.prg
* contrib/hbtip/mail.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idetools.prg
* contrib/hbide/idesources.prg
* contrib/hbide/hbide.prg
* examples/uhttpd2/umain.prg
* examples/hbvpdf/tests/pdf_demo.prg
* examples/httpsrv/uhttpd.prg
* examples/httpsrv/cgifunc.prg
* examples/httpsrv/modules/tableservletdb.prg
* examples/httpsrv/session.prg
* HB_OSPATHSEPARATOR() -> HB_PS()
% Delete temp vars along the way.
* utils/hbmk2/hbmk2.prg
+ Generalized internals for support for older Harbour and
xhb versions.
+ Added -hb20 option. (thanks for asking for it so nicely ;)
* 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.
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/wvgcuigdialog.prg
* contrib/gtwvg/tests/wvgtbrowser.prg
* contrib/gtwvg/tests/wvgutilities.prg
* contrib/gtwvg/tests/wvgwvtclasses.prg
* contrib/gtwvg/tests/wvgxbp.prg
! Suffixed remaining resources with hb_dirBase().
* contrib/hbide/hbide.prg
* contrib/hbide/ideenviron.prg
* contrib/hbide/ideprojmanager.prg
! Changed the way hbide.env file is located if not directed to use one.
Before no attempt was made to locate it and user had to assign through
"Compiler Environments" dialog. Now hbIDE looks it alongside hbide.ini,
if one is not assigned, and loads at startup.
* contrib/hbqt/Makefile
* contrib/hbqt/qtgui/Makefile
* contrib/hbqt/qtcore/Makefile
* contrib/hbqt/qtnetwork/Makefile
+ Enabled HB_QT_STATIC for all OSes.
* contrib/hbqt/hbqt.hbc
* contrib/hbqt/hbqts.hbc
- Deleted no more needed special Windows system libs.
* contrib/hbqt/hbqts.hbc
- Deleted webkit libs.
+ Enabled static libs for linux. (they are named the
same as on Windows)
* contrib/gtwvg/tests/demowvg.hbp
! Missing SVN header.
! Missing SVN props.
! Deleted local system specific absolute paths.
TOFIX: HBIDE should make the working (what is it BTW)
and destination folders relative to the location
of .hbp. BTW destination is redundant, since -o
already specifies that.
! Deleted -trace -info. These should be user decisions.
+ contrib/gtwvg/tests/demowvg.hbp
+ Project definition.
+ contrib/gtwvg/tests/wvgactivex.prg
+ contrib/gtwvg/tests/wvgcuigdialog.prg
+ contrib/gtwvg/tests/wvgdyndialogs.prg
+ contrib/gtwvg/tests/wvgmodal.prg
+ contrib/gtwvg/tests/wvgqt.prg
+ contrib/gtwvg/tests/wvgtbrowser.prg
+ contrib/gtwvg/tests/wvgutilities.prg
+ contrib/gtwvg/tests/wvgwvtclasses.prg
+ contrib/gtwvg/tests/wvgxbp.prg
+ Code organized in logical units.
* contrib/gtwvg/tests/demowvg.prg
- Code moved to smaller modular sources as logical units.
This demo was written few years back and then at that point of time
no standradized make system was aavailable which led me to club
everything in one source. Now because we have an excellent hbMK2
in place so this move has been possible.
It is the first in series of reforms pertaining to GTWVG.
More are scheduled to be followed.
* contrib/gtwvg/gtwvg.c
! Fixed the HB_GTI_PALETTE protocol uniform with other GT's.
* contrib/gtwvg/tests/demowvg.prg
! ThreadID() -> Hb_ThreadID()
BTW ThreadID() is a Xbase++ compatible function.
* contrib/gtwvg/tests/demowvg.prg
! Removed all hb_ToOutDebug() calls.
* contrib/gtwvg/tests/demoxbp.prg
! Removed all hb_ToOutDebug() calls.
* contrib/hbide/hbide.prg
! Few more artifacts fixed.
* contrib/xhb/Makefile
! Reverted back to original before my last commit.
* contrib/hbqt/hbqt_misc.prg
* contrib/hbxbp/xbpgeneric.prg
* Synced two similar debug functions after latest change.
% Deleted commented line. gtwvg/hbqt/hbxbp components are
literally full of commented lines, #if 0 parts
and such things. IMO these should be deleted from
final code otherwise it gives the (possibly wrong)
impression that the code is not-mature and in a
temporary development state. Remember that SVN keeps
a copy of every older version of source so in case
it's needed it can always be retreived, so there is no
need to keep old code commented "just in case".
Everyone please keep that in mind.
* contrib/gtwvg/tests/demowvg.prg
! Fixed all warnings which prevented it from being
built.
* src/rtl/hbi18n1.c
! Fixed bcc warning in recent commit.
* contrib/gtwvg/tests/demoxbp.prg
! Fixed to use HB_SYMBOL_UNUSED() instead of local solution.
* contrib/gtwvg/tests/demowvg.prg
+ Added dirbase to icon filenames
* contrib/gtwvg/Makefile
+ Enabled for msvc64 and pocc64.
* contrib/gtwvg/Makefile
* contrib/gtwvg/wvgsysw.prg
* contrib/gtwvg/wvgwing.c
* contrib/gtwvg/wvgwnd.prg
- contrib/gtwvg/wincallb.c
- contrib/gtwvg/wincback.prg
* contrib/gtwvg/tests/demoxbp.prg
! Removed 32 bits only code which made GTWVG unusable on 64 bits
opering systems. I just discoved a way to assign WndProc to
system dialogs and hence this major change is effected.
Viktor, please let me know if GTWVG now compiles fine on 64 bits.
* contrib/hbxbp/tests/demoxbp.prg
* contrib/gtwvg/tests/demowvg.prg
* contrib/hbtip/tests/dbtohtml.prg
! Fix to test.dbf path. hb_DirBase() was missing.
* Changed date format to ANSI.
* contrib/gtwvg/gtwvg.hbc
! Fixed missing incpaths= line.
* contrib/gtwvg/tests/demowvg.prg
- contrib/gtwvg/tests/test.dbf
* contrib/hbtip/tests/dbtohtml.prg
- contrib/hbtip/tests/test.dbf
! Fixed to use central test.dbf instead of duplicating it.