private IEnumerator DownloadImage(string url, UnityEngine.UI.Dropdown.OptionData option) { WWW www = new WWW(url); yield return(www); option.image = Sprite.Create(www.texture, new Rect(0, 0, 50, 50), new Vector2(0, 0)); }
public override void ReadFrom(object obj) { base.ReadFrom(obj); if (obj == null) { return; } UnityEngine.UI.Dropdown.OptionData o = (UnityEngine.UI.Dropdown.OptionData)obj; text = o.text; image = o.image.GetMappedInstanceID(); }
static int _g_get_image(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); try { UnityEngine.UI.Dropdown.OptionData __cl_gen_to_be_invoked = (UnityEngine.UI.Dropdown.OptionData)translator.FastGetCSObj(L, 1); translator.Push(L, __cl_gen_to_be_invoked.image); } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } return(1); }
static int _s_set_image(RealStatePtr L) { try { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); UnityEngine.UI.Dropdown.OptionData gen_to_be_invoked = (UnityEngine.UI.Dropdown.OptionData)translator.FastGetCSObj(L, 1); gen_to_be_invoked.image = (UnityEngine.Sprite)translator.GetObject(L, 2, typeof(UnityEngine.Sprite)); } catch (System.Exception gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + gen_e)); } return(0); }
static int _g_get_text(RealStatePtr L) { try { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); UnityEngine.UI.Dropdown.OptionData gen_to_be_invoked = (UnityEngine.UI.Dropdown.OptionData)translator.FastGetCSObj(L, 1); LuaAPI.lua_pushstring(L, gen_to_be_invoked.text); } catch (System.Exception gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + gen_e)); } return(1); }
public override object WriteTo(object obj, System.Collections.Generic.Dictionary <long, UnityEngine.Object> objects) { obj = base.WriteTo(obj, objects); if (obj == null) { return(null); } UnityEngine.UI.Dropdown.OptionData o = (UnityEngine.UI.Dropdown.OptionData)obj; o.text = text; o.image = (UnityEngine.Sprite)objects.Get(image); return(o); }
static int _s_set_text(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); try { UnityEngine.UI.Dropdown.OptionData __cl_gen_to_be_invoked = (UnityEngine.UI.Dropdown.OptionData)translator.FastGetCSObj(L, 1); __cl_gen_to_be_invoked.text = LuaAPI.lua_tostring(L, 2); } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } return(0); }
/// <summary> /// /// </summary> /// <returns></returns> public static List<UnityEngine.UI.Dropdown.OptionData> GetRegionNames() { List<List<object>> _values = DBQuery("SELECT REGIONNAME FROM Regions"); List<UnityEngine.UI.Dropdown.OptionData> _regionNames = new List<UnityEngine.UI.Dropdown.OptionData>(); for (int i = 0; i < _values.Count; i++) { UnityEngine.UI.Dropdown.OptionData _data = new UnityEngine.UI.Dropdown.OptionData(); _data.text = _values[i][0].ToString(); _regionNames.Add(_data); } return _regionNames; }
IEnumerator setupDrodown() { started = true; yield return(new WaitForSeconds(0.1f)); for (int i = 0; i < EnviroSkyMgr.instance.GetCurrentWeatherPresetList().Count; i++) { UnityEngine.UI.Dropdown.OptionData o = new UnityEngine.UI.Dropdown.OptionData(); o.text = EnviroSkyMgr.instance.GetCurrentWeatherPresetList()[i].Name; weatherDropdown.options.Add(o); } yield return(new WaitForSeconds(0.1f)); UpdateWeatherSlider(); }
static int __CreateInstance(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); try { if (LuaAPI.lua_gettop(L) == 1) { UnityEngine.UI.Dropdown.OptionData __cl_gen_ret = new UnityEngine.UI.Dropdown.OptionData(); translator.Push(L, __cl_gen_ret); return(1); } if (LuaAPI.lua_gettop(L) == 2 && (LuaAPI.lua_isnil(L, 2) || LuaAPI.lua_type(L, 2) == LuaTypes.LUA_TSTRING)) { string text = LuaAPI.lua_tostring(L, 2); UnityEngine.UI.Dropdown.OptionData __cl_gen_ret = new UnityEngine.UI.Dropdown.OptionData(text); translator.Push(L, __cl_gen_ret); return(1); } if (LuaAPI.lua_gettop(L) == 2 && translator.Assignable <UnityEngine.Sprite>(L, 2)) { UnityEngine.Sprite image = (UnityEngine.Sprite)translator.GetObject(L, 2, typeof(UnityEngine.Sprite)); UnityEngine.UI.Dropdown.OptionData __cl_gen_ret = new UnityEngine.UI.Dropdown.OptionData(image); translator.Push(L, __cl_gen_ret); return(1); } if (LuaAPI.lua_gettop(L) == 3 && (LuaAPI.lua_isnil(L, 2) || LuaAPI.lua_type(L, 2) == LuaTypes.LUA_TSTRING) && translator.Assignable <UnityEngine.Sprite>(L, 3)) { string text = LuaAPI.lua_tostring(L, 2); UnityEngine.Sprite image = (UnityEngine.Sprite)translator.GetObject(L, 3, typeof(UnityEngine.Sprite)); UnityEngine.UI.Dropdown.OptionData __cl_gen_ret = new UnityEngine.UI.Dropdown.OptionData(text, image); translator.Push(L, __cl_gen_ret); return(1); } } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } return(LuaAPI.luaL_error(L, "invalid arguments to UnityEngine.UI.Dropdown.OptionData constructor!")); }
public IEnumerator LoadModels(string collectionId) { this.StatusMsg = "Loading Models...."; this.WWWLoader = new WWW(string.Format(@"http://www.arcapt.com/api/v1/collections/{0}/items?api_key={1}", collectionId, this.apiKey)); yield return(WWWLoader); if (!this.WWWLoader.isDone) { yield return(this.WWWLoader); } this.CurrentModels = JsonConvert.DeserializeObject <Model[]>(this.WWWLoader.text); var options = new List <UnityEngine.UI.Dropdown.OptionData>() { new UnityEngine.UI.Dropdown.OptionData { text = "Models" } }; for (int i = 0; i < this.CurrentModels.Length; i++) { var model = this.CurrentModels[i]; var option = new UnityEngine.UI.Dropdown.OptionData { text = model.name }; options.Add(option); if (!string.IsNullOrEmpty(model.thumbnail)) { // DownloadImage(model.thumbnail, option); } } var dropdownModels = GameObject.Find("DropdownModels").GetComponent <UnityEngine.UI.Dropdown>(); dropdownModels.ClearOptions(); dropdownModels.AddOptions(options); dropdownModels.value = 0; dropdownModels.Select(); dropdownModels.RefreshShownValue(); this.StatusMsg = "Select a 3D model to load."; }
public static int constructor(IntPtr l) { try { int argc = LuaDLL.lua_gettop(l); UnityEngine.UI.Dropdown.OptionData o; if(argc==1){ o=new UnityEngine.UI.Dropdown.OptionData(); pushValue(l,true); pushValue(l,o); return 2; } else if(matchType(l,argc,2,typeof(string))){ System.String a1; checkType(l,2,out a1); o=new UnityEngine.UI.Dropdown.OptionData(a1); pushValue(l,true); pushValue(l,o); return 2; } else if(matchType(l,argc,2,typeof(UnityEngine.Sprite))){ UnityEngine.Sprite a1; checkType(l,2,out a1); o=new UnityEngine.UI.Dropdown.OptionData(a1); pushValue(l,true); pushValue(l,o); return 2; } else if(argc==3){ System.String a1; checkType(l,2,out a1); UnityEngine.Sprite a2; checkType(l,3,out a2); o=new UnityEngine.UI.Dropdown.OptionData(a1,a2); pushValue(l,true); pushValue(l,o); return 2; } return error(l,"New object failed."); } catch(Exception e) { return error(l,e); } }
/// <summary> /// Read the data into the specified value. /// </summary> /// <param name="value">Value.</param> /// <param name="reader">Reader.</param> public override void ReadInto(object value, ISaveGameReader reader) { UnityEngine.UI.Dropdown.OptionData optionData = (UnityEngine.UI.Dropdown.OptionData)value; foreach (string property in reader.Properties) { switch (property) { case "text": optionData.text = reader.ReadProperty <System.String> (); break; case "image": if (optionData.image == null) { optionData.image = reader.ReadProperty <UnityEngine.Sprite> (); } else { reader.ReadIntoProperty <UnityEngine.Sprite> (optionData.image); } break; } } }
// Add a new drop-down list item with the specified values. private DropdownMenuItem AddItem(OptionData data, DropdownMenuItem itemTemplate, List <DropdownMenuItem> items) { // Add a new item to the dropdown. DropdownMenuItem item = CreateItem(itemTemplate); item.rectTransform.SetParent(itemTemplate.rectTransform.parent, false); item.gameObject.SetActive(true); item.gameObject.name = "Item " + items.Count + (data.text != null ? ": " + data.text : ""); // Set the item's data if (item.text) { item.text.text = data.text; } if (item.image) { item.image.sprite = data.image; item.image.enabled = (item.image.sprite != null); } items.Add(item); return(item); }
public void AddOption(Algorithm algorithm) { var data = new UnityEngine.UI.Dropdown.OptionData(algorithm.Name); dropDown.options.Add(data); }
/// <summary> /// Read the data using the reader. /// </summary> /// <param name="reader">Reader.</param> public override object Read(ISaveGameReader reader) { UnityEngine.UI.Dropdown.OptionData optionData = new UnityEngine.UI.Dropdown.OptionData(); ReadInto(optionData, reader); return(optionData); }
/// <summary> /// Write the specified value using the writer. /// </summary> /// <param name="value">Value.</param> /// <param name="writer">Writer.</param> public override void Write(object value, ISaveGameWriter writer) { UnityEngine.UI.Dropdown.OptionData optionData = (UnityEngine.UI.Dropdown.OptionData)value; writer.WriteProperty("text", optionData.text); writer.WriteProperty("image", optionData.image); }
/// <summary> /// Show the dropdown. /// /// Plan for dropdown scrolling to ensure dropdown is contained within screen. /// /// We assume the Canvas is the screen that the dropdown must be kept inside. /// This is always valid for screen space canvas modes. /// For world space canvases we don't know how it's used, but it could be e.g. for an in-game monitor. /// We consider it a fair constraint that the canvas must be big enough to contain dropdowns. /// </summary> public void Show(bool forceUpdate = false) { if (!forceUpdate && (!IsActive() || !IsInteractable() || _dropdown != null)) { return; } // Get root Canvas. var list = ListPool <Canvas> .Get(); gameObject.GetComponentsInParent(false, list); if (list.Count == 0) { return; } // case 1064466 rootCanvas should be last element returned by GetComponentsInParent() Canvas rootCanvas = list[list.Count - 1]; for (int i = 0; i < list.Count; i++) { if (list[i].isRootCanvas) { rootCanvas = list[i]; break; } } ListPool <Canvas> .Release(list); if (!validTemplate) { SetupTemplate(); if (!validTemplate) { return; } } _template.gameObject.SetActive(true); // popupCanvas used to assume the root canvas had the default sorting Layer, next line fixes (case 958281 - [UI] Dropdown list does not copy the parent canvas layer when the panel is opened) _template.GetComponent <Canvas>().sortingLayerID = rootCanvas.sortingLayerID; // Instantiate the drop-down template _dropdown = CreateDropdownList(_template.gameObject); _dropdown.name = "Dropdown List"; _dropdown.SetActive(true); // Make drop-down RectTransform have same values as original. RectTransform dropdownRectTransform = _dropdown.transform as RectTransform; dropdownRectTransform.SetParent(_template.transform.parent, false); // Instantiate the drop-down list items // Find the dropdown item and disable it. DropdownMenuItem itemTemplate = _dropdown.GetComponentInChildren <DropdownMenuItem>(); GameObject content = itemTemplate.rectTransform.parent.gameObject; RectTransform contentRectTransform = content.transform as RectTransform; itemTemplate.rectTransform.gameObject.SetActive(true); // Get the rects of the dropdown and item Rect dropdownContentRect = contentRectTransform.rect; Rect itemTemplateRect = itemTemplate.rectTransform.rect; // Calculate the visual offset between the item's edges and the background's edges Vector2 offsetMin = itemTemplateRect.min - dropdownContentRect.min + (Vector2)itemTemplate.rectTransform.localPosition; Vector2 offsetMax = itemTemplateRect.max - dropdownContentRect.max + (Vector2)itemTemplate.rectTransform.localPosition; Vector2 itemSize = itemTemplateRect.size; _itemList.Clear(); Button prev = null; for (int i = 0; i < options.Count; ++i) { OptionData data = options[i]; DropdownMenuItem item = AddItem(data, itemTemplate, _itemList); if (item == null) { continue; } // Automatically set up a toggle state change listener item.button.onClick.AddListener(() => OnSelectItem(item.button)); // Automatically set up explicit navigation if (prev != null) { Navigation prevNav = prev.navigation; Navigation toggleNav = item.button.navigation; prevNav.mode = Navigation.Mode.Explicit; toggleNav.mode = Navigation.Mode.Explicit; prevNav.selectOnDown = item.button; prevNav.selectOnRight = item.button; toggleNav.selectOnLeft = prev; toggleNav.selectOnUp = prev; prev.navigation = prevNav; item.button.navigation = toggleNav; } prev = item.button; } // Reposition all items now that all of them have been added Vector2 sizeDelta = contentRectTransform.sizeDelta; sizeDelta.y = itemSize.y * _itemList.Count + offsetMin.y - offsetMax.y; contentRectTransform.sizeDelta = sizeDelta; float extraSpace = dropdownRectTransform.rect.height - contentRectTransform.rect.height; if (extraSpace > 0) { dropdownRectTransform.sizeDelta = new Vector2(dropdownRectTransform.sizeDelta.x, dropdownRectTransform.sizeDelta.y - extraSpace); } // Invert anchoring and position if dropdown is partially or fully outside of canvas rect. // Typically this will have the effect of placing the dropdown above the button instead of below, // but it works as inversion regardless of initial setup. Vector3[] corners = new Vector3[4]; dropdownRectTransform.GetWorldCorners(corners); RectTransform rootCanvasRectTransform = rootCanvas.transform as RectTransform; Rect rootCanvasRect = rootCanvasRectTransform.rect; for (int axis = 0; axis < 2; axis++) { bool outside = false; for (int i = 0; i < 4; i++) { Vector3 corner = rootCanvasRectTransform.InverseTransformPoint(corners[i]); if ((corner[axis] < rootCanvasRect.min[axis] && !Mathf.Approximately(corner[axis], rootCanvasRect.min[axis])) || (corner[axis] > rootCanvasRect.max[axis] && !Mathf.Approximately(corner[axis], rootCanvasRect.max[axis]))) { outside = true; break; } } if (outside) { RectTransformUtility.FlipLayoutOnAxis(dropdownRectTransform, axis, false, false); } } for (int i = 0; i < _itemList.Count; i++) { RectTransform itemRect = _itemList[i].rectTransform; itemRect.anchorMin = new Vector2(itemRect.anchorMin.x, 0); itemRect.anchorMax = new Vector2(itemRect.anchorMax.x, 0); itemRect.anchoredPosition = new Vector2(itemRect.anchoredPosition.x, offsetMin.y + itemSize.y * (_itemList.Count - 1 - i) + itemSize.y * itemRect.pivot.y); itemRect.sizeDelta = new Vector2(itemRect.sizeDelta.x, itemSize.y); } // Fade in the popup AlphaFadeList(_alphaFadeSpeed, 0f, 1f); // Make drop-down template and item template inactive _template.gameObject.SetActive(false); itemTemplate.gameObject.SetActive(false); _blocker = CreateBlocker(rootCanvas); }
static int _CreateUnityEngine_UI_Dropdown_OptionData(IntPtr L) { try { int count = LuaDLL.lua_gettop(L); if (count == 0) { UnityEngine.UI.Dropdown.OptionData obj = new UnityEngine.UI.Dropdown.OptionData(); ToLua.PushObject(L, obj); return 1; } else if (count == 1 && TypeChecker.CheckTypes(L, 1, typeof(UnityEngine.Sprite))) { UnityEngine.Sprite arg0 = (UnityEngine.Sprite)ToLua.CheckUnityObject(L, 1, typeof(UnityEngine.Sprite)); UnityEngine.UI.Dropdown.OptionData obj = new UnityEngine.UI.Dropdown.OptionData(arg0); ToLua.PushObject(L, obj); return 1; } else if (count == 1 && TypeChecker.CheckTypes(L, 1, typeof(string))) { string arg0 = ToLua.CheckString(L, 1); UnityEngine.UI.Dropdown.OptionData obj = new UnityEngine.UI.Dropdown.OptionData(arg0); ToLua.PushObject(L, obj); return 1; } else if (count == 2 && TypeChecker.CheckTypes(L, 1, typeof(string), typeof(UnityEngine.Sprite))) { string arg0 = ToLua.CheckString(L, 1); UnityEngine.Sprite arg1 = (UnityEngine.Sprite)ToLua.CheckUnityObject(L, 2, typeof(UnityEngine.Sprite)); UnityEngine.UI.Dropdown.OptionData obj = new UnityEngine.UI.Dropdown.OptionData(arg0, arg1); ToLua.PushObject(L, obj); return 1; } else { return LuaDLL.luaL_throw(L, "invalid arguments to ctor method: UnityEngine.UI.Dropdown.OptionData.New"); } } catch(Exception e) { return LuaDLL.toluaL_exception(L, e); } }
// ------------------------------------------------------------------------------------ // Common Conversions // Convert string to dropdown option data public static UnityEngine.UI.Dropdown.OptionData ConvertStringToDropdownOptionData(string input) { UnityEngine.UI.Dropdown.OptionData newOption = new UnityEngine.UI.Dropdown.OptionData(); // Create new OptionData newOption.text = input; // Set text return(newOption); }
public void AddOption(string option) { var data = new UnityEngine.UI.Dropdown.OptionData(option); dropDown.options.Add(data); }