Ejemplo n.º 1
0
        protected override void RowGUI(RowGUIArgs args)
        {
            try
            {
                var render = AssetTreeManager.mIns.GetGuiRender(EditorContexts.mIns.Mode);
                if (render != null)
                {
                    var item = (AssetTreeItem <T>)args.item;
                    for (int i = 0; i < args.GetNumVisibleColumns(); ++i)
                    {
                        AssetRowGuiArgs copyArgs = new AssetRowGuiArgs();
                        copyArgs.item       = args.item;
                        copyArgs.focused    = args.focused;
                        copyArgs.isRenaming = args.isRenaming;
                        copyArgs.label      = args.label;
                        copyArgs.row        = args.row;
                        copyArgs.rowRect    = args.rowRect;
                        copyArgs.selected   = args.selected;

                        //
                        copyArgs.CellRect = args.GetCellRect(i);
                        copyArgs.Column   = args.GetColumn(i);

                        foreach (var subrender in render)
                        {
                            if (subrender.TypeMode == _viewMode)
                            {
                                IGuiTree treeRender = subrender as IGuiTree;
                                if (treeRender != null)
                                {
                                    if (!treeRender.CellGui(item, ref copyArgs))
                                    {
                                        base.RowGUI(args);
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.LogError(ex);
            }
        }