flexbox, code cleanup
This commit is contained in:
81
addons/godot-flexbox/assets.gd
Normal file
81
addons/godot-flexbox/assets.gd
Normal file
@@ -0,0 +1,81 @@
|
||||
class_name IconAssets
|
||||
|
||||
static var icons_map
|
||||
static var current_theme
|
||||
static var color_conversion_map = {}
|
||||
|
||||
const flex_icons_sources = [
|
||||
"AlignContentAroundRowIcon",
|
||||
"AlignContentAroundColumnIcon",
|
||||
"AlignContentBetweenRowIcon",
|
||||
"AlignContentBetweenColumnIcon",
|
||||
"AlignContentCenterRowIcon",
|
||||
"AlignContentCenterColumnIcon",
|
||||
"AlignContentEndRowIcon",
|
||||
"AlignContentEndColumnIcon",
|
||||
"AlignContentStartRowIcon",
|
||||
"AlignContentStartColumnIcon",
|
||||
"AlignContentStretchRowIcon",
|
||||
"AlignContentStretchColumnIcon",
|
||||
|
||||
"AlignItemsBaselineColumnIcon",
|
||||
"AlignItemsBaselineRowIcon",
|
||||
"AlignItemsCenterColumnIcon",
|
||||
"AlignItemsCenterRowIcon",
|
||||
"AlignItemsEndColumnIcon",
|
||||
"AlignItemsEndRowIcon",
|
||||
"AlignItemsStartColumnIcon",
|
||||
"AlignItemsStartRowIcon",
|
||||
"AlignItemsStretchColumnIcon",
|
||||
"AlignItemsStretchRowIcon",
|
||||
|
||||
"DisplayFlexRow",
|
||||
"DisplayFlexColumn",
|
||||
"ArrowReverseIcon",
|
||||
|
||||
"FlexWrapNoWrapColumnIcon",
|
||||
"FlexWrapNoWrapRowIcon",
|
||||
"FlexWrapWrapColumnIcon",
|
||||
"FlexWrapWrapRowIcon",
|
||||
|
||||
"JustifyContentCenterColumnIcon",
|
||||
"JustifyContentCenterRowIcon",
|
||||
"JustifyContentEndColumnIcon",
|
||||
"JustifyContentEndRowIcon",
|
||||
"JustifyContentSpaceAroundColumnIcon",
|
||||
"JustifyContentSpaceAroundRowIcon",
|
||||
"JustifyContentSpaceBetweenColumnIcon",
|
||||
"JustifyContentSpaceBetweenRowIcon",
|
||||
"JustifyContentSpaceEvenlyColumnIcon",
|
||||
"JustifyContentSpaceEvenlyRowIcon",
|
||||
"JustifyContentStartColumnIcon",
|
||||
"JustifyContentStartRowIcon",
|
||||
]
|
||||
|
||||
static func get_icon(icon:String):
|
||||
return icons_map[current_theme].get(icon)
|
||||
|
||||
|
||||
#maybe bugs here, map should be initial here
|
||||
static func generate_icons(dark_theme):
|
||||
if icons_map == null:
|
||||
icons_map = {}
|
||||
if icons_map.has(dark_theme):
|
||||
current_theme = dark_theme
|
||||
return
|
||||
if current_theme != dark_theme:
|
||||
current_theme = dark_theme
|
||||
icons_map[current_theme] = {}
|
||||
var icon_theme = "dark" if dark_theme else "light"
|
||||
for icon_name in flex_icons_sources:
|
||||
icons_map[current_theme][icon_name] = load("res://addons/godot-flexbox/assets/%s/%s.svg" % [icon_theme, icon_name])
|
||||
|
||||
|
||||
static func add_conversion_color_pair(p_from_color:String, p_to_color:String):
|
||||
color_conversion_map[Color.html(p_from_color)] = Color.html(p_to_color)
|
||||
|
||||
|
||||
static func conversion_color_pairs():
|
||||
color_conversion_map = {}
|
||||
add_conversion_color_pair("#d6d6d6", "#474747"); # Highlighted part
|
||||
add_conversion_color_pair("#474747", "#d6d6d6"); # Background part
|
||||
Reference in New Issue
Block a user