1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-10 20:42:21 +02:00

Added Remove menu right-click option on failed project load

This commit is contained in:
Brian Fiete 2020-11-16 17:44:04 -08:00
parent 4c5881e5d3
commit ec92168669

View file

@ -2054,6 +2054,7 @@ namespace IDE.ui
} }
bool isProject = false; bool isProject = false;
bool isFailedLoad = false;
if ((projectItem != null) && (!handled)) if ((projectItem != null) && (!handled))
{ {
if (projectItem is ProjectFolder) if (projectItem is ProjectFolder)
@ -2072,7 +2073,9 @@ namespace IDE.ui
if (projectItem != null) if (projectItem != null)
gApp.RetryProjectLoad(projectItem.mProject); gApp.RetryProjectLoad(projectItem.mProject);
}); });
handled = true; menu.AddItem();
//handled = true;
isFailedLoad = true;
} }
} }
} }
@ -2084,26 +2087,29 @@ namespace IDE.ui
if (isProject) if (isProject)
{ {
item = menu.AddItem("Set as Startup Project"); if (!isFailedLoad)
item.mOnMenuItemSelected.Add(new (item) => {
{ item = menu.AddItem("Set as Startup Project");
var projectItem = GetSelectedProjectItem(); item.mOnMenuItemSelected.Add(new (item) =>
if (projectItem != null) {
SetAsStartupProject(projectItem.mProject); var projectItem = GetSelectedProjectItem();
}); if (projectItem != null)
SetAsStartupProject(projectItem.mProject);
});
item = menu.AddItem("Lock Project"); item = menu.AddItem("Lock Project");
if (projectItem.mProject.mLocked) if (projectItem.mProject.mLocked)
item.mIconImage = DarkTheme.sDarkTheme.GetImage(.Check); item.mIconImage = DarkTheme.sDarkTheme.GetImage(.Check);
item.mOnMenuItemSelected.Add(new (item) => item.mOnMenuItemSelected.Add(new (item) =>
{ {
var projectItem = GetSelectedProjectItem(); var projectItem = GetSelectedProjectItem();
if (projectItem != null) if (projectItem != null)
{ {
projectItem.mProject.mLocked = !projectItem.mProject.mLocked; projectItem.mProject.mLocked = !projectItem.mProject.mLocked;
gApp.mWorkspace.SetChanged(); gApp.mWorkspace.SetChanged();
} }
}); });
}
item = menu.AddItem("Remove..."); item = menu.AddItem("Remove...");
item.mOnMenuItemSelected.Add(new (item) => item.mOnMenuItemSelected.Add(new (item) =>
@ -2119,31 +2125,36 @@ namespace IDE.ui
RenameItem(projectItem); RenameItem(projectItem);
}); });
item = menu.AddItem("Refresh"); if (!isFailedLoad)
item.mOnMenuItemSelected.Add(new (item) => {
{ item = menu.AddItem("Refresh");
var projectItem = GetSelectedProjectItem(); item.mOnMenuItemSelected.Add(new (item) =>
if (projectItem != null) {
{ var projectItem = GetSelectedProjectItem();
let project = projectItem.mProject; if (projectItem != null)
if (project.mNeedsCreate)
{ {
project.FinishCreate(false); let project = projectItem.mProject;
RebuildUI(); if (project.mNeedsCreate)
{
project.FinishCreate(false);
RebuildUI();
}
else
{
if (project.mRootFolder.mIsWatching)
project.mRootFolder.StopWatching();
project.mRootFolder.StartWatching();
RehupFolder(project.mRootFolder, .FullTraversal);
}
} }
else });
{ }
if (project.mRootFolder.mIsWatching)
project.mRootFolder.StopWatching();
project.mRootFolder.StartWatching();
RehupFolder(project.mRootFolder, .FullTraversal);
}
}
});
AddOpenContainingFolder(); if (!isFailedLoad)
{
menu.AddItem(); AddOpenContainingFolder();
menu.AddItem();
}
} }
if ((projectItem != null) && (!isProject)) if ((projectItem != null) && (!isProject))
@ -2289,44 +2300,47 @@ namespace IDE.ui
} }
//menu.AddItem(); //menu.AddItem();
item = menu.AddItem("New Folder"); if (!isFailedLoad)
item.mOnMenuItemSelected.Add(new (item) =>
{
var projectFolder = GetSelectedProjectFolder();
if (projectFolder != null)
{
if (CheckProjectModify(projectFolder.mProject))
NewFolder(projectFolder);
}
});
item = menu.AddItem("New Class...");
item.mOnMenuItemSelected.Add(new (item) =>
{
var projectFolder = GetSelectedProjectFolder();
if (projectFolder != null)
{
if (CheckProjectModify(projectFolder.mProject))
NewClass(projectFolder);
}
});
item = menu.AddItem("Import File...");
item.mOnMenuItemSelected.Add(new (item) => { mImportFileDeferred = true; /* ImportFile();*/ });
item = menu.AddItem("Import Folder...");
item.mOnMenuItemSelected.Add(new (item) => { mImportFolderDeferred = true; /* ImportFile();*/ });
if (isProject)
{ {
menu.AddItem(); item = menu.AddItem("New Folder");
item = menu.AddItem("Properties...");
item.mOnMenuItemSelected.Add(new (item) => item.mOnMenuItemSelected.Add(new (item) =>
{ {
var projectItem = GetSelectedProjectItem(); var projectFolder = GetSelectedProjectFolder();
if (projectItem != null) if (projectFolder != null)
ShowProjectProperties(projectItem.mProject); {
if (CheckProjectModify(projectFolder.mProject))
NewFolder(projectFolder);
}
}); });
item = menu.AddItem("New Class...");
item.mOnMenuItemSelected.Add(new (item) =>
{
var projectFolder = GetSelectedProjectFolder();
if (projectFolder != null)
{
if (CheckProjectModify(projectFolder.mProject))
NewClass(projectFolder);
}
});
item = menu.AddItem("Import File...");
item.mOnMenuItemSelected.Add(new (item) => { mImportFileDeferred = true; /* ImportFile();*/ });
item = menu.AddItem("Import Folder...");
item.mOnMenuItemSelected.Add(new (item) => { mImportFolderDeferred = true; /* ImportFile();*/ });
if (isProject)
{
menu.AddItem();
item = menu.AddItem("Properties...");
item.mOnMenuItemSelected.Add(new (item) =>
{
var projectItem = GetSelectedProjectItem();
if (projectItem != null)
ShowProjectProperties(projectItem.mProject);
});
}
} }
} }
/*else if (!handled) /*else if (!handled)