File Details
1.1
- R
- Nov 12, 2014
- 29.02 KB
- 353
- 6.0.3
- Retail
File Name
GridLayoutByRole-1.1.zip
Supported Versions
- 6.0.3
tag 1.1
c1b084dffcfd47aa010021ab0f67b71bb1f8c36c
Johnny C. Lam <jlam88@gmail.com>
2014-11-12 01:32:52 -0500
Tagging as 1.1 release.
--------------------
Johnny C. Lam:
- Use binary search instead of scanning the entire name list.
- Switch from using Grid_RosterUpdate to Grid_UnitJoined/Grid_UnitChanged.
The latter two events are more fine-grained and we were scanning the
entire roster on each update with Grid_RosterUpdate. Switching to the
other events allows for updating a single unit at a time for better
efficiency.
- Push the code that grabs cached LibGroupInSpecT info into GetRole().
As the __index metamethod, they were interfering with checking for old
roles of existing GUIDs. This makes the functions associated with
ROLE_CHANGED_INFORM and GroupInSpecT_Update actually do something.
- Remove unnecessary UpdateGroups() call in PostEnable().
Grid generates a Grid_RosterUpdate event shortly afterwards which will
cause UpdateGroups() to run.
- Change the function call chain so that hooking isn't necessary.
Redesign so that UpdateGroups() is called in response to roster or
specialzation updates and it independently calls requests reloading the
layout if the "by-role" layout has changed. Remove the direct
manipulation of the secure group headers because it can be handled
entirely within GridLayout.
Make the "by-role" layouts make use of more features that can be used in
layouts, as documented in Grid/Layouts.lua particular, use "defaults"
instead of directly setting the same attributes in every group -- using
layout group defaults allows for GridLayout to do the copying for us.

