示例#1
0
        private void _saveOutput()
        {
            BTEntry entry = this.FindEntry();

            if (entry != null)
            {
                StringBuilder sb = new StringBuilder();
                JsonWriter    w  = new JsonWriter(sb);
                w.PrettyPrint = true;
                entry.SaveOutput(w);

                string fileName = this._tfFileName.text;
                if (!this._tfFileName.text.EndsWith(".json"))
                {
                    fileName += ".json";
                }

                FileInfo     t = new FileInfo("Assets/Editor/BTEditor/Outputs/" + fileName);
                StreamWriter sw;
                sw = t.CreateText();
                sw.Write(sb.ToString());
                sw.Flush();
                sw.Dispose();
            }
        }
示例#2
0
        private void _loadProject(string projCfg)
        {
            StreamReader r      = File.OpenText(projCfg);
            string       strCfg = r.ReadToEnd();

            r.Close();
            JsonData d = JsonMapper.ToObject(strCfg);

            this._loadNode(d, null);

            string strFileName = Path.GetFileName(projCfg);

            this._tfFileName.text = strFileName;

            //agent category
            BTEntry en     = this.FindEntry();
            int     nIndex = this._lstAgents.FindIndex(x => x == en.AgentCategory);

            this.DDLAgent.popup   = nIndex;
            this.DDLAgent.enabled = false;

            //initialize method define
            MethodDefine.AgentCategory = en.AgentCategory;
            MethodDefine.initMethodDefine();
            //initialize subtree define
            SubTreeDefine.AgentCategory = en.AgentCategory;
            SubTreeDefine.initSubTreeDefine();
        }
示例#3
0
        public BTEntry FindEntry()
        {
            BTEntry entry = null;

            foreach (BaseControl ctrl in this._scrollView.children)
            {
                BTEntry n = ctrl as BTEntry;
                if (n != null)
                {
                    entry = n;
                    break;
                }
            }
            return(entry);
        }
示例#4
0
        static void RemoveCurrentNode()
        {
            BTNode n = window.root.currentControl as BTNode;

            if (n == null)
            {
                return;
            }

            n.parent.RemoveChild(n);
            window.root.currentControl = null;

            BTEntry en = n as BTEntry;

            if (en != null)
            {
                window.DDLAgent.enabled = true;
            }
        }
示例#5
0
        public void OnBtnEntryClick()
        {
            BTNode node = this.FindEntry() as BTNode;

            if (node == null)
            {
                node = this._instantiate("entry");
                string  strCategory = this.DDLAgent.selectItem;
                BTEntry en          = node as BTEntry;
                en.SetAngentCategory(strCategory);

                //initialize method define
                MethodDefine.AgentCategory = strCategory;
                MethodDefine.initMethodDefine();
                //initialize subtree define
                SubTreeDefine.AgentCategory = strCategory;
                SubTreeDefine.initSubTreeDefine();
                LogUtil.Debug(">>>>>Category:" + MethodDefine.AgentCategory);
                //disable category ddl
                this.DDLAgent.enabled = false;

                this._scrollView.AddChild(node);
            }
        }