m
Cleanup
m (Cleanup) |
|||
| Line 5: | Line 5: | ||
|info=*For one, you no longer need to modify FrameXML in order to add code to WoW (yes, that's how badly out of date it is).}} | |info=*For one, you no longer need to modify FrameXML in order to add code to WoW (yes, that's how badly out of date it is).}} | ||
This '''user interface customization guide''' is based upon slouken's post on the official Beta UI forums ''(a long time ago in a galaxy far, far away)''. | This '''user interface customization guide''' is based upon [[slouken]]'s post on the official Beta UI forums ''(a long time ago in a galaxy far, far away)''. | ||
== World of Warcraft user interface customization guide == | == World of Warcraft user interface customization guide == | ||
| Line 12: | Line 12: | ||
No official support exists for modifying the WoW interface. If you break it, you get to keep both pieces. =) | No official support exists for modifying the WoW interface. If you break it, you get to keep both pieces. =) | ||
With that said, there are a number of websites devoted to user interface customisation available, such as [http://www.wowinterface.com/ WowInterface] and [http://www.curse.com Curse]. | With that said, there are a number of websites devoted to user interface customisation available, such as [http://www.wowinterface.com/ WowInterface] and [http://www.curse.com Curse]. These sites have customised interfaces and addons for almost every conceivable need, so it is extremely unlikely that you will need to create an addon from scratch yourself. If an Addon suitable for your needs can be found from one of these sites, you will find using that much easier than attempting to create a new addon yourself. | ||
To get started, download the [http://us.blizzard.com/support/article.xml?articleId=21466 World of Warcraft Interface AddOn Kit] and use that application to extract both User Interface Data & User Interface Art. This creates three new directories called "Blizzard Interface Data (enUS)", "Blizzard Interface Art (enUS)" and "Blizzard Interface Tutorial". | To get started, download the [http://us.blizzard.com/support/article.xml?articleId=21466 World of Warcraft Interface AddOn Kit] and use that application to extract both User Interface Data & User Interface Art. This creates three new directories called "Blizzard Interface Data (enUS)", "Blizzard Interface Art (enUS)" and "Blizzard Interface Tutorial". | ||
The art folder contains all of the graphics used in the built-in UI. | The art folder contains all of the graphics used in the built-in UI. They are generally [[BLP_files|BLP files]], which are a simple container DirectX-formatted texture data. The [[BLP_files|BLP files]] page lists several tools for converting between BLP and other image formats. | ||
The data folder contains all of the [[Lua]] and [[XML]] files which are used to describe and program the UI. These files make a great reference for examples of algorithms, syntax, using the game API and much more. | |||
A quick reminder: when developing addons you will often encounter bugs that you just can't figure out. If you're like most of us, you will quickly begin to think that it's Blizzard's fault. Before reporting a bug in the game UI, disable all addons and verify that the bug is present in the unmodified game. Maybe it is Blizzard's bug, but there's an even better chance that the bug is yours or another addon you're running during your development. | |||
== XML layout == | == XML layout == | ||
| Line 29: | Line 27: | ||
The FrameXML.toc file is a plain text file and contains a list of Lua and XML files to load at login. The files are loaded in the order they're listed and any load errors are written to FrameXML.log in the game's Log folder. | The FrameXML.toc file is a plain text file and contains a list of Lua and XML files to load at login. The files are loaded in the order they're listed and any load errors are written to FrameXML.log in the game's Log folder. | ||
In your own addons you will also have a .toc file which performs the same function for your own code. | In your own addons you will also have a .toc file which performs the same function for your own code. You will list your Lua and XML files in it and they will be loaded during login. Errors which occur while loading your addon will also be written to the FrameXML.log file. | ||
Each XML file describes a collection of UI elements and Blizzard separates their XML files into functional modules. | Each XML file describes a collection of UI elements and Blizzard separates their XML files into functional modules. You will find files for the GameTooltip, ActionBarFrame, ReadyCheck, and everything else in the built-in UI. The Blizzard XML and Lua files make a great reference for understanding how to develop an addon. | ||
The XML files strictly adhere to the XML standard and if your text editor supports XML syntax checking, the file UI.xsd in the FrameXML folder contains the schema used by the WoW interface. | The XML files strictly adhere to the XML standard and if your text editor supports XML syntax checking, the file UI.xsd in the FrameXML folder contains the schema used by the WoW interface. | ||
| Line 94: | Line 92: | ||
The interface files are provided for your enjoyment, and are not supported in any way. That said, we hope that ''World of Warcraft'' provides a robust and flexible system for custom interfaces. | The interface files are provided for your enjoyment, and are not supported in any way. That said, we hope that ''World of Warcraft'' provides a robust and flexible system for custom interfaces. | ||
See also | == See also == | ||
*[[UI Questions]] | *[[UI Questions]] | ||
*[[Interface Customization]] | *[[Interface Customization]] | ||
[[Category:Interface customization]] | [[Category:Interface customization]] | ||