WoWInterface SVN zz_Actionbuttons

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 3 to Rev 4
    Reverse comparison

Rev 3 → Rev 4

trunk/zz_Actionbuttons/icon2.tga Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes : Added: svn:mime-type + application/octet-stream
trunk/zz_Actionbuttons/core.lua
9,14 → 9,16
}
addon['MSQ'] = LibStub("Masque",true)
if(addon['MSQ']) then addon['MSQGroup'] = addon['MSQ']:Group(name,name) end
 
local function dragAble()
return db['dragAble']
end
local function localButtons()
wipe(buttons)
local lastbutton
for b = 1, #defBars do
local f
if(defBars[b] == 'Action') then
f = CreateFrame("Frame", name.."ActionBar", UIParent)
f = _G[name.."ActionBar"] or CreateFrame("Frame", name.."ActionBar", UIParent)
f:SetWidth(1)
f:SetHeight(1)
f:SetPoint("CENTER")
24,41 → 26,71
f = _G[defBars[b]]
end
if(f) then
f['dragAble'] = function() return true end
db['bars'][defBars[b]] = db['bars'][defBars[b]] or {}
db['bars'][defBars[b]] = db['bars'][defBars[b]] or {
['rows'] = 1,
['scale'] = 1,
}
f:SetScale(db['bars'][defBars[b]]['scale'])
f['db'] = db['bars'][defBars[b]]
f['dragAble'] = dragAble
addon['AddDrag'](f,"BOX",{
['width'] = 32,
['height'] = 32,
['width'] = 64,
['height'] = 64,
['anchor'] = "TOPLEFT",
['parentanchor'] = "TOPLEFT",
['xOffset'] = 16,
['yOffset'] = 16,
['offset'] = 16,
})
local i = 1
local i,y = 1,1
local row = 0
local spr = 12/db['bars'][defBars[b]]['rows']
while(_G[defBars[b]..'Button'..i]) do
local button = _G[defBars[b]..'Button'..i]
button:SetParent(f)
buttons[#buttons + 1] = button
if(addon['MSQ'] and addon['MSQGroup']) then
addon['MSQGroup']:AddButton(button)
end
if(i == 1) then
-- hooksecurefunc(button, "SetPoint", print)
button:ClearAllPoints()
button:SetPoint("TOPLEFT", f)
-- print("pos", button:GetName())
button:ClearAllPoints()
if(y == 1) then
button:SetPoint("TOPLEFT", f, "TOPLEFT",0 , -row * button:GetHeight())
else
button:SetPoint("TOPLEFT", lastbutton, "TOPRIGHT")
end
lastbutton = button
i = i + 1
y = y + 1
if(y > spr) then
y = 1
row = row + 1
end
end
end
end
print("found",#buttons,"buttons")
end
 
local function getBarPref(pref)
return db['bars'][pref[#pref-1]][pref[#pref]]
end
 
local function setBarPref(pref,value)
db['bars'][pref[#pref-1]][pref[#pref]] = value
localButtons()
end
 
local function buildPrefs()
for b = 1, #defBars do
local o = addon['AddConfigMenu'](addon, {
['name'] = defBars[b],
['menuGet'] = getBarPref,
['menuSet'] = setBarPref,
}, addon['options']['args'][childName])
addon['AddConfigEntry'](addon, name, 'range', 'rows', 'Rows', 'Number of rows', 0,1,12,1,false,o)
addon['AddConfigEntry'](addon, name, 'range', 'scale', 'Scale', 'Scale of this bar', 1,0.1,3,0.1,true,o)
end
end
 
local function getPref(pref)
return db[pref[#pref]]
end
69,13 → 101,13
 
local function init()
options = addon['InitConfig'](addon, childName, true, {
['type'] = "data source",
['OnTooltipShow'] = OnTooltip,
['OnClick'] = OnButton,
['type'] = "launcher",
}, getPref, setPref)
db = addon['db']['profile'][childName]
db['bars'] = db['bars'] or {}
localButtons()
addon['AddConfigEntry'](addon, name, 'toggle', 'dragAble', 'Unlocked', 'Use alt+click to move your bars', 0)
buildPrefs()
end
 
addon['startup'](addon, name, childName, init, true, defaults)
\ No newline at end of file