Get an Epic Experience with Premium


Libraries Login to Add Favorites
  • 1 Like
  • World of Warcraft
  • 909 Monthly Downloads
  • Supports: 6.2.0
  • 603,497 Total Downloads
  • Updated 08/31/2015
  • Created 09/26/2008
  • 77 Favorites
  • Project Site
  • Release Type: Release
  • License: CC BY-NC-SA 3.0
  • Newest File: r111-release
Support development! **

About LibSink-2.0

Please translate this library here:

LibSink-2.0 is a small library that you can throw in to easily get configuration options for your addon on where it should output any kind of messages.

By default, LibSink-2.0 supports several addons as output "sinks"; Blizzard floating combat text, MSBT, SCT, Parrot, BCF. And if that's not enough it can also route your output to any ingame channel, like raid warning, party chat, say. Or just to a local chatframe, UIErrorsFrame, etc.

In order to use LibSink-2.0 in your addon, you simply need to embed it into the addon object;

local addon = LibStub("AceAddon-3.0"):NewAddon("Bunnies!", "LibSink-2.0")

Then you get a few new methods on your addon object, most notably :Pour(...):

self:Pour(text, r, g, b, font, size, outline, sticky, location, icon)

The only ones you need to concern yourself with are usually text, r, g and b. These arguments say what text you want to output in and what color. RGB should be passed as decimal values ranging from 0.0 to 1.0.

The next thing you should note is that LibSink-2.0 provides a method on your addon object that you can invoke to produce options for configuring where, exactly, :Pour requests should be poured from your addon;


So obviously you use the one appropriate for your addon (probably Ace3 nowadays). If you already have an option table for your addon (which is very likely), you just insert the return value from this function into its own section in your config;

local options = {
    type = "group",
    name = "Bunny options!",
    args = {}
options.args.output = self:GetSinkAce3OptionsDataTable()

And, of course, LibSink-2.0 will need somewhere to store the users preferences about your addon, and since libraries can not have SavedVariables, you need to supply it;


LibSink can potentially store a few different keys in your database, including sink20OutputSink, sink20Sticky and sink20ScrollArea.

r111 | funkydude | 2015-08-31 21:05:53 +0000 (Mon, 31 Aug 2015) | 1 line
Changed paths:
   A /tags/r111-release (from /trunk:110)

Tagging as r111-release
r110 | funkydude | 2015-08-25 10:53:03 +0000 (Tue, 25 Aug 2015) | 1 line
Changed paths:
   M /trunk/LibSink-2.0/LibSink-2.0.lua
   M /trunk/LibSink-2.0.toc

allow a string scroll area
r108 | funkydude | 2015-08-21 16:10:19 +0000 (Fri, 21 Aug 2015) | 1 line
Changed paths:
   M /trunk/LibSink-2.0/LibSink-2.0.lua

Fix regression when selecting a channel output, remove support for dead addon "Parrot", move localization to wowace (everything needs translated), cleanups.
r107 | funkydude | 2015-08-20 15:35:53 +0000 (Thu, 20 Aug 2015) | 1 line
Changed paths:
   M /trunk/LibSink-2.0/LibSink-2.0.lua

Minor tweaks
r106 | funkydude | 2015-08-20 12:35:30 +0000 (Thu, 20 Aug 2015) | 1 line
Changed paths:
   M /trunk/LibSink-2.0/LibSink-2.0.lua

Tweak texture sizes and slightly trim borders for outputs with inline textures.
r105 | funkydude | 2015-08-20 12:32:48 +0000 (Thu, 20 Aug 2015) | 1 line
Changed paths:
   M /trunk/LibSink-2.0/LibSink-2.0.lua

Strip out texture paths from SendChatMessage outputs.

Login to Curse

Don't have an account? Create One.

Get an epic experience with Curse Premium
  • Faster addon downloads
  • Premium-Only Beta Giveaways
  • Ad-Free Curse experience
  • Premium Curse Client
  • and many More Features
  • Learn More »

Darkest Dungeon Wiki Editing Contest