Beispiel #1
0
        public void RemoveButton(int index)
        {
            DraggableButtonWidget button = buttons[index];

            button.ClearSubscribers();
            ResourcePool.Return(Resource.Widgets.DisplayButton, button.GameObject);

            buttons.RemoveAt(index);

            int i;

            for (i = index; i < buttons.Count; i++)
            {
                float y = 2 * YOffset + i * (buttonHeight + YOffset);
                buttons[i].Transform.anchoredPosition = new Vector3(0, -y);
            }

            contentObjectTransform.sizeDelta = new Vector2(0, 2 * YOffset + i * (buttonHeight + YOffset));
        }
Beispiel #2
0
        public void CreateButtonForModule([NotNull] ModuleData moduleData)
        {
            int   size = buttons.Count;
            float y    = 2 * YOffset + size * (buttonHeight + YOffset);

            DraggableButtonWidget button = ResourcePool
                                           .Rent(Resource.Widgets.DisplayButton, contentObjectTransform, false)
                                           .GetComponentInChildren <DraggableButtonWidget>();

            button.Transform.anchoredPosition = new Vector2(0, -y);
            button.Text.text = moduleData.ButtonText;
            button.Name      = $"Button:{moduleData.ModuleType}";
            button.Visible   = true;

            button.Clicked       += moduleData.ToggleShowPanel;
            button.RevealedLeft  += moduleData.ToggleVisible;
            button.RevealedRight += moduleData.Close;

            buttons.Add(button);

            contentObjectTransform.sizeDelta = new Vector2(0, y + buttonHeight + YOffset);
        }