Summary: | GraphUI: Add CSS alike Layout for Group: GridLayout and BoxLayout | ||
---|---|---|---|
Product: | [JogAmp] GraphUI | Reporter: | Sven Gothel <sgothel> |
Component: | Core | Assignee: | Sven Gothel <sgothel> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | P4 | ||
Version: | 2.6.0 | ||
Hardware: | All | ||
OS: | all | ||
Type: | FEATURE | SCM Refs: |
6a0ac90182efba40b0e6dab8f6390898aced70e8
aca5b9b176f3c3393d8c7666a252488d44b18f2e
70d2b056e69562e83156d0435208be8124f2ff86
a9c76153fd9a472679c1fc85189f6d4ecda7979e
45298f3d4ef14cf3cc8eafb568f8b891c0aa4b41
8439522d73b60bcf61cc59550df6297bbafe73fb
f39a084c6a34a083698ca56e9122642e839234c2
ddd6cac8cc658ce542cb98e85f7d262f9917d37a
e5de90b67efe8e8ca518159b3a73295d751764c1
162f8e309b67c333a482d636e59d207a6c5924e7
52d3dd3b3d684d6ba37e573764c3006c4ba20494
e676a65eac2bfa2abbfcd346492868ed17dc4667
3ecb8e9d1bfd1149f32b05c13c5ec1be6c0cab54
|
Workaround: | --- |
Description
Sven Gothel
2023-09-24 00:55:49 CEST
Most interesting .. 6a0ac90182efba40b0e6dab8f6390898aced70e8 GraphUI GridLayout: Functional Grid Layout w/ Padding, demo'ed in UISceneDemo20 with button Groups All layout magic is simply performed in Group.Layout.layout(..) @ validate, incl. updating the +++ aca5b9b176f3c3393d8c7666a252488d44b18f2e GraphUI GridLayout: Also adjust potential bottom-left delta when centering shape to cell (like GlyphShape w/ underline) +++ 70d2b056e69562e83156d0435208be8124f2ff86 GraphUI: Add BoxLayout and Margin, todo: Have GridLayout properly use Gap w/ Padding and alignment (Margin?) (CSS alike) +++ a9c76153fd9a472679c1fc85189f6d4ecda7979e GraphUI Working GridLayout w/ and w/o cell-size and alignment; Added BoxLayout. +++ 8439522d73b60bcf61cc59550df6297bbafe73fb GraphUI Layout Alignment: Separate center alignment to horizontal and vertical +++ ddd6cac8cc658ce542cb98e85f7d262f9917d37a GraphUI Layout: Fix BoxLayout scale, margin and padding; Add same padding behavior to BoxLayout and GridLayout. For all: - Padding is applied to each {@Shape} via {@link Shape#setPaddding(Padding)} if passed in constructor BoxLayout: - Optionally centered {@link Alignment.Bit#CenterHoriz horizontally}, {@link Alignment.Bit#CenterVert vertically} or {@link Alignment#Center both}. - Optionally scaled to cell-size if given and {@link Alignment#Fill} - Margin is ignored on dimension with center {@link Alignment} - Not implemented {@link Alignment}: Top, Right, Bottom, Left GridLayout: - Optionally centered {@link Alignment.Bit#CenterHoriz horizontally}, {@link Alignment.Bit#CenterVert vertically} or {@link Alignment#Center both}. - Optionally scaled to cell-size if given and {@link Alignment#Fill} - Without cell-size behaves like a grid bag using individual shape sizes including padding - Can be filled in {@link Order#COLUMN} or {@link Order#ROW} major-order. - Not implemented {@link Alignment}: Top, Right, Bottom, Left Changes to Group.Layout interface: - Added preValidate(Shape) allowing to prepare the shape before validation, used to inject Padding Changes to Margin: - Removed the complex CENTER property and using Alignment in BoxLayout as well Changes to BoxLayout: - Using Alignment +++ Tested via UILayoutBox01 and UILayoutGrid01, try the tooltip by clicking on the group's description label. +++ e5de90b67efe8e8ca518159b3a73295d751764c1 GraphUI BoxLayout: Margin is only ignored for center Alignment w/o Fill scale. {Box,Grid}Layout: Always remove Bottom-Left delta a nd refine API doc of incl scale behavior +++ e676a65eac2bfa2abbfcd346492868ed17dc4667 GraphUI Layout (Box/Grid): Adjust bottom-left offset according to center-axis +++ |