/// <summary> /// Get a built-in FutScript function's signature from a function name /// </summary> /// <param name="function_name"></param> /// <returns></returns> string GetFunctionSignature(string function_name) { MethodInfo method_info = Script.GetBuiltInFunction(function_name); FunctionParserAttribute function_info = (FunctionParserAttribute)method_info.GetCustomAttribute(typeof(FunctionParserAttribute)); return(function_info.Signature); }
/// <summary> /// Adds menu strip sections based on FunctionParserAttribute.Category. /// Adds menu strip items within the sections based on FunctionParserAttribute.Signature. /// </summary> void InitializeMenuStrip() { foreach (MethodInfo mi in Script.GetBuiltInFunctions()) { FunctionParserAttribute function_info = (FunctionParserAttribute)mi.GetCustomAttribute(typeof(FunctionParserAttribute)); ToolStripMenuItem dropdown_menu = GetOrAddDropDownMenu(menuStrip1, function_info.Category); ToolStripMenuItem func_sig_mene_item = new ToolStripMenuItem(function_info.Signature); func_sig_mene_item.Click += QuickCode; dropdown_menu.DropDownItems.Add(func_sig_mene_item); } }