Feature: A grab bag of new features

The screens sidebar can now be resized, line breaks can be inserted into formulas, sliders work better on touch screens and you get more disk space for images. Our latest release is full of minor features such as these.

Our new release contains major new features, but also many minor ones, that aren’t significant enough to warrant a blog post of their own. This page collects these smaller improvements.

The screens sidebar can now become wider

The screens sidebar lists all your screens and allows you to reorder them. For large apps in particular, it acts as an overview of your app, allowing you to quickly move from one screen to another.

The only problem was that it wasn’t resizable. Long screen labels would get truncated, and some deeply nested screens would barely be visible.

You can now easily resize the sidebar by pressing the button:

The screens sidebar, which is now resizable

There are three widths. Press the button to toggle to the next-larger width, or back to the standard size if the maximum width is selected.

Better sliders for your apps

Sliders can be enabled for number fields by toggling the appropriate option in the inspector, and allow your users to change a value by moving a handle:

Sliders in an app

Sliders could be hard to use on touch screens, though. Specifically, sliders would inhibit the vertical motion used for scrolling, preventing that from happening. This would happen even if the user was sliding vertically and not horizontally.

One solution was to start the scroll motion outside of sliders, but that was an issue for apps where most fields had sliders.

Now, sliders behave more like standard sliders on iOS and Android in that they expect you to scroll horizontally for some distance before they assume that you’re trying to manipulate the handle of the slider. That means that if you want to scroll vertically, sliders are much less likely to interfere with that motion.

Insert line breaks in formulas

You can now insert line breaks in formulas by pressing Alt+Enter. This is useful when you want to enter line breaks in literal text strings (text within quotation marks). Previously, the only way to do this was to use the NEWLINE function (or to type CHAR(10)CHAR(10)).

Outside of literal text, line breaks make no difference to Calcapp, but you’re welcome to use them if you think they make your formula easier to read and edit.

With the introduction of templates, you may not find yourself needing this feature as much as you otherwise would have. When you edit a template, simply press Enter to insert a line break (which will also cause a line break to be inserted into the corresponding formula).

Here’s a user editing the Body property of an email report button, illustrating both a template and a formula with line breaks:

Editing the Body property of an email report button

Easily check multiple items in the app designer

Previously, if you wanted to check a range of items in Calcapp Creator (say, Field1 through Field20), you had to individually click their check boxes.

Calcapp Creator tried to ease this process by checking or unchecking all items of a form group for you when you checked or unchecked the form group, but this sometimes interfered with what you were trying to do.

Now, you can check or uncheck ranges of items simply by pressing and holding the Shift key. Check boxes next to form groups no longer try to check or uncheck the items of the form groups when Shift is held.

If you like to edit your apps on a device without a physical keyboard (like a tablet or a cell phone), you need to press a new toggle button in the toolbar instead:

Checking or unchecking multiple items using a button

Determine if a field is persistent from a formula

Persistent fields retain their values, even when your users close your app and open it again. Make a field persistent by toggling the Remember value property in the inspector.

This property still does not allow you to associate a formula with it. However, you can now determine if a field is persistent from a formula, by accessing the new read-only Persistent property.

This action formula resets all fields of the app which are not persistent:

Reset buttons can be instructed not to reset persistent fields. By introducing this new property, the RESET action function can perform the same feat, in conjunction with the FILTER function.

Access the name of an item from a formula

All items now feature a new read-only property, Name, including all fields and buttons.

Names can be assigned manually in Calcapp Creator, but are usually assigned automatically based on the label. When you update the label, the name is by default also updated, as well as all formulas that reference the item.

You assign names manually simply by writing a new name in the name field:

Assigning a name to a field manually

In the image above, the first field would ordinarily have been named HorizontalCoordinate (based on the label, with no spaces), which is quite wordy. Above, we have renamed the field X, which makes formulas much shorter.

To make the name follow the label once more, just select the name and remove it (press Delete or Backspace).

You can now access the name of an item from a formula, making this formula always return TRUE:

Field1.Name = "Field"Field1,Name = "Field"

While that’s not terribly useful, it becomes useful in conjunction with the new Items property of form groups, form screens and the app itself (along with related properties, like Fields), along with the FILTER function.

This formula returns the sum of all fields of FormGroup1, whose names start with “Credit”:

SUM(FILTER(FormGroup1.Items, STARTSWITH(FormGroup1.Fields.Name, "Credit")))SUM(FILTER(FormGroup1,Items; STARTSWITH(FormGroup1,Fields,Name; "Credit")))

If you devise a naming scheme for your fields, this can be a useful way of targeting just a selection of them.

These are some of the other functions, besides STARTSWITH, that you may find useful when determining which names to include:

Access the current item from a formula

In most formulas, you can now write Item to reference the current field, button, text box, form group or navigator that is associated with the current property.

For instance, if the following Valid formulas are associated with Field1, both are equivalent:

(Field1 > 10) && (Field1 < 20)(Field1 > 10) && (Field1 < 20)
(Item > 10) && (Item < 20)(Item > 10) && (Item < 20)

Item is equivalent to named item references like Field1, meaning that it is a reference to the item as a whole, and not just, say, a field value. That means that you can access properties off Item, by writing something like Item.VisibleItem,Visible in a formula.

This feature is primarily useful when you want many items to share the same formula. This topic is explored in-depth here.

New design when creating a new screen

We were never fans of the crude icon design we put together for the screen that appears when you create a new screen:

The old screen appearing when you create a new screen

This vestige of the past has now been replaced with this new design:

The updated screen appearing when you create a new screen

No more cell phone previews

The cell phone previews from the app preview sidebar of Calcapp Creator have been removed. As you may recall, you were presented with a list of cell phone models, and selecting one would cause the preview to be resized to approximately match the selected model.

This feature was designed at a time when there was a lot of variability between different cell phone models, in terms of their screen sizes. Nowadays, cell phones tend to come with large screens no matter what model you choose, making this feature a lot less relevant.

Also, we struggled to keep the list up-to-date with new models, making Calcapp Creator look unnecessarily dated. (The oldest iPhone model we supported was an iPhone 5 from 2012 and the newest iPhone model was the iPhone X from 2017.)

Instead of updating the list, we hereby banish this feature to the dustbin of history.

More space for images

The total space for images, per customer, used to be 200 MB. For image-heavy apps, that proved too little. Every customer now has access to 1024 MB (one gigabyte) of storage.

« Feature: Use LET to avoid repetition in formulas Feature: Edit formulas of multiple items at the same time »