JADE Environment Development Ideas

What's new in the upcoming JADE release?

IMPROVED DEVELOPER EFFICIENCY. ENHANCED SECURITY. SMOOTHER INTEGRATION

The JADE 2022 release meets tomorrow’s business demands.


Start your update to JADE's latest release

Add container layout options for vertical and horizontal stacking of child controls

Lots of complex Window form have containers of controls that are dynamically shown, hidden or moved. A toolbar may use a horizontal arrangement. A column of fields uses a vertical arrangement. Managing the child controls in Jade code is tedious, even with custom container classes.

It would be far cleaner and more efficient to have the layout managed in Jade. The layouts could be implemented as additional Alignment options on the Frame class. It would be desirable but not essential to add the same alignment option to all containers such as Form and GroupBox.

The container would need to hold child controls in a user-defined order, and respond to the controls being shown, hidden and resized by re-flowing their positions. A helpful extension would be to shrink-wrap the container itself, or to fire an event when layout has been re-flowed.
  • Chris Power
  • May 1 2019
  • Closed
HistoricalComments
John Richards 9/07/2018 1:54:59 PM
Your JEDI has been considered by our Review Panel and was not approved for inclusion in a future release of JADE. The panel felt that the benefits did not justify the costs.

Brian Johnstone 2/03/2018 9:34:17 AM
A flow control would definitely be nice. In the interim, I've removed almost all the complexity when dynamically hiding/showing controls through judicious use of Frames/JadeDockBar controls which have the alignParent options. This means that when I hide the 'container' which has the controls I don't want visible, Jade automatically repositions everything below that container vertically upwards for me without any need to write code to move any affected controls. Similarly, when I make that container visible Jade automatically recalculates the new top positions to make space for the container which has just been made visible. I also do a similar thing for horizontal panels. I also let Jade take care of users resizing the vertical/horizontal panels where it's logical to allow them to adjust the relative percentages. With the new min/max height and width settings now available in Jade 2016, it is even easier to have this happen without getting any unwanted spreading of any of the vertical/horizontal panels. This option, combined with parentAspect, means we now have virtually no code required to 'dynamically reposition' controls when hiding other controls in our system, including automatic handling of form resizing. It's not quite up there with responsive UIs, which a flow control would help to achieve, but it gets pretty close for our current minimum supported resolution.
  • Attach files
  • +6