An extension for Grid.
GridLayoutLayouts.lua file contains many "Layouts" to arrange the unit buttons. Sometimes we may find it doesn't meet the needs.
This extension makes it possible to add new layouts in game. And it simplified the code to describe a layout.
Click "Grid - Layouts - Custom Layouts" to bring up a edit frame.
Each line stands for a Unit Button Group. The Grammer is:
List of the attributes
showRaid = [BOOLEAN] - true if the header should be shown while in a raid
showParty = [BOOLEAN] - true if the header should be shown while in a party and not in a raid
showPlayer = [BOOLEAN] - true if the header should show the player when not in a raid
showSolo = [BOOLEAN] - true if the header should be shown while not in a group (implies showPlayer)
nameList = [STRING] - a comma separated list of player names (not used if 'groupFilter' is set)
groupFilter = [1-8, STRING] - a comma seperated list of raid group numbers and/or uppercase class names and/or uppercase roles
strictFiltering = [BOOLEAN] - if true, then characters must match both a group and a class from the groupFilter list
sortMethod = ["INDEX", "NAME"] - defines how the group is sorted (Default: "INDEX")
sortDir = ["ASC", "DESC"] - defines the sort order (Default: "ASC")
groupBy = [nil, "GROUP", "CLASS", "ROLE"] - specifies a "grouping" type to apply before regular sorting (Default: nil)
groupingOrder = [STRING] - specifies the order of the groupings (ie. "1,2,3,4,5,6,7,8")
maxColumns = [NUMBER] - maximum number of columns the header will create (Default: 1)
unitsPerColumn = [NUMBER or nil] - maximum units that will be displayed in a singe column, nil is infinate (Default: nil)
The simplify is:
You don't need the entire class/role name, just the start part of it :
WARLOCK or WARLOC or WARL or WL -> "WARLOCK"
WARRIOR or WARR -> "WARRIOR"
MAINT or MT -> "MAINTANK"
MAINA or MA -> "MAINASSIST"
5/2 -> unitsPerColumn="5";maxColumns="2"
PET -> isPetGroup=true
INDEX or NAME -> sortMethod="INDEX" or sortMethod="NAME"
ASC or DESC -> sortDir="ASC" or sortDir="DESC"
STRICT -> strictFiltering="true"
GROUP or CLASS or ROLE -> groupBy="GROUP" or groupBy="CLASS" or groupBy="ROLE"
You don't need to write "groupFilter=", for example:
1,2,3,4,5 is just the same as groupFilter="1,2,3,4,5"
WARR,PAL,DRU is just the same as groupFilter="WARRIOR,PALADIN,DRUID"
If the group name is not group ids and not class or role names, for example:
Abcde,Xyz will be parsed to nameList="Abcde,Xyz"
That's all. A little complicated though. Advanced user only :(
Actually, I don't use this much, just put it here for sharing.
A new attribute was introduced since r6 :
Now you can add a NOREPEAT(NOREP,NOR and NR is just the same) attribute to some header, for example
1;NOR 2;NOR 3;NOR 4;NOR 5;NOR Someone,Anotherone WARRIOR,PAL;NR
In the above layout, the first 5 group will not show any of Someone or Anotherone, nor anyone of WARRIOR or PALADIN.
The 6th group only shows Someone and Anotherone, and if none of them is here, the entire group will not be shown.
The 7th group will show Warriors and Paladins, but not Someone or Anotherone, even their class is war or pal.
- Date created
- May 31, 2009
- Last update
- May 05, 2011
- Development stage
- GNU General Public License version 2 (GPLv2)
- Recent files