/// <summary> /// Callback to add a LightDefinition. /// </summary> /// <param name="callback"></param> /// <param name="command"></param> private void addLight(EditUICallback callback) { callback.getInputString("Enter a name.", delegate(String input, ref String errorPrompt) { if (validateMovableName(input, ref errorPrompt)) { addMovableObjectDefinition(new LightDefinition(input)); return(true); } return(false); }); }
/// <summary> /// Callback to create a resource group. /// </summary> /// <param name="callback"></param> /// <param name="caller"></param> private void addResourceGroup(EditUICallback callback) { callback.getInputString("Enter a name for the group.", delegate(String input, ref String errorPrompt) { if (input == null || input == "") { errorPrompt = "Please enter a non empty name."; return(false); } if (resourceGroups.ContainsKey(input)) { errorPrompt = "That name is already in use. Please provide another."; return(false); } this.addResourceGroup(input); return(true); }); }
/// <summary> /// Callback to add a child node. /// </summary> /// <param name="callback"></param> /// <param name="command"></param> private void addChildNode(EditUICallback callback) { callback.getInputString("Enter a name.", delegate(String input, ref String errorPrompt) { if (input == null || input == "") { errorPrompt = "Please enter a non empty name."; return(false); } SceneNodeDefinition topLevel = findTopLevelNode(); if (input == topLevel.Name || topLevel.isNodeNameTaken(input)) { errorPrompt = "That name is already in use. Please provide another."; return(false); } addChildNode(new SceneNodeDefinition(input)); return(true); }); }
private void addTrack(EditUICallback callback) { callback.getInputString("Enter a name for the track.", delegate(String trackName, ref String trackErrorPrompt) { if (String.IsNullOrEmpty(trackName)) { trackErrorPrompt = "You must enter a name for the track."; return(false); } TypeBrowser browser = new TypeBrowser("Track Types", "Choose a track type", typeof(ShowPropSubAction)); callback.showBrowser(browser, delegate(Type resultType, ref String typeBrowseErrorPrompt) { addTrack(new ShowPropSubActionPrototype(resultType, trackName)); return(true); }); return(true); }); }
private void createGroupCallback(EditUICallback callback) { callback.getInputString("Enter a name.", delegate(String input, ref String errorPrompt) { if (input == null || input == "") { errorPrompt = "Please enter a non empty name."; return(false); } if (this.groups.ContainsKey(input)) { errorPrompt = "That name is already in use. Please provide another."; return(false); } InstanceGroup group = new InstanceGroup(input, Path.Combine(path, input)); this.addGroup(group); return(true); }); }
/// <summary> /// Callback to create a SimSubSceneDefinition. /// </summary> /// <param name="callback">The EditUICallback to get more info from the user.</param> /// <param name="caller">The command that initiated this funciton call.</param> private void createSimSubSceneDefinition(EditUICallback callback) { callback.getInputString("Enter a name.", delegate(String input, ref String errorPrompt) { if (input == null || input == "") { errorPrompt = "Please enter a non empty name."; return(false); } if (this.hasSimSubSceneDefinition(input)) { errorPrompt = "That name is already in use. Please provide another."; return(false); } SimSubSceneDefinition def = new SimSubSceneDefinition(input); this.addSimSubSceneDefinition(def); return(true); }); }
private void createSimObjectCallback(EditUICallback callback) { callback.getInputString("Enter a name.", delegate(String input, ref String errorPrompt) { if (input == null || input == "") { errorPrompt = "Please enter a non empty name."; return(false); } InstanceGroup groupWithInstance = findInstanceGroup(input); if (groupWithInstance != null) { errorPrompt = String.Format("The name {0} is already in use in group {1}. Please provide another.", input, groupWithInstance.Name); return(false); } SimObjectDefinition simObject = new GenericSimObjectDefinition(input); createInstance(simObject); return(true); }); }
private void renameSimObjectCallback(EditUICallback callback) { callback.getInputString("Enter a name.", delegate(String input, ref String errorPrompt) { if (input == null || input == "") { errorPrompt = "Please enter a non empty name."; return(false); } if (this.instanceFiles.ContainsKey(input)) { errorPrompt = "That name is already in use. Please provide another."; return(false); } InstanceFileInterface instanceFile = callback.getSelectedEditInterface().getEditableProperties().First() as InstanceFileInterface; SimObjectDefinition sourceObject = instanceFile.Instance.Definition; SimObjectDefinition simObject = copySaver.copyObject(sourceObject) as SimObjectDefinition; simObject.Name = input; createInstance(simObject); removeInstanceFile(instanceFile.Name); return(true); }); }