public void Data_Always_SetTreeViewControlData() { // Setup var mocks = new MockRepository(); var viewCommands = mocks.Stub <IViewCommands>(); var project = mocks.Stub <IProject>(); mocks.ReplayAll(); IEnumerable <TreeNodeInfo> treeNodeInfos = new[] { new TreeNodeInfo { TagType = typeof(IProject) } }; using (var explorer = new ProjectExplorer(viewCommands, treeNodeInfos)) { var treeViewControl = TypeUtils.GetField <TreeViewControl>(explorer, "treeViewControl"); // Call explorer.Data = project; // Assert Assert.AreSame(project, treeViewControl.Data); } mocks.VerifyAll(); }
public void initialize(StandaloneController standaloneController) { GUIManager guiManager = standaloneController.GUIManager; guiManager.MainGUIShown += new Action(guiManager_MainGUIShown); guiManager.MainGUIHidden += new Action(guiManager_MainGUIHidden); //Prop Mover MedicalController medicalController = standaloneController.MedicalController; propMover = new SimObjectMover("Props", medicalController.PluginManager.RendererPlugin, medicalController.EventManager, standaloneController.SceneViewController); this.standaloneController = standaloneController; editorTimelineController = new TimelineController(standaloneController); standaloneController.giveGUIsToTimelineController(editorTimelineController); scratchAreaController = new ScratchAreaController(standaloneController.Clipboard); //Controller editorController = new EditorController(standaloneController, editorTimelineController); standaloneController.DocumentController.addDocumentHandler(new ProjectDocumentHandler(editorController)); standaloneController.DocumentController.UnknownDocumentHander = new UnknownDocumentHandler(editorController); propEditController = new PropEditController(propMover); //UI Helpers editorUICallback = new EditorUICallback(standaloneController, editorController, propEditController); typeControllerManager = new TypeControllerManager(standaloneController, this); typeControllerManager.FilesystemWatcherCreated += typeControllerManager_FilesystemWatcherCreated; //Dialogs scratchArea = new ScratchArea(scratchAreaController, editorUICallback); guiManager.addManagedDialog(scratchArea); projectExplorer = new ProjectExplorer(editorController, typeControllerManager); guiManager.addManagedDialog(projectExplorer); //Tasks Menu TaskController taskController = standaloneController.TaskController; aspectRatioTask = new AspectRatioTask(standaloneController.SceneViewController); if (MedicalConfig.ShowDeveloperTools) { taskController.addTask(new MDIDialogOpenTask(scratchArea, "Medical.ScratchArea", "Scratch Area", "EditorIcons.ScratchAreaIcon", TaskMenuCategories.Create)); taskController.addTask(new MDIDialogOpenTask(projectExplorer, "Medical.EditorTools", "Editor Tools", "EditorIcons.EditorTools", TaskMenuCategories.Create)); taskController.addTask(aspectRatioTask); } editorTaskbarFactory = new EditorTaskbarFactory(editorController); standaloneController.ViewHostFactory.addFactory(new EditorInfoBarFactory()); standaloneController.ViewHostFactory.addFactory(new TextEditorComponentFactory()); standaloneController.ViewHostFactory.addFactory(editorTaskbarFactory); CommonEditorResources.initialize(standaloneController); editorController.ProjectChanged += editorController_ProjectChanged; //Editor Views standaloneController.ViewHostFactory.addFactory(new OffsetSequenceEditorFactory(standaloneController.MedicalController, standaloneController.Clipboard)); }
public void ModifyNameAndVersion() { var importPipeline = ImportPipeline.Create().Build(); var createExplorer = ProjectExplorer.CreateProject(FileName("project"), importPipeline); createExplorer.Definition.Properties.Name = "TestName1"; createExplorer.Definition.Properties.Version = "1.0.0"; createExplorer.Definition.SaveChanges(); var loadExplorer = ProjectExplorer.Load(FileName("project"), importPipeline); Assert.That(loadExplorer.Definition.Properties.Name, Is.EqualTo("TestName1")); Assert.That(loadExplorer.Definition.Properties.Version, Is.EqualTo("1.0.0")); loadExplorer.ExportZippedToDirectory(new BuildPipeline() { ImportPipeline = importPipeline, }, FileName("export")); var packageImport = PackageExplorer.LoadFromFileAsync( Path.Combine(FileName("export"), "TestName1.bpkg")).Result; Assert.That(packageImport.Definition.Properties.Name, Is.EqualTo("TestName1")); Assert.That(packageImport.Definition.Properties.Version, Is.EqualTo("1.0.0")); }
public BuildCommand(string name, string description = null) : base(name, description) { AddArgument(new Argument <FileInfo>("project", null) { Description = "A project file to use." }); Handler = CommandHandler.Create((ParseResult parseResult, IConsole console) => { var project = parseResult.ValueForOption <FileInfo>("project"); if (project == null) { project = FindFileOfType(".bproj"); } var importPipeline = new ImportPipeline(); var projectExplorer = ProjectExplorer.Load(project.DirectoryName, importPipeline); string exportDirectory = "./bin/"; Directory.CreateDirectory(exportDirectory); var consoleRenderer = new BuildConsoleRenderer(); var buildPipeline = new BuildPipeline() { BuildActions = new List <IBuildAction>() { consoleRenderer } }; consoleRenderer.DrawProgressBar(32); projectExplorer.Export(buildPipeline, exportDirectory); }); }
public void ModifyVersion() { var importPipeline = ImportPipeline.Create().Build(); string projectPath = TestUtilities.CreateFilePath("project"); string exportPath = Path.Combine(TestUtilities.CreateFilePath("export"), "project.bpkg"); using (var explorer = ProjectExplorer.CreateProject(projectPath, importPipeline)) { explorer.Definition.Properties.Version = "1.0.0"; explorer.Definition.SaveChanges(); } using (var explorer = ProjectExplorer.Load(projectPath, importPipeline)) { Assert.That(explorer.Definition.Properties.Version, Is.EqualTo("1.0.0")); explorer.ExportZippedToDirectory(new BuildPipeline() { ImportPipeline = importPipeline, }, TestUtilities.CreateFilePath("export")); } using (var explorer = PackageExplorer.LoadFromFileAsync(exportPath).Result) { Assert.That(explorer.Definition.Properties.Version, Is.EqualTo("1.0.0")); } }
public FormDesigner() { this.UniqueID = "application" + projectCOunter; propertyWindow = new PropertyWindow(); projectExplorer = new ProjectExplorer(this); dataPatternExplorer = new DataPatternExlorer(this); displayNameExplorer = new DisplayNameExplorer(this); webServiceExplorer = new EIBFormDesigner.Designer.WebServiceExplorer.WebServiceExplorer(this); eventManager = getEventManagerInstance(); DragDropHandler.Initialize(eventManager, this); this.Disposed += new EventHandler(FormDesigner_Disposed); InitializeComponent(); ToolBoxWindow.form = this; toolBoxWindow = new ToolBoxWindow(); startupImage = new StartupHIC(); formulaEditor = new FormulaEditorWindow(this); workEditor = new WorkflowEditorWindow(this); buildtool = new EIBFormDesigner.Build.BuildTool(this); buildwindow = new BuildWindow(this); setFromPatternsForACL(); //UserAdmin.UserAdminConstants.CompanyId = company; //UserAdmin.UserAdminConstants.CompanyName = company; history = new UndoRedoHistory <ControlPool>(controlpool); this.SetStyle(ControlStyles.DoubleBuffer, true); this.SetStyle(ControlStyles.UserPaint, true); this.SetStyle(ControlStyles.AllPaintingInWmPaint, true); }
public void ModifyNameAndVersion() { var createExplorer = ProjectExplorer.CreateProject(FileName("project"), new ImportPipeline()); createExplorer.Definition.Properties.Name = "TestName1"; createExplorer.Definition.Properties.Version = "1.0.0"; createExplorer.Definition.SaveChanges(); var loadExplorer = ProjectExplorer.Load(FileName("project"), new ImportPipeline()); Assert.That(loadExplorer.Definition.Properties.Name, Is.EqualTo("TestName1")); Assert.That(loadExplorer.Definition.Properties.Version, Is.EqualTo("1.0.0")); loadExplorer.Export(new BuildPipeline() { ImportPipeline = new ImportPipeline(), }, FileName("export")); var packageImport = PackageExplorer.Load( Path.Combine(FileName("export"), "TestName1.bpkg")); Assert.That(packageImport.Definition.Properties.Name, Is.EqualTo("TestName1")); Assert.That(packageImport.Definition.Properties.Version, Is.EqualTo("1.0.0")); }
public void Install(IWorkspace workspace) { // Add parts arGraph = new ActiveRecordGraphView(_model); arGraph.ParentWorkspace = workspace; outView = new OutputView(_model); outView.ParentWorkspace = workspace; projExplorer = new ProjectExplorer(_model); projExplorer.ParentWorkspace = workspace; avaShapes = new AvailableShapes(_model); avaShapes.ParentWorkspace = workspace; // Register Actions FileActionGroup group1 = new FileActionGroup(); group1.Init(_model); group1.Install(workspace); ViewActionSet group2 = new ViewActionSet(arGraph, outView, projExplorer, avaShapes); group2.Init(_model); group2.Install(workspace); HelpActionSet group3 = new HelpActionSet(); group3.Init(_model); group3.Install(workspace); }
internal ProjectResourceUpdate(ProjectExplorer explorer, string projectKey) { Explorer = explorer; ProjectKey = projectKey; ImporterTags = new HashSet <string>(); Dependencies = new ProjectResourceUpdateDependencyCollection(this); }
public ViewActionSet(ActiveRecordGraphView graph, OutputView outputview, ProjectExplorer explorer, AvailableShapes shapes) { _graph = graph; _outputview = outputview; _explorer = explorer; _shapes = shapes; }
internal ProjectResourceImporter(ProjectExplorer projectExplorer, FileInfo fileInfo, string projectKey) { ProjectExplorer = projectExplorer; FileInfo = fileInfo; ProjectKey = projectKey; Tags = new List <string>(); }
private WeifenLuo.WinFormsUI.Docking.IDockContent DeserializeDockContent(string persistString) { if (persistString.StartsWith("FileExplorer_")) { int index = 0; bool success = Int32.TryParse(persistString.Substring("FileExplorer_".Length), out index); if (!success) { return(null); } if (index < 0 || index > 1) { return(null); } m_FileExplorers[index] = new FileExplorer((FileType)index, this); return(m_FileExplorers[index]); } else if (persistString == "AudioSourceSearch") { m_AudioSourceSearch = new AudioSourceSearchWindow(m_PluginManager); return(m_AudioSourceSearch); } else if (persistString == "ProjectExplorer") { m_ProjectExplorer = new ProjectExplorer(); return(m_ProjectExplorer); } else if (persistString == "VolumeWindow") { m_VolumeWindow = new VolumeWindow(); return(m_VolumeWindow); } else if (persistString == "ErrorWindow") { m_ErrorWindow = new ErrorWindow(); m_ErrorWindow.Client = this; return(m_ErrorWindow); } else if (persistString == "TagsEditor") { m_TagsEditor = new ElementEditors.TagsEditor(); m_TagsEditor.SetProject(m_CurrentProject); return(m_TagsEditor); } else if (persistString == "FileTagsEditor") { m_FileTagsEditor = new ElementEditors.FileTagsEditor(); m_FileTagsEditor.SetParent(this); m_FileTagsEditor.SetProject(m_CurrentProject); m_FileTagsEditor.SetFiles(m_SelectedFiles); return(m_FileTagsEditor); } else { return(null); } }
internal ProjectResourceImporter(ProjectExplorer projectExplorer, ProjectDirectory directory, IArchiveEntry archiveEntry, string projectKey) { ProjectExplorer = projectExplorer; Directory = directory; ArchiveEntry = archiveEntry; ProjectKey = projectKey; ImporterTags = new HashSet <string>(); Dependencies = new ProjectResourceImporterDependencyCollection(this); }
public void SetTarget(ProjectExplorer projectExplorer) { if (this.projectExplorer == projectExplorer) { return; } this.projectExplorer = projectExplorer; Reload(); }
public void CreateBlankProject() { var importPipeline = ImportPipeline.Create().Build(); string projectPath = TestUtilities.CreateFilePath("project"); using (var explorer = ProjectExplorer.CreateProject(projectPath, importPipeline)) { explorer.Definition.Properties.Name = "TestName1"; explorer.Definition.SaveChanges(); } }
private static void ProjectListener_OnProjectOpened(Project Project) { ProjectExplorer explorer = new ProjectExplorer(Project); if (explorer.Language != Models.Languages.Undefined) { if (!explorer.References.Any(x => x.Name == NuGet && x.Version >= NuGetVersion)) { AddReference(Project); } } }
public void ClearCodeDisplayers(bool refreshDisplayers) { foreach (NuGenCodeDisplayer codeDisplayer in ProjectExplorer.GetCodeDisplayers()) { codeDisplayer.ClearCurrentLine(); codeDisplayer.ClearSpecialLines(); if (refreshDisplayers) { codeDisplayer.Refresh(); } } }
public void TreeViewSelectedNodeChanged_Always_SelectionChangedFired() { // Setup var mocks = new MockRepository(); var viewCommands = mocks.StrictMock <IViewCommands>(); var project = mocks.Stub <IProject>(); mocks.ReplayAll(); const string stringA = "testA"; const string stringB = "testB"; IEnumerable <TreeNodeInfo> treeNodeInfos = new[] { new TreeNodeInfo { TagType = typeof(IProject), ChildNodeObjects = o => new object[] { stringA, stringB } }, new TreeNodeInfo { TagType = typeof(string) } }; using (var explorer = new ProjectExplorer(viewCommands, treeNodeInfos) { Data = project }) { var treeViewControl = TypeUtils.GetField <TreeViewControl>(explorer, "treeViewControl"); WindowsFormsTestHelper.Show(treeViewControl); var selectionChangedCount = 0; explorer.SelectionChanged += (sender, args) => selectionChangedCount++; // Call treeViewControl.TrySelectNodeForData(stringA); // Assert Assert.AreEqual(1, selectionChangedCount); } WindowsFormsTestHelper.CloseAll(); mocks.VerifyAll(); }
public void TreeViewEnterPress_Always_OpenViewForSelection() { // Setup const string treeIdentifier = "SomeName"; const string formIdentifier = "SomeForm"; var mocks = new MockRepository(); var viewCommands = mocks.StrictMock <IViewCommands>(); viewCommands.Expect(a => a.OpenViewForSelection()); var project = mocks.Stub <IProject>(); mocks.ReplayAll(); IEnumerable <TreeNodeInfo> treeNodeInfos = new[] { new TreeNodeInfo { TagType = typeof(IProject) } }; using (var explorer = new ProjectExplorer(viewCommands, treeNodeInfos) { Data = project }) { var form = new Form { Name = formIdentifier }; form.Controls.Add(explorer); form.Show(); var treeViewControl = TypeUtils.GetField <TreeViewControl>(explorer, "treeViewControl"); TypeUtils.GetField <TreeView>(treeViewControl, "treeView").Name = treeIdentifier; // Precondition Assert.AreSame(treeViewControl.SelectedData, project); var tester = new TreeViewTester(treeIdentifier); // Call tester.DoubleClick(); } // Assert mocks.VerifyAll(); }
public void Selection_Always_ReturnsSelectedNodeData() { // Setup var mocks = new MockRepository(); var viewCommands = mocks.Stub <IViewCommands>(); var project = mocks.Stub <IProject>(); mocks.ReplayAll(); const string stringA = "testA"; const string stringB = "testB"; IEnumerable <TreeNodeInfo> treeNodeInfos = new[] { new TreeNodeInfo { TagType = typeof(IProject), ChildNodeObjects = o => new object[] { stringA, stringB } }, new TreeNodeInfo { TagType = typeof(string) } }; using (var explorer = new ProjectExplorer(viewCommands, treeNodeInfos) { Data = project }) { var treeViewControl = TypeUtils.GetField <TreeViewControl>(explorer, "treeViewControl"); WindowsFormsTestHelper.Show(treeViewControl); treeViewControl.TrySelectNodeForData(stringA); // Call object selection = explorer.Selection; // Assert Assert.AreSame(stringA, selection); } WindowsFormsTestHelper.CloseAll(); mocks.VerifyAll(); }
private void ShowProjectExplorer() { if (m_ProjectExplorer == null) { m_ProjectExplorer = new ProjectExplorer(); m_ProjectExplorer.SetProject(m_CurrentProject); m_ProjectExplorer.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.DockLeft; m_ProjectExplorer.Show(dockPanel); } else { UpdateWindowState(m_ProjectExplorer); } ActivateWindow(m_ProjectExplorer); }
public MainForm() { InitializeComponent(); IsMdiContainer = true; Text = "Photeus Editor"; CreateDockPanel(); CreateMenu(); _projectExplorer = new ProjectExplorer(_dockPanel) { HideOnClose = true, CloseButton = false, CloseButtonVisible = false, DockAreas = DockAreas.DockLeft | DockAreas.DockRight }; _projectExplorer.Show(_dockPanel, DockState.DockLeft); CreateAutoSaveTimer(); }
#pragma warning disable private static async void DebugListener_OnProjectDebugging(Project Project) { ProjectExplorer explorer = new ProjectExplorer(Project); if (explorer.Language != Models.Languages.Undefined) { if (OptionContainer.AutoClear) { Clear(); } PreviousConnectionSource?.Cancel(); Server?.Dispose(); Server = new PipeHTMLServer(explorer.AssemblyName); Server.OnDataReceived += Server_HTMLReceived; PreviousConnectionSource = new CancellationTokenSource(MaxConnectionWaitTime); await Server.WaitForConnectionAsync(PreviousConnectionSource.Token); Server.BeginRead(); } }
public void Constructor_ExpectedValues() { // Setup var mocks = new MockRepository(); var viewCommands = mocks.StrictMock <IViewCommands>(); mocks.ReplayAll(); // Call using (var explorer = new ProjectExplorer(viewCommands, Enumerable.Empty <TreeNodeInfo>())) { // Assert Assert.IsInstanceOf <IView>(explorer); Assert.IsInstanceOf <ISelectionProvider>(explorer); Assert.IsInstanceOf <UserControl>(explorer); Assert.IsNull(explorer.Data); } mocks.VerifyAll(); }
private IProjectExplorer GetFromVsEnvironment() { IProjectExplorer projectExplorer = null; try { VsEnvironment = (DTE)ServiceProvider.GetService(typeof(DTE)); if (VsEnvironment != null) { projectExplorer = new ProjectExplorer(VsEnvironment); } } catch (COMException ex) { //TODO: Log the COM Exception somewhere //Unable to attach to the current visual studio environment VsEnvironment = null; } return(projectExplorer); }
public void ProjectDataDeleted_Always_CallsRemoveAllViewsForItemWithTag() { // Setup var mocks = new MockRepository(); var project = mocks.Stub <IProject>(); var viewCommands = mocks.StrictMock <IViewCommands>(); viewCommands.Expect(vc => vc.RemoveAllViewsForItem(project)); mocks.ReplayAll(); IEnumerable <TreeNodeInfo> treeNodeInfos = new[] { new TreeNodeInfo { TagType = typeof(IProject), CanRemove = (item, parent) => true } }; DialogBoxHandler = (name, wnd) => { var messageBox = new MessageBoxTester(wnd); messageBox.ClickOk(); }; using (var explorer = new ProjectExplorer(viewCommands, treeNodeInfos) { Data = project }) { var treeViewControl = TypeUtils.GetField <TreeViewControl>(explorer, "treeViewControl"); // Call treeViewControl.TryRemoveNodeForData(project); } // Assert mocks.VerifyAll(); }
public FormatCommand(string name, string description = null) : base(name, description) { AddArgument(new Argument <FileInfo>("project", null) { Description = "A project file to use." }); Handler = CommandHandler.Create((ParseResult parseResult, IConsole console) => { var project = parseResult.ValueForOption <FileInfo>("project"); if (project == null) { project = FindFileOfType(".bproj"); } var importPipeline = new ImportPipeline(); var projectExplorer = ProjectExplorer.Load(project.DirectoryName, importPipeline); projectExplorer.Definition.SaveChanges(); }); }
public void AssembliesLoaded(List <NuGenAssembly> loadedAssemblies, bool isProjectChanged) { informationPanel.AddElapsedTime(); informationPanel.AddInformation(readyLabel.Text); informationPanel.ResetCounter(); //Application.DoEvents(); foreach (NuGenAssembly assembly in loadedAssemblies) { ProjectExplorer.AddAssemblyToProject(assembly); } informationPanel.AddElapsedTime(); ClearUserWarning(); informationPanel.AddInformation(readyLabel.Text); informationPanel.AddInformation("\n\n"); ResetPanels(); if (NuGenDebugEventHandler.Instance.State == DebuggerState.DebuggeeStopped) { ShowDebuggerState(DebuggerState.DebuggeeStopped); } else { ShowDebuggerState(NuGenDebugEventHandler.Instance.State); ClearDebugPanels(false); NuGenDebugEventHandler.Instance.DisplayCurrentCodeLocation(); } GC.Collect(GC.MaxGeneration); if (isProjectChanged) { NuGenProject.Instance.IsSaved = false; } }
private void MainForm_HandleCreated(object sender, EventArgs e) { projectExplorer = new ProjectExplorer(); UIHandler.Instance.Initialize(this, dockPanel); CreatePanels(); Project.ProjectChanged += new EventHandler(Project_ProjectChanged); Project.ProjectIsSavedChanged += new EventHandler(Project_ProjectIsSavedChanged); displayHexaNumbersButton.Checked = Settings.Instance.DisplayHexaNumbers; Settings.Instance.DisplayHexaNumbersChanged += new NoArgumentsDelegate(Instance_DisplayHexaNumbersChanged); ReadyLabelOriginalBackColor = readyLabel.BackColor; ReadyLabelOriginalForeColor = readyLabel.ForeColor; Settings.Instance.RecentAssembliesChanged += new NoArgumentsDelegate(RecentAssembliesChanged); Settings.Instance.RecentProjectsChanged += new NoArgumentsDelegate(RecentProjectsChanged); RecentAssembliesChanged(); RecentProjectsChanged(); AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException); ProjectExplorer.Show(dockPanel, DockState.DockRight); quickSearchPanel.Show(dockPanel, DockState.DockRight); informationPanel.Show(dockPanel, DockState.DockBottom); informationPanel.BringToFront(); outputPanel.Show(dockPanel, DockState.DockBottom); outputPanel.BringToFront(); logMessagePanel.Text = "Log Message Panel"; logMessagePanel.TabText = "Log Message Panel"; logMessagePanel.Show(dockPanel, DockState.DockBottom); logMessagePanel.BringToFront(); threadsPanel.Show(dockPanel, DockState.DockBottom); modulesPanel.Show(dockPanel, DockState.DockBottom); callStackPanel.Show(dockPanel, DockState.DockBottom); breakpointsPanel.Show(dockPanel, DockState.DockBottom); localVariablesPanel.Mode = ObjectsPanelMode.LocalVariables; localVariablesPanel.Text = "Local Variables Panel"; localVariablesPanel.TabText = localVariablesPanel.Text; localVariablesPanel.Show(dockPanel, DockState.DockBottom); argumentsPanel.Mode = ObjectsPanelMode.Arguments; argumentsPanel.Text = "Arguments Panel"; argumentsPanel.TabText = argumentsPanel.Text; argumentsPanel.Show(dockPanel, DockState.DockBottom); autoObjectsPanel.Mode = ObjectsPanelMode.AutoObjects; autoObjectsPanel.Text = "Auto Objects Panel"; autoObjectsPanel.TabText = autoObjectsPanel.Text; autoObjectsPanel.Show(dockPanel, DockState.DockBottom); watchPanel.Mode = ObjectsPanelMode.Watch; watchPanel.Text = "Watch Panel"; watchPanel.TabText = watchPanel.Text; watchPanel.Show(dockPanel, DockState.DockBottom); dockPanel.DockWindows[DockState.DockRight].SendToBack(); Project.Instance = new Project(); Project.Instance.IsSaved = true; Project.Instance.Name = "New project"; ProjectExplorer.AddAssemblyDelegate = new NoArgumentsDelegate(AddAssembly); ProjectExplorer.OpenAssemblyReferenceDelegate = new StringArrayDelegate(AddAssembly); ProjectExplorer.ShowProject(); CreatePanelList(); AssignMenuFunctions(); Settings.Instance.UpdateShortcuts(mainMenu); if (ProjectToLoad != null) { if (ProjectToLoad.FullPath == null || ProjectToLoad.FullPath.Length == 0) { AddAssembly(AssembliesToLoad); Settings.Instance.AddAssemblies(AssembliesToLoad); AssembliesToLoad = null; } else { OpenProject(ProjectToLoad.FullPath, true); } } //The v1.0 DockPanelSuite seems to have some problem. Activating every panel one-by-one seems to help. ProjectExplorer.Activate(); quickSearchPanel.Activate(); informationPanel.Activate(); outputPanel.Activate(); logMessagePanel.Activate(); threadsPanel.Activate(); modulesPanel.Activate(); callStackPanel.Activate(); breakpointsPanel.Activate(); localVariablesPanel.Activate(); argumentsPanel.Activate(); autoObjectsPanel.Activate(); watchPanel.Activate(); ProjectExplorer.Activate(); informationPanel.Activate(); }
public void Start() { var nodes = NodeManifest.Construct( new Type[] { typeof(AddNode), typeof(RollNode), typeof(OutputValueNode), typeof(ItemInputNode), typeof(GetStatNode), typeof(IterateNode), } ); var types = TypeManifest.ConstructBaseTypes(); var manifest = new BehaviourManifest() { Nodes = nodes, Types = types }; File.WriteAllText("Content/RPGCoreMath.bmfst", manifest.ToString()); Console.WriteLine("Importing Graph..."); var proj = ProjectExplorer.Load("Content/Tutorial"); Console.WriteLine(proj.Name); Console.WriteLine("\t\"" + proj.Name + "\""); foreach (var resource in ((IPackageExplorer)proj).Resources) { Console.WriteLine("\t" + resource.FullName); } var editorTargetResource = proj.Resources["Tutorial Gamerules/Main.bhvr"]; var editorTargetData = editorTargetResource.LoadStream(); JObject editorTarget; var serializer = new JsonSerializer(); using (var sr = new StreamReader(editorTargetData)) using (var reader = new JsonTextReader(sr)) { editorTarget = JObject.Load(reader); } var editor = new EditorSession(manifest, editorTarget, "SerializedGraph", serializer); foreach (var node in editor.Root["Nodes"]) { var nodeData = node["Data"]; foreach (var field in nodeData) { Console.WriteLine($"{field}"); if (field.Name == "MaxValue") { field.SetValue(field.GetValue <int> () + 10); field.ApplyModifiedProperties(); field.SetValue(field.GetValue <int> ()); field.ApplyModifiedProperties(); } else if (field.Name == "ValueB") { Console.WriteLine(field.GetValue <LocalPropertyId> ()); } } } using (var file = editorTargetResource.WriteStream()) using (var jsonWriter = new JsonTextWriter(file) { Formatting = Formatting.Indented }) { serializer.Serialize(jsonWriter, editorTarget); } Console.WriteLine(new DirectoryInfo("Content/Temp").FullName); var consoleRenderer = new BuildConsoleRenderer(); var buildPipeline = new BuildPipeline() { Exporters = new List <ResourceExporter> () { new BhvrExporter() }, BuildActions = new List <IBuildAction> () { consoleRenderer } }; consoleRenderer.DrawProgressBar(32); proj.Export(buildPipeline, "Content/Temp"); Console.WriteLine("Exported package..."); var exportedPackage = PackageExplorer.Load("Content/Temp/Core.bpkg"); var fireballAsset = exportedPackage.Resources["Fireball/Main.bhvr"]; var data = fireballAsset.LoadStream(); SerializedGraph packageItem; using (var sr = new StreamReader(data)) using (var reader = new JsonTextReader(sr)) { packageItem = serializer.Deserialize <SerializedGraph> (reader); } Console.WriteLine("Imported: " + packageItem.Name); var unpackedGraph = packageItem.Unpack(); Console.WriteLine("Running Simulation..."); var player = new DemoPlayer(); IGraphInstance instancedItem = unpackedGraph.Create(); instancedItem.Setup(); instancedItem.SetInput(player); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 10; } instancedItem.Remove(); var packedInstance = ((GraphInstance)instancedItem).Pack(); string serializedGraph = packedInstance.AsJson(); Console.WriteLine(serializedGraph); var deserialized = JsonConvert.DeserializeObject <SerializedGraphInstance> (serializedGraph); var unpackedInstance = deserialized.Unpack(unpackedGraph); unpackedInstance.SetInput(player); unpackedInstance.Setup(); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 20; } unpackedInstance.Remove(); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 20; } }
public void Start() { var nodes = NodeManifest.Construct(new Type[] { typeof(AddNode), typeof(RollNode) }); var types = TypeManifest.ConstructBaseTypes(); var manifest = new BehaviourManifest() { Nodes = nodes, Types = types }; File.WriteAllText("Content/RPGCoreMath.bmfst", manifest.ToString()); Console.WriteLine("Importing Graph..."); var proj = ProjectExplorer.Load("Content/Tutorial"); Console.WriteLine(proj.Name); Console.WriteLine("\t\"" + proj.Name + "\""); foreach (var resource in ((IPackageExplorer)proj).Resources) { Console.WriteLine("\t" + resource.FullName); } var editorTargetResource = proj.Resources["Tutorial Gamerules/Main.bhvr"]; var editorTargetData = editorTargetResource.LoadStream(); JObject editorTarget; var serializer = new JsonSerializer(); using (var sr = new StreamReader(editorTargetData)) using (var reader = new JsonTextReader(sr)) { editorTarget = JObject.Load(reader); } //var editNode = editorTarget.Nodes.First (); var editor = new EditorSession(manifest, editorTarget, "SerializedGraph"); /*foreach (var field in editor.Root) * { * Console.WriteLine ($"{field.Name}: {field.Json} ({field.Field.Type})"); * if (field.Name == "MaxValue") * { * var newObject = JToken.FromObject (field.Json.ToObject<int> () + 10); * field.Json.Replace (newObject); * } * }*/ using (var file = editorTargetResource.WriteStream()) { serializer.Serialize(new JsonTextWriter(file) { Formatting = Formatting.Indented }, editorTarget); } Console.WriteLine(new DirectoryInfo("Content/Temp").FullName); var consoleRenderer = new BuildConsoleRenderer(); var buildPipeline = new BuildPipeline() { Exporters = new List <ResourceExporter> () { new BhvrExporter() }, BuildActions = new List <IBuildAction> () { consoleRenderer } }; consoleRenderer.DrawProgressBar(32); proj.Export(buildPipeline, "Content/Temp"); Console.WriteLine("Exported package..."); var exportedPackage = PackageExplorer.Load("Content/Temp/Core.bpkg"); var fireballAsset = exportedPackage.Resources["Fireball/Main.bhvr"]; var data = fireballAsset.LoadStream(); SerializedGraph packageItem; using (var sr = new StreamReader(data)) using (var reader = new JsonTextReader(sr)) { packageItem = serializer.Deserialize <SerializedGraph> (reader); } Console.WriteLine("Imported: " + packageItem.Name); var unpackedGraph = packageItem.Unpack(); Console.WriteLine("Running Simulation..."); var player = new Actor(); IBehaviour instancedItem = unpackedGraph.Setup(player); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 20; } instancedItem.Remove(); var packedInstance = ((GraphInstance)instancedItem).Pack(); string serializedGraph = packedInstance.AsJson(); Console.WriteLine(serializedGraph); var deserialized = JsonConvert.DeserializeObject <SerializedGraphInstance> (serializedGraph); var unpackedInstance = deserialized.Unpack(unpackedGraph); unpackedInstance.Setup(player); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 20; } unpackedInstance.Remove(); for (int i = 0; i < 5; i++) { Thread.Sleep(100); player.Health.Value -= 20; } }