// Token: 0x06002252 RID: 8786 RVA: 0x00094711 File Offset: 0x00092911 private void SetDirty() { if (!base.isActiveAndEnabled) { return; } if (!CanvasUpdateRegistry.IsRebuildingLayout()) { LayoutRebuilder.MarkLayoutForRebuild(this.rectTransform); } }
protected override void Action() { if (!_object) { return; } Object obj = Instantiate(_object); if (!_copyPosiiton && !_copyRotation) { return; } var go = obj as GameObject; var comp = obj as Component; Transform objTransform = null; if (go != null) { objTransform = go.transform; } else if (comp != null) { objTransform = comp.transform; } if (!objTransform) { return; } var rTransform = objTransform as RectTransform; if (rTransform) { //if (_copyPosiiton) // rTransform.anchoredPosition3D = transform.position; //if (_copyRotation) // rTransform.rotation = transform.rotation; LayoutRebuilder.MarkLayoutForRebuild(rTransform); } else { if (_copyPosiiton) { objTransform.position = transform.position; } if (_copyRotation) { objTransform.rotation = transform.rotation; } } if (OnCreate != null) { OnCreate(obj); } }
static void OnPrefabInstanceUpdates(GameObject instance) { if (instance) { RectTransform rect = instance.transform as RectTransform; if (rect) { LayoutRebuilder.MarkLayoutForRebuild(rect); } } }
public void LoadWorlds() { GameManager.LoadData(); ClearActiveChildren(worldsHolder); foreach (GameManager.World world in GameManager.worlds.Values) { WorldItem item = Instantiate(worldItemTemplate, worldsHolder); item.gameObject.SetActive(true); item.world = world; } LayoutRebuilder.MarkLayoutForRebuild(worldsHolder.parent as RectTransform); }
public void Add(Health health) { HealthDisplay display = Instantiate(displayPrefab, displaysHead); displays.Add(display); display.SetUp(health); display.SetNewData(health); health.onUpdated += OnHealthUpdate; health.onDead += OnDead; LayoutRebuilder.MarkLayoutForRebuild(displaysHead.GetComponent <RectTransform>()); }
/// <summary> /// /// </summary> public override void SetLayoutDirty() { //Debug.Log("SetLayoutDirty()"); if ( m_layoutAlreadyDirty || this == null || !this.IsActive()) return; m_layoutAlreadyDirty = true; LayoutRebuilder.MarkLayoutForRebuild(this.rectTransform); m_isLayoutDirty = true; }
/// <summary> /// Expect (header, description) tuple /// </summary> /// <param name="nodes"></param> public void Create(List <Tuple <string, string> > nodes) { foreach (var node in nodes) { var instance = Instantiate(tooltipNodePrefab, new Vector3(0, 0, -80), Quaternion.identity, transform); instance.GetComponent <TooltipNode>().Set(node.Item1, node.Item2); } var layout = this.GetComponent <VerticalLayoutGroup>(); Canvas.ForceUpdateCanvases(); LayoutRebuilder.MarkLayoutForRebuild(transform as RectTransform); }
/// <summary> /// Render a new list item element /// </summary> /// <param name="itemData"></param> /// <param name="dataSource"></param> /// <param name="itemTemplate"></param> /// <param name="list"></param> internal void RenderListItem(object itemData, string dataSource, XmlElement itemTemplate, IObservableList list) { // Create the new item based on the item template for this list var element = (XmlElement)GameObject.Instantiate(itemTemplate); var parent = currentListElement.listElement; // Add the new item to the list container parent.AddChildElement(element); // The template will be inactive by default, we need to make it active element.SetAttribute("active", "true"); // Get/Add the List Item component and add it to the element var listItemComponent = element.gameObject.GetComponent <XmlLayoutListItem>() ?? element.gameObject.AddComponent <XmlLayoutListItem>(); listItemComponent.guid = list.GetGUID(itemData); // Add this list item to the list's item collection var index = list.IndexOf(itemData); currentListElement.listItems.Insert(index, listItemComponent); // Load the data from 'itemData' and apply it to our new list element ApplyViewModelData(element, itemData, dataSource, itemTemplate, list, null, true, true); // apply our attributes (especially necessary for things like event handlers and the like) element.Initialise(currentXmlLayoutInstance, element.rectTransform, element.tagHandler); element.ApplyAttributes(); element.AnimationDuration = currentListElement.itemAnimationDuration; element.ShowAnimation = currentListElement.itemShowAnimation; element.HideAnimation = currentListElement.itemHideAnimation; if (element.ShowAnimation != "None") { element.Show(); } // Rebuild the layout at the end of the frame XmlLayoutTimer.AtEndOfFrame(() => LayoutRebuilder.MarkLayoutForRebuild(element.rectTransform), element); #if UNITY_5_4 // Due to differences in how 5.4 and 5.5 handle layout rebuilds, we sometimes have to manually notify child TableLayouts to update XmlLayoutTimer.DelayedCall(0.05f, () => { var tableLayouts = element.GetComponentsInChildren <UI.Tables.TableLayout>(); foreach (var tableLayout in tableLayouts) { tableLayout.UpdateLayout(); } }, element); #endif }
public void Select(Interactable interactable) { if (CanInteract) { selected = interactable; interactable.Hilight(); ActionPopup.gameObject.SetActive(true); ActionText.text = "E: " + interactable.ActionDescription; LayoutRebuilder.MarkLayoutForRebuild(ActionPopup); } }
/// <summary> /// Override to alter or add to the code that caches data to avoid repeated heavy operations. /// </summary> protected void SetDirtyCaching() { if (!IsActive()) { return; } CanvasUpdateRegistry.RegisterCanvasElementForLayoutRebuild(this); LayoutRebuilder.MarkLayoutForRebuild(rectTransform); m_ViewRect = null; }
public void Update() { var newValue = _basePadding + (int)_paddingDriver.rect.height; if (_layoutGroup.padding.top == newValue) { return; } _layoutGroup.padding.top = newValue; LayoutRebuilder.MarkLayoutForRebuild(_rectTransform); }
public void ApplyModifyValue() { rectTransform.offsetMin = new Vector2(margin.modifyLeft ? margin.left : rectTransform.offsetMin.x, margin.modifyBottom ? margin.bottom : rectTransform.offsetMin.y); // new Vector2(left, bottom); rectTransform.offsetMax = new Vector2(margin.modifyRight ? -margin.right : rectTransform.offsetMax.x, margin.modifyTop ? -margin.top : rectTransform.offsetMax.y); // new Vector2(-right, -top); if (RebuildLayoutAfterFix == false && Application.isPlaying && gameObject.activeSelf) { LayoutRebuilder.MarkLayoutForRebuild(transform as RectTransform); } }
void UpdateLayout(int x, int y = 0) { _layoutPositionX = x; _layoutPositionY = y; RectOffset padding = _layout.padding; padding.left = x; padding.right = x; padding.bottom = y; _layout.padding = padding; LayoutRebuilder.MarkLayoutForRebuild(_layoutRectTransform); }
private void OnToggle(GameObject source, bool open) { var obj = ChildPanel; if (obj != null) { // Scale to 0x0 if not visible var rt = obj.rectTransform(); rt.localScale = open ? Vector3.one : Vector3.zero; LayoutRebuilder.MarkLayoutForRebuild(rt); } }
public Tween FadeOut() { m_Skip = true; Alpha = 1; Sequence sequence = DOTween.Sequence(); sequence.Append(DOTween.To(() => Alpha, v => Alpha = v, 0, 0.5f)) .Insert(0, DOTween.To(() => LayoutGroup.padding.bottom, v => LayoutGroup.padding.bottom = v, m_HiddenBottomPadding, 0.5f)) .OnUpdate(() => LayoutRebuilder.MarkLayoutForRebuild(CanvasTransform)) .OnComplete(() => UnityUtils.DestroyObject(this)); return(sequence); }
public void ReCalculate() { if (!gameObject.activeInHierarchy) { return; } if (!layoutGroup) { layoutGroup = GetComponent <LayoutGroup>(); } if (!transform) { transform = gameObject.transform as RectTransform; } int children = transform.childCount; for (int i = 0; i < transform.childCount; i++) { if (!transform.GetChild(i).gameObject.activeSelf) { children -= 1; } } if (layoutGroup is HorizontalLayoutGroup) { float w = (width * children) + (((HorizontalLayoutGroup)layoutGroup).spacing * (children - 1)) + layoutGroup.padding.left + layoutGroup.padding.right; float h = height + layoutGroup.padding.top + layoutGroup.padding.bottom; if (height == 0) { h = transform.sizeDelta.y; } transform.sizeDelta = new Vector2(w, h); } else { float w = width + layoutGroup.padding.left + layoutGroup.padding.right; float h = (height * children) + (((VerticalLayoutGroup)layoutGroup).spacing * (children - 1)) + layoutGroup.padding.top + layoutGroup.padding.bottom; if (width == 0) { w = transform.sizeDelta.x; } transform.sizeDelta = new Vector2(w, h); } LayoutRebuilder.MarkLayoutForRebuild(transform); }
public void UpdateQuest(QuestData q) { foreach (UI_Quest ui in TrackedQuests) { if (ui.QuestID == q.ID) { ui.UpdateUI(q); break; } } LayoutRebuilder.MarkLayoutForRebuild(GetComponent <RectTransform>()); }
private static IEnumerator FixLayout(RectTransform rt) { yield return(new WaitUntil(() => rt.gameObject.activeInHierarchy)); yield return(null); #if KKS // Need to fix text positioning in KKS rt.GetComponent <HorizontalLayoutGroup>().enabled = true; #endif LayoutRebuilder.MarkLayoutForRebuild(rt); }
/// <summary> /// Called when selecting a new node /// </summary> /// <param name="node">The new node to display UI for</param> public void SetTarget(Node node) { _target = node; shop.EnableModuleInventory(node.turret.GetComponent <Turret>()); // Move the UI to be above the node transform.position = _target.transform.position; // Removes module icons created from the previously selected turret for (int i = 0; i < modules.childCount; i++) { Destroy(modules.GetChild(i).gameObject); } // Add each Module as an icon foreach (Module module in _target.turret.GetComponent <Turret>().modules) { GameObject moduleIcon = Instantiate(moduleIconPrefab, modules); moduleIcon.name = "_" + moduleIcon.name; moduleIcon.GetComponent <ModuleIcon>().SetData(module); foreach (Image image in moduleIcon.GetComponentsInChildren <Image>()) { image.raycastTarget = false; } moduleIcon.GetComponentsInChildren <Image>(); } // Display the radius of the turret _target.turret.GetComponent <Turret>().Selected(); // Enable the UI ui.SetActive(true); // Enable/Disable Targeting types cycle button if it's (not) a dynamic turret. if (_target.turret.GetComponent <Turret>() is DynamicTurret) { cycleTargetingButton.SetActive(true); cycleTargetingButton.transform.GetChild(0).GetComponent <TMP_Text>().text = "<b>Targeting:</b>\n" + _target.turret.GetComponent <DynamicTurret>().targetingMethod; } else { cycleTargetingButton.SetActive(false); } // Rebuild the Modules and add the stats LayoutRebuilder.MarkLayoutForRebuild((RectTransform)modules); UpdateStats(); }
public void Cast() { oldterm = proposal.readTerm(); evalmode.val = true; onApply.Invoke(); effectAudioEvent.Invoke(7); //Cast Spell Sound List <Term> args = Enumerable.Range(0, arity) .Select(i => Term.Leaf(Sum <Combinator, Variable> .Inr((Variable)i))).ToList(); proposal.Append(args); LayoutTracker arg_paren = variable_symbols_here.GetComponentInChildren <LayoutTracker>(); List <Transform> ts = new List <Transform>(); for (int i = 0; i < arg_paren.transform.childCount; i++) { ts.Add(arg_paren.transform.GetChild(i)); } foreach (Transform variable in ts) { variable.GetComponent <LayoutTracker>().root = proposal.skeletonRoot; variable.SetParent(proposal.GetComponentInChildren <LayoutTracker>().transform, true); } term = proposal.readTerm(); button.onClick.RemoveListener(Cast); button.onClick.AddListener(Step); button.GetComponent <Image>().sprite = stepSymbol; SkipButton.gameObject.SetActive(true); SkipBackButton.gameObject.SetActive(true); StepBackButton.gameObject.SetActive(true); StopButton.gameObject.SetActive(true); refreshButtons(); LayoutRebuilder.MarkLayoutForRebuild(transform.parent.GetComponent <RectTransform>()); if (target.goal.Equal(term)) { Success.Invoke(); } Debug.Log(arg_paren); Destroy(arg_paren); variable_symbols_here.gameObject.SetActive(false); foreach (var canvas in FindObjectsOfType <Canvas>()) { LayoutRebuilder.MarkLayoutForRebuild(canvas.GetComponent <RectTransform>()); } }
private static void Write(TextAsset storyPage) { if (instance == null) { Debug.LogWarning("There Is No Writer In Scene, Please Create or add one"); return; } instance.activeStory = storyPage; instance.text.text = storyPage.text; ClearDecisions(); LayoutRebuilder.MarkLayoutForRebuild(instance.GetComponent <RectTransform>()); }
private void ChildModelsChanged(object sender, NotifyCollectionChangedEventArgs e) { if (e.Action != NotifyCollectionChangedAction.Add) { foreach (var view in _views.Values) { Destroy(view.gameObject); } _views.Clear(); } LayoutRebuilder.MarkLayoutForRebuild(rectTransform); }
private IEnumerator SubtitleHideCouroutine(float time) { yield return(new WaitForSeconds(time)); if (GameplayIngredientsSettings.currentSettings.verboseCalls) { Debug.Log("[SubtitleManager] Disabled Subtitle"); } SubtitleContainer.SetActive(false); SubtitleText.text = ""; LayoutRebuilder.MarkLayoutForRebuild(SubtitleContainer.GetComponent <RectTransform>()); }
protected override void OnDisable() { // CanvasUpdateRegistry.UnRegisterCanvasElementForRebuild(this); if (m_VerticalScrollbar) { m_VerticalScrollbar.onValueChanged.RemoveListener(SetVerticalNormalizedPosition); } m_Velocity = Vector2.zero; LayoutRebuilder.MarkLayoutForRebuild(rectTransform); base.OnDisable(); }
public void RemoveQuest(QuestData q) { foreach (UI_Quest ui in TrackedQuests) { if (ui.QuestID == q.ID) { Destroy(ui.gameObject); TrackedQuests.Remove(ui); break; } } LayoutRebuilder.MarkLayoutForRebuild(GetComponent <RectTransform>()); }
public void SetMessage(string message, int maxWidth = -1, int maxHeight = -1) { m_RefMaximumSize = new Vector2Int(maxWidth, maxHeight); m_SizeCheckRequired = true; var layoutElement = m_MessagesLabel.GetComponent <LayoutElement>(); layoutElement.preferredWidth = -1; layoutElement.preferredHeight = -1; m_MessagesLabel.SetText(message); LayoutRebuilder.MarkLayoutForRebuild(transform as RectTransform); }
private IEnumerator SubtitleShowCouroutine(string text, float time) { yield return(new WaitForSeconds(time)); if (GameplayIngredientsSettings.currentSettings.verboseCalls) { Debug.Log(string.Format("[SubtitleManager] Set Subtitle : '{0}' at time {1}", text, time)); } SubtitleContainer.SetActive(true); SubtitleText.text = text; LayoutRebuilder.MarkLayoutForRebuild(SubtitleContainer.GetComponent <RectTransform>()); }
private IEnumerator Setup() { yield return(new WaitForEndOfFrame()); LayoutElement layoutElement = m_Text.GetComponent <LayoutElement>(); float buttonWidth = m_ActionButton.GetComponent <MaterialButton>().preferredWidth; HorizontalLayoutGroup horizontalLayoutGroup = GetComponent <HorizontalLayoutGroup>(); float otherWidth = buttonWidth + horizontalLayoutGroup.padding.left + horizontalLayoutGroup.spacing; if (Screen.height > Screen.width) { float height = m_RectTransform.GetProperSize().y; GetComponent <ContentSizeFitter>().horizontalFit = ContentSizeFitter.FitMode.Unconstrained; m_RectTransform.sizeDelta = new Vector2(Screen.width, height); layoutElement.minWidth = Screen.width - otherWidth - 4; m_PanelImage.sprite = null; m_MaterialMovableFab = FindObjectOfType <MaterialMovableFab>(); if (m_MaterialMovableFab != null) { m_FabRectTransform = m_MaterialMovableFab.GetComponent <RectTransform>(); m_FabStartPos = m_FabRectTransform.position.y; m_MoveFab = true; } else { m_FabRectTransform = null; m_MoveFab = false; } } else { layoutElement.minWidth = 288f - otherWidth; layoutElement.preferredWidth = -1f; LayoutRebuilder.MarkLayoutForRebuild(m_RectTransform); if (m_RectTransform.GetProperSize().x > 568f) { layoutElement.preferredWidth = 568f; } } m_OffPos.y = -m_RectTransform.GetProperSize().y * 1.05f; m_RectTransform.position = m_OffPos; m_CurrentPosition = m_RectTransform.position.y; GetComponent <CanvasGroup>().alpha = 1f; m_OnPos.y = 0f; m_OffAlpha = 1f; }
private static void OnPrefabInstanceUpdates(GameObject instance) { if (!(bool)((Object)instance)) { return; } RectTransform transform = instance.transform as RectTransform; if (!(bool)((Object)transform)) { return; } LayoutRebuilder.MarkLayoutForRebuild(transform); }
/// <summary> /// /// </summary> public override void SetLayoutDirty() { m_isPreferredWidthDirty = true; m_isPreferredHeightDirty = true; if (this == null || !this.IsActive()) { return; } LayoutRebuilder.MarkLayoutForRebuild(this.rectTransform); m_isLayoutDirty = true; }