X-DBGrid Component 3.3 ====================== X-DBGrid Component package contains two powerful advanced components (TXDBGrid, TXDBColumnsDialog) designed for Delphi 5, 6, 7 & 8 and C++Builder 5 & 6. X-DBGrid Component package is a main part of X-Files Components package. TXDBGrid component is the functional extension of Borland's TDBGrid. TXDBGrid implements all standard TDBGrid's functions and the many additional, which are launched including new Options or by setting values for new properties. TXDBGrid is fully compatible with TDBGrid component on properties level and can be used as a replacement without losing existing values. TXDBGrid has its own ColumnEditor, which can fully support all new column's properties. TXDBGrid component is compatible with Windows XP platform and fully supports Windows XP Styles. TXDBColumnsDialog is a complementary component for TXDBGrid designed for grid columns management in run-time. User can show/hide selected columns in the grid by using convenient dialog which presents columns list with checkboxes. Requirements ============ The package requires using latest released service pack for each version of Delphi/C++Builder: Delphi 5.01, Delphi 6.02 RTL 3, Delphi 7.01, Delphi 8.02 for .NET, C++Builder 5.01, C++Builder 6.04. This package can't be installed on the Trial version of Delphi/C++Builder. Notice. When the Error Loading IDE Assembly or Package occurs (C:\Program Files\Borland\BDS\2.0\XDBGrid\DCLXDBGrid80.dll is not a Delphi package/ assembly) during Delphi 8 for .NET is starting, it means, you should download and install Update #2 for Delphi 8 for .NET first. To get themed version of TXDBGrid component on Delphi/C++Builder 5 & 6 you should download and install Windows XP Theme Manager by Mike Lischke (freeware) from http://www.lischke-online.de/ and register the Professional version (with source) of this package. (Mike Lischke is an author of Themes unit in Delphi 7). What's new in version 3.3 ? =========================== - Support for flat scrollbars (FlatSBMode, ScrollProp) - Enhanced scrollbars (AutoHidden, Color, Style, ThumbBar) - Support for expanded/contracted columns of any type (ExpandCols) - Enhanced expand button (ExpandStyle, cesDropDown, cesDropDownMenu) - Enhanced checkboxes adjusted to FixedStyle (CheckBoxStyle, CheckBoxKind) - Enhanced markers adjusted to FixedStyle (MarkerStyle, MarkerTransparent) - Enhanced drawing of hot buttons adjusted to FixedStyle (HotButtons) - Enhanced drawing of grid border adjusted to FixedStyle (Ctl3DAuto) - Enhanced drawing of list border adjusted to FixedStyle (ListBorder) - Enhanced drawing of focused cell in the grid (FocusRect) - Improved drawing of fixed cells for RightToLeft BiDiMode - Enhanced edit ButtonStyle (cbsDropDown, cbsDropDownMenu) - Improved edit ButtonStyle drawing adjusted to scrollbars - Improved drop-down list drawing (DropDownMenu, DropDownWidth) - Support for editor cell and list drawing (EditorColor) - Support for stripped rows drawing (StripeColor) - Support for selected rows drawing (SelectionColor) - Support for current row drawing (SelectRowColor) - Enhanced support for mouse wheel (WheelScrollRows) - Enhanced record moving (Position, GotoPosition, DataRowCount) - Enhanced columns resize (ResizeOptions, roOptimalWidth, roDefaultWidth) - Support for speed or quality drawing (DoubleBuffered) - Extended internal list of indicator images - Corrected and improved using of dgAlwaysShowEditor option - New column's dialog options for TXDBColumnsDialog (DialogOptions) - Many, many little enhancemets and improvements has been implemented Important changes introduced in version 3.3 ? ============================================= - Default value for GridStyle.VisualStyle is now vsXPStyle - Default value for IndicatorWidth is now 20 (instead 11) - FillerPopupMenu is now auto drop-down for FillerIndex = -7 What's new in version 3.2 ? =========================== - The package for Delphi 8 for .NET is now available - Little changes in source code to unify all versions - RightToLeft BiDiMode example added to Demo1 - RightToLeft BiDiMode support improved - PopupMenu handling bug fixed (TXDBGrid) Delphi 8 for .NET - known problems ================================== - HtmlHelp version for Delphi 8 for .NET isn't yet available (use WinHelp version) - dgRightMoving option raises exception during loading (bug in Delphi 8 for .NET) (This option is now marked as obsolete but you can still include it in run-time) - Drag&drop in XDBGrids Columns Editor causes exception (bug in Delphi 8 for .NET) (All property editors have the same problem. Don't use drag&drop technique yet) - TUpdateSQL component isn't registerd on ToolPalette (installer can register it) (This component is used only in Demos. You can register it or remove from Demos) What's new in version 3.1 ? =========================== - Little changes in source code What's new in version 3.0 ? =========================== - The package for C++Builder 5 & 6 is now available - The package for Delphi 3 & 4 is no longer available - 100% compatibility between Delphi and C++Builder code - Included fully automatically installer/uninstaller - Support for Windows XP Style (IsGridThemed, FixedTheme, dgHotButtons) - Standard, XPStyle or user defined grid spacing (GridStyle, VisualStyle) - Proportional scrolling for any DataSet, even filtered (dgForceSequence) - Support for horizontal and vertical scrollbar tracking (dgThumbTracking) - AutoNumber for any DataSet, even filtered (AutoNumber, RecNumber, RecCount) - Many small changes and extensions to improve run-time code - New component TXDBColumnsDialog Other main advantages of TXDBGrid ================================= - Excellent context help system (over 370 topics) - Hints and ToolTips for data cells - Hints for titles, headers, indicator and filler - User defined markers list (TitleMarkers) - User defined indicators list (IndicatorImages) - User defined pictures list for columns (Images) - Pictures for titles and filler (TitleImages) - Many variants of pictures drawing into cells (ImageDraw) - Autotoggled markers for multicolumns sorting (OrderFields) - Support for fixed columns and styles (FixedCols, FixedStyle) - Support for bdRightToLeft BiDiMode for Middle Eastern locale - Support for mouse wheels and drag & drop for selected rows - Support for save and restore row position in the grid - Extended rows selection and notification (OnRowSelect) - Additional options for pick/lookup lists (ListOptions) - Additional options for PickList/PickText (PickOptions) - Stretching columns to grid client area (StretchMode) - Multiline rows, title buttons, headers and many more ... Installation ============ To install X-DBGrid Component package you should: ------------------------------------------------- 1. Uninstall previous version of X-DBGrid Component / X-Files Components, if exists. 2. Run X-DBGrid33xx.exe installer. How to update Delphi Library Path ? ----------------------------------- Make sure your Delphi Library Path contains only one path pointing to X-Files Components or X-DBGrid Component package. If you have uninstalled 2.x version of the package, make sure you deleted old entry from your Library Path. The default path for X-Files Components 3.x is: $(DELPHI)\XFiles - for Delphi 5, 6 & 7 $(BCB)\XFiles - for C++Builder 5 & 6 $(BDS)\XFiles - for Delphi 8 for .NET The default path for X-DBGrid Component 3.x is: $(DELPHI)\XDBGrid - for Delphi 5, 6 & 7 $(BCB)\XDBGrid - for C++Builder 5 & 6 $(BDS)\XDBGrid - for Delphi 8 for .NET When you install the new package, the new installer can automatically change path in the Library Path for this reason, but it can't know/remove old entry. How to install Context Help File ? ---------------------------------- The installer can automatically install Context Help File, then you don't need to do it manualy. If your OpenHelp can't find any topic from X-Files Components Reference file, you should: 1. Select the Help | Customize... menu item to display OpenHelp window. 2. Add the ..\Help\XFiles.cnt file to the Contents page. 3. Add the ..\Help\XFiles.hlp file to the Index page. 4. Add the ..\Help\XFiles.hlp file to the Link page. 5. Click on File | Save Project to save your changes. Notice. You may need to remove any indexes you do not use because default help indexing is near the limits of Microsoft's WinHelp. If you experience an empty list on the Index tab page of WinHelp, this indicates you need to remove some files from OpenHelp. HtmlHelp version for Delphi 8 for .NET isn't yet available. Mini FAQ ======== How to get themed version of TXDBGrid component for Delphi/C++Builder 5 & 6 ? ----------------------------------------------------------------------------- To get themed version of TXDBGrid component on Windows XP platform the TThemeServices class is required. This class is available only in Delphi 7 in Themes unit. To get themed version of TXDBGrid component for Delphi/C++Builder 5 & 6, you should: 1. Download and install Windows XP Theme Manager by Mike Lischke (freeware) from http://www.lischke-online.de/. 2. Open XDBGrids.pas unit and replace switch {$UNDEF THEMES} to {$DEFINE THEMES} 3. Add XDBGrids.pas unit to the project either or save that to the project directory. 4. Add XP Manifest either file or resource to the project. To do this you should have the Professional version (with source) of the package. How to replace TDBGrid component to TXDBGrid component in old projects ? ------------------------------------------------------------------------ TXDBGrid is fully compatible with TDBGrid component on properties level and can be used as a replacement without losing existing values. 1. Replace "DBGrids" unit name to "XDBGrids" unit in uses clause. 2. Replace all occurence of "TDBGrid" class to "TXDBGrid" class. 3. Click right mouse button on a form and select "View as Text". 4. Replace all occurence of "TDBGrid" class to "TXDBGrid" class. 5. Click right mouse button on editor and select "View as Form". 6. Save changes, (important) close a form and reopen it. 7. Replace other class name to "TX" class name (e.g. TColumn to TXColumn). Registering =========== The X-DBGrid Component package is a Shareware product. The Trial version of this package can be used only in Delphi/C++Builder IDE. If you find it useful and you want to receive full version, you should register it. You can receive Standard or Professional version of package, depend on registration fee. The Professional version contains also full run-time source code and the part of design-time source code except private X-DBGrid Delphi/C++Builder IDE extensions (IDE dialogs). Registered version of package may be used in your programs without additional fee. All registered users are notified by e-mail when a new version of package will be released. All updates for version 3.x you can receive FREE on e-mail. Please, read the Register.txt file to know detailed prices. Contact ======= Please contact us, if you have any questions, suggestions or comments: Company: X-Files Software, Borland Technology Partner Author: Krzysztof Szyszka, Poland Website: http://www.x-files.pl/ DISCLAIMER OF WARRANTY ====================== PRODUCT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. THE AUTHOR DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, WITHOUT LIMITATION, THE WARRANTIES OF MERCHANTABILITY AND OF FITNESS FOR ANY PURPOSE. THE AUTHOR ASSUMES NO LIABILITY FOR DAMAGES, DIRECT OR CONSEQUENTIAL, WHICH MAY RESULT FROM THE USE OF THIS PRODUCT. History ======= X-Files Components 1.0 (June 14, 1999). First version for Delphi 4 only. X-Files Components 1.1 (July 4, 1999). First version for Delphi 3. Little changes in demo programs for Delphi 3 compatibility. X-Files Components 1.2 (September 9, 1999). + New Option - dgIndicatorMarkOff + New properties - ImageOffsetX, ImageOffsetY + New properties - CheckBox, CheckBoxValues, CheckBoxToggle + New procedures - IsCheckBoxValue, ToggleCheckBoxValue X-Files Components 1.3 (October 16, 1999). First version for Delphi 5. Little changes in source code. X-Files Components 1.4 (December 18, 1999). + New Option - dgAllowDeleteOff, dgAllowInsertOff + New properties - StretchMode, StretchWidthMax, StretchWidthMin, WidthBase + New properties - ScrollBarHeight, ScrollBarWidth, TrueWidth + New procedures - StretchGrid + New events - OnColumnResize, OnColumnScroll, OnRowScroll X-Files Components 1.5 (March 26, 2000). + New properties - FillerButton, FillerColor, FixedCols, FixedStyle + New properties - RowHeight, TitleHeight + New events - OnFillerClick X-DBGrid Component 2.0 (June 24, 2000). + New procedures - HeaderLeft, HeaderRight X-DBGrid Component 2.1 (November 7, 2000). + New Options - dgMarkerAutoToggle, dgMarkerAscendOnly + New properties - FillerHint, FillerIndex, FillerPopupMenu, HintOptions, IndicatorImages, IndicatorPopupMenu, IndicatorWidth, OrderFields, TitleImages, TitleMarkers, LastShiftState + New properties - ColLineWidth, RowLineWidth, Indicators, Markers + New events - OnCalcImageIndex, OnCellHint, OnIndicatorClick, OnOrderChanged + New procedures - BeginOrderUpdate, EndOrderUpdate, SetupOrderFields + New properties - EditorHint, ToolTips, ToolTipsWidth, TransparentColor, Images, AutoToggle, Hint, HeaderHint, HeaderHintRows, ImageIndex, MarkerIndex, OrderIndex, PopupMenu + New procedures - ToggleMarker, UpdateMarkers + New procedures - ModifyOrderFileds, ExtractOrderFields, CommaToSemicolon, SemicolonToComma X-DBGrid Component 2.2 (March 21, 2001). + Context help system + Custom multiline editor + Support for BiDiMode property X-DBGrid Component 2.3 (July 17, 2001). First version for Delphi 6. Little changes in source code. X-DBGrid Component 2.4 (November 25, 2001). + New Options - dgAutoUnselectOff, dgExtendedSelect + New properties - SelectionAnchor, DragRows + New procedures - SelectAll, SelectRows, InvertAll, InvertRows, UnselectAll, UnselectRows, ColGetText, ColSetText, DisablePosition, EnablePosition, PositionDisabled + New events - OnColGetText, OnColSetText + New properties - ListOptions (loAutoDropDown, loSelectNextValue, loAllowClearValue), PickOptions (poDropDownList, poListItemOnly, poSelectPickText, poStoreItemIndex, poAcceptPickList, poAcceptItemIndex), PickText X-DBGrid Component 2.5 (March 25, 2002). + New Options - dgInternalSelect + New HintOptions- hoDataHints, hoShowDataHints + New properties - IndicatorHint, Column.Hint + New events - OnColExpand, OnRowSelect + New HintCell - hcData, hcIndicator X-DBGrid Component 2.6 (September 17, 2002). First version for Delphi 7. Little changes in source code. X-DBGrid Component 3.0 (September 7, 2003). First version for C++Builder 5 & 6. + New Installer - X-DBGrid Component is now automatically installed + New XP Style - X-DBGrid Component fully support Windows XP Style + New Options - dgForceSequence, dgThumbTracking, dgHotButtons + New properties - RecNumber, RecCount, AutoNumber, FixedTheme, GridStyle + New procedures - ForcedSequence, UpdateSequence, IsGridThemed + New class - TGridStyle (DataRowSpace, HeaderRowSpace, TitleRowSpace TitleColMargin, VisualStyle) + New component - TXDBColumnsDialog X-DBGrid Component 3.1 (January 1, 2004). Little changes in source code. X-DBGrid Component 3.2 (March 15, 2004). First version for Delphi 8 for .NET. Little changes in source code for unification X-DBGrid Component 3.3 (July 20, 2004). + New properties - Ctl3DAuto, DoubleBuffered, EditorColor, FocusRect, HotButtons, ListBorder, MarkerStyle, MarkerTransparent, ResizeOptions, ScrollProp, SelectionColor, SelectRowColor, StripeColor, WheelScrollRows, OnExpandClick, FlatSBMode, Position, DataRowCount, ColumnsWidth, FixedColsWidth + New methods - ColumnAtDepth, DefaultEditorColor, DefaultSelectionColor, DefaultSelectRowColor, DefaultStripeColor, DropDownMenu, DropDownPoint, GotoPosition, MouseWheelScrollRows, ThemesEnabled + New properties - CheckBoxKind, CheckBoxStyle, DialogOptions, DropDownMenu, DropDownWidth, ExpandCols, ExpandStyle, Visibility, Report.DialogOptions, Title.DropDownMenu + New class - TXScrollProp(AutoHidden, Color, ParentColor, ParentStyle, Style, ThumbBar, WinXPMode)