plenty of changes to prof tool

This commit is contained in:
BimDav
2024-02-14 11:19:35 +01:00
parent dfbdf5b9fe
commit 00b111e389
11 changed files with 77 additions and 32 deletions
+5
View File
@@ -0,0 +1,5 @@
extends ScrollContainer
func _ready() -> void:
get_v_scroll_bar().custom_minimum_size = Vector2(50, 50)
@@ -1,8 +1,9 @@
[gd_scene load_steps=4 format=3 uid="uid://dk8seaie6lxn1"]
[gd_scene load_steps=5 format=3 uid="uid://dk8seaie6lxn1"]
[ext_resource type="Script" path="res://sources/language_tool/gp_image_and_sound_descriptions.gd" id="1_8rkii"]
[ext_resource type="PackedScene" uid="uid://dbl3r8426473v" path="res://sources/language_tool/plus_button.tscn" id="1_tjhx5"]
[ext_resource type="Texture2D" uid="uid://cw15lg6j37pvj" path="res://assets/menus/back_button.png" id="3_04mkx"]
[ext_resource type="Script" path="res://sources/language_tool/ScrollContainer.gd" id="4_groag"]
[node name="GpImageAndSoundDescriptions" type="Control"]
layout_mode = 3
@@ -85,6 +86,7 @@ size_flags_vertical = 3
[node name="ScrollContainer" type="ScrollContainer" parent="VBoxContainer/PanelContainer2"]
layout_mode = 2
script = ExtResource("4_groag")
[node name="DescriptionsContainer" type="VBoxContainer" parent="VBoxContainer/PanelContainer2/ScrollContainer"]
unique_name_in_owner = true
+3 -1
View File
@@ -1,10 +1,11 @@
[gd_scene load_steps=6 format=3 uid="uid://cnyl3pxt7dn8y"]
[gd_scene load_steps=7 format=3 uid="uid://cnyl3pxt7dn8y"]
[ext_resource type="Script" path="res://sources/language_tool/gp_list.gd" id="1_vqemo"]
[ext_resource type="PackedScene" uid="uid://l3ktlla1kreu" path="res://sources/language_tool/gp_list_element.tscn" id="2_belwy"]
[ext_resource type="PackedScene" uid="uid://dbl3r8426473v" path="res://sources/language_tool/plus_button.tscn" id="3_837c6"]
[ext_resource type="Texture2D" uid="uid://5n02dxd66fw4" path="res://assets/menus/save_button.png" id="4_a4ww8"]
[ext_resource type="Texture2D" uid="uid://cw15lg6j37pvj" path="res://assets/menus/back_button.png" id="4_sg3ch"]
[ext_resource type="Script" path="res://sources/language_tool/ScrollContainer.gd" id="6_t1l1g"]
[node name="GpList" type="Control"]
layout_mode = 3
@@ -76,6 +77,7 @@ color = Color(0, 0, 0, 1)
[node name="ScrollContainer" type="ScrollContainer" parent="VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
script = ExtResource("6_t1l1g")
[node name="ElementsContainer" type="VBoxContainer" parent="VBoxContainer/ScrollContainer"]
unique_name_in_owner = true
@@ -1,8 +1,9 @@
[gd_scene load_steps=4 format=3 uid="uid://c40wqlao0hl03"]
[gd_scene load_steps=5 format=3 uid="uid://c1fn2kk0005ce"]
[ext_resource type="Script" path="res://sources/language_tool/gp_video_descriptions.gd" id="1_nggwi"]
[ext_resource type="PackedScene" uid="uid://dbl3r8426473v" path="res://sources/language_tool/plus_button.tscn" id="2_qd3s2"]
[ext_resource type="Texture2D" uid="uid://cw15lg6j37pvj" path="res://assets/menus/back_button.png" id="3_kfx0p"]
[ext_resource type="Script" path="res://sources/language_tool/ScrollContainer.gd" id="4_o8dkr"]
[node name="GpVideoDescriptions" type="Control"]
layout_mode = 3
@@ -71,6 +72,7 @@ size_flags_vertical = 3
[node name="ScrollContainer" type="ScrollContainer" parent="VBoxContainer/PanelContainer2"]
layout_mode = 2
script = ExtResource("4_o8dkr")
[node name="DescriptionsContainer" type="VBoxContainer" parent="VBoxContainer/PanelContainer2/ScrollContainer"]
unique_name_in_owner = true
+3 -1
View File
@@ -1,10 +1,11 @@
[gd_scene load_steps=7 format=3 uid="uid://b75ondy7h3ssl"]
[gd_scene load_steps=8 format=3 uid="uid://b75ondy7h3ssl"]
[ext_resource type="Script" path="res://sources/language_tool/lessons_list.gd" id="1_0e3ki"]
[ext_resource type="PackedScene" uid="uid://di1ul6ixytmcj" path="res://sources/language_tool/lesson_container.tscn" id="2_lhjp5"]
[ext_resource type="PackedScene" uid="uid://dbl3r8426473v" path="res://sources/language_tool/plus_button.tscn" id="3_jascd"]
[ext_resource type="Texture2D" uid="uid://cw15lg6j37pvj" path="res://assets/menus/back_button.png" id="4_g2qry"]
[ext_resource type="Texture2D" uid="uid://5n02dxd66fw4" path="res://assets/menus/save_button.png" id="4_jdhgf"]
[ext_resource type="Script" path="res://sources/language_tool/ScrollContainer.gd" id="6_ej5w8"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_73um4"]
bg_color = Color(0.254902, 0.329412, 0.572549, 1)
@@ -75,6 +76,7 @@ theme_override_constants/margin_left = 500
[node name="ScrollContainer" type="ScrollContainer" parent="VBoxContainer/MarginContainer/MarginContainer"]
custom_minimum_size = Vector2(2.08165e-12, 300)
layout_mode = 2
script = ExtResource("6_ej5w8")
[node name="UnusedGPContainer" type="GridContainer" parent="VBoxContainer/MarginContainer/MarginContainer/ScrollContainer"]
unique_name_in_owner = true
+26 -5
View File
@@ -8,7 +8,7 @@ var save_file: ProfToolSave
@onready var new_language_container: = %NewLanguageContainer
@onready var line_edit: = %LineEdit
@onready var file_dialog: = $FileDialog
@onready var add_word_list_button: = $AddWordListButton
@onready var add_word_list_button: = $VBoxContainer/AddWordListButton
func _ready() -> void:
@@ -18,7 +18,12 @@ func _ready() -> void:
save_file.resource_path = save_file_path
ResourceSaver.save(save_file, save_file_path)
save_file = load(save_file_path)
_display_available_languages()
func _display_available_languages() -> void:
for item in range(1, language_select_button.item_count):
language_select_button.remove_item(item)
var available_languages: = _get_available_languages()
var ind: = 1
for available_language in available_languages:
@@ -82,7 +87,7 @@ func _on_export_button_pressed() -> void:
print(e.Sentence)
print("\n\n")
var folder_zipper: = FolderZipper.new()
folder_zipper.compress("user://language_resources/", "user://language_export.zip")
folder_zipper.compress(base_path.path_join(Database.language), "user://language_export.zip")
func _get_available_languages() -> Array[String]:
@@ -95,8 +100,6 @@ func _get_available_languages() -> Array[String]:
if dir.current_is_dir():
if FileAccess.file_exists(base_path.path_join(file_name).path_join("language.db")):
available_languages.append(file_name)
else:
continue
file_name = dir.get_next()
return available_languages
@@ -140,3 +143,21 @@ func _on_add_word_list_button_pressed() -> void:
_update_add_word_list_button()
func _on_import_language_button_pressed() -> void:
file_dialog.filters = []
file_dialog.add_filter("*.zip", "zip")
for connection in file_dialog.file_selected.get_connections():
connection["signal"].disconnect(connection["callable"])
file_dialog.file_selected.connect(_language_data_selected)
file_dialog.show()
func _language_data_selected(file_path: String) -> void:
if FileAccess.file_exists(file_path):
var folder_unzipper: = FolderUnzipper.new()
folder_unzipper.extract(file_path, base_path, false)
+24 -17
View File
@@ -96,19 +96,34 @@ theme_override_font_sizes/font_size = 100
text = "Export
"
[node name="LanguageSelectButton" type="OptionButton" parent="."]
unique_name_in_owner = true
[node name="VBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 0
offset_left = 147.0
offset_top = 113.0
offset_right = 560.0
offset_bottom = 258.0
offset_left = 85.0
offset_top = 117.0
offset_right = 626.0
offset_bottom = 515.0
theme_override_constants/separation = 50
[node name="ImportLanguageButton" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 60
text = "Import language data"
[node name="LanguageSelectButton" type="OptionButton" parent="VBoxContainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(2.08165e-12, 150)
layout_mode = 2
theme_override_font_sizes/font_size = 60
alignment = 1
item_count = 1
popup/item_0/text = "New"
popup/item_0/id = 0
[node name="AddWordListButton" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 60
text = "Change word list"
[node name="NewLanguageContainer" type="PanelContainer" parent="."]
unique_name_in_owner = true
visible = false
@@ -156,15 +171,6 @@ ok_button_text = "Ouvrir"
file_mode = 0
access = 2
[node name="AddWordListButton" type="Button" parent="."]
layout_mode = 0
offset_left = 150.0
offset_top = 301.0
offset_right = 563.0
offset_bottom = 375.0
theme_override_font_sizes/font_size = 60
text = "Change word list"
[connection signal="pressed" from="CenterContainer/VBoxContainer/GPListButton" to="." method="_on_gp_list_button_pressed"]
[connection signal="pressed" from="CenterContainer/VBoxContainer/WordListButton" to="." method="_on_word_list_button_pressed"]
[connection signal="pressed" from="CenterContainer/VBoxContainer/SyllableListButton" to="." method="_on_syllable_list_button_pressed"]
@@ -174,6 +180,7 @@ text = "Change word list"
[connection signal="pressed" from="CenterContainer/VBoxContainer/DataLoaderButton" to="." method="_on_data_loader_button_pressed"]
[connection signal="pressed" from="CenterContainer/VBoxContainer/DataLoaderButton2" to="." method="_on_data_loader_button_2_pressed"]
[connection signal="pressed" from="ExportButton" to="." method="_on_export_button_pressed"]
[connection signal="item_selected" from="LanguageSelectButton" to="." method="_on_language_select_button_item_selected"]
[connection signal="pressed" from="VBoxContainer/ImportLanguageButton" to="." method="_on_import_language_button_pressed"]
[connection signal="item_selected" from="VBoxContainer/LanguageSelectButton" to="." method="_on_language_select_button_item_selected"]
[connection signal="pressed" from="VBoxContainer/AddWordListButton" to="." method="_on_add_word_list_button_pressed"]
[connection signal="text_submitted" from="NewLanguageContainer/CenterContainer/LineEdit" to="." method="_on_line_edit_text_submitted"]
[connection signal="pressed" from="AddWordListButton" to="." method="_on_add_word_list_button_pressed"]
+3 -1
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=7 format=3 uid="uid://dfw7m0a7148fu"]
[gd_scene load_steps=8 format=3 uid="uid://dfw7m0a7148fu"]
[ext_resource type="Script" path="res://sources/language_tool/word_list.gd" id="1_m0usq"]
[ext_resource type="PackedScene" uid="uid://dx33ijlgd8m3w" path="res://sources/language_tool/word_list_element.tscn" id="2_roh06"]
@@ -6,6 +6,7 @@
[ext_resource type="Texture2D" uid="uid://5n02dxd66fw4" path="res://assets/menus/save_button.png" id="4_ar78n"]
[ext_resource type="PackedScene" uid="uid://l3ktlla1kreu" path="res://sources/language_tool/gp_list_element.tscn" id="5_1f555"]
[ext_resource type="Texture2D" uid="uid://cw15lg6j37pvj" path="res://assets/menus/back_button.png" id="5_h04hf"]
[ext_resource type="Script" path="res://sources/language_tool/ScrollContainer.gd" id="6_0r6vt"]
[node name="WordList" type="Control"]
layout_mode = 3
@@ -83,6 +84,7 @@ color = Color(0, 0, 0, 1)
[node name="ScrollContainer" type="ScrollContainer" parent="VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
script = ExtResource("6_0r6vt")
[node name="ElementsContainer" type="VBoxContainer" parent="VBoxContainer/ScrollContainer"]
unique_name_in_owner = true
+4 -2
View File
@@ -17,7 +17,7 @@ const video_extension: = ".ogv"
const image_extension: = ".png"
const sound_extension: = ".mp3"
var language: String = "french":
var language: String = "fr":
set(value):
language = value
db_path = base_path + language + "/language.db"
@@ -184,6 +184,8 @@ func get_min_lesson_for_sentence_id(sentence_id: int) -> int:
INNER JOIN GPsInLessons ON Lessons.ID = GPsInLessons.LessonID
INNER JOIN WordsInSentences ON WordsInSentences.SentenceID = ?
INNER JOIN GPsInWords ON GPsInWords.GPID = GPsInLessons.GPID AND GPsInWords.WordID = WordsInSentences.WordID", [sentence_id])
if not db.query_result[0].i:
return -1
return db.query_result[0].i
@@ -294,7 +296,7 @@ func _import_look_and_learn_data() -> void:
var file = FileAccess.open("res://data3/gp_list.json", FileAccess.READ)
var dict = JSON.parse_string(file.get_line())
for e in dict.values():
var file_path: = base_path.path_join(language).path_join(look_and_learn_images).path_join(e.IMAGE) + image_extension
var file_path: = "res://data3/".path_join(look_and_learn_images).path_join(e.IMAGE) + image_extension
DirAccess.copy_absolute(file_path, get_gp_look_and_learn_image_path({
Grapheme = e.GRAPHEME,
Phoneme = e.PHONEME,