serenity/Userland/Applications/Spreadsheet/csv_export.gml
sin-ack e11d177618 Userland+LibGUI: Add shorthand versions of the Margins constructor
This allows for typing [8] instead of [8, 8, 8, 8] to specify the same
margin on all edges, for example. The constructors follow CSS' style of
specifying margins. The added constructors are:

- Margins(int all): Sets the same margin on all edges.
- Margins(int vertical, int horizontal): Sets the first argument to top
  and bottom margins, and the second argument to left and right margins.
- Margins(int top, int vertical, int bottom): Sets the first argument to
  the top margin, the second argument to the left and right margins,
  and the third argument to the bottom margin.
2021-08-18 10:30:50 +02:00

164 lines
4.8 KiB
Text

@GUI::Widget {
layout: @GUI::VerticalBoxLayout {
margins: [20]
}
@GUI::HorizontalSplitter {
@GUI::Widget {
name: "csv_options"
layout: @GUI::VerticalBoxLayout {
}
@GUI::Widget {
layout: @GUI::HorizontalBoxLayout {
}
@GUI::GroupBox {
title: "Delimiter"
layout: @GUI::VerticalBoxLayout {
// FIXME: This is working around the fact that group boxes don't allocate space for their title and border!
margins: [20, 10, 10]
}
@GUI::RadioButton {
name: "delimiter_comma_radio"
text: "Comma"
autosize: true
}
@GUI::RadioButton {
name: "delimiter_semicolon_radio"
text: "Semicolon"
autosize: true
}
@GUI::RadioButton {
name: "delimiter_tab_radio"
text: "Tab"
autosize: true
}
@GUI::RadioButton {
name: "delimiter_space_radio"
text: "Space"
autosize: true
}
@GUI::Widget {
fixed_height: 25
layout: @GUI::HorizontalBoxLayout {
}
@GUI::RadioButton {
name: "delimiter_other_radio"
text: "Other: "
autosize: true
}
@GUI::TextBox {
name: "delimiter_other_text_box"
text: ""
}
}
}
@GUI::GroupBox {
title: "Quote"
layout: @GUI::VerticalBoxLayout {
// FIXME: This is working around the fact that group boxes don't allocate space for their title and border!
margins: [20, 10, 10]
}
@GUI::RadioButton {
name: "quote_single_radio"
text: "Single Quotes"
autosize: true
}
@GUI::RadioButton {
name: "quote_double_radio"
text: "Double Quotes"
autosize: true
}
@GUI::Widget {
fixed_height: 25
layout: @GUI::HorizontalBoxLayout {
}
@GUI::RadioButton {
name: "quote_other_radio"
text: "Other: "
autosize: true
}
@GUI::TextBox {
name: "quote_other_text_box"
text: ""
}
}
@GUI::Widget {
}
@GUI::Widget {
fixed_height: 25
layout: @GUI::HorizontalBoxLayout {
}
@GUI::Label {
text: "Escape by "
autosize: true
}
@GUI::ComboBox {
name: "quote_escape_combo_box"
model_only: true
}
}
@GUI::Widget {
}
}
}
@GUI::Widget {
fixed_height: 25
layout: @GUI::HorizontalBoxLayout {
}
@GUI::CheckBox {
name: "export_header_check_box"
text: "Export with headers"
}
@GUI::CheckBox {
name: "quote_all_fields_check_box"
text: "Quote all fields"
}
}
}
@GUI::GroupBox {
title: "Data Preview"
fixed_width: 150
layout: @GUI::VerticalBoxLayout {
// FIXME: This is working around the fact that group boxes don't allocate space for their title and border!
margins: [20, 10, 10]
}
@GUI::TextEditor {
name: "data_preview_text_editor"
mode: "ReadOnly"
}
}
}
}