protected override void OnLoad() { mButton = this.FindComponent <UIButton>("Sprite"); mLabel = this.FindComponent <UILabel>("Sprite/Label"); mIcon = this.FindComponent <UISprite>("Sprite/Icon"); mSrcPos = mIcon.gameObject.transform.position; EventDelegate.Add(mButton.onClick, OnButtonClick); mModule = ModuleManager.Instance.FindModule <FunctionModule>(); }
/// <summary> /// 建议不要用这个,因为策划填表时候id可能会变; /// </summary> /// <param name="resid"></param> //public static void OpenChildFunc(int resid) //{ // FunctionModule fm = ModuleManager.Instance.FindModule<FunctionModule>(); // if (fm == null) // return; // fm.OpenChildFunc(resid); //} public static void CloseChildFunc(string uiname) { FunctionModule fm = ModuleManager.Instance.FindModule <FunctionModule>(); if (fm == null) { return; } int id = FunctionModule.GetMenuIdByUIName(uiname); if (id < 0) { return; } fm.CloseChildFunc(id); }
public void SetShowInfo(int id) { AssisterItemTableItem item_res = DataManager.AssisterItemTable[id] as AssisterItemTableItem; if (item_res == null) { return; } UIAtlasHelper.SetSpriteImage(funcIcon, item_res.icon); funcName.text = item_res.funcName; funcdesc.text = item_res.desc; doBtn.CustomData = id; for (int i = 0; i < 5; i++) { starList[i].gameObject.SetActive(i < item_res.starNum); } gameObject.SetActive(true); //判断功能开启 if (item_res.funcid != -1) { FunctionModule fmodule = ModuleManager.Instance.FindModule <FunctionModule>(); MenuTableItem menu_res = DataManager.MenuTable[item_res.funcid] as MenuTableItem; if (menu_res == null) { return; } doBtn.isEnabled = fmodule.IsFunctionUnlock(menu_res.mId); } else { if (item_res.openui.Equals("stagelist")) { int tempId; SceneType type = (SceneType)(Convert.ToInt32(item_res.openParam)); doBtn.isEnabled = ModuleManager.Instance.FindModule <StageListModule>().FindLastStage(type, out tempId); } else { doBtn.isEnabled = true; } } }
void createSubMenuForm(List <int> ids, Vector3 pos) { subMenuForm.clear(); foreach (int id in ids) { MenuTableItem item = FunctionModule.GetItem(id); if (item == null) { continue; } AddBtn(item.uiName, subMenuForm.grid.gameObject, subMenuForm.SubMenuDict, id, item.icon, new Quaternion()); } subMenuForm.Reposition(); subMenuForm.SetSubFormPosition(pos); }
void UpdateAllMenus() { FunctionModule module = ModuleManager.Instance.FindModule <FunctionModule>(); Hashtable ht = module.GetUnlocks(); IDictionaryEnumerator itr = ht.GetEnumerator(); while (itr.MoveNext()) { AddMenu(Convert.ToInt32(itr.Key)); } // foreach (DictionaryEntry de in ht) // { // //MenuTableItem item = DataManager.MenuTable[(int)de.Key] as MenuTableItem; // // //if (FunctionModule.IsParentOrChildType(item)) // // return; // // // } }
public AutocompleteList() { this.SelectedIndex = -1; //retrieve the tokens from the modules //add them to the master list along with the descriptions of each List <string> tokens = new FunctionModule().GetTokens(); foreach (string token in tokens) { this.allItems.Add(new AutocompleteItem(AutocompleteItemType.Function, token, Autocomplete.ResourceManager.GetString(token))); } tokens = new ConstantModule().GetTokens(); foreach (string token in tokens) { this.allItems.Add(new AutocompleteItem(AutocompleteItemType.Constant, token, Autocomplete.ResourceManager.GetString(token))); } //sort by alpha this.allItems.Sort(new Comparison <AutocompleteItem> ((x, y) => x.Name.CompareTo(y.Name))); }
private void onFunctionClick(GameObject obj) { UIButton btn = obj.GetComponent <UIButton>(); if (btn == null) { return; } int functionid = (int)btn.CustomData; MenuTableItem item = DataManager.MenuTable[functionid] as MenuTableItem; if (item == null) { return; } if (item.soundid != -1) { SoundManager.Instance.Play(item.soundid); } if (item.menuOpType == (uint)MenuOpType.MenuOpType_OpenUI) { closeSubMenuForm(); if (string.IsNullOrEmpty(mLastOpenName) || (!string.IsNullOrEmpty(mLastOpenName) && !WindowManager.Instance.IsOpen(mLastOpenName))) { WindowManager.Instance.OpenUI(item.param); mLastOpenName = item.param; } } else if (item.menuOpType == (uint)MenuOpType.MenuOpType_Scene) { closeSubMenuForm(); string[] str = item.param.Split(new char[] { '|' }); if (str.Length != 2) { return; } SceneManager.Instance.RequestEnterScene(int.Parse(str[1])); } else if (item.menuOpType == (uint)MenuOpType.MenuOpType_ParentUI) { FunctionModule fm = ModuleManager.Instance.FindModule <FunctionModule>(); if (fm == null) { Debug.LogError("fuctionmodule not found error"); return; } List <int> ids = fm.GetChildIdsByParentId(functionid); if (ids == null || ids.Count <= 0) { return; } if (functionid != mLastOpenSubId) { createSubMenuForm(ids, UICamera.currentCamera.WorldToScreenPoint(obj.transform.position)); mLastOpenSubId = functionid; } openOrCloseSubMenuForm(); } }