public static void CreateSnippet(AddHandlerDataObject data) { ISnippetGenerator gene; switch (EditorSettings.ScriptExtension) { //case ScriptExtensions.JAVASCRIPT: default: gene = new JavascriptSnippetGenerator(data); break; case ScriptExtensions.CSHARP: gene = new CSharpSnippetGenerator(data); break; case ScriptExtensions.BOO: gene = new BooSnippetGenerator(data); break; } string snippet = gene.Generate(); if (data.OpenScript) { int index = snippet.IndexOf(PersistedDataProcessor.CursorMarker); string[] parts = snippet.Substring(0, index).Split(new[] { Environment.NewLine }, StringSplitOptions.None); // set line number data.SnippetLineNumber = parts.Length; // +1; // remove market snippet = snippet.Replace(PersistedDataProcessor.CursorMarker, string.Empty); } data.Snippet = snippet; }
public static void InsertHandler(AddHandlerDataObject data) { ISnippetGenerator gene; switch (EditorSettings.ScriptExtension) { //case ScriptExtensions.JAVASCRIPT: default: gene = new JavascriptSnippetGenerator(data); break; case ScriptExtensions.CSHARP: gene = new CSharpSnippetGenerator(data); break; case ScriptExtensions.BOO: gene = new BooSnippetGenerator(data); break; } string origSnippet = data.Snippet; if (string.IsNullOrEmpty(origSnippet)) { Debug.LogError("Problem with file content"); return; } string handlerString = gene.CreateEventHandler(); string[] parts = origSnippet.Split(new[] { Environment.NewLine }, StringSplitOptions.None); System.Collections.Generic.List <string> list = new System.Collections.Generic.List <string>(parts); int index = Math.Max(0, parts.Length - 2); list.Insert(index, handlerString); string snippet = String.Join(Environment.NewLine, list.ToArray()); if (data.OpenScript) { index = snippet.IndexOf(PersistedDataProcessor.CursorMarker); if (index == -1) { Debug.LogError("Cannot find cursor marker"); return; } parts = snippet.Substring(0, index).Split(new[] { Environment.NewLine }, StringSplitOptions.None); // set line number data.SnippetLineNumber = parts.Length; // +1; // remove marker data.Snippet = snippet.Replace(PersistedDataProcessor.CursorMarker, string.Empty); // set line number data.SnippetLineNumber = index; } }
public static void InsertHandler(AddHandlerDataObject data) { ISnippetGenerator gene; switch (EditorSettings.ScriptExtension) { //case ScriptExtensions.JAVASCRIPT: default: gene = new JavascriptSnippetGenerator(data); break; case ScriptExtensions.CSHARP: gene = new CSharpSnippetGenerator(data); break; case ScriptExtensions.BOO: gene = new BooSnippetGenerator(data); break; } string origSnippet = data.Snippet; if (string.IsNullOrEmpty(origSnippet)) { Debug.LogError("Problem with file content"); return; } string handlerString = gene.CreateEventHandler(); string[] parts = origSnippet.Split(new[] { Environment.NewLine }, StringSplitOptions.None); System.Collections.Generic.List<string> list = new System.Collections.Generic.List<string>(parts); int index = Math.Max(0, parts.Length - 2); list.Insert(index, handlerString); string snippet = String.Join(Environment.NewLine, list.ToArray()); if (data.OpenScript) { index = snippet.IndexOf(PersistedDataProcessor.CursorMarker); if (index == -1) { Debug.LogError("Cannot find cursor marker"); return; } parts = snippet.Substring(0, index).Split(new[] { Environment.NewLine }, StringSplitOptions.None); // set line number data.SnippetLineNumber = parts.Length; // +1; // remove marker data.Snippet = snippet.Replace(PersistedDataProcessor.CursorMarker, string.Empty); // set line number data.SnippetLineNumber = index; } }
public void Reset() { _data = new AddHandlerDataObject { Adapter = Adapter }; Step = 0; foreach (IWizardStep step in _renderers) { step.Reset(); } }
/// <summary> /// Initializes the Singleton instance /// </summary> public void Initialize() { _data = AddEventHandlerDialog.Instance.Data; if (null == _data) { return; } //Debug.Log("_data: " + _data); _action = _data.Action; _eventName = _data.GetEventName(); _className = _data.ClassName; if (_data.Action == AddHandlerAction.CreateNewScriptAndHandler) { var attr = _eventName; if (string.IsNullOrEmpty(_eventName)) { throw new Exception("Event name not defined"); } if (attr.Length > 0) { string firstChar = attr[0].ToString(); attr = attr.Remove(0, 1); firstChar = firstChar.ToUpper(); attr = attr.Insert(0, firstChar); } _methodName = string.Format("On{0}", attr); } else { _methodName = _data.MethodName ?? string.Empty; } //Debug.Log("_methodName: " + _methodName); _isEditingScript = _data.Action == AddHandlerAction.CreateNewScriptAndHandler || _data.Action == AddHandlerAction.CreateNewHandlerInExistingScript; //_openScript = _data.Action != AddHandlerAction.MapExistingHandler; _capturePhase = EditorSettings.CreationSettingsCapturePhase; _targetPhase = EditorSettings.CreationSettingsTargetPhase; _bubblingPhase = EditorSettings.CreationSettingsBubblingPhase; _cast = EditorSettings.CreationSettingsCast; _addComponentInstantiatedHandler = EditorSettings.CreationSettingsAddComponentInstantiatedHandler; _addInitializeComponentHandler = EditorSettings.CreationSettingsAddInitializeComponentHandler; _openScript = EditorSettings.CreationSettingsOpenScript; // init error msg _errorMsg = GetErrorMessage(); }
/// <summary> /// 1. Creates the persisted data from ordinary data object /// We are using the persisted data even if we are not in play mode /// This is because we want to have a single pipeline for both cases /// </summary> /// <param name="dataObject"></param> /// <returns></returns> public static AddEventHandlerPersistedData FromDataObject(AddHandlerDataObject dataObject) { AddEventHandlerPersistedData persistedData = new AddEventHandlerPersistedData { EventName = dataObject.GetEventName(), Action = dataObject.Action, ScriptPath = dataObject.ScriptPath, ClassName = dataObject.ClassName, MethodName = dataObject.MethodName, //AttachedScriptType = null == dataObject.AttachedScriptType ? null : dataObject.AttachedScriptType.ToString(), Snippet = dataObject.Snippet, SnippetLineNumber = dataObject.SnippetLineNumber, EventPhases = (int)dataObject.EventPhases, OpenScript = dataObject.OpenScript, TransformInstanceId = dataObject.TransformInstanceId, ScriptAlreadyAttached = dataObject.ScriptAlreadyAttached }; return(persistedData); }
public BooSnippetGenerator(AddHandlerDataObject data) { _data = data; }
public JavascriptSnippetGenerator(AddHandlerDataObject data) { _data = data; }
public void Reset() { _data = new AddHandlerDataObject {Adapter = Adapter}; Step = 0; foreach (IWizardStep step in _renderers) { step.Reset(); } }
/// <summary> /// 1. Creates the persisted data from ordinary data object /// We are using the persisted data even if we are not in play mode /// This is because we want to have a single pipeline for both cases /// </summary> /// <param name="dataObject"></param> /// <returns></returns> public static AddEventHandlerPersistedData FromDataObject(AddHandlerDataObject dataObject) { AddEventHandlerPersistedData persistedData = new AddEventHandlerPersistedData { EventName = dataObject.GetEventName(), Action = dataObject.Action, ScriptPath = dataObject.ScriptPath, ClassName = dataObject.ClassName, MethodName = dataObject.MethodName, //AttachedScriptType = null == dataObject.AttachedScriptType ? null : dataObject.AttachedScriptType.ToString(), Snippet = dataObject.Snippet, SnippetLineNumber = dataObject.SnippetLineNumber, EventPhases = (int)dataObject.EventPhases, OpenScript = dataObject.OpenScript, TransformInstanceId = dataObject.TransformInstanceId, ScriptAlreadyAttached = dataObject.ScriptAlreadyAttached }; return persistedData; }
/// <summary> /// Initializes the Singleton instance /// </summary> public void Initialize() { _data = AddEventHandlerDialog.Instance.Data; if (null == _data) return; //Debug.Log("_data: " + _data); _action = _data.Action; _eventName = _data.GetEventName(); _className = _data.ClassName; if (_data.Action == AddHandlerAction.CreateNewScriptAndHandler) { var attr = _eventName; if (string.IsNullOrEmpty(_eventName)) throw new Exception("Event name not defined"); if (attr.Length > 0) { string firstChar = attr[0].ToString(); attr = attr.Remove(0, 1); firstChar = firstChar.ToUpper(); attr = attr.Insert(0, firstChar); } _methodName = string.Format("On{0}", attr); } else { _methodName = _data.MethodName ?? string.Empty; } //Debug.Log("_methodName: " + _methodName); _isEditingScript = _data.Action == AddHandlerAction.CreateNewScriptAndHandler || _data.Action == AddHandlerAction.CreateNewHandlerInExistingScript; //_openScript = _data.Action != AddHandlerAction.MapExistingHandler; _capturePhase = EditorSettings.CreationSettingsCapturePhase; _targetPhase = EditorSettings.CreationSettingsTargetPhase; _bubblingPhase = EditorSettings.CreationSettingsBubblingPhase; _cast = EditorSettings.CreationSettingsCast; _addComponentInstantiatedHandler = EditorSettings.CreationSettingsAddComponentInstantiatedHandler; _addInitializeComponentHandler = EditorSettings.CreationSettingsAddInitializeComponentHandler; _openScript = EditorSettings.CreationSettingsOpenScript; // init error msg _errorMsg = GetErrorMessage(); }
public CSharpSnippetGenerator(AddHandlerDataObject data) { _data = data; }