Thread Tools Display Modes
08-04-14, 05:17 PM   #1
Bringer
A Fallenroot Satyr
 
Bringer's Avatar
Join Date: Jul 2012
Posts: 26
Blizzards InterfaceOptions framework issues

While working on simple test code to verify the Boolean changes with version 6 World of Warcraft I stumbled upon a problem with InterfaceOptionsFrame_OpenToCategory(panel)

The code is just some quick and dirty that looks at how the running client version handles 0 | false | nil and 1 | true in logic structures and in Button check | select widgets.

What I found was if I included the above or even just InterfaceOptionsFrame:Show(); from within my addon code the default blizzard options got reset to default states. I believe the states are not being retrieve from the server, but I don't know since I wasn't even looking at the game options. This has been tested on 5.4.8 and current WoD beta.

I've looked at a number of other addons that are able to open the InterfaceOptionsFrame from addon without issue, but I can't figure out what they are doing that I missed.

I have searched here and via google and have scanned the current live version of FrameXML\GameMenuFrame (xml&lua) and InterfaceOptionsFrame (xlm&lua) without having the clue hammer hitting me.

The toc.. since that type can't be attached.

## Interface: 60000
## Version: 1
## X-SubVersion: AWod
## Title: Truth2

truth2.lua

Note: I commented out the offending calls (located at the bottom of file) so someone not prepared wouldn't find all there game options reset.
Attached Files
File Type: lua truth2.lua (8.7 KB, 137 views)
  Reply With Quote
08-04-14, 06:36 PM   #2
suicidalkatt
A Rage Talon Dragon Guard
 
suicidalkatt's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2008
Posts: 331
Pretty sure this has been a long standing issue but I've not looked at your code to see what API you're calling.

Some authors use this addon here:

http://www.wowinterface.com/download...zBugsSuck.html

This fixes a number of 'issues' with Blizzard code.
  Reply With Quote
08-04-14, 07:26 PM   #3
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
I would guess you're experiencing this problem because you're trying to open the Interface Options window in the main chunk, when nothing is really initialized yet. Normal addons do not do that, which is (probably) why they don't run into the same problem. Try triggering your test with a slash command that you run after you're fully logged in:

Code:
SLASH_TRUTHTEST1 = "/truthtest"
SlashCmdList.TRUTHTEST = function()
	if ( not InterfaceOptionsFrame:IsShown() ) then
		InterfaceOptionsFrame:Show();
	end
	InterfaceOptionsFrame_OpenToCategory("Truth2")
	--CensusPlusSetCheckButtonState()
end
(I left the last line commented since that function isn't defined in the code you posted.)

Also, reading your code full of generic globals rather made me want to gouge my eyes out with onion slices.
__________________
Retired author of too many addons.
Message me if you're interested in taking over one of my addons.
Don’t message me about addon bugs or programming questions.
  Reply With Quote
08-04-14, 09:03 PM   #4
Bringer
A Fallenroot Satyr
 
Bringer's Avatar
Join Date: Jul 2012
Posts: 26
Thanks Phanx
After getting something to eat and raising my blood suger, I realized I had failed to let the game finish loading.
Your post confirmed.. code now works.
and I can throw it away... as I have my answers.. I did warn it was quick and dirty.
  Reply With Quote

WoWInterface » Developer Discussions » Lua/XML Help » Blizzards InterfaceOptions framework issues

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off