Plugins
Published Plugins
Load-on-Demand (LoD) Combinations
The addon itself
Ouro Loot becomes LoD if you have Addon Loader installed, which you totally should anyhow because it's awesome. Loading will be delayed until you use the /ouroloot command, open its options via the Interface menu, or join a raid group. Other slash commands and keyboard shortcuts will not work until then.
Plugins
Plugin modules can be marked as LoD themselves in their .toc file. In such cases, a placeholder tab will be created with the name of the plugin in red. Clicking that tab will remove the tab and load the plugin. If the plugin registers any new text generators, that will cause additional "real" tabs to appear in place of the placeholder. The trick of /ouroloot arguments opening tabs of similar names will not cause plugins to load; names that would normally be matched will not be found until their generating modules are actually loaded.
There can be odd interactions if you've marked LoD plugins as disabled in the addons menu accessible from the character selection screen. Behavior depends on the "Include disabled plugins" checkbox on the Options tab. In this table, "PH" refers to the placeholder tab:
Plugin is: | ...normal | ...LoD | Include option checked |
---|---|---|---|
enabled | loaded at login1 | PH present, module loaded when clicked | n/a |
disabled | PH never seen | PH present, user prompted when clicked2 | PH visible anyhow |
1 If the main addon has been made LoD via Addon Loader, but an enabled module is not LoD, then the module will cause Ouro Loot to load normally at login, along with the module.
2 Clicking on the placeholder tab of a disabled module will popup a reminder and confirmation. Choosing to load the module will first enable it.
TOC
Writing a .toc file for an Ouro Loot (OL) plugin varies depending on how you want your code to interact with it. It's worth noting that this is completely orthogonal to whether your code actually creates any formal plugin modules/addons.
Totally Separate
OL knows nothing about your addon:
## RequiredDeps: Ouro_Loot
LoD with a placeholder tab
As described above:
## RequiredDeps: Ouro_Loot ## LoadOnDemand: 1 ## X-OuroLoot-Plugin: Foo
The "Foo" text is placed in the placeholder tab.
LoD without a placeholder tab
OL knows nothing about your addon:
## RequiredDeps: Ouro_Loot ## LoadOnDemand: 1 ## LoadWith: Ouro_Loot
API
The API reference has its own page.