protected virtual void UpdateCell(AbstractCellController cc, AbstractCellData cd)
 {
     if (cc != null)
     {
         cc.UpdateCell(cd);
     }
 }
Example #2
0
    protected override AbstractCellController Spawn(RectTransform parent, AbstractCellData cellData)
    {
        if (cellData.CellControllerRef != null)
        {
            return(cellData.CellControllerRef);
        }

        AbstractCellController cc = GetReusableCell(cellData.CellControllerType);

        cc.transform.SetParent(parent, false);
        UpdateCell(cc, cellData);

        #if UNITY_EDITOR
        cc.name = parent.name;
        #endif

        if (ContainerCellData.ContainsKey(parent))
        {
            ContainerCellData[parent] = cellData;
        }
        else
        {
            ContainerCellData.Add(parent, cellData);
        }

        if (cellData.OnSpawn != null)
        {
            cellData.OnSpawn(cellData);
        }

        return(cc);
    }
Example #3
0
        /// <summary>
        /// Sets the value from a Formula Cell
        /// </summary>
        /// <param name="rw"></param>
        /// <param name="col"></param>
        public void setFormulaUsesArray(UInt16 rw, UInt16 col)
        {
            AbstractCellData cell = this.getCellAtPosition(rw, col);

            if (cell is FormulaCell)
            {
                ((FormulaCell)cell).usesArrayRecord = true;
            }
        }
Example #4
0
        /// <summary>
        /// Searches a cell at the specific Position
        /// </summary>
        /// <param name="rw"></param>
        /// <param name="col"></param>
        /// <returns></returns>
        public AbstractCellData getCellAtPosition(UInt16 rw, UInt16 col)
        {
            RowData          rd    = this.getSpecificRow((int)rw);
            AbstractCellData scell = null;

            foreach (AbstractCellData cell in rd.Cells)
            {
                if (cell.Row == rw && cell.Col == col)
                {
                    scell = cell;
                }
            }
            return(scell);
        }
Example #5
0
        /// <summary>
        /// Searches a cell at the specific Position
        /// </summary>
        /// <param name="rw"></param>
        /// <param name="col"></param>
        /// <returns></returns>
        public AbstractCellData getCellAtPosition(ushort rw, ushort col)
        {
            var rd = this.getSpecificRow((int)rw);
            AbstractCellData scell = null;

            foreach (var cell in rd.Cells)
            {
                if (cell.Row == rw && cell.Col == col)
                {
                    scell = cell;
                }
            }
            return(scell);
        }
Example #6
0
    public override void UpdateCell(AbstractCellData data)
    {
        base.UpdateCell(data);

        int sfx = ((SfxCellData)data).Sfx;


        SfxText.text = SFXLoader.Ins.Eff[sfx];


        Transform distanceResizerParent = transform.parent.parent.parent;

        CenterDistanceResizer.SetParent(distanceResizerParent);
        ScalingParent = distanceResizerParent.parent.parent.parent.parent;
    }
Example #7
0
    public void Move(int index, AbstractCellData item)
    {
        throw new NotImplementedException();

        //            if (!CellDataList.Contains(item))
        //                return;
        //
        //            if (CellDataList.Remove(item)) {
        //                CellDataList.Insert(index, item);
        //                SetSiblingIndex(index);
        //            }
        //            for (int i = index + 1; i < CellDataList.Count; i++) {
        //                SetSiblingIndex(i);
        //            }
    }
Example #8
0
    public override void UpdateCell(AbstractCellData data)
    {
        base.UpdateCell(data);

        int act = ((AnimationCellData)data).animation;


        AnimationText.text = act.ToString();


        Transform distanceResizerParent = transform.parent.parent.parent;

        CenterDistanceResizer.SetParent(distanceResizerParent);
        ScalingParent = distanceResizerParent.parent.parent.parent.parent;
    }
Example #9
0
    protected virtual void Despawn(RectTransform container)
    {
        if (!ContainerCellData.ContainsKey(container))
        {
            return;
        }

        AbstractCellData cellData = ContainerCellData[container];

        if (cellData.CellControllerRef == null)
        {
            return;
        }

        AbstractCellController cellController = cellData.CellControllerRef;

        if (!ReusableCellPool.ContainsKey(cellController.GetType()))
        {
            ReusableCellPool.Add(cellController.GetType(), new List <AbstractCellController>());
        }

        ReusableCellPool[cellController.GetType()].Insert(0, cellController);
        if (NoDeactivations)
        {
            cellController.transform.SetParent(null, false);
        }
        else
        {
            cellController.gameObject.SetActive(false);

            cellController.transform.SetParent(transform, false);
            cellController.transform.SetSiblingIndex(-1000);
        }
        cellController.enabled = false;

        if (cellData.OnDespawn != null)
        {
            cellData.OnDespawn(cellData);
        }

        cellData.CellControllerRef = null;

        ContainerCellData.Remove(container);
    }
 protected virtual void UpdateCell(AbstractCellData cd)
 {
     UpdateCell(cd.CellControllerRef, cd);
 }
 protected abstract AbstractCellController Spawn(RectTransform parent, AbstractCellData cellData);
Example #12
0
 public virtual void UpdateCell(AbstractCellData data)
 {
     Data = data;
     data.CellControllerRef = this;
 }
 public abstract void CenterOnCellAnimated(AbstractCellData data, bool modal);
 public abstract void CenterOnCell(AbstractCellData data);
 public override void CenterOnCellAnimated(AbstractCellData data, bool modal)
 {
     CenterOnCellAnimated(IndexOf(data), modal);
 }
 public override void CenterOnCell(AbstractCellData data)
 {
     CenterOnCell(IndexOf(data));
 }