24        mLayerItems.push_back(
_item);
 
   25        if (mLayerNode != 
nullptr)
 
   27            _item->attachToLayerItemNode(mLayerNode, 
false);
 
   33        VectorLayerItem::iterator item = std::remove(mLayerItems.begin(), mLayerItems.end(), 
_item);
 
   34        MYGUI_ASSERT(item != mLayerItems.end(), 
"item not found");
 
   35        mLayerItems.erase(item);
 
   40        mLayerNodes.push_back(
_item);
 
   41        if (mLayerNode != 
nullptr)
 
   51        VectorLayerItem::iterator item = std::remove(mLayerNodes.begin(), mLayerNodes.end(), 
_item);
 
   52        MYGUI_ASSERT(item != mLayerNodes.end(), 
"item not found");
 
   53        mLayerNodes.erase(item);
 
   58        mDrawItems.push_back(
_item);
 
   84        mSaveLayerNode = mLayerNode;
 
   89        mLayerNode = mSaveLayerNode;
 
  107        if (
nullptr == mLayer)
 
  124        mLayerNode = 
nullptr;
 
  133            node->getLayer()->upChildItemNode(
node);
 
  145        for (VectorSubWidget::iterator skin = mDrawItems.begin(); skin != mDrawItems.end(); ++skin)
 
  147            (*skin)->createDrawItem(mTexture, 
_item);
 
  150        for (VectorLayerItem::iterator item = mLayerItems.begin(); item != mLayerItems.end(); ++item)
 
  155        for (VectorLayerItem::iterator item = mLayerNodes.begin(); item != mLayerNodes.end(); ++item)
 
  168        for (VectorLayerItem::iterator item = mLayerItems.begin(); item != mLayerItems.end(); ++item)
 
  170            (*item)->detachFromLayerItemNode(
_deep);
 
  173        for (VectorLayerItem::iterator item = mLayerNodes.begin(); item != mLayerNodes.end(); ++item)
 
  178                (*item)->detachFromLayerItemNode(
_deep);
 
  181                    node->getLayer()->destroyChildItemNode(
node);
 
  191            for (VectorSubWidget::iterator skin = mDrawItems.begin(); skin != mDrawItems.end(); ++skin)
 
  193                (*skin)->destroyDrawItem();
 
  202            mLayerNode = 
nullptr;
 
#define MYGUI_ASSERT(exp, dest)
#define MYGUI_DEBUG_ASSERT(exp, dest)
virtual void destroyChildItemNode(ILayerNode *_node)=0
virtual void detachLayerItem(ILayerItem *_root)=0
virtual ILayerNode * createChildItemNode()=0
void removeChildNode(LayerItem *_item)
ILayerNode * getLayerNode() const
void detachFromLayerItemNode(bool _deep)
void addChildItem(LayerItem *_item)
void addChildNode(LayerItem *_item)
void removeChildItem(LayerItem *_item)
void removeAllRenderItems()
ILayer * getLayer() const
void addRenderItem(ISubWidget *_item)
void detachFromLayer() override
void upLayerItem() override
void attachItemToNode(ILayer *_layer, ILayerNode *_node) override
void setRenderItemTexture(ITexture *_texture)
void attachToLayerItemNode(ILayerNode *_node, bool _deep)