Product

Exchanging messages between processes

4D v15 R5 introduces a new, simple and powerful way to exchange information between processes and also between processes and forms. This feature is based upon an asynchronous messaging system that allows processes and forms to be called and asked to execute methods with parameters in their own context.

Product 4D View Pro: Variable Row Height in Listbox

4D View Pro – Variable Row Height in Listbox

Displaying a list where the line height would exactly fit the content is a very common need. 4D View Pro is including a new feature so that you can now control the height of each row independently in a listbox to make it fit to its content. To know more about 4D View Pro, check out this blog post.

There are actually now two ways to define the row height in a listbox:

  • using new dedicated commands
  • using a new control array
Product Listbox resizing

Listbox – columns AUTO resizing !

4D v16 includes a new feature providing your end-user great freedom and flexibility at the interface level when using list boxes. The constraints defined for each column are now fully applied and respected when the list box they belong to is resized.

Product

New commands to save and restore print settings

This feature allows users to save and restore print settings (even those that cannot be set using 4D Get print option and SET PRINT OPTION commands) quickly and efficiently, whether on Windows or Mac OS in both 32 and 64 bits environments.

Office printers supports a large set of features, duplex, staple, punch, watermark, ink saving, color calibration, just a name some. The new commands BLOB to print settings and Print settings to BLOB supports to save and restore the whole set of information available via printer dialogs, allowing fully automatic (and faceless) print jobs.

Product

Execute action upon listbox column resizing

The event On Column Resize is now triggered “live” during the resizing of the list boxes as long as the user modifies the column widths (previously, it was generated only once, at the end of the resizing).

Thanks to this feature, 4D programmers will have the opportunity to create live and responsive interfaces based on the actual width of columns!

Product

Go further with Object fields

Object fields introduced with v15 allows unstructured data bases, similar to schemaless database (NoSQL). 4D v16 goes a big step further. Get a dynamic structure for unstructured data… Confused?

Imagine you use an object field to allow your customers to store custom data, where they can create their own fields. This works well and is one of the most interesting reasons for using an object field. The problem is, how to allow your customer to query this unstructured data? You don’t know which ‘fields’ they used, you cannot build a query editor on top or offer a drop down with used values.

Product

Use Unicode for texts in forms

In 4D v16 the texts for all the form objects (static texts, buttons, check boxes, etc…) will be stored in Unicode, allowing you to use characters from different languages directly in the form editor.

Especially for Asian or Eastern European languages this will ease the development process.

Product New syntax for 4D tags

New syntax available for 4D Tags!

A powerful new syntax is available for 4D tags inside texts and Blobs to be processed.

This new syntax is supported in two cases:

  • files with “.shtml” extensions served by 4D Web Server
  • Text and Blobs sent as parameters to the PROCESS 4D TAGS command

The new syntax is available for three tags, 4DEVAL, 4DTEXT and 4DHTML, which can now be written prefixed with a $ (dollar sign) rather than as HTML comments.