Example #1
0
        /**
         * 1行分のフィールドからエリアデータを取得する
         * @input fields:
         * @output  取得したエリアデータ
         */
        private MemLogArea GetMemAreaText(Dictionary <string, string> fields, MemLogAreaManager manager)
        {
            MemLogArea area = new MemLogArea();

            // area,name:"area1",parent:"root",color=FF000000, image="icon1"

            foreach (KeyValuePair <string, string> kvp in fields)
            {
                if (kvp.Value != null)
                {
                    switch (kvp.Key.ToLower())
                    {
                    case "name":
                        area.Name = kvp.Value;
                        break;

                    case "parent":
                        area.ParentArea = manager.searchArea(kvp.Value);
                        break;

                    case "color":
                        area.Color = Convert.ToUInt32(kvp.Value, 16);
                        break;

                    case "image":
                        area.Image = images.GetImage(kvp.Value);
                        break;
                    }
                }
            }
            return(area);
        }
Example #2
0
        /**
         * バイナリエリアデータを読み込む
         */
        private void ReadLogAreaBin(UFileStream fs)
        {
            MemLogArea area = new MemLogArea();

            // エリア名の長さ
            // エリア名
            area.Name = fs.GetSizeString();

            // 親のエリア名の長さ
            // 親のエリア名
            area.ParentArea = areaManager.searchArea(fs.GetSizeString());

            // 色
            area.Color = fs.GetUInt32();

            // エリアを追加
            areaManager.AddArea(area);
        }