CampBuddy/Camp.Buddy v2.2.1/Camp_Buddy-2.2.1-pc/renpy/sl2/slproperties.py
2025-03-03 23:00:33 +01:00

214 lines
5.3 KiB
Python

# Copyright 2004-2019 Tom Rothamel <pytom@bishoujo.us>
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation files
# (the "Software"), to deal in the Software without restriction,
# including without limitation the rights to use, copy, modify, merge,
# publish, distribute, sublicense, and/or sell copies of the Software,
# and to permit persons to whom the Software is furnished to do so,
# subject to the following conditions:
#
# The above copyright notice and this permission notice shall be
# included in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
from __future__ import print_function
from renpy.sl2.slparser import Keyword, Style, PrefixStyle
position_property_names = [
"anchor",
"xanchor",
"yanchor",
"pos",
"xpos",
"ypos",
"align",
"xalign",
"yalign",
"offset",
"xoffset",
"yoffset",
"maximum",
"xmaximum",
"ymaximum",
"minimum",
"xminimum",
"yminimum",
"area",
"clipping",
"xfill",
"yfill",
# no center, since it can conflict with the center transform.
"xcenter",
"ycenter",
"xsize",
"ysize",
"xysize",
"alt",
"debug",
]
position_properties = [ Style(i) for i in position_property_names ] + [ Keyword("tooltip") ]
text_position_properties = [ PrefixStyle("text_", i) for i in position_property_names ]
side_position_properties = [ PrefixStyle("side_", i) for i in position_property_names ] + [ Keyword("tooltip") ]
viewport_position_properties = [ PrefixStyle("viewport_", i) for i in position_property_names ]
scrollbar_position_properties = [ PrefixStyle("scrollbar_", i) for i in position_property_names ] + [ Keyword("tooltip") ]
vscrollbar_position_properties = [ PrefixStyle("vscrollbar_", i) for i in position_property_names ] + [ Keyword("tooltip") ]
text_property_names = [
"antialias",
"vertical",
"black_color",
"bold",
"color",
"drop_shadow",
"drop_shadow_color",
"first_indent",
"font",
"size",
"hyperlink_functions",
"italic",
"justify",
"kerning",
"language",
"layout",
"line_leading",
"line_spacing",
"minwidth",
"min_width",
"newline_indent",
"outlines",
"outline_scaling",
"rest_indent",
"ruby_style",
"slow_cps",
"slow_cps_multiplier",
"slow_abortable",
"strikethrough",
"text_align",
"text_y_fudge",
"underline",
"hinting",
"adjust_spacing",
]
text_properties = [ Style(i) for i in text_property_names ]
text_text_properties = [ PrefixStyle("text_", i) for i in text_property_names ]
window_properties = [ Style(i) for i in [
"background",
"foreground",
"left_margin",
"right_margin",
"bottom_margin",
"top_margin",
"xmargin",
"ymargin",
"margin",
"left_padding",
"right_padding",
"top_padding",
"bottom_padding",
"xpadding",
"ypadding",
"padding",
"size_group",
] ]
button_properties = [ Style(i) for i in [
"sound",
"mouse",
"focus_mask",
"child",
"keyboard_focus",
"key_events",
] ] + [
Keyword("action"),
Keyword("clicked"),
Keyword("hovered"),
Keyword("unhovered"),
Keyword("alternate"),
Keyword("selected"),
Keyword("sensitive"),
Keyword("keysym"),
Keyword("alternate_keysym"),
]
bar_property_names = [
"bar_vertical",
"bar_invert",
"bar_resizing",
"left_gutter",
"right_gutter",
"top_gutter",
"bottom_gutter",
"left_bar",
"right_bar",
"top_bar",
"bottom_bar",
"base_bar",
"thumb",
"thumb_shadow",
"thumb_offset",
"mouse",
"unscrollable",
"keyboard_focus",
]
bar_properties = [ Style(i) for i in bar_property_names ]
scrollbar_bar_properties = [ PrefixStyle("scrollbar_", i) for i in bar_property_names ]
vscrollbar_bar_properties = [ PrefixStyle("vscrollbar_", i) for i in bar_property_names ]
box_property_names = [
"box_layout",
"box_wrap",
"box_wrap_spacing",
"box_reverse",
"order_reverse",
"spacing",
"first_spacing",
"fit_first",
"xfit",
"yfit",
]
box_properties = [ Style(i) for i in box_property_names ]
grid_properties = [ Style(i) for i in [
"spacing",
"xspacing",
"yspacing",
] ]
ui_properties = [
Keyword("at"),
Keyword("id"),
Keyword("style"),
Keyword("style_group"),
Keyword("style_prefix"),
Keyword("style_suffix"),
Keyword("focus"),
Keyword("default"),
Keyword("default_focus"),
]
property_groups = {
"bar" : bar_properties,
"box" : box_properties,
"button" : button_properties,
"position" : position_properties,
"text" : text_properties,
"window" : window_properties,
"ui" : ui_properties,
"grid" : grid_properties,
}