After some months of intensive work, we are happy to announce the final release of DGH 2.5. This version is fully compatible with LiveCode 8.x and 9.x, however due to the introduction of Widgets inside DGH, the version 2.5 is not working with LC 7.x and below. However in this case you can continue to use DGH 2.1.

In this DGH 2.5 version we have made numerous changes. Some of them are just cosmetics, but our main work in this version was to introduce new features such as:

  • Properties for dg2 are now available.
  • Data grid form: the templates introduced by dg2 are available.
  • Form template: a new popup menu allows to choose whether to customize the classical row template or the new templates introduced by dg2.
  • Widget controls are now supported.
  • Now possible to customize the data grid table headers with controls (image, svg widget, checkbox), including the use of a svg icon for replacing the sort icons.
  • Column calculation (formula and grand total).
  • Spreadsheet behaviors: edit cell in one click, move through cells by using keyboard
  • Now possible to define action buttons or fields.
  • New search/find features available for forms and tables.


For more informations about DGH, how to purchase it or to upgrade to 2.5, please follow this link:

About DataGrid Helper (DGH) 2.5

And for a good preview of all the features and possibilities of DGH 2.5, please read our documention. Thanks to James Hale for his kind and great help with it:

Download the User Guide


The past three months we have worked on a new version of DGH, including lot of new features, changes, improvements and support for the LiveCode Widgets and dg2 features.
More than screenshots, we are rendering the documentation available to share with you how many cool stuffs we have in this major version, from adding formulae to a datagrid to custom its header in few clicks.

Before to release it we are looking for some testers to validate it outside of our development environment. If you are interest in helping us, feel free to contact me!

dgh readyfordg2         dgh supportwidgets

How do I Create Several Columns At A Time?

How Do I Change The Sort Arrow Icon Of My Datagrid?

How Do I Define A Button To Be Used As An Action Script?

 How Do I Prepare My DataGrid Form for Search And Find Script?

How Do I Use Formulae For Basic Calculation Inside My DataGrid?

How Do I Use Grand Total Functions?

 How Do I Create A Column With A Multiline Header?

How Do I Create A Custom Header With A CheckBox?

How Do I Create A Column Using A SVG Icon Widget As A Sort Icon?

How Do I Change The Templates For Swipe And Reorder Actions?

How Do I Use Widgets In The DGH's Template Area?

If you are waiting for new progresses about the XLSX Lib, you may have noticed I moved my free time to the Google Calendar Lib.


My goal is to be capable to use the Google Drive API to save a xlsx file to other formats such as pdf and to include this feature in the XLSX Library.

As I had  no knowledge in using LiveCode for dealing with REST API and OAUTH 2.0, but some knowledge with the Google Calendar API, anyway, I started with the Google API I was the more confortable. This could result in creating a simple stack with some quick handlers. However, I must confess when I'm studying something I'm studying it the deeper and the more seriously possible. And the best way I know for reaching the goal is to not work just for me but with the scope to have others developpers using it. This is requiring more attention in each detail and more exigences when writting code. As an humble LiveCode hobbyist this is how I want to write my code and I hope the final users of my products can appreciate it.

I'm just playing with a big construction game. I'm starting to build each pieces patiently and this is only when I'm assembling all the pieces together than you can see what my construction looks like.

So be patient, all the pieces are coming.

Last week I started an exercise for testing the LiveCode 8 REST capabilities. The result of this exercise is a Google Calendar Library I still working on.

At this moment we can deal with OAUTH 2.0, create, update and delete a calendar, get the calendars list and create new events.

The "In progress" section is updated if you want to follow where we are with this project.

We are actually working on a prototype capable of dealing with xlsx files directly without the need of the MS Excel application.

The main advantage is to work with xlsx in all existing plateformes (web, desktop, mobile) with no more application than LiveCode. As another advantage, other applications such as Open Office, would be capable to open xslx files, so we will not be restricted to MS Excel only.

In the other hand, warning the developer something is wrong in the file is more difficult than when the file is created and so controlled on the fly by MS Excel. For example the Excel Lib in its actual form is capable to return an error when a formula is wrong because the formula is interpreted on the fly by MS Excel during the building of the worksheet. Working with the xlsx file structure is low level, so some errors will be returned only when MS Excel will interpreted the file once one opening it. Debugging the creation of a complex workbook would quickly become a challenge or a nightmare.

The Excel Library 1.4.0 Commecial version is now released.

This version includes 4 new commands and 2 functions.

  • XCEL_FormatCondition_Count: Counts the number of format conditions attached to a range.
  • XCEL_FormatCondition_New: Creates a new format condition linked to a range.
  • XCEL_FormatCondition_Delete: Deletes a format condition.
  • XCEL_FormatCondition_Property_Set: Sets one of the format condition properties.
  • XCEL_Application_Path_Set (Macintosh only) Allows the possibility to define the full path of the MS Excel application to control. Useful if several versions of MS Excel are installed on the computer.
  • XCEL_Range_HyperLink_Address_Get: Returns the address of the first hyperlink attached to the specified cell.

Some changes:

  • The Excel VB or AS codes is no longer compressed in the custom properties for avoiding a crossplatform problem.
  • A description for the XCEL_Range_Rect_Get function has been added in the documentation.
  • In the documentation we have now a new "Parameters" button. This button allows to set the path of the MS Excel application to use with the documentation. The selected path is stored  in a preferences file, outside of the documentation.

And fixes:

  • Quotes in formulas could cause the XCEL_Range_Formula_Set command was not working properly on windows, with no error returned in 'the result'.
  • Quotes could cause errors with the XCEL_Range_Values_Get function (Macintosh)


Library registred's Users can download the new version in the Commercial section of the website.

The Data Grid Helper 2.1.0 version released in March, is compatible with LC 8.x

1. New features:

- Addition of a "Contents" button in the "Content" topic allowing edition of the selected datagrid's content.

DGH Data_preview

- The cloning (mimestim) feature is fully rewritten. New options are now available for deciding what part of the datagrid is to clone amongs "Properties", "Column properties", "Columns" or "Templates".

DGH new clone palette

2. Changes:

The iOS scroller script supports iOS and Android.


If you are a registred user, you can download the newest DGH version by using the DGH's updater. The updater is located in the DGH's preferences window.

In this new version we have:


Addition of 6 new commands and 1 function:

  • XCEL_Sheet_Visible_Set: sets the visibility of a worksheet.
  • XCEL_Sheet_Visible_Get
  • XCEL_PivotTable_New_FromSQL: creates a new Pivot Table linked to a SQL query (Windows only)
  • XCEL_PivotTable_Slicer_New: creates a new slicer for a Pivot Table (Windows only)
  • XCEL_PivotTable_Slicer_Activate: activates or deactives a slicer item. (Windows only)
  • XCEL_PivotTable_Slicer_Style_Set: sets the slicer style (color). (Windows only)
  • XCEL_PivotTable_Slicer_Delete: deletes a slicer. (Windows only)



Command XCEL_Range_Values_Set for Windows is now properly working if the data to inject in a range is containing quotes.

What we have in this new version?


1. Addition of 7 new commands and 2 functions

- XCEL_Sheet_Sort: allows to sort the content of a range, by columns or by rows

- XCEL_PivotTable_Fld_AutoSort: allows to sort a pivot table by one of its data field.

- XCEL_Shape_New: allows the creation of MS Excel autoshapes. Arrows (right, left, top and bottom), braces (left and right) and brackets (left and right) are supported. These 8 shapes seems to be the more useful for creating profesionnal looking effects. Other kind of shapes would be added on request.

XCEL Report_Preview

- XCEL_Shape_Style_Set: presets style are supported. For arrows: presets "shape 1" to "shape 42" and for brackets and braces, presets "line 1" to "line 20".

- XCEL_Row_Property_Set: 2 properties are opened for rows and columns: "Outline level" allows to group rows or columns into different levels. "Show detail" allows to collapse or to expand a group.

XCEL Preview_Group
- XCEL_Row_Property_Get

- XCEL_Column_Property_Set

- XCEL_Column_Property_Get

- XCEL_Chart_Style_Set: allows control of the 48 styles available for every charts.

XCEL Charts_Preview

2. Changes:

- The old command XCEL_Shape_New is renamed XCEL_Shape_NewPicture.

- Command XCEL_Range_Values_Set for Windows has been improved. Should be at least 10 times faster than the previous version. The command is particulary improved for large data.

- Some properties for Mac and Windows are now stored in custom properties instead of residing in the code. The others properties will be migrated in custom properties in futures versions.


3. Fixes:

- On WIndows the Function XCEL_Range_Rect_Get was not properly returning the range rect if the regional decimal parameter is a comma.

- XCEL_Sheet_View_Set and XCEL_Sheet_View_Get. Managing views by sheet was planed but the sheet parameter was missing in the AS and VB scripts. This was resulting in a error when calling the commands.

- Fixed a typo in the error returned by the _CheckForValidRange private command.

The Intellisense Plugin is now available in the download section!

This is the result of a challenge I made with myself: how to have a window displaying a contextual list on the top of the script editor, but without changing any code in the editor?
The first version of the plugin was released with the Excel Lib Commercial version to help coding with the now, more than 200 commands, we have in the Library.

At this moment, the plugin is capable to auto-complete the word being in edition in the script editor window. Type the begining of the keyword, wait for the 3 dots mark and hit the tab key. Then the plugin displays a list of proposals or it "autocompletes" the word if it exists only one possibility.

The dictionary of possible keywords is composed by:

  • the LC commands
  • the LC functions
  • the LC properties
  • the LC messages
  • the datagrid library
  • the Libraries in use

We have a color for the LC keywords (blue) and a color for the libraries keywords (green). In a future version these colors will be customizable.
We have also an icon by family keywords (commands, functions, etc), to be able to quickly identify the keyword kind.

Here is an example of possible Messages when the keyword start by: "preop"

IP Preopen


We can navigate through the list by hitting the up and down keyboard keys, or clicking on the list to choose a keyword. Press the return key for validating the choose, or press esc for closing the list.

The plugin is also the good companion for finding the command you have read somewhere, but you don't remember the exact writing. Instead of searching in the doc, you can start the word by "?" and the plugin will help you. An example with searching the "column" keywords for coding with the datagrid object:

IP Searchingcontains


The plugin is refreshing its dictionary every time we are adding or removing a library (stacks in use), and have been tested with libraries such as SQL Yoga, Animation Engine and our Excel Library.

In future versions, more contexts detection will be added. For example it will be possible to have:

  • a filtered list of keywords (the previous word is "on" or "command" or "pass" or "exit", so the list is only containing "Messages" keywords)
  • the list of declared variables in the dictionary.


The plugin is quite experimental and not perfect, but I'm using it all the time and I'm really happy with it. I done some recent improvements and I decided to share the result with the community.
Any comments or suggestions, welcome.