Create panels for customizing your UI, sucessor to eePanels

Wiki and FAQ

Sample Scripts

OnClick now provides a pressed and released variable you can check for.

if pressed then
  -- do mouse down actions
elseif released then
  -- do mouse up actions

This means your script will get called twice when someone clicks the panel.

Here is a youtube link to a video Tutorial

Ive created an Example Texture Pack.

This example pack is just a template. If you want to use it as a storage spot for your art, look at the read me file for directions on usage.

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

  • Avatar of DasFaultier DasFaultier Nov 11, 2010 at 14:57 UTC - 0 likes

    Hey, i would like to request again an idea to change the framebordercolor of ally my frames by clicking a single one. The mentioned variable, containing "was.hidden" is still a mystery to me. (Idea is 3 Posts below)

  • Avatar of kagaro kagaro Oct 30, 2010 at 00:22 UTC - 0 likes

    Loom927: if you have libsharedmedia installed correctly and something adding fonts to libsharedmedia they will show up in the dropdown

  • Avatar of Velran Velran Oct 29, 2010 at 16:52 UTC - 0 likes

    Hello, I'm having trouble adding fonts to kgpanels. I've tried various methods people have posted on different forums, but they didn't work. Please can you help me?

    I already have SharedMedia.

  • Avatar of DasFaultier DasFaultier Oct 28, 2010 at 17:30 UTC - 0 likes[]["KgPanel15"].scripts["LOAD"] = "local class = UnitClass("player")
    RAID_CLASS_COLORS[class].g, RAID_CLASS_COLORS[class].b, 0.7)"

    Throws following error: kgPanels: [string "Menu_Color_Class_OnClickUp"]:1: unfinished string near '")' But if you say, that's messy, can i make something like this: If i click Panel A, it will change the AlphaLevel of Frame B with "FrameB:SetAlpha(0.1)" and because of that Panel C will change it'S color, because of "if FrameB:GetAlpha() == 0.1 then self:SetBackDropColor(1, 1, 1) elseif FrameB:GetAlpha() == 0.2 then ..." and so on? And the change of the Alpha is permament?

    Edit: i just re-found your tip to make a panel remember it's last status [Hide/Show] >>just add a variable to the panel. >>like self.wasHidden = false

    i really don't know how you've ment that. See, i'm really good at using pre-defined functions, but unkowns functions or selfdefined ones are more than worse. So, i don't know how to make it work. i would like to get it work almost the one above: if i hide a frame, it's status will be remembered and considering of it's status, antoher frame will coler itself. But how?

    Last edited Oct 29, 2010 by DasFaultier
  • Avatar of kagaro kagaro Oct 27, 2010 at 20:22 UTC - 0 likes

    The OnLoad script, isnt executing cause kgPanels fakes OnLoad as the panels can be created well before the parents and ancors exists. The faked OnLoad is done via a hidden function called InitScripts, which in turns runs the attached onLoad after the parents and anchors come into existence. Also OnLoad in your context below would never work, as by time you can fetch the panel, OnLoad has already executed. (onLoad works best with XML files as it calls that after CreateFrame executes.) So your best is instead of fuding the onLoad, to directly just set the backdrop and alhpa. IF you want this to be permanement base on clicks, then your gonna need to mess with the saved variables[]['KgPanel5"].scripts["LOAD"] =" You script as text here"

    I Really dont advise you doing that, as you could corrupt your saved variables.

    As for the first function, where are you defining it? if you want to make it global to your scripts I suggest more along the lines of: In an OnLoad script

    kgPanels.MoveTo = function(...)
    .. code here ...

    so in OnClick you could do kgPanels:MoveTo(self, .....)

  • Avatar of DasFaultier DasFaultier Oct 27, 2010 at 20:09 UTC - 0 likes

    Hey Kagaro.

    I worked out 2 Scripts with a mate, but they don't want to work. Both are called by 'OnClick' First, to move a panel out of the frame:

    function kgPanels_MoveTo(Panel, newX, newY, moveDelay, moveStep, SavedTime)
    	if GetTime()-SavedTime <= moveDelay then
    		local point, relativeTo, relativePoint, posX, posY = Panel:GetPoint()
    		if posX == newX and posY == newY then return end
    		if posX < newX then
    			posX = posX+(moveStep or 1)
    		if posY < newY then
    			posY = posY+(moveStep or 1)
    		if posX > newX then
    			posX = newX
    		if posY > newY then
    			posY = newY
    		Panel:SetPoint(point, relativeTo, relativePoint, posX, posY)
    		SavedTime = GetTime()
    		kgPanels_MoveTo(Panel, newX, newY, moveDelay, moveStep, SavedTime)
    -- Usage: kgPanels_MoveTo(frame, posX, posY, interval (seconds), steps, GetTime()) - kgPanels_MoveTo(self, 1000, 1000, 0.1, 10, GetTime()) - will move frame "self" to 1000, 1000. Moving 10 pixels every 0.1 seconds.

    and second, to Change the OnLoad script of a frame by clicking another frame:

    local Panel5 = kgPanels:FetchFrame("KgPanel5")
    Panel5:SetScript("OnLoad", self:SetBackdropBorderColor(0.77, 0.12, 0.23, 1)) 

    Both of them don't work. Any ideas?

  • Avatar of 3dfxorchid 3dfxorchid Oct 19, 2010 at 16:02 UTC - 0 likes

    how is it to make in an simple script to show the money from a char, i only found big scripts, is this posible to make?


  • Avatar of kagaro kagaro Oct 19, 2010 at 00:52 UTC - 0 likes

    ok applied a fix that should resolve the issues

  • Avatar of kagaro kagaro Oct 19, 2010 at 00:05 UTC - 0 likes

    bear with me, im trying to fix 2 problems without causing people to change anything.

  • Avatar of trotskyicepick trotskyicepick Oct 18, 2010 at 23:48 UTC - 0 likes

    How on earth did you discover that? Looks OK now.....thanks.


Date created
Sep 16, 2008
Last update
Feb 24, 2015
Development stage
  • enUS
  • frFR
  • koKR
  • zhCN
All Rights Reserved
Curse link
Reverse relationships
Recent files
  • A: r436 for 6.1.0 Feb 24, 2015
  • R: 1.20 for 6.0.2 Oct 24, 2014
  • R: 1.19 for 6.0.2 Oct 17, 2014
  • A: r433 for 6.0.2 Oct 17, 2014
  • A: r432 for 6.0.2 Oct 17, 2014