- Registered User
Member for 13 years, 8 months, and 10 days
Last active Wed, Nov, 20 2013 10:35:23
- 0 Followers
- 55 Total Posts
- 0 Thanks
Oct 13, 2010Hah!! I found the solution to all your problems. Had to wade through the Blizzard code for a while to figure it out. Remember how GetModifiedUnit was returning a wrong result for pets? Well, Blizzard uses that function as well, and gets a wrong result. BUT, the way in which they PRODUCE the wrong result is related to setting the unit suffix for pet units, so there is a workaround. I will post a working version of GridLayout:CreateHeader() method in a few minutes that makes everything work correctly. I just have to answer the phone first, my wife is calling me :-pPosted in: Grid & Grid2
Oct 13, 2010Using the unit suffix attribute instead of the petgroup header is creating an issue . . . at least for me. There is a transparent unit frame for every player being shown in the pet group, so that pets do not necessarily appear at the top of their column (i.e. there is empty space if the pet does not belong to the first player in the party). This could get really messy in big raids.Posted in: Grid & Grid2
Interestingly, if I revert to using Clique r143, which is a version of the old Clique that was patched for use in the beta, then I can drop all of the new code in GridLayout.lua that attempts to work with clique, go back to using the pet group headers, and everything works. Furthermore, if I do that, I can see the Grid frames in the Clique frame editor, but in the new version, even with the added code, I can not. So in some sense, this problem is a regression in Clique.
I will spend some time analyzing the whole problem today and let you know if I find anything useful.
Oct 13, 2010You need to get an svn client, such as tortoisesvn, and use it to "checkout" the following address:Posted in: Grid & Grid2
You will need to separately download the required libraries from their respective pages on wowace (you can see which ones you need by looking in the .pkgmeta in the Grid folder). Put them all in the Libs folder within your Grid folder.
Depending if you've ever done this sort of thing before, that is likely either too much information or not quite enough . . . but that's more or less what you would have to do.
Just keep in mind that if you download the branch you are downloading something that the maintainer has not yet released, so don't blame him if isn't perfect. Blame me, if you want, but don't blame him.
If you do decide to do it but get stuck on some detail, you can pm me and I'll try to help out if I'm available.
Oct 13, 2010Hmmm. Didn't see anyone 'belittle' or say anything bad about Phanx here, actually. Phanx was very clear that he is doing his best but has a big work load at the moment. I'm sure he'll get something out as soon as he reasonably can.Posted in: Grid & Grid2
Anyone who is so desperate that they can't wait can download the branch if they want.
Oct 13, 2010Really, I think the latest commit to the branch for 4.0 is pretty good at this point. At the very least worth packaging as an alpha for 4.0 and getting it out there for broader testing. I suspect the main holdup is that Phanx is crazy busy with work and has his priorities straight.Posted in: Grid & Grid2
Oct 12, 2010Hmm, the fix for clique breaks pets. If I comment it out, pets appear, if I don't, they don't. Also I'm not clear on why it is needed. Clique works for me perfectly without it, and the Grid unit frames are listed in Clique. I'm using the Cataclysm version of Clique from wowinterface.Posted in: Grid & Grid2
Just to clarify, what I am commenting out to get it working is GridLayout:42
local header = CreateFrame("Frame", "GridLayoutHeader" .. NUM_HEADERS, GridLayoutFrame, template ) -- .. ", GridClickCastUnitTemplate")
Oct 11, 2010Ok, here is the fix: add the following line to GridFrame.lua in the UpdateFrameUnits() method (it becomes line 1257):Posted in: Grid & Grid2
local unitid = SecureButton_GetModifiedUnit(frame) --> unitid = unitid and unitid:gsub("petpet", "pet") local guid = unitid and UnitGUID(unitid) or nil
because there is an error in the way SecureButton_GetModifiedUnit() is returning the unit string. Written this way it will not break the method if they fix the bug.
Oct 10, 2010Found a minor bug. In the options, when libsharedmedia is loaded, the select controls for font and texture as they are generate errors. Line 1118 of GridFrame.lua, for example, reads:Posted in: Grid & Grid2
dialogControl = "LSM30_Font",
This and the similar line in the next control cause the errors. I have not spent time trying to figure out the purpose of those lines. The controls seem to work with those lines commented, but I don't know what might be lost by doing that. If it is helpful I can spend some time trying to figure out what is intended there.
p.s. A quick search doesn't show any references to LSM30_Font anywhere in the LibSharedMedia code or in any other included library that I see.
Oct 10, 2010Hmm. I get pets on mine, at least my own (haven't tested a pet layout in a group with another pet class), as long as the pet is summoned out of combat. Were the pets being summoned in combat, so that this is the same issue?Posted in: Grid & Grid2
Keep in mind that with the combat bug unfixed, if the pets were FIRST summoned in combat, the frames would then never initialize properly, and there would be no way for them to show even out of combat until the UI was reloaded and they were summoned out of combat. If that was the problem, then using the above fix for frame creation will fix that too.
In any case, I'll be using it in some guild dungeon runs tonight on beta; I'll see if I also have any issues with pets and report back.
Oct 7, 2010Ok. Here is a way to get the unit frames initialized ahead of time as a workaround for the bug where they don't initialize in combat.Posted in: Grid & Grid2
I added the following method to the group frames:
function GridLayout.prototype:ForceFrameCreation() -- deals with the blizz bug that prevents initializing unit frames in combat -- should be called when each group in a layout is initialized local maxColumns = self:GetAttribute("maxColumns") or 1 local unitsPerColumn = self:GetAttribute("unitsPerColumn") or 5 local startingIndex = self:GetAttribute("startingIndex") local maxUnits = maxColumns * unitsPerColumn self:Show() self:SetAttribute("startingIndex", - maxUnits + 1) self:SetAttribute("startingIndex", startingIndex) self:Hide() end
and call it in the GridLayout:LoadLayout() method towards the end (right before the "--place groups" comment), i.e.:
layoutGroup:ForceFrameCreation() -- place groups
Keep in mind that the Grid outer frame will not resize in combat (and never did), so adding members while in combat can still create some awkward looking situations.
Thanks to the PB4 authors whose code I studied to figure this out. Hope it helps!
Note: edited to add default values so that code will not fail when columns and units are not specifically set.
- To post a comment, please login or register a new account.