1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 00:37:45 +00:00

FontEditor: Convert to GML and add new edit commands to GlyphEditor

Adds cut, copy, paste and delete to GlyphEditor. Font preview has
moved to a separate resizable ToolWindow. Font metadata can now be
hidden. FontEditor and glyph widgets can now be re-initialized
instead of resetting window's main widget after loading new fonts.
This commit is contained in:
thankyouverycool 2021-04-06 12:04:21 -04:00 committed by Andreas Kling
parent d115b29a5b
commit bb9cd13a56
7 changed files with 477 additions and 241 deletions

View file

@ -0,0 +1,206 @@
@GUI::Widget {
fill_with_background_color: true
layout: @GUI::VerticalBoxLayout {
}
@GUI::ToolBarContainer {
name: "toolbar_container"
@GUI::ToolBar {
name: "toolbar"
}
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Widget {
name: "left_column_container"
layout: @GUI::VerticalBoxLayout {
}
@GUI::Widget {
name: "glyph_editor_container"
layout: @GUI::VerticalBoxLayout {
}
}
@GUI::Widget {
fixed_height: 22
layout: @GUI::VerticalBoxLayout {
}
@GUI::SpinBox {
name: "glyph_editor_width_spinbox"
}
}
@GUI::Widget {
}
}
@GUI::Widget {
name: "right_column_container"
layout: @GUI::VerticalBoxLayout {
spacing: 6
}
@GUI::Widget {
name: "glyph_map_container"
layout: @GUI::VerticalBoxLayout {
}
}
@GUI::GroupBox {
name: "font_metadata_groupbox"
title: "Font metadata"
fixed_height: 220
layout: @GUI::VerticalBoxLayout {
margins: [8, 16, 8, 4]
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Label {
name: "name_label"
fixed_width: 100
text_alignment: "CenterLeft"
text: "Name:"
}
@GUI::TextBox {
name: "name_textbox"
}
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Label {
name: "family_label"
fixed_width: 100
text_alignment: "CenterLeft"
text: "Family:"
}
@GUI::TextBox {
name: "family_textbox"
}
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Label {
name: "presentation_label"
fixed_width: 100
text_alignment: "CenterLeft"
text: "Presentation size:"
}
@GUI::SpinBox {
name: "presentation_spinbox"
min: 0
max: 255
}
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Label {
name: "weight_label"
fixed_width: 100
text_alignment: "CenterLeft"
text: "Weight:"
}
@GUI::SpinBox {
name: "weight_spinbox"
min: 0
max: 65535
}
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Label {
name: "spacing_label"
fixed_width: 100
text_alignment: "CenterLeft"
text: "Glyph spacing:"
}
@GUI::SpinBox {
name: "spacing_spinbox"
min: 0
max: 255
}
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Label {
name: "mean_line_label"
fixed_width: 100
text_alignment: "CenterLeft"
text: "Mean line:"
}
@GUI::SpinBox {
name: "mean_line_spinbox"
min: 0
max: 32
}
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Label {
name: "baseline_label"
fixed_width: 100
text_alignment: "CenterLeft"
text: "Baseline:"
}
@GUI::SpinBox {
name: "baseline_spinbox"
min: 0
max: 32
}
}
@GUI::Widget {
fixed_height: 22
layout: @GUI::HorizontalBoxLayout {
}
@GUI::CheckBox {
name: "fixed_width_checkbox"
text: "Fixed width"
autosize: true
}
@GUI::Widget {
}
}
}
}
}
@GUI::StatusBar {
name: "status_bar"
}
}