--[[ Functions to implement slash commands for FlexBar Last Modified 12/26/2004 Initial version 08/12/2005 Changed calls for FB_ReformGroups to either FB_ReformGroup or FB_DisbandAllGroups - Sherkhan 08/12/2005 Added Text3, ShadeText3, JustifyText3 Fields - Sherkhan --]] local util = Utility_Class:New() local nextcommand = 0; local currentconfig = nil local REQUIRED = true local STRICT = true local OPTIONAL = false local NON_STRICT = false local NO_DEFAULT = nil; function FB_Command_AddCommands(scmd) -- Populate the command object, scmd, with the commands we want available -- args are command, function, group, usage scmd:AddCommand("info", FB_Command_ToggleButtonInfo, "misc", "/Flexbar Info") scmd:AddCommand("scripts", FB_Command_Scripts, "misc", "/Flexbar Scripts") scmd:AddCommand("events", FB_DisplayEventEditor, "misc", "/Flexbar Events") scmd:AddCommand("perf", FB_Show_PerformanceOptions, "misc", "/Flexbar Perf") scmd:AddCommand("autoitems", FB_DisplayAutoItems, "misc", "/Flexbar AutoItems") scmd:AddCommand("options", FB_ShowGlobalOptions, "misc", "/Flexbar Options") scmd:AddCommand("safeload", FB_Command_SafeLoad, "misc", "/Flexbar SafeLoad State=<'on' | 'off'>") scmd:AddParam("safeload","state",REQUIRED,STRICT,{"string"},{"on","On","off","Off"},NO_DEFAULT) scmd:AddCommand("loadprofile", FB_Command_LoadProfile, "misc", "/Flexbar LoadProfile Profile='profile'") scmd:AddParam("loadprofile","profile",REQUIRED,NON_STRICT,{"string"},nil,NO_DEFAULT) scmd:AddCommand("deleteprofile", FB_Command_DeleteProfile, "misc", "/Flexbar DeleteProfile Profile='profile' confirm='yes'") scmd:AddParam("deleteprofile","profile",REQUIRED,NON_STRICT,{"string"},nil,NO_DEFAULT) scmd:AddParam("deleteprofile","confirm",REQUIRED,STRICT,{"string"},{"yes","Yes"}, nil) scmd:AddCommand("saveprofile", FB_Command_SaveProfile, "misc", "/Flexbar SaveProfile Profile='profile'") scmd:AddParam("saveprofile","profile",REQUIRED,NON_STRICT,{"string"},nil,NO_DEFAULT) scmd:AddCommand("listprofiles", FB_Command_ListProfiles, "misc", "/FlexBar ListProfiles") scmd:AddCommand("remap", FB_Command_ReMap, "misc", "/FlexBar ReMap Button= Base= [Reset='True']") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("remap","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("remap","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("remap","base" ,REQUIRED,STRICT,{"number"},{lowerbound=1,upperbound=120}, nil) scmd:AddParam("remap","toggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddParam("remap","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("remap","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("remap","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("remap","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("remap","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("remap","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("remap","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("echo", FB_Command_Echo, "misc", "/FlexBar Echo Button= Base= [Reset='True']") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("echo","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("echo","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("echo","base" ,REQUIRED,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("echo","toggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddParam("echo","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("echo","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("echo","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("echo","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("echo","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("echo","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("echo","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("advanced", FB_Command_Advanced, "misc", "/FlexBar Advanced Button= state=<'on' | 'off'>") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("advanced","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("advanced","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("advanced","state" ,REQUIRED,NON_STRICT,{"string"},{"on","On","off","Off"}, nil) scmd:AddCommand("use", FB_Command_Use, "misc", "/FlexBar Use Button=") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("use","button",REQUIRED,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("use","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("use","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("use","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("use","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("use","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("use","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("runscript", FB_Command_RunScript, "misc", "/FlexBar RunScript Script='scriptname'") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("runscript","script",REQUIRED,NON_STRICT,{"string"},nil, nil) scmd:AddParam("runscript","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("runscript","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("runscript","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("runscript","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("runscript","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("runscript","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("runmacro", FB_Command_RunMacro, "misc", "/FlexBar RunMacro Macro='macroname'") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("runmacro","macro",REQUIRED,NON_STRICT,{"string","table"},nil, nil) scmd:AddParam("runmacro","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("runmacro","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("runmacro","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("runmacro","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("runmacro","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("runmacro","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("resetall", FB_Command_ResetAll, "misc", "/FlexBar ResetAll Confirm='yes'") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("resetall","confirm",REQUIRED,STRICT,{"string"},{"yes","Yes"}, nil) scmd:AddCommand("restore", FB_Command_Restore, "misc", "/FlexBar Restore Confirm='yes'") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("restore","confirm",REQUIRED,STRICT,{"string"},{"yes","Yes"}, nil) scmd:AddCommand("loadconfig", FB_Command_LoadConfig, "misc", "/FlexBar LoadConfig Config='ConfigName'") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("loadconfig","config",REQUIRED,NON_STRICT,{"string"},nil, nil) scmd:AddCommand("hidegrid", FB_Command_HideGrid, "misc", "/FlexBar HideGrid Button=") scmd:AddParam("hidegrid","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("hidegrid","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("hidegrid","toggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("showgrid", FB_Command_ShowGrid, "misc", "/FlexBar ShowGrid Button=") scmd:AddParam("showgrid","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("showgrid","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("showgrid","toggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("lockicon", FB_Command_LockIcon, "misc", "/FlexBar LockIcon Button= [Off='true']") scmd:AddParam("lockicon","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("lockicon","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("lockicon","off" ,OPTIONAL,STRICT,{"string"},{"true", "True"},nil) scmd:AddCommand("text", FB_Command_Text, "misc", "/FlexBar Text Button= Text=") scmd:AddParam("text","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("text","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("text","text" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("text","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("text","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("text","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("text","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("text","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("text","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("text2", FB_Command_Text2, "misc", "/FlexBar Text2 Button= Text=") scmd:AddParam("text2","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("text2","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("text2","text" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("text2","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("text2","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("text2","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("text2","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("text2","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("text2","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("text3", FB_Command_Text3, "misc", "/FlexBar Text3 Button= Text=") scmd:AddParam("text3","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("text3","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("text3","text" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("text3","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("text3","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("text3","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("text3","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("text3","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("text3","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("justifytext", FB_Command_JustifyText, "misc", "/FlexBar JustifyText Button= Pos=") scmd:AddParam("justifytext","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("justifytext","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("justifytext","pos" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("justifytext","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("justifytext","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("justifytext","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("justifytext","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("justifytext","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("justifytext","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("justifytext2", FB_Command_JustifyText2, "misc", "/FlexBar Justifytext2 Button= Pos=") scmd:AddParam("justifytext2","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("justifytext2","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("justifytext2","pos" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("justifytext2","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("justifytext2","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("justifytext2","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("justifytext2","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("justifytext2","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("justifytext2","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("justifytext3", FB_Command_JustifyText3, "misc", "/FlexBar Justifytext3 Button= Pos=") scmd:AddParam("justifytext3","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("justifytext3","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("justifytext3","pos" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("justifytext3","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("justifytext3","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("justifytext3","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("justifytext3","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("justifytext3","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("justifytext3","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("verbose", FB_Command_Verbose, "misc", "/FlexBar Verbose State=<'on' | 'off'>") scmd:AddParam("verbose","state",REQUIRED,STRICT,{"string"},{"on","On","Off","off"},"on") scmd:AddCommand("tooltip", FB_Command_Tooltip, "misc", "/FlexBar Tooltip State=<'on' | 'off'>") scmd:AddParam("tooltip","state",REQUIRED,STRICT,{"string"},{"on","On","Off","off"},"on") scmd:AddCommand("raise", FB_Command_Raise, "misc", "/FlexBar Raise Event= Source= In=") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("raise","event" ,REQUIRED,NON_STRICT,{"string"},NO_BOUNDS,NO_DEFAULT) scmd:AddParam("raise","source",OPTIONAL,NON_STRICT,NO_TYPES,NO_BOUNDS,NO_DEFAULT) scmd:AddParam("raise","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("raise","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("raise","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("raise","in" ,OPTIONAL,STRICT,{"number"},{lowerbound=0},0) scmd:AddParam("raise","name" ,REQUIRED,NON_STRICT,{"string"},nil,NO_DEFAULT) scmd:AddParam("raise","toggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddParam("raise","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("raise","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("flexscript", FB_Command_FlexScript, "appearance", "/FlexBar FlexScript ID= Texture='texture' Script='script' Name='Name' [Reset='true'] [Toggle='true']") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("flexscript","id" ,REQUIRED,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("flexscript","texture" ,REQUIRED,STRICT,{"string"},nil, "") scmd:AddParam("flexscript","toggle" ,OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddParam("flexscript","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("flexscript","name" ,REQUIRED,NON_STRICT,{"string"},nil,nil) scmd:AddParam("flexscript","script",REQUIRED,NON_STRICT,{"string"},nil, nil) scmd:AddCommand("flexmacro", FB_Command_FlexMacro, "appearance", "/FlexBar FlexMacro ID= Texture='texture' Macro='macro' Name='Name' [Reset='true'] [Toggle='true']") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("flexmacro","id" ,REQUIRED,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("flexmacro","texture" ,REQUIRED,STRICT,{"string"},nil, "") scmd:AddParam("flexmacro","toggle" ,OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddParam("flexmacro","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("flexmacro","name" ,REQUIRED,NON_STRICT,{"string"},nil,nil) scmd:AddParam("flexmacro","macro",REQUIRED,NON_STRICT,{"string","table"},nil, nil) scmd:AddCommand("flexpet", FB_Command_FlexPet, "appearance", "/FlexBar FlexPet ID= PetID= [Reset='true'] [Toggle='true']") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("flexpet","id" ,REQUIRED,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("flexpet","toggle" ,OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddParam("flexpet","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("flexpet","petid" ,REQUIRED,NON_STRICT,{"number"},nil, nil) scmd:AddCommand("clearflex", FB_Command_ClearFlex, "appearance", "/FlexBar ClearFlex ID=") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("clearflex","id" ,REQUIRED,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddCommand("disable", FB_Command_Disable, "misc", "/FlexBar Disable Button= state=<'on' | 'off'>") -- populate the parameter list for this command -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("disable","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, NO_DEFAULT) scmd:AddParam("disable","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, NO_DEFAULT) scmd:AddParam("disable","state" ,REQUIRED,NON_STRICT,{"string"},{"on","On","off","Off"}, NO_DEFAULT) scmd:AddParam("disable","toggle",OPTIONAL,STRICT,{"string"},{"true"},NO_DEFAULT) scmd:AddParam("disable","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("disable","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("disable","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("disable","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("disable","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("disable","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("hide", FB_Command_Hide, "appearance", "/FlexBar Hide Button=") -- arguments are: command, parameter name, required, strict, types, allowed, default scmd:AddParam("hide","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("hide","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("hide","toggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddParam("hide","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("hide","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("hide","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("hide","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("hide","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("hide","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("show", FB_Command_Show, "appearance", "/FlexBar Show Button=") scmd:AddParam("show","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("show","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("show","toggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddParam("show","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("show","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("show","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("show","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("show","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("show","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("fade", FB_Command_Fade, "appearance", "/FlexBar Fade Button= Alpha=") scmd:AddParam("fade","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("fade","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("fade","alpha" ,REQUIRED,STRICT,{"number"},{lowerbound=1,upperbound=10},nil) scmd:AddParam("fade","toggle",OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=10},nil) scmd:AddParam("fade","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("fade","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("fade","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("fade","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("fade","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("fade","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("scale", FB_Command_Scale, "appearance", "/FlexBar Scale Button= Scale=") scmd:AddParam("scale","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("scale","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("scale","scale" ,REQUIRED,STRICT,{"number"},{lowerbound=5,upperbound=50},nil) scmd:AddParam("scale","toggle",OPTIONAL,STRICT,{"number"},{lowerbound=5,upperbound=50},nil) scmd:AddParam("scale","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("scale","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("scale","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("scale","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("scale","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("scale","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("scale","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("shade", FB_Command_Shade, "appearance", "/FlexBar Shade Button= Color=<[r g b]>") scmd:AddParam("shade","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("shade","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("shade","color" ,REQUIRED,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shade","toggle",OPTIONAL,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shade","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("shade","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("shade","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shade","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("shade","iftarg",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shade","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("shade","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("shade","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("shadetext", FB_Command_ShadeText, "appearance", "/FlexBar ShadeText Button= Color=<[r g b]>") scmd:AddParam("shadetext","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("shadetext","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("shadetext","color" ,REQUIRED,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shadetext","toggle",OPTIONAL,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shadetext","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("shadetext","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("shadetext","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shadetext","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("shadetext","iftarg",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shadetext","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("shadetext","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("shadetext","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("shadetext2", FB_Command_ShadeText2, "appearance", "/FlexBar ShadeText2 Button= Color=<[r g b]>") scmd:AddParam("shadetext2","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("shadetext2","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("shadetext2","color" ,REQUIRED,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shadetext2","toggle",OPTIONAL,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shadetext2","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("shadetext2","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("shadetext2","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shadetext2","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("shadetext2","iftarg",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shadetext2","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("shadetext2","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("shadetext2","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("shadetext3", FB_Command_ShadeText3, "appearance", "/FlexBar ShadeText3 Button= Color=<[r g b]>") scmd:AddParam("shadetext3","button",OPTIONAL,STRICT,{"number","table"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("shadetext3","group" ,OPTIONAL,STRICT,{"number"},{lowerbound=1,upperbound=FBNumButtons}, nil) scmd:AddParam("shadetext3","color" ,REQUIRED,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shadetext3","toggle",OPTIONAL,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shadetext3","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("shadetext3","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("shadetext3","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shadetext3","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("shadetext3","iftarg",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shadetext3","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("shadetext3","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("shadetext3","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("shadetooltip", FB_Command_ShadeToolTip, "appearance", "/FlexBar ShadeToolTip Color=<[r g b]>") scmd:AddParam("shadetext","color" ,REQUIRED,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shadetext","toggle",OPTIONAL,STRICT,{"number","table"},{lowerbound=0,upperbound=10},nil) scmd:AddParam("shadetext","reset" ,OPTIONAL,NON_STRICT,{"string"},{"true"},nil) scmd:AddParam("shadetext","on" ,OPTIONAL,NON_STRICT,{"string"},FBEventList,nil) scmd:AddParam("shadetext","target",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shadetext","if" ,OPTIONAL,NON_STRICT,{"string"},FBConditionList,nil) scmd:AddParam("shadetext","iftarg",OPTIONAL,NON_STRICT,nil,nil,nil) scmd:AddParam("shadetext","in" ,OPTIONAL,NON_STRICT,{"number"},nil,nil) scmd:AddParam("shadetext","tname" ,OPTIONAL,NON_STRICT,{"string"},nil,nil) scmd:AddParam("shadetext","ttoggle",OPTIONAL,STRICT,{"string"},{"true"},nil) scmd:AddCommand("settexture", FB_Command_SetTexture, "appearance", "/FlexBar SetTexture Button=