コード例 #1
0
        public static Project Create(string name, string icon, int id)
        {
            // int bid = id * 10;
            return(new Project()
            {
                Name = name,
                Icon = icon,
                ID = id,

                /* Items = new List<Group>() {
                 *          Group.Create("Прихожая", "hall.png", 1 + bid),
                 *          Group.Create("Зал", "livingroom.png", 2  + bid),
                 *          Group.Create("Кухня", "kitchen.png", 3 + bid),
                 *          Group.Create("Спальня", "bedroom.png", 4 + bid),
                 *          Group.Create("Туалет", "toilet.png", 5 + bid) */
                Items = new ObservableCollection <Group>()
                {
                    Group.Create("Прихожая", "hall.png", IntID.NewID()),
                    Group.Create("Зал", "livingroom.png", IntID.NewID()),
                    Group.Create("Кухня", "kitchen.png", IntID.NewID()),
                    Group.Create("Спальня", "bedroom.png", IntID.NewID()),
                    Group.Create("Туалет", "toilet.png", IntID.NewID())
                }
            });
        }
コード例 #2
0
    IntID           FindEmptyID(IntID id)
    {
        foreach (TableItem item in nowList)
        {
            if (item.itemID == id)
            {
                id = id + 1;
            }
        }

        return(id);
    }
コード例 #3
0
    IntID           MoveModel(IntID nowModel, int move)       // 모델의 이전 또는 이후 코드를 얻는다.
    {
        for (int i = 0; i < modelCode.Length; i++)
        {
            if (modelCode[i] == nowModel)
            {
                return(modelCode[(i + move + modelCode.Length) % modelCode.Length]);
            }
        }

        return(nowModel);
    }
コード例 #4
0
ファイル: Group.cs プロジェクト: illrah/SmartHouse
        public static Group Create(string name, string icon, int id)
        {
            //int bid = id * 10;
            return(new Group()
            {
                Name = name,
                Icon = icon,
                ID = id,
                Items = new ObservableCollection <Scene>()
                {
                    /* Scene.LightsOff(1 + bid),
                     * Scene.Night(2 + bid),
                     * Scene.SoftLight(3 + bid),
                     * Scene.BrightLight(4 + bid) */
                    Scene.LightsOff(IntID.NewID()),
                    Scene.Night(IntID.NewID()),
                    Scene.SoftLight(IntID.NewID()),
                    Scene.BrightLight(IntID.NewID())

                    /* new GroupEvent() { CategoryID = 1, GroupID = 1, Icon = "workLight.png", InputID = 0, Name = "Рабочий свет", SecurityLevel = 0, TimePar = 0},
                     * new UIDEvent() { Icon = "socket.png", InputID = 0, Name = "Розетка плиты", SecurityLevel = 1} */
                }
            });
        }
コード例 #5
0
 public static int GetIntPropertyID(IntID id)
 {
     return(_intIDs[(int)id]);
 }
コード例 #6
0
 public static void SetGlobalInt(IntID id, int value)
 {
     Shader.SetGlobalInt(_intIDs[(int)id], value);
 }
コード例 #7
0
    void OnGUI()
    {
        UTool.CheckInitUI();

        bool change = false;

        #region File Menu
        EditorGUILayout.BeginHorizontal();
        showConst = EditorGUILayout.Foldout(showConst, "Show Const");
        GUILayout.Space(20);
        DefaultLoad();
        MenuFileIO();

        EditorGUILayout.Space();
        if (GUILayout.Button("Init", GUILayout.Width(50)) || tableConst.modelW == null)
        {
            InitTable();
        }
        EditorGUILayout.EndHorizontal();
        #endregion

        #region Edit Const Data
        if (showConst)
        {
            EditorGUILayout.BeginHorizontal();
            GUILayout.Space(20);
            for (int i = 0; i < modelCode.Length; i++)
            {
                IntID model = modelCode[i];
                if (tableConst.modelW.ContainsKey(model) == false)
                {
                    continue;
                }

                EditorGUILayout.LabelField(model.ToString(), GUILayout.Width(25));
                int w = EditorConstValue(tableConst.modelW[model], 40, "model_weight", tableConst.modelW[model]);
                if (w != tableConst.modelW[model])
                {
                    tableConst.modelW[model] = w;
                    break;
                }

                if (i + 1 < modelCode.Length)               // 종류가 다르면 다음라인에 출력.
                {
                    int r1 = modelCode[i] / 100;
                    int r2 = modelCode[i + 1] / 100;
                    if (r1 != r2)
                    {
                        EditorGUILayout.EndHorizontal();
                        EditorGUILayout.BeginHorizontal();
                        GUILayout.Space(20);
                    }
                }
            }
            if (GUILayout.Button("Apply", GUILayout.Width(50)))
            {
                EditConstWeightAllItem();
            }
            EditorGUILayout.EndHorizontal();

            EditorGUILayout.BeginHorizontal();              // [skill weight]
            GUILayout.Space(20);
            int count = 0;
            foreach (var pair in tableConst.skillW)
            {
                if (pair.Key == ItemSkill.none)
                {
                    continue;
                }

                if (count == 7)
                {
                    count = 0;
                    EditorGUILayout.EndHorizontal();
                    EditorGUILayout.BeginHorizontal();
                    GUILayout.Space(20);
                }

                EditorGUILayout.LabelField(pair.Key.ToString(), GUILayout.Width(60));
                int w = EditorConstValue(pair.Value, 40, "weapon_weight", pair.Value);
                if (w != pair.Value)
                {
                    tableConst.skillW[pair.Key] = w;
                    break;
                }
                count++;
            }
            EditorGUILayout.EndHorizontal();
            GUILayout.Space(5);
        }
        #endregion

        #region Chioce Model
        // items info
        EditorGUILayout.BeginHorizontal();
        GUILayout.Space(20);
        EditorGUILayout.LabelField("Filter:", GUILayout.Width(40));
        string newFilter = EditorGUILayout.TextField(mIDFilter, GUILayout.Width(100));
        {
            mIDFilter = newFilter;
            ReadyNowList();
        }

/*		if (GUILayout.Button (" < ", GUILayout.Width(40)))
 *              {
 *                      nowModel = MoveModel (nowModel, -1);
 *                      ReadyNowList ();
 *              }
 *              if (GUILayout.Button (" > ", GUILayout.Width(40)))
 *              {
 *                      nowModel = MoveModel (nowModel, 1);
 *                      ReadyNowList ();
 *              }
 *              IntID newModel = EditorGUILayout.IntPopup (nowModel, modelName, modelCode, GUILayout.Width(50));
 *              if (newModel != nowModel)
 *              {
 *                      nowModel = newModel;
 *                      ReadyNowList ();
 *              }*/
        EditorGUILayout.LabelField(" Model: " + nowList.Count.ToString(), GUILayout.Width(100));
        EditorGUILayout.LabelField(" All: " + tItemDict.Count.ToString(), GUILayout.Width(100));
        bool newshowAll = EditorGUILayout.ToggleLeft("Show All", showAll);
        if (showAll != newshowAll)
        {
            showAll = newshowAll;
            ReadyNowList();
        }
        EditorGUILayout.EndHorizontal();
        #endregion
        #region Field Name
        EditorGUILayout.BeginHorizontal();          // ablility list
        GUILayout.Space(20);
        EditorGUILayout.LabelField("DN        ", GUILayout.Width(25));
        EditorGUILayout.LabelField("Insert    ", GUILayout.Width(40));
        EditorGUILayout.LabelField("ItemID    ", GUILayout.Width(60));
        EditorGUILayout.LabelField("Scale     ", GUILayout.Width(30));
        EditorGUILayout.LabelField("Skill     ", GUILayout.Width(60));
        EditorGUILayout.LabelField("capEnergy ", GUILayout.Width(60));
        EditorGUILayout.LabelField("genEnergy ", GUILayout.Width(60));
        EditorGUILayout.LabelField("capBody   ", GUILayout.Width(55));
        EditorGUILayout.LabelField("capShield ", GUILayout.Width(60));
        EditorGUILayout.LabelField("genShield ", GUILayout.Width(60));
        EditorGUILayout.LabelField("capStorage", GUILayout.Width(60));
        EditorGUILayout.LabelField("capAccel  ", GUILayout.Width(60));
        EditorGUILayout.LabelField("capSpeed  ", GUILayout.Width(60));
        EditorGUILayout.LabelField("capSight  ", GUILayout.Width(60));
        //EditorGUILayout.LabelField ("gain      ", GUILayout.Width(40));
        refreshgain = GUILayout.Button("gain", GUILayout.Width(40));
        EditorGUILayout.EndHorizontal();
        #endregion
        #region Edit Const ablility rate
        if (showConst)
        {
            EditorGUILayout.BeginHorizontal();              // ablility list
            GUILayout.Space(20);
            if (GUILayout.Button(editConst == "" ? "" : "Cancel", GUILayout.Width(60)))
            {
                editAbillR = new DicAbilityRate(tableConst.abillR);
                editConst  = "";
                EditorUtility.FocusProjectWindow();                 // focus out
            }
            if (GUILayout.Button(editConst == "" ? "" : "Change: " + editConst, GUILayout.Width(167)))
            {
                EditConstRateAllItem();
                editConst = "";
                EditorUtility.FocusProjectWindow();                 // focus out
            }
            editAbillR[ItemAbility.capEnergy] = EditorConstValue(editAbillR[ItemAbility.capEnergy], 60, "capEnergy", tableConst.abillR[ItemAbility.capEnergy]);
            editAbillR[ItemAbility.genEnergy] = EditorConstValue(editAbillR[ItemAbility.genEnergy], 60, "genEnergy", tableConst.abillR[ItemAbility.genEnergy]);
            editAbillR[ItemAbility.capBody]   = EditorConstValue(editAbillR[ItemAbility.capBody], 55, "capBody", tableConst.abillR[ItemAbility.capBody]);
            editAbillR[ItemAbility.capShield] = EditorConstValue(editAbillR[ItemAbility.capShield], 60, "capShield", tableConst.abillR[ItemAbility.capShield]);
            editAbillR[ItemAbility.genShield] = EditorConstValue(editAbillR[ItemAbility.genShield], 60, "genShield", tableConst.abillR[ItemAbility.genShield]);
            GUILayout.Space(60 + 4);
            editAbillR[ItemAbility.capAccel] = EditorConstValue(editAbillR[ItemAbility.capAccel], 60, "capAccel", tableConst.abillR[ItemAbility.capAccel]);
            editAbillR[ItemAbility.capSpeed] = EditorConstValue(editAbillR[ItemAbility.capSpeed], 60, "capSpeed", tableConst.abillR[ItemAbility.capSpeed]);
            EditorConstValue(0, 60, "capSight", 0);
            EditorGUILayout.EndHorizontal();
        }
        #endregion

        #region Edit Item List
        scrollpos = EditorGUILayout.BeginScrollView(new Vector2(0, scrollpos.y));
        foreach (TableItem item in nowList)
        {
            EditorGUILayout.BeginHorizontal();
            GUILayout.Space(20);
            if (GUILayout.Button("D", GUILayout.Width(25)))
            {
                newItem = item;

                tItemDict.Remove(item.itemID);

                ReadyNowList();
            }
            if (GUILayout.Button("+", GUILayout.Width(40)))
            {
                TableItem insert = item;
                IntID     id     = item.itemID;
                for (; tItemDict.ContainsKey(id + 1); id++)
                {
                    TableItem saveitem = tItemDict[id + 1];
                    insert.itemID            = id + 1;
                    tItemDict[insert.itemID] = insert;
                    insert = saveitem;
                }
                insert.itemID            = id + 1;
                tItemDict[insert.itemID] = insert;

                ReadyNowList();
            }
            change = false;
            TableItem eitem = GUIEditor_Item(item, ref change);
            if (change)
            {
                if (eitem.itemID == item.itemID)
                {
                    tItemDict[eitem.itemID] = eitem;
                }

                ReadyNowList();
            }
            EditorGUILayout.EndHorizontal();
        }
        EditorGUILayout.EndScrollView();
        #endregion

        #region Add Item
        EditorGUILayout.BeginHorizontal();
        GUILayout.Space(20);
        if (GUILayout.Button("ADD", GUILayout.Width(70)))
        {
            tItemDict[newItem.itemID] = newItem;
            ReadyNowList();
        }
        change  = false;
        newItem = GUIEditor_Item(newItem, ref change, true);
        EditorGUILayout.EndHorizontal();
        #endregion
        #region Edit ItemID
        EditorGUILayout.BeginHorizontal();
        GUILayout.Space(20);
        if (changeID != 0)
        {
            EditorGUILayout.LabelField(changeID.ToString(), GUILayout.Width(60));
            changeEditID = EditorGUILayout.IntField(changeEditID, GUILayout.Width(60));
            if (GUILayout.Button("Change", GUILayout.Width(100)))
            {
                if (changeEditID == changeID)
                {
                    changeID = 0;
                }
                else
                {
                    if (tItemDict.ContainsKey(changeEditID) == false)
                    {
                        TableItem item = tItemDict[changeID];
                        item.itemID            = changeEditID;
                        tItemDict[item.itemID] = item;
                        tItemDict.Remove(changeID);

                        ReadyNowList();

                        changeID = 0;
                    }
                }
            }
        }
        EditorGUILayout.EndHorizontal();
        #endregion
    }
コード例 #8
0
        public ActionResult ResourceEditor(FormCollection form)
        {
            string _cm = form["cm"];

            this.cm            = _cm;
            this.resource_type = form["resource_type"];

            KTResource resource = null;
            string     id       = form["objid"];

            resource = new KTResource {
                code         = form["code"],
                parent       = form["parent_id"],
                ancestorids  = form["parent_id"],      //TODO 到根的层级
                myManager    = form["manager"],
                myManagerIds = form["courtesy_title"], //TODO 到根的层级
                area         = Convert.ToInt32(form["area"]),
                tags         = form["resource_tags"],
                notes        = form["note"],
                ownerx       = this.UserID,
                name         = form["fld_surname"] + " " + form["fld_name"],
                inherit      = false,
                propagate    = true,
                hidden       = false,
            };

            // 设置manager myManagerIds字段,就是上级主管人
            string _managerid = form["manager"];

            if (!string.IsNullOrEmpty(_managerid))
            {
                KTResource _managerResourceInfo = service.GetDetail(Convert.ToInt32(_managerid));
                string     _mids = _managerResourceInfo.myManagerIds ?? "";
                resource.myManager    = _managerid;
                resource.myManagerIds = _mids + _managerid + "^";
            }

            // 设置manager myManagerIds字段,就是上级主管人
            string _parentid = form["parent_id"];

            if (!string.IsNullOrEmpty(_parentid))
            {
                KTResource _parentResourceInfo = service.GetDetail(Convert.ToInt32(_parentid));
                string     _pids = _parentResourceInfo.ancestorids ?? "";
                resource.parent      = _parentid;
                resource.ancestorids = _pids + _parentid + "^";
            }


            if (this.resource_type.ToLower() == "com.twproject.resource.person")
            {
                // 人
                ViewBag.Type           = "person";
                resource.discriminator = "PERSON";
                resource.personName    = form["fld_name"];
                resource.personSurname = form["fld_surname"];
                resource.courtesyTitle = form["courtesy_title"];

                if (this.cm.ToLower() == "sv" && id.ToLower() == "newemptyid")
                {
                    resource.creationDate = DateTime.Now;
                    resource.creator      = this.User.Identity.Name;
                    resource.lastModified = DateTime.Now;
                    resource.lastModifier = this.User.Identity.Name;
                    resource.id           = service.Maxid().id.ToString();
                    KTResource result = service.Insert(resource);
                }
                else
                {
                    resource.id           = id;
                    resource.lastModified = DateTime.Now;
                    resource.lastModifier = this.User.Identity.Name;
                    int count = service.Update(resource);
                }
            }
            else
            {
                // 加部门
                resource.discriminator = "COMPANY";
                resource.typex         = Convert.ToInt32(form["type"]);
                if (this.cm.ToLower() == "sv" && id.ToLower() == "newemptyid")
                {
                    resource.creationDate = DateTime.Now;
                    resource.creator      = this.User.Identity.Name;
                    resource.lastModified = DateTime.Now;
                    resource.lastModifier = this.User.Identity.Name;
                    IntID _id = service.Maxid();
                    resource.id = _id.id.ToString();
                    KTResource result = service.Insert(resource);
                }
                else
                {
                    resource.id           = id;
                    resource.lastModified = DateTime.Now;
                    resource.lastModifier = this.User.Identity.Name;
                    int count = service.Update(resource);
                }
                ViewBag.Type = "company";
            }

            ViewBag.ResourceInfo = resource;
            TempData["resource"] = resource;

            return(View());
        }