1999-02-09  Matthias Koeppe  <mkoeppe@cs.uni-magdeburg.de>

	* [DOS, Windows] Release 3.0

	* dos/vmem16.asm: Proper version from backup, replaces garbage.

	* The DOS libraries are now covered by GNU LGPL, and the whole
	Graphics Vision is free for individual use. Changed a lot of
	headers.
	
1999-02-08  Matthias Koeppe  <mkoeppe@cs.uni-magdeburg.de>

	* Prepared use of fpc-0.99.10-1 and the current state of Free
	Vision development.

	* Merged `history.gv' and `history.fpk' into this ChangeLog.
	
21-Jul-1998 Matthias Koeppe  <mkoeppe@cs.uni-magdeburg.de>
	
	* Prepared GvFm units and parts of GvStdDlg to work with the
	application-level abstract network redirector (GvRedir unit).

	* TDirListBox (GvStdDlg) now shows sorted lower-case directory
	entries.  This behaviour can be changed in the StdDirListFlags
	variable.

06-Jun-1998 Matthias Koeppe  <mkoeppe@cs.uni-magdeburg.de>

	* [FPC/DJGPP] Using 800x600x256 mode, not maximum supported mode.
	Fixed color system in 256-color modes.

06-May-1998 Matthias Koeppe  <mkoeppe@cs.uni-magdeburg.de>

	* [FPC/Linux] GV now also runs under Linux-based GNU systems.

10-Apr-1998 Matthias Koeppe  <mkoeppe@cs.uni-magdeburg.de>

	* [FPC] Prepared use of FPC 0.99.5. -- The first version of GV for
	Free Pascal dates back to August 1997 (not listed in this
	ChangeLog).
	
18-Mar-1998 Matthias Koeppe  <mkoeppe@cs.uni-magdeburg.de>

	** Graphics Vision now works with Delphi 1.0 (tested with build
	1.02).  Some things remain to fix: FormatStr with %s; a lot of
	`program' headers must be added for all sample programs;

	* Added {$P-,V+} switches in some places (for Delphi).

	* Removed use of identifiers that are reserved words or special
	identifiers in Delphi: `on' (WinGr, WinRes), `class' (WinGr,
	WinRes, GvTable, GvWinDlg, GvRWS, ContClas, GvForm), `Result'
	(GvMenus, KeyNames, GvViews)

	* Conditionally removed use of `Win31' in Delphi (WinGr, GvViews).

	* Conditionally added use of `Messages' in Delphi (WinGr, GvViews,
	GvDialog, GvApp).

	* Added proper `program' headers (Delphi needs them).

15-Mar-1998 <mkoeppe@cs.uni-magdeburg.de>
	
	* Made several TV file-manager units `native GV'. GVFM2 is the new
	graphic file manager demo. Several TVFM gadgets have been thrown
	out.

	* New `GvTag' unit defines abstract tagging of list items; any
	TListViewer descendant can easily link this feature in. This is
	used by the GVFM2.

10-Mar-1998 <mkoeppe@cs.uni-magdeburg.de>

	* Added use of the `sFont' variable in WinGr.

	* Fixed a bug in GvStdDlg, which caused long directory entries
	being cut off in the ChDirDlg.

19-Feb-1998 <mkoeppe@cs.uni-magdeburg.de>

	* Fixed a drawing bug [open ChDirDialog while ClockView in
	Application; test: tlist.pas] in Win95/NT/Wine

	* Fixed SetAnsiCode handling in Windows.

	* Fixed restoring of the first line of file-info pane.

06-Feb-1998 <mkoeppe@cs.uni-magdeburg.de>

	* Fixed F10 key handling in Windows.

05-Feb-1998 <mkoeppe@cs.uni-magdeburg.de>

	* Added ofBufferOne support in Windows (that is, use a memory GC
	to draw the view in background, and copy it to the screen at once;
	this avoids flickering.)

	* Made Windows drawing procedures much faster.

	* Fixed a bug in WinRes.OpenDIB, which in some cases caused
	LoadBitmapFileImg not to work in Windows.

	* Added DOS-style font-load functions (LoadXXXXFont) in Windows.

	* Fixed occasional wrong menu-box placement in Windows.

01-Feb-1998 [Earlier modifications not listed with date]

	* Fixed list-viewer scrolling. Fixed char map scrolling.

	* The GvGadget views now handle the cmIdle broadcast message; you
	don't need to update them explicitly any more.

	* The new TGView methods BeginScroll and EndScroll replace the
	ScrollView procedure; see TListViewer.FocusItem on how to use
	them.  This fixes some problems with scrolling under transparent
	views.

	* Fixed TButton down logic.

	* TGView.StoreBack now detects situations in which it should not
	store the background; this fixes some problems.

	* The new GvStdDlg.StdFileListFlags variable controls whether
	files and directories should be listed lower-cased; it defaults to
	lfLowerCase, i.e. both files and directories are listed
	lower-cased.

	* The new TFileDialog Options flags fdOneColumns/fdTwoColumns
	control whether the file list has one or two columns. If neither
	of the flags is specified, the value of the new StdFileDialogFlags
	variable is considered; it defaults to fdTwoColumns. Moreover, if
	you add, say, fdHelpButton to StdFileDialogFlags, all file dialogs
	will contain a Help button.

	** Implemented multi-column list viewers. The NumCols member known
	from TV indicates the number of columns. It defaults to 1; use the
	SetNumCols method to change. -- Multi-column list viewers group
	vertically first; you should therefore use a horizontal scroll
	bar.

	* Made WinDragAdd a variable (rather than a constant).

	* Added mfInsertInApp MessageBox flag.

	* Put all GVISIBLE code in the GvViews unit. Cleaned the GvViews
	interface (removed PVRect and other artefacts).

	* Fixed profile.pas (sometimes strange things happened in
	WritePrivateProfileString).

	* Improved some of the GvMenus code. The hacks that directly
	accessed images have now disappeared, such that bitmapped items
	work properly in Windows.

	* Added the StdDraggingStatusDef function, which provides a
	standard status line definition for the hcDragging context.

	* Added Ctl3D logic -- still not working properly in Windows --

	* When a TWindow is rooted, the SetFlags method moves the interior
	views and changes the bounds of the window, such that the space
	reserved for TFrame decorations is removed. (A new window frame is
	added by MS Windows).

	* Changed TGGroup.DrawClipped behavior to perform correct re-draw
	for rooted subviews.

	* Fixed a nasty bug in GvStdDlg (which was inherited from Turbo
	Vision, and is also present in the BP 7.0 DOS IDE), which caused
	empty file lists or DOS errors when you changed to a root
	directory.

	* GvClip now also works in Windows programs.

	** Added an MS Windows subsystem. Some of the graphics and support
	units (VgaMem, WinRes, Bitmap, ExtGraph) now compile in both
	DOS/DPMI and Windows programs. The other graphics and support
	units are replaced by a single unit, WinGr, which translates
	GV-style calls into Windows API calls. Some of Borland's units
	have been modified for Windows support:

	- Objects: If you compile the original unit for a Windows target,
	           several features are changed (e.g. using
	           null-terminated strings for file names) or disabled. We
	           provide a modified version, which is suitable for
	           Windows Graphics Vision.

        - Validate: Removed any system-dependent code (message boxes...)

	- HistList: Needed to be changed since Objects was changed.

	- Memory: This Turbo Vision unit has been prepared for Windows
	          use.

	- Dos: Some Dos calls are translated into WinDos calls.
	
        - Drivers: Removed any system-dependent code.

	- Views: Removed any code that is not used by Graphics Vision.
	         You should only use these unit versions if you want to
	         compile Graphics Vision programs for Windows target.
	         Since MS Windows has a multi-application windowing
	         system, a new Graphics Vision group has been inserted in
	         the owner hierarchy. Here is an overview:

                     DOS/DPMI target           Windows target
                     ------------------------  -------------------------
   Application       The whole screen.         The whole screen.

   Main              = Application.            A child of Application.
                                               An MS Windows overlapped
                                               window is associated with
                                               this group.

   Desktop,          Children of Main.         Children of Main.
   Menubar,
   StatusLine

   If you insert views into the Application group, they will become
   fully functional MS Windows windows. (This property of the Application
   group can be given to any group by setting the ofRooting Options flag.)


	* Added the wf3DFrame Window Flag. If set, the frame appears with
	a 3-D look. This flag is set by default in all TDialog objects.

	* Freed the TFrame code of many arbitrary coordinates.

	* Fixed TFileList.FocusItem, which threw collection-out-of-range
	errors under certain conditions.

	* Re-implemented TNumInput using a modified range validator, also
	fixing cursor positioning.

	* All the standard texts now reside in ENGLISH.GVS and GERMAN.GVS.
	The *X.GVS files don't exist any more.

	* A more careful implementation of the language-dependent text
	system, including the key names, uses less stack memory.

	** The new TInputLine implementation allows proportional fonts to
	be used.

	* Made the viewer in THistoryWindow and TComboWindow grow as
	gfGrowHiX+gfGrowHiY.

	* Fixed digital-clock font-size selection by preventing overflow
	in GvFonts.PixelToScaling.

	* Flying hints now disappear when a command is launched.

	* Fixed 256-color mouse-cursor XOR mask.

	* Fixed 256-color opaque font output.

	** Added GvClip unit, which provides a clipboard editor that talks
	to the Windows clipboard if running in a DOS box. GVSH now uses
	this editor for its clipboard window.

	* Changed TEditor.ClipCopy, now appends text.

	* Added DPMI support in Clipboard.

	* Fixed a bug in WinRes.LoadDialog which caused heap memory to be lost.

	* Improved the tool Lookup function in GVSH.PAS.

	* Changed the DesktopImage behavior in GvDemo since the former
	version confused many people.

	** Added simple support for 24-bit BMPs. A 4:4:4 mapping table is
	created when the first 24-bit bitmap is read.

	* Improved BMP code. Now also reads the bitmaps that come with
	Windows95 (they have changed something at the color palette).

	* Made TrueType fonts available even for Windows95/NT systems,
	where no FOT files are available. The SYSTEM and FONTS directories
	are searched for TTF files.

	* Now identifies the Windows directory by WIN.INI instead of
	WIN.COM, since the latter is not there in NT systems.

	* Moved GvApp.DoGetMCursor, GetGvViewsCursor, GetGvDialogCursor to GvDriver.

	* GvDemo.DLL now contains a copy of BWCC's resources, so
	everything works on systems without BWCC.DLL.

	* Fixed a bug in WinRes's resource name collection, which caused
	resources to be ignored in some situations.

	* Fixed wrong STOP-sign colors in messageboxes.

	* Moved GvWinDlg's 3-state box icons to ExtGraph, thus fixing
	drawing errors in overlayed builds.

22-Jul-1996 
	
	** Version 2.10, Release 2, Date: 22-Jul-1996

	* Changed THelpWindow (added buttons).

	* Added BIOS font images in the GvDriver unit, since some newer
	VGA adaptor cards seem to lack some fonts.

	* Added GVRWS.DLL, which can be loaded in the Resource Workshop to
	visually design TTable objects and TLevel(0) objects.

	* Fixed a silly bug in TGGroup.DataSize.

	* Fixed TInputLine.Valid with code from the BP 7.01 TV sources.

	* Fixed the first-item-focused bug in TFileDialog objects.

	* Made Graphics Vision units overlayable. The real-mode GvDemo has
	now over 50K more heap memory available, which helps a lot in
	low-memory systems, such as under Windoze95.

	* Moved as-data procedures to ExtGraph, which is a static unit.
	This is required for real-mode overlay builds.

	* Added AsyncMouse conditional define, which disables all
	synchronous mouse callbacks. AsyncMouse is defined in GvApp by
	standard.  This is required for real-mode overlay builds, but
	possibly also increases stability in protected mode, since
	interrupt response times get shorter.

	* Fixed Locate-on-Lock'ed-GOwner problem in the GVTV emulator
	(occured on Window|Tile in GVFM).

	* Fixed TVirtualDesktop on mouseless systems.

	* Disabled gray TStandardClockWindow commands.

	* Added WINDOWS\FONTS directory as font search path, for Windoze95.

	* Fixed problems with mouse under Windoze95 (Codename Capone).

	* Fixed input box label width.

	* Added level 0 support in TLevel.

	* Added validator-class support in GvWinDlg. The title of Edit and
	Combo controls is parsed for a validator class and its
	parameters. Custom validators can be installed. Sample: "20
	Range(-50, 50)" creates a 20-character TInputLine with a
	TRangeValidator associated.


08-Apr-1996

	** Version 2.10, Release 1, Date: 08-Apr-1996

	* Older versions (2.01, 1.??) were released so long ago that we
	don't remember. 
	

