I am maintaining a button mod called eXtreme Unit Buttons http://www.wowinterface.com/downloads/info6794-eXtremeUnitButtons.html and one of the users is running into an issue zoning with PitBull. When XUB was written it had an assumption that the unit frames have consistent names. When this user zones he is having to go in manually and reset the frame names to whatever they have become. From their post:
I have to change the settings for Party from PitBullCluster1UnitButton# to PitBullCluster2UnitButton# back and forth all the time.
Is there a way to standardize the naming? Looking through the code and the limited developer discussions it looks like the reuse aspect of PitBull conflicts with these goals. Perhaps thier is a better place for this type of question.
Yep, it's quite annoying for any UI a little more advanced than standard.
I like to attach eePanels to my frames so they're only visible when applicable and move with frames. Ended up with small app made by a guildmate that seperately monitors party/raid status and shows and hide's it's own frame so I can attach panels to it.
Luckily the original design was set up for Raid changes causing frame changes. Therefore i can iterate through and identify who has what frame:
for c=1,20 do
for u=1,10 do
test = "PitBullCluster" .. c .. "UnitButton" .. u;
local test_frame = getglobal(test)
if ( test_frame ~= nil ) then
local test_unit = test_frame:GetUnit()
Unfortunately the same is not true for the normal frame (IE Player, PlayerPet, Party#, PartyPet#, Target, and Focus). These were designed as static associations and setup once. I would be happy to modify the the code to do a single static lookup at startup to identify what the standard frames are this time - but I am very hesitant to look into hooking a zone change event and updating them.
I guess I am looking for a good reason why the party unit frames should change when a zone change takes place.
Ended up with small app made by a guildmate that seperately monitors party/raid status and shows and hide's it's own frame so I can attach panels to it.
I ended up doing the same thing. (PBFN_player et. al.). Does you guild mate publish and support it, or is only a one off for you? I don't know if I want to take on an addon thats only purpose is to support PitBull. Is there a way to propose this type of function be added? I could make a patch that would fit into PitBull proper.
Ps What I do:
Create an empty frame for each unit - (I call them PBFN_player, PBFN_target, ...) and on events (Party, Raid and Zone) position them relative to the appropriate PitBull Frame. IE if Party1 went from PitBullCluster2UnitButton1 to PtiBullCluster1UnitButton1 I move my frame to the correct spot. I haven't tested the raid stuff and some of the less used unit (target of maintank) but it was been working for zone changes in party mode.
The addon is literally just a tiny hacky thing to get frames that react in a nice and simple way. They're not movable in game so you have to change the config file. Far from ideal.
Tbh this ties in with my wish for a dynamic mod of some kind for creating "good" UIs. I want to be able to do scripting from within the game when events occur to change my UI. Be it to move and frame, show a background, hide almost everything when idling etc.
It doesn't seem like it would be that hard and would be fantastic as a helper for quick UI dev.
Are there any custom events which fire when this occurs that other addons can register against? Perhaps a PitBull module which fires some event indicating cLuster changes? Then we could respond accordingly..not sure if that is possible, just an idea..maybe it already does and I do not know :)