mirror of
https://github.com/Relintai/MemR.git
synced 2024-12-25 14:07:19 +01:00
Implemented actual sorting, and added replay command history file generation.
This commit is contained in:
parent
12745934ff
commit
483842187f
@ -3,6 +3,8 @@ extends VBoxContainer
|
|||||||
var sort_folder : String
|
var sort_folder : String
|
||||||
var target_folder : String
|
var target_folder : String
|
||||||
|
|
||||||
|
var shell_script_name : String = "apply.sh"
|
||||||
|
|
||||||
var _texture_rect : TextureRect
|
var _texture_rect : TextureRect
|
||||||
var _error_label : Label
|
var _error_label : Label
|
||||||
var _categories_ob : OptionButton
|
var _categories_ob : OptionButton
|
||||||
@ -50,6 +52,9 @@ func refresh_categories() -> void:
|
|||||||
func refresh_sub_categories() -> void:
|
func refresh_sub_categories() -> void:
|
||||||
_sub_categories_ob.clear()
|
_sub_categories_ob.clear()
|
||||||
|
|
||||||
|
if _categories_ob.selected < 0:
|
||||||
|
return
|
||||||
|
|
||||||
var tf : Directory = Directory.new()
|
var tf : Directory = Directory.new()
|
||||||
if tf.open(target_folder.append_path(_categories_ob.get_item_text(_categories_ob.selected))) != OK:
|
if tf.open(target_folder.append_path(_categories_ob.get_item_text(_categories_ob.selected))) != OK:
|
||||||
return
|
return
|
||||||
@ -71,6 +76,8 @@ func refresh_sub_categories() -> void:
|
|||||||
|
|
||||||
folders.sort()
|
folders.sort()
|
||||||
|
|
||||||
|
_sub_categories_ob.add_item("<NONE>")
|
||||||
|
|
||||||
for i in range(folders.size()):
|
for i in range(folders.size()):
|
||||||
_sub_categories_ob.add_item(folders[i])
|
_sub_categories_ob.add_item(folders[i])
|
||||||
|
|
||||||
@ -110,8 +117,6 @@ func next_image() -> void:
|
|||||||
_texture_rect.show()
|
_texture_rect.show()
|
||||||
_texture_rect.texture.create_from_image(img, 0)
|
_texture_rect.texture.create_from_image(img, 0)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func evaluate_folders() -> void:
|
func evaluate_folders() -> void:
|
||||||
_folders.clear()
|
_folders.clear()
|
||||||
|
|
||||||
@ -175,7 +180,56 @@ func next_folder() -> void:
|
|||||||
_current_file_index = -1
|
_current_file_index = -1
|
||||||
next_image()
|
next_image()
|
||||||
|
|
||||||
|
func append_command(command : String) -> void:
|
||||||
|
var shscript_file : String = sort_folder.plus_file(shell_script_name)
|
||||||
|
|
||||||
|
var file : File = File.new()
|
||||||
|
|
||||||
|
if !file.file_exists(shscript_file):
|
||||||
|
file.open(shscript_file, File.WRITE)
|
||||||
|
else:
|
||||||
|
file.open(shscript_file, File.READ_WRITE)
|
||||||
|
file.seek_end()
|
||||||
|
|
||||||
|
file.store_string(command + "\n")
|
||||||
|
file.close()
|
||||||
|
|
||||||
func _on_Apply_pressed() -> void:
|
func _on_Apply_pressed() -> void:
|
||||||
|
if _categories_ob.selected == -1:
|
||||||
|
print("_categories_ob.selected == -1!")
|
||||||
|
return
|
||||||
|
|
||||||
|
if _sub_categories_ob.selected == -1:
|
||||||
|
print("_sub_categories_ob.selected == -1!")
|
||||||
|
return
|
||||||
|
|
||||||
|
if _current_file_index >= _current_folder_files.size():
|
||||||
|
next_image()
|
||||||
|
return
|
||||||
|
|
||||||
|
var cimagefn : String = _current_folder_files[_current_file_index]
|
||||||
|
var targetf : String = target_folder.append_path(_categories_ob.get_item_text(_categories_ob.selected))
|
||||||
|
|
||||||
|
if _sub_categories_ob.selected > 0:
|
||||||
|
targetf = targetf.append_path(_sub_categories_ob.get_item_text(_sub_categories_ob.selected))
|
||||||
|
|
||||||
|
targetf = targetf.plus_file(cimagefn.get_file())
|
||||||
|
|
||||||
|
var dir : Directory = Directory.new()
|
||||||
|
var err : int = dir.copy(cimagefn, targetf)
|
||||||
|
|
||||||
|
if err != OK:
|
||||||
|
print("_on_Apply_pressed dir.copy(cimagefn, targetf) err != OK! " + str(err))
|
||||||
|
return
|
||||||
|
|
||||||
|
append_command("mv " + cimagefn + " " + targetf)
|
||||||
|
|
||||||
|
err = dir.remove(cimagefn)
|
||||||
|
|
||||||
|
if err != OK:
|
||||||
|
print("_on_Apply_pressed dir.remove(cimagefn) err != OK! " + str(err))
|
||||||
|
return
|
||||||
|
|
||||||
next_image()
|
next_image()
|
||||||
|
|
||||||
func _on_Skip_pressed() -> void:
|
func _on_Skip_pressed() -> void:
|
||||||
@ -204,7 +258,10 @@ func _on_NewCategoryPopup_confirmed() -> void:
|
|||||||
var d : Directory = Directory.new()
|
var d : Directory = Directory.new()
|
||||||
d.make_dir_recursive(folder)
|
d.make_dir_recursive(folder)
|
||||||
|
|
||||||
|
append_command("mkdir " + folder)
|
||||||
|
|
||||||
refresh_categories()
|
refresh_categories()
|
||||||
|
refresh_sub_categories()
|
||||||
|
|
||||||
func _on_NewSubCategoryPopup_confirmed() -> void:
|
func _on_NewSubCategoryPopup_confirmed() -> void:
|
||||||
if _categories_ob.selected == -1:
|
if _categories_ob.selected == -1:
|
||||||
@ -219,6 +276,8 @@ func _on_NewSubCategoryPopup_confirmed() -> void:
|
|||||||
var d : Directory = Directory.new()
|
var d : Directory = Directory.new()
|
||||||
d.make_dir_recursive(folder)
|
d.make_dir_recursive(folder)
|
||||||
|
|
||||||
|
append_command("mkdir " + folder)
|
||||||
|
|
||||||
refresh_sub_categories()
|
refresh_sub_categories()
|
||||||
|
|
||||||
|
|
||||||
@ -246,4 +305,3 @@ func _notification(what: int) -> void:
|
|||||||
evaluate_folders()
|
evaluate_folders()
|
||||||
_current_folder_index = -1
|
_current_folder_index = -1
|
||||||
next_folder()
|
next_folder()
|
||||||
#next_image()
|
|
||||||
|
Loading…
Reference in New Issue
Block a user