List <GuiContentData> MakeItemList(IExprContext ctx, VariableInfoData info) { List <GuiContentData> list = new List <GuiContentData>(); List <VariableInfoData.RealValueData> allData = info.GetAllData(ctx); GuiNode.OnVoidFunc f = new GuiNode.OnVoidFunc(this.ClickedItem); for (int i = 0; i < allData.Count; i++) { GuiContentData guiContentData = new GuiContentData(); VariableInfoData.RealValueData realValueData = allData[i]; if (realValueData != null && realValueData.icon != null) { guiContentData.SetValue("itemPic", realValueData.icon); guiContentData.SetValue("hasCount", realValueData.hasCount); guiContentData.SetValue("itemCount", realValueData.count); } else { guiContentData.SetValue("itemPic", false); realValueData = null; } guiContentData.SetValue("itemTag", realValueData); guiContentData.SetValue("itemEvent", new GuiNode.VoidBinding(f, realValueData)); guiContentData.SetValue("itemEnabled", realValueData != null && realValueData.icon != null); list.Add(guiContentData); } return(list); }
internal Expr([NotNull] IToken root, [NotNull] IExprContext context) { ArgChk.NotNull(root, nameof(root)); ArgChk.NotNull(context, nameof(context)); _root = root; _context = context; FuncNames = new HashSet <string>(GetFunctionName(_root)); VarNames = new HashSet <string>(GetVariableName(_root)); }