Our next release will finally bring a comprehensive copy and paste solution to Calcapp Creator, one that will enable you to cut, copy and paste panels as well as fields, groups, buttons, list panel options and text boxes. We think that having this feature will enable apps to be built that simply could not be practically built before.
Imagine an app for a company with a hundred products, where the product is selected from a list panel and where each option leads to a calculation panel. Every calculation panel is fairly complex, but most calculation panels look alike and differ in terms of their calculations. Building such an app without copy and paste support is an exercise in frustration, as every calculation panel needs to be built from scratch.
Also, what if this app is built, but the company later decides to add a welcome screen? As things stand, the app must be rebuilt from the ground up, as new panels can only be made to follow existing panels, they cannot be inserted before panels.
This release tackles these problems from a number of directions, meaning that you may not need the new copy and paste support after all. Panels can be inserted before other panels thanks to a new feature accessible in the panel menu (reachable from the button next to the panel title). Panels can be rearranged using the new Panels sidebar.
There are certain panel structures that are hard or impossible to attain with the Panels sidebar, though, and for those situations you need to cut or copy panels and paste them in the desired spot. Also, if you want to copy panels or fields from one app to another, the new copy and paste feature is the only way to do so.
(Did you know that you can work in two apps at the same time with Calcapp Creator? Just open two tabs or windows in your web browser, navigate to Calcapp Creator and open your apps. We recommend snapping one Calcapp Creator window to the left-hand side of the screen and the other window to the right-hand of the screen, so you can work with them at the same time. Modern operating systems make this easy: here are instructions for Windows, macOS, Linux GNOME and Ubuntu.)
Copying and pasting fields and other items
To cut or copy a field or another item (such as a button or a text box) to the clipboard, check the desired items and press the Cut or Copy button in the panel toolbar:
Then, navigate to the panel where you want to insert the items, select the item under which the items should be pasted and press the new Paste button:
In the image above, also note that pasted items are automatically given names that are not in conflict with the other items of the panel. All formulas of the pasted items are rewritten to use the new names, which can be clearly seen in the image above, where the five copied items have been pasted into the same calculation panel.
Copying items works equally well for list panel options. When you copy a list panel option, all panels associated with it are also copied.
Copying and pasting panels
To cut, copy or paste a panel, click the button next to the panel title and select the appropriate menu item:
Then, navigate to the panel that should follow the newly pasted panel and select Paste panel from the same menu. The pasted panel will take the place of the panel you navigated to and the original panel will follow the pasted panel.
The dialog box you’re presented with when you cut or copy a panel looks like this:
There is a checkbox that allows you to either include or exclude the panels that follow the panel you’re about to copy. If you were to copy the Welcome! list panel of the Tutorial template (the first panel) and you checked the box, you would in effect be copying the entire app to the clipboard. This is actually a great way to transfer a small app in its entirety to a larger app where the smaller app should be reachable from, say, a list panel.
(As a bonus, this checkbox is now also a part of the Remove panel dialog, enabling you to remove a single panel and not any of the panels that follow.)
Technical notes
When you copy and paste data from your regular desktop apps, you take it as a given that your apps can communicate with one another. For instance, copying a table from Excel to Word works seamlessly, because the data is copied to the system clipboard. As a web app, Calcapp Creator can’t easily access data stored in the system clipboard, as a security precaution on account of your web browser. (You probably wouldn’t want arbitrary websites to be able to read your system clipboard, which can hold sensitive information.)
As a result, Calcapp Creator uses its own clipboard and not the system clipboard. That isn’t actually much of a problem, because there are no other apps that know how to create, say, panels and fields in a way that would be understandable to Calcapp Creator. We have programmed our clipboard in such a way that data copied to it is accessible to other windows or tabs running Calcapp Creator, which means that you can easily share data from one app to another.
(Incidentally, web apps can easily copy data to the system clipboard. Calcapp Creator copies a text version of the panels and items you copy to the system clipboard, which you can paste into apps like Word or Excel. This data does not currently include any formulas. Let us know if you would like this data to include more information.)
Also, while you may not need to copy a field or a panel from another app to Calcapp Creator, you probably do want to copy text from, say, Word for use in Calcapp Creator. Pasting text from other apps (using the web browser’s right-click menu or a keyboard shortcut) has worked since we launched our beta and will continue to work. When we add support for formatted text in a few months, we will work hard to ensure that the formatting is carried over intact from your word processor to Calcapp Creator.