WoW:Removing Blizzard default frames: Difference between revisions

no edit summary
No edit summary
Line 9: Line 9:
  /script MyFrame:Hide()
  /script MyFrame:Hide()


 


==Show a hidden frame==
==Show a hidden frame==
Line 17: Line 17:
  /script MyFrame:Show()
  /script MyFrame:Show()




'''NOTE:''' Most frames have event handlers so even if you hide it, it can pop back up as a result of an event handler calling it's Show function. To avoid this you need to prevent the frame from getting these events or from executing the code that makes the frame show. Most Blizzard's frames (if not all) use the a single fuction to handle all events, which makes it easier for us. When hidding the frame you can make the OnEvent fucntion point to nill so no function gets called:
 
'''NOTE:''' Most frames have event handlers so even if you hide it, it can pop back up as a result of an event handler calling it's Show function. To avoid this you need to prevent the frame from getting these events or from executing the code that makes the frame show. Most Blizzard's frames (if not all) use a single function to handle all events, which makes it easier for us. When hidding the frame you can make the OnEvent function point to nil so no function gets called:


   PlayerFrame:SetScript("OnEvent", nil);
   PlayerFrame:SetScript("OnEvent", nil);
Line 40: Line 40:


=== Party Window ===
=== Party Window ===
The windows that are shown for group members are PartyMemberFrameX, where X = 1..4. All these can be hidden at once by the function ''HidePartyFrame()'', provided by the default party frame lua code.  
The windows that are shown for group members are PartyMemberFrameX, where X = 1..4. All these can be hidden at once by the function ''HidePartyFrame()'', provided by the default party frame lua code.
   HidePartyFrame() -- hides all party members
   HidePartyFrame() -- hides all party members
   PartyMemberFrameX:Hide() -- hides a specified party member (X=1/2/3/4)
   PartyMemberFrameX:Hide() -- hides a specified party member (X=1/2/3/4)
Anonymous user