├── .editorconfig
├── .gitattributes
├── .github
├── actions
│ ├── build
│ │ └── action.yml
│ └── sign
│ │ └── action.yml
└── workflows
│ └── builds.yml
├── .gitignore
├── .gitmodules
├── .pre-commit-config.yaml
├── LICENSE.md
├── README.md
├── SConstruct
├── addons
└── godot-flexbox
│ ├── assets.gd
│ ├── assets
│ ├── dark
│ │ ├── AlignContentAroundColumnIcon.svg
│ │ ├── AlignContentAroundColumnIcon.svg.import
│ │ ├── AlignContentAroundRowIcon.svg
│ │ ├── AlignContentAroundRowIcon.svg.import
│ │ ├── AlignContentBetweenColumnIcon.svg
│ │ ├── AlignContentBetweenColumnIcon.svg.import
│ │ ├── AlignContentBetweenRowIcon.svg
│ │ ├── AlignContentBetweenRowIcon.svg.import
│ │ ├── AlignContentCenterColumnIcon.svg
│ │ ├── AlignContentCenterColumnIcon.svg.import
│ │ ├── AlignContentCenterRowIcon.svg
│ │ ├── AlignContentCenterRowIcon.svg.import
│ │ ├── AlignContentEndColumnIcon.svg
│ │ ├── AlignContentEndColumnIcon.svg.import
│ │ ├── AlignContentEndRowIcon.svg
│ │ ├── AlignContentEndRowIcon.svg.import
│ │ ├── AlignContentStartColumnIcon.svg
│ │ ├── AlignContentStartColumnIcon.svg.import
│ │ ├── AlignContentStartRowIcon.svg
│ │ ├── AlignContentStartRowIcon.svg.import
│ │ ├── AlignContentStretchColumnIcon.svg
│ │ ├── AlignContentStretchColumnIcon.svg.import
│ │ ├── AlignContentStretchRowIcon.svg
│ │ ├── AlignContentStretchRowIcon.svg.import
│ │ ├── AlignItemsBaselineColumnIcon.svg
│ │ ├── AlignItemsBaselineColumnIcon.svg.import
│ │ ├── AlignItemsBaselineRowIcon.svg
│ │ ├── AlignItemsBaselineRowIcon.svg.import
│ │ ├── AlignItemsCenterColumnIcon.svg
│ │ ├── AlignItemsCenterColumnIcon.svg.import
│ │ ├── AlignItemsCenterRowIcon.svg
│ │ ├── AlignItemsCenterRowIcon.svg.import
│ │ ├── AlignItemsEndColumnIcon.svg
│ │ ├── AlignItemsEndColumnIcon.svg.import
│ │ ├── AlignItemsEndRowIcon.svg
│ │ ├── AlignItemsEndRowIcon.svg.import
│ │ ├── AlignItemsStartColumnIcon.svg
│ │ ├── AlignItemsStartColumnIcon.svg.import
│ │ ├── AlignItemsStartRowIcon.svg
│ │ ├── AlignItemsStartRowIcon.svg.import
│ │ ├── AlignItemsStretchColumnIcon.svg
│ │ ├── AlignItemsStretchColumnIcon.svg.import
│ │ ├── AlignItemsStretchRowIcon.svg
│ │ ├── AlignItemsStretchRowIcon.svg.import
│ │ ├── ArrowReverseIcon.svg
│ │ ├── ArrowReverseIcon.svg.import
│ │ ├── DisplayFlexColumn.svg
│ │ ├── DisplayFlexColumn.svg.import
│ │ ├── DisplayFlexRow.svg
│ │ ├── DisplayFlexRow.svg.import
│ │ ├── FlexWrapNoWrapColumnIcon.svg
│ │ ├── FlexWrapNoWrapColumnIcon.svg.import
│ │ ├── FlexWrapNoWrapRowIcon.svg
│ │ ├── FlexWrapNoWrapRowIcon.svg.import
│ │ ├── FlexWrapWrapColumnIcon.svg
│ │ ├── FlexWrapWrapColumnIcon.svg.import
│ │ ├── FlexWrapWrapRowIcon.svg
│ │ ├── FlexWrapWrapRowIcon.svg.import
│ │ ├── JustifyContentCenterColumnIcon.svg
│ │ ├── JustifyContentCenterColumnIcon.svg.import
│ │ ├── JustifyContentCenterRowIcon.svg
│ │ ├── JustifyContentCenterRowIcon.svg.import
│ │ ├── JustifyContentEndColumnIcon.svg
│ │ ├── JustifyContentEndColumnIcon.svg.import
│ │ ├── JustifyContentEndRowIcon.svg
│ │ ├── JustifyContentEndRowIcon.svg.import
│ │ ├── JustifyContentSpaceAroundColumnIcon.svg
│ │ ├── JustifyContentSpaceAroundColumnIcon.svg.import
│ │ ├── JustifyContentSpaceAroundRowIcon.svg
│ │ ├── JustifyContentSpaceAroundRowIcon.svg.import
│ │ ├── JustifyContentSpaceBetweenColumnIcon.svg
│ │ ├── JustifyContentSpaceBetweenColumnIcon.svg.import
│ │ ├── JustifyContentSpaceBetweenRowIcon.svg
│ │ ├── JustifyContentSpaceBetweenRowIcon.svg.import
│ │ ├── JustifyContentSpaceBetweenRowReverseIcon.svg.import
│ │ ├── JustifyContentSpaceEvenlyColumnIcon.svg
│ │ ├── JustifyContentSpaceEvenlyColumnIcon.svg.import
│ │ ├── JustifyContentSpaceEvenlyRowIcon.svg
│ │ ├── JustifyContentSpaceEvenlyRowIcon.svg.import
│ │ ├── JustifyContentStartColumnIcon.svg
│ │ ├── JustifyContentStartColumnIcon.svg.import
│ │ ├── JustifyContentStartRowIcon.svg
│ │ └── JustifyContentStartRowIcon.svg.import
│ └── light
│ │ ├── AlignContentAroundColumnIcon.svg
│ │ ├── AlignContentAroundColumnIcon.svg.import
│ │ ├── AlignContentAroundRowIcon.svg
│ │ ├── AlignContentAroundRowIcon.svg.import
│ │ ├── AlignContentBetweenColumnIcon.svg
│ │ ├── AlignContentBetweenColumnIcon.svg.import
│ │ ├── AlignContentBetweenRowIcon.svg
│ │ ├── AlignContentBetweenRowIcon.svg.import
│ │ ├── AlignContentCenterColumnIcon.svg
│ │ ├── AlignContentCenterColumnIcon.svg.import
│ │ ├── AlignContentCenterRowIcon.svg
│ │ ├── AlignContentCenterRowIcon.svg.import
│ │ ├── AlignContentEndColumnIcon.svg
│ │ ├── AlignContentEndColumnIcon.svg.import
│ │ ├── AlignContentEndRowIcon.svg
│ │ ├── AlignContentEndRowIcon.svg.import
│ │ ├── AlignContentStartColumnIcon.svg
│ │ ├── AlignContentStartColumnIcon.svg.import
│ │ ├── AlignContentStartRowIcon.svg
│ │ ├── AlignContentStartRowIcon.svg.import
│ │ ├── AlignContentStretchColumnIcon.svg
│ │ ├── AlignContentStretchColumnIcon.svg.import
│ │ ├── AlignContentStretchRowIcon.svg
│ │ ├── AlignContentStretchRowIcon.svg.import
│ │ ├── AlignItemsBaselineColumnIcon.svg
│ │ ├── AlignItemsBaselineColumnIcon.svg.import
│ │ ├── AlignItemsBaselineRowIcon.svg
│ │ ├── AlignItemsBaselineRowIcon.svg.import
│ │ ├── AlignItemsCenterColumnIcon.svg
│ │ ├── AlignItemsCenterColumnIcon.svg.import
│ │ ├── AlignItemsCenterRowIcon.svg
│ │ ├── AlignItemsCenterRowIcon.svg.import
│ │ ├── AlignItemsEndColumnIcon.svg
│ │ ├── AlignItemsEndColumnIcon.svg.import
│ │ ├── AlignItemsEndRowIcon.svg
│ │ ├── AlignItemsEndRowIcon.svg.import
│ │ ├── AlignItemsStartColumnIcon.svg
│ │ ├── AlignItemsStartColumnIcon.svg.import
│ │ ├── AlignItemsStartRowIcon.svg
│ │ ├── AlignItemsStartRowIcon.svg.import
│ │ ├── AlignItemsStretchColumnIcon.svg
│ │ ├── AlignItemsStretchColumnIcon.svg.import
│ │ ├── AlignItemsStretchRowIcon.svg
│ │ ├── AlignItemsStretchRowIcon.svg.import
│ │ ├── ArrowReverseIcon.svg
│ │ ├── ArrowReverseIcon.svg.import
│ │ ├── DisplayFlexColumn.svg
│ │ ├── DisplayFlexColumn.svg.import
│ │ ├── DisplayFlexRow.svg
│ │ ├── DisplayFlexRow.svg.import
│ │ ├── FlexWrapNoWrapColumnIcon.svg
│ │ ├── FlexWrapNoWrapColumnIcon.svg.import
│ │ ├── FlexWrapNoWrapRowIcon.svg
│ │ ├── FlexWrapNoWrapRowIcon.svg.import
│ │ ├── FlexWrapWrapColumnIcon.svg
│ │ ├── FlexWrapWrapColumnIcon.svg.import
│ │ ├── FlexWrapWrapRowIcon.svg
│ │ ├── FlexWrapWrapRowIcon.svg.import
│ │ ├── JustifyContentCenterColumnIcon.svg
│ │ ├── JustifyContentCenterColumnIcon.svg.import
│ │ ├── JustifyContentCenterRowIcon.svg
│ │ ├── JustifyContentCenterRowIcon.svg.import
│ │ ├── JustifyContentEndColumnIcon.svg
│ │ ├── JustifyContentEndColumnIcon.svg.import
│ │ ├── JustifyContentEndRowIcon.svg
│ │ ├── JustifyContentEndRowIcon.svg.import
│ │ ├── JustifyContentSpaceAroundColumnIcon.svg
│ │ ├── JustifyContentSpaceAroundColumnIcon.svg.import
│ │ ├── JustifyContentSpaceAroundRowIcon.svg
│ │ ├── JustifyContentSpaceAroundRowIcon.svg.import
│ │ ├── JustifyContentSpaceBetweenColumnIcon.svg
│ │ ├── JustifyContentSpaceBetweenColumnIcon.svg.import
│ │ ├── JustifyContentSpaceBetweenRowIcon.svg
│ │ ├── JustifyContentSpaceBetweenRowIcon.svg.import
│ │ ├── JustifyContentSpaceEvenlyColumnIcon.svg
│ │ ├── JustifyContentSpaceEvenlyColumnIcon.svg.import
│ │ ├── JustifyContentSpaceEvenlyRowIcon.svg
│ │ ├── JustifyContentSpaceEvenlyRowIcon.svg.import
│ │ ├── JustifyContentStartColumnIcon.svg
│ │ ├── JustifyContentStartColumnIcon.svg.import
│ │ ├── JustifyContentStartRowIcon.svg
│ │ └── JustifyContentStartRowIcon.svg.import
│ ├── flex_container.gd
│ ├── flexbox.gdextension
│ ├── icon.svg
│ ├── icon.svg.import
│ ├── inspector
│ └── inspector_plugin.gd
│ ├── plugin.cfg
│ ├── plugin.gd
│ └── toolbar.gd
├── build.py
├── clean.py
├── demo
├── .gitkeep
├── ColorRect1.gd
├── addons
│ └── addons-link
│ │ ├── plugin.cfg
│ │ └── plugin.gd
├── api_test.gd
├── api_test.tscn
├── default_env.tres
├── export_presets.cfg
├── playground.gd
├── playground.tscn
├── project.godot
├── setup.bat
└── setup.sh
├── docs
├── add-flex-container.png
├── add-flex-container.png.import
├── flex-child-property.png
├── flex-child-property.png.import
├── flex-container-overview.png
├── flex-container-overview.png.import
├── flex-container-property.png
├── flex-container-property.png.import
├── flex-container.gif
├── flexbox-assets-icon.png
└── flexbox-assets-icon.png.import
├── icon.png
├── icon.png.import
├── methods.py
└── src
├── flexbox.cpp
├── flexbox.h
├── register_types.cpp
├── register_types.h
└── yoga
├── BitUtils.h
├── CompactValue.h
├── LICENSE
├── Utils.cpp
├── Utils.h
├── YGConfig.cpp
├── YGConfig.h
├── YGEnums.cpp
├── YGEnums.h
├── YGFloatOptional.h
├── YGLayout.cpp
├── YGLayout.h
├── YGMacros.h
├── YGNode.cpp
├── YGNode.h
├── YGNodePrint.cpp
├── YGNodePrint.h
├── YGStyle.cpp
├── YGStyle.h
├── YGValue.cpp
├── YGValue.h
├── Yoga-internal.h
├── Yoga.cpp
├── Yoga.h
├── event
├── event.cpp
└── event.h
├── log.cpp
└── log.h
/.editorconfig:
--------------------------------------------------------------------------------
1 | [*.{js,py,json}]
2 | indent_style = space
3 | indent_size = 4
4 | [*.{gd,tscn}]
5 | indent_style = tab
6 | [{package.json}]
7 | indent_style = space
8 | indent_size = 2
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * linguist-vendored
2 | *.cpp linguist-vendored=false
3 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | # Godot-specific ignores
3 | .import/
4 | .godot
5 | # Imported translations (automatically generated from CSV files)
6 | *.translation
7 | build
8 | export
9 | # Mono-specific ignores
10 | .mono/
11 | data_*/
12 | mono_crash.*.json
13 |
14 | # System/tool-specific ignores
15 | .directory
16 | *~
17 |
18 | # Logs and databases #
19 | ######################
20 | *.log
21 | *.sql
22 | *.sqlite
23 | *.db
24 | # Do not ignore the database that is to be opened in read-only mode!
25 | !data_to_be_packaged.db
26 |
27 | # Compiled source #
28 | ###################
29 | *.com
30 | *.class
31 | *.exe
32 | *.o
33 | *.os
34 | *.obj
35 | *.exp
36 | *.pdb
37 | *.lib
38 | *.bc
39 |
40 | # OS generated files #
41 | ######################
42 | .DS_Store
43 | .DS_Store?
44 | ._*
45 | .Spotlight-V100
46 | .Trashes
47 | ehthumbs.db
48 | Thumbs.db
49 |
50 | # Etc
51 | .sconsign.dblite
52 | demo/build
53 | test_backup_new.json
54 | test_backup_base64_new.json
55 |
56 | # VS
57 | vsproj/.vs/
58 | vsproj/Debug/
59 | vsproj/Release/
60 | vsproj/x64/
61 | vsproj/x86/
62 | vsproj/gdsqlite.vcxproj.*
63 |
64 | .vscode
65 | demo/addons/godot-flexbox
66 | dist
67 | bin
68 | addons/*.dll
69 | demo/.godot
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "godot-cpp"]
2 | path = godot-cpp
3 | url = https://github.com/godotengine/godot-cpp
4 |
--------------------------------------------------------------------------------
/.pre-commit-config.yaml:
--------------------------------------------------------------------------------
1 | default_language_version:
2 | python: python3
3 |
4 | exclude: |
5 | (?x)^(
6 | gdextension/extension_api\.json|
7 | gdextension/gdextension_interface\.h
8 | )$
9 |
10 | repos:
11 | - repo: https://gitclone.com/github.com/pre-commit/mirrors-clang-format
12 | rev: v17.0.6
13 | hooks:
14 | - id: clang-format
15 |
16 | - repo: https://gitclone.com/github.com/astral-sh/ruff-pre-commit
17 | rev: v0.4.4
18 | hooks:
19 | - id: ruff
20 | args: [--fix]
21 | - id: ruff-format
22 |
23 | - repo: https://gitclone.com/github.com/pre-commit/mirrors-mypy
24 | rev: v0.971
25 | hooks:
26 | - id: mypy
27 | files: \.py$
28 | types_or: [text]
29 |
30 | - repo: https://gitclone.com/github.com/codespell-project/codespell
31 | rev: v2.3.0
32 | hooks:
33 | - id: codespell
34 | additional_dependencies: [tomli]
35 |
36 | - repo: local
37 | hooks:
38 | - id: copyright-headers
39 | name: copyright-headers
40 | language: python
41 | entry: python misc/scripts/copyright_headers.py
42 | files: \.(c|h)pp$
43 | exclude: ^test/
44 |
45 | - id: header-guards
46 | name: header-guards
47 | language: python
48 | entry: python misc/scripts/header_guards.py
49 | files: \.hpp$
50 | exclude: ^test/
51 |
52 | - id: file-format
53 | name: file-format
54 | language: python
55 | entry: python misc/scripts/file_format.py
56 | types_or: [text]
57 |
58 | - id: check-get-file-list
59 | name: check-get-file-list
60 | language: python
61 | entry: python misc/scripts/check_get_file_list.py
62 | pass_filenames: false
63 | always_run: true
64 | stages: [manual]
65 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023 citizenll
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Godot Flexbox Layout
2 |
3 |
4 |
5 |
6 |
7 |
8 | Flexbox layout for Godot Engine
9 |
10 |
11 | ## New version2.0!
12 | Godot4.1 New Version Support, Enhanced User Experience, Just Like Native Components.
13 |
14 | ## Work in Progress 🧑💻
15 | 🎉 Support 4.1 now !
16 |
17 | | Old Version | Link |
18 | |---------------- |-------------------------------------------------------------------- |
19 | | Godot 4.0 | [Click Here ✔️](https://github.com/citizenll/godot-flexbox/tree/4.0) |
20 | | Godot 3.5 | [Click Here ✔️](https://github.com/citizenll/godot-flexbox/tree/main) |
21 |
22 | This is a work in progress. It can be used with basic functionality, and has been tested on Windows and Android.
23 |
24 | ### Learn About Flexbox
25 | - [A Complete Guide to Flexbox](https://css-tricks.com/snippets/css/a-guide-to-flexbox/)
26 | - [Flexbox Froggy](https://flexboxfroggy.com/)
27 |
28 | ## Getting Started
29 | ### Installation
30 | - Get the latest release from the Godot Asset Library [here](https://godotengine.org/asset-library/asset/1811)
31 | - Clone the repository and copy the `addons` folder into your project
32 |
33 | ### Usage
34 | - Add the `FlexContainer` node to your scene
35 |
36 |
37 |
38 |
39 | - Change the `FlexDirection` property in the inspector, and you will see the layout change. You can also change the child properties in the child inspector.
40 |
41 | 
42 |
43 |
44 | ##
45 |
46 | ## License
47 | 
48 |
--------------------------------------------------------------------------------
/SConstruct:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | import os
3 | import sys
4 |
5 | from methods import print_error
6 |
7 |
8 | libname = "godot-flexbox"
9 | projectdir = "godot-flexbox"
10 |
11 | localEnv = Environment(tools=["default"], PLATFORM="")
12 |
13 | customs = ["custom.py"]
14 | customs = [os.path.abspath(path) for path in customs]
15 |
16 | opts = Variables(customs, ARGUMENTS)
17 | opts.Update(localEnv)
18 |
19 | Help(opts.GenerateHelpText(localEnv))
20 |
21 | def add_sources(sources, dir, extension):
22 | for f in os.listdir(dir):
23 | if f.endswith("." + extension):
24 | sources.append(dir + "/" + f)
25 |
26 | env = localEnv.Clone()
27 |
28 | submodule_initialized = False
29 | dir_name = 'godot-cpp'
30 | if os.path.isdir(dir_name):
31 | if os.listdir(dir_name):
32 | submodule_initialized = True
33 |
34 | if not submodule_initialized:
35 | print_error("""godot-cpp is not available within this folder, as Git submodules haven't been initialized.
36 | Run the following command to download godot-cpp:
37 |
38 | git submodule update --init --recursive""")
39 | sys.exit(1)
40 |
41 | env = SConscript("godot-cpp/SConstruct", {"env": env, "customs": customs})
42 |
43 | env.Append(CPPPATH=["src/"])
44 | sources = []
45 | add_sources(sources, "src", "cpp")
46 | add_sources(sources, "src/yoga", "cpp")
47 | add_sources(sources, "src/yoga/event", "cpp")
48 |
49 | if env["target"] in ["editor", "template_debug"]:
50 | try:
51 | doc_data = env.GodotCPPDocData("src/gen/doc_data.gen.cpp", source=Glob("doc_classes/*.xml"))
52 | sources.append(doc_data)
53 | except AttributeError:
54 | print("Not including class reference as we're targeting a pre-4.3 baseline.")
55 |
56 | file = "{}{}{}".format(libname, env["suffix"], env["SHLIBSUFFIX"])
57 | filepath = ""
58 |
59 | if env["platform"] == "macos" or env["platform"] == "ios":
60 | filepath = "{}.framework/".format(env["platform"])
61 | file = "{}.{}.{}".format(libname, env["platform"], env["target"])
62 |
63 | libraryfile = "bin/{}/{}{}".format(env["platform"], filepath, file)
64 | library = env.SharedLibrary(
65 | libraryfile,
66 | source=sources,
67 | )
68 |
69 | copy = env.InstallAs("{}/bin/{}/{}lib{}".format(projectdir, env["platform"], filepath, file), library)
70 |
71 | default_args = [library, copy]
72 | Default(*default_args)
73 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets.gd:
--------------------------------------------------------------------------------
1 | class_name IconAssets
2 |
3 | static var icons_map
4 | static var current_theme
5 | static var color_conversion_map = {}
6 |
7 | const flex_icons_sources = [
8 | "AlignContentAroundRowIcon",
9 | "AlignContentAroundColumnIcon",
10 | "AlignContentBetweenRowIcon",
11 | "AlignContentBetweenColumnIcon",
12 | "AlignContentCenterRowIcon",
13 | "AlignContentCenterColumnIcon",
14 | "AlignContentEndRowIcon",
15 | "AlignContentEndColumnIcon",
16 | "AlignContentStartRowIcon",
17 | "AlignContentStartColumnIcon",
18 | "AlignContentStretchRowIcon",
19 | "AlignContentStretchColumnIcon",
20 |
21 | "AlignItemsBaselineColumnIcon",
22 | "AlignItemsBaselineRowIcon",
23 | "AlignItemsCenterColumnIcon",
24 | "AlignItemsCenterRowIcon",
25 | "AlignItemsEndColumnIcon",
26 | "AlignItemsEndRowIcon",
27 | "AlignItemsStartColumnIcon",
28 | "AlignItemsStartRowIcon",
29 | "AlignItemsStretchColumnIcon",
30 | "AlignItemsStretchRowIcon",
31 |
32 | "DisplayFlexRow",
33 | "DisplayFlexColumn",
34 | "ArrowReverseIcon",
35 |
36 | "FlexWrapNoWrapColumnIcon",
37 | "FlexWrapNoWrapRowIcon",
38 | "FlexWrapWrapColumnIcon",
39 | "FlexWrapWrapRowIcon",
40 |
41 | "JustifyContentCenterColumnIcon",
42 | "JustifyContentCenterRowIcon",
43 | "JustifyContentEndColumnIcon",
44 | "JustifyContentEndRowIcon",
45 | "JustifyContentSpaceAroundColumnIcon",
46 | "JustifyContentSpaceAroundRowIcon",
47 | "JustifyContentSpaceBetweenColumnIcon",
48 | "JustifyContentSpaceBetweenRowIcon",
49 | "JustifyContentSpaceEvenlyColumnIcon",
50 | "JustifyContentSpaceEvenlyRowIcon",
51 | "JustifyContentStartColumnIcon",
52 | "JustifyContentStartRowIcon",
53 | ]
54 |
55 | static func get_icon(icon:String):
56 | return icons_map[current_theme].get(icon)
57 |
58 |
59 | #maybe bugs here, map should be initial here
60 | static func generate_icons(dark_theme):
61 | if icons_map == null:
62 | icons_map = {}
63 | if icons_map.has(dark_theme):
64 | current_theme = dark_theme
65 | return
66 | if current_theme != dark_theme:
67 | current_theme = dark_theme
68 | icons_map[current_theme] = {}
69 | var icon_theme = "dark" if dark_theme else "light"
70 | for icon_name in flex_icons_sources:
71 | icons_map[current_theme][icon_name] = load("res://addons/godot-flexbox/assets/%s/%s.svg" % [icon_theme, icon_name])
72 |
73 |
74 | static func add_conversion_color_pair(p_from_color:String, p_to_color:String):
75 | color_conversion_map[Color.html(p_from_color)] = Color.html(p_to_color)
76 |
77 |
78 | static func conversion_color_pairs():
79 | color_conversion_map = {}
80 | add_conversion_color_pair("#d6d6d6", "#474747"); # Highlighted part
81 | add_conversion_color_pair("#474747", "#d6d6d6"); # Background part
82 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentAroundColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentAroundColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://d2l1kkssssaxp"
6 | path="res://.godot/imported/AlignContentAroundColumnIcon.svg-17b7bde393ab6adaa268b2798824d09b.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentAroundColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentAroundColumnIcon.svg-17b7bde393ab6adaa268b2798824d09b.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentAroundRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentAroundRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cb1pyfu0vgkk1"
6 | path="res://.godot/imported/AlignContentAroundRowIcon.svg-cba31d3e2cb2814c6c9754f54ba99e3f.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentAroundRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentAroundRowIcon.svg-cba31d3e2cb2814c6c9754f54ba99e3f.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentBetweenColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentBetweenColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://1tuprcke6b3q"
6 | path="res://.godot/imported/AlignContentBetweenColumnIcon.svg-9afaff8eb0d52c831e9744a6274140d2.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentBetweenColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentBetweenColumnIcon.svg-9afaff8eb0d52c831e9744a6274140d2.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentBetweenRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentBetweenRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://b3vvj6nsa3elh"
6 | path="res://.godot/imported/AlignContentBetweenRowIcon.svg-158985a6f23611020a314ec7766b2774.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentBetweenRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentBetweenRowIcon.svg-158985a6f23611020a314ec7766b2774.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentCenterColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentCenterColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://clevjexvw81s2"
6 | path="res://.godot/imported/AlignContentCenterColumnIcon.svg-08aa103afcf470f41a749b0fb2d99d82.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentCenterColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentCenterColumnIcon.svg-08aa103afcf470f41a749b0fb2d99d82.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentCenterRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentCenterRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cfh1fayri054d"
6 | path="res://.godot/imported/AlignContentCenterRowIcon.svg-b53ff1cff2db32cd9dbc50e9faa97318.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentCenterRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentCenterRowIcon.svg-b53ff1cff2db32cd9dbc50e9faa97318.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentEndColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentEndColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://buai0bv8miqrx"
6 | path="res://.godot/imported/AlignContentEndColumnIcon.svg-05770fba0491527fd1aa0f93463055f7.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentEndColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentEndColumnIcon.svg-05770fba0491527fd1aa0f93463055f7.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentEndRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentEndRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dpwkqbay3gfi7"
6 | path="res://.godot/imported/AlignContentEndRowIcon.svg-16c42695d544572c28c7a549c03ef6e5.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentEndRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentEndRowIcon.svg-16c42695d544572c28c7a549c03ef6e5.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentStartColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentStartColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bgh1u6p45ydad"
6 | path="res://.godot/imported/AlignContentStartColumnIcon.svg-c7a947a2f05d8cac15b8ee078ffcd394.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentStartColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentStartColumnIcon.svg-c7a947a2f05d8cac15b8ee078ffcd394.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentStartRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentStartRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://b2hof4hdg1idm"
6 | path="res://.godot/imported/AlignContentStartRowIcon.svg-87b04e46a18453a15fb124940ed848bf.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentStartRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentStartRowIcon.svg-87b04e46a18453a15fb124940ed848bf.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentStretchColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentStretchColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cn28p8262kj8c"
6 | path="res://.godot/imported/AlignContentStretchColumnIcon.svg-2138f6a1dd3cd0e6c36dc134e4b05be4.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentStretchColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentStretchColumnIcon.svg-2138f6a1dd3cd0e6c36dc134e4b05be4.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentStretchRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignContentStretchRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://mjhhl7uu0oe4"
6 | path="res://.godot/imported/AlignContentStretchRowIcon.svg-a266e80aa9bb8b02b559638407561029.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignContentStretchRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentStretchRowIcon.svg-a266e80aa9bb8b02b559638407561029.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsBaselineColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsBaselineColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cmyap54y4yo35"
6 | path="res://.godot/imported/AlignItemsBaselineColumnIcon.svg-12db9ba8b1c5af2f67b4496f15d2a1b5.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsBaselineColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsBaselineColumnIcon.svg-12db9ba8b1c5af2f67b4496f15d2a1b5.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsBaselineRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsBaselineRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://daysqt8ngikir"
6 | path="res://.godot/imported/AlignItemsBaselineRowIcon.svg-ee5f5f80c57ab0b9c1bb8a5acf7a7ff6.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsBaselineRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsBaselineRowIcon.svg-ee5f5f80c57ab0b9c1bb8a5acf7a7ff6.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsCenterColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsCenterColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://i3yof2smssw7"
6 | path="res://.godot/imported/AlignItemsCenterColumnIcon.svg-ab2ddd42e3b55aa9dcfb797f6664ebbf.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsCenterColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsCenterColumnIcon.svg-ab2ddd42e3b55aa9dcfb797f6664ebbf.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsCenterRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsCenterRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dv74mug5v87k6"
6 | path="res://.godot/imported/AlignItemsCenterRowIcon.svg-c0171f6e84379dae8f5d5cca5e70651b.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsCenterRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsCenterRowIcon.svg-c0171f6e84379dae8f5d5cca5e70651b.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsEndColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsEndColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cv0qfpmcerq8t"
6 | path="res://.godot/imported/AlignItemsEndColumnIcon.svg-0b1bec61efada17b6ef38f636a37118d.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsEndColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsEndColumnIcon.svg-0b1bec61efada17b6ef38f636a37118d.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsEndRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsEndRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://uyy8l6dk5r4k"
6 | path="res://.godot/imported/AlignItemsEndRowIcon.svg-78e2def3804324657d53b0434695fc5d.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsEndRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsEndRowIcon.svg-78e2def3804324657d53b0434695fc5d.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsStartColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsStartColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://fwuvoi0hdms0"
6 | path="res://.godot/imported/AlignItemsStartColumnIcon.svg-b03da1dff93ac7771c712ddf441e5466.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsStartColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsStartColumnIcon.svg-b03da1dff93ac7771c712ddf441e5466.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsStartRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsStartRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://csb7tfc5p5bhm"
6 | path="res://.godot/imported/AlignItemsStartRowIcon.svg-2c1c6961d68a00a806c5094555410a31.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsStartRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsStartRowIcon.svg-2c1c6961d68a00a806c5094555410a31.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsStretchColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsStretchColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cf81mj2tgw2b5"
6 | path="res://.godot/imported/AlignItemsStretchColumnIcon.svg-ecf2a24725ab2745508c65d0c3fa73a7.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsStretchColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsStretchColumnIcon.svg-ecf2a24725ab2745508c65d0c3fa73a7.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsStretchRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/AlignItemsStretchRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://qw8gc5s41jag"
6 | path="res://.godot/imported/AlignItemsStretchRowIcon.svg-9b7b56f1bb1014d12909ed7e17069829.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/AlignItemsStretchRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsStretchRowIcon.svg-9b7b56f1bb1014d12909ed7e17069829.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/ArrowReverseIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/ArrowReverseIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://c5lajpvqkfcv2"
6 | path="res://.godot/imported/ArrowReverseIcon.svg-693bd0370d26679b76ee3608e9c4045e.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/ArrowReverseIcon.svg"
14 | dest_files=["res://.godot/imported/ArrowReverseIcon.svg-693bd0370d26679b76ee3608e9c4045e.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/DisplayFlexColumn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/DisplayFlexColumn.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://c8x3hek74tddw"
6 | path="res://.godot/imported/DisplayFlexColumn.svg-9fb088e3aea8789b5fbc455f02b614a7.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/DisplayFlexColumn.svg"
14 | dest_files=["res://.godot/imported/DisplayFlexColumn.svg-9fb088e3aea8789b5fbc455f02b614a7.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/DisplayFlexRow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/DisplayFlexRow.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://b2xodbt05umvh"
6 | path="res://.godot/imported/DisplayFlexRow.svg-ef4eb78c813528e12d55e4b37a753a01.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/DisplayFlexRow.svg"
14 | dest_files=["res://.godot/imported/DisplayFlexRow.svg-ef4eb78c813528e12d55e4b37a753a01.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/FlexWrapNoWrapColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/FlexWrapNoWrapColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cfpwpkwc4qfsc"
6 | path="res://.godot/imported/FlexWrapNoWrapColumnIcon.svg-1a0c68d7c077fa1651c1c62b2c35e0f5.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/FlexWrapNoWrapColumnIcon.svg"
14 | dest_files=["res://.godot/imported/FlexWrapNoWrapColumnIcon.svg-1a0c68d7c077fa1651c1c62b2c35e0f5.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/FlexWrapNoWrapRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/FlexWrapNoWrapRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dqhbh3ko4igdy"
6 | path="res://.godot/imported/FlexWrapNoWrapRowIcon.svg-6a6e67f3589c8062f614346cb3b32d5a.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/FlexWrapNoWrapRowIcon.svg"
14 | dest_files=["res://.godot/imported/FlexWrapNoWrapRowIcon.svg-6a6e67f3589c8062f614346cb3b32d5a.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/FlexWrapWrapColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/FlexWrapWrapColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://shf5a4lgmjli"
6 | path="res://.godot/imported/FlexWrapWrapColumnIcon.svg-9cc96abc98f89b3767c8fffe67a41432.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/FlexWrapWrapColumnIcon.svg"
14 | dest_files=["res://.godot/imported/FlexWrapWrapColumnIcon.svg-9cc96abc98f89b3767c8fffe67a41432.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/FlexWrapWrapRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/FlexWrapWrapRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://8n0yyxrr1pno"
6 | path="res://.godot/imported/FlexWrapWrapRowIcon.svg-0f7b98c48acc1634f334dae13a7ee95b.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/FlexWrapWrapRowIcon.svg"
14 | dest_files=["res://.godot/imported/FlexWrapWrapRowIcon.svg-0f7b98c48acc1634f334dae13a7ee95b.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentCenterColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentCenterColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bsx27gd0ja8lw"
6 | path="res://.godot/imported/JustifyContentCenterColumnIcon.svg-accf8e59f9796ffb1efa272c77c23e10.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentCenterColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentCenterColumnIcon.svg-accf8e59f9796ffb1efa272c77c23e10.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentCenterRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentCenterRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bi5kl220r8lv0"
6 | path="res://.godot/imported/JustifyContentCenterRowIcon.svg-3e0a34413a4f54b2eadecd6a77c23b7c.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentCenterRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentCenterRowIcon.svg-3e0a34413a4f54b2eadecd6a77c23b7c.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentEndColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentEndColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dljvexaavrypt"
6 | path="res://.godot/imported/JustifyContentEndColumnIcon.svg-24bea85f06d9bb753047b623509c4165.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentEndColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentEndColumnIcon.svg-24bea85f06d9bb753047b623509c4165.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentEndRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentEndRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://ddqsn7agtl6pn"
6 | path="res://.godot/imported/JustifyContentEndRowIcon.svg-ce50017de708c2f87254fa5076d636a0.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentEndRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentEndRowIcon.svg-ce50017de708c2f87254fa5076d636a0.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceAroundColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceAroundColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://pu6etw6b3oba"
6 | path="res://.godot/imported/JustifyContentSpaceAroundColumnIcon.svg-bdb07b48ea99ef0796b795f21084c1c5.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentSpaceAroundColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceAroundColumnIcon.svg-bdb07b48ea99ef0796b795f21084c1c5.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceAroundRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceAroundRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://be7eq58hdnrc6"
6 | path="res://.godot/imported/JustifyContentSpaceAroundRowIcon.svg-977089142de0b372b82d9e3ac5adc4d2.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentSpaceAroundRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceAroundRowIcon.svg-977089142de0b372b82d9e3ac5adc4d2.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceBetweenColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceBetweenColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://t3r0ja1j3ipq"
6 | path="res://.godot/imported/JustifyContentSpaceBetweenColumnIcon.svg-d4fa6a9009ecb6fc68cd7018813cabd8.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentSpaceBetweenColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceBetweenColumnIcon.svg-d4fa6a9009ecb6fc68cd7018813cabd8.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceBetweenRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceBetweenRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://nc21g00imy6k"
6 | path="res://.godot/imported/JustifyContentSpaceBetweenRowIcon.svg-51ac13a232d207876cb9aed9df479a5a.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentSpaceBetweenRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceBetweenRowIcon.svg-51ac13a232d207876cb9aed9df479a5a.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceBetweenRowReverseIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cvs4qsfsqpvdo"
6 | path="res://.godot/imported/JustifyContentSpaceBetweenRowReverseIcon.svg-ea218c8437e61b23243e4acc0ffdd760.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentSpaceBetweenRowReverseIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceBetweenRowReverseIcon.svg-ea218c8437e61b23243e4acc0ffdd760.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceEvenlyColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceEvenlyColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://6cpoxpuuluhq"
6 | path="res://.godot/imported/JustifyContentSpaceEvenlyColumnIcon.svg-828d3d44bb7e20a750fc80286a4c29a1.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentSpaceEvenlyColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceEvenlyColumnIcon.svg-828d3d44bb7e20a750fc80286a4c29a1.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceEvenlyRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentSpaceEvenlyRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://hy2b0jjtf120"
6 | path="res://.godot/imported/JustifyContentSpaceEvenlyRowIcon.svg-55792a1a344c0bae9dfa4608ef3c49af.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentSpaceEvenlyRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceEvenlyRowIcon.svg-55792a1a344c0bae9dfa4608ef3c49af.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentStartColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentStartColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cgtp50lsbar7i"
6 | path="res://.godot/imported/JustifyContentStartColumnIcon.svg-e155c63c747389449d93300660a29fb2.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentStartColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentStartColumnIcon.svg-e155c63c747389449d93300660a29fb2.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentStartRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/dark/JustifyContentStartRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://d4kospxdnt1ss"
6 | path="res://.godot/imported/JustifyContentStartRowIcon.svg-ed628b132e62e7d60864ebcf338cc71e.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/dark/JustifyContentStartRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentStartRowIcon.svg-ed628b132e62e7d60864ebcf338cc71e.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentAroundColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentAroundColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dwf2gmw5ef1a6"
6 | path="res://.godot/imported/AlignContentAroundColumnIcon.svg-3ea92ccb0a5e10d911d8c6fad36c2755.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentAroundColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentAroundColumnIcon.svg-3ea92ccb0a5e10d911d8c6fad36c2755.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentAroundRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentAroundRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://0o1dl3dq7r0q"
6 | path="res://.godot/imported/AlignContentAroundRowIcon.svg-a4a15f8d1b096bf115f3f8045152e9a5.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentAroundRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentAroundRowIcon.svg-a4a15f8d1b096bf115f3f8045152e9a5.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentBetweenColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentBetweenColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://c3s1xi2ljjm0f"
6 | path="res://.godot/imported/AlignContentBetweenColumnIcon.svg-bbcbfdd5124dbdf8a84cb94e56e12d36.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentBetweenColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentBetweenColumnIcon.svg-bbcbfdd5124dbdf8a84cb94e56e12d36.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentBetweenRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentBetweenRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://ejmot13uuytk"
6 | path="res://.godot/imported/AlignContentBetweenRowIcon.svg-df085cce35426975e3ef1d29dcd64b20.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentBetweenRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentBetweenRowIcon.svg-df085cce35426975e3ef1d29dcd64b20.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentCenterColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentCenterColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://vlre2d4yi842"
6 | path="res://.godot/imported/AlignContentCenterColumnIcon.svg-9451ddf6211502b718814951b3b90bea.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentCenterColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentCenterColumnIcon.svg-9451ddf6211502b718814951b3b90bea.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentCenterRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentCenterRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://12u57fprrlsf"
6 | path="res://.godot/imported/AlignContentCenterRowIcon.svg-7cc7d9074a68f1087717d62bbf28e09a.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentCenterRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentCenterRowIcon.svg-7cc7d9074a68f1087717d62bbf28e09a.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentEndColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentEndColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cc7ilnsoah6ya"
6 | path="res://.godot/imported/AlignContentEndColumnIcon.svg-1243f80b28d6ba1248d2074ef8d6eb7a.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentEndColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentEndColumnIcon.svg-1243f80b28d6ba1248d2074ef8d6eb7a.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentEndRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentEndRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://c6spio46jyikj"
6 | path="res://.godot/imported/AlignContentEndRowIcon.svg-17dbdb69df46fc66bce931323d971c10.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentEndRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentEndRowIcon.svg-17dbdb69df46fc66bce931323d971c10.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentStartColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentStartColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bdd6j2o78lve"
6 | path="res://.godot/imported/AlignContentStartColumnIcon.svg-bde962a851687447e11ab92a23dce797.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentStartColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentStartColumnIcon.svg-bde962a851687447e11ab92a23dce797.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentStartRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentStartRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://c5q3e5woxt5r8"
6 | path="res://.godot/imported/AlignContentStartRowIcon.svg-654c06687c8dd91fe18681e2bb4559fc.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentStartRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentStartRowIcon.svg-654c06687c8dd91fe18681e2bb4559fc.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentStretchColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentStretchColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dgt2dmdb00ena"
6 | path="res://.godot/imported/AlignContentStretchColumnIcon.svg-1921be1743acca4b889db4406ef95a9c.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentStretchColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentStretchColumnIcon.svg-1921be1743acca4b889db4406ef95a9c.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentStretchRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignContentStretchRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://c5iamewhnaiob"
6 | path="res://.godot/imported/AlignContentStretchRowIcon.svg-fadb6f7c1d0ae91835a95e57c2c4e422.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignContentStretchRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignContentStretchRowIcon.svg-fadb6f7c1d0ae91835a95e57c2c4e422.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsBaselineColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsBaselineColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://douc6t0i76xpb"
6 | path="res://.godot/imported/AlignItemsBaselineColumnIcon.svg-ef60cd22084bb2282f76f6a33bd94d69.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsBaselineColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsBaselineColumnIcon.svg-ef60cd22084bb2282f76f6a33bd94d69.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsBaselineRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsBaselineRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cmyqq61xro30v"
6 | path="res://.godot/imported/AlignItemsBaselineRowIcon.svg-1c7350620fa51fb2e3054a3efbc058f4.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsBaselineRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsBaselineRowIcon.svg-1c7350620fa51fb2e3054a3efbc058f4.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsCenterColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsCenterColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bv1t4i51mmyuw"
6 | path="res://.godot/imported/AlignItemsCenterColumnIcon.svg-39679053db07d6e8788f63fe5ab47a5b.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsCenterColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsCenterColumnIcon.svg-39679053db07d6e8788f63fe5ab47a5b.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsCenterRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsCenterRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://duoaus1q6obl6"
6 | path="res://.godot/imported/AlignItemsCenterRowIcon.svg-8c16e2fc5c1187b65c35367221ec857f.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsCenterRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsCenterRowIcon.svg-8c16e2fc5c1187b65c35367221ec857f.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsEndColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsEndColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bnf0tuggk6dsq"
6 | path="res://.godot/imported/AlignItemsEndColumnIcon.svg-83a61ea4a0e19695198bcf92464355ee.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsEndColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsEndColumnIcon.svg-83a61ea4a0e19695198bcf92464355ee.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsEndRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsEndRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dbwiny8ijxiqd"
6 | path="res://.godot/imported/AlignItemsEndRowIcon.svg-1055863e9fd1b56e7d7cc6dac08865d2.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsEndRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsEndRowIcon.svg-1055863e9fd1b56e7d7cc6dac08865d2.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsStartColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsStartColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://fvtmxf6mivad"
6 | path="res://.godot/imported/AlignItemsStartColumnIcon.svg-aa652fd0edd7b240d3f4e4ea33f02800.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsStartColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsStartColumnIcon.svg-aa652fd0edd7b240d3f4e4ea33f02800.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsStartRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsStartRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bwdqqtveo4xi8"
6 | path="res://.godot/imported/AlignItemsStartRowIcon.svg-abb581aeb298ed6357897bf5bd185b45.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsStartRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsStartRowIcon.svg-abb581aeb298ed6357897bf5bd185b45.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsStretchColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsStretchColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://qvvegx8t7xaq"
6 | path="res://.godot/imported/AlignItemsStretchColumnIcon.svg-63b7a2726e18be64ae7c913f522b2dce.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsStretchColumnIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsStretchColumnIcon.svg-63b7a2726e18be64ae7c913f522b2dce.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsStretchRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/AlignItemsStretchRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dpy2ak84quhbo"
6 | path="res://.godot/imported/AlignItemsStretchRowIcon.svg-db5ad2c2cbf0334cf61557c308632908.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/AlignItemsStretchRowIcon.svg"
14 | dest_files=["res://.godot/imported/AlignItemsStretchRowIcon.svg-db5ad2c2cbf0334cf61557c308632908.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/ArrowReverseIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/ArrowReverseIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://chniyubocatpq"
6 | path="res://.godot/imported/ArrowReverseIcon.svg-3753ebed3e03bd38a747b235f0f283e7.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/ArrowReverseIcon.svg"
14 | dest_files=["res://.godot/imported/ArrowReverseIcon.svg-3753ebed3e03bd38a747b235f0f283e7.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/DisplayFlexColumn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/DisplayFlexColumn.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cqnllhfyc4pk"
6 | path="res://.godot/imported/DisplayFlexColumn.svg-5a04fd917c6058c68b9b6265010d5332.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/DisplayFlexColumn.svg"
14 | dest_files=["res://.godot/imported/DisplayFlexColumn.svg-5a04fd917c6058c68b9b6265010d5332.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/DisplayFlexRow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/DisplayFlexRow.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bhgxno550h00q"
6 | path="res://.godot/imported/DisplayFlexRow.svg-4e36f287e538c23f8d6dc10c42e94313.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/DisplayFlexRow.svg"
14 | dest_files=["res://.godot/imported/DisplayFlexRow.svg-4e36f287e538c23f8d6dc10c42e94313.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/FlexWrapNoWrapColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/FlexWrapNoWrapColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bu1715ds2ijp1"
6 | path="res://.godot/imported/FlexWrapNoWrapColumnIcon.svg-08d118e903573a13793678e2d4f452bc.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/FlexWrapNoWrapColumnIcon.svg"
14 | dest_files=["res://.godot/imported/FlexWrapNoWrapColumnIcon.svg-08d118e903573a13793678e2d4f452bc.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/FlexWrapNoWrapRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/FlexWrapNoWrapRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://b0wedewsjpy25"
6 | path="res://.godot/imported/FlexWrapNoWrapRowIcon.svg-8e02a04c352769d6b71ae7aa2004749f.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/FlexWrapNoWrapRowIcon.svg"
14 | dest_files=["res://.godot/imported/FlexWrapNoWrapRowIcon.svg-8e02a04c352769d6b71ae7aa2004749f.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/FlexWrapWrapColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/FlexWrapWrapColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://ccbxhj7unowvu"
6 | path="res://.godot/imported/FlexWrapWrapColumnIcon.svg-897aa98e7a65bee2aaa5144fa18e8438.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/FlexWrapWrapColumnIcon.svg"
14 | dest_files=["res://.godot/imported/FlexWrapWrapColumnIcon.svg-897aa98e7a65bee2aaa5144fa18e8438.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/FlexWrapWrapRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/FlexWrapWrapRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bjawca18kmi6o"
6 | path="res://.godot/imported/FlexWrapWrapRowIcon.svg-799e135e506dfdab754419131fce3ec8.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/FlexWrapWrapRowIcon.svg"
14 | dest_files=["res://.godot/imported/FlexWrapWrapRowIcon.svg-799e135e506dfdab754419131fce3ec8.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentCenterColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentCenterColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://br6d2cdh6brb8"
6 | path="res://.godot/imported/JustifyContentCenterColumnIcon.svg-390bf37d831b72d167acb189e98f3f3b.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentCenterColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentCenterColumnIcon.svg-390bf37d831b72d167acb189e98f3f3b.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentCenterRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentCenterRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://do6glmq7p1j5f"
6 | path="res://.godot/imported/JustifyContentCenterRowIcon.svg-423f3e579c6a82a36cf6f44b3c41b0f4.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentCenterRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentCenterRowIcon.svg-423f3e579c6a82a36cf6f44b3c41b0f4.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentEndColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentEndColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cxvwsi7j32d5n"
6 | path="res://.godot/imported/JustifyContentEndColumnIcon.svg-ca61604f07e9d9b3d2fa28bd212e3cda.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentEndColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentEndColumnIcon.svg-ca61604f07e9d9b3d2fa28bd212e3cda.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentEndRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentEndRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://btiem8644whxi"
6 | path="res://.godot/imported/JustifyContentEndRowIcon.svg-13153e78a3cae8ea754e6eefef410197.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentEndRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentEndRowIcon.svg-13153e78a3cae8ea754e6eefef410197.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceAroundColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceAroundColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://c838yxs5geabp"
6 | path="res://.godot/imported/JustifyContentSpaceAroundColumnIcon.svg-a1752d3652544978545669e8c13ed236.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentSpaceAroundColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceAroundColumnIcon.svg-a1752d3652544978545669e8c13ed236.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceAroundRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceAroundRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cvowf4uv4i1bg"
6 | path="res://.godot/imported/JustifyContentSpaceAroundRowIcon.svg-a003e4485b6d05998c604153368fd5a1.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentSpaceAroundRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceAroundRowIcon.svg-a003e4485b6d05998c604153368fd5a1.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceBetweenColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceBetweenColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://0ta308u84l7g"
6 | path="res://.godot/imported/JustifyContentSpaceBetweenColumnIcon.svg-eb4ab78e07a17e0471de6af795e3ab98.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentSpaceBetweenColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceBetweenColumnIcon.svg-eb4ab78e07a17e0471de6af795e3ab98.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceBetweenRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceBetweenRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cdlghjoe0wfc3"
6 | path="res://.godot/imported/JustifyContentSpaceBetweenRowIcon.svg-56d9c467f96858dcc38727d0fa25a3f4.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentSpaceBetweenRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceBetweenRowIcon.svg-56d9c467f96858dcc38727d0fa25a3f4.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceEvenlyColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceEvenlyColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dghgma1uugkkv"
6 | path="res://.godot/imported/JustifyContentSpaceEvenlyColumnIcon.svg-c1370d16a2a695b912e62a5e88f2d1bd.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentSpaceEvenlyColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceEvenlyColumnIcon.svg-c1370d16a2a695b912e62a5e88f2d1bd.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceEvenlyRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentSpaceEvenlyRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cgddk0163vw2m"
6 | path="res://.godot/imported/JustifyContentSpaceEvenlyRowIcon.svg-3afbb2e488279492b81ef1719fa912b0.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentSpaceEvenlyRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentSpaceEvenlyRowIcon.svg-3afbb2e488279492b81ef1719fa912b0.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentStartColumnIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentStartColumnIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://j73twgpgjc32"
6 | path="res://.godot/imported/JustifyContentStartColumnIcon.svg-1c676288e2f9edbecba870621c642405.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentStartColumnIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentStartColumnIcon.svg-1c676288e2f9edbecba870621c642405.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentStartRowIcon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/assets/light/JustifyContentStartRowIcon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://bnndo335w1m1k"
6 | path="res://.godot/imported/JustifyContentStartRowIcon.svg-feaab4a130e05227746ef6ed928c810b.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/assets/light/JustifyContentStartRowIcon.svg"
14 | dest_files=["res://.godot/imported/JustifyContentStartRowIcon.svg-feaab4a130e05227746ef6ed928c810b.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/flexbox.gdextension:
--------------------------------------------------------------------------------
1 | [configuration]
2 | entry_symbol = "flexbox_library_init"
3 | compatibility_minimum = "4.1"
4 |
5 | [libraries]
6 | macos = "res://addons/godot-flexbox/bin/macos/macos.framework/libgodot-flexbox.macos.template_release"
7 | ios = "res://addons/godot-flexbox/bin/ios/ios.framework/libgodot-flexbox.ios.template_release"
8 | windows.x86_32 = "res://addons/godot-flexbox/bin/windows/godot-flexbox.windows.template_release.double.x86_32.dll"
9 | windows.x86_64 = "res://addons/godot-flexbox/bin/windows/godot-flexbox.windows.template_release.double.x86_64.dll"
10 | linux.x86_64 = "res://addons/godot-flexbox/bin/linux/libgodot-flexbox.linux.template_release.x86_64.so"
11 | linux.arm64 = "res://addons/godot-flexbox/bin/linux/libgodot-flexbox.linux.template_release.arm64.so"
12 | linux.rv64 = "res://addons/godot-flexbox/bin/linux/libgodot-flexbox.linux.template_release.rv64.so"
13 | android.x86_64 = "res://addons/godot-flexbox/bin/android/libgodot-flexbox.android.template_release.double.x86_64.so"
14 | android.arm64 = "res://addons/godot-flexbox/bin/android/libgodot-flexbox.android.template_release.double.arm64.so"
15 | web = "res://addons/godot-flexbox/bin/web/libgodot-flexbox.web.template_release.double.wasm32.wasm"
--------------------------------------------------------------------------------
/addons/godot-flexbox/icon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/icon.svg.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cpeevwk1slij1"
6 | path="res://.godot/imported/icon.svg-d062089409224d02255159d3049da05a.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://addons/godot-flexbox/icon.svg"
14 | dest_files=["res://.godot/imported/icon.svg-d062089409224d02255159d3049da05a.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 | svg/scale=1.0
36 | editor/scale_with_editor_scale=false
37 | editor/convert_colors_with_editor_theme=false
38 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/plugin.cfg:
--------------------------------------------------------------------------------
1 | [plugin]
2 |
3 | name="Godot Flexbox"
4 | description="GDNative wrapper for Flexbox (Godot 3.2+), making it possible to use flexbox layout in all your future games."
5 | author="citizenl"
6 | version="2.0.1"
7 | script="plugin.gd"
8 |
--------------------------------------------------------------------------------
/addons/godot-flexbox/plugin.gd:
--------------------------------------------------------------------------------
1 | # ############################################################################ #
2 | # Copyright 2016-2023 citizenl
3 | # MIT License.
4 | # ############################################################################ #
5 |
6 | @tool
7 | extends EditorPlugin
8 | #
9 | const Icon = preload("icon.svg")
10 | const FlexContainer = preload("flex_container.gd")
11 | const InspectorPlugin = preload("inspector/inspector_plugin.gd")
12 | var _inspector_plugin
13 | var _toolbar:EditorToolbar
14 | var _interface
15 |
16 | func _enter_tree():
17 | IconAssets.generate_icons(is_dark_theme())
18 | _inspector_plugin = InspectorPlugin.new()
19 | var EDSCALE = get_editor_interface().get_editor_scale()
20 | var image = Icon.get_image()
21 | image.resize(20*EDSCALE, 20*EDSCALE,Image.INTERPOLATE_NEAREST)
22 | var icon = ImageTexture.new().create_from_image(image)
23 | add_custom_type("FlexContainer", "Container", FlexContainer, icon)
24 | add_inspector_plugin(_inspector_plugin)
25 | get_window().theme_changed.connect(_theme_changed)
26 | _interface = get_editor_interface()
27 | create_toolbar(EDSCALE)
28 |
29 |
30 | func _exit_tree():
31 | remove_inspector_plugin(_inspector_plugin)
32 | remove_custom_type("FlexContainer")
33 | remove_control_from_container(EditorPlugin.CONTAINER_CANVAS_EDITOR_MENU, _toolbar)
34 | _inspector_plugin = null
35 | _toolbar = null
36 |
37 |
38 | func create_toolbar(EDSCALE):
39 | _toolbar = EditorToolbar.new(EDSCALE)
40 | _toolbar.plugin = self
41 | _toolbar.undo_redo = get_undo_redo()
42 | _toolbar.hide()
43 | add_control_to_container(EditorPlugin.CONTAINER_CANVAS_EDITOR_MENU, _toolbar)
44 |
45 |
46 | func is_dark_theme():
47 | var settings = get_editor_interface().get_editor_settings() as EditorSettings
48 | var AUTO_COLOR = 0;
49 | var LIGHT_COLOR = 2;
50 | var base_color = settings.get("interface/theme/base_color");
51 | var icon_font_color_setting = settings.get("interface/theme/icon_and_font_color");
52 | return (icon_font_color_setting == AUTO_COLOR && base_color.get_luminance() < 0.5) || icon_font_color_setting == LIGHT_COLOR;
53 |
54 |
55 | func _theme_changed():
56 | IconAssets.generate_icons(is_dark_theme())
57 |
--------------------------------------------------------------------------------
/build.py:
--------------------------------------------------------------------------------
1 | import sys
2 | import os
3 | import shutil
4 | import subprocess
5 | import multiprocessing
6 |
7 | script_path = os.path.abspath(__file__)
8 |
9 | def replace_word(file_name, target_str, replace_str):
10 | text = ""
11 | with open(file_name, "r") as file:
12 | text = file.read()
13 |
14 | text = text.replace(target_str, replace_str)
15 |
16 | with open(file_name, "w") as file:
17 | file.write(text)
18 |
19 | def import_generate_bindings():
20 | binding_generator = __import__("godot-cpp.binding_generator").binding_generator
21 | cwd = os.getcwd()
22 | os.chdir(os.path.join(os.path.dirname(script_path), "godot-cpp"))
23 | binding_generator.generate_bindings("gdextension/extension_api.json", False)
24 | os.chdir(cwd)
25 |
26 | import_generate_bindings()
27 |
28 | os.chdir(os.path.dirname(script_path))
29 |
30 | job_opt = " -j" + str(multiprocessing.cpu_count())
31 |
32 | if "platform=windows" in sys.argv:
33 | replace_word("godot-cpp/Sconstruct", "/MD", "/MT")
34 |
35 | subprocess.run("scons platform=windows bits=32 target=release" + job_opt, shell = True)
36 | subprocess.run("scons platform=windows bits=64 target=release" + job_opt, shell = True)
37 |
38 | os.makedirs("addons/godot-flexbox/bin/windows", exist_ok = True)
39 |
40 | shutil.copy2("bin/libgdflexbox.x86_32.dll", "addons/godot-flexbox/bin/windows/")
41 | shutil.copy2("bin/libgdflexbox.x86_64.dll", "addons/godot-flexbox/bin/windows/")
42 |
43 | elif "platform=macos" in sys.argv:
44 | subprocess.run("scons platform=macos bits=64 target=release" + job_opt, shell = True)
45 |
46 | os.makedirs("addons/godot-flexbox/bin/macos", exist_ok = True)
47 |
48 | shutil.copy2("bin/libgdflexbox.dylib", "addons/godot-flexbox/bin/macos/")
49 |
50 | elif "platform=android" in sys.argv:
51 | subprocess.run("scons platform=android android_arch=armv7 target=release" + job_opt, shell = True)
52 | subprocess.run("scons platform=android android_arch=arm64v8 target=release" + job_opt, shell = True)
53 | subprocess.run("scons platform=android android_arch=x86 target=release" + job_opt, shell = True)
54 | subprocess.run("scons platform=android android_arch=x86_64 target=release" + job_opt, shell = True)
55 |
56 | os.makedirs("addons/godot-flexbox/bin/android", exist_ok = True)
57 |
58 | shutil.copy2("bin/libgdflexbox.arm32.so", "addons/godot-flexbox/bin/android/")
59 | shutil.copy2("bin/libgdflexbox.arm64.so", "addons/godot-flexbox/bin/android/")
60 | shutil.copy2("bin/libgdflexbox.x86_32.so", "addons/godot-flexbox/bin/android/")
61 | shutil.copy2("bin/libgdflexbox.x86_64.so", "addons/godot-flexbox/bin/android/")
62 |
63 | elif "platform=ios" in sys.argv:
64 | subprocess.run("scons platform=ios ios_arch=arm64 target=release" + job_opt, shell = True)
65 | # subprocess.run("scons platform=ios ios_arch=x86_64 target=release" + job_opt, shell = True)
66 |
67 | subprocess.run("lipo -create bin/libgdflexbox.arm64.dylib -output bin/libgdflexbox.dylib", shell = True)
68 | # subprocess.run("lipo -create bin/libgdflexbox.arm64.dylib bin/libgdflexbox.x86_64.dylib -output bin/libgdflexbox.dylib", shell = True)
69 |
70 | os.makedirs("addons/godot-flexbox/bin/ios", exist_ok = True)
71 |
72 | shutil.copy2("bin/libgdflexbox.dylib", "addons/godot-flexbox/bin/ios/")
73 |
74 | elif "platform=linux" in sys.argv:
75 | subprocess.run("scons platform=linux bits=32 target=release use_llvm=1" + job_opt, shell = True)
76 | subprocess.run("scons platform=linux bits=64 target=release use_llvm=1" + job_opt, shell = True)
77 |
78 | os.makedirs("addons/godot-flexbox/bin/linux", exist_ok = True)
79 |
80 | shutil.copy2("bin/libgdflexbox.x86_32.so", "addons/godot-flexbox/bin/linux/")
81 | shutil.copy2("bin/libgdflexbox.x86_64.so", "addons/godot-flexbox/bin/linux/")
82 |
83 | elif "platform=web" in sys.argv:
84 | subprocess.run("scons platform=web bits=32 target=release" + job_opt, shell = True)
85 |
86 | os.makedirs("addons/godot-flexbox/bin/web", exist_ok = True)
87 |
88 | shutil.copy2("bin/libgdflexbox.wasm", "addons/godot-flexbox/bin/web/")
89 |
--------------------------------------------------------------------------------
/clean.py:
--------------------------------------------------------------------------------
1 | import os
2 | import glob
3 |
4 | files = glob.glob("src/**/*.obj", recursive=True)
5 | for file in files:
6 | print(file)
7 | os.remove(file)
8 |
9 | files = glob.glob("src/**/*.os", recursive=True)
10 | for file in files:
11 | print(file)
12 | os.remove(file)
13 |
14 | files = glob.glob("src/**/*.bc", recursive=True)
15 | for file in files:
16 | print(file)
17 | os.remove(file)
18 |
--------------------------------------------------------------------------------
/demo/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/citizenll/godot-flexbox/a60a61a21315bf7dac7cf0b12a94494173c25a21/demo/.gitkeep
--------------------------------------------------------------------------------
/demo/ColorRect1.gd:
--------------------------------------------------------------------------------
1 | extends ColorRect
2 | @export var test = 1
3 |
4 | # Called when the node enters the scene tree for the first time.
5 | func _ready():
6 | pass # Replace with function body.
7 |
8 |
9 | # Called every frame. 'delta' is the elapsed time since the previous frame.
10 | func _process(delta):
11 | pass
12 |
--------------------------------------------------------------------------------
/demo/addons/addons-link/plugin.cfg:
--------------------------------------------------------------------------------
1 | [plugin]
2 |
3 | name="addons-link"
4 | description="initial addons folder link"
5 | author="citizenl"
6 | version=""
7 | script="plugin.gd"
8 |
--------------------------------------------------------------------------------
/demo/addons/addons-link/plugin.gd:
--------------------------------------------------------------------------------
1 | @tool
2 | extends EditorPlugin
3 |
4 |
5 | func _enter_tree():
6 | check_link()
7 |
8 | func check_link():
9 | var dir = DirAccess.open("res://addons")
10 | if dir.dir_exists("./godot-flexbox"):return
11 | if OS.get_name()=="Windows":
12 | OS.execute("./setup.bat",[])
13 | else:
14 | OS.execute("sh",["./setup.sh"])
15 | OS.alert("addons copy suceess, will restart eidtor")
16 | EditorInterface.restart_editor(true)
17 |
--------------------------------------------------------------------------------
/demo/api_test.gd:
--------------------------------------------------------------------------------
1 | extends Control
2 |
3 | const TOTAL_COUNT = 1000
4 | # Called when the node enters the scene tree for the first time.
5 | func _ready():
6 | var s = Time.get_ticks_usec()
7 | var root = Flexbox.new()
8 | root.set_width(500)
9 | root.set_height(300)
10 | var childs = {}
11 | for i in range(TOTAL_COUNT):
12 | var child = Flexbox.new()
13 | child.set_min_width(50)
14 | child.set_min_height(100)
15 | childs[child.get_instance_id()] = child #need have a reference here, or else error because of child freed
16 | root.insert_child(child, i)
17 |
18 | #child.set_measure_func(Callable(self, "measure"))
19 | var calc = Time.get_ticks_usec()
20 | print("create time>",calc-s, " avg:", (calc-s) / TOTAL_COUNT)
21 | root.calculate_layout(NAN,NAN,1)
22 | var e = Time.get_ticks_usec()
23 | print("layout time>",e-calc)
24 | print("total time>",e-s, " avg:", (e-s) / TOTAL_COUNT)
25 |
26 |
27 | func measure(width, widthMode,height, heightMode):
28 | print("mesure:", width, widthMode,height, heightMode)
29 | return {width=112,height=130}
30 |
--------------------------------------------------------------------------------
/demo/api_test.tscn:
--------------------------------------------------------------------------------
1 | [gd_scene load_steps=4 format=3 uid="uid://b3ooljt4sjxsd"]
2 |
3 | [ext_resource type="Script" path="res://api_test.gd" id="1_0rrja"]
4 | [ext_resource type="Script" path="res://addons/godot-flexbox/flex_container.gd" id="2_51528"]
5 | [ext_resource type="Script" path="res://ColorRect1.gd" id="3_tnhjb"]
6 |
7 | [node name="root" type="Control"]
8 | layout_mode = 3
9 | anchors_preset = 15
10 | anchor_right = 1.0
11 | anchor_bottom = 1.0
12 | grow_horizontal = 2
13 | grow_vertical = 2
14 | script = ExtResource("1_0rrja")
15 |
16 | [node name="ChilContainer" type="Container" parent="."]
17 | custom_minimum_size = Vector2(100, 100)
18 | layout_mode = 0
19 | script = ExtResource("2_51528")
20 | debug_draw = true
21 | justify_content = 1
22 | align_items = 2
23 | metadata/_flex_child = 1
24 | metadata/_flex_metas = {
25 | "grow": 1.0
26 | }
27 |
28 | [node name="ColorRect1" type="ColorRect" parent="ChilContainer"]
29 | custom_minimum_size = Vector2(30, 30)
30 | layout_mode = 2
31 | script = ExtResource("3_tnhjb")
32 | metadata/flex_metas = {
33 | "align_self": 1
34 | }
35 |
36 | [node name="ColorRect2" type="ColorRect" parent="ChilContainer"]
37 | custom_minimum_size = Vector2(30, 30)
38 | layout_mode = 2
39 |
40 | [node name="ColorRect3" type="ColorRect" parent="ChilContainer"]
41 | custom_minimum_size = Vector2(30, 30)
42 | layout_mode = 2
43 | metadata/flex_metas = {
44 | "align_self": 3
45 | }
46 |
--------------------------------------------------------------------------------
/demo/default_env.tres:
--------------------------------------------------------------------------------
1 | [gd_resource type="Environment" load_steps=2 format=2]
2 |
3 | [sub_resource type="Sky" id=1]
4 |
5 | [resource]
6 | background_mode = 2
7 | background_sky = SubResource( 1 )
8 |
--------------------------------------------------------------------------------
/demo/playground.gd:
--------------------------------------------------------------------------------
1 | extends Control
2 |
3 | func _ready():
4 | pass
5 |
--------------------------------------------------------------------------------
/demo/playground.tscn:
--------------------------------------------------------------------------------
1 | [gd_scene load_steps=3 format=3 uid="uid://dhvh3x81ere1s"]
2 |
3 | [ext_resource type="Script" path="res://addons/godot-flexbox/flex_container.gd" id="1"]
4 | [ext_resource type="Script" path="res://playground.gd" id="1_8a2fn"]
5 |
6 | [node name="FlexDemo" type="Control"]
7 | layout_mode = 3
8 | anchors_preset = 15
9 | anchor_right = 1.0
10 | anchor_bottom = 1.0
11 | grow_horizontal = 2
12 | grow_vertical = 2
13 | script = ExtResource("1_8a2fn")
14 |
15 | [node name="FlexContainer" type="Container" parent="."]
16 | layout_mode = 1
17 | anchors_preset = 15
18 | anchor_right = 1.0
19 | anchor_bottom = 1.0
20 | grow_horizontal = 2
21 | grow_vertical = 2
22 | script = ExtResource("1")
23 |
24 | [node name="ColorRect1" type="ColorRect" parent="FlexContainer"]
25 | custom_minimum_size = Vector2(100, 100)
26 | layout_mode = 2
27 | color = Color(0, 0.796078, 0.486275, 1)
28 | metadata/flex_metas = {
29 | "align_self": 0,
30 | "grow": 0.0,
31 | "margin": [0.0, 0, 0.0, 0]
32 | }
33 |
34 | [node name="Label" type="Label" parent="FlexContainer/ColorRect1"]
35 | layout_mode = 1
36 | anchors_preset = 15
37 | anchor_right = 1.0
38 | anchor_bottom = 1.0
39 | grow_horizontal = 2
40 | grow_vertical = 2
41 | theme_override_colors/font_color = Color(0, 0, 0, 1)
42 | text = "1"
43 |
44 | [node name="ColorRect2" type="ColorRect" parent="FlexContainer"]
45 | custom_minimum_size = Vector2(100, 100)
46 | layout_mode = 2
47 | color = Color(0.952941, 0.329412, 0.329412, 1)
48 | metadata/flex_metas = {
49 | "align_self": 0,
50 | "margin": [0.0, 10.0, 0, 10.0]
51 | }
52 |
53 | [node name="Label" type="Label" parent="FlexContainer/ColorRect2"]
54 | layout_mode = 0
55 | anchor_right = 1.0
56 | anchor_bottom = 1.0
57 | text = "2"
58 |
59 | [node name="ColorRect3" type="ColorRect" parent="FlexContainer"]
60 | custom_minimum_size = Vector2(100, 100)
61 | layout_mode = 2
62 | color = Color(0.431373, 0.764706, 0.419608, 1)
63 |
64 | [node name="Label" type="Label" parent="FlexContainer/ColorRect3"]
65 | layout_mode = 0
66 | anchor_right = 1.0
67 | anchor_bottom = 1.0
68 | offset_left = 5.0
69 | offset_right = 5.0
70 | text = "3"
71 |
72 | [node name="ColorRect4" type="ColorRect" parent="FlexContainer"]
73 | custom_minimum_size = Vector2(100, 100)
74 | layout_mode = 2
75 | color = Color(0.470588, 0.498039, 0.952941, 1)
76 |
77 | [node name="Label" type="Label" parent="FlexContainer/ColorRect4"]
78 | layout_mode = 0
79 | anchor_right = 1.0
80 | anchor_bottom = 1.0
81 | offset_left = 5.0
82 | offset_right = 5.0
83 | text = "4"
84 |
--------------------------------------------------------------------------------
/demo/project.godot:
--------------------------------------------------------------------------------
1 | ; Engine configuration file.
2 | ; It's best edited using the editor UI and not directly,
3 | ; since the parameters that go here are not all obvious.
4 | ;
5 | ; Format:
6 | ; [section] ; section goes between []
7 | ; param=value ; assign values to parameters
8 |
9 | config_version=5
10 |
11 | [application]
12 |
13 | config/name="Flexbox"
14 | config/features=PackedStringArray("4.3")
15 | boot_splash/bg_color=Color(0.141176, 0.141176, 0.141176, 1)
16 | config/icon="res://icon.png"
17 |
18 | [editor_plugins]
19 |
20 | enabled=PackedStringArray("res://addons/addons-link/plugin.cfg", "res://addons/godot-flexbox/plugin.cfg")
21 |
22 | [gui]
23 |
24 | common/drop_mouse_on_gui_input_disabled=true
25 |
26 | [physics]
27 |
28 | common/enable_pause_aware_picking=true
29 |
30 | [rendering]
31 |
32 | renderer/rendering_method="mobile"
33 | textures/vram_compression/import_etc2_astc=true
34 | environment/default_environment="res://default_env.tres"
35 |
--------------------------------------------------------------------------------
/demo/setup.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | xcopy /E /I "..\addons\godot-flexbox" ".\addons\godot-flexbox\"
--------------------------------------------------------------------------------
/demo/setup.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | if [ ! -d "./addons/godot-flexbox" ]; then
3 | cp -R ../addons/godot-flexbox ./addons/
4 | fi
5 |
--------------------------------------------------------------------------------
/docs/add-flex-container.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/citizenll/godot-flexbox/a60a61a21315bf7dac7cf0b12a94494173c25a21/docs/add-flex-container.png
--------------------------------------------------------------------------------
/docs/add-flex-container.png.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://14qqhiq53pg8"
6 | path="res://.godot/imported/add-flex-container.png-204d6a7113a829c0f3fb9b1f8251d82f.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://docs/add-flex-container.png"
14 | dest_files=["res://.godot/imported/add-flex-container.png-204d6a7113a829c0f3fb9b1f8251d82f.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 |
--------------------------------------------------------------------------------
/docs/flex-child-property.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/citizenll/godot-flexbox/a60a61a21315bf7dac7cf0b12a94494173c25a21/docs/flex-child-property.png
--------------------------------------------------------------------------------
/docs/flex-child-property.png.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://dxgx21utte3u4"
6 | path="res://.godot/imported/flex-child-property.png-72c357b3e42dfcb498dac19de7cb7874.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://docs/flex-child-property.png"
14 | dest_files=["res://.godot/imported/flex-child-property.png-72c357b3e42dfcb498dac19de7cb7874.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 |
--------------------------------------------------------------------------------
/docs/flex-container-overview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/citizenll/godot-flexbox/a60a61a21315bf7dac7cf0b12a94494173c25a21/docs/flex-container-overview.png
--------------------------------------------------------------------------------
/docs/flex-container-overview.png.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://cn1mayfx6038a"
6 | path="res://.godot/imported/flex-container-overview.png-381b8193761aefd1ffb632b239bfc517.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://docs/flex-container-overview.png"
14 | dest_files=["res://.godot/imported/flex-container-overview.png-381b8193761aefd1ffb632b239bfc517.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 |
--------------------------------------------------------------------------------
/docs/flex-container-property.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/citizenll/godot-flexbox/a60a61a21315bf7dac7cf0b12a94494173c25a21/docs/flex-container-property.png
--------------------------------------------------------------------------------
/docs/flex-container-property.png.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://by6al3f73ihp2"
6 | path="res://.godot/imported/flex-container-property.png-b48f8a68f4f24ec51de54d14e0474cb9.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://docs/flex-container-property.png"
14 | dest_files=["res://.godot/imported/flex-container-property.png-b48f8a68f4f24ec51de54d14e0474cb9.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 |
--------------------------------------------------------------------------------
/docs/flex-container.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/citizenll/godot-flexbox/a60a61a21315bf7dac7cf0b12a94494173c25a21/docs/flex-container.gif
--------------------------------------------------------------------------------
/docs/flexbox-assets-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/citizenll/godot-flexbox/a60a61a21315bf7dac7cf0b12a94494173c25a21/docs/flexbox-assets-icon.png
--------------------------------------------------------------------------------
/docs/flexbox-assets-icon.png.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://lh8jbtyd773w"
6 | path="res://.godot/imported/flexbox-assets-icon.png-9786932b5478e64c6364e7334e044a8a.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://docs/flexbox-assets-icon.png"
14 | dest_files=["res://.godot/imported/flexbox-assets-icon.png-9786932b5478e64c6364e7334e044a8a.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 |
--------------------------------------------------------------------------------
/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/citizenll/godot-flexbox/a60a61a21315bf7dac7cf0b12a94494173c25a21/icon.png
--------------------------------------------------------------------------------
/icon.png.import:
--------------------------------------------------------------------------------
1 | [remap]
2 |
3 | importer="texture"
4 | type="CompressedTexture2D"
5 | uid="uid://c7l34cdahfafc"
6 | path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"
7 | metadata={
8 | "vram_texture": false
9 | }
10 |
11 | [deps]
12 |
13 | source_file="res://icon.png"
14 | dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"]
15 |
16 | [params]
17 |
18 | compress/mode=0
19 | compress/high_quality=false
20 | compress/lossy_quality=0.7
21 | compress/hdr_compression=1
22 | compress/normal_map=0
23 | compress/channel_pack=0
24 | mipmaps/generate=false
25 | mipmaps/limit=-1
26 | roughness/mode=0
27 | roughness/src_normal=""
28 | process/fix_alpha_border=true
29 | process/premult_alpha=false
30 | process/normal_map_invert_y=false
31 | process/hdr_as_srgb=false
32 | process/hdr_clamp_exposure=false
33 | process/size_limit=0
34 | detect_3d/compress_to=1
35 |
--------------------------------------------------------------------------------
/methods.py:
--------------------------------------------------------------------------------
1 | import os
2 | import sys
3 | from enum import Enum
4 |
5 | # Colors are disabled in non-TTY environments such as pipes. This means
6 | # that if output is redirected to a file, it won't contain color codes.
7 | # Colors are always enabled on continuous integration.
8 | _colorize = bool(sys.stdout.isatty() or os.environ.get("CI"))
9 |
10 |
11 | class ANSI(Enum):
12 | """
13 | Enum class for adding ansi colorcodes directly into strings.
14 | Automatically converts values to strings representing their
15 | internal value, or an empty string in a non-colorized scope.
16 | """
17 |
18 | RESET = "\x1b[0m"
19 |
20 | BOLD = "\x1b[1m"
21 | ITALIC = "\x1b[3m"
22 | UNDERLINE = "\x1b[4m"
23 | STRIKETHROUGH = "\x1b[9m"
24 | REGULAR = "\x1b[22;23;24;29m"
25 |
26 | BLACK = "\x1b[30m"
27 | RED = "\x1b[31m"
28 | GREEN = "\x1b[32m"
29 | YELLOW = "\x1b[33m"
30 | BLUE = "\x1b[34m"
31 | MAGENTA = "\x1b[35m"
32 | CYAN = "\x1b[36m"
33 | WHITE = "\x1b[37m"
34 |
35 | PURPLE = "\x1b[38;5;93m"
36 | PINK = "\x1b[38;5;206m"
37 | ORANGE = "\x1b[38;5;214m"
38 | GRAY = "\x1b[38;5;244m"
39 |
40 | def __str__(self) -> str:
41 | global _colorize
42 | return str(self.value) if _colorize else ""
43 |
44 |
45 | def print_warning(*values: object) -> None:
46 | """Prints a warning message with formatting."""
47 | print(f"{ANSI.YELLOW}{ANSI.BOLD}WARNING:{ANSI.REGULAR}", *values, ANSI.RESET, file=sys.stderr)
48 |
49 |
50 | def print_error(*values: object) -> None:
51 | """Prints an error message with formatting."""
52 | print(f"{ANSI.RED}{ANSI.BOLD}ERROR:{ANSI.REGULAR}", *values, ANSI.RESET, file=sys.stderr)
53 |
--------------------------------------------------------------------------------
/src/register_types.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include "register_types.h"
3 |
4 | #include
5 |
6 | #include
7 | #include
8 | #include
9 |
10 | #include "flexbox.h"
11 |
12 | using namespace godot;
13 |
14 | void initialize_flexbox_module(ModuleInitializationLevel p_level)
15 | {
16 | if (p_level != MODULE_INITIALIZATION_LEVEL_SCENE)
17 | {
18 | return;
19 | }
20 |
21 | ClassDB::register_class();
22 | }
23 |
24 | void uninitialize_flexbox_module(ModuleInitializationLevel p_level)
25 | {
26 | if (p_level != MODULE_INITIALIZATION_LEVEL_SCENE)
27 | {
28 | return;
29 | }
30 | }
31 |
32 | extern "C"
33 | {
34 | // Initialization.
35 | GDExtensionBool GDE_EXPORT flexbox_library_init(const GDExtensionInterfaceGetProcAddress p_get_proc_address, GDExtensionClassLibraryPtr p_library, GDExtensionInitialization *r_initialization)
36 | {
37 | godot::GDExtensionBinding::InitObject init_obj(p_get_proc_address, p_library, r_initialization);
38 |
39 | init_obj.register_initializer(initialize_flexbox_module);
40 | init_obj.register_terminator(uninitialize_flexbox_module);
41 | init_obj.set_minimum_library_initialization_level(MODULE_INITIALIZATION_LEVEL_SCENE);
42 |
43 | return init_obj.init();
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/register_types.h:
--------------------------------------------------------------------------------
1 |
2 |
3 | #ifndef FLEXBOX_REGISTER_TYPES_H
4 | #define FLEXBOX_REGISTER_TYPES_H
5 |
6 | #include
7 | using namespace godot;
8 |
9 | void initialize_flexbox_module(ModuleInitializationLevel p_level);
10 | void uninitialize_flexbox_module(ModuleInitializationLevel p_level);
11 |
12 | #endif // FLEXBOX_REGISTER_TYPES_H
13 |
--------------------------------------------------------------------------------
/src/yoga/BitUtils.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #pragma once
9 |
10 | #ifdef __cplusplus
11 |
12 | #include
13 | #include
14 | #include "YGEnums.h"
15 |
16 | namespace facebook {
17 | namespace yoga {
18 |
19 | namespace detail {
20 |
21 | constexpr size_t log2ceilFn(size_t n) {
22 | return n < 1 ? 0 : (1 + log2ceilFn(n / 2));
23 | }
24 |
25 | constexpr int mask(size_t bitWidth, size_t index) {
26 | return ((1 << bitWidth) - 1) << index;
27 | }
28 |
29 | // The number of bits necessary to represent enums defined with YG_ENUM_SEQ_DECL
30 | template
31 | constexpr size_t bitWidthFn() {
32 | static_assert(
33 | enums::count() > 0, "Enums must have at least one entries");
34 | return log2ceilFn(enums::count() - 1);
35 | }
36 |
37 | template
38 | constexpr Enum getEnumData(int flags, size_t index) {
39 | return static_cast((flags & mask(bitWidthFn(), index)) >> index);
40 | }
41 |
42 | template
43 | void setEnumData(uint32_t& flags, size_t index, int newValue) {
44 | flags = (flags & ~mask(bitWidthFn(), index)) |
45 | ((newValue << index) & (mask(bitWidthFn(), index)));
46 | }
47 |
48 | template
49 | void setEnumData(uint8_t& flags, size_t index, int newValue) {
50 | flags = (flags & ~static_cast(mask(bitWidthFn(), index))) |
51 | ((newValue << index) &
52 | (static_cast(mask(bitWidthFn(), index))));
53 | }
54 |
55 | constexpr bool getBooleanData(int flags, size_t index) {
56 | return (flags >> index) & 1;
57 | }
58 |
59 | inline void setBooleanData(uint8_t& flags, size_t index, bool value) {
60 | if (value) {
61 | flags |= 1 << index;
62 | } else {
63 | flags &= ~(1 << index);
64 | }
65 | }
66 |
67 | } // namespace detail
68 | } // namespace yoga
69 | } // namespace facebook
70 |
71 | #endif
72 |
--------------------------------------------------------------------------------
/src/yoga/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Facebook, Inc. and its affiliates.
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/src/yoga/Utils.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #include "Utils.h"
9 | #include
10 |
11 | using namespace facebook;
12 |
13 | YGFlexDirection YGFlexDirectionCross(
14 | const YGFlexDirection flexDirection,
15 | const YGDirection direction) {
16 | return YGFlexDirectionIsColumn(flexDirection)
17 | ? YGResolveFlexDirection(YGFlexDirectionRow, direction)
18 | : YGFlexDirectionColumn;
19 | }
20 |
21 | float YGFloatMax(const float a, const float b) {
22 | if (!yoga::isUndefined(a) && !yoga::isUndefined(b)) {
23 | return fmaxf(a, b);
24 | }
25 | return yoga::isUndefined(a) ? b : a;
26 | }
27 |
28 | float YGFloatMin(const float a, const float b) {
29 | if (!yoga::isUndefined(a) && !yoga::isUndefined(b)) {
30 | return fminf(a, b);
31 | }
32 |
33 | return yoga::isUndefined(a) ? b : a;
34 | }
35 |
36 | bool YGValueEqual(const YGValue& a, const YGValue& b) {
37 | if (a.unit != b.unit) {
38 | return false;
39 | }
40 |
41 | if (a.unit == YGUnitUndefined ||
42 | (yoga::isUndefined(a.value) && yoga::isUndefined(b.value))) {
43 | return true;
44 | }
45 |
46 | return fabs(a.value - b.value) < 0.0001f;
47 | }
48 |
49 | bool YGFloatsEqual(const float a, const float b) {
50 | if (!yoga::isUndefined(a) && !yoga::isUndefined(b)) {
51 | return fabs(a - b) < 0.0001f;
52 | }
53 | return yoga::isUndefined(a) && yoga::isUndefined(b);
54 | }
55 |
56 | bool YGDoubleEqual(const double a, const double b) {
57 | if (!yoga::isUndefined(a) && !yoga::isUndefined(b)) {
58 | return fabs(a - b) < 0.0001;
59 | }
60 | return yoga::isUndefined(a) && yoga::isUndefined(b);
61 | }
62 |
63 | float YGFloatSanitize(const float val) {
64 | return yoga::isUndefined(val) ? 0 : val;
65 | }
66 |
67 | YGFloatOptional YGFloatOptionalMax(YGFloatOptional op1, YGFloatOptional op2) {
68 | if (op1 >= op2) {
69 | return op1;
70 | }
71 | if (op2 > op1) {
72 | return op2;
73 | }
74 | return op1.isUndefined() ? op2 : op1;
75 | }
76 |
77 | void yoga::throwLogicalErrorWithMessage(const char* message) {
78 | #if defined(__cpp_exceptions)
79 | throw std::logic_error(message);
80 | #else // !defined(__cpp_exceptions)
81 | std::terminate();
82 | #endif // defined(__cpp_exceptions)
83 | }
84 |
--------------------------------------------------------------------------------
/src/yoga/YGConfig.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #include "YGConfig.h"
9 |
10 | YGConfig::YGConfig(YGLogger logger) : cloneNodeCallback_{nullptr} {
11 | logger_.noContext = logger;
12 | loggerUsesContext_ = false;
13 | }
14 |
15 | void YGConfig::log(
16 | YGConfig* config,
17 | YGNode* node,
18 | YGLogLevel logLevel,
19 | void* logContext,
20 | const char* format,
21 | va_list args) {
22 | if (loggerUsesContext_) {
23 | logger_.withContext(config, node, logLevel, logContext, format, args);
24 | } else {
25 | logger_.noContext(config, node, logLevel, format, args);
26 | }
27 | }
28 |
29 | YGNodeRef YGConfig::cloneNode(
30 | YGNodeRef node,
31 | YGNodeRef owner,
32 | int childIndex,
33 | void* cloneContext) {
34 | YGNodeRef clone = nullptr;
35 | if (cloneNodeCallback_.noContext != nullptr) {
36 | clone = cloneNodeUsesContext_
37 | ? cloneNodeCallback_.withContext(node, owner, childIndex, cloneContext)
38 | : cloneNodeCallback_.noContext(node, owner, childIndex);
39 | }
40 | if (clone == nullptr) {
41 | clone = YGNodeClone(node);
42 | }
43 | return clone;
44 | }
45 |
--------------------------------------------------------------------------------
/src/yoga/YGConfig.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #pragma once
9 |
10 | #ifdef __cplusplus
11 |
12 | #include "Yoga-internal.h"
13 | #include "Yoga.h"
14 |
15 | struct YOGA_EXPORT YGConfig {
16 | using LogWithContextFn = int (*)(
17 | YGConfigRef config,
18 | YGNodeRef node,
19 | YGLogLevel level,
20 | void* context,
21 | const char* format,
22 | va_list args);
23 | using CloneWithContextFn = YGNodeRef (*)(
24 | YGNodeRef node,
25 | YGNodeRef owner,
26 | int childIndex,
27 | void* cloneContext);
28 |
29 | private:
30 | union {
31 | CloneWithContextFn withContext;
32 | YGCloneNodeFunc noContext;
33 | } cloneNodeCallback_;
34 | union {
35 | LogWithContextFn withContext;
36 | YGLogger noContext;
37 | } logger_;
38 | bool cloneNodeUsesContext_;
39 | bool loggerUsesContext_;
40 |
41 | public:
42 | bool useWebDefaults = false;
43 | bool useLegacyStretchBehaviour = false;
44 | bool shouldDiffLayoutWithoutLegacyStretchBehaviour = false;
45 | bool printTree = false;
46 | float pointScaleFactor = 1.0f;
47 | std::array()>
48 | experimentalFeatures = {};
49 | void* context = nullptr;
50 |
51 | YGConfig(YGLogger logger);
52 | void log(YGConfig*, YGNode*, YGLogLevel, void*, const char*, va_list);
53 | void setLogger(YGLogger logger) {
54 | logger_.noContext = logger;
55 | loggerUsesContext_ = false;
56 | }
57 | void setLogger(LogWithContextFn logger) {
58 | logger_.withContext = logger;
59 | loggerUsesContext_ = true;
60 | }
61 | void setLogger(std::nullptr_t) { setLogger(YGLogger{nullptr}); }
62 |
63 | YGNodeRef cloneNode(
64 | YGNodeRef node,
65 | YGNodeRef owner,
66 | int childIndex,
67 | void* cloneContext);
68 | void setCloneNodeCallback(YGCloneNodeFunc cloneNode) {
69 | cloneNodeCallback_.noContext = cloneNode;
70 | cloneNodeUsesContext_ = false;
71 | }
72 | void setCloneNodeCallback(CloneWithContextFn cloneNode) {
73 | cloneNodeCallback_.withContext = cloneNode;
74 | cloneNodeUsesContext_ = true;
75 | }
76 | void setCloneNodeCallback(std::nullptr_t) {
77 | setCloneNodeCallback(YGCloneNodeFunc{nullptr});
78 | }
79 | };
80 |
81 | #endif
82 |
--------------------------------------------------------------------------------
/src/yoga/YGEnums.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | // @generated by enums.py
9 |
10 | #pragma once
11 | #include "YGMacros.h"
12 |
13 | // clang-format off
14 |
15 |
16 | YG_EXTERN_C_BEGIN
17 |
18 | YG_ENUM_SEQ_DECL(
19 | YGAlign,
20 | YGAlignAuto,
21 | YGAlignFlexStart,
22 | YGAlignCenter,
23 | YGAlignFlexEnd,
24 | YGAlignStretch,
25 | YGAlignBaseline,
26 | YGAlignSpaceBetween,
27 | YGAlignSpaceAround)
28 |
29 | YG_ENUM_SEQ_DECL(
30 | YGDimension,
31 | YGDimensionWidth,
32 | YGDimensionHeight)
33 |
34 | YG_ENUM_SEQ_DECL(
35 | YGDirection,
36 | YGDirectionInherit,
37 | YGDirectionLTR,
38 | YGDirectionRTL)
39 |
40 | YG_ENUM_SEQ_DECL(
41 | YGDisplay,
42 | YGDisplayFlex,
43 | YGDisplayNone)
44 |
45 | YG_ENUM_SEQ_DECL(
46 | YGEdge,
47 | YGEdgeLeft,
48 | YGEdgeTop,
49 | YGEdgeRight,
50 | YGEdgeBottom,
51 | YGEdgeStart,
52 | YGEdgeEnd,
53 | YGEdgeHorizontal,
54 | YGEdgeVertical,
55 | YGEdgeAll)
56 |
57 | YG_ENUM_SEQ_DECL(
58 | YGExperimentalFeature,
59 | YGExperimentalFeatureWebFlexBasis)
60 |
61 | YG_ENUM_SEQ_DECL(
62 | YGFlexDirection,
63 | YGFlexDirectionColumn,
64 | YGFlexDirectionColumnReverse,
65 | YGFlexDirectionRow,
66 | YGFlexDirectionRowReverse)
67 |
68 | YG_ENUM_SEQ_DECL(
69 | YGGutter,
70 | YGGutterColumn,
71 | YGGutterRow,
72 | YGGutterAll)
73 |
74 | YG_ENUM_SEQ_DECL(
75 | YGJustify,
76 | YGJustifyFlexStart,
77 | YGJustifyCenter,
78 | YGJustifyFlexEnd,
79 | YGJustifySpaceBetween,
80 | YGJustifySpaceAround,
81 | YGJustifySpaceEvenly)
82 |
83 | YG_ENUM_SEQ_DECL(
84 | YGLogLevel,
85 | YGLogLevelError,
86 | YGLogLevelWarn,
87 | YGLogLevelInfo,
88 | YGLogLevelDebug,
89 | YGLogLevelVerbose,
90 | YGLogLevelFatal)
91 |
92 | YG_ENUM_SEQ_DECL(
93 | YGMeasureMode,
94 | YGMeasureModeUndefined,
95 | YGMeasureModeExactly,
96 | YGMeasureModeAtMost)
97 |
98 | YG_ENUM_SEQ_DECL(
99 | YGNodeType,
100 | YGNodeTypeDefault,
101 | YGNodeTypeText)
102 |
103 | YG_ENUM_SEQ_DECL(
104 | YGOverflow,
105 | YGOverflowVisible,
106 | YGOverflowHidden,
107 | YGOverflowScroll)
108 |
109 | YG_ENUM_SEQ_DECL(
110 | YGPositionType,
111 | YGPositionTypeStatic,
112 | YGPositionTypeRelative,
113 | YGPositionTypeAbsolute)
114 |
115 | YG_ENUM_DECL(
116 | YGPrintOptions,
117 | YGPrintOptionsLayout = 1,
118 | YGPrintOptionsStyle = 2,
119 | YGPrintOptionsChildren = 4)
120 |
121 | YG_ENUM_SEQ_DECL(
122 | YGUnit,
123 | YGUnitUndefined,
124 | YGUnitPoint,
125 | YGUnitPercent,
126 | YGUnitAuto)
127 |
128 | YG_ENUM_SEQ_DECL(
129 | YGWrap,
130 | YGWrapNoWrap,
131 | YGWrapWrap,
132 | YGWrapWrapReverse)
133 |
134 | YG_EXTERN_C_END
135 |
--------------------------------------------------------------------------------
/src/yoga/YGFloatOptional.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #pragma once
9 |
10 | #ifdef __cplusplus
11 |
12 | #include
13 | #include
14 | #include "Yoga-internal.h"
15 |
16 | struct YGFloatOptional {
17 | private:
18 | float value_ = std::numeric_limits::quiet_NaN();
19 |
20 | public:
21 | explicit constexpr YGFloatOptional(float value) : value_(value) {}
22 | constexpr YGFloatOptional() = default;
23 |
24 | // returns the wrapped value, or a value x with YGIsUndefined(x) == true
25 | constexpr float unwrap() const { return value_; }
26 |
27 | bool isUndefined() const { return std::isnan(value_); }
28 | };
29 |
30 | // operators take YGFloatOptional by value, as it is a 32bit value
31 |
32 | inline bool operator==(YGFloatOptional lhs, YGFloatOptional rhs) {
33 | return lhs.unwrap() == rhs.unwrap() ||
34 | (lhs.isUndefined() && rhs.isUndefined());
35 | }
36 | inline bool operator!=(YGFloatOptional lhs, YGFloatOptional rhs) {
37 | return !(lhs == rhs);
38 | }
39 |
40 | inline bool operator==(YGFloatOptional lhs, float rhs) {
41 | return lhs == YGFloatOptional{rhs};
42 | }
43 | inline bool operator!=(YGFloatOptional lhs, float rhs) {
44 | return !(lhs == rhs);
45 | }
46 |
47 | inline bool operator==(float lhs, YGFloatOptional rhs) {
48 | return rhs == lhs;
49 | }
50 | inline bool operator!=(float lhs, YGFloatOptional rhs) {
51 | return !(lhs == rhs);
52 | }
53 |
54 | inline YGFloatOptional operator+(YGFloatOptional lhs, YGFloatOptional rhs) {
55 | return YGFloatOptional{lhs.unwrap() + rhs.unwrap()};
56 | }
57 |
58 | inline bool operator>(YGFloatOptional lhs, YGFloatOptional rhs) {
59 | return lhs.unwrap() > rhs.unwrap();
60 | }
61 |
62 | inline bool operator<(YGFloatOptional lhs, YGFloatOptional rhs) {
63 | return lhs.unwrap() < rhs.unwrap();
64 | }
65 |
66 | inline bool operator>=(YGFloatOptional lhs, YGFloatOptional rhs) {
67 | return lhs > rhs || lhs == rhs;
68 | }
69 |
70 | inline bool operator<=(YGFloatOptional lhs, YGFloatOptional rhs) {
71 | return lhs < rhs || lhs == rhs;
72 | }
73 |
74 | #endif
75 |
--------------------------------------------------------------------------------
/src/yoga/YGLayout.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #include "YGLayout.h"
9 | #include "Utils.h"
10 |
11 | using namespace facebook;
12 |
13 | bool YGLayout::operator==(YGLayout layout) const {
14 | bool isEqual = YGFloatArrayEqual(position, layout.position) &&
15 | YGFloatArrayEqual(dimensions, layout.dimensions) &&
16 | YGFloatArrayEqual(margin, layout.margin) &&
17 | YGFloatArrayEqual(border, layout.border) &&
18 | YGFloatArrayEqual(padding, layout.padding) &&
19 | direction() == layout.direction() &&
20 | hadOverflow() == layout.hadOverflow() &&
21 | lastOwnerDirection == layout.lastOwnerDirection &&
22 | nextCachedMeasurementsIndex == layout.nextCachedMeasurementsIndex &&
23 | cachedLayout == layout.cachedLayout &&
24 | computedFlexBasis == layout.computedFlexBasis;
25 |
26 | for (uint32_t i = 0; i < YG_MAX_CACHED_RESULT_COUNT && isEqual; ++i) {
27 | isEqual = isEqual && cachedMeasurements[i] == layout.cachedMeasurements[i];
28 | }
29 |
30 | if (!yoga::isUndefined(measuredDimensions[0]) ||
31 | !yoga::isUndefined(layout.measuredDimensions[0])) {
32 | isEqual =
33 | isEqual && (measuredDimensions[0] == layout.measuredDimensions[0]);
34 | }
35 | if (!yoga::isUndefined(measuredDimensions[1]) ||
36 | !yoga::isUndefined(layout.measuredDimensions[1])) {
37 | isEqual =
38 | isEqual && (measuredDimensions[1] == layout.measuredDimensions[1]);
39 | }
40 |
41 | return isEqual;
42 | }
43 |
--------------------------------------------------------------------------------
/src/yoga/YGLayout.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #pragma once
9 |
10 | #ifdef __cplusplus
11 |
12 | #include "BitUtils.h"
13 | #include "YGFloatOptional.h"
14 | #include "Yoga-internal.h"
15 |
16 | struct YGLayout {
17 | std::array position = {};
18 | std::array dimensions = {{YGUndefined, YGUndefined}};
19 | std::array margin = {};
20 | std::array border = {};
21 | std::array padding = {};
22 |
23 | private:
24 | static constexpr size_t directionOffset = 0;
25 | static constexpr size_t didUseLegacyFlagOffset =
26 | directionOffset + facebook::yoga::detail::bitWidthFn();
27 | static constexpr size_t doesLegacyStretchFlagAffectsLayoutOffset =
28 | didUseLegacyFlagOffset + 1;
29 | static constexpr size_t hadOverflowOffset =
30 | doesLegacyStretchFlagAffectsLayoutOffset + 1;
31 | uint8_t flags = 0;
32 |
33 | public:
34 | uint32_t computedFlexBasisGeneration = 0;
35 | YGFloatOptional computedFlexBasis = {};
36 |
37 | // Instead of recomputing the entire layout every single time, we cache some
38 | // information to break early when nothing changed
39 | uint32_t generationCount = 0;
40 | YGDirection lastOwnerDirection = YGDirectionInherit;
41 |
42 | uint32_t nextCachedMeasurementsIndex = 0;
43 | std::array
44 | cachedMeasurements = {};
45 | std::array measuredDimensions = {{YGUndefined, YGUndefined}};
46 |
47 | YGCachedMeasurement cachedLayout = YGCachedMeasurement();
48 |
49 | YGDirection direction() const {
50 | return facebook::yoga::detail::getEnumData(
51 | flags, directionOffset);
52 | }
53 |
54 | void setDirection(YGDirection direction) {
55 | facebook::yoga::detail::setEnumData(
56 | flags, directionOffset, direction);
57 | }
58 |
59 | bool didUseLegacyFlag() const {
60 | return facebook::yoga::detail::getBooleanData(
61 | flags, didUseLegacyFlagOffset);
62 | }
63 |
64 | void setDidUseLegacyFlag(bool val) {
65 | facebook::yoga::detail::setBooleanData(flags, didUseLegacyFlagOffset, val);
66 | }
67 |
68 | bool doesLegacyStretchFlagAffectsLayout() const {
69 | return facebook::yoga::detail::getBooleanData(
70 | flags, doesLegacyStretchFlagAffectsLayoutOffset);
71 | }
72 |
73 | void setDoesLegacyStretchFlagAffectsLayout(bool val) {
74 | facebook::yoga::detail::setBooleanData(
75 | flags, doesLegacyStretchFlagAffectsLayoutOffset, val);
76 | }
77 |
78 | bool hadOverflow() const {
79 | return facebook::yoga::detail::getBooleanData(flags, hadOverflowOffset);
80 | }
81 | void setHadOverflow(bool hadOverflow) {
82 | facebook::yoga::detail::setBooleanData(
83 | flags, hadOverflowOffset, hadOverflow);
84 | }
85 |
86 | bool operator==(YGLayout layout) const;
87 | bool operator!=(YGLayout layout) const { return !(*this == layout); }
88 | };
89 |
90 | #endif
91 |
--------------------------------------------------------------------------------
/src/yoga/YGMacros.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #pragma once
9 |
10 | #ifdef __cplusplus
11 | #define YG_EXTERN_C_BEGIN extern "C" {
12 | #define YG_EXTERN_C_END }
13 | #else
14 | #define YG_EXTERN_C_BEGIN
15 | #define YG_EXTERN_C_END
16 | #endif
17 |
18 | #ifdef _WINDLL
19 | #define WIN_EXPORT __declspec(dllexport)
20 | #else
21 | #define WIN_EXPORT
22 | #endif
23 |
24 | #ifndef YOGA_EXPORT
25 | #ifdef _MSC_VER
26 | #define YOGA_EXPORT
27 | #else
28 | #define YOGA_EXPORT __attribute__((visibility("default")))
29 | #endif
30 | #endif
31 |
32 | #ifdef NS_ENUM
33 | // Cannot use NSInteger as NSInteger has a different size than int (which is the
34 | // default type of a enum). Therefor when linking the Yoga C library into obj-c
35 | // the header is a missmatch for the Yoga ABI.
36 | #define YG_ENUM_BEGIN(name) NS_ENUM(int, name)
37 | #define YG_ENUM_END(name)
38 | #else
39 | #define YG_ENUM_BEGIN(name) enum name
40 | #define YG_ENUM_END(name) name
41 | #endif
42 |
43 | #ifdef __cplusplus
44 | namespace facebook {
45 | namespace yoga {
46 | namespace enums {
47 |
48 | template
49 | constexpr int count(); // can't use `= delete` due to a defect in clang < 3.9
50 |
51 | namespace detail {
52 | template
53 | constexpr int n() {
54 | return sizeof...(xs);
55 | }
56 | } // namespace detail
57 |
58 | } // namespace enums
59 | } // namespace yoga
60 | } // namespace facebook
61 | #endif
62 |
63 | #define YG_ENUM_DECL(NAME, ...) \
64 | typedef YG_ENUM_BEGIN(NAME){__VA_ARGS__} YG_ENUM_END(NAME); \
65 | WIN_EXPORT const char* NAME##ToString(NAME);
66 |
67 | #ifdef __cplusplus
68 | #define YG_ENUM_SEQ_DECL(NAME, ...) \
69 | YG_ENUM_DECL(NAME, __VA_ARGS__) \
70 | YG_EXTERN_C_END \
71 | namespace facebook { \
72 | namespace yoga { \
73 | namespace enums { \
74 | template <> \
75 | constexpr int count() { \
76 | return detail::n<__VA_ARGS__>(); \
77 | } \
78 | } \
79 | } \
80 | } \
81 | YG_EXTERN_C_BEGIN
82 | #else
83 | #define YG_ENUM_SEQ_DECL YG_ENUM_DECL
84 | #endif
85 |
86 | #ifdef __GNUC__
87 | #define YG_DEPRECATED __attribute__((deprecated))
88 | #elif defined(_MSC_VER)
89 | #define YG_DEPRECATED __declspec(deprecated)
90 | #elif __cplusplus >= 201402L
91 | #if defined(__has_cpp_attribute)
92 | #if __has_cpp_attribute(deprecated)
93 | #define YG_DEPRECATED [[deprecated]]
94 | #endif
95 | #endif
96 | #endif
97 |
--------------------------------------------------------------------------------
/src/yoga/YGNodePrint.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #ifdef DEBUG
9 |
10 | #pragma once
11 |
12 | #ifdef __cplusplus
13 |
14 | #include
15 |
16 | #include "Yoga.h"
17 |
18 | namespace facebook {
19 | namespace yoga {
20 |
21 | void YGNodeToString(
22 | std::string& str,
23 | YGNodeRef node,
24 | YGPrintOptions options,
25 | uint32_t level);
26 |
27 | } // namespace yoga
28 | } // namespace facebook
29 |
30 | #endif
31 |
32 | #endif
33 |
--------------------------------------------------------------------------------
/src/yoga/YGStyle.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #include "YGStyle.h"
9 | #include "Utils.h"
10 |
11 | // Yoga specific properties, not compatible with flexbox specification
12 | bool operator==(const YGStyle& lhs, const YGStyle& rhs) {
13 | bool areNonFloatValuesEqual = lhs.direction() == rhs.direction() &&
14 | lhs.flexDirection() == rhs.flexDirection() &&
15 | lhs.justifyContent() == rhs.justifyContent() &&
16 | lhs.alignContent() == rhs.alignContent() &&
17 | lhs.alignItems() == rhs.alignItems() &&
18 | lhs.alignSelf() == rhs.alignSelf() &&
19 | lhs.positionType() == rhs.positionType() &&
20 | lhs.flexWrap() == rhs.flexWrap() && lhs.overflow() == rhs.overflow() &&
21 | lhs.display() == rhs.display() &&
22 | YGValueEqual(lhs.flexBasis(), rhs.flexBasis()) &&
23 | lhs.margin() == rhs.margin() && lhs.position() == rhs.position() &&
24 | lhs.padding() == rhs.padding() && lhs.border() == rhs.border() &&
25 | lhs.gap() == rhs.gap() && lhs.dimensions() == rhs.dimensions() &&
26 | lhs.minDimensions() == rhs.minDimensions() &&
27 | lhs.maxDimensions() == rhs.maxDimensions();
28 |
29 | areNonFloatValuesEqual = areNonFloatValuesEqual &&
30 | lhs.flex().isUndefined() == rhs.flex().isUndefined();
31 | if (areNonFloatValuesEqual && !lhs.flex().isUndefined() &&
32 | !rhs.flex().isUndefined()) {
33 | areNonFloatValuesEqual = areNonFloatValuesEqual && lhs.flex() == rhs.flex();
34 | }
35 |
36 | areNonFloatValuesEqual = areNonFloatValuesEqual &&
37 | lhs.flexGrow().isUndefined() == rhs.flexGrow().isUndefined();
38 | if (areNonFloatValuesEqual && !lhs.flexGrow().isUndefined()) {
39 | areNonFloatValuesEqual =
40 | areNonFloatValuesEqual && lhs.flexGrow() == rhs.flexGrow();
41 | }
42 |
43 | areNonFloatValuesEqual = areNonFloatValuesEqual &&
44 | lhs.flexShrink().isUndefined() == rhs.flexShrink().isUndefined();
45 | if (areNonFloatValuesEqual && !rhs.flexShrink().isUndefined()) {
46 | areNonFloatValuesEqual =
47 | areNonFloatValuesEqual && lhs.flexShrink() == rhs.flexShrink();
48 | }
49 |
50 | if (!(lhs.aspectRatio().isUndefined() && rhs.aspectRatio().isUndefined())) {
51 | areNonFloatValuesEqual =
52 | areNonFloatValuesEqual && lhs.aspectRatio() == rhs.aspectRatio();
53 | }
54 |
55 | return areNonFloatValuesEqual;
56 | }
57 |
--------------------------------------------------------------------------------
/src/yoga/YGValue.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #include "YGValue.h"
9 |
10 | const YGValue YGValueZero = {0, YGUnitPoint};
11 | const YGValue YGValueUndefined = {YGUndefined, YGUnitUndefined};
12 | const YGValue YGValueAuto = {YGUndefined, YGUnitAuto};
13 |
--------------------------------------------------------------------------------
/src/yoga/YGValue.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #pragma once
9 |
10 | #include
11 | #include "YGEnums.h"
12 | #include "YGMacros.h"
13 |
14 | #if defined(_MSC_VER) && defined(__clang__)
15 | #define COMPILING_WITH_CLANG_ON_WINDOWS
16 | #endif
17 | #if defined(COMPILING_WITH_CLANG_ON_WINDOWS)
18 | #include
19 | constexpr float YGUndefined = std::numeric_limits::quiet_NaN();
20 | #else
21 | YG_EXTERN_C_BEGIN
22 |
23 | // Not defined in MSVC++
24 | #ifndef NAN
25 | static const uint32_t __nan = 0x7fc00000;
26 | #define NAN (*(const float*) __nan)
27 | #endif
28 |
29 | #define YGUndefined NAN
30 | #endif
31 |
32 | typedef struct YGValue {
33 | float value;
34 | YGUnit unit;
35 | } YGValue;
36 |
37 | YOGA_EXPORT extern const YGValue YGValueAuto;
38 | YOGA_EXPORT extern const YGValue YGValueUndefined;
39 | YOGA_EXPORT extern const YGValue YGValueZero;
40 |
41 | #if !defined(COMPILING_WITH_CLANG_ON_WINDOWS)
42 | YG_EXTERN_C_END
43 | #endif
44 | #undef COMPILING_WITH_CLANG_ON_WINDOWS
45 |
46 | #ifdef __cplusplus
47 |
48 | inline bool operator==(const YGValue& lhs, const YGValue& rhs) {
49 | if (lhs.unit != rhs.unit) {
50 | return false;
51 | }
52 |
53 | switch (lhs.unit) {
54 | case YGUnitUndefined:
55 | case YGUnitAuto:
56 | return true;
57 | case YGUnitPoint:
58 | case YGUnitPercent:
59 | return lhs.value == rhs.value;
60 | }
61 |
62 | return false;
63 | }
64 |
65 | inline bool operator!=(const YGValue& lhs, const YGValue& rhs) {
66 | return !(lhs == rhs);
67 | }
68 |
69 | inline YGValue operator-(const YGValue& value) {
70 | return {-value.value, value.unit};
71 | }
72 |
73 | namespace facebook {
74 | namespace yoga {
75 | namespace literals {
76 |
77 | inline YGValue operator"" _pt(long double value) {
78 | return YGValue{static_cast(value), YGUnitPoint};
79 | }
80 | inline YGValue operator"" _pt(unsigned long long value) {
81 | return operator"" _pt(static_cast(value));
82 | }
83 |
84 | inline YGValue operator"" _percent(long double value) {
85 | return YGValue{static_cast(value), YGUnitPercent};
86 | }
87 | inline YGValue operator"" _percent(unsigned long long value) {
88 | return operator"" _percent(static_cast(value));
89 | }
90 |
91 | } // namespace literals
92 | } // namespace yoga
93 | } // namespace facebook
94 |
95 | #endif
96 |
--------------------------------------------------------------------------------
/src/yoga/event/event.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #include "event.h"
9 | #include
10 | #include
11 |
12 | namespace facebook {
13 | namespace yoga {
14 |
15 | const char* LayoutPassReasonToString(const LayoutPassReason value) {
16 | switch (value) {
17 | case LayoutPassReason::kInitial:
18 | return "initial";
19 | case LayoutPassReason::kAbsLayout:
20 | return "abs_layout";
21 | case LayoutPassReason::kStretch:
22 | return "stretch";
23 | case LayoutPassReason::kMultilineStretch:
24 | return "multiline_stretch";
25 | case LayoutPassReason::kFlexLayout:
26 | return "flex_layout";
27 | case LayoutPassReason::kMeasureChild:
28 | return "measure";
29 | case LayoutPassReason::kAbsMeasureChild:
30 | return "abs_measure";
31 | case LayoutPassReason::kFlexMeasure:
32 | return "flex_measure";
33 | default:
34 | return "unknown";
35 | }
36 | }
37 |
38 | namespace {
39 |
40 | struct Node {
41 | std::function subscriber = nullptr;
42 | Node* next = nullptr;
43 |
44 | Node(std::function&& subscriber)
45 | : subscriber{std::move(subscriber)} {}
46 | };
47 |
48 | std::atomic subscribers{nullptr};
49 |
50 | Node* push(Node* newHead) {
51 | Node* oldHead;
52 | do {
53 | oldHead = subscribers.load(std::memory_order_relaxed);
54 | if (newHead != nullptr) {
55 | newHead->next = oldHead;
56 | }
57 | } while (!subscribers.compare_exchange_weak(
58 | oldHead, newHead, std::memory_order_release, std::memory_order_relaxed));
59 | return oldHead;
60 | }
61 |
62 | } // namespace
63 |
64 | void Event::reset() {
65 | auto head = push(nullptr);
66 | while (head != nullptr) {
67 | auto current = head;
68 | head = head->next;
69 | delete current;
70 | }
71 | }
72 |
73 | void Event::subscribe(std::function&& subscriber) {
74 | push(new Node{std::move(subscriber)});
75 | }
76 |
77 | void Event::publish(const YGNode& node, Type eventType, const Data& eventData) {
78 | for (auto subscriber = subscribers.load(std::memory_order_relaxed);
79 | subscriber != nullptr;
80 | subscriber = subscriber->next) {
81 | subscriber->subscriber(node, eventType, eventData);
82 | }
83 | }
84 |
85 | } // namespace yoga
86 | } // namespace facebook
87 |
--------------------------------------------------------------------------------
/src/yoga/event/event.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #pragma once
9 |
10 | #include
11 | #include
12 | #include
13 | #include
14 | #include "../YGEnums.h"
15 |
16 | struct YGConfig;
17 | struct YGNode;
18 |
19 | namespace facebook {
20 | namespace yoga {
21 |
22 | enum struct LayoutType : int {
23 | kLayout = 0,
24 | kMeasure = 1,
25 | kCachedLayout = 2,
26 | kCachedMeasure = 3
27 | };
28 |
29 | enum struct LayoutPassReason : int {
30 | kInitial = 0,
31 | kAbsLayout = 1,
32 | kStretch = 2,
33 | kMultilineStretch = 3,
34 | kFlexLayout = 4,
35 | kMeasureChild = 5,
36 | kAbsMeasureChild = 6,
37 | kFlexMeasure = 7,
38 | COUNT
39 | };
40 |
41 | struct LayoutData {
42 | int layouts;
43 | int measures;
44 | int maxMeasureCache;
45 | int cachedLayouts;
46 | int cachedMeasures;
47 | int measureCallbacks;
48 | std::array(LayoutPassReason::COUNT)>
49 | measureCallbackReasonsCount;
50 | };
51 |
52 | const char* LayoutPassReasonToString(const LayoutPassReason value);
53 |
54 | struct YOGA_EXPORT Event {
55 | enum Type {
56 | NodeAllocation,
57 | NodeDeallocation,
58 | NodeLayout,
59 | LayoutPassStart,
60 | LayoutPassEnd,
61 | MeasureCallbackStart,
62 | MeasureCallbackEnd,
63 | NodeBaselineStart,
64 | NodeBaselineEnd,
65 | };
66 | class Data;
67 | using Subscriber = void(const YGNode&, Type, Data);
68 | using Subscribers = std::vector>;
69 |
70 | template
71 | struct TypedData {};
72 |
73 | class Data {
74 | const void* data_;
75 |
76 | public:
77 | template
78 | Data(const TypedData& data) : data_{&data} {}
79 |
80 | template
81 | const TypedData& get() const {
82 | return *static_cast*>(data_);
83 | };
84 | };
85 |
86 | static void reset();
87 |
88 | static void subscribe(std::function&& subscriber);
89 |
90 | template
91 | static void publish(const YGNode& node, const TypedData& eventData = {}) {
92 | #ifdef YG_ENABLE_EVENTS
93 | publish(node, E, Data{eventData});
94 | #else
95 | (void) node;
96 | (void) eventData;
97 | #endif
98 | }
99 |
100 | template
101 | static void publish(const YGNode* node, const TypedData& eventData = {}) {
102 | publish(*node, eventData);
103 | }
104 |
105 | private:
106 | static void publish(const YGNode&, Type, const Data&);
107 | };
108 |
109 | template <>
110 | struct Event::TypedData {
111 | YGConfig* config;
112 | };
113 |
114 | template <>
115 | struct Event::TypedData {
116 | YGConfig* config;
117 | };
118 |
119 | template <>
120 | struct Event::TypedData {
121 | void* layoutContext;
122 | };
123 |
124 | template <>
125 | struct Event::TypedData {
126 | void* layoutContext;
127 | LayoutData* layoutData;
128 | };
129 |
130 | template <>
131 | struct Event::TypedData {
132 | void* layoutContext;
133 | float width;
134 | YGMeasureMode widthMeasureMode;
135 | float height;
136 | YGMeasureMode heightMeasureMode;
137 | float measuredWidth;
138 | float measuredHeight;
139 | const LayoutPassReason reason;
140 | };
141 |
142 | template <>
143 | struct Event::TypedData {
144 | LayoutType layoutType;
145 | void* layoutContext;
146 | };
147 |
148 | } // namespace yoga
149 | } // namespace facebook
150 |
--------------------------------------------------------------------------------
/src/yoga/log.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #include "log.h"
9 |
10 | #include "Yoga.h"
11 | #include "YGConfig.h"
12 | #include "YGNode.h"
13 |
14 | namespace facebook {
15 | namespace yoga {
16 | namespace detail {
17 |
18 | namespace {
19 |
20 | void vlog(
21 | YGConfig* config,
22 | YGNode* node,
23 | YGLogLevel level,
24 | void* context,
25 | const char* format,
26 | va_list args) {
27 | YGConfig* logConfig = config != nullptr ? config : YGConfigGetDefault();
28 | logConfig->log(logConfig, node, level, context, format, args);
29 | }
30 | } // namespace
31 |
32 | YOGA_EXPORT void Log::log(
33 | YGNode* node,
34 | YGLogLevel level,
35 | void* context,
36 | const char* format,
37 | ...) noexcept {
38 | va_list args;
39 | va_start(args, format);
40 | vlog(
41 | node == nullptr ? nullptr : node->getConfig(),
42 | node,
43 | level,
44 | context,
45 | format,
46 | args);
47 | va_end(args);
48 | }
49 |
50 | void Log::log(
51 | YGConfig* config,
52 | YGLogLevel level,
53 | void* context,
54 | const char* format,
55 | ...) noexcept {
56 | va_list args;
57 | va_start(args, format);
58 | vlog(config, nullptr, level, context, format, args);
59 | va_end(args);
60 | }
61 |
62 | } // namespace detail
63 | } // namespace yoga
64 | } // namespace facebook
65 |
--------------------------------------------------------------------------------
/src/yoga/log.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Meta Platforms, Inc. and affiliates.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #pragma once
9 |
10 | #ifdef __cplusplus
11 |
12 | #include "YGEnums.h"
13 |
14 | struct YGNode;
15 | struct YGConfig;
16 |
17 | namespace facebook {
18 | namespace yoga {
19 |
20 | namespace detail {
21 |
22 | struct Log {
23 | static void log(
24 | YGNode* node,
25 | YGLogLevel level,
26 | void*,
27 | const char* message,
28 | ...) noexcept;
29 |
30 | static void log(
31 | YGConfig* config,
32 | YGLogLevel level,
33 | void*,
34 | const char* format,
35 | ...) noexcept;
36 | };
37 |
38 | } // namespace detail
39 | } // namespace yoga
40 | } // namespace facebook
41 |
42 | #endif
43 |
--------------------------------------------------------------------------------