internal abstract BTEditorRectangle Clone(BTTreeViewer _treeViewer);
internal BTEditorRectangle(BTTreeViewer _treeViewer) : base(_treeViewer) { m_treeViewer = _treeViewer; }
/** * @brief create a BTEditorRectangle according to the given BTNode **/ protected static BTEditorRectangle CreateRectangleNodeFromBTNode(BTNode _btNode, BTTreeViewer _treeViewer) { if (nodePrototype != null) { foreach (BTEditorRectangle prototype in nodePrototype) { if (prototype.IsThisType(_btNode)) { return(prototype.Clone(_treeViewer)); } } } Debug.Assert(false, "Cannot find rectangle for type: " + _btNode.GetType().Name); return(null); }
/** * @brief recursively create sprites and insert into _sprites **/ internal static void RecursivelyCreateSprites(Dictionary <string, BTEditorSprite> _sprites, BTNode _btNode, BTTreeViewer _btTreeViewer) { if (_btNode == null) { return; } if (!_sprites.ContainsKey(BTEditorRectangle.GetKey(_btNode))) { BTEditorRectangle node = CreateRectangleNodeFromBTNode(_btNode, _btTreeViewer); node.Node = _btNode; _sprites.Add(node.GetKey(), node); } (_sprites[BTEditorRectangle.GetKey(_btNode)] as BTEditorRectangle).RecursivelyCreatChildren(_sprites); }
internal override BTEditorRectangle Clone(BTTreeViewer _treeViewer) { return(new BTEditorRectangleBTCompositeNode(_treeViewer)); }
internal BTEditorRectangleBTCompositeNode(BTTreeViewer _treeViewer) : base(_treeViewer) { }
internal BTEditorRectangleBTConditionNode(BTTreeViewer _treeViewer) : base(_treeViewer) { }
internal BTEditorLine(BTTreeViewer _treeViewer) : base(_treeViewer) { }