mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-07 09:04:30 +00:00
This patch removes size policies and preferred sizes, and replaces them
with min-size and max-size for each widget.
Box layout now works in 3 passes:
1) Set all items (widgets/spacers) to their min-size
2) Distribute remaining space evenly, respecting max-size
3) Place widgets one after the other, adding spacing in between
I've also added convenience helpers for setting a fixed size (which is
the same as setting min-size and max-size to the same value.)
This significantly reduces the verbosity of widget layout and makes GML
a bit more pleasant to write, too. :^)
96 lines
1.8 KiB
Plaintext
96 lines
1.8 KiB
Plaintext
@GUI::Widget {
|
|
fill_with_background_color: true
|
|
|
|
layout: @GUI::VerticalBoxLayout {
|
|
margins: [5, 5, 5, 5]
|
|
}
|
|
|
|
@GUI::Widget {
|
|
fixed_height: 44
|
|
|
|
layout: @GUI::HorizontalBoxLayout {
|
|
spacing: 10
|
|
}
|
|
|
|
@GUI::ImageWidget {
|
|
name: "icon"
|
|
}
|
|
|
|
@GUI::Label {
|
|
name: "description"
|
|
text_alignment: "CenterLeft"
|
|
}
|
|
}
|
|
|
|
@GUI::Widget {
|
|
fixed_height: 18
|
|
|
|
layout: @GUI::HorizontalBoxLayout {
|
|
}
|
|
|
|
@GUI::Label {
|
|
text: "Executable path:"
|
|
text_alignment: "CenterLeft"
|
|
fixed_width: 90
|
|
}
|
|
|
|
@GUI::LinkLabel {
|
|
name: "executable_link"
|
|
text_alignment: "CenterLeft"
|
|
}
|
|
}
|
|
|
|
@GUI::Widget {
|
|
fixed_height: 18
|
|
|
|
layout: @GUI::HorizontalBoxLayout {
|
|
}
|
|
|
|
@GUI::Label {
|
|
text: "Coredump path:"
|
|
text_alignment: "CenterLeft"
|
|
fixed_width: 90
|
|
}
|
|
|
|
@GUI::LinkLabel {
|
|
name: "coredump_link"
|
|
text_alignment: "CenterLeft"
|
|
}
|
|
}
|
|
|
|
@GUI::Widget {
|
|
fixed_height: 18
|
|
|
|
layout: @GUI::HorizontalBoxLayout {
|
|
}
|
|
|
|
@GUI::Label {
|
|
text: "Backtrace:"
|
|
text_alignment: "CenterLeft"
|
|
}
|
|
}
|
|
|
|
@GUI::TextEditor {
|
|
name: "backtrace_text_editor"
|
|
mode: "ReadOnly"
|
|
}
|
|
|
|
@GUI::Widget {
|
|
fixed_height: 32
|
|
|
|
layout: @GUI::HorizontalBoxLayout {
|
|
}
|
|
|
|
// HACK: We need something like Layout::add_spacer() in GML! :^)
|
|
@GUI::Widget {
|
|
}
|
|
|
|
@GUI::Button {
|
|
name: "close_button"
|
|
text: "Close"
|
|
fixed_width: 70
|
|
fixed_height: 22
|
|
}
|
|
}
|
|
}
|