Project

General

Profile

Feature #11351

implement 4GL language and runtime enhancements for layout strategies (responsive design)

Added by Greg Shah 4 months ago. Updated 4 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
Due date:
% Done:

0%

billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:
reviewer:
production:
No
env_name:
topics:

Related issues

Related to User Interface - Feature #3875: complete dynamic layout support for remaining 4GL widgets (and OCX controls) New

History

#1 Updated by Greg Shah 4 months ago

  • Related to Feature #3875: complete dynamic layout support for remaining 4GL widgets (and OCX controls) added

#2 Updated by Greg Shah 4 months ago

A "layout strategy" is the concept of defining a mapping of named layouts (e.g. single column, double column...) and specific screen form-factors. The idea is that the developer specifies this mapping using widget/frame/window options and then at runtime, FWD uses media query support to select the right strategy. Then the runtime will change the calculated layout based on the specified strategy and form factor.

This is intended to help customers implement responsive design without having to manually implement it on every screen. The low level facilities for implementing responsive design (media queries, layout management) should also be exposed to the 4GL. It is OK to do this via direct Java access so long as the interface is clean.

#3 Updated by Greg Shah 4 months ago

Although my idea is to define explicit strategies that the developer would specify, I can also imagine that there are many cases where we could implicitly detect the layout strategy that matches the contents of the screen. In that case, we could implement a smart default for different screen form factors. For example, if we detect a layout conducive to columns and implemented as multiple columns on a normal Windows desktop, then we could automatically map that to a single column layout on phone screens.

#4 Updated by Greg Shah 4 months ago

We should consider that form factors with certain input limitations may require layout differences to work properly. For example, on a touch screen buttons need to be big enough that the user can easily select the correct button.

#5 Updated by Greg Shah 4 months ago

Another approach would be to have different widget drawing implementations for different form factors. For example, a widget primarily used for menuing (like the accordion menu) might render as a "hamburger menu" in mobile.

Also available in: Atom PDF