Пример #1
0
        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);
        }
Пример #2
0
 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));
 }