Tiling Algebra for Constraint-based Layout Editing

Clemens Zeidler, Gerald Weber, Alexander Gavruskin, Christof Lutteroth

Research output: Contribution to journalArticle

146 Downloads (Pure)

Abstract

The constraint-based layout model is a very powerful model to describe a wide range of graphical user interface (GUI) layouts, based on linear constraints. However, the advantages of the constraint-based layout model come at a price: layout designers have to ensure layouts are sound, i.e., they are solvable and items in the layout do not overlap each other. Keeping a layout sound is non-trivial since editing one constraint may have undesirable effects on other constraints.

In this article, we propose a new formalism for constraint-basedlayouts which we call a tiling algebra. Editing operations on layouts are specified algebraically, which guarantees that these operations keep a layout sound. We propose to model tiling operations with two operators that are isomorphic cancellative semigroup operators with involution if seen as binary operators. While these semigroup operators alone already cover an interesting subset of layouts, called fragments, we show that there are more involved layouts, such as the pinwheel layout, which cannot be modelled with these operators alone. For this reason we introduce a third operator which is isomorphic to a Boolean conjunction.

Our approach helps to describe constraint-based layoutscorrectly and to make layout editing robust. We apply the proposed algebra to two real constraint-basedsystems, which illustrate how it can be used to support sound layout creation and modification.
Original languageEnglish
Pages (from-to)67-94
JournalJournal of Logical and Algebraic Methods in Programming
Volume89
Early online date7 Mar 2017
DOIs
Publication statusPublished - Jun 2017

Fingerprint Dive into the research topics of 'Tiling Algebra for Constraint-based Layout Editing'. Together they form a unique fingerprint.

Cite this