public override GameObject Create(RichElement element) { var imageSizeableElement = element as UGUIRichElementImageSizeable; if (imageSizeableElement != null) { var gameObject = base.Create(element); if (gameObject != null) { var image = gameObject.GetComponent <Image>(); if (image != null) { // first delete ContentSizeFitter // TODO improve ? RichTextUtil.DestroyComponent <ContentSizeFitter>(gameObject); // then set size var size = imageSizeableElement.GetSize(); image.rectTransform.sizeDelta = size; } } return(gameObject); } return(null); }
public GameObject CreateText(string text, string style, Action clickHandler) { var textGOPrefab = GetTextPrefab(style); if (textGOPrefab) { var textPool = GetTextPool(style); var textGO = textPool.Spawn(textGOPrefab); var textComp = textGO.GetComponent <Text>(); if (!textComp) { Debug.LogError("[UGUIGameObjectManager]Error to get Text component : " + style); textPool.Release(textGO); return(null); } textComp.text = text; // handler click handler var uguiClickHandler = RichTextUtil.GetOrAddComponent <UGUIClickHandler>(textGO); Debug.Assert(uguiClickHandler != null); // first clear uguiClickHandler.ClearHandlers(); // then add handler if (clickHandler != null) { uguiClickHandler.AddHandler(clickHandler); } return(textGO); } return(null); }
protected void CreatePivot() { RichTextUtil.ReleaseGameObject(m_pivotTransform); var pivotGO = RichTextUtil.CreateGameObject("Pivot", gameObject); Debug.Assert(pivotGO != null); m_pivotTransform = pivotGO.transform; }
protected NGUIRichElementAnimationImage CreateAnimImageElement(string image, string url, uint count, float fps) { Action openURLHandler = null; if (!string.IsNullOrEmpty(url)) { openURLHandler = () => { RichTextUtil.OpenURL(url); }; } return(new NGUIRichElementAnimationImage(image, openURLHandler, count, fps)); }
protected NGUIRichElementImageSizeable CreateImageSizeableElement(string image, string url, Vector2 size) { Action openURLHandler = null; if (!string.IsNullOrEmpty(url)) { openURLHandler = () => { RichTextUtil.OpenURL(url); }; } return(new NGUIRichElementImageSizeable(image, openURLHandler, size)); }
protected UGUIRichElementImage CreateImageElement(string image, string url) { Action openURLHandler = null; if (!string.IsNullOrEmpty(url)) { openURLHandler = () => { RichTextUtil.OpenURL(url); }; } return(new UGUIRichElementImage(image, openURLHandler)); }
public GameObject CreateImage(string imageName, Action clickHandler) { var imagePrefab = GetImagePrefab(); if (imagePrefab) { var imageGO = m_imagePool.Spawn(imagePrefab); var imageComp = imageGO.GetComponent <UISprite>(); if (!imageComp) { Debug.LogError("[NGUIGameObjectManager]Error to get UISprite component : " + imageName); m_imagePool.Release(imageGO); return(null); } // get atlas name and sprite name var imageInfo = imageName.Split('.'); if (imageInfo.Length < 2) { Debug.LogError("[NGUIGameObjectManager]Error to get atlas name and sprite name : " + imageName); m_imagePool.Release(imageGO); return(null); } var atlasName = imageInfo[0]; var spriteName = imageInfo[1]; imageComp.atlas = GetImageAtlas(atlasName); imageComp.spriteName = spriteName; // NOTE not so sure about this ... imageComp.MakePixelPerfect(); // add collider to widget first NGUITools.AddWidgetCollider(imageGO); // handler click handler var nguiClickHandler = RichTextUtil.GetOrAddComponent <NGUIClickHandler>(imageGO); Debug.Assert(nguiClickHandler != null); // first clear nguiClickHandler.ClearHandlers(); // then add handler if (clickHandler != null) { nguiClickHandler.AddHandler(clickHandler); } return(imageGO); } return(null); }
protected NGUIRichElementText CreateTextElement(string text, string fontStyle, bool underline, string url) { Action openURLHandler = null; if (!string.IsNullOrEmpty(url)) { openURLHandler = () => { RichTextUtil.OpenURL(url); }; } if (underline) { return(new NGUIRichElementTextUnderline(text, fontStyle, openURLHandler)); } else { return(new NGUIRichElementText(text, fontStyle, openURLHandler)); } }
public GameObject CreateImage(string imageName, Action clickHandler) { var imagePrefab = GetImagePrefab(); if (imagePrefab) { var imageGO = m_imagePool.Spawn(imagePrefab); var imageComp = imageGO.GetComponent <Image>(); if (!imageComp) { Debug.LogError("[UGUIGameObjectManager]Error to get Image component : " + imageName); m_imagePool.Release(imageGO); return(null); } imageComp.sprite = GetImageSprite(imageName); // NOTE not so sure about this ... imageComp.type = Image.Type.Simple; imageComp.preserveAspect = true; imageComp.SetNativeSize(); // handler click handler var uguiClickHandler = RichTextUtil.GetOrAddComponent <UGUIClickHandler>(imageGO); Debug.Assert(uguiClickHandler != null); // first clear uguiClickHandler.ClearHandlers(); // then add handler if (clickHandler != null) { uguiClickHandler.AddHandler(clickHandler); } return(imageGO); } return(null); }