fix - new file from menu

This commit is contained in:
Vadim Lopatin 2017-09-08 15:22:07 +03:00
parent 09d5470dda
commit c66ae7521e
2 changed files with 16 additions and 2 deletions
src/dlangide/ui

View File

@ -1119,7 +1119,7 @@ class IDEFrame : AppFrame, ProgramExecutionStatusListener, BreakpointListChangeL
createNewProject(false);
return true;
case IDEActions.FileNew:
addProjectItem(a.objectParam);
addProjectItem(cast(Object)a.objectParam);
return true;
case IDEActions.ProjectFolderRemoveItem:
removeProjectItem(a.objectParam);
@ -1233,9 +1233,12 @@ class IDEFrame : AppFrame, ProgramExecutionStatusListener, BreakpointListChangeL
}
void addProjectItem(const Object obj) {
void addProjectItem(Object obj) {
if (currentWorkspace is null)
return;
if (obj is null && _wsPanel !is null) {
obj = _wsPanel.selectedProjectItem;
}
Project project;
ProjectFolder folder;
if (cast(Project)obj) {

View File

@ -149,6 +149,17 @@ class WorkspacePanel : DockWindow {
return _workspace;
}
/// returns currently selected project item
@property ProjectItem selectedProjectItem() {
TreeItem ti = _tree.items.selectedItem;
if (!ti)
return null;
Object obj = ti.objectParam;
if (!obj)
return null;
return cast(ProjectItem)obj;
}
ProjectSourceFile findSourceFileItem(string filename, bool fullFileName=true) {
if (_workspace)
return _workspace.findSourceFileItem(filename, fullFileName);