49
edits
(Created page with "{{guidelines}} {{guideline|shortcut=WW:API}} {{clrl}} == Documentation Structure == The following categories represent the various places documentation and other content shou...") |
No edit summary |
||
| Line 6: | Line 6: | ||
=== Major Reference Sections === | === Major Reference Sections === | ||
* [[ | * [[wo:development]] | ||
** [[UI Customization]] - major category primarily covering the '''game client''' public APIs and facilites | ** [[wo:UI Customization]] - major category primarily covering the '''game client''' public APIs and facilites | ||
*** [[ | *** [[wo:AddOn]] - this section is a ''reference'' for AddOn development itself, including file formats, rules, and getting started | ||
*** [[XML UI]] - this section is a ''reference'' and includes all the Ui XML related documenation, including widget docs as related to XML | *** [[wo:XML UI]] - this section is a ''reference'' and includes all the Ui XML related documenation, including widget docs as related to XML | ||
*** [[Widget API]] - this section is a ''reference'' for all of the Lua interface for the Widgets, only | *** [[wo:Widget API]] - this section is a ''reference'' for all of the Lua interface for the Widgets, only | ||
*** [[WoW API]] - this section is a ''reference'' for all of the Lua interface related free standing WoW API functions and conventions, only | *** [[wo:WoW API]] - this section is a ''reference'' for all of the Lua interface related free standing WoW API functions and conventions, only | ||
*** [[Lua functions|WoW Lua]] - this section is a ''reference'' for WoW version Lua runtime and any custom functions or conventions | *** [[wo:Lua functions|WoW Lua]] - this section is a ''reference'' for WoW version Lua runtime and any custom functions or conventions | ||
*** [[Event API]] - this section is a ''reference'' for all of the game events | *** [[wo:Event API]] - this section is a ''reference'' for all of the game events | ||
*** [[Macro API]] - this seciton is a ''reference'' for Macro and slash command development | *** [[wo:Macro API]] - this seciton is a ''reference'' for Macro and slash command development | ||
*** [[:Category:Console variables|CVars]] - this section is a ''reference'' for all the game client 'console variables' | *** [[:Category:Console variables|CVars]] - this section is a ''reference'' for all the game client 'console variables' | ||
** [[Web API]] - major category for the public '''Community Web Platform''' and any other web related factilites | ** [[wo:Web API]] - major category for the public '''Community Web Platform''' and any other web related factilites | ||
=== Other General Sections === | === Other General Sections === | ||
* [[ | * [[wo:development]] | ||
** [[ | ** [[wo:HOWTOs]] - various articles that could be about anything relating to WoW Development and getting something done | ||
** [[User_defined_functions|Snippets]] - cut-and-paste functions that you can use in your addons, submitted by wiki contributors | ** [[wo:User_defined_functions|Snippets]] - cut-and-paste functions that you can use in your addons, submitted by wiki contributors | ||
** [[:Category:UI technical details|UI Tech]] - contains various documents that describe the UI technical details for the WoW UI system | ** [[:Category:UI technical details|UI Tech]] - contains various documents that describe the UI technical details for the WoW UI system | ||
| Line 37: | Line 37: | ||
== Widget reference == | == Widget reference == | ||
Guidelines for editing the [[UI Customization]] [[Widget API]] reference pages. | Guidelines for editing the [[wo:UI Customization]] [[wo:Widget API]] reference pages. | ||
* Only document the a widget method in its own base class. Do not document the same method in all inherited widgets. | * Only document the a widget method in its own base class. Do not document the same method in all inherited widgets. | ||
* Document new methods or other changes in the [[Widget API]] page first, even if that's the only place. | * Document new methods or other changes in the [[wo:Widget API]] page first, even if that's the only place. | ||
* Use [[Help:Widget method articles]] as a basis for the page. | * Use [[Help:Widget method articles]] as a basis for the page. | ||
* The 'UISUMMARY WidgetName', e.g. <nowiki>[[UISUMMARY EditBox]]</nowiki> is obsolete, use a 'UIOBJECT WidgetName' page instead. | * The 'UISUMMARY WidgetName', e.g. <nowiki>[[UISUMMARY EditBox]]</nowiki> is obsolete, use a 'UIOBJECT WidgetName' page instead. | ||
* Use the {{t|apiwidget}} template for referencing links. Prefer method links to the [[Widget API]] page from outside the widget pages. | * Use the {{t|apiwidget}} template for referencing links. Prefer method links to the [[wo:Widget API]] page from outside the widget pages. | ||
=== A Widget page === | === A Widget page === | ||
| Line 57: | Line 57: | ||
* Do not place a function under several headings unless you ''really'' feel it belongs there. See previous point. | * Do not place a function under several headings unless you ''really'' feel it belongs there. See previous point. | ||
* Basic link syntax: <code><nowiki>[[API DisableAddOn|DisableAddOn]](index or "addonname")</nowiki></code> → [[API DisableAddOn|DisableAddOn]](index or "addonname") | * Basic link syntax: <code><nowiki>[[API DisableAddOn|DisableAddOn]](index or "addonname")</nowiki></code> → [[wo:API DisableAddOn|DisableAddOn]](index or "addonname") | ||
** <small>See [[API Notation and Conventions]] for a more thorough explanation</small> | ** <small>See [[wo:API Notation and Conventions]] for a more thorough explanation</small> | ||
* Don't just say "NEW!" or "REMOVED!". ''Say in which version!'' It may be obvious to you when you write it, since it's the current one, but the page has to make sense three months from now, too. And more. | * Don't just say "NEW!" or "REMOVED!". ''Say in which version!'' It may be obvious to you when you write it, since it's the current one, but the page has to make sense three months from now, too. And more. | ||
=== Regular API function pages === | === Regular API function pages === | ||
<small>Global, honest-to-god APIs, e.g. [[[API UnitName|UnitName]]], [[[API AcceptDuel|AcceptDuel]]], [[[API GetAddOnDependencies|GetAddOnDependencies]]]</small> | <small>Global, honest-to-god APIs, e.g. [[[wo:API UnitName|UnitName]]], [[[wo:API AcceptDuel|AcceptDuel]]], [[[wo:API GetAddOnDependencies|GetAddOnDependencies]]]</small> | ||
* Name the page <tt style="border-bottom: 1px dotted;">API ''FunctionName''</tt>. | * Name the page <tt style="border-bottom: 1px dotted;">API ''FunctionName''</tt>. | ||
| Line 71: | Line 71: | ||
So when you can't find a reference to learn how a WoW API works, what to do? | So when you can't find a reference to learn how a WoW API works, what to do? | ||
* [[Viewing Blizzard's WoW user interface code|Look in FrameXML]] to learn how Blizzard themselves uses the API. | * [[wo:Viewing Blizzard's WoW user interface code|Look in FrameXML]] to learn how Blizzard themselves uses the API. | ||
* Ask yourself if the examples really cover everything you need to know: | * Ask yourself if the examples really cover everything you need to know: | ||
| Line 84: | Line 84: | ||
== FrameXML function pages == | == FrameXML function pages == | ||
<small>These are the "UI" tagged functions, e.g. [[[API ChatFrame AddChannel|ChatFrame_AddChannel]]], [[[API ToggleBackpack|ToggleBackpack]]]</small> | <small>These are the "UI" tagged functions, e.g. [[[wo:API ChatFrame AddChannel|ChatFrame_AddChannel]]], [[[wo:API ToggleBackpack|ToggleBackpack]]]</small> | ||
* Name the page <tt style="border-bottom: 1px dotted;">API ''FunctionName''</tt>. | * Name the page <tt style="border-bottom: 1px dotted;">API ''FunctionName''</tt>. | ||
| Line 91: | Line 91: | ||
=== Other FrameXML pages === | === Other FrameXML pages === | ||
<small>For instance [[[API AuctionFrameAuctions.duration]]] et al.</small> | <small>For instance [[[wo:API AuctionFrameAuctions.duration]]] et al.</small> | ||
* Use {{t|framexml}} at the top of the page. Places the page in [[:Category:FrameXML documentation]]. | * Use {{t|framexml}} at the top of the page. Places the page in [[:Category:FrameXML documentation]]. | ||
| Line 109: | Line 109: | ||
== See also == | == See also == | ||
* [[:Category:Interface customization templates]] - Contains the above page tags, and some more | * [[:Category:Interface customization templates]] - Contains the above page tags, and some more | ||
* [[API Notation and Conventions]] | * [[wo:API Notation and Conventions]] | ||
* [[Help:Editing]] - For the Wiki markup syntax | * [[Help:Editing]] - For the Wiki markup syntax | ||
[[Category:Interface customization]] | [[Category:Interface customization]] | ||
[[Category:Web API]] | [[Category:Web API]] | ||
[[Category:WoW development]] | [[Category:WoW development]] | ||