CSVEditor refactoring

This commit is contained in:
Nicolò Santilio 2020-10-25 00:57:16 +02:00 committed by GitHub
parent a8acc28251
commit a9d0a1e1c2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 1050 additions and 168 deletions

View File

@ -0,0 +1,591 @@
[gd_scene load_steps=29 format=2]
[ext_resource path="res://addons/file-editor/scenes/Readonly.tscn" type="PackedScene" id=1]
[ext_resource path="res://addons/file-editor/scripts/CSVEditor.gd" type="Script" id=2]
[sub_resource type="Image" id=1]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 239, 255, 255, 255, 48, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 255, 255, 255, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 239, 255, 255, 255, 80, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 191, 255, 255, 255, 32, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=2]
image = SubResource( 1 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=3]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=4]
image = SubResource( 3 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=5]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=6]
image = SubResource( 5 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=7]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=8]
image = SubResource( 7 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=9]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=10]
image = SubResource( 9 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=11]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 175, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 175, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 239, 224, 224, 224, 239, 224, 224, 224, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 80, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=12]
image = SubResource( 11 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=13]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=14]
image = SubResource( 13 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=15]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=16]
image = SubResource( 15 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=17]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 48, 224, 224, 224, 207, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 223, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 207, 224, 224, 224, 48, 224, 224, 224, 48, 224, 224, 224, 191, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 32, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 32, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 191, 224, 224, 224, 16, 224, 224, 224, 16, 224, 224, 224, 159, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 223, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 239, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 64, 224, 224, 224, 239, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 239, 224, 224, 224, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=18]
image = SubResource( 17 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=19]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 225, 225, 69, 224, 224, 224, 255, 224, 224, 224, 255, 225, 225, 225, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, 234, 234, 12, 226, 226, 226, 61, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 132, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 132, 0, 0, 0, 0, 0, 0, 0, 0, 226, 226, 226, 61, 234, 234, 234, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, 234, 234, 12, 224, 224, 224, 195, 224, 224, 224, 255, 224, 224, 224, 167, 224, 224, 224, 57, 224, 224, 224, 211, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 211, 224, 224, 224, 57, 224, 224, 224, 167, 224, 224, 224, 255, 224, 224, 224, 195, 234, 234, 234, 12, 0, 0, 0, 0, 0, 0, 0, 0, 226, 226, 226, 61, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 226, 226, 226, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 225, 225, 168, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 167, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223, 223, 223, 56, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 208, 224, 224, 224, 208, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 57, 0, 0, 0, 0, 0, 0, 0, 0, 225, 225, 225, 69, 224, 224, 224, 132, 224, 224, 224, 211, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 225, 225, 225, 92, 234, 234, 234, 12, 234, 234, 234, 12, 225, 225, 225, 94, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 211, 224, 224, 224, 132, 225, 225, 225, 69, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 208, 216, 216, 216, 13, 224, 224, 224, 233, 224, 224, 224, 232, 234, 234, 234, 12, 224, 224, 224, 209, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 254, 224, 224, 224, 131, 221, 221, 221, 37, 224, 224, 224, 255, 224, 224, 224, 255, 221, 221, 221, 37, 224, 224, 224, 130, 224, 224, 224, 253, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 225, 225, 225, 69, 224, 224, 224, 132, 224, 224, 224, 211, 224, 224, 224, 246, 225, 225, 225, 69, 0, 0, 0, 0, 221, 221, 221, 37, 224, 224, 224, 255, 224, 224, 224, 255, 221, 221, 221, 37, 0, 0, 0, 0, 225, 225, 225, 68, 224, 224, 224, 245, 224, 224, 224, 211, 224, 224, 224, 132, 225, 225, 225, 69, 0, 0, 0, 0, 0, 0, 0, 0, 228, 228, 228, 19, 224, 224, 224, 41, 0, 0, 0, 0, 255, 255, 255, 1, 224, 224, 224, 99, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 100, 255, 255, 255, 1, 0, 0, 0, 0, 223, 223, 223, 40, 228, 228, 228, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 225, 225, 143, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 226, 226, 44, 224, 224, 224, 254, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 254, 225, 225, 225, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 222, 222, 222, 70, 224, 224, 224, 206, 224, 224, 224, 245, 224, 224, 224, 187, 224, 224, 224, 187, 224, 224, 224, 245, 224, 224, 224, 206, 224, 224, 224, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 73, 223, 223, 223, 218, 0, 0, 0, 0, 0, 0, 0, 0, 223, 223, 223, 218, 224, 224, 224, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 73, 223, 223, 223, 218, 0, 0, 0, 0, 0, 0, 0, 0, 223, 223, 223, 218, 224, 224, 224, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=20]
image = SubResource( 19 )
size = Vector2( 16, 16 )
[sub_resource type="StyleBoxEmpty" id=21]
content_margin_left = 5.0
content_margin_right = 2.0
[sub_resource type="StyleBoxEmpty" id=22]
content_margin_left = 2.0
content_margin_right = 5.0
[sub_resource type="Image" id=23]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 80, 224, 224, 224, 206, 224, 224, 224, 238, 224, 224, 224, 238, 224, 224, 224, 174, 224, 224, 224, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 48, 224, 224, 224, 206, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 206, 224, 224, 224, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 48, 224, 224, 224, 238, 224, 224, 224, 254, 224, 224, 224, 206, 224, 224, 224, 112, 224, 224, 224, 16, 224, 224, 224, 16, 224, 224, 224, 80, 224, 224, 224, 222, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 206, 224, 224, 224, 254, 224, 224, 224, 222, 224, 224, 224, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 206, 224, 224, 224, 254, 224, 224, 224, 238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 96, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 96, 0, 0, 0, 0, 224, 224, 224, 64, 224, 224, 224, 206, 224, 224, 224, 222, 224, 224, 224, 64, 0, 0, 0, 0, 224, 224, 224, 96, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 206, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 32, 0, 0, 0, 0, 224, 224, 224, 222, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 238, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 238, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 222, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 16, 0, 0, 0, 0, 224, 224, 224, 222, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 238, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 222, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 126, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 96, 0, 0, 0, 0, 224, 224, 224, 64, 224, 224, 224, 254, 224, 224, 224, 238, 224, 224, 224, 96, 0, 0, 0, 0, 224, 224, 224, 80, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 126, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 222, 224, 224, 224, 254, 224, 224, 224, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 190, 224, 224, 224, 254, 224, 224, 224, 238, 224, 224, 224, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 48, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 206, 224, 224, 224, 96, 0, 0, 0, 0, 224, 224, 224, 16, 224, 224, 224, 64, 224, 224, 224, 206, 224, 224, 224, 254, 224, 224, 224, 238, 224, 224, 224, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 48, 224, 224, 224, 222, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 254, 224, 224, 224, 238, 224, 224, 224, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 112, 224, 224, 224, 206, 224, 224, 224, 254, 224, 224, 224, 238, 224, 224, 224, 206, 224, 224, 224, 126, 224, 224, 224, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=24]
image = SubResource( 23 )
size = Vector2( 16, 16 )
[sub_resource type="Image" id=25]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 174, 37, 44, 59, 254, 37, 44, 59, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 64, 37, 44, 59, 254, 37, 44, 59, 174, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 126, 37, 44, 59, 254, 37, 44, 59, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 190, 37, 44, 59, 254, 37, 44, 59, 126, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 16, 37, 44, 59, 222, 37, 44, 59, 254, 37, 44, 59, 190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 16, 37, 44, 59, 158, 37, 44, 59, 254, 37, 44, 59, 238, 37, 44, 59, 16, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 16, 37, 44, 59, 190, 37, 44, 59, 254, 37, 44, 59, 254, 37, 44, 59, 206, 37, 44, 59, 96, 0, 0, 0, 0, 37, 44, 59, 16, 37, 44, 59, 64, 37, 44, 59, 206, 37, 44, 59, 254, 37, 44, 59, 254, 37, 44, 59, 222, 37, 44, 59, 16, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 16, 37, 44, 59, 206, 37, 44, 59, 206, 37, 44, 59, 222, 37, 44, 59, 254, 37, 44, 59, 254, 37, 44, 59, 254, 37, 44, 59, 254, 37, 44, 59, 254, 37, 44, 59, 254, 37, 44, 59, 238, 37, 44, 59, 222, 37, 44, 59, 206, 37, 44, 59, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 16, 37, 44, 59, 32, 0, 0, 0, 0, 37, 44, 59, 112, 37, 44, 59, 206, 37, 44, 59, 254, 37, 44, 59, 254, 37, 44, 59, 206, 37, 44, 59, 112, 37, 44, 59, 16, 37, 44, 59, 16, 37, 44, 59, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 44, 59, 254, 37, 44, 59, 254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
"format": "RGBA8",
"height": 16,
"mipmaps": false,
"width": 16
}
[sub_resource type="ImageTexture" id=26]
image = SubResource( 25 )
size = Vector2( 16, 16 )
[node name="CSVEditor" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
rect_clip_content = true
size_flags_horizontal = 3
size_flags_vertical = 3
script = ExtResource( 2 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="Container" type="VBoxContainer" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
size_flags_horizontal = 3
size_flags_vertical = 3
__meta__ = {
"_edit_use_anchors_": false
}
[node name="Menu" type="HBoxContainer" parent="Container"]
margin_right = 1024.0
margin_bottom = 22.0
[node name="AlignMenu" type="MenuButton" parent="Container/Menu"]
margin_right = 63.0
margin_bottom = 22.0
text = "Align"
icon = SubResource( 2 )
items = [ "Left", SubResource( 4 ), 0, false, false, 0, 0, null, "", false, "Center", SubResource( 6 ), 0, false, false, 1, 0, null, "", false, "Right", SubResource( 8 ), 0, false, false, 2, 0, null, "", false, "Fill", SubResource( 10 ), 0, false, false, 3, 0, null, "", false ]
[node name="EditMenu" type="MenuButton" parent="Container/Menu"]
margin_left = 67.0
margin_right = 122.0
margin_bottom = 22.0
text = "Edit"
icon = SubResource( 12 )
items = [ "Add Rows", SubResource( 14 ), 0, false, false, 0, 67108946, null, "", false, "Add Columns", SubResource( 16 ), 0, false, false, 1, 67108931, null, "", false, "Change Delimiter", SubResource( 18 ), 0, false, false, 2, 67108932, null, "", false ]
[node name="SettingsMenu" type="MenuButton" parent="Container/Menu"]
margin_left = 126.0
margin_right = 208.0
margin_bottom = 22.0
text = "Settings"
icon = SubResource( 20 )
items = [ "Change Editor Settings", null, 0, false, false, 0, 0, null, "", false, "Translate this file", null, 0, false, false, 1, 0, null, "", false ]
[node name="Scroll" type="ScrollContainer" parent="Container"]
margin_top = 26.0
margin_right = 1024.0
margin_bottom = 577.0
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Columns" type="HBoxContainer" parent="Container/Scroll"]
margin_right = 1024.0
margin_bottom = 551.0
size_flags_horizontal = 3
size_flags_vertical = 3
custom_constants/separation = 1
[node name="_COLUMN_HEAD" type="VBoxContainer" parent="Container/Scroll/Columns"]
margin_right = 12.0
margin_bottom = 551.0
size_flags_vertical = 3
custom_constants/separation = 1
__meta__ = {
"_edit_use_anchors_": false
}
[node name="Label" type="Label" parent="Container/Scroll/Columns/_COLUMN_HEAD"]
margin_right = 12.0
margin_bottom = 25.0
rect_min_size = Vector2( 0, 25 )
text = "@"
align = 1
valign = 1
[node name="1" type="Label" parent="Container/Scroll/Columns/_COLUMN_HEAD"]
margin_top = 26.0
margin_right = 12.0
margin_bottom = 51.0
rect_min_size = Vector2( 0, 25 )
size_flags_horizontal = 3
size_flags_vertical = 1
text = "1"
align = 2
[node name="0" type="VBoxContainer" parent="Container/Scroll/Columns"]
margin_left = 13.0
margin_right = 113.0
margin_bottom = 551.0
size_flags_vertical = 3
custom_constants/separation = 1
__meta__ = {
"_edit_use_anchors_": false
}
[node name="0" type="Label" parent="Container/Scroll/Columns/0"]
margin_right = 100.0
margin_bottom = 25.0
rect_min_size = Vector2( 0, 25 )
text = "1"
align = 1
valign = 1
[node name="1" type="LineEdit" parent="Container/Scroll/Columns/0"]
margin_top = 26.0
margin_right = 100.0
margin_bottom = 51.0
rect_min_size = Vector2( 100, 25 )
size_flags_horizontal = 3
[node name="FileProperties" type="HBoxContainer" parent="Container"]
margin_top = 581.0
margin_right = 1024.0
margin_bottom = 600.0
size_flags_horizontal = 3
[node name="Dimensions" type="HBoxContainer" parent="Container/FileProperties"]
margin_right = 338.0
margin_bottom = 19.0
size_flags_horizontal = 3
custom_constants/separation = 0
[node name="Label" type="Label" parent="Container/FileProperties/Dimensions"]
margin_top = 2.0
margin_right = 81.0
margin_bottom = 16.0
text = "Dimensions:"
[node name="Label2" type="Label" parent="Container/FileProperties/Dimensions"]
margin_left = 81.0
margin_top = 2.0
margin_right = 126.0
margin_bottom = 16.0
custom_styles/normal = SubResource( 21 )
custom_colors/font_color = Color( 0.454902, 0.454902, 0.454902, 1 )
text = "(rows)"
align = 2
[node name="RowsLbl" type="Label" parent="Container/FileProperties/Dimensions"]
margin_left = 126.0
margin_top = 2.0
margin_right = 134.0
margin_bottom = 16.0
custom_colors/font_color = Color( 0, 1, 0.321569, 1 )
text = "0"
[node name="Label3" type="Label" parent="Container/FileProperties/Dimensions"]
margin_left = 134.0
margin_top = 2.0
margin_right = 141.0
margin_bottom = 16.0
text = "x"
[node name="ColumnsLbl" type="Label" parent="Container/FileProperties/Dimensions"]
margin_left = 141.0
margin_top = 2.0
margin_right = 149.0
margin_bottom = 16.0
custom_colors/font_color = Color( 0, 1, 0.321569, 1 )
text = "0"
[node name="Label4" type="Label" parent="Container/FileProperties/Dimensions"]
margin_left = 149.0
margin_top = 2.0
margin_right = 219.0
margin_bottom = 16.0
custom_styles/normal = SubResource( 22 )
custom_colors/font_color = Color( 0.454902, 0.454902, 0.454902, 1 )
text = "(columns)"
[node name="Delimiter" type="HBoxContainer" parent="Container/FileProperties"]
margin_left = 342.0
margin_right = 681.0
margin_bottom = 19.0
size_flags_horizontal = 3
custom_constants/separation = 0
[node name="Label" type="Label" parent="Container/FileProperties/Delimiter"]
margin_top = 2.0
margin_right = 65.0
margin_bottom = 16.0
text = "Delimiter:"
[node name="DelimiterLbl" type="Label" parent="Container/FileProperties/Delimiter"]
margin_left = 65.0
margin_top = 2.0
margin_right = 72.0
margin_bottom = 16.0
custom_colors/font_color = Color( 0, 1, 0.156863, 1 )
text = "|"
[node name="Readonly" parent="Container/FileProperties" instance=ExtResource( 1 )]
custom_icons/checked = SubResource( 24 )
custom_icons/unchecked = SubResource( 26 )
[node name="EditDialog" type="AcceptDialog" parent="."]
anchor_left = 0.394852
anchor_top = 0.440333
anchor_right = 0.62768
anchor_bottom = 0.559667
margin_left = -0.328003
margin_top = -0.199997
margin_right = -2.74402
margin_bottom = 0.199951
window_title = "SOME TEXT"
__meta__ = {
"_edit_use_anchors_": true
}
[node name="Options" type="VBoxContainer" parent="EditDialog"]
anchor_right = 1.0
anchor_bottom = 0.555556
margin_left = 8.0
margin_top = 8.0
margin_right = -8.0
margin_bottom = -3.99987
alignment = 1
__meta__ = {
"_edit_use_anchors_": true
}
[node name="Rows" type="HBoxContainer" parent="EditDialog/Options"]
visible = false
margin_top = 8.0
margin_right = 253.0
margin_bottom = 32.0
alignment = 1
__meta__ = {
"_edit_use_anchors_": true
}
[node name="Label" type="Label" parent="EditDialog/Options/Rows"]
margin_left = 40.0
margin_top = 5.0
margin_right = 106.0
margin_bottom = 19.0
text = "Add Rows:"
[node name="LessBtn" type="Button" parent="EditDialog/Options/Rows"]
margin_left = 110.0
margin_right = 127.0
margin_bottom = 24.0
text = "-"
[node name="NewRows" type="LineEdit" parent="EditDialog/Options/Rows"]
margin_left = 131.0
margin_right = 189.0
margin_bottom = 24.0
align = 1
placeholder_text = "0"
[node name="MoreBtn" type="Button" parent="EditDialog/Options/Rows"]
margin_left = 193.0
margin_right = 213.0
margin_bottom = 24.0
text = "+"
[node name="Columns" type="HBoxContainer" parent="EditDialog/Options"]
visible = false
margin_top = 34.0
margin_right = 278.0
margin_bottom = 58.0
alignment = 1
__meta__ = {
"_edit_use_anchors_": true
}
[node name="Label" type="Label" parent="EditDialog/Options/Columns"]
margin_left = 63.0
margin_top = 5.0
margin_right = 152.0
margin_bottom = 19.0
text = "Add Columns:"
[node name="LessBtn" type="Button" parent="EditDialog/Options/Columns"]
margin_left = 120.0
margin_top = -26.0
margin_right = 137.0
margin_bottom = -2.0
text = "-"
[node name="NewColumns" type="LineEdit" parent="EditDialog/Options/Columns"]
margin_left = 156.0
margin_right = 214.0
margin_bottom = 24.0
align = 1
placeholder_text = "0"
[node name="MoreBtn" type="Button" parent="EditDialog/Options/Columns"]
margin_left = 205.0
margin_top = -26.0
margin_right = 225.0
margin_bottom = -2.0
text = "+"
[node name="Delimiter" type="HBoxContainer" parent="EditDialog/Options"]
visible = false
margin_top = 48.0
margin_right = 278.0
margin_bottom = 72.0
alignment = 1
__meta__ = {
"_edit_use_anchors_": true
}
[node name="Label" type="Label" parent="EditDialog/Options/Delimiter"]
margin_left = 55.0
margin_top = 5.0
margin_right = 160.0
margin_bottom = 19.0
text = "Using Delimiter:"
[node name="DelimiterLine" type="LineEdit" parent="EditDialog/Options/Delimiter"]
margin_left = 164.0
margin_right = 222.0
margin_bottom = 24.0
[node name="EditorSettingsDialog" type="AcceptDialog" parent="."]
anchor_left = 0.359
anchor_top = 0.43
anchor_right = 0.641
anchor_bottom = 0.64
margin_left = 0.383972
margin_top = -2.0
margin_right = -0.384033
margin_bottom = -3.05176e-05
grow_horizontal = 2
window_title = "Change Editor Settings"
__meta__ = {
"_edit_use_anchors_": false
}
[node name="EditorSettings" type="VBoxContainer" parent="EditorSettingsDialog"]
anchor_top = 0.064
anchor_right = 0.979
anchor_bottom = 0.617
margin_left = 8.0
margin_top = -0.191998
margin_right = -1.952
margin_bottom = 13.024
alignment = 1
__meta__ = {
"_edit_use_anchors_": true
}
[node name="ColumnsLength" type="HBoxContainer" parent="EditorSettingsDialog/EditorSettings"]
margin_top = 2.0
margin_right = 272.0
margin_bottom = 26.0
[node name="Label" type="Label" parent="EditorSettingsDialog/EditorSettings/ColumnsLength"]
margin_left = 35.0
margin_top = 5.0
margin_right = 155.0
margin_bottom = 19.0
rect_min_size = Vector2( 120, 0 )
text = "Columns length:"
[node name="ColumnsLengthLine" type="LineEdit" parent="EditorSettingsDialog/EditorSettings/ColumnsLength"]
margin_left = 159.0
margin_right = 217.0
margin_bottom = 24.0
[node name="Label2" type="Label" parent="EditorSettingsDialog/EditorSettings/ColumnsLength"]
margin_left = 221.0
margin_top = 5.0
margin_right = 236.0
margin_bottom = 19.0
text = "px"
[node name="ColumnsSpacing" type="HBoxContainer" parent="EditorSettingsDialog/EditorSettings"]
margin_top = 30.0
margin_right = 272.0
margin_bottom = 54.0
[node name="Label" type="Label" parent="EditorSettingsDialog/EditorSettings/ColumnsSpacing"]
margin_left = 35.0
margin_top = 5.0
margin_right = 155.0
margin_bottom = 19.0
rect_min_size = Vector2( 120, 0 )
text = "Columns spacing:"
[node name="ColumnsSpacingLine" type="LineEdit" parent="EditorSettingsDialog/EditorSettings/ColumnsSpacing"]
margin_left = 159.0
margin_right = 217.0
margin_bottom = 24.0
[node name="Label2" type="Label" parent="EditorSettingsDialog/EditorSettings/ColumnsSpacing"]
margin_left = 221.0
margin_top = 5.0
margin_right = 236.0
margin_bottom = 19.0
text = "px"
[node name="RowsSpacing" type="HBoxContainer" parent="EditorSettingsDialog/EditorSettings"]
margin_top = 58.0
margin_right = 272.0
margin_bottom = 82.0
[node name="Label" type="Label" parent="EditorSettingsDialog/EditorSettings/RowsSpacing"]
margin_left = 35.0
margin_top = 5.0
margin_right = 155.0
margin_bottom = 19.0
rect_min_size = Vector2( 120, 0 )
text = "Rows spacing:"
[node name="RowsSpacingLine" type="LineEdit" parent="EditorSettingsDialog/EditorSettings/RowsSpacing"]
margin_left = 159.0
margin_right = 217.0
margin_bottom = 24.0
[node name="Label2" type="Label" parent="EditorSettingsDialog/EditorSettings/RowsSpacing"]
margin_left = 221.0
margin_top = 5.0
margin_right = 236.0
margin_bottom = 19.0
text = "px"

View File

@ -3,6 +3,8 @@
[ext_resource path="res://addons/file-editor/scripts/FileEditor.gd" type="Script" id=1]
[ext_resource path="res://addons/file-editor/fonts/Roboto-Black.ttf" type="DynamicFontData" id=2]
[sub_resource type="Image" id=25]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),

View File

@ -2,6 +2,8 @@
[ext_resource path="res://addons/file-editor/scripts/IniVisualEditor.gd" type="Script" id=1]
[sub_resource type="Image" id=16]
data = {
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 224, 224, 224, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),

View File

@ -7,6 +7,8 @@
[ext_resource path="res://addons/file-editor/fonts/Carlito-Bold.ttf" type="DynamicFontData" id=5]
[ext_resource path="res://addons/file-editor/fonts/Carlito-Regular.ttf" type="DynamicFontData" id=6]
[sub_resource type="DynamicFont" id=1]
use_mipmaps = true
use_filter = true

View File

@ -0,0 +1,280 @@
tool
extends Control
class_name CSVEditor
onready var Columns : HBoxContainer = $Container/Scroll/Columns
onready var _column_head : VBoxContainer = Columns.get_node("_COLUMN_HEAD")
onready var _row_label : Label = _column_head.get_node("1")
onready var _zero_column : VBoxContainer = Columns.get_node("0")
onready var _row_line : LineEdit = _zero_column.get_node("1")
onready var columns_count_lbl : Label = $Container/FileProperties/Dimensions/ColumnsLbl
onready var rows_count_lbl : Label = $Container/FileProperties/Dimensions/RowsLbl
onready var csv_delimiter_lbl : Label = $Container/FileProperties/Delimiter/DelimiterLbl
onready var align_menu_opitons : PopupMenu = $Container/Menu/AlignMenu.get_popup()
onready var edit_menu_options : PopupMenu = $Container/Menu/EditMenu.get_popup()
onready var settings_menu_options : PopupMenu = $Container/Menu/SettingsMenu.get_popup()
onready var readonly_btn : CheckBox = $Container/FileProperties/Readonly
onready var edit_dialog : AcceptDialog = $EditDialog
onready var edit_rows : HBoxContainer = edit_dialog.get_node("Options/Rows")
onready var edit_columns : HBoxContainer = edit_dialog.get_node("Options/Columns")
onready var edit_delimiter : HBoxContainer = edit_dialog.get_node("Options/Delimiter")
onready var new_rows_line : LineEdit = edit_rows.get_node("NewRows")
onready var new_columns_line : LineEdit = edit_columns.get_node("NewColumns")
onready var new_delimiter_line : LineEdit = edit_delimiter.get_node("DelimiterLine")
onready var editor_settings : AcceptDialog = $EditorSettingsDialog
onready var editor_columns_length : LineEdit = editor_settings.get_node("EditorSettings/ColumnsLength/ColumnsLengthLine")
onready var editor_columns_spacing : LineEdit = editor_settings.get_node("EditorSettings/ColumnsSpacing/ColumnsSpacingLine")
onready var editor_rows_spacing : LineEdit = editor_settings.get_node("EditorSettings/RowsSpacing/RowsSpacingLine")
var current_file_path : String
var file_path : String
var csv_delimiter : String = ","
var columns_count : int = 0
var rows_count : int = 0
signal update_file()
# Called when the node enters the scene tree for the first time.
func _ready():
_connect_signals()
_load_icons()
_add_shortcuts()
func _add_shortcuts() -> void:
var hotkey
hotkey = InputEventKey.new()
hotkey.scancode = KEY_C
hotkey.alt = true
edit_menu_options.set_item_accelerator(1,hotkey.get_scancode_with_modifiers())
hotkey = InputEventKey.new()
hotkey.scancode = KEY_R
hotkey.alt = true
edit_menu_options.set_item_accelerator(0,hotkey.get_scancode_with_modifiers())
hotkey = InputEventKey.new()
hotkey.scancode = KEY_D
hotkey.alt = true
edit_menu_options.set_item_accelerator(2,hotkey.get_scancode_with_modifiers())
func _connect_signals() -> void:
align_menu_opitons.connect("id_pressed", self, "_on_align_pressed")
edit_menu_options.connect("id_pressed", self, "_on_edit_pressed")
settings_menu_options.connect("id_pressed",self, "_on_settings_pressed")
readonly_btn.connect("toggled", self, "_is_readonly")
edit_dialog.connect("confirmed", self, "_on_edit_confirmed")
editor_settings.connect("confirmed", self, "_on_editor_settings_confirmed")
$EditDialog/Options/Columns/LessBtn.connect("pressed", self, "_on_less_pressed")
$EditDialog/Options/Rows/LessBtn.connect("pressed", self, "_on_less_pressed")
$EditDialog/Options/Columns/MoreBtn.connect("pressed", self, "_on_more_pressed")
$EditDialog/Options/Rows/MoreBtn.connect("pressed", self, "_on_more_pressed")
func _load_icons() -> void:
$Container/Menu/AlignMenu.set_button_icon(IconLoader.load_icon_from_name("align"))
$Container/Menu/EditMenu.set_button_icon(IconLoader.load_icon_from_name("edit_"))
$Container/Menu/SettingsMenu.set_button_icon(IconLoader.load_icon_from_name("settings"))
align_menu_opitons.set_item_icon(0,IconLoader.load_icon_from_name("text-left"))
align_menu_opitons.set_item_icon(1,IconLoader.load_icon_from_name("text-center"))
align_menu_opitons.set_item_icon(2,IconLoader.load_icon_from_name("text-right"))
align_menu_opitons.set_item_icon(3,IconLoader.load_icon_from_name("text-fill"))
edit_menu_options.set_item_icon(0,IconLoader.load_icon_from_name("row"))
edit_menu_options.set_item_icon(1,IconLoader.load_icon_from_name("column"))
edit_menu_options.set_item_icon(2,IconLoader.load_icon_from_name("save"))
readonly_btn.set("custom_icons/checked",IconLoader.load_icon_from_name("read"))
readonly_btn.set("custom_icons/unchecked",IconLoader.load_icon_from_name("edit"))
func _on_align_pressed(id : int) -> void:
for column in range(1, columns_count+1):
for row in range(1, rows_count+1):
Columns.get_child(column).get_child(row).set_align(id)
func _on_edit_pressed(id : int) -> void:
new_rows_line.set_text(str(0))
new_columns_line.set_text(str(0))
new_delimiter_line.set_text(csv_delimiter)
for child in range(0, edit_dialog.get_node("Options").get_child_count()):
edit_dialog.get_node("Options").get_child(child).set_visible((child == id))
match id:
0:
edit_dialog.window_title = ("Add Rows")
1:
edit_dialog.window_title = ("Add Columns")
2:
edit_dialog.window_title = ("Change Delimiter")
edit_dialog.popup()
func _on_settings_pressed(id : int) -> void:
match id:
0: # Change Columns Size
editor_columns_length.set_text(str(Columns.get_child(1).get_child(1).get_size().x))
editor_columns_spacing.set_text(str(Columns.get("custom_constants/separation")))
editor_rows_spacing.set_text(str(Columns.get_child(1).get("custom_constants/separation")))
editor_settings.popup()
func _on_editor_settings_confirmed() -> void:
for column in range(0, columns_count+1):
Columns.get_child(column).set("custom_constants/separation", float(editor_rows_spacing.get_text()))
if column == 0: continue
Columns.get_child(column).get_child(1).set_custom_minimum_size(Vector2(float(editor_columns_length.get_text()), 0.0))
Columns.set("custom_constants/separation", float(editor_columns_spacing.get_text()))
func _on_less_pressed() -> void:
if edit_columns.is_visible():
if int(new_columns_line.get_text()) > 0 : new_columns_line.set_text(str(int(new_columns_line.get_text())-1))
if edit_rows.is_visible():
if int(new_rows_line.get_text()) > 0 : new_rows_line.set_text(str(int(new_rows_line.get_text())-1))
func _on_more_pressed() -> void:
if edit_columns.is_visible():
new_columns_line.set_text(str(int(new_columns_line.get_text())+1))
if edit_rows.is_visible():
new_rows_line.set_text(str(int(new_rows_line.get_text())+1))
func _on_edit_confirmed() -> void:
# Add new Columns
if edit_columns.is_visible():
var ref_column : VBoxContainer = Columns.get_child(columns_count).duplicate(8)
for row in ref_column.get_children():
row.set_text("")
var new_columns : int = new_columns_line.get_text() as int
for new_column in range(0,new_columns):
var column : VBoxContainer = ref_column.duplicate(8)
column.get_child(0).set_text((columns_count+new_column+1) as String)
Columns.add_child(column)
columns_count+=new_columns
# Add new Rows
if edit_rows.is_visible():
var new_rows : int = new_rows_line.get_text() as int
for column in range(1, columns_count+1):
for row in range(0, new_rows):
Columns.get_child(column).add_child(LineEdit.new())
for row in range(0, new_rows):
var lbl : Label = Label.new()
lbl.set_text(str(rows_count+row+1))
_column_head.add_child(lbl)
rows_count+=new_rows
# Change delimiter
if edit_delimiter.is_visible():
assert(not new_delimiter_line.get_text() in ["", " "], "Delimiter not valid.")
open_csv_file(file_path, new_delimiter_line.get_text())
load_file_properties()
func _is_readonly(readonly : bool) -> void:
for column in range(1, columns_count+1):
for row in range(1, rows_count+1):
Columns.get_child(column).get_child(row).set_editable(not readonly)
edit_menu_options.set_item_disabled(0, readonly)
edit_menu_options.set_item_disabled(1, readonly)
func clear_editor() -> void:
for column in Columns.get_children():
if not column in [_zero_column, _column_head]:
column.free()
for row in _zero_column.get_children():
if not row.get_name() in ["0","1"]:
row.free()
for label in _column_head.get_children():
if not label.get_text() in ["@", "1"]:
label.free()
func open_csv_file(filepath : String, csv_delimiter : String = ";") -> void:
if rows_count != 0 and columns_count != 0: clear_editor()
self.file_path = filepath
self.csv_delimiter = csv_delimiter
var csv = File.new()
csv.open(filepath,File.READ)
var rows : Array = []
var columns : int = 0
if not csv.get_as_text().empty():
while not csv.eof_reached():
var csv_line = csv.get_csv_line(csv_delimiter)
if Array(csv_line) != [""]:
columns = csv_line.size() if columns < csv_line.size() else columns
if csv_line.size() < columns:
csv_line.resize(columns)
rows.append(csv_line)
csv.close()
columns_count = columns
rows_count = rows.size()
load_file_properties()
load_file_in_table(rows,columns)
# ReadOnly.pressed = (true)
# $Editor/FileInfo/delimiter.set_text(csv_delimiter)
# ChangeDelimiterDialog.get_node("VBoxContainer/delim_read").set_text(csv_delimiter)
func load_file_properties() -> void:
rows_count_lbl.set_text(str(rows_count))
columns_count_lbl.set_text(str(columns_count))
csv_delimiter_lbl.set_text(csv_delimiter)
func load_csv_grid(rows : Array, columns : int) -> void:
for row in range(1,rows.size()):
var csv_field : LineEdit = _row_line.duplicate(8)
_zero_column.add_child(csv_field)
var csv_field_label : Label = _row_label.duplicate(8)
_column_head.add_child(csv_field_label)
csv_field_label.set_text(str(row+1))
for column in range(1,columns):
var csv_column : VBoxContainer = _zero_column.duplicate(8)
Columns.add_child(csv_column)
csv_column.get_node("0").set_text(str(column+1))
func load_file_in_table(rows : Array, columns : int) -> void:
load_csv_grid(rows, columns)
for row in range(0,rows.size()):
for column in range(0,columns):
Columns.get_child(column+1).get_child(row+1).set_text(rows[row][column])
func save_table() -> void:
var file = File.new()
file.open(file_path, File.WRITE)
for row in range(0, rows_count):
var current_row : PoolStringArray = []
for column in range(0, columns_count):
current_row.append(Columns.get_child(column+1).get_child(row+1).get_text())
file.store_csv_line(current_row, csv_delimiter)
file.close()
pass
emit_signal("update_file")
# This is the loading function used to initially build this node. No need to use this anymore
func _load():
# Load Rows
for i in range(2,101):
# Load Row Headers
var lbl : Label = _row_label.duplicate()
_column_head.add_child(lbl)
lbl.set_text(str(i))
lbl.set_owner(_column_head)
# Load First Column
var line : LineEdit = _row_line.duplicate()
_zero_column.add_child(line)
line.set_owner(_zero_column)
# Load Columns
for i in range(1,26):
var column : VBoxContainer = _zero_column.duplicate()
var label : Label = column.get_node("A")
var _char : String = char(i+65)
label.set_text(_char)
label.set_name(_char)
Columns.add_child(column)
label.set_owner(Columns)

View File

@ -28,7 +28,7 @@ var LastOpenedFiles = preload("res://addons/file-editor/scripts/LastOpenedFiles.
var Preview = preload("res://addons/file-editor/scenes/Preview.tscn")
var IniEditor = preload("res://addons/file-editor/scenes/IniEditor.tscn")
var VanillaEditor = preload("res://addons/file-editor/scenes/VanillaEditor.tscn")
var CsvEditor = preload("res://addons/file-editor/scenes/CsvEditor.tscn")
var CsvEditor = preload("res://addons/file-editor/scenes/CSVEditor.tscn")
onready var EditorContainer = $FileEditorContainer/SplitContainer
@ -63,7 +63,7 @@ var current_file_path = ""
var save_as = false
var current_editor : Control
var current_ini_editor : Control
var current_csv_editor : Control
var current_csv_editor : CSVEditor
var current_font : DynamicFont
func _ready():
@ -78,70 +78,69 @@ func _ready():
var opened_files : Array = LastOpenedFiles.load_opened_files()
for opened_file in opened_files:
open_file(opened_file[1], opened_file[2])
FileList.set_filters(EXTENSIONS)
func create_shortcuts():
var hotkey
hotkey = InputEventKey.new()
hotkey.scancode = KEY_S
hotkey.control = true
FileBTN.set_item_accelerator(4,hotkey.get_scancode_with_modifiers()) # save file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_N
hotkey.control = true
FileBTN.set_item_accelerator(0,hotkey.get_scancode_with_modifiers()) # new file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_O
hotkey.control = true
FileBTN.set_item_accelerator(1,hotkey.get_scancode_with_modifiers()) # open file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_D
hotkey.control = true
FileBTN.set_item_accelerator(6,hotkey.get_scancode_with_modifiers()) # delete file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_S
hotkey.control = true
hotkey.alt = true
FileBTN.set_item_accelerator(5,hotkey.get_scancode_with_modifiers()) #save file as
hotkey = InputEventKey.new()
hotkey.scancode = KEY_C
hotkey.control = true
hotkey.alt = true
FileBTN.set_item_accelerator(2,hotkey.get_scancode_with_modifiers()) # close file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_F
hotkey.control = true
FileBTN.set_item_accelerator(8,hotkey.get_scancode_with_modifiers()) # search
hotkey = InputEventKey.new()
hotkey.scancode = KEY_R
hotkey.control = true
FileBTN.set_item_accelerator(9,hotkey.get_scancode_with_modifiers()) # replace
# vanilla editor -----------------------
hotkey = InputEventKey.new()
hotkey.scancode = KEY_1
hotkey.control = true
EditorBTN.set_item_accelerator(0,hotkey.get_scancode_with_modifiers()) # vanilla editor
hotkey = InputEventKey.new()
hotkey.scancode = KEY_2
hotkey.control = true
EditorBTN.set_item_accelerator(1,hotkey.get_scancode_with_modifiers()) # csv editor
hotkey = InputEventKey.new()
hotkey.scancode = KEY_3
hotkey.control = true
EditorBTN.set_item_accelerator(2,hotkey.get_scancode_with_modifiers()) # inieditor editor
var hotkey
hotkey = InputEventKey.new()
hotkey.scancode = KEY_S
hotkey.control = true
FileBTN.set_item_accelerator(4,hotkey.get_scancode_with_modifiers()) # save file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_N
hotkey.control = true
FileBTN.set_item_accelerator(0,hotkey.get_scancode_with_modifiers()) # new file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_O
hotkey.control = true
FileBTN.set_item_accelerator(1,hotkey.get_scancode_with_modifiers()) # open file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_D
hotkey.control = true
FileBTN.set_item_accelerator(6,hotkey.get_scancode_with_modifiers()) # delete file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_S
hotkey.control = true
hotkey.alt = true
FileBTN.set_item_accelerator(5,hotkey.get_scancode_with_modifiers()) #save file as
hotkey = InputEventKey.new()
hotkey.scancode = KEY_C
hotkey.control = true
hotkey.alt = true
FileBTN.set_item_accelerator(2,hotkey.get_scancode_with_modifiers()) # close file
hotkey = InputEventKey.new()
hotkey.scancode = KEY_F
hotkey.control = true
FileBTN.set_item_accelerator(8,hotkey.get_scancode_with_modifiers()) # search
hotkey = InputEventKey.new()
hotkey.scancode = KEY_R
hotkey.control = true
FileBTN.set_item_accelerator(9,hotkey.get_scancode_with_modifiers()) # replace
# vanilla editor -----------------------
hotkey = InputEventKey.new()
hotkey.scancode = KEY_1
hotkey.control = true
EditorBTN.set_item_accelerator(0,hotkey.get_scancode_with_modifiers()) # vanilla editor
hotkey = InputEventKey.new()
hotkey.scancode = KEY_2
hotkey.control = true
EditorBTN.set_item_accelerator(1,hotkey.get_scancode_with_modifiers()) # csv editor
hotkey = InputEventKey.new()
hotkey.scancode = KEY_3
hotkey.control = true
EditorBTN.set_item_accelerator(2,hotkey.get_scancode_with_modifiers()) # inieditor editor
func load_icons():
$FileEditorContainer/TobBar/file_btn.icon = IconLoader.load_icon_from_name("file")
@ -261,28 +260,26 @@ func _on_previewbtn_pressed(id : int):
json_preview()
func _on_editorbtn_pressed(index : int):
match index:
0:
if not current_editor.visible:
current_editor.show()
if current_csv_editor:
current_csv_editor.hide()
if current_ini_editor:
current_ini_editor.hide()
1:
if current_csv_editor and not current_csv_editor.visible:
if current_ini_editor:
current_ini_editor.hide()
current_editor.hide()
current_csv_editor = open_in_csveditor(current_file_path)
current_csv_editor.show()
2:
if current_ini_editor and not current_ini_editor.visible:
current_editor.hide()
if current_csv_editor:
current_csv_editor.hide()
current_ini_editor = open_in_inieditor(current_file_path)
current_ini_editor.show()
match index:
0:
if not current_editor.visible:
current_editor.show()
if current_csv_editor:
current_csv_editor.hide()
if current_ini_editor:
current_ini_editor.hide()
1:
if current_csv_editor and not current_csv_editor.visible:
if current_ini_editor:
current_ini_editor.hide()
current_editor.hide()
current_csv_editor.show()
2:
if current_ini_editor and not current_ini_editor.visible:
current_editor.hide()
if current_csv_editor:
current_csv_editor.hide()
current_ini_editor.show()
func _on_settingsbtn_pressed(index : int):
match index:
@ -298,62 +295,62 @@ func _on_font_selected(font_path : String):
# current_font = dynamic_font
func _on_fileitem_pressed(index : int):
current_file_index = index
var selected_item_metadata = OpenFileList.get_item_metadata(current_file_index)
var extension = selected_item_metadata[0].current_path.get_file().get_extension()
current_file_path = selected_item_metadata[0].current_path
if current_editor.visible:
current_editor.hide()
current_editor = selected_item_metadata[0]
current_editor.show()
OpenFileName.set_text(current_editor.current_path)
current_csv_editor = selected_item_metadata[2]
current_ini_editor = selected_item_metadata[1]
if WrapBTN.get_selected_id() == 1:
current_editor.set_wrap_enabled(true)
else:
current_editor.set_wrap_enabled(false)
if MapBTN.get_selected_id() == 1:
current_editor.draw_minimap(true)
else:
current_editor.draw_minimap(false)
elif current_csv_editor and current_csv_editor.visible:
if extension == "csv":
current_csv_editor.hide()
current_csv_editor = selected_item_metadata[2]
current_csv_editor.show()
OpenFileName.set_text(current_csv_editor.current_file_path)
current_editor = selected_item_metadata[0]
current_ini_editor = selected_item_metadata[1]
else:
if current_csv_editor:
current_csv_editor.hide()
current_csv_editor = selected_item_metadata[2]
if current_ini_editor:
current_ini_editor.hide()
current_ini_editor = selected_item_metadata[1]
current_editor.hide()
current_editor = selected_item_metadata[0]
current_editor.show()
OpenFileName.set_text(current_editor.current_path)
elif current_ini_editor and current_ini_editor.visible:
if extension == "cfg" or extension == "ini":
current_ini_editor.hide()
current_ini_editor = selected_item_metadata[1]
current_ini_editor.show()
OpenFileName.set_text(current_ini_editor.current_file_path)
else:
if current_ini_editor:
current_ini_editor.hide()
current_ini_editor = selected_item_metadata[1]
if current_csv_editor:
current_csv_editor.hide()
current_csv_editor = selected_item_metadata[2]
current_editor.hide()
current_editor = selected_item_metadata[0]
current_editor.show()
OpenFileName.set_text(current_editor.current_path)
current_file_index = index
var selected_item_metadata = OpenFileList.get_item_metadata(current_file_index)
var extension = selected_item_metadata[0].current_path.get_file().get_extension()
current_file_path = selected_item_metadata[0].current_path
if current_editor.visible:
current_editor.hide()
current_editor = selected_item_metadata[0]
current_editor.show()
OpenFileName.set_text(current_editor.current_path)
current_csv_editor = selected_item_metadata[2]
current_ini_editor = selected_item_metadata[1]
if WrapBTN.get_selected_id() == 1:
current_editor.set_wrap_enabled(true)
else:
current_editor.set_wrap_enabled(false)
if MapBTN.get_selected_id() == 1:
current_editor.draw_minimap(true)
else:
current_editor.draw_minimap(false)
elif current_csv_editor and current_csv_editor.visible:
if extension == "csv":
current_csv_editor.hide()
current_csv_editor = selected_item_metadata[2]
current_csv_editor.show()
OpenFileName.set_text(current_csv_editor.current_file_path)
current_editor = selected_item_metadata[0]
current_ini_editor = selected_item_metadata[1]
else:
if current_csv_editor:
current_csv_editor.hide()
current_csv_editor = selected_item_metadata[2]
if current_ini_editor:
current_ini_editor.hide()
current_ini_editor = selected_item_metadata[1]
current_editor.hide()
current_editor = selected_item_metadata[0]
current_editor.show()
OpenFileName.set_text(current_editor.current_path)
elif current_ini_editor and current_ini_editor.visible:
if extension == "cfg" or extension == "ini":
current_ini_editor.hide()
current_ini_editor = selected_item_metadata[1]
current_ini_editor.show()
OpenFileName.set_text(current_ini_editor.current_file_path)
else:
if current_ini_editor:
current_ini_editor.hide()
current_ini_editor = selected_item_metadata[1]
if current_csv_editor:
current_csv_editor.hide()
current_csv_editor = selected_item_metadata[2]
current_editor.hide()
current_editor = selected_item_metadata[0]
current_editor.show()
OpenFileName.set_text(current_editor.current_path)
func open_file(path : String, font : String = "null"):
if current_file_path != path:
@ -445,7 +442,7 @@ func open_in_csveditor(path : String) -> Control:
csveditor.connect("update_file",self,"_on_update_file")
current_csv_editor = csveditor
csveditor.current_file_path = path
csveditor.open_csv_file(path,"|")
csveditor.open_csv_file(path)
return csveditor
else:
current_csv_editor = null
@ -499,29 +496,33 @@ func create_new_file(given_path : String):
open_file(given_path)
func save_file(current_path : String):
var current_file = File.new()
current_file.open(current_path,File.WRITE)
var current_content = ""
var lines = current_editor.get_node("TextEditor").get_line_count()
for line in range(0,lines):
current_content = current_editor.get_node("TextEditor").get_text()
current_file.store_line(current_editor.get_node("TextEditor").get_line(line))
current_file.close()
current_file_path = current_path
var last_modified = OS.get_datetime_from_unix_time(current_file.get_modified_time(current_file_path))
current_editor.update_lastmodified(last_modified,"save")
OpenFileList.set_item_metadata(current_file_index,[current_editor,current_ini_editor,current_csv_editor])
print(OpenFileList.get_item_metadata(current_file_index))
if OpenFileList.get_item_text(current_file_index).ends_with("(*)"):
OpenFileList.set_item_text(current_file_index,OpenFileList.get_item_text(current_file_index).rstrip("(*)"))
print("Saving file: ",current_path)
var current_file = File.new()
current_file.open(current_path,File.WRITE)
var current_content = ""
var lines = current_editor.get_node("TextEditor").get_line_count()
for line in range(0,lines):
if current_editor.get_node("TextEditor").get_line(line) == "":
continue
current_content = current_editor.get_node("TextEditor").get_text()
current_file.store_line(current_editor.get_node("TextEditor").get_line(line))
current_file.close()
current_file_path = current_path
var last_modified = OS.get_datetime_from_unix_time(current_file.get_modified_time(current_file_path))
current_editor.update_lastmodified(last_modified,"save")
if current_csv_editor != null and not current_csv_editor.is_visible():
current_csv_editor.open_csv_file(current_path)
OpenFileList.set_item_metadata(current_file_index,[current_editor,current_ini_editor,current_csv_editor])
if OpenFileList.get_item_text(current_file_index).ends_with("(*)"):
OpenFileList.set_item_text(current_file_index,OpenFileList.get_item_text(current_file_index).rstrip("(*)"))
# OpenFileList.set_item_metadata(current_file_index,[current_editor,open_in_inieditor(current_file_path),open_in_csveditor(current_file_path)])
update_list()
update_list()
func clean_editor() -> void :
for inieditor in get_tree().get_nodes_in_group("ini_editor"):

View File

@ -10,9 +10,9 @@ onready var TextEditor = $TextEditor
onready var LastModified = $FileInfo/lastmodified
onready var FileList = get_parent().get_parent().get_parent().get_node("FileList")
var FileList
onready var ClosingFile = get_parent().get_parent().get_parent().get_node("ConfirmationDialog")
var ClosingFile
onready var LastModifiedIcon = $FileInfo/lastmodified_icon
@ -31,6 +31,8 @@ var search_flag = 0
signal text_changed()
func _ready():
FileList = get_parent().get_parent().get_parent().get_node("FileList")
ClosingFile = get_parent().get_parent().get_parent().get_node("ConfirmationDialog")
ClosingFile.connect("confirmed",self,"queue_free")
ReadOnly.connect("toggled",self,"_on_Readonly_toggled")

View File

@ -10,9 +10,9 @@ onready var TextEditor = $TextEditor
onready var LastModified = $FileInfo/lastmodified
onready var FileList = get_parent().get_parent().get_parent().get_parent().get_node("FileList")
var FileList
onready var ClosingFile = get_parent().get_parent().get_parent().get_parent().get_node("ConfirmationDialog")
var ClosingFile
onready var LastModifiedIcon = $FileInfo/lastmodified_icon
@ -30,6 +30,8 @@ var search_flag = 0
signal text_changed()
func _ready():
FileList = get_parent().get_parent().get_parent().get_parent().get_node("FileList")
ClosingFile = get_parent().get_parent().get_parent().get_parent().get_node("ConfirmationDialog")
ClosingFile.connect("confirmed",self,"queue_free")
ReadOnly.connect("toggled",self,"_on_Readonly_toggled")