Skip to content

Commit 5984f15

Browse files
authored
Merge pull request #470 from danoli3/projectGen_addfolder
Open Folder button after successful Update
2 parents 67f29fb + e4710a6 commit 5984f15

3 files changed

Lines changed: 47 additions & 0 deletions

File tree

frontend/app.js

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -558,6 +558,8 @@ function setup() {
558558

559559
$("#IDEButton").on("click", () => launchInIDE());
560560

561+
$("#FolderButton").on("click", () => launchFolder());
562+
561563

562564
$("#verboseOption").checkbox();
563565
$("#verboseOption").on("change", () => {
@@ -959,6 +961,7 @@ function switchGenerateMode(mode) {
959961
if (mode == 'updateMode') {
960962
$("#generateButton").hide();
961963
$("#updateButton").show();
964+
$("#folderButton").show();
962965
$("#missingAddonMessage").hide();
963966
$("#localAddonMessage").hide();
964967
$("#nameRandomiser").hide();
@@ -980,6 +983,7 @@ function switchGenerateMode(mode) {
980983

981984
$("#generateButton").show();
982985
$("#updateButton").hide();
986+
$("#folderButton").show();
983987
$("#missingAddonMessage").hide();
984988
$("#localAddonMessage").hide();
985989
$("#nameRandomiser").show();
@@ -1048,6 +1052,15 @@ function getPlatformList() {
10481052
return platformValueArray;
10491053
}
10501054

1055+
function openFolder() {
1056+
const platformsPicked = $("#platformsDropdown .active");
1057+
const platformValueArray = [];
1058+
for (let i = 0; i < platformsPicked.length; i++){
1059+
platformValueArray.push($(platformsPicked[i]).attr("data-value"));
1060+
}
1061+
return platformValueArray;
1062+
}
1063+
10511064
//----------------------------------------
10521065
function displayModal(message) {
10531066
$("#uiModal .content")
@@ -1060,8 +1073,10 @@ function displayModal(message) {
10601073

10611074
if (message.indexOf("Success!") > -1){
10621075
$("#IDEButton").show();
1076+
$("#FolderButton").show();
10631077
} else {
10641078
$("#IDEButton").hide();
1079+
$("#FolderButton").show();
10651080
}
10661081

10671082
$("#uiModal").modal('show');
@@ -1179,3 +1194,14 @@ function launchInIDE(){
11791194

11801195
ipcRenderer.send('launchProjectinIDE', project );
11811196
}
1197+
1198+
function launchFolder(){
1199+
const platform = getPlatformList()[0];
1200+
1201+
const project = {
1202+
'projectName': $("#projectName").val(),
1203+
'projectPath': $("#projectPath").val()
1204+
};
1205+
1206+
ipcRenderer.send('launchFolder', project );
1207+
}

frontend/index.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -349,6 +349,7 @@
349349
</div>
350350
<div class="actions">
351351
<div class="ui cancel button" id="IDEButton" style="display: none;">Open in IDE</div>
352+
<div class="ui cancel button" id="FolderButton" style="display: none;">Open Folder</div>
352353
<div class="ui cancel button">Close</div>
353354
</div>
354355
</div>

frontend/index.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1150,6 +1150,26 @@ ipcMain.on('launchProjectinIDE', (event, arg) => {
11501150
}
11511151
});
11521152

1153+
ipcMain.on('launchFolder', async (event, arg) => {
1154+
const {
1155+
projectPath,
1156+
projectName } = arg;
1157+
const fullPath = path.join(projectPath, projectName);
1158+
1159+
try {
1160+
if(fs.existsSync(fullPath) && fs.statSync(fullPath).isDirectory()) {
1161+
await shell.openPath(fullPath);
1162+
event.sender.send('launchFolderCompleted', true);
1163+
} else {
1164+
// project doesn't exist
1165+
event.sender.send('launchFolderCompleted', false);
1166+
}
1167+
} catch (error) {
1168+
console.error('Error opening folder:', error);
1169+
event.sender.send('launchFolderCompleted', false);
1170+
}
1171+
});
1172+
11531173
ipcMain.on('quit', (event, arg) => {
11541174
app.quit();
11551175
});

0 commit comments

Comments
 (0)