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:
parent
d115b29a5b
commit
bb9cd13a56
7 changed files with 477 additions and 241 deletions
206
Userland/Applications/FontEditor/FontEditorWindow.gml
Normal file
206
Userland/Applications/FontEditor/FontEditorWindow.gml
Normal 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"
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue