top of page

FirePower Revisions

Version (May 16th, 2023)

  • TwwLayoutGrid - Control could have display problems in some cases when touch scrolling such as the control not updating. This problem is fixed

  • TwwTrackBarPanel - Control Could cause recursive painting with RAD Studio 11.3 causing it to freeze. This problem is fixed.

  • TwwCalendarEdit - Fixed problem where control would not highlight text after mouse down.

Version (Feb 28th, 2023)

  • TwwDataGrid - Fix problem with fixed columns not update displa. This could happen if no indicator and no fixed columns and inactive dataset

Version (Jan 4th, 2023)

  • TwwDataGrid - Fixed problem where RecordCount could be wrong after filtering records

  • TwwDataGrid - OnCalcHint not firing for cells in Title Row before

  • Support for iOS arm simulator

  • ShowWaitDialog in iOS not appearing for iOS 16 with iPhone 14. Demo changed to use threaded ShowWaitDialog​ so it still appears.

  • AnimatePage fixed so that canvas error does not appear. This was introduced with RAD Studio 11.2 update

Version (July 21st, 2022)

  • Fixed maindemo so that email with attachment works for 64 bit Android

  • TwwLayoutGrid - Add support for embedded TwwRecordViewPanel

  • TwwComboEdit - New ShowAsDialog property to support showing the combo's selections in a dialog instead of a drop down list. By showing in a dialog, it allows mobile platforms to incrementally search on the selections that are available.

  • TwwCalendarEdit, TwwComboEdit - Added support to fire OnPopup

  • TwwLookupDialog - Dialog not previously not centered correctly

  • TwwButton - Fixed errors in not being able to select button at design time for default iOS styles

Version (June 17th, 2022)

  • TwwDataGrid - New property Options.ReadOnlyStillShowEditor. Set to true to still show editor for readonly fields. This property only works for desktop

  • TwwEdit in Grid. Previously did not respect style background color

  • TwwLookupComboEdit- Dropdown list not showing all data with certain desktop scaling.

Version (March 24th, 2022)

  • TwwDataGrid - Fix other cases where BeginScene error was occurring when scrolling

  • TwwDataGrid - Fixed issue with combo selection not triggering edit mode in dataset.

Version (March 8th, 2022)

  • TwwCalendarEdit - When used to display only the time, it would not accept the changes on mobile devices. This problem is fixed.

  • TwwButton - When using a button style that has no background object, setting the color had no effect. This version adds support for colors even in this case.

  • TwwRecordViewPanel - In some cases when the record view was created dynamically with code, an access violation could occasionally occur. This problem is fixed.

Version (Feb 7th, 2022)

  • TwwDataGrouper - Fix IDE access violation when there are no groupings defined

  • TwwDataGrid - Add GroupTitleAlign to the grid column. Set this if you want a different alignment for the group title in the column.

  • TwwDataGrid - Fix access violation that could occur when scrolling in some cases , such as with the mouse wheel.

  • TwwDataGrid - Fix mouse wheel painting problem that could occur in some cases

  • TwwDataGrid - Some keyboard handling would not work such as the home key if there were invisible columns.

  • TwwLookupComboedit -  Avoid exception when downarrow after dropping down first time and then close

Version (November 2nd, 2021)

  • TwwDataGrid - Avoid exception relating to internal focus object which could occur in some rare instances (i.e. MDI forms hidden and resown)

  • TwwDataGrid - When using Adapter datasources, it could yield an exception when scrolling past the last record. This problem was introduced in and resolved in this build.

Version (10/26/2021)

  • TwwDataGrid - Fix exception that could occur after sorting in grid

  • TwwDatGrid, TwwLayoutGrid - Fix problem with blurry text in windows when grid's position was not on an integer boundary

  • TwwDataGrid - Fixed some issues with options.dgPadLastColumn

  • TwwRecordViewPanel - Support OverrideStyleSettings.Data.BackColorOpacityPercent. Previously opacity was only 1/2 of the BackColor setting. Now you can configure the opacity so you can gain 100% opacity.

Version (10/14/2021)

  • TwwCalendarEdit - Fix problem in closing up calendar yielding an access violation for mobile target devices.

Version (9/24/2021)

  • TwwAdvCustomComboEdit - Fixed text placement when have image on the left. Previously text could overlap image.

  • Fixed argument out of range error error that could appear in some FirePower container controls such as the TwwDataGrid.

Version Initial FirePower X2 release

Version (4/16/2021)

  • TwwDataGrid - Performance with most recent OS X/BigSur was noticeably slower in painting/scrolling. We recommend adding the following line of code to your project source before the initialize which uses metal graphics and is faster to paint.



  FMX.Types.GlobalUseMetal := True;  // add this line.


  Application.CreateForm(TMainDemoForm, MainDemoForm);


Note that also this build has a new method of painting the default text in the grid that is significantly faster even when metal is not used. If there are any unforeseen issues, you can return to the old behavior by adding this line of code in your main project source.

 wwGlobalManager.InfoPowerControlsManager.TextPaintingNew:= false;


Note: You will need to add the units fmx.types to resolve the GlobalUseMetal reference and add fmx.wwmanager to resolve the TextPaintingNew reference.


  • TwwDataGrid - Footer painting would incorrectly clear grid's data rows in some cases such as when the Imagecontrol property was assigned as the background image.. This problem is fixed.

  • TwwLayoutGrid/TwwDataGrid - Retina painting on Mac OS X was not as sharp before for custom controls.

  • TwwLayoutGrid - TwwEdit embedded in layout grid with a different font size (overridestylesettings.fontsize assigned) would paint text too large before in OSX. This problem is fixed.

  • TwwListBox - Right Accessory icon would disappear if changing visibility of controls within the listbox during runtime. This problem is fixed.

Version (4/4/2021)

  • TwwRecordViewPanel - Item configured as switch was incorrectly using ControlAttributes.Checkbox settings instead of switch settings. This problem is fixed.

  • TwwRecordViewPanel - Non FirePower graphical controls now respect record item's height instead of forcing it to be a single line height.

  • TwwLookupComboEdit - DropDown ListBox height needed to be 1 pixel larger for screen scales of 125, 175, 225. Otherwise the combo would not show the last item in the list.

Version (2/24/2021)

  • Now Compatible with RAD Studio 10.4.2 Release

  • TwwDataGrid - Fixed issue when exporting with Android. It could generate an access violation the second time the export was done.

Version (2/1/2021)

  • TwwExpander was grayed out in IDE except for Win32. This is corrected.

  • TwwDataGrid - Fixed problem with using OverrideStyleSettings.Footer.FontSize. Font was scaled too much.

  • TwwListBox - New ImagesUseEffects property. Set to true to have the listbox use the effects when painting its image. To set the effects see the ItemControls.ImageControl.Effects property

Version (12/19/2020)

  • TwwTrackBarPanel - Tick Labels previously displayed incorrect text. This problem is fixed

  • TwwImageControl - Added Stroke, Fill, XRadius, YRadius, Corners, and CornerType properties allowing for a much more flexible and modern presentation of your image.

Version (12/7/2020)

  • TwwDataGrid - Support multi-line column titles in design tools

  • TwwDataGrid - Removed instances where grid could unnecessarily and prematurely call ApplyStyles which could trigger controls to lose their styling.

  • TwwLayoutGrid - In cases where OverrideStyleAttributes.Frame.Enabled was true and ReadOnly was false, the grid could paint an extra background rectangle causing the active record to not be displayed correctly. This problem is fixed.

  • TwwLookupComboEdit and TwwLookupDialog - Design tools: button for adding all columns did not previously work

  • TwwPlatformServices new static properties (affects only TwwPlatformServices.ShowWaitDialog and ShowWaitIndicator for iOS). Here are the relevant new properties and types for TwwPlatformServices which you can initialize in your main form's initialization section.

TwwWaitIndicatorColor = (Gray, White, WhiteLarge);

class var WaitMessageFontColor: TAlphaColor;

class var WaitMessageBackColor: TAlphaColor;

class var WaitMessageIndicatorColor: TwwWaitIndicatorColor;

Version (11/10/2020)

  • Updated Email with attachment demo program so that it works with latest Android devices.

  • Updated documentation

  • LookupDialog previously could enlarge to a width larger than the screen width. This screen is now limited to the width of the monitor's workspace.

Version (10/7/2020)

  • Improved keyboard support for Android when using validation masks. Previously would not always autofill or refresh the display based on the validation colors

Version (9/23/2020)​

  • This version requires RAD Studio 10.4 Update 1 or later

  • TwwCalendarEdit - Designer: Support for custom buttons at design time by right-clicking component

  • TwwCalendarEdit - Now auto highlights entire date/time when receiving focus with the mouse. Previously the behavior of mouse click was different than when tabbing to the control. To return to the old behavior, set Options.wwDTOSelectAllWhenFocused to false.

  • TwwCalendarEdit - Added methods UpClick and DownClick in case you wish to call these from external button. UpClick and DownClick are equivalent to entering the up arrow and down arrow keys.

  • TwwCalendarEdit - Support MouseWheel in dropdown calendar when mouse is over the year or month. This allows the user to select a year easily without having to use the keyboard.

  • TwwSearchBox - Avoid error in auto-generated filter during user input by better handling of memos and logical field types.

  • TwwSearchBox Designer - Fixed problem with not immediately recognizing design time changes after deleting fields through the fields designer.

  • TwwSwitch - Previously ignored property settings for custom control TwwSwitch in grid. Now the switch control's properties are used if ControlType=CustomControl. Also ValueChecked and ValueUnchecked are now case insensitive.

  • TwwLayoutGrid - New property PaintOptions.NoRecordsMessage which displays in the layoutgrid when it has no records.

Version (8/14/2020)

  • TwwLayoutGrid - Now supports embedding in TListBoxItem

  • TwwLayoutGrid - Ensure valid internal FSelection whereas before could cause access violation of layout grid was invisible.​

  • TwwTreeView - Support MouseWheel in IDE

Version (7/6/2020)

  • In some instances FirePower edit controls could stop showing their background when resizing the form and a TwwDataGrid goes out of view. This is related to the caching of the style manager. This problem is addressed by the grid now defaulting to DisableDisappear as True which prevents the control from losing its style attributes.

  • TwwTrackPanel embedded in TwwTreeView now better supports keystroke handling with the arrow keys.

Version (6/30/2020)

  • TwwTreeView - Support for bound images, image combos, and switches. Removed duplicate bindings created by tree. Improved documentation on TwwTreeView. New demo for to show embedded controls.

  • TwwTreeView - Fixed design time display when using AutoSizeColumns where the edit column was too wide when first loading the form.

  • TwwDataGrid - Fixed internal GetValueByRecord which could cause issues with retrieving field values. This impacted the lookup combo or code that called GetValue for fields where no columns were created.  New support for ControlAttributes.Switch to allow customizable graphical switches inside the grid without having to use a custom control.

  • FirePower Edit controls - Now ignore TField.Alignment overriding TextAlign property of FirePower controls. Previously in 10.4 Sydney the TextAlign was overwritten by the tfield settings.

  • TwwComboEdit with Style set to csDropDownList did not previously support changing the drop down list icon. This problem is fixed.

  • TwwImageControl - New DrawStyle property to increase options for how the embedded image is painted in its canvas area.

  • TwwRecordViewPanel - Fixed error in creating bindings for its embedded edit controls

  • TwwTrackBar - Now supports custom labels so that you can use the trackball to select a list of string values. See the new demo form TreeGridControls in the main demo which has an example of this.

Version - FirePowerX initial release

Version (4/28/2020)

  • Fixed Memory leak when using grid title button to sort or closing lookup combo's drop down list. 

  • TwwImageControl did not support filenames that were in numeric format.  Previously if the binder value was a number it assumed it represented an image index, and not a filename. Now if the Images imageList is unassigned it assumes it is still a filename

  • TwwComboEdit - The ItemIndex was not properly updated in some cases

  • Add TwwManager.Grid.DiscardChangesMessage property which is the message that the grid shows when cancelling changes (User escape key)

  • TwwLookupComboEdit's ListBox and TwwDataGrid- Cleaned up logic so mouse wheel scrolls view instead of simply moving the record position. This allows for a more smooth and instinctive feel to the user. To return to the old behavior, you can set the new property PaintOptions.MouseWheelScrollsRecord to false for the grid or DropDownGrid. For the dropdown list the vertical scroll bar up/down buttons will now scroll always instead of just when PaintOptions.LoadAllRecords is true.

  • TwwLookupComboEdit - In some cases the highlighted record in the dropdown list would disappear when moving through the list. The active record could also jump to the middle sometime when scrolling. This problem is fixed.

  • TwwLookupComboEdit and TwwCalendarEdit when attached to a time field: When embedded in the TwwDataGrid, the edit portion remained highlighted causing a confusing cell highlight with an inner selected text highlight. This problem is fixed.

  • TwwLookupComboEdit's dropdown height and width were not large enough when the scaling of the user's window setting was set to precisely at 125%. This was noticed when running in windows. This problem is fixed.

  • TwwRecordViewPanel - Cleaned up code when destroying auto-created controls

  • TwwLookupComboEdit - Cleaned up code in closeup to free created resources. This is avoid OSX64 random access violations when repeatedly dropping down the list.

Version (4/6/2020)

  • TwwRecordViewPanel - Android keyboard scrolling to bring edit control into view did not work when scaled. It also would fail to bring the edit control into view if the record view has already scrolled down. This problem is fixed.

Version (4/2/2020)

  • TwwLayoutGrid - Ignore invisible controls for tab stop purposes. Otherwise the user could enter tab to move out of a panel but the grid does not move to the first available control in the next panel.

Version (3/31/2020) - Requires RAD Studio 10.3.2 or 10.3.3

  • TwwDataGrid - When the grid is associated with a dataset that has only partially loaded its data, the grid will not load a new page of records if trying to drag the thumb downward at the bottom of the scrollbar. Now you can set the property PaintOptions.ThumbDragLoadsMoreRecords to true to enable this functionality.

  • TwwDataGrid - Could generate runtime error when displaying a column of type BCDField. This problem is fixed.

  • TwwDataGrid - Fixed issue with invisible grid causing access violation. This could happen since the grid internal handle is not yet created on events such as EditingChanged would fire.

  • TwwDataGrid - Master/Detail with lookup combo in detail grid could cause access violation since the lookup combo's grid handle does not get its style applied.

  • TwwRecordViewPanel could generate a design time error when adding display fields to a item of type lookup combo. This problem is fixed.

  • TwwDataGrid - Master/Detail could show blank row when expanded in some situations. This problem if fixed.

  • TwwExpander in TwwDataGrid - Display ampersands instead of using ampersand as an underline indicator

Version (3/1/2020) - Requires RAD Studio 10.3.2 or 10.3.3

  • TwwDataGrid - Master Detail Grid could have painting problems in some cases with PaintOptions.PaintEfficiency set to BufferRecords. This problem is fixed.

  • Removed dependency upon deprecated unit fmx.wwpickers.  This fixes issue with IDE error message when opening the FirePower package a 2nd time (yielded "This service is already loaded error message before)

  • TwwPlatformServices Email with attachment not previously working for newer Android devices. This problem is fixed.

Version (12/10/2019) - Requires RAD Studio Rio 10.3.2 or 10.3.3

  • TwwLookupComboEdit could yield access violation when closing up in OSX64 bit. This problem has been fixed by using a delayed timer to execute closeup operation after a mouse clicks in the dropdown list.

Version (11/22/2019) - Requires RAD Studio Rio 10.3.2 or 10.3.3

  • Support Android 64 for Delphi

  • TwwDataGrid - horizontal scrolling of footers would paint into the wrong column in some cases when fixed columns were used. This problem has been fixed.

  • TwwDataGrid - When embedding a TwwButton in a grid the text of the button was incorrect in some cases. This problem has been fixed.

  • TwwDataGrid - When using osx64 bit, clicking on a title button could yield an access violation in some cases during the sorting process. This problem has been fixed by using a delayed timer to execute the actions of the button.

  • TwwEdit - Fixed issue relating to resource cleanup could leave a dangling reference to internal background object in some rare instances (creating tab pages with reparenting of other forms).

  • In some rare cases grids inside a TwwExpander could cause an access violation (see above notes on TwwEdit)

Version (10/8/2019) - Requires RAD Studio Rio Update 2

  • TwwDataGrid - When embedding a drop-down combo in a column in the grid. the dropdown list was not scrollable on Android. This problem has been fixed.

  • TwwRecordViewPanel - The automatic scrolling to bring a control into view was not working (so it doesn't overlap keyboard) if the control being edited was near the bottom. This could happen with newer Android devices where virtual tool buttons would appear when the keyboard was shown so the keyboard overlap was not recognized.This problem is fixed.​

  • TwwLayoutGrid - In some instances the grid would recognize a click in the wrong position and could shift the grid up one row. Also fixed issue where active record panel could be shifted into wrong position in some cases.

  • TwwLayoutGrid - Support binding to TBooleanField - Previously treated boolean as string which does not cause any issues with display, but could cause issues when using custom drawing events and using the GetValue method.

Version (9/27/2019) - Requires RAD Studio Rio Update 2.

  • TwwLayoutGrid  - For desktop the dataset would not always be on the clicked record at the time of the  OnItemClick event. This problem is fixed.

Version (9/25/2019) - Requires RAD Studio Rio Update 2.

  • Fixed issue with IDE having FirePower components greyed out when using OSX64

  • Fixed Dbl-Click not firing for mobile and desktop in some cases

  • In some styles the enabling the checkbox in a TwwListBox could yield an access violation This problem is fixed.

  • When using OverrideStyleSetttings.BackColor, the TwwMemo background color's opacity changed to be consistent with TwwEdit. Previously the TwwMemo and TwwEdit had different default opacities causing it to be difficult to have a consistent background.

  • In some cases, the TwwLookupDialog could yield access violation when no columns were selected. Fixed.

  • First row could be painted to wrong internal canvas when dgindicator was disabled, causing the title text to be in the data row. This issue is fixed.

  • TwwLayoutGrid - OnCustomDrawControl event now fired for all controls in active record even when ReadOnly is false. Previously only when readonly was true would this event fire for all controls in the layout grid.

  • TwwLayoutGrid - When touch scrolling the bouncing at bottom was erratic in its display. The bounce should now be more consistent with the bounce at the first record.

Version 12.0.5 (8/14/2019) - Requires RAD Studio Rio Update 2. This version will not work with earlier versions.

  • Updated for RAD Studio Rio Update 2

  • Support for OSX 64 bit

  • Updated for FMXLinux to build Linux applications

  • TwwLayoutGrid - Fixed issue with active record being on wrong position if positioned through code before the grid is initialized.

Version (7/7/2019)

  • Fix access violation with TwwLayoutGrid in frame in some instances.

  • TwwLookupComboEdit did not update LookupValue when using incremental searching on an unbinded lookup combo. This problem is fixed. Also​ fixed issue with the dropdown always highlighting the record if if nothing selected.

Version (5/29/2019)

  • TwwAdvComboEdit - Fix memory leak

  • TwwDataGrid - OnExit not fired in some cases. This problem is fixed.

  • TwwListBox - Fix problem with recognizing selected records in some cases using the IsSelected method.

Version (3/22/2019)

  • TwwDataGrid - When using the TwwAdvComboEdit in the grid, the column associated may not match the grid colors in some cases. This would happen under certain styles where the comboedit style had multiple 'background' resources. This problem is fixed.

  • TwwDataGrid - Grid's internal RecNo could be wrong when the dataset applied a filter. The grid now detects this and avoids the problem of being in the wrong scroll position in some cases after a filter is applied.

  • TwwDataGrid - ImageControl tied to an ImageList would not show its image if the image was the active cell. This problem is fixed.

  • TwwDataGrid - Dbl-Click Col Sizing (Change size to be longest displayed width of column) was not working consistently. This problem is fixed.

  • TwwImageControl now supports binding to a floating field and not just integer fields when binding to an imagelist. Floating point numbers are rounded to the nearest integer to compute the imageindex.

  • Footer design slightly changed so that it is part of the content instead of the parent layout. This allows the footer to stay above the horzscrollbar where in some cases in the past it could be below the scrollbar.

Version (3/4/2019)

  • MainDemo now works for file sharing in Android. Previously would fail with sdk > 24.

  • TwwDataGrid - Avoid index out of range when resizing columns in a columnless grid.

Version (2/20/2019)

  • EmailAttachment Demo did not work with Android sdk greater than 24. The demo now works. Also updated library to accomodate sdk 24 or higher in this regard. Make sure that you update your Project Options Application.EntitlementList for Android so that SecureFileSharing is enabled.

  • TwwLayoutGrid : When having fewer records than can fit the layout grid, then it would not immediately recognize record insertions until the record was posted. This problem is fixed. Also support other styles in the embedded record panel besides just TRectangle.

  • TwwCalendarEdit - Added OnDropDown event

Version (2/7/2019)

  • Included missing image files for maindemo. Previously maindemo may not compile for Android due to missing splash images

  • Grid could through exception if sorted by column that is not in the grid's list of fields.  This problem is fixed.

Version (1/30/2019)

  • Fix bug when closing forms containing TwwLookupComboEdit as they could 'argument out of range' errors when closing the form.

  • Added SearchMethod and MatchType propertyiesto TwwLookupDialog. If you want filter as you type then set MatchType to sbfmtMatchAnywhere and SearchMethod to either sstUseFilterCode or sstUseFilterProp.

Version (1/15/2019)

  • Fix bug where TwwSearchBox failed to search on mobile devices.

Version 12.0.3 (1/10/2019)

  • Fix bug when using master/detail grid where the master record did not show its text

Version 12.0.2 (12/17/2018)

  • Fixed issue with access violation in some instances of using the TwwDataGrid

Version 12.0.1 (12/7/2018)

  • Fixed issue with TwwSwitch and not flushing changes when exiting control

Version 12.0.0 (11/28/2018)

  • Initial FirePower 12 release

Version 11.0.4 (8/30/2018)

  • TwwSwitch - When embedded in a grid with a custom image, it would paint erratically. This problem is fixed.

Version 11.0.3 (8/20/2018)

  • TwwLayoutGrid - In some instances an embedded TwwEdit would not return the correct value when a display format was assigned

  • TwwLayoutGrid with TwwImageControl - When bound to an integer field and used in a TFrame, the image was not displayed for the inactive rows. This problem is fixed. Also fixed issues with the image when bound to a integer field with a display format assigned. Any non-numeric characters could cause an exception (even at design time).

  • TwwLayoutGrid with TwwTrackBar - Inactive rows would not always display the value. 

  • TwwDataGrid in frame could cause memory leak when created dynamically. This problem is fixed.

Version 11.0.2 (7/25/2018)

  • TwwDataGrid - Add event OnColWidthChanged which fires when the end-user resizes a column with the mouse. Note that this event is not fired when changing pragmatically the column's Width property. This event is useful in cases where you wish to perform some action based on the user changing the width of a column.

  • TwwRecordViewPanel - Fixed issue with using the ControlAttributes.Combo.PickItemList property for one of the record view items. Previously the items editor would not come up.

  • TwwFilterDialog - Fixed memory leak when clearing an existing filter for a selected column.

  • TwwDataGrid - Embedded memos would clear text when carriage return was entered. This has been fixed and now carriage returns are inserted into the memo instead.

Version 11.0.0 (6/20/2018)

  • FirePower brings a host of enhancements regarding integration of images into the controls. 

  • TwwSwitch - In particular the switch controls support custom images so that you can use it to display more intuitive controls for your end-user. Image can come from ImageLists specified with either a reference to either ImageIndex or ImageName. Using ImageName is especially convenient so that your images are not dependent upon the order, but a more static reference such as the name of the image. Also support for custom effects and colors for each state of the image, such as checked, unchecked, or hot.

  • TwwSwitch – You can assign a GroupName to a collection of switches to create graphical and custom radio buttons.

  • TwwImageControl

    • Support for images defined and loaded from an ImageList instead of being assigned. This is more efficient in memory and loading if you have the same being used in multiple places. You can also refer to an ImageName from an ImageList instead of just an ImageIndex

    • Improved support for coloring the image with a selected color – See Effects.Color property

    • Now supports transparency when using effects. Previously you would lose transparency with some effects

  • TwwAdvancedComboEdit – Support for ImageLists, ImageName, multiple columns, and the ability to hide the text and just show the images in both the control and its dropdown list (See screenshot below). Hiding the text is useful if the graphical representation is sufficient information for the user.

  • TwwDataGrid and TwwLayoutGrid support for embedded custom switches.

  • Two complete demos (Delphi and C++ Builder) where one uses data from memory, and the other uses data from an sqlite database. The only difference is one unit (the data module) in the project. This shows how easy it is to change your application to use any data or backend by editing only one unit. 

Version 10.2.12 (4/30/2018)

  • TwwDataGrid - Hierarchical column headers in fixed columns would paint incorrectly when PaintOptions.HorzSmootScrolling was false.

  • TwwDataGrid - Fix issue when painting footers where right footer could overlap footers in fixed columns when the right footers were scrolled to the left.

  • Designers - Fixed issue with grid designer buttons being painted in non windows style.

  • Improved Support for field types of TSQLTimeStampField in TwwCalendarEdit and TwwDataGrid. Also fixed issue where dates were not displayed in the grid if the ShortDateFormat contained a space.


Version 10.2.11 (4/17/2018)

  • TwwLayoutGrid - Support TextPrompt for edit controls for non active records.

  • TwwCalendarEdit - Update binding for database when closed up instead of waiting for control to exit

  • TwwEdit - Updates to data in database are now reflected immediately. Also addressed issues with text changes being lost in some cases when losing focus.

  • New demo GridDragDrop to show drag and drop of records in the grid

Version 10.2.10 (3/29/2018)

  • TwwLayoutGrid - Added method ScrollCurrentToTop which allows you to change the row the current record should be on. This is useful if you need to reposition the record if you are bringing up a virtual keyboard on a mobile device.

  • TwwLayoutGrid and TwwDataGrid - If Alt key is pressed, then ignore keyboard navigation key. Assume developer has other intent if these keys are pressed.

  • TwwDataGrid - Support display of ampersands in grid. Previously would not show ampersands.

  • TwwLayoutGrid and TwwDataGrid - Support customizable message in grid for confirmation of Deletion of Record with Ctrl-Delete. Use the TwwManager.Grid.DeleteRecordMessage to customize.

  • TwwEdit - Escape not restoring original text before editing in some situations. This problem is fixed.

Version 10.2.9 (3/15/2018) - Strongly recommend using RAD Studio 10.2.3 with this and later versions

  • Added BindingsActive property to TwwRecordViewPanel to allow you to turn off updating of the controls. For instance, you may wish to do this to allow your other controls to paint more efficiently when the recordview is not on a visible tab page. See online help BindingsActive property for more information.

  • Main Demo updated to use tab page animations for Android. Previously this was disabled due to earlier bug in Tokyo 10.2 which is resolved in RAD Studio 10.2.3. If you have an earlier version of RAD Studio than 10.2.3, then the updated demo will not run in Android for you.

  • TwwLayoutGrid - Support DisplayFormat property of embedded TwwEdits. Previously the LayoutGrid would only support DisplayFormat through the TField in the dataset and would ignore the DisplayFormat property.​

  • TwwDataGrid - Fixed bug relating to periodic access violation relating to repeated clicks on the title button to sort when using PaintOptions.HorzSmoothScrolling

  • TwwListBox - Fixed access violation in some instances when no records were in the listbox.

  • iOS Linker error fixed. Dependency upon file MessageUI removed. 

Version 10.2.8 (3/1/2018)

  • C++ Builder Demos now include all the Delphi main demo functionality. Previously was not updated since FirePower 7

  • Fix painting bug in ListBox and TwwLayoutGrid with PaintOptions.PaintEfficiency set to LoadAllRecords where the active row was not repainted after a click when moving past the first page of records.

Version 10.2.6 (2/7/2018)​

  • TwwSearchBox - Fixed bug relating to filtering on Android devices. Also added method ApplyFilter which reapplies the currently active filter. This could be useful if you modify the underlying dateset/query and need to reapply the user's filter criteria.

  • TwwDataGrid - In some instances (using adapters) the grid's internally active row was wrong when a form first comes up causing the previous active row to not repaint when moving to a new row. This problem is fixed.

Version 10.2.5 (2/1/2018)

  • TwwDataGrid - Add event OnCreateTitleButton so that you can perform some custom code when the title button is created. For instance, you may wish to assign an image using the button's ImageIndex property.

  • TwwCustomEdit and inherited controls such as TwwColorComboEdit now recognize TLargeIntField as integer type. Previously this type was not recognized.

  • Combo controls now update the binding value after they are closed up

  • TwwLayoutGrid - Support sgiLeft, sgiRight switch gestures if you wish to perform some custom action such as deleting the current record. For instance, the following code would delete the swiped record using the OnGesture event. You may also wish to include a dialog to confirm the deleting.


procedure TMainDemoForm.lgDemoGesture(Sender: TObject;

  const EventInfo: TGestureEventInfo; var Handled: Boolean);


  saveTopRecNo: integer;

  lg: TwwLayoutGrid;


 if EventInfo.GestureID = sgiLeft then


   lg:= TwwLayoutGrid(Sender);

   SaveTopRecNo:= lg.TopRecNo;

   lg.DataRecNo:= lg.TopRecNo + lg.MouseDownRecNo;


   lg.TopRecNo:= SaveTopRecNo;

   Handled:= true;



Version 10.2.4 (12/28/2017)

  • Fix issues with RAD Studio 10.2.2 and FirePower relating to Android programs. In particular removed demo code with tab transitions (currently hang in 10.2.2 for Android) and TwwLookupDialog runtime errors. Also fixed Android TwwDataGrid editing issue when going into edit mode where text could be reset.

  • TwwLayoutGrid - Now supports embedded TwwCalendarEdit, TwwComboEdit. Previously could show some ghost text in the display

  • TwwImageControl - Now can bind to a string database field containing a numeric representing the image index to use from an imagelist. Previously if the data type was a string, it always used the value as a filename to load. It still will if the value contains alpha characters

  • TwwLayoutGrid - Properly support display of active record when UseSmallScrollBars. Previously when readonly=false the active record would overlap the scrollbars

Version 10.2.3 (12/1/2017)

  • TwwLayoutGrid - Fix font size not being respected when using embedded TwwEdit with its OverrideStyleSettings assigned.

Version 10.2.2 (11/15/2017)

  • TwwLookupDialog now returns false if user closes the dialog with the form x icon

  • New event OnCreateDialog which fires earlier than the OnInitDialog. You can set form properties such as Position BorderIcons here. Using the OnInitDialog event could cause a flicker for these properties.


Version 10.2.1  (11/8/2017)

  • Fixed Trackbar Ticks display in original 10.2 which would previously only show up if the transparent property was true. Also fixed auto-alignment of trackbar when resizing and two thumb non-bitmap dragging problems.

  • TwwTrackBar/TwwTrackBarPanel - New Components. Support multiple thumbs, inverted display, tick marks, labels, custom styles, and custom thumbs. Also bindable to both integer and float fields. The TwwTrackBar is also embeddable in the FirePower Grids.

  • TwwListBox - Support background images

  • TwwEdit - Fix bug with not being able to clear numeric fields

  • TwwDataGrid - Support Options.dgRowResize at runtime to allow the user to resize the columns. This can be useful if some long text is partially visible and they wish to resize the rows to see the text. Note that dgRowReszie will resize the default row height so all rows are effected.

  • TwwLookupComboEdit - Fix bug specific to RAD Studio 10.2 Tokyo with Android that would cause an access violation to occur if the keyboard was open prior to bringing up the lookup dialog. Also fixed issue on mobile devices where a DataSource's OnChanged did not fire after selecting a new value from the list.

  • TwwCalendarEdit - Fix bug specific to Desktop devices when using the default Style that would cause the drop down picker to not update the month's display of days after changing the month or year in the popup.

Version 10.1.7 (10/8/2017)

  • TwwDataGrid - Fixed issue with footers not painted correctly in some instances when the horizontal scroll bar is shown.

  • TwwDataGrid - Added column property TitleAlign to allow individual column customization of the title's alignment

Version 10.1.6 (9/29/2017)

  • TwwLayoutGrid/TwwDataGrid - In some rare instances on android devices, the app could freeze when scrolling at the bottom when PaintOptions.BounceAtLimits is true. This problem is fixed.

  • TwwLayoutGrid - When scrolling a multi dimensional TwwLayoutGrid with the scrollbar, it could fail to advance to the end of the data if the bottom row was not completely filled with records. This problem is fixed.

  • TwwRecordViewPanel - Fixed issue with virtual keyboard hiding the edit control when it is being edited. This problem only existed for RAD Studio 10.2 Tokyo for Android devices.

Version 10.1.5 (9/25/2017)

  • TwwLayoutGrid - Support embedded TGridPanelLayout to provide further layout customization for each record.

  • TwwLayoutGrid - When used in multi-dimensional mode (RowCount>1 and ColCount>1), the lines around the record were not painted if the ReadOnly property was false. This problem is fixed.

  • TwwLayoutGrid - Fixed problem when clicking on the bottom of the grid to move to a new record could cause the wrong row to be selected. This problem occurs only in multi-dimensional mode with ReadOnly=false.

  • TwwRecordViewPanel - Fixed problem with Horizontal Layout not respecting the ItemType of <NewLine>. 

  • TwwRecordViewPanel - Fixed problem with ControlType of gdctButton not working

  • TwwDataGrid - Fixed problem with a non visible group title button was being painted in the wrong position in some cases when scrolling to the right and then back to the left column.

  • TwwDataGrid - Improved support for HintType when using OnCalcHint event. You can now use the GetValue method of the parameter ACellHintInfo to retrieve the values of the current row's data.

  • TwwCalendarEdit - Now supports time picker on mobile devices when configured to edit times

Version 10.1.4 (9/16/2017)

  • TwwRecordViewPanel - Made public RecordView's Tab method 

  • TwwDataGrid - Added HintType property to support cell/row/column level hints. Use the OnCalcHint event to customize the hint that is displayed.

  • TwwDataGrid - Fixed bug relating to rows being painted wrong for fixed columns with dgAlternatingRowFixed.

  • TwwLayoutGrid - When PaintOptions.PaintEfficiency is set the BufferRecord, the grid would still paint the row lines even if there was no data. This problem is fixed. 

Version 10.1.3 (8/18/2017)

  • TwwDataGrid - Fixed issue when using horizontal smooth scrolling where the first column could be duplicated when clicking on a new row if you have already horizontally scrolled to the right

  • TwwDataGrid - Fixed issue when hiding data column lines where the background painting did not fill the line portion.

  • TwwDataGrid - Sort icon now defined in TwwManager

Version 10.1.2 (8/8/2017)

  • Supports FMXLinux to build Linux applications - Must be using RAD Studio 10.2 Release 1 and FMXLinux.

  • To see an example of a FirePower Linux app, see the bottom of the FirePower page.

  • TwwDataGrid - Fix case where VScrollBar was referenced before it was created causing access violation. Also fixed case when destroying form, the grid could yield an access violation 

  • TwwDataGrid - Padding of last column using Options.dgPadLastColumn was too large which could cause horizontal scrollbar to appear.

  • TwwDataGrid - Fixed issue with Title buttons not being drawn correctly in some instances.

Version 10.1.1 (Update 1 - 6/12/2017)​

  • We strongly encourage you to build and run the updated MainDemo to see some of the new features in action.

  • New component TwwButton which supports buttons with custom colors and lines and rounded corners. Also can be used in the flexible TwwLayoutGrid.

  • New Effects property for TwwImageControl  - Supports brightness, color, tinting, and more. Can be used as background object for LayoutGrid for a 1stClass polished application. See updated MainDemo - ImageDemo which shows these new capabilities in action. 

  • TwwLayoutGrid design enhancements to support complete WYSIWYG during design time. You can drag/drop controls and you'll see exactly how it looks without having to run your application. To enable WYSIWYG, right click on the component and select WYSIWYG. Then continue to design your look and it will continuously update as you modify your layout. Note that you must have it connected to data with more than one item or you won't notice any change in the IDE. For an example of this, open up MainDemo | LG_TransparentAndWysiwygCars

  • TwwLayoutGrid now groups child controls together in the IDE object structure window. Previously child controls of the TwwLayoutGrid would show up under the form making it difficult to see all the controls that are embedded in the LayoutGrid at a glance. They now appear under the LayoutGrid's Panel for ease of locating all your embedded controls.

  • TwwLayoutGrid can now be resized at design time by resizing the panel with the mouse. 

  • TwwLayoutGrid can be used directly with a TPrototypeBindSource without requiring an Adapter. Just define your fields in the TPrototypeBindSource, and then you can add your layout items with code using the new Data property.  See MainDemoUnit.pas in the MainDemo for an example of using the Data property.

  • Improved support for multi-device support by allowing component renames for parent controls with named child controls. Previously renaming the parent control would cause issues when you already had multiple devices in your form configuration. 

  • TwwImageControl can now find its image from an ImageList. You can also live bind it with an integer value when its Images property is set. The value will be treated as an ImageIndex to lookup the ImageList.

  • See the new tutorial coming soon on the Youtube channel for details on how to use the new TwwLayoutGrid functionality.

  • TwwRecordViewPanel - Supports background images

  • TwwRecordViewPanel - Now supports transparency, custom backgrounds, header text and shading, and unbound columns without requiring a datasource. See MainDemo - ImageDemo for an example of using the record view as a general control for manipulating user options.

  • TwwRecordViewPanel - Fixed IDE issue under 10.2 Tokyo where it could yield an access violation in some scenarios.

  • TwwDataGrid - Fixed exception in startup under Tokyo 10.2 in some styled configurations 


Version 10.0.7​

  • TwwListBox design enhancements to reflect text attribute changes immediately. Improved support for pre-defined templates.

  • TwwCalendarEdit - Allow two calendar edits to edit single field (one for date, and one for time)

Version 10.0.6

  • TwwDataGrid - Fixed ColumnByIndex method using wrong parameter. Could cause access violations when title is clicked in some configurations.

  • TwwCalendarEdit now supports being bound to numeric fields instead of just date and time fields

Version 10.0.5

  • New Email with Attachment functionality - Send emails with attachments for iOS, Android, and Windows/Outlook. Includes both Pascal and C++ demos. To run the demo in iOS, please see the online help on wwEmail.

  • New Demo - Show how to load remote images without blocking the main thread.  You can smoothly scroll the TwwLayoutGrid even when the images are still loading in the background.

  • Fixed issue for TwwAdvComboEdit where ItemIndex stored at design time did not properly update StoredText property when loading form.

Version 10.0.4

  • TwwDataGrid -Refresh paint on changing record count. Fixed issue when have no records in dataset and not allowing editors to become active

Version 10.0.3

  • New feature: No longer require DataSource in TwwRecordViewPanel - You can now use this control more generally to configure forms for user settings, project options, etc.

  • Initial Tokyo Build - Note: If building for Android, we recommend using the RAD Studio 10.1 Berlin version of FirePower 10 as the FireMonkey library has some outstanding issues with regards to Android. See Quality Control at Embarcadero for more info.


Version 10.0.2

  • Fixed issues with TwwRecordViewPanel not recognizing tab in some cases when advancing to the next combo edit control

  • Fixed issues when in TwwCalendarEdit not recognizing alternate date formats including the 'mmm' month format (Jan, Feb, etc.)

  • Fixed a form in the MainDemo which failed with an alternate date format.

  • Fixed an issue where the ColorComboEdit would not show some or any of the colors in the dropdown list

Version 10.0.1 - Initial (See New features in OverviewFirePower document on FirePower info page)

bottom of page