makepad/widgets/sheets/themes/chalkboard/theme.splash

295 lines
13 KiB
Text

mod.theme = mod.themes.dark
// Chalkboard. A slate blackboard in a wooden frame: dark charcoal with a
// little green in its grey, chalk dust left in its pores, the faint wipes of
// an eraser, and a broad soft fall of light toward its corners. Everything on
// it is drawn in chalk: dry, slightly wobbly lines with the board's grain
// showing through them, boxes with rounded corners, hatching or a rubbed
// fill where something is chosen, and every word in chalk handwriting. The
// chalk is white; soft coloured chalks (pale yellow, pink, light blue, mint)
// mark a state or a value where one is needed. The faces are drawn in
// widgets.splash; this file holds the tokens every face and every stock
// widget reads.
use mod.res.*
use mod.text.*
// The board.
mod.theme.color_bg_app = #252a27
mod.theme.color_fg_app = #252a27
mod.theme.color_bg_container = #252a27
// Raised pieces the sheet does not redraw: the slate a shade lighter, as if
// rubbed with a little chalk dust.
mod.theme.color_outset = #2c312e
mod.theme.color_outset_1 = #303532
mod.theme.color_outset_2 = #282d2a
mod.theme.color_outset_hover = #323734
mod.theme.color_outset_1_hover = #363b38
mod.theme.color_outset_2_hover = #2d322f
mod.theme.color_outset_down = #3a3f3c
mod.theme.color_outset_1_down = #3a3f3c
mod.theme.color_outset_2_down = #3a3f3c
mod.theme.color_outset_drag = #3a3f3c
mod.theme.color_outset_1_drag = #3a3f3c
mod.theme.color_outset_2_drag = #3a3f3c
mod.theme.color_outset_focus = #2c312e
mod.theme.color_outset_1_focus = #303532
mod.theme.color_outset_2_focus = #282d2a
mod.theme.color_outset_active = #9a9d99
mod.theme.color_outset_1_active = #9a9d99
mod.theme.color_outset_2_active = #9a9d99
mod.theme.color_outset_disabled = #2a2e2c
mod.theme.color_outset_1_disabled = #2a2e2c
mod.theme.color_outset_2_disabled = #2a2e2c
// Wells: the slate a shade darker, where nothing has been written yet.
// Opaque in every state.
mod.theme.color_inset = #1f2321
mod.theme.color_inset_1 = #1f2321
mod.theme.color_inset_2 = #1f2321
mod.theme.color_inset_hover = #232725
mod.theme.color_inset_1_hover = #232725
mod.theme.color_inset_2_hover = #232725
mod.theme.color_inset_focus = #232725
mod.theme.color_inset_1_focus = #232725
mod.theme.color_inset_2_focus = #232725
mod.theme.color_inset_active = #1f2321
mod.theme.color_inset_1_active = #1f2321
mod.theme.color_inset_2_active = #1f2321
mod.theme.color_inset_down = #1c201e
mod.theme.color_inset_1_down = #1c201e
mod.theme.color_inset_2_down = #1c201e
mod.theme.color_inset_drag = #1c201e
mod.theme.color_inset_1_drag = #1c201e
mod.theme.color_inset_2_drag = #1c201e
mod.theme.color_inset_empty = #1f2321
mod.theme.color_inset_1_empty = #1f2321
mod.theme.color_inset_2_empty = #1f2321
mod.theme.color_inset_disabled = #232725
mod.theme.color_inset_1_disabled = #232725
mod.theme.color_inset_2_disabled = #232725
// Every edge a stock face strokes is a line of chalk.
mod.theme.color_bevel = #c9ccc8
mod.theme.color_bevel_hover = #e3e5e1
mod.theme.color_bevel_focus = #a8cdee
mod.theme.color_bevel_down = #e3e5e1
mod.theme.color_bevel_drag = #e3e5e1
mod.theme.color_bevel_active = #e3e5e1
mod.theme.color_bevel_empty = #c9ccc8
mod.theme.color_bevel_disabled = #5f6461
mod.theme.color_bevel_inset_1 = #c9ccc8
mod.theme.color_bevel_inset_2 = #c9ccc8
mod.theme.color_bevel_inset_1_hover = #e3e5e1
mod.theme.color_bevel_inset_2_hover = #e3e5e1
mod.theme.color_bevel_inset_1_focus = #a8cdee
mod.theme.color_bevel_inset_2_focus = #a8cdee
mod.theme.color_bevel_inset_1_down = #e3e5e1
mod.theme.color_bevel_inset_2_down = #e3e5e1
mod.theme.color_bevel_inset_1_disabled = #5f6461
mod.theme.color_bevel_inset_2_disabled = #5f6461
mod.theme.color_bevel_outset_1 = #c9ccc8
mod.theme.color_bevel_outset_2 = #c9ccc8
mod.theme.color_bevel_outset_1_hover = #e3e5e1
mod.theme.color_bevel_outset_2_hover = #e3e5e1
mod.theme.color_bevel_outset_1_focus = #a8cdee
mod.theme.color_bevel_outset_2_focus = #a8cdee
mod.theme.color_bevel_outset_1_down = #e3e5e1
mod.theme.color_bevel_outset_2_down = #e3e5e1
mod.theme.color_bevel_outset_1_disabled = #5f6461
mod.theme.color_bevel_outset_2_disabled = #5f6461
mod.theme.beveling = 0.5
// Chalk: white with a breath of warmth, #e8eae6, about 12:1 on the board.
// Disabled words are chalk half rubbed away, a grey that still reads.
mod.theme.color_text = #e8eae6
mod.theme.color_text_hover = #f8f9f6
mod.theme.color_text_focus = #f8f9f6
mod.theme.color_text_active = #f8f9f6
mod.theme.color_text_down = #f8f9f6
mod.theme.color_text_disabled = #7d827f
mod.theme.color_text_placeholder = #a2a7a4
mod.theme.color_text_placeholder_hover = #b3b8b5
mod.theme.color_text_val = #e8eae6
mod.theme.color_text_meta = #c4c8c5
mod.theme.color_text_hl = #f2f3ef
mod.theme.color_text_cursor = #f3e3a0
mod.theme.color_cursor = #f3e3a0
mod.theme.color_cursor_focus = #f3e3a0
mod.theme.color_label = #e8eae6
mod.theme.color_label_hover = #f8f9f6
mod.theme.color_label_focus = #f8f9f6
mod.theme.color_label_active = #f8f9f6
mod.theme.color_label_down = #f8f9f6
mod.theme.color_label_disabled = #7d827f
mod.theme.color_label_inner = #e8eae6
mod.theme.color_label_inner_hover = #f8f9f6
mod.theme.color_label_inner_focus = #e8eae6
mod.theme.color_label_inner_down = #f8f9f6
mod.theme.color_label_inner_drag = #f8f9f6
mod.theme.color_label_inner_active = #f8f9f6
mod.theme.color_label_inner_inactive = #c4c8c5
mod.theme.color_label_inner_disabled = #7d827f
mod.theme.color_label_outer = #e8eae6
mod.theme.color_label_outer_off = #e8eae6
mod.theme.color_label_outer_hover = #f8f9f6
mod.theme.color_label_outer_down = #f8f9f6
mod.theme.color_label_outer_drag = #f8f9f6
mod.theme.color_label_outer_focus = #f8f9f6
mod.theme.color_label_outer_active = #f8f9f6
mod.theme.color_label_outer_active_focus = #f8f9f6
mod.theme.color_label_outer_disabled = #7d827f
mod.theme.color_icon = #e8eae6
mod.theme.color_icon_hover = #f8f9f6
mod.theme.color_icon_focus = #e8eae6
mod.theme.color_icon_active = #f8f9f6
mod.theme.color_icon_down = #f8f9f6
mod.theme.color_icon_disabled = #7d827f
mod.theme.color_on_surface = #e8eae6
mod.theme.color_on_surface_variant = #d2d5d1
// The accent seed is the chalk itself: the grown primary is a field rubbed
// full of chalk with slate-dark words on it. Focus is a light blue chalk
// line. The meaning families are the soft coloured chalks.
mod.theme.color_ctrl_selected = #d6d9d4
mod.theme.color_text_on_accent = #1d2120
mod.theme.color_focus = #a8cdee
mod.theme.color_ctrl_active = #e8eae6
mod.theme.color_success = #8edcae
mod.theme.color_warning = #f0d27a
mod.theme.color_error = #f09a9a
mod.theme.color_info = #98c8f0
mod.theme.color_val = #e8eae6
mod.theme.color_val_hover = #f8f9f6
mod.theme.color_val_focus = #f8f9f6
mod.theme.color_val_drag = #f8f9f6
mod.theme.color_val_disabled = #6a6f6c
mod.theme.color_mark = #e8eae6
mod.theme.color_mark_active = #e8eae6
mod.theme.color_mark_active_hover = #f8f9f6
mod.theme.color_mark_focus = #e8eae6
mod.theme.color_mark_disabled = #6a6f6c
// Selected text: a stroke of pale yellow chalk laid on its side.
mod.theme.color_selection = #00000000
mod.theme.color_selection_hover = #f3e3a033
mod.theme.color_selection_focus = #f3e3a055
mod.theme.color_selection_down = #f3e3a055
mod.theme.color_bg_highlight = #353a37
mod.theme.color_bg_highlight_inline = #f3e3a040
mod.theme.color_handle = #c9ccc8
mod.theme.color_handle_hover = #e3e5e1
mod.theme.color_handle_1 = #e3e5e1
mod.theme.color_handle_2 = #9a9d99
// Rows of a tree or a table: the board itself, every other row the same, so
// the floor stays calm under the words; the chosen row a rubbed band.
mod.theme.color_bg_even = #252a27
mod.theme.color_bg_odd = #272c29
mod.theme.color_highlight = #f3e3a0
// The instruments: framed in chalk on a patch of darker slate, their figures
// written in pale yellow chalk, the unlit segments a smudge of dust.
mod.theme.color_screen = #1c201e
mod.theme.color_screen_ink = #f3e3a0
mod.theme.screen_ghost = 0.10
mod.theme.color_lamp_plain = #fff8e8
mod.theme.color_lamp_off = #1b1f1d
mod.theme.color_terminal_bg = #1c201e
mod.theme.color_terminal_text = #e8eae6
// The surface ladder: the slate, a shade lighter where it was rubbed.
mod.theme.color_surface = #252a27
mod.theme.color_surface_dim = #1f2321
mod.theme.color_surface_bright = #383d3a
mod.theme.color_surface_container_lowest = #1f2321
mod.theme.color_surface_container_low = #282d2a
mod.theme.color_surface_container = #2c312e
mod.theme.color_surface_container_high = #303532
mod.theme.color_surface_container_highest = #353a37
mod.theme.color_outline = #c9ccc8
mod.theme.color_outline_variant = #6a6f6c
mod.theme.color_inverse_surface = #e8eae6
mod.theme.color_inverse_on_surface = #1d2120
// SPACING. Rows of 26 points, gaps of 8, a panel's padding 12. The rungs
// below were frozen as numbers when the base was read, so they are stated
// again here.
mod.theme.space_factor = 6.0
mod.theme.space_1 = 4.0
mod.theme.space_2 = 8.0
mod.theme.space_3 = 12.0
mod.theme.space_4 = 16.0
mod.theme.space_5 = 20.0
mod.theme.space_6 = 24.0
mod.theme.mspace_1 = mod.turtle.Inset{top: 4.0 right: 4.0 bottom: 4.0 left: 4.0}
mod.theme.mspace_h_1 = mod.turtle.Inset{top: 0.0 right: 4.0 bottom: 0.0 left: 4.0}
mod.theme.mspace_v_1 = mod.turtle.Inset{top: 4.0 right: 0.0 bottom: 4.0 left: 0.0}
mod.theme.mspace_2 = mod.turtle.Inset{top: 8.0 right: 8.0 bottom: 8.0 left: 8.0}
mod.theme.mspace_h_2 = mod.turtle.Inset{top: 0.0 right: 8.0 bottom: 0.0 left: 8.0}
mod.theme.mspace_v_2 = mod.turtle.Inset{top: 8.0 right: 0.0 bottom: 8.0 left: 0.0}
mod.theme.mspace_3 = mod.turtle.Inset{top: 12.0 right: 12.0 bottom: 12.0 left: 12.0}
mod.theme.mspace_h_3 = mod.turtle.Inset{top: 0.0 right: 12.0 bottom: 0.0 left: 12.0}
mod.theme.mspace_v_3 = mod.turtle.Inset{top: 12.0 right: 0.0 bottom: 12.0 left: 0.0}
mod.theme.size_control_s = 22.0
mod.theme.size_control_m = 26.0
mod.theme.size_control_l = 32.0
mod.theme.tab_height = 26.0
mod.theme.tab_flat_height = 26.0
mod.theme.data_item_height = 22.0
mod.theme.corner_radius = 8.0
mod.theme.container_corner_radius = 8.0
mod.theme.textselection_corner_radius = 1.5
mod.theme.radius_xs = 2.0
mod.theme.radius_s = 4.0
mod.theme.radius_m = 8.0
mod.theme.radius_l = 8.0
// TYPE, all of it in chalk handwriting (Caveat) at its heaviest weight, so
// a stroke of it is as broad as a stick of chalk and reads at 1x. Caveat is
// small on its body (an x-height of 0.40 of the size, against Inter's
// 0.54), so it is set larger: 13 for working text, 13.5 on the controls,
// headings 16. Its line box is tall for its size (1.26 em), so the box is
// drawn in to the ink (the asc and desc fudges: its tallest letters stand
// 0.70 above the baseline and its tails reach 0.22 below, and the box is
// drawn to 0.66 and 0.22), or a 26 point row and an 80 point panel would
// overflow.
mod.theme.font_size_p = 13.0
mod.theme.font_size_base = 13.0
mod.theme.type_title_l_size = 18.0
mod.theme.type_title_m_size = 16.0
mod.theme.type_title_s_size = 14.0
mod.theme.type_body_l_size = 14.5
mod.theme.type_body_m_size = 13.5
mod.theme.type_body_s_size = 12.5
mod.theme.type_label_l_size = 14.0
mod.theme.type_label_m_size = 13.0
mod.theme.type_label_s_size = 12.0
mod.theme.font_size_4 = 14.0
mod.theme.font_regular = mod.theme.font_regular{font_size: 13.0 font_family: mod.theme.font_regular.font_family{ibm_plex_text := FontMember{res: crate_resource("self:resources/Caveat-Variable.ttf") weight: 700.0 asc: -0.30 desc: 0.08}}}
mod.theme.font_label = mod.theme.font_label{font_size: 13.5 font_family: mod.theme.font_label.font_family{ibm_plex_text := FontMember{res: crate_resource("self:resources/Caveat-Variable.ttf") weight: 700.0 asc: -0.30 desc: 0.08}}}
mod.theme.font_bold = mod.theme.font_bold{font_size: 16.0 font_family: mod.theme.font_bold.font_family{ibm_plex_semibold := FontMember{res: crate_resource("self:resources/Caveat-Variable.ttf") weight: 700.0 asc: -0.30 desc: 0.08}}}
// The hand already leans, so emphasis is the same hand: italic and bold
// italic are Caveat too, and a stressed word never drops into a print face.
mod.theme.font_italic = mod.theme.font_italic{font_size: 13.0 font_family: mod.theme.font_italic.font_family{ibm_plex_italic := FontMember{res: crate_resource("self:resources/Caveat-Variable.ttf") weight: 700.0 asc: -0.30 desc: 0.08}}}
mod.theme.font_bold_italic = mod.theme.font_bold_italic{font_size: 13.0 font_family: mod.theme.font_bold_italic.font_family{ibm_plex_bold_italic := FontMember{res: crate_resource("self:resources/Caveat-Variable.ttf") weight: 700.0 asc: -0.30 desc: 0.08}}}
// The type roles were frozen from the base's faces; stated again so every
// role reads in the hand. Titles a size up, body and labels at the board's
// working size.
mod.theme.font_title_l = mod.theme.font_bold{font_size: 20.0 line_spacing: 1.15}
mod.theme.font_title_m = mod.theme.font_bold{font_size: 17.0 line_spacing: 1.15}
mod.theme.font_title_s = mod.theme.font_bold{font_size: 15.0 line_spacing: 1.15}
mod.theme.font_body_l = mod.theme.font_regular{font_size: 14.5 line_spacing: 1.2}
mod.theme.font_body_m = mod.theme.font_regular{font_size: 13.5 line_spacing: 1.2}
mod.theme.font_body_s = mod.theme.font_regular{font_size: 12.5 line_spacing: 1.2}
mod.theme.font_label_l = mod.theme.font_label{font_size: 14.0 line_spacing: 1.1}
mod.theme.font_label_m = mod.theme.font_label{font_size: 13.0 line_spacing: 1.1}
mod.theme.font_label_s = mod.theme.font_label{font_size: 12.0 line_spacing: 1.1}
// No surface material: every face that matters is drawn by the sheet.
mod.theme.material_level = 0.0
mod.theme.material_margin = 0.0
mod.theme.material_glow = 0.0
mod.theme.material_ink_glow = 0.0
mod.theme.color_material_glow = #a8cdee
true