ABC for Delphi Release Notes

By: Objective Software Technology Pty  09-Dec-2011
Keywords: C++ Builder

RELEASE NOTES

Release 6.0.3 - 22 February 2002



There are many sources where you can browse for information about ABC 6 features and component details.

  1. If the runtime demonstration program is installed by your setup program, the last page of the setup dialog shows an "Explore" button to launch the demo program.  You can also run this from the Start menu, or from within the Delphi IDE.

  2. The ABC component hint browser is installed in your IDE:

    • Choose Help | Browse ABC Components from the Delphi or C++ Builder menu.
    • Move the mouse over the ABC Component Palette icons for quick tips and overview info.
    • If this button is disabled it means the abc.exe demo program is not installed and referenced in the registry.  Try running the setup again or download abc6demo.exe from our web site.
    • Note, the browser is not available in Delphi 3 or C++ Builder 3.
  3. In Delphi 6 you will also find a new Object Inspector property category for ABC for Delphi properties.   These are component properties we have identified as unique or significant to the ABC components.

  4. Source for the main demonstration program is installed in the abc6\demo\abc subdirectory.  There are also 90 other sample programs in the abc6\demo path, together with batch files to compile them all from the command line (set up for Delphi 6).

  5. There is a tutorial for some of the DB Navigation components, described in the printed manual and in the abc6.pdf file.  This application is also found in the abc6\demo\tutorial subdirectory.

  6. In the Pro and Runtime versions, the abc6\Adapters subdirectory contains examples of different database connections using the new dataset adapter framework.  This path also includes the source code for all third party dataset adapters, which can be copied into your application.

  7. When you are working with ABC in the IDE, the abc6.hlp file contains context sensitive help links for all components.


Do you have all the files you need installed?

If you have installed ABC from the Companion Edition or CD-ROM version then your installation will be complete after running one setup.exe program.

If you download the setup programs from our web server, they are partitioned into separate programs, so you can just download the files that change in an update release, or for your version of Delphi or C++ Builder. 

You need to download all parts needed for your installation.  For example, a full install of ABC 6 Pro Version into Delphi 6 requires the following files:  setup.exe,  abc6demo.exe, abc6ds.exe, abc6da.exe, abc6d6.exe, abc6sc.exe. The web setup.exe program can automatically run all setup parts it finds in the same directory.

Version mismatch problems loading the IDE?

A frequent cause of errors is trying to load incompatible package versions.  This might be reported as a missing function entry point not found in a required package, or as "a device attached to the system is not functioning". 

This could have two common causes:

  • Installing a new ABC version into a different directory while an older ABC version is still installed in Delphi.

  • Version updates or patches from Borland that are not installed on your machine.

In the first case, just answer No to all the version errors when Delphi asks if you want to load the package next time.  After all the errors, the new installed ABC packages should work properly.

In the second case, you may need to check versions and install additional Update Packs.  We always endeavour to ship our software built for the latest shipping release of each version of Delphi or C++ Builder, with all Update Packs applied. 

Our current Build versions can be checked against the details in your About Box:

Delphi 4 Version 4.0 Build 5.104, Update Pack 2 or 3; Delphi 5 Version 5.0 Build 5.62; Delphi 6 Version 6.0 Build 6.240 Update Pack 2; C++ Builder 4 Version 4.0 Build 14.11 Update Pack 1; C++ Builder Version 5.0 Build 12.34; C++ Builder Version 6.0 Build 10.155 or higher.

Problems with Corrupt Component Palette Bitmaps?

This problem has been reported to us on a few occasions, where it started to occur just after installing ABC.  Borland have identified this as a known problem with the Microsoft ImageList common control and some video drivers: 

"Some older video drivers (S3 Virge GX, Diamond Viper, Riva TNT, Matrox Millenium, and others) have trouble handling the quantity of images that the Delphi IDE's component palette places in its internal ImageList control. This can cause the component icons to appear shifted or corrupted in the IDE component palette. The solution is to contact your video card vendor for an updated video driver. At the time of this writing, all the video drivers known to exhibit problems with
the Microsoft ImageList control have been updated with fixes by the video card vendors.   You can also work around this ImageList problem by reducing or disabling video hardware acceleration in your Windows configuration settings. For instructions, consult your operating system and video hardware documentation." (from Delphi 5 readme.txt)

Other Possible Causes of Installation Problems

  • Older versions of ABC still installed, or reinstalled after a newer version;

  • Environment Path or Library Search Path errors;

  • Project Search Path, Project Runtime Packages, old DSK, DOF or CFG files.

Manually Removing or ReInstalling ABC Design Packages

In most cases you can add, disable or remove ABC design packages through the IDE.  There is one package dclABCxx which is required by all others.  It must be installed first when reinstalling the IDE packages by hand.  All our IDE packages follow the Borland naming convention of dcl..  Note our design packages have the same name in multiple versions of Delphi/C++ Builder.

Compiler Errors Using the Companion Edition - "Cannot find file"

The "Lite" versions of ABC do not contain any dcu files.  So you must compile all projects with the Project|Options|Packages - Build with Runtime Packages checkbox checked.  The package names list should also include the appropriate runtime package - ABCC for Delphi 6, ABCC50, ABCC40, etc.


This release supports Delphi 6 Update Pack 2, and C++ Builder 6.

Component

Description

TabcWinMsgBox, TabcWinAbout

Added these legacy components back into ABC installation, it appears they were more widely used than expected.

TabcMessageDlg

Added CancelButton and DefaultButton properties.

TabcDBHelpManager

Added published DisplayOptions property. This is a persistent class of properties to set the position, size, color and scrolling of the help window. It is even possible to embed the help within another parent form.

TabcButtonBar and TabcButtonList

Added features to save and restore the layout of pages and buttons. 

Set the TabcButtonBar.FileName property to allow automatic save and restore of state information, or call these public methods for custom storage: SaveToFile, SaveToStream, LoadFromFile, LoadFromStream. The stored data is in binary format like a .dfm file. The following components are stored: TabcButtonBar, each TabcButtonPage, and any control on the TabcButtonPage to a single level of parentage, including TabcButtonList.

Added drag and drop events on TabcButtonList. Previously these were not published because drag/drop is used internally for sorting the buttons.

Implemented the TabcButtonBar.Options value abbDragTrack - if this is in the Options, buttons in a buttonlist can be dragged to different pages, otherwise dragging is only possible within the current page.

TabcPicSpeedBtn, TabcPicBtn, All DBNav button classes

Added a WordWrap boolean property to support multiline button captions containing carriage return characters #13. The default Wordwrap is false, the same as the existing behaviour.

TabcnpSQLStartTrans, Commit and Rollback buttons

Added features to the Client Dataset Adapter layer to enable these buttons with client datasets and server transactions.

TabcToolbar

Added an OrderedControls property.

TabcNavPanelNotifier

There is a singleton instance of this component in abcnp unit, named NavPanelNotifier. Added two public TNotifyEvents, OnActiveDataSourceChange and OnActiveFieldChange.

Runtime Packages

The same ABC runtime packages are now shared between Delphi 6 and C++ Builder 6, to reduce disk space requirements slightly.

Component

Description

TabcKeyState

Fixed a bug causing "Control has no parent window" error trying to create a component instance at design or runtime.

TabcColorComboBox

Changed the SetDefaultColors method to also initialize the associated color values. Otherwise a runtime index range error can occur.

Modified the SelectedColor property, so that the control's OnChange event occurs when SelectedColor is changed. Previously this property value could be changed without any event occuring.

TabcPopupMenu

Fixed a small bug causing apparent 100% cpu utilization when the machine is idle and a menu is open. (CPU use only occured when there were no other applications to run).

TabcToolbar Edit and DBEdit Controls

Fixed a bug causing border painting error when enabled toggled at designtime.
This release is for C++ Builder 6, Build 10.128. For the C++ Builder Companion CD only. Following is a list of component bugs and features also updated in this release.

Component

Description

TabcMailToLabel

Fixed error sending mail message to Microsoft Outlook mail client. The mail client command line is now correctly derived from registry information.

TabcMessageDlg

Added DefaultButton and CancelButton properties.

TabcCheckListBox

Fixed a bug painting an offscreen image of a listbox with no items (used in transition effects).

TabcTrayIcon

TabcAnimationFrame

Fixed a problem freeing dynamically created forms when changing the active page.

TabcButtonBar

TabcDBDateTimePicker

Fixed a bug causing a validation error message on zero dates ("you must be in checkbox mode to show this date"). Changed operation to disable the control when created and the datasource is inactive. The initial date/time when created is now zero, instead of the current date/time. Changed control repainting to make it update always when a DateFormatString or DateFormatZero property changes.

TabcDBNavPanel

Fixed a bug causing a designtime access violation with nested datasets.

Dataset Adapter for Client Datasets

Implemented Commit and Rollback navigation button operations.

This release is built for the production release of Delphi 6 (Build 6.163).

  • The Companion CD Lite version has been updated. (Fixes 'Bad packaged unit format' compiler error).

  • Help files have been updated.

  • Interbase demo databases have been updated to version 6.

  • See below for new features in version 6.0.

Component

Description

Sprite Animation

On the ABC Multimedia component tab. A new framework of components for multimedia sprite animation has been added. This allows 2D animation of sprite images, with Z-Ordered painting.

The sprite engine is multithreading and optimised for high performance with minimal screen repainting. 

Sprites are lightweight TComponent descendants. Sprites are owned by the form or datamodule they are created on, but are not visible and do not appear on the component palette. You can create sprites at designtime using the abcSpriteList component editor. (This arrangement is somewhat like the TAction and TActionList components in Delphi).

TabcSpriteSurface

This is a graphical control with a canvas that sprites are drawn on. A list of sprites is connected to the surface using its Sprites property.

TabcSpriteList

TabcBitmapSprite

This is a sprite for drawing a masked bitmap.

TabcImageListSprite

This is a sprite for drawing a masked image from a TImageList.

TabcPictureSprite

This is a sprite for drawing an image from another graphic file, such as a JPEG or ICO file.

TabcEffectSprite

This is a sprite for drawing images and text with transition effects.

TabcRichEffectSprite

This is an effect sprite with additional drawing of rich text captions.

TabcInputSprite

This is an invisible sprite for collision and mouse event detection only.

TabcTextSprite

This is a sprite for drawing text with optional scrolling.

TabcShapeSprite

This is a sprite for drawing shapes.

TabcRotatingTextSprite

This draws text that can be rotated to any angle.

TabcBitmapSpriteFactory

This component allows runtime replication of multiple bitmap sprites using a single image, for reduced memory and performance.

TabcFormTabControl

On the ABC Containers component tab. This is a tab control that contains another form on each page. It allows automatic or manual creation and destruction of form instances. It can show transition effects when changing the tab. It can also act as a dock site for dragging and dropping forms onto pages. This control is a replacement for the abcFormTabbedNotebook and should be used in preference.

TabcMailToLabel

On the ABC Labels component tab.

TabcMessageDlg

On the ABC Dialogs component tab. This dialog component can replace the style of dialog shown in Delphi's MessageDlg function. It includes formatting options for all aspects of the dialog appearance and can also add a checkbox.

TabcProgressDlg

On the ABC Dialogs component tab. This dialog component descends from TabcMessageDlg. It adds an optional progress bar and has an interval timer. It allows counting down or up to a specified number of intervals and allows the label text on the message to change as the time interval progresses.

TabcIdleTimeout

On the ABC Utils component tab. This is a singleton component that allows your application to monitor activity and to shut down automatically when a period of inactivity is detected. Activity is monitored through user mouse and keyboard actions, and on Windows NT platforms can also measure process times (Kernel and User mode execution time). It includes confirmation steps with a dialog and event before shutting down and a choice of the method used to terminate the application.

TabcDBXAdapterReg

On the ABC Data Access component tab. This is a registration component for the new dbExpress dataset adapter classes in ABC. For use with the Delphi 6 dbExpress components.

Component

Description

TabcSplash

Added a property AutoShowOnDestroy to automatically show the splash screen when closing the application, i.e. before the component is destroyed.

Added window animation effects to blend, roll or slide the splash form when showing or when hiding. These are in the AnimateShow and AnimateHide properties. Note, when using a shaped form, the only possible animation is the blend effect.

Component

Description

ABC Splitter Controls

Fixed a bug causing scaling of the split position to not work in some cases when loading the application.

ABC Menus

Fixed a bug causing MDI Window Menu items on the main menu to not update properly.

TabcAnimationFrame

Fixed a bug causing a problem loading a form into the control at runtime, when it is not on the active page.

TabcABC Menus

Fixed a bug causing MDI Window Menu items on the main menu to not update properly.

TabcButtonList

Fixed a bug that caused an exception when the SelectedIndex property is changed before the control is visible on the screen, e.g. when set in the FormCreate event.

Area

Description

ABC Component Browser

In the Delphi IDE: Help | Browse ABC Components

Added a hyperlinked label "Current release" which does an http read of the latest release number from our web site. This is handy to check if you have the current version of ABC installed.

Area

Description

Components Removed

The following legacy Delphi 1/2 components are also no longer used and have been deleted: 

  • TabcWin3D

  • TabcRSExit

  • TabcWinMsgBox. Use TabcMessageDlg instead.

  • TabcWinAbout. This will be replaced in future with a different about box dialog component.

Case Sensitive Unit Names

At the time of writing, the Delphi 6 compiler includes a warning about .pas file name and Unit or Uses statement references to the unit, that is case sensitive. The message is "Unit Identifier does not match file name". This warning might have been removed from the Delphi 6 release, if you don't see it then there is no problem.

If you get this warning with any ABC units, there is a GReplace file containing all of the abc unit names, which can be used to edit your source code.

ABC unit files have been renamed to be all lower case.

Package Name References

Borland has added a feature to remove the version number suffix from package name references (i.e. the dcp files) while retaining the version suffix on the actual .bpl file when it is compiled.

So references to any ABC runtime packages in code, now longer require a '60' or '50' suffix. Apart from that the runtime package names have not changed.

Keywords: C++ Builder

Contact Objective Software Technology Pty

Email

Print this page

Other products and services from Objective Software Technology Pty

09-Dec-2011

TRANSFORM Overview

Aggregate components are most often used as business components to encapsulate business logic and user interface controls; to create complex user interface controls such as toolbars and editors; and as a tool for increasing productivity and object reuse on larger projects. TRANSFORM is a Delphi IDE Expert that lets you convert entire forms including form properties and events, into a single component that can be reused inside other forms.


09-Dec-2011

ABC 5 Press Release

ABC is a complete user interface toolkit, with over 220 components to enhance all aspects of user interface design, data presentation and application support. Objective Software Technology announces immediate availability of version 6 of its visual component library, ABC for Delphi.


09-Dec-2011

ABC Version 5 Release Notes

When DateFormatString is empty, the default dfShort or dfLong or dtkTime format is set, using the Delphi date and time formatting variables in SysUtils. To make the information more readable, you can add body text to the format string by enclosing it in single quotes. They are defined by the following groups of characters:"d" The one- or two-digit day. Added several new properties to allow custom display formatting of dates and times.


09-Dec-2011

ABC What's New

In recent Delphi and C++ Builder releases, particularly Version 5 onwards, different databases use a variety of methods and support different subsets of this functionality in their TDataset descendant classes. The ABC dataset adapter classes describe the TDataset class capabilities - mapping dataset class properties and methods to a standard set of properties and methods used by ABC controls.


09-Dec-2011

ABC for Delphi Release 4.2.4

There are five new components on the ABC Toolbar palette: TabcMainMenu, TabcPopupMenu, TabcSystemMenu, TabcMenuToolbar and TabcMenuImages. Features include the ability to add or hide items on the system menu, a wide variety of painting styles, animation and sound effects. New animated bitmap menus are now available on floating toolbars, the system menu and popup menus.