Stateless GUI

Log-in or register.

Stateless GUI

One of the core concepts of RealWorld Designer is the KISS principle. In order to keep it simple, it was decided to always prefer state-less user interface.

When user interface is stateless, the state of the application only changes on explicit user request and a mouse click always has the same meaning.


Polyline with states - click and drag to create first segment. Click again to add new segment. Press Enter to finish the polyline.

Stateless polyline - click and drag to create first segment. Use control handles to break the segment, remove segments or move vertices.

Comparing the approaches

The stateless way of creating polylines requires the concept of control handles. Without them, it would be impossible to create the polyline, because each new click-drag-release action creates a new and completely separate line.

User interface with states can live without the concept of control handles, but in a very limited fashion. Without control handles or other similar mechanism, users cannot modify the polyline after its initial creation, which would severely limit the utility of this tool, making it almost useless.

A well thought-out and intuitive control handle mechanism (add vertex by dragging point on a line; remove vertex by dragging it over its neighbor) negates the inability to create polylines without control handles. The result is an easier to learn user interface (no need to search for the mechanism to finish creating the polyline, click-drag-release always does the same).

Recent comments

user icon Anonymous on February 12th 2023

i dont get it :-o

user icon Anonymous
Select background
What about ICL files?