/// <summary>
        /// Adds a new address to the project items.
        /// </summary>
        private void AddNewProjectItem(Type projectItemType)
        {
            this.CreateProjectIfNone();

            DirectoryItemView directoryItemView = this.SelectedProjectItem as DirectoryItemView ?? this.ProjectRoot.FirstOrDefault();

            switch (projectItemType)
            {
            case Type _ when projectItemType == typeof(PointerItem):
                directoryItemView?.AddChild(new PointerItem());
                break;

            case Type _ when projectItemType == typeof(ScriptItem):
                directoryItemView?.AddChild(new ScriptItem());
                break;

            case Type _ when projectItemType == typeof(InstructionItem):
                directoryItemView?.AddChild(new InstructionItem());
                break;

            default:
                Logger.Log(LogLevel.Error, "Unknown project item type - " + projectItemType.ToString());
                break;
            }
        }
Esempio n. 2
0
        public void AddProjectItems(params ProjectItem[] projectItems)
        {
            if (projectItems == null)
            {
                return;
            }

            DirectoryItemView directoryItemView = this.SelectedProjectItem as DirectoryItemView ?? this.ProjectRoot?.FirstOrDefault();

            foreach (ProjectItem projectItem in projectItems)
            {
                directoryItemView?.AddChild(projectItem);
            }
        }
        private void DoOpenProject(String projectPath)
        {
            if (!Directory.Exists(projectPath))
            {
                throw new Exception("Folder not found");
            }

            // Create project root folder (initialize expanded for better UX)
            DirectoryItemView projectRootFolder = new DirectoryItemView(new DirectoryItem(projectPath))
            {
                IsExpanded = true
            };

            this.ProjectRoot = new FullyObservableCollection <DirectoryItemView> {
                projectRootFolder
            };
        }