This section Titan files with a brief description of what is in each.
====== LDBToTitan.lua ======
A "bridge" module to ensure proper registration and communication of LDB plugins with Titan Panel
====== TitanAutoHide.lua ======
Contains the routines of AutoHide Titan plugin to auto hide a Titan bar.
Auto hide uses a data driven approach. Rather than seperate routines for each bar, auto hide is implemented in a general manner.
The tables TitanBarData & AutoHideData hold relevant data needed to control auto hide.
The index into AutoHideData is the plugin button name given in TitanPanel.xml.
If auto hide is turned on these routines will show / hide the proper bar (and plugins on the bar).
These routines control the 'push pin' on each bar, if shown.
====== TitanConfig.lua ======
This file contains routines used by Titan to show and process the Titan options.
Titan uses Ace libraries to place the Titan options within the Blizzard option screens.
Most routines in this file are local because they create the Titan options.
These routines are called first when Titan processes the 'player entering world' event.
If an options list (skins, extra, etc) is changed by the user then the Ace table needs to be updated and Blizz informed to 'redraw'.
====== TitanMovable.lua ======
Contains the routines to adjust the Blizzard frames to make room for the Titan bars the user has selected.
There are a select set of Blizzard frames at the top of screen and at the bottom of the screen that Titan will move.
Each frame adjusted has an entry in TitanMovableData. TitanMovableData is local and not directly accessible via addons.
However addons can tell Titan to not adjust some or all frames using TitanUtils_AddonAdjust(frame, bool). Addons that replace all or parts of the Blizzard UI use this.
The user can turn turn on / off the adjusting of all top frames or all bottom frames.
In addition the user can select to turn off / on adjusting of select top frames (minimap or ticket frame) or select bottom frames (chat / log or bags)
====== TitanPanel.lua ======
Contains the basic routines of Titan. All the event handler routines, initialization routines, Titan menu routines, and select plugin handler routines.
====== TitanPanelTemplate.lua ======
Contains the routines to handle a frame created as a Titan plugin.
====== TitanPluginDoc.lua ======
This file contains documentation of Titan to assist a developer.
====== TitanUtils.lua ======
This file contains various utility routines used by Titan and routines available to plugin developers.
====== TitanVariables.lua ======
This file contains the routines to initialize, get, and set the basic data structures used by Titan.
It also sets the global variables and constants used by Titan.
TitanSettings, TitanSkins, ServerTimeOffsets, ServerHourFormat are the structures saved to disk (listed in toc).
TitanSettings: is the table that holds the Titan variables by character and the plugins used by that character.
TitanSkins: is the table that holds the list of Titan and custom skins available to the user. It is assumed that the skins are in the proper folder on the hard drive. Blizzard does not allow addons to access the disk.
ServerTimeOffsets and ServerHourFormat: are the tables that hold the user selected hour offset and display format per realm (server).