wesnoth/data/gui/macros/_initial.cfg
2024-09-23 19:49:44 -04:00

431 lines
8.8 KiB
INI

#textdomain wesnoth-lib
#
# Contains the macros for the default widgets.
# - Global GUI macros get the GUI prefix.
# - Local (pre file) GUI macros get the _GUI prefix and should be undefined at
# the end of the file.
#
#
# Later there will also be definitions for larger screens, mainly for using the
# extra width better.
###############################################################################
### ###
### Generic macros usable for all resolutions. ###
### ###
###############################################################################
# Centers the text horizontally.
#
# If the text is too wide it returns the left side.
# Rounding happens to the left side.
#define GUI__TEXT_HORIZONTALLY_CENTRED
"(max((width - text_width) / 2, 0))" #enddef
# Centers the text vertically.
#
# If the text is too high it returns the top side.
# Rounding happens to the bottom side.
#define GUI__TEXT_VERTICALLY_CENTRED
"(max((height - text_height) / 2, 0))" #enddef
#define GUI__CENTERED_TEXT FONT_SIZE FONT_STYLE FONT_COLOR
[text]
x = {GUI__TEXT_HORIZONTALLY_CENTRED}
y = {GUI__TEXT_VERTICALLY_CENTRED}
w = "(text_width)"
h = "(text_height)"
font_size = {FONT_SIZE}
font_style = {FONT_STYLE}
color = {FONT_COLOR}
text = "(text)"
text_markup = "(text_markup)"
[/text]
#enddef
#define GUI__LEFT_TEXT FONT_SIZE FONT_STYLE FONT_COLOR
[text]
x = 5
y = {GUI__TEXT_VERTICALLY_CENTRED}
w = "(text_width)"
h = "(text_height)"
font_size = {FONT_SIZE}
font_style = {FONT_STYLE}
color = {FONT_COLOR}
text = "(text)"
text_markup = "(text_markup)"
[/text]
#enddef
# This white color is used for most texts.
#define GUI__FONT_COLOR_ENABLED__DEFAULT
#arg ALPHA
255 #endarg
"215, 215, 215, {ALPHA}" #enddef
# This gray color is used for most text when the widget is disabled.
#define GUI__FONT_COLOR_DISABLED__DEFAULT
#arg ALPHA
255 #endarg
"128, 128, 128, {ALPHA}" #enddef
#define GUI__FONT_COLOR_DISABLED_DARK__DEFAULT
#arg ALPHA
255 #endarg
"96, 96, 96, {ALPHA}" #enddef
# This gold color is used for the
# - title labels
# - button captions
# - checkbox captions
# - menu captions
# - achieved achievement titles
#define GUI__FONT_COLOR_ENABLED__TITLE
#arg ALPHA
255#endarg
"186, 172, 125, {ALPHA}" #enddef
# This now uses the default disabled color but should be tiny bit lighter.
#define GUI__FONT_COLOR_DISABLED__TITLE
#arg ALPHA
255 #endarg
{GUI__FONT_COLOR_DISABLED__DEFAULT ALPHA={ALPHA}} #enddef
#define GUI__FONT_COLOR_ENABLED__BAD
#arg ALPHA
255#endarg
"255, 0, 0, {ALPHA}" #enddef
#define GUI__FONT_COLOR_DISABLED__BAD
#arg ALPHA
255#endarg
"255, 0, 0, {ALPHA}" #enddef
# This color is used as background in the listbox.
#define GUI__BACKGROUND_COLOR_ENABLED
#arg ALPHA
89 #endarg
"0, 0, 0, {ALPHA}" #enddef
#define GUI__BACKGROUND_COLOR_DISABLED
#arg ALPHA
64 #endarg
"64, 64, 64, {ALPHA}" #enddef
#define GUI__BORDER_COLOR_DARK
#arg ALPHA
255 #endarg
"114, 79, 46, {ALPHA}" #enddef
#define GUI__BORDER_COLOR
#arg ALPHA
255 #endarg
"162, 127, 68, {ALPHA}" #enddef
#define GUI__BORDER_COLOR_BRIGHT
#arg ALPHA
255 #endarg
"185, 158, 75, {ALPHA}" #enddef
#define GUI_LINE X1 Y1 X2 Y2 COLOR
[line]
x1 = {X1}
y1 = {Y1}
x2 = {X2}
y2 = {Y2}
thickness = 1
color = {COLOR}
[/line]
#enddef
#define GUI_POINT X Y COLOR
{GUI_LINE {X} {Y} {X} {Y} {COLOR}}
#enddef
# Draws the background for a selected cell in a listbox. For now there's one
# version for both tiny and normal gui.
#define GUI__LISTBOX_SELECTED_CELL
[rectangle]
x = 0
y = 0
w = "(width)"
h = "(height)"
border_thickness = 1
border_color = {GUI__BORDER_COLOR_BRIGHT}
[/rectangle]
[image]
x = 1
y = 1
w = "(width - 2)"
h = "(height - 2)"
name = "dialogs/selection-background.png"
[/image]
#enddef
# Forces a widget to be of a certain size.
# Depending of the flags of the parent widget the item will grow
#
# WIDTH Minimum width for the widget.
# HEIGHT Minimum height for the widget.
# WIDGET The widget to add into the item.
#
# eg instead of
# [label]
# # Note Foo has trailing spaces to force extra width.
# label = "
# Foo
# "
# [label]
# you can do:
#
# {GUI_FORCE_WIDGET_MINIMUM_SIZE 150 75 (
# [label]
# label = "Foo"
# [label]
# )}
#
#define GUI_FORCE_WIDGET_MINIMUM_SIZE WIDTH HEIGHT WIDGET
[stacked_widget]
definition = "default"
[layer]
[row]
grow_factor = 1
[column]
grow_factor = 1
horizontal_grow = true
vertical_grow = true
[spacer]
definition = "default"
width = "{WIDTH}"
height = "{HEIGHT}"
[/spacer]
[/column]
[/row]
[/layer]
[layer]
[row]
grow_factor = 1
[column]
grow_factor = 1
horizontal_grow = true
vertical_grow = true
{WIDGET}
[/column]
[/row]
[/layer]
[/stacked_widget]
#enddef
# Forces a widget to be of a certain size and blocks it from growing.
#
# WIDTH Width for the widget.
# HEIGHT Height for the widget.
# WIDGET The widget to add to the item.
#
#define GUI_FORCE_WIDGET_SIZE WIDTH HEIGHT WIDGET
[size_lock]
definition = "default"
width = "{WIDTH}"
height = "{HEIGHT}"
[widget]
{WIDGET}
[/widget]
[/size_lock]
#enddef
#define GUI_WINDOW_FULLSCREEN
automatic_placement = false
x = 0
y = 0
width = "(screen_width)"
height = "(screen_height)"
#enddef
#define GUI_WINDOW_FIXED_SIZE_CENTERED WIDTH HEIGHT
automatic_placement = false
width = "(min(screen_width, {WIDTH}))"
height = "(min(screen_height, {HEIGHT}))"
x = "(floor((screen_width - window_width) / 2))"
y = "(floor((screen_height - window_height) / 2))"
#enddef
#define GUI_CENTERED_IMAGE
x = "(max(pos, 0) where pos = floor((width - image_width) / 2))"
y = "(max(pos, 0) where pos = floor((height - image_height) / 2))"
w = "(min(width, image_original_width))"
h = "(min(height, image_original_height))"
#enddef
#define GUI_HORIZONTAL_SPACER_LINE
[row]
grow_factor = 0
[column]
grow_factor = 1
border = "all"
border_size = 10
horizontal_grow = true
[drawing]
definition = "default"
width = (width)
height = 1
[draw]
[line]
x1 = 0
y1 = 0
x2 = (width - 1)
y2 = 0
color = {GUI__BORDER_COLOR_DARK}
thickness = 1
[/line]
[/draw]
[/drawing]
[/column]
[/row]
#enddef
#define GUI_VERTICAL_SPACER_LINE
[column]
border = "all"
border_size = 10
vertical_grow = true
[drawing]
definition = "default"
width = 1
height = (height)
[draw]
[line]
x1 = 0
y1 = 1
x2 = 0
y2 = (height - 1)
color = {GUI__BORDER_COLOR_DARK}
thickness = 1
[/line]
[/draw]
[/drawing]
[/column]
#enddef
#define DEFAULT_BLUR
[pre_commit]
[blur]
depth = 5
[/blur]
[/pre_commit]
#enddef
#define FILTER_TEXT_BOX_HINT
hint_text = _ "Search"
hint_image = "icons/action/zoomdefault_25.png~FL(horiz)"
#enddef
# The following is a more-or-less arbitrary resolution, larger than 1024x768
# in both dimensions, at which to switch over from the traditional
# everything-is-fixed-size layout to one that scales proportionally to
# the screen_pitch_microns.
#define GUI_BIG_RESOLUTION
window_width = 1200
window_height = 900
#enddef
# scaling based on physical DPI has been disabled. This macro remains,
# and may still be used in the future for adaptive or manual UI scaling.
#define GUI_SCALE_RESOLUTION SIZE
({SIZE})
#enddef
#define GUI_WINDOW_PERC_FIXED_SIZE_CENTERED PERC_W PERC_H WIDTH HEIGHT
automatic_placement = false
width = "(max(min(screen_width, {WIDTH} ), min(screen_width * {PERC_W} / 100, {GUI_SCALE_RESOLUTION {WIDTH} })))"
height = "(max(min(screen_height, {HEIGHT}), min(screen_height * {PERC_H} / 100, {GUI_SCALE_RESOLUTION {HEIGHT}})))"
x = "(floor((screen_width - window_width) / 2))"
y = "(floor((screen_height - window_height) / 2))"
#enddef
#define _WIDGET_DEBUG_BORDER
debug_border_mode = 1
debug_border_color = "255, 255, 255"
#enddef
###############################################################################
### ###
### Macros for the normal gui. ###
### ###
###############################################################################
#define GUI_FONT_SIZE_TINY
13 #enddef
#define GUI_FONT_SIZE_SMALL
15 #enddef
#define GUI_FONT_SIZE_DEFAULT
17 #enddef
#define GUI_FONT_SIZE_LARGE
20 #enddef
#define GUI_FONT_SIZE_TITLE
22 #enddef
#define GUI_FONT_SIZE_LARGER
24 #enddef
#define GUI_FONT_SIZE_VERY_LARGE
28 #enddef
#define GUI_FONT_SIZE_EXTRA_LARGE
32 #enddef
#define GUI_FONT_SIZE_HUGE
36 #enddef