lib-st in action!

lib-st provides a convenient way to create and display a scrolling table of data.
Supply column info and your table data, and you're off!

To get a handle in lua:

local ScrollingTable = LibStub("ScrollingTable");

To package in your addon, add to your .pkgmeta file:

        url: svn://
        tag: latest

Leave off the tag line if you want the absolute lastest alpha version from the site. (I try to keep a stable copy tagged as latest)

New Features:

Added support for calling SetData with a minimal dataset which can drastically reduce the number of tables that exist within the mod... at a slight cost to customization.

Other recent changes

If no args or colorargs are specified for value and color functions, respectively, instead of no args, these args will be passed:

function (data, cols, realrow, column, sttable)  
    -- sttable is a reference to the scrolling table

Here's some nitty-gritty:

  • Set names and widths of columns, lib-st will set the table width on it's own!
  • Set the number of rows, and a value to use for row height, lib-st will set the table height on it's own!
  • Set background colors for each column.
  • Set column text alignment.
  • Set column text color.
  • Set row text color.
  • Set text color on a cell-by-cell basis.
  • Supply functions to be evaluated for cell data, and cell/row/column text colors!
  • Filter table data via a filter funtion.
  • Table sorts are NON-DESTRUCTIVE. Data or the order of data supplied is never changed (unless modified by user supplied functions) for the display of the table. No copies of the data are made either. 1 Table, your data, sort it, index it as it was when it was created, update it as you see fit.
  • Hookable ui events. find out more here
  • Custom cell formatting with a custom display function
  • Enable selection on your scrolling table

Find out how to create a scrolling table using lib-st!
Let me know if you use it!!

-> Screenshots

Known consumers of lib-st

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Endar_Ren Endar_Ren Dec 29, 2012 at 17:58 UTC - 0 likes

    @ddumont: Go

    Alright, just wanted to check. I will see if I can find anything to fix it. Thank you.

  • Avatar of ddumont ddumont Dec 28, 2012 at 22:01 UTC - 0 likes

    @Endar_Ren: Go

    The project hasn't needed to be updated in quite a while... there may have been some changes to wow that cause the world map to mess things up, but I haven't been playing for a long time now and can't debug it.

    If you have the time to debug the issue, please let me know what you find. If you have a patch, I'll gladly include it.

  • Avatar of Endar_Ren Endar_Ren Dec 28, 2012 at 21:46 UTC - 0 likes

    I really like the work you have done on this library. The only problem I have been having is that whenever I open the world map, the tables will permanently disappear. Is it something I could be doing wrong with the code that is causing this?

  • Avatar of ddumont ddumont Aug 03, 2012 at 17:37 UTC - 0 likes

    Glad you like it and are still using it!

  • Avatar of Farmbuyer Farmbuyer Aug 03, 2012 at 07:34 UTC - 0 likes

    It would be nice to be able to change the text of the column headers. Right now we have to reset them entirely with SetDisplayCols, which can run afoul of ticket 27.

    But that's a minor problem; I'm still getting great use out of the library. Thanks again!

  • Avatar of ddumont ddumont Jun 04, 2011 at 20:52 UTC - 0 likes

    Sorry, the lib does not support categories.

    If you submit a patch though i'll probably take it.

  • Avatar of upyursh upyursh Jun 04, 2011 at 18:40 UTC - 0 likes

    Is there are way to build heirachy into the table, so for example;

    • Cat 1
    • Cat 2
    • Cat 3
    • Cat 4

    Then clicking on Cat 2 would then show

    • Cat 1
    • Cat 2
    • Item 1
    • Item 2
    • Item 3
    • Cat 3
    • Cat 4

    I'd like the Cat rows to be colored differently so they are clearly "Categories"


    Last edited Jun 04, 2011 by upyursh
  • Avatar of sapu94 sapu94 Jun 03, 2011 at 03:40 UTC - 0 likes

    I am overriding the display functions as you suggested. Working well. Thanks again.

    Last edited Jun 03, 2011 by sapu94

    Lead Developer and Director of TradeSkillMaster | @Sapu94 on Twitter

    "A good programmer is someone who always looks both ways before crossing a one-way street." Doug Linder

  • Avatar of ddumont ddumont Jun 01, 2011 at 12:22 UTC - 0 likes

    The easiest way would be to embed the image refs in the string contents of the cell.

    The best way would probably be to override the custom display function., you get way more control over how the image is displayed( padding, alignment, etc)

    In sdkp there's a slideout panel that has a list of loot that's been assigned for the dkp run. In the table data, I just put the item id string. The column has a display function that reads that in and sets the contents to an image.

  • Avatar of sapu94 sapu94 Jun 01, 2011 at 05:36 UTC - 0 likes

    What would be the best way of having one row of a table be filled with item icons? Would I just need to have custom display functions for the cells and just do all the icon stuff myself on the cell frame?


Date created
Oct 14, 2008
Last update
Jul 26, 2016
Development stage
GNU General Public License version 2 (GPLv2)
Curse link
Reverse relationships
Recent files
  • R: v4.0.2 for 7.0.3 Jul 26, 2016
  • A: r149 for 7.0.3 Jul 26, 2016
  • R: v4.0.1 for 4.1.0 Jul 24, 2016
  • A: r147 for 4.1.0 Jul 24, 2016
  • R: v4.0 for 4.1.0 Jun 06, 2011



Embedded library