MCPcopy
hub / github.com/MrNothing/AI-Blocks / openProjectClicked

Method openProjectClicked

Sources/src/Model/UI/Menu.js:11–40  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

9 }
10
11 openProjectClicked(){
12 let selected_dir = require('electron').remote.dialog.showOpenDialog({title:"Select an AI-Bloc Project", properties: ['openFile', 'openDirectory']});
13 if(selected_dir==null)
14 {
15 window.service.log("Failed to load project: No directory selected", "", 2);
16 }
17 else
18 {
19 window.service.loading = {properties:null, scene:null};
20
21 let loader = new JsonManager(null);
22 loader.load(selected_dir[0]+"/Properties.json").then(json => {
23 window.service.loading.properties = json;
24 window.service.loading.properties.projectpath = selected_dir[0];
25 window.service.checkLoadingComplete();
26 }).catch(err => {
27 alert("Failed to load project: "+err);
28 window.service.log("Failed to load project!", err+" "+err.stack, 2);
29 });
30
31 let loader2 = new JsonManager(null);
32 loader2.load(selected_dir[0]+"/Scene.json").then(json => {
33 window.service.loading.scene = json;
34 window.service.checkLoadingComplete();
35 }).catch(err => {
36 alert("Failed to load project: "+err);
37 window.service.log("Failed to load project!", err+" "+err.stack, 2);
38 });
39 }
40 }
41
42 refresh(){
43 this.forceUpdate();

Callers

nothing calls this directly

Calls 3

loadMethod · 0.95
logMethod · 0.80
checkLoadingCompleteMethod · 0.80

Tested by

no test coverage detected