static public AnimatingObject InterpretScope(string scope, out string errorReport) { var words = new List <string>(scope.Split(Utils.WordSeperators, StringSplitOptions.RemoveEmptyEntries)); var tempObj = AnimatingObject.InterpretScope(words, out errorReport); return(tempObj); }
/* * GetContext * GetSnippet * ParseData * AddToLib * GetPreviewBitmap */ /// <summary> /// [ Factory method ] /// </summary> /// <returns></returns> static public AnimatingObject InterpretScope(List <string> codeWords, out string errorReport) { AnimatingObject result = null; errorReport = ""; // there should be at least a TAG and an ID if (codeWords.Count <= 1) { return(null); } result = CreateTypeFromTag(codeWords[0]); if (result == null) { return(null); } errorReport = (result as IScriptable)?.ParseData(codeWords); if (errorReport != "" && errorReport != null) { return(null); } return(result); }
/// <summary> /// WARNING: Should call Object.SaveToLib() instead... /// </summary> /// <param name="obj"></param> public void Add(AnimatingObject obj) { if (obj == null) { return; } if (animatingObjects.ContainsKey(obj.StringId)) { animatingObjects[obj.StringId] = obj; } else { animatingObjects.Add(obj.StringId, obj); } }