WoW:Make Frames Closable With the "Esc" Key

From AddOn Studio
Revision as of 11:06, 20 August 2006 by WoWWiki>Watchout (example + some fancy work)
Jump to navigation Jump to search

How To

To make your main frame closable with the ESCape key go into the OnLoad function and add the following line :

tinsert(UISpecialFrames,"MainFrameName");

where MainFrameName is the name of your main frame of the application.

Example

<Frame name="ExampleFrame" parent="UIParent">
	<Size>
		<AbsDimension x="640" y="512"/>
	</Size>
	<Anchors>
		<Anchor point="CENTER" />
	</Anchors>
	<Scripts>
		<OnLoad>
			tinsert(UISpecialFrames,this:GetName());
		</OnLoad>
		<OnShow>
			PlaySound("igCharacterInfoOpen");
		</OnShow>
		<OnHide>
			PlaySound("igCharacterInfoClose");
		</OnHide>
	</Scripts>
</Frame>

Description

this:GetName() returns the current UI Object's name and in this case our Frame Name. Using this will make the code more generic.

the OnShow and OnHide parts will play the usual sound that's played when you open/close blizzards frames - e.g. your character frame