Ejemplo n.º 1
0
    // listItem is null (default) when a "new" panel is created
    static public GameObject GetPanel <T>(ScrollListMonitor <T> monitor, T listItem) where T : IComparable <T>
    {
        if (monitor is MiniTraitListMonitor)
        {
            Trait trait = listItem as Trait;
            return(trait is null ? MiniTraitPanel_New : MiniTraitPanels[trait.TType]);
        }

        if (monitor is TraitListMonitor ||
            monitor is TraitPickerMonitor)
        {
            return(TraitPanel);
        }

        // unused, see overload below
        if (monitor is ThumbListMonitor)
        {
            return(ThumbPanel);
        }

        if (monitor is MiniListMonitor)
        {
            return(listItem is null ? MiniPanel_New : MiniPanel);
        }

        if (monitor is ShowHideListMonitor)
        {
            return(ShowHidePanel);
        }

        return(null);
    }
Ejemplo n.º 2
0
    // overload for retrieving the ThumbPanel
    static public GameObject GetPanel(ScrollListMonitor <Mini> monitor)
    {
        if (monitor is ThumbListMonitor)
        {
            return(ThumbPanel);
        }

        return(null);
    }
Ejemplo n.º 3
0
    public override void SetPanel(object obj, ScrollListMonitor <Trait> monitor)
    {
        base.SetPanel(obj, monitor);

        if (!(trait is Trait_TXT))
        {
            return;
        }

        InputText.GetComponent <InputField>().text = (trait as Trait_TXT).Text;
    }
Ejemplo n.º 4
0
    public override void SetPanel(object obj, ScrollListMonitor <Trait> monitor)
    {
        base.SetPanel(obj, monitor);

        if (obj is Trait setTrait)
        {
            trait                    = setTrait;
            nameText.text            = trait.Name;
            trashButton.interactable = !trait.IncludeAll;
        }
    }
Ejemplo n.º 5
0
    public override void SetPanel(object obj, ScrollListMonitor <Trait> monitor)
    {
        base.SetPanel(obj, monitor);

        if (obj is Trait setTrait)
        {
            trait                = setTrait;
            nameText.text        = trait.Name;
            showHideSlider.value = trait.Show ? 1 : 0;
            ShowHideLabels(trait.Show);
        }
    }
Ejemplo n.º 6
0
    public override void SetPanel(object obj, ScrollListMonitor <Trait> monitor)
    {
        base.SetPanel(obj, monitor);

        if (!(trait is Trait_CHK))
        {
            return;
        }

        TraitToggle.GetComponentInChildren <Text>().text = (trait as Trait_CHK).Name;
        TraitToggle.isOn = (trait as Trait_CHK).IsChecked;
    }
Ejemplo n.º 7
0
    public override void SetPanel(object obj, ScrollListMonitor <Mini> monitor)
    {
        base.SetPanel(obj, monitor);

        if (!(obj is Sprite setSprite))
        {
            return;
        }

        sprite = setSprite;

        thumbImage.sprite = sprite;
        // Utils.SetButtonColors(GetComponent<Button>()); would make buttons invis until mouseover
    }
Ejemplo n.º 8
0
    public override void SetPanel(object obj, ScrollListMonitor <Trait> monitor)
    {
        base.SetPanel(obj, monitor);

        traitNUM = trait as Trait_NUM;

        if (IsNull(traitNUM))
        {
            return;
        }

        valueInput = valueText.GetComponent <InputField>();
        Utils.SetInputFieldColors(valueInput);
        valueInput.text = traitNUM.Value;
    }
Ejemplo n.º 9
0
    // Start is called before the first frame update
    void Start()
    {
        NameText.GetComponent <InputField>().text = Mini.ActiveMini.Name;

        // Resize cell size X to expand/shrink to available area
        float canvasX   = GetComponent <RectTransform>().rect.width;
        float cellSizeY = MainScrollContent.GetComponent <GridLayoutGroup>().cellSize.y;
        float paddingX  = MainScrollContent.GetComponent <GridLayoutGroup>().padding.left;

        paddingX += MainScrollContent.GetComponent <GridLayoutGroup>().padding.right;
        Vector2 newCellSize = new Vector2(canvasX - paddingX, cellSizeY);

        MainScrollContent.GetComponent <GridLayoutGroup>().cellSize = newCellSize;

        traitListMonitor = gameObject.GetComponentInChildren <ScrollListMonitor <Trait> >();
    }
Ejemplo n.º 10
0
    public override void SetPanel(object obj, ScrollListMonitor <Mini> monitor)
    {
        base.SetPanel(obj, monitor);

        if (!(obj is Mini setMini))
        {
            return;
        }

        mini = setMini;

        nameText.text     = mini.ToString();
        thumbImage.sprite = mini.Thumbnail;

        Utils.SetButtonColors(gameObject.GetComponentInChildren <Button>());
    }
Ejemplo n.º 11
0
    public override void SetPanel(object obj, ScrollListMonitor <Trait> monitor)
    {
        base.SetPanel(obj, monitor); // registers monitor

        // setup UI elements
        if (obj is Trait tr)
        {
            trait                = tr;
            nameText.text        = tr.Name;
            typeImage.sprite     = ImageUtils.TraitTypeSprites[tr.TType];
            radiantImage.enabled = tr.IncludeAll;
            //default image is included in the prefab
            //trashbutton image is included in the prefab

            if (monitor is TraitPickerMonitor)
            {
                SetAsPickerPanel();
            }
        }
    }
Ejemplo n.º 12
0
    protected ScrollListMonitor <T> monitor = null; // Set by SetPanel()

    public virtual void SetPanel(object obj, ScrollListMonitor <T> monitor)
    {
        this.monitor = monitor;
    }