WoW:Khaos: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
m (sp)
(Typo fixing, Replaced: <br clear=all /> → <br clear="all" /> (2) AWB)
Line 1: Line 1:
{{funclib|Khaos}}
'''Khaos''' is a universal configuration registration system. It allows you to create configurations for addons or addon-groups and cluster them together. You can import/export your own custom configurations and have them work with anyone else who is using Khaos. Below are some examples of using Khaos.
{{tocright}}
Read the [[Khaos/ChangeLog|ChangeLog]].


===v2.4===
#state.type == K_COLORPICKER on callback when clicked via human input (similar to the other input types)
#Slightly modified KhaosConfig_SetCheck_OnClick to allow it to be hooked by Ace2Khaos
#Taiwan translation by DDx
#Tweak to allow frame to remain open despite a blizzard bug with right offset and centered UIPanels
#Updated toc to 20100
#DropDownList1 now hides when the KhaosFrame does and is wont go off screen


===v2.3===
=== Khaos API ===
#Doubled the time before feedback fades (to 6s)
* [[Khaos.registerFolder|registerFolder]] - Registers a custom folder
#Option text and header mouse-overs now correctly shows feedback
* [[Khaos.updateFolder|updateFolder]] - Updates a custom folder
#Option registration disabled settings are now optional
* [[Khaos.validateFolder|validateFolder]] - Validates a custom folder
#Option dependencies can now be defined as functions
* [[Khaos.unregisterFolder|unregisterFolder]] - Unregisters a custom folder
#pcall errors from Khaos are now printed to chat (instead of using message() which seems to cause more errors)
#For pulldown options setup.multiSelect now correctly works with setup.noSelect


===v2.2===
* [[Khaos.registerOptionSet|registerOptionSet]] - Registers an option set
#Changed collumn widths to make more of the addon names visible
* [[Khaos.updateOptionSet|updateOptionSet]] - Updates an option set
#Difficulties changed to a single "Advanced Options" checkbox, default unchecked
* [[Khaos.validateOptionSet|validateOptionSet]] - Validates an option set prior to registration
#Added blank configuration section text
* [[Khaos.unregisterOptionSet|unregisterOptionSet]] - Unregisters an option set
#Configuration section now scrolls slower with the mouse wheel
#Added addon dependency trees to the addon list
#Addon help text now shows unloaded required dependancies in red.
#Right clicking an addon now selects the addon as well as shows the dropdown menu
#Removed configuration categories/tabs/folders
#"Set Default" popup is now only used at the beginning before a configuration has been selected. To select the default afterwards simply check the box next to it in the selection menu or right click and select "Set to default"
#Fixed help "?" icon hover text
#Changed all tooltips to use the help text format at the bottom of the frame
#OnShow now re-centers the window if it hasn't been manually dragged.


===v2.11===
* [[Khaos.registerConfigurationLoadNotice|registerConfigurationLoadNotice]] - Register to be notified when the user selects a different configuration
#Fixed bug in the config dropdown menu
* [[Khaos.unregisterConfigurationLoadNotice|unregisterConfigurationLoadNotice]] - Removes the load updater with specified id


===v2.1===
* [[Khaos.registerGlobal|registerGlobal]] - Registers a global variable to be saved/loaded when the user selects a new configuration
#Fixed bug in setSetKeyParameter not returnign after an error
* [[Khaos.unregisterGlobal|unregisterGlobal]] - Removes a global from the configuration update list
#TOC to 20003
* [[Khaos.updateGlobal|updateGlobal]] - Updates the global variable stored inside the configuration


===v2.0===
* [[Khaos.getSetKey|getSetKey]] - Allows you to directly access a key-value pair inside the configuration
#No longer requires Earth
* [[Khaos.setSetKey|setSetKey]] - Allows you to directly modify a key-value pair inside the configuration
#Now uses embedded DynamicPopup library for simple static popups
* [[Khaos.setSetKeyParameter|setSetKeyParameter]] - Allows you to directly set a key-value pair's parameter
#Now uses embeddable FireTree XML Template Library
* [[Khaos.getSetEnabled|getSetEnabled]] - Allows you to detect if an option set is on or off
#Included derived Radio Button and Vertical Tab templates
* [[Khaos.setSetEnabled|setSetEnabled]] - Allows you to turn an option set on or off
#Now uses the blizzard dropdown menu template
 
#Changed debug globals to only KHAOS_DEBUG and KHAOS_DEBUG_VALUE
* [[Khaos.updateSetKeys|updateSetKeys]] - Allows you to update groups of set keys and refresh the gui together
#Available Standalone version with all libs embedded
* [[Khaos.refresh|refresh]] - Force a re-draw of the gui
 
 
=== Khaos Data Types ===
* [[KhaosConfigurationFolder]] - folders for sets
* [[KhaosSet]] - sets of options
* [[KhaosOption]] - options
* [[KhaosConfigurationLoadNotice]] - notify when config is loaded
* [[KhaosSlashCommand]] - slash commands for configurations
 
=== Khaos Examples ===
 
====Simple Options====
 
* [[KhaosExamples|Khaos Option Examples]]
 
==== Khaos Configuration Template ====
 
* [[Khaos Configuration Template]]
 
==== Khaos Difficulty Levels ====
 
* [[Khaos Difficulty System]]
 
==== Login Screen ====
 
Choose a configuration from the drop-down menu that appears when you login.
 
The game will load that configuration so that you can preview it. If you press "Use", it will use that configuration. If you select "Edit" it will display the main screen. Checking the box will make it auto-pick that configuration when you login to this server with that character. === Khaos Tutorials ===
 
==== Configuration Demo ====
 
[[Image:Khaos example.jpg|thumb|The configuration screen]]
Click [[Khaos Configuration Example| here]] to see an example, and the code which generated it. <br clear="all" />
 
==== Khaos Folders ====
 
[[Image:Khaos example folders.jpg|thumb|Example folders]]
The yellow text marks a folder. White text with checkmarks denotes an option set and if it is enabled or not. <br clear="all" />
 
==== Khaos Option Sets ====
 
[[Image:Khaos example options.jpg|thumb|Example options]]
Each line is a single option. The whole scrollable pane is considered an option set.
 
[[Category:Function Libraries]]
[[Category:Cosmos AddOns]]

Revision as of 14:09, 1 August 2008

Khaos is a universal configuration registration system. It allows you to create configurations for addons or addon-groups and cluster them together. You can import/export your own custom configurations and have them work with anyone else who is using Khaos. Below are some examples of using Khaos.

Read the ChangeLog.


Khaos API

  • registerGlobal - Registers a global variable to be saved/loaded when the user selects a new configuration
  • unregisterGlobal - Removes a global from the configuration update list
  • updateGlobal - Updates the global variable stored inside the configuration
  • getSetKey - Allows you to directly access a key-value pair inside the configuration
  • setSetKey - Allows you to directly modify a key-value pair inside the configuration
  • setSetKeyParameter - Allows you to directly set a key-value pair's parameter
  • getSetEnabled - Allows you to detect if an option set is on or off
  • setSetEnabled - Allows you to turn an option set on or off
  • updateSetKeys - Allows you to update groups of set keys and refresh the gui together
  • refresh - Force a re-draw of the gui


Khaos Data Types

Khaos Examples

Simple Options

Khaos Configuration Template

Khaos Difficulty Levels

Login Screen

Choose a configuration from the drop-down menu that appears when you login.

The game will load that configuration so that you can preview it. If you press "Use", it will use that configuration. If you select "Edit" it will display the main screen. Checking the box will make it auto-pick that configuration when you login to this server with that character. === Khaos Tutorials ===

Configuration Demo

File:Khaos example.jpg
The configuration screen

Click here to see an example, and the code which generated it.

Khaos Folders

Example folders

The yellow text marks a folder. White text with checkmarks denotes an option set and if it is enabled or not.

Khaos Option Sets

Example options

Each line is a single option. The whole scrollable pane is considered an option set.