WoWInterface SVN ProcWatch

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /trunk
    from Rev 1 to Rev 2
    Reverse comparison

Rev 1 → Rev 2

zz_ProcWatch/Libs/LibzzAddOnInit/locale_deDE.lua New file
0,0 → 1,18
local L = LibStub("AceLocale-3.0"):NewLocale("LibzzAddOnInit", "deDE", false)
if L then
L["Version"] = "Version"
L["AddOn loaded"] = "AddOn geladen"
L['General Settings'] = "Allgemeine Einstellungen"
L['AddOn Settings'] = "AddOn Einstellungen"
L['Start message'] = "Startnachricht"
L['Show addon message on startup'] = "Startnachricht anzeigen"
L['Show Minimapicon'] = "Zeige Minimapicon"
L['Check version'] = "Pr\195\188fe Version"
L['Checks with your guild/group if a new version is available on startup'] = "\195\156berpr\195\188ft beim Start in deiner Gilde/Gruppe auf neuere Version"
end
 
-- ö \195\182 ß \195\159
-- ü \195\188 ä \195\164
-- Ä \195\132
-- ö \195\182
-- Ü \195\156
\ No newline at end of file
zz_ProcWatch/Libs/LibzzAddOnInit/LibzzAddOnInit.lua New file
0,0 → 1,492
--
-- LibzzAddOnInit - Library for standardized initialisation of my AddOns
--
 
local MAJOR,MINOR = "LibzzAddOnInit", 25
local LibzzAddOnInit, oldminor = LibStub:NewLibrary(MAJOR, MINOR)
 
if(not LibzzAddOnInit) then return end
 
LibzzAddOnInit['embeds'] = LibzzAddOnInit['embeds'] or {}
 
local mixins = {
"Init",
"Print",
"pinfo",
"get",
"set",
"getPref",
"setPref",
"changedPref",
"ldbEmbed",
"OnText",
"GetMainOptions",
"AddConfigMenu",
"AddConfigEntry",
"colorize",
"setIconSize",
"pdebug"
}
 
LibzzAddOnInit['AddOnTable'] = LibzzAddOnInit['AddOnTable'] or {}
LibzzAddOnInit['AddOnTable']['title'] = LibzzAddOnInit['AddOnTable']['title'] or 'LibzzAddOnInit'
LibzzAddOnInit['AddOnTable']['Debug'] = LibzzAddOnInit['AddOnTable']['Debug'] or nil
LibzzAddOnInit['AddOnTable']['ConsoleColor'] = LibzzAddOnInit['AddOnTable']['ConsoleColor'] or '444488'
LibzzAddOnInit['AddOnTable']['commPrefix'] = LibzzAddOnInit['AddOnTable']['commPrefix'] or 'Libzz'
LibzzAddOnInit['AddOnTable']['iconSize'] = LibzzAddOnInit['AddOnTable']['iconSize'] or 14
LibzzAddOnInit['AddOnTable']['apps'] = LibzzAddOnInit['AddOnTable']['apps'] or {}
 
local iconSize = LibzzAddOnInit['AddOnTable']['iconSize'] or 14
local goldicon = format("\124TInterface\\MoneyFrame\\UI-GoldIcon:%d:%d:1:0\124t", iconSize, iconSize)
local silvericon = format("\124TInterface\\MoneyFrame\\UI-SilverIcon:%d:%d:1:0\124t", iconSize, iconSize)
local coppericon = format("\124TInterface\\MoneyFrame\\UI-CopperIcon:%d:%d:1:0\124t", iconSize, iconSize)
 
if(not LibzzAddOnInit['CommInit']) then
LibzzAddOnInit['CommInit'] = true
LibStub("AceComm-3.0"):Embed(LibzzAddOnInit)
if(LibzzAddOnInit['AddOnTable']['commPrefix']) then
LibzzAddOnInit:RegisterComm(LibzzAddOnInit['AddOnTable']['commPrefix'],function(prefix, message, distribution, sender)
LibzzAddOnInit:lineIn(prefix, message, distribution, sender)
end)
end
end
 
local L = LibStub("AceLocale-3.0"):GetLocale("LibzzAddOnInit", true)
local ldb = LibStub:GetLibrary("LibDataBroker-1.1")
local ldbicon = LibStub("LibDBIcon-1.0")
 
function LibzzAddOnInit:Embed( target )
for _, v in pairs( mixins ) do
target[v] = self[v]
end
self['embeds'][target] = true
return target
end
 
for addon in pairs(LibzzAddOnInit['embeds']) do
LibzzAddOnInit:Embed(addon)
end
 
--
--
--
 
function LibzzAddOnInit:GetName()
return MAJOR
end
 
local function zzLibSlash(self, command)
if(not command or command == "" or command:lower() == 'version') then
self:Print(format("%s %s - %s",L['Version'],self:get('version'),self:get('appinfo')))
self:Print(format("/%s version",self:get('title'):lower()))
self:Print(format("/%s config",self:get('title'):lower()))
if(command:lower() == 'version') then
LibzzAddOnInit:checkVersion(self, self:get('title'), true)
end
elseif(command=='config') then
InterfaceOptionsFrame_OpenToCategory(self:GetName())
end
if(type(self['OnSlashCommand']) == "function") then
self:OnSlashCommand(command)
end
end
 
local function zzLibOnEvent(self,event,arg1)
local name = self:GetName()
if(event=="ADDON_LOADED") then
if(arg1==name) then
self['L'] = LibStub("AceLocale-3.0"):GetLocale(name, true)
if(not self:get("skipAceEvent")) then
LibStub("AceEvent-3.0"):Embed(self)
end
if(not self:get("skipAceTimer")) then
LibStub("AceTimer-3.0"):Embed(self)
end
if(not self:get("skipAceConsole")) then
LibStub("AceConsole-3.0"):RegisterChatCommand(self:get('title'):lower(),function(command) zzLibSlash(self, command) end)
end
self:UnregisterEvent(event)
self['AddOnTable']['defaults'] = self['AddOnTable']['defaults'] or {}
self['AddOnTable']['defaults']['profile'] = self['AddOnTable']['defaults']['profile'] or {
['startupMessage'] = true,
['showMMIcon'] = true,
}
if(not self:get('dbtype')) then
self:set('dbtype','CharDB')
end
if(self:get('noDefault')) then
self['db'] = LibStub("AceDB-3.0"):New(format("%s%s",name,self:get('dbtype')),self:get('defaults'))
else
self['db'] = LibStub("AceDB-3.0"):New(format("%s%s",name,self:get('dbtype')),self:get('defaults'),self:get('defaultProfile') or "Default")
end
 
self['AddOnTable']['options']['args']['profile'] = LibStub("AceDBOptions-3.0"):GetOptionsTable(self['db'])
 
LibStub("AceConfig-3.0"):RegisterOptionsTable(name, self['AddOnTable']['options'])
LibStub("AceConfigDialog-3.0"):AddToBlizOptions(name, name)
if(self['db']['profile']['startupMessage']) then
self:Print(L["AddOn loaded"])
end
if(not self:get("noldb")) then
self:ldbEmbed()
end
if(type(self['ADDON_LOADED']) == "function") then
self:ADDON_LOADED()
end
if(IsAddOnLoaded("AddonLoader")==1) then
LibzzAddOnInit:checkVersion(self, self:get('title'))
self:UnregisterEvent("PLAYER_LOGIN")
if(type(self['PLAYER_LOGIN']) == "function") then
self:PLAYER_LOGIN()
end
end
end
elseif(event=="PLAYER_LOGIN") then
LibzzAddOnInit:checkVersion(self, self:get('title'))
self:UnregisterEvent(event)
if(type(self['PLAYER_LOGIN']) == "function") then
self:PLAYER_LOGIN()
end
elseif(event=="PLAYER_LOGOUT") then
if(type(self['PLAYER_LOGOUT']) == "function") then
self:PLAYER_LOGOUT()
end
elseif(event=="PLAYER_ENTERING_WORLD") then
self:UnregisterEvent(event)
end
end
 
local function getname(self)
return self['name']
end
 
function LibzzAddOnInit:Init(name,tab)
local frame = CreateFrame("FRAME",format("zzMF_%s",name),UIParent)
frame['name'] = name
frame['AddOnTable'] = tab
if(not frame['AddOnTable']['options']) then
frame['AddOnTable']['options'] = {
['type']='group',
['handler']=frame,
['childGroups']='tab',
['args']={
}
}
end
frame['AddOnTable']['ConsoleColor'] = frame['AddOnTable']['ConsoleColor'] or "FFFF00"
frame['GetName'] = getname
LibzzAddOnInit:Embed(frame)
LibzzAddOnInit['AddOnTable']['apps'][frame:get('title')] = {
['version'] = frame:get('version'),
['name'] = frame:get('title'),
['info'] = frame:get('appinfo'),
}
frame:GetMainOptions()
frame:RegisterEvent("ADDON_LOADED")
frame:RegisterEvent("PLAYER_LOGIN")
frame:RegisterEvent("PLAYER_LOGOUT")
frame:RegisterEvent("PLAYER_ENTERING_WORLD")
frame:SetScript("OnEvent", zzLibOnEvent)
return frame
end
 
function LibzzAddOnInit:OnText(newtext)
self:get('ldbDataobj')['text'] = newtext
end
 
local function zzLibldbOnClick(self, button)
if(type(self['OnButton']) == "function") then
self:OnButton(button)
else
InterfaceOptionsFrame_OpenToCategory(self:GetName())
end
end
 
local function zzLibOnTooltipShow(self)
if(type(self['OnTooltip']) == "function") then
self:OnTooltip()
else
GameTooltip:AddLine(format("%s %s",self:get('title'),self:get('version')))
end
end
 
function LibzzAddOnInit:ldbEmbed()
local name = self:GetName()
self:set('ldbDataobj', ldb:GetDataObjectByName(name) or ldb:NewDataObject(name, {
['type'] = self:get('ldbtype') or 'launcher',
['text'] = name,
['icon'] = self:get('iconPath'),
}))
if(self:get('ldbDataobj')) then
if(not self['db']['profile']['ldbicon']) then
self['db']['profile']['ldbicon'] = { ['hide'] = false,}
end
self:get('ldbDataobj')['OnClick'] = function(_,button) zzLibldbOnClick(self,button) end
self:get('ldbDataobj')['OnTooltipShow'] = function() zzLibOnTooltipShow(self) end
ldbicon:Register(name,self:get('ldbDataobj'),self['db']['profile']['ldbicon'])
end
end
 
function LibzzAddOnInit:AddConfigMenu(menuName, parentMenu)
if(not parentMenu) then
parentMenu = self['AddOnTable']['options']
end
local menuHandler, menuChildGroups, menuGet, menuSet, menuOrder, menuDesc
if(type(menuName) == 'table') then
menuHandler = menuName['menuHandler'] or self
menuChildGroups = menuName['childGroups'] or 'tree'
menuGet = menuName['menuGet'] or 'getPref'
menuSet = menuName['menuSet'] or 'setPref'
menuOrder = menuName['order'] or 1
menuDesc = menuName['desc'] or ''
menuName = menuName['name']
else
menuHandler = self
menuGet = 'getPref'
menuSet = 'setPref'
menuOrder = 1
menuDesc = ''
end
parentMenu['args'][menuName] = {
['type'] = 'group',
['name'] = menuName,
['desc'] = menuDesc,
['childGroups'] = menuChildGroups,
['handler'] = menuHandler,
['get'] = menuGet,
['set'] = menuSet,
['order'] = menuOrder,
['args'] = {}
}
return parentMenu['args'][menuName]
end
 
function LibzzAddOnInit:AddConfigEntry(...)
local menu = select(10,...) or self['AddOnTable']['options']['args'][self:get('title')]
if(menu) then
menu['args'][select(2,...)] = {
['type'] = select(1,...),
['name'] = select(3,...),
['desc'] = select(4,...),
['order'] = select(5,...)
}
if(select(1,...) == 'range') then
menu['args'][select(2,...)]['min'] = select(6,...)
menu['args'][select(2,...)]['max'] = select(7,...)
menu['args'][select(2,...)]['step'] = select(8,...)
menu['args'][select(2,...)]['isPercent'] = select(9,...)
elseif(select(1,...) == 'execute') then
menu['args'][select(2,...)]['func'] = select(6,...)
elseif(select(1,...) == 'color') then
menu['args'][select(2,...)]['get'] = select(6,...)
menu['args'][select(2,...)]['set'] = select(7,...)
menu['args'][select(2,...)]['hasAlpha'] = true
elseif(select(1,...) == 'select') then
menu['args'][select(2,...)]['values'] = select(6,...)
end
end
end
 
function LibzzAddOnInit:GetMainOptions()
self:AddConfigMenu(self:get('title'))
self:AddConfigEntry("header",'breakIt',L['General Settings'],nil,20)
self:AddConfigEntry("header",'breakIt2',L['AddOn Settings'],nil,1)
self:AddConfigEntry("toggle",'startupMessage',L['Start message'],L['Show addon message on startup'],21)
self:AddConfigEntry("toggle",'showMMIcon',L['Show Minimapicon'],nil,21)
self:AddConfigEntry("toggle",'vercheck',L['Check version'],L['Checks with your guild/group if a new version is available on startup'],22)
end
 
function LibzzAddOnInit:getPref(info)
return self['db']['profile'][info[#info]]
end
 
function LibzzAddOnInit:setPref(info,value)
self['db']['profile'][info[#info]] = value
self:changedPref(info[#info])
end
 
function LibzzAddOnInit:changedPref(value)
if(value=="showMMIcon") then
if(self['db']['profile']['showMMIcon']) then
ldbicon:Show(self:GetName())
else
ldbicon:Hide(self:GetName())
end
if(self['db']['profile']['ldbicon']) then
self['db']['profile']['ldbicon']['hide'] = not self['db']['profile']['showMMIcon']
else
self['db']['profile']['ldbicon'] = { ['hide'] = not self['db']['profile']['showMMIcon'] }
end
end
if(type(self['Updated_Pref']) == "function") then
self:Updated_Pref(value)
end
end
 
function LibzzAddOnInit:get(tableValue)
return self['AddOnTable'][tableValue] or false
end
 
function LibzzAddOnInit:set(tableValue, newValue)
self['AddOnTable'][tableValue] = newValue
end
 
--
-- Message Port
--
 
local function sendMessage(act,name,version,info,dest)
local party,guild,whisper = false, false, false
local prefix = LibzzAddOnInit:get('commPrefix')
act = act or 'ver'
name = name or '-'
version = version or '-'
info = info or '-'
 
dest = dest or UnitName("player")
if(act=='ver' and version=='-' and name~='-') then
party = true
guild = true
whisper = false
end
if(LibzzAddOnInit['AddOnTable']['Debug']) then
whisper = true
dest = UnitName("player")
end
message = strjoin("_",act,name,version,info)
if(party) then
LibzzAddOnInit:SendCommMessage(prefix, message, "PARTY")
end
if(IsInGuild() and guild) then
LibzzAddOnInit:SendCommMessage(prefix, message, "GUILD")
end
if(whisper and dest~='-') then
LibzzAddOnInit:SendCommMessage(prefix, message, "WHISPER", dest)
end
-- LibzzAddOnInit:pdebug(prefix.." "..message.."->"..dest)
end
 
function LibzzAddOnInit:lineIn(prefix, message, distribution, sender)
local act,name,version,info = strsplit("_",message)
if(act=='ver') then
if(version=='-') then
if(LibzzAddOnInit['AddOnTable']['apps'][name]) then
if(LibzzAddOnInit['AddOnTable']['apps'][name]['version'] and LibzzAddOnInit['AddOnTable']['apps'][name]['info']) then
sendMessage(act,name,LibzzAddOnInit['AddOnTable']['apps'][name]['version'],LibzzAddOnInit['AddOnTable']['apps'][name]['info'],dest)
end
end
else
if(LibzzAddOnInit['AddOnTable']['apps'][name]) then
LibzzAddOnInit:Print(format("|cffffff00%s|r %s %s %s",tostring(sender),tostring(name),tostring(version),tostring(info)))
LibzzAddOnInit:versioncheck(name,version,sender)
end
end
end
if(version~='-') then
LibzzAddOnInit:Print(format("%s %s %s %s",tostring(sender),tostring(name),tostring(version),tostring(info)))
end
-- LibzzAddOnInit:pdebug(prefix.." "..message.." "..distribution.." "..sender)
end
 
function LibzzAddOnInit:versioncheck(name,ver,sender)
local major,minor,ma,mi,vn,rn
major, minor = strsplit(".",LibzzAddOnInit['AddOnTable']['apps'][name]['version'] or '0.0')
ma,mi = strsplit(".",ver or 0.0)
m2,m3 = strsplit(".",LibzzAddOnInit['AddOnTable']['apps'][name]['latestversion'] or '0.0')
vn = major * 1000 + minor
rn = ma * 1000 + mi
nn = m2*1000 + m3
if(nn < vn) then
LibzzAddOnInit['AddOnTable']['apps'][name]['latestversion'] = LibzzAddOnInit['AddOnTable']['apps'][name]['version']
LibzzAddOnInit['AddOnTable']['apps'][name]['sender'] = name
end
if(rn > vn) then
LibzzAddOnInit['AddOnTable']['apps'][name]['latestversion'] = ver
LibzzAddOnInit['AddOnTable']['apps'][name]['sender'] = sender
end
end
 
function LibzzAddOnInit:checkVersion(self, name, force)
if( UnitAffectingCombat("player") == 1 ) then return end
if(self['db']['profile']['vercheck'] or force) then
sendMessage("ver",name,"-","-","-")
end
end
 
function zzLib_IsTwink(addon, name)
if(addon['db']['sv']['profileKeys']) then
for k,v in pairs(addon['db']['sv']['profileKeys']) do
local n,m = strsplit(" - ",k,2)
_,m = strsplit(" ",m,2)
if(n) then
if(n == name and m == addon['AddOnTable']['crealm']) then
return true
end
end
end
end
return false
end
 
function LibzzAddOnInit:updateIconSize(v)
LibzzAddOnInit['AddOnTable']['iconSize'] = v
iconSize = v
goldicon = format("\124TInterface\\MoneyFrame\\UI-GoldIcon:%d:%d:1:0\124t", iconSize, iconSize)
silvericon = format("\124TInterface\\MoneyFrame\\UI-SilverIcon:%d:%d:1:0\124t", iconSize, iconSize)
coppericon = format("\124TInterface\\MoneyFrame\\UI-CopperIcon:%d:%d:1:0\124t", iconSize, iconSize)
end
 
function LibzzAddOnInit:setIconSize(v)
LibzzAddOnInit:updateIconSize(v)
end
 
function zzLib_buildMoneyString(money,color)
local moneystring
local g,s,c
local neg = false
if(money <0) then
neg = true
money = money * -1
end
g=floor(money/10000)
s=floor((money-(g*10000))/100)
c=money-s*100-g*10000
moneystring = format("%s%s%s%s%s%s",g,goldicon,s,silvericon,c,coppericon)
if(neg) then
moneystring = format("-%s",moneystring)
end
if(color) then
if(neg) then
moneystring = LibzzAddOnInit:colorize(moneystring,"ff0000")
elseif(money ~= 0) then
moneystring = LibzzAddOnInit:colorize(moneystring,"44dd44")
end
end
return moneystring
end
 
function LibzzAddOnInit:colorize(text,color)
return format("|cff%s%s|r",color,text)
end
 
--
--
--
 
function LibzzAddOnInit:Print(message)
DEFAULT_CHAT_FRAME:AddMessage(format("|cFF%s%s|r %s",self:get("ConsoleColor"),self:get('title'),tostring(message)))
end
 
function LibzzAddOnInit:pinfo(info)
if(type(info) == 'table') then
for n in pairs(info) do
self:pdebug(format("1:%s-->%s",tostring(n),tostring(info[n])))
end
end
end
 
function LibzzAddOnInit:pdebug(msg)
if(self['AddOnTable']['Debug']) then
DEFAULT_CHAT_FRAME:AddMessage(msg)
end
end
\ No newline at end of file
zz_ProcWatch/Libs/LibzzAddOnInit/Lib.xml New file
0,0 → 1,7
<Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/
..\FrameXML\UI.xsd">
<Script file="locale_enUS.lua"/>
<Script file="locale_deDE.lua"/>
<Script file="locale_ruRU.lua"/>
<Script file="LibzzAddOnInit.lua"/>
</Ui>
\ No newline at end of file
zz_ProcWatch/Libs/LibzzAddOnInit/locale_enUS.lua New file
0,0 → 1,12
local L = LibStub("AceLocale-3.0"):NewLocale("LibzzAddOnInit", "enUS", true)
if L then
L["Version"] = true
L["AddOn loaded"] = true
L['General Settings'] = true
L['AddOn Settings'] = true
L['Start message'] = true
L['Show addon message on startup'] = true
L['Show Minimapicon'] = true
L['Check version'] = true
L['Checks with your guild/group if a new version is available on startup'] = true
end
\ No newline at end of file
zz_ProcWatch/Libs/LibzzAddOnInit Property changes : Added: bugtraq:number + true
zz_ProcWatch/Libs/externals.xml New file
0,0 → 1,4
<Ui xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd">
<Include file="LibSharedMedia-3.0\lib.xml"/>
<Include file="LibButtonFacade\LibButtonFacade.xml"/>
</Ui>
\ No newline at end of file
zz_ProcWatch/Libs/embeds.xml New file
0,0 → 1,16
<Ui xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd">
<Script file="LibStub\LibStub.lua"/>
<Include file="CallbackHandler-1.0\CallbackHandler-1.0.xml"/>
<Script file="libdatabroker-1-1\LibDataBroker-1.1.lua"/>
<Script file="LibDBIcon-1.0\LibDBIcon-1.0.lua"/>
<Include file="AceLocale-3.0\AceLocale-3.0.xml"/>
<Include file="AceConsole-3.0\AceConsole-3.0.xml"/>
<Include file="AceDB-3.0\AceDB-3.0.xml"/>
<Include file="AceEvent-3.0\AceEvent-3.0.xml"/>
<Include file="AceTimer-3.0\AceTimer-3.0.xml"/>
<Include file="AceDBOptions-3.0\AceDBOptions-3.0.xml"/>
<Include file="AceGUI-3.0\AceGUI-3.0.xml"/>
<Include file="AceConfig-3.0\AceConfig-3.0.xml"/>
<Include file="AceComm-3.0\AceComm-3.0.xml"/>
<Include file="LibzzAddOnInit\Lib.xml"/>
</Ui>
zz_ProcWatch/Libs Property changes : Added: bugtraq:number + true
zz_ProcWatch Property changes : Added: bugtraq:number + true
. Property changes : Added: svn:externals + zz_ProcWatch/Libs svn://svn.wowinterface.com/zzcommon-841/trunk/Libs