• 0

    posted a message on eePanels2 - Official Thread
    Quote from Skye McCloud »

    Now, what I'm trying to understand is how to make a panel that will, say, carry three of my spell bars.


    The short answer is you don't.

    The long answer is that it's probably possible, but it would take someone who's knowledgeable enough to write their own lua script which will parent the bartender actionbars to the eePanel (ie: someone not me).
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from Skye McCloud »

    I found the macro moments after making my post, but it's not been of much help to me since then. I tried to set up my minimap to a panel, but I couldn't actually move the minimap itself with it.

    When parenting and anchoring, how do you keep whatever the panel is attached to with the panel?

    Also, what do I do when I'm using a mod like Bartender3, which doesn't give me the bar itself but rather a single button? Are there ways I can find the window name for the entire bar?


    1) Try parenting the eePanel to MinimapCluster (if you're using a minimap addon, I'm not sure if this works)

    2) Dunno what you mean. When you set the parent, the anchor will auto-change to be the same (you can then change the anchor if you want). The wiki explains what the difference between them is: eePanel visibility/opacity is inherited from the parent, positioning is inherited/related from the anchor.

    3) Try using the macro over one of the buttons, and use the button as a parent, then manually size the panel to be the size of your buttonbar.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    The wiki has a bunch of info on parenting, including the macro you can use to find out a frame's name (so you can parent/anchor to it).

    If you want to parent to a specific mod and are having problems, seach this thread for the addon's name, and see if you get a hit.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from Stako04 »

    So I've created my entire layout in Photoshop(took a screen shot in wow and worked off of that) and now that I've gotten to the point where I make my panels, I'm having a hell of a time getting them sized properly. What gives?

    Example: I could create a bar at the bottom of my screenshot, 1280px wide, taking up the entire width of the screen, then when I set it as the texture on a panel with a width of 1280, the texture ends up being wayyyyy too wide.



    Search is your friend - check the third result
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from Gilgallad »

    If it's not a problem, would it be possible for Violation to be added to eePanels2's OptionalDeps so that the script here works without having to manually edit eePanel2's TOC file after each update? Unless I am ignoring an existing workaround, that is.


    It's really not good form to do. The ToC hasn't changed for eePanels2 in quite a while. You could just set the file to read-only so it's not overwritten by updates.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from Phanx »

    No, it works in other places, and if I changed the opacity of the nonexistent background texture, the border texture appeared.

    1) The background color opacity is 0, because I don't want to see the background, and changing this had no effect on panel visibility. Changing the background texture opacity (even if I only changed it by 0.01 and immediately changed it back) caused the panel to appear with correct border opacity of 1.

    2) Nope. Changing the background texture opacity (even if I only changed it by 0.01 and immediately changed it back) caused the panel to appear with a correctly visible border.

    3) Nope. No part of the frame or panel was offscreen.

    Well, as mentioned in my last post, I was able to fix the problem by entering the actual file path to the texture and NOT using the SharedMedia texture support to select it. The panel is now correctly visible immediately when loading the UI, and does not require changing the opacity of the background to make it visible. All positioning and parenting settings are the same as they were before when it was not visible immediately.


    Oh, I guess I didn't understand what exactly was going on. You're using a SharedMedia texture with the rest of the panel invisible, but it doesn't show up unless you hard-code the texture path. If I can find time, I'll look at the addon code to see if it's the cause.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from X-buZZ »

    Hi there,

    i am trying to create some eePanels for player and pet debuffs

    How do i have to change the following code in order to get the debuffs instead of the buffs:

    Thank you for the help.

    Best regards
    X-buZZ



    http://www.wowwiki.com/API_UnitDebuff

    local debuffs= 1, onlyShowRemovableBuffs= false;
    local debuff,_,_,_,_,_,_ = UnitDeuff("player", debuffs, onlyShowRemovableBuffs);
    while debuff do
      debuffs = debuffs + 1;
      debuff,_,_,_,_,_,_ = UnitDeuff("player", debuffs, onlyShowRemovableBuffs);
    end
    debuffs = debuffs - 1;
    -- 'debuffs' should now contain the number of debuffs on the player






    Quote from Phanx »

    "alpha: 1"
    "visible: 1"
    "parents visible: 1"

    Through additional experimentation I solved the problem by entering the path to my border texture file manually instead of selecting it in the list. Bug in the LibSharedMedia-2.0 support maybe?


    Well, there are only a few possible options left:
    1) the panel's borders are hidden and the background color opacity is 0
    2) the panel is too small to see
    3) the panel is off the screen, either because the anchor frame is offscreen or because the anchor frame extends offscreen and, and you're anchored to that part.

    You can try s'more debug output. If all of these checkout, I can't think of what the problem could be
    /script eePanels2:Print("Size" .. eePanelNUMBERHERE:GetWidth() .. " " .. eePanelNUMBERHERE:GetHeight());
    /script eePanels2:Print("Parent" .. eePanelNUMBERHERE:GetParent());
    /script eePanels2:Print("Parent Size" .. eePanelNUMBERHERE:GetParent():GetWidth() .. " " .. eePanelNUMBERHERE:GetParent():GetHeight());
    /script eePanels2:Print("Parent Position" .. eePanelNUMBERHERE:GetParent():GetTop() .. " ".. eePanelNUMBERHERE:GetParent():GetLeft())
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    You can try printing out some debug info, see what's up with the panel

    /script eePanels2:Print("alpha: " .. eePanelNUMBER_HERE:GetEffectiveAlpha())
    /script eePanels2:Print("visible: " .. eePanelNUMBER_HERE:IsShown())
    /script eePanels2:Print("parents visible: " .. eePanelNUMBER_HERE:IsVisible())
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from Phanx »

    But I don't want it anchored to the center with no offsets... I only want it outlining the frame's icon, not the entire frame. It's anchored RIGHT/RIGHT with an x-offset of 2 and a y-offset of -1.


    I just asked you to do that to make sure that the panel was visible since I don't know anything about that frame. It could be extending way outside the viewable area of your screen for all I know, and thus anchoring to the sides could be hiding the panel.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from Phanx »

    Didn't help. The panel anchored to Earth_Shield_Tracker_Tracker still doesn't appear on login; the new "dynamic frames fix" predictably also didn't help, as this frame is created in XML at load... I've deleted the panel and recreated it, and it simply won't appear on login. >_<


    Did you double-check the panel's size and anchoring type/position? Make sure it's set to CENTER/CENTER and the x/y coords are set to 0.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Ok, here's an update:

    I added a toggleable switch to the eePanel2 menu called 'Dynamic Frames Fix'. Turning this on will perform the above mentioned secure hook, and should help people when parenting/anchoring to pitbull and other dynamically created frames.

    It's a toggle because I'm not sure how much - if any - of a performance hit this could create. I've read that hooking secure functions can be somewhat slow and depending on how many dynamically created frames you're hooked to (but haven't been created yet) you could notice the effects depending on frame creation churn.

    I've also added the AceHook-2.1 library to eePanels2 (so I could best implement the above workaround). This means you'll no longer need to manually add the AceHook library into your eePanel2 scripts. I don't think this will affect your current scripts, but if it does I'm sorry. Simply remove any AceHook references from your scripts and perform a /rl if it does. I'll see about going through the script wiki over the weekend and remove all the AceHook references if I get time.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from s3rial »

    So, I take no credit for this at all because I'm not the one who came up with it, but I mentioned that I was having a problem hooking eePanels to Pitbull's cluster frames over at Penny Arcade's WoW UI thread, and Saeris came up with this:

    hooksecurefunc("CreateFrame", (function() eePanels2:UpdateBadParents(); end));


    Just add it to core.lua, and eePanels2 gains the ability to attach to Pitbull's cluster frames.

    Again, I take no credit for this at all. Saeris did all the work. I just benefit from it.



    Yeah, that's a pretty good work around. I've actually thought about hooking the CreateFrame function before, but never really looked into it. My concern would be that if you had quite a few "bad" panels (ie: panels attached to frames which haven't been created yet), it could lead to a lot of overhead, as multiple global lookups would be performed every time a new frame is created.

    It's the type of thing I would be hesitant to add directly to the addon without doing some performance testing. Right now I'm juggling 4 different home projects, and I haven't logged into WoW in about 2 months. I'll add it to the Wiki for now, and we'll see how things turn out.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from s3rial »

    I've actually tried those scripts, as well as a few variations that've been suggested to me. Invariably, I get the following error message:

    [string "eePanels2:RegisterEvent("PLAYER_ENTERING_WO..."]:
    1. AceEvent-2.0: Cannot register event "PLAYER_ENTERING_WORLD" to method "PLAYER_ENTERING_WORLD", it does not exist.


    You'll need to post your entire code.




    Quote from Moocowcoww »

    Ok i have a queson.
    But it hooks to the frame just doesnt resize. Anyone have maybe a sulotion to my problem?


    Not me. People reported that it would eventually resize, just not right away.




    Quote from Phatrik »

    From http://www.wowace.com/wiki/EePanels_Scripts : Make an eePanel show only when in a raid or group, and not in a Battleground or Arena

    Can anyone correct this so it works? Since when I try to use it, it tells me the following: [string "-- Hide the panel so it's shown until we want it to..."]:10: ')' expected (to close '(' at line 7) near 'then'


    For some reason the comments (lines that start with '--') mess things up for some people. Try this:
    THIS:Hide()
    
    function eePanels2:RaidPanelVisibility(self, event, ...)
      if GetNumPartyMembers() > 0 and not ((select(2, IsInInstance()) == "pvp" or select(2, IsInInstance()) == "arena") or GetNumRaidMembers() > 0 and not ((select(2, IsInInstance()) == "pvp" or select(2, IsInInstance()) == "arena") then
       THIS:Show()
      else 
       THIS:Hide()
      end
    end
    
    eePanels2:RegisterEvent("PLAYER_ENTERING_WORLD", eePanels2.RaidPanelVisibility)
    eePanels2:RegisterEvent("PARTY_MEMBERS_CHANGED", eePanels2.RaidPanelVisibility)
    eePanels2:RegisterEvent("RAID_ROSTER_UPDATE", eePanels2.RaidPanelVisibility)
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Yeah, forgot about the event. It looks like Melikae is right.
    Posted in: General AddOns
  • 0

    posted a message on eePanels2 - Official Thread
    Quote from X-buZZ »

    I want to resize a panel according to the number of buffs my pet has. Which event do i need to trigger this?

    Best regards
    X-buZZ


    The same script on the previous page, you just use UnitBuff("pet", ...) instead of UnitBuff("player", ...).




    Quote from s3rial »

    I've tried searching, but my search-fu is weak, and I've been finding conflicting answers, so I figure I'll ask and hopefully get something definitive:

    Is there a way to draw eePanels on PitBull's party/raid/cluster frames?

    I've got frames parented to PitBullCluster1UnitButton1 (and 2 and so on), but when I join a party (or a raid), they don't show up.


    No, those frames are created on-demand, and you can't set them as a parent or anchor. You can create a script which will display when you're in a party/raid and manually position it where your raid/party frames are. Scripts for this are on this thread and in the script wiki.
    Posted in: General AddOns
  • To post a comment, please or register a new account.