I'm a bit new to Ignition, so bear with me. I've done a fair amount of programming in Java and some script automation through JavaScript which included interface windows (mostly Photoshop batching automation with input popups). That said, trying to learn this combination of Visual layout with Python/Jython Scripting support is a little jarring. The IA tutorials help a lot with understanding how Ignition can be used, but I have a habit of jumping into the deep end to actually learn how to swim.
Anyway, what I'm trying to do is dynamically layout a page in a way similar to a table based on a varying length dataset. In fact, the only reason Power Table won't work is the lack of a multi-row header with mergeable cells (like the data cells in it can be) as well as the lack of ability to change the input type of the last column to another component (switching between textfield, numerical field, dropdown, or checkbox as needed).
The number of columns I need is static, but the rows of data are obviously not, and the first and second columns will have a varying number of cells merged together, such as the example below:
I've created this same layout in Java using nothing more than labels and input fields in a GridBagLayout (seems to be Java's take on MigLayout), expanding the first and second columns based on the number of items contained "under" (to the right of) them; basically like a tree-table. That said, the only way I can see doing that here is via Templates and Template Canvases with embedded Template Repeaters. Trying to control the data within each row starts to look like it would be a bit of a headache, though, and the columns of the repeaters don't match the width of the columns in the headers without a ton of extra work [mostly just trying to figure out how] to set their size and position to match the header while still butting up to their neighboring cells (this part's more my lack of experience with Ignition, I'm sure).
If I could use the MigLayout to dynamically add Labels and input fields to a container would be best, as then I wouldn't have to nest anything except the underlying data structure. Unfortunately, I only see a way to supply MigLayout options to the Template Canvas objects and no way to create objects at runtime with script. Am I just looking in the wrong places? Is it even possible to build a layout such as this with script at runtime, or am I stuck with template nesting to try and achieve this?
And for those that would ask why I don't just modify my table to fit the power table... there's a mound of paperwork behind switching the form's "Look & Feel" to fit the power table that looks more daunting (and less productive) than learning to use this software better That said, if power table can be modified to fit, I'm open to advice. Thanks for any help!