Skip to content

Commit a73bfc4

Browse files
committed
Remember Preview3D custom model across restarts
1 parent 5dbd41d commit a73bfc4

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

material_maker/panels/preview_3d/preview_3d.gd

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,9 @@ func _ready() -> void:
6262
await get_tree().process_frame
6363
sun.shadow_enabled = mm_globals.get_config("ui_3d_preview_sun_shadow")
6464

65+
if mm_globals.config.has_section_key("path", "mesh"):
66+
do_load_custom_mesh(mm_globals.config.get_value("path", "mesh"))
67+
6568
func update_menu():
6669
mm_globals.menu_manager.create_menus(MENU, self, mm_globals.menu_manager.MenuBarGodot.new(ui))
6770

@@ -100,19 +103,19 @@ func _on_Model_item_selected(id) -> void:
100103
for f in MMMeshLoader.get_file_dialog_filters():
101104
dialog.add_filter(f)
102105
if mm_globals.config.has_section_key("path", "mesh"):
103-
dialog.current_dir = mm_globals.config.get_value("path", "mesh")
106+
dialog.current_dir = mm_globals.config.get_value("path", "mesh").get_base_dir()
104107
var files = await dialog.select_files()
105108
if files.size() == 1:
106109
do_load_custom_mesh(files[0])
107110
else:
108111
select_object(id)
109112

110113
func do_load_custom_mesh(file_path) -> void:
111-
mm_globals.config.set_value("path", "mesh", file_path.get_base_dir())
112114
var id = objects.get_child_count()-1
113115
var mesh : Mesh = null
114116
mesh = MMMeshLoader.load_mesh(file_path)
115117
if mesh != null:
118+
mm_globals.config.set_value("path", "mesh", file_path)
116119
var object : MeshInstance3D = objects.get_child(id)
117120
object.mesh = mesh
118121
mm_globals.main_window.set_current_mesh(mesh)

0 commit comments

Comments
 (0)