CreateFramePoolCollection()

From Warcraft Wiki
(Redirected from FramePoolCollectionMixin)
Jump to navigation Jump to search
This function is implemented in FrameXML/Pools.lua.

Creates a FramePoolCollectionMixin, a collection of frame pools each having a different XML template.

collection = CreateFramePoolCollection()

Methods

Pools
FramePoolCollectionMixin:CreatePool(frameType, parent, template [, resetterFunc, forbidden]) - Creates a new pool to generate frames with a template.
FramePoolCollectionMixin:GetOrCreatePool(frameType, parent, template [, resetterFunc, forbidden]) - Returns a pool that generates frames with a template, creating one if necessary.
FramePoolCollectionMixin:CreatePoolIfNeeded(frameType, parent, template [, resetterFunc, forbidden]) - Creates a pool to generate frames with a template, if necessary.
FramePoolCollectionMixin:GetPool(template) - Returns the pool that generates frames with a template (or nil if it has not been created).
Frames
FramePoolCollectionMixin:Acquire(template) - Furnishes a frame from the pool in this collection that is responsible for this template.
FramePoolCollectionMixin:Release(frame) - Releases a frame back to the pool which furnished it.
FramePoolCollectionMixin:ReleaseAllByTemplate(template) - Releases all frames furnished by a pool.
FramePoolCollectionMixin:ReleaseAll() - Releases all frames furnished by any pool in the collection.
FramePoolCollectionMixin:EnumerateActiveByTemplate() - Returns an iterator to cycle through frames sourced from one pool.
FramePoolCollectionMixin:EnumerateActive() - Returns an iterator to cycle through widgets sourced from any pool in the collection.

Example

local pool = CreateFramePool("Frame", nil, "BackdropTemplate")
local frame = pool:Acquire()

Patch changes

  • Battle for Azeroth Patch 8.1.5 (2019-03-12): Renamed as CreateFramePoolCollection() and FramePoolCollectionMixin.[1]
  • Legion Patch 7.3.0 (2017-08-29): Added as CreatePoolCollection() and PoolCollection.[2]

External links

References

 
  1. ^ 2019-03-12, Pools.lua, version 8.1.5.29701, near line 232, archived at Townlong-Yak
  2. ^ 2017-08-28, Pools.lua, version 7.3.0.24920, near line 210, archived at Townlong-Yak