- Full rewrite on custom displays.
- Fixed the report bug on healing, energy and misc attributes.
- Fixed a bug where the player pet wasn't being tracked after logon in the game.
- NewAPI: instance:IsGroupMode() return if a instance is in group mode.
- NewAPI: instance:GetCustomObject() return the custom object current used by the isntance.
- NewAPI: _detalhes:GetEncounterActorsName (EJ_EncounterID) return a hash table with [bossname] -> {[model] [displayInfo]}
- NewAPI: actor:GetDisplayName() actor:Class() return the formated name; return the class.
- NewAPI: _detalhes:GetClassIcon (class) return the icon path and texcoords.
This commit is contained in:
@@ -8,9 +8,9 @@
|
|||||||
|
|
||||||
_ = nil
|
_ = nil
|
||||||
_detalhes = LibStub("AceAddon-3.0"):NewAddon("_detalhes", "AceTimer-3.0", "AceComm-3.0", "AceSerializer-3.0", "NickTag-1.0", "LibHotCorners")
|
_detalhes = LibStub("AceAddon-3.0"):NewAddon("_detalhes", "AceTimer-3.0", "AceComm-3.0", "AceSerializer-3.0", "NickTag-1.0", "LibHotCorners")
|
||||||
_detalhes.userversion = "v1.16.3b"
|
_detalhes.userversion = "v1.17.0"
|
||||||
_detalhes.version = "Alpha 019"
|
_detalhes.version = "Alpha 020"
|
||||||
_detalhes.realversion = 19
|
_detalhes.realversion = 20
|
||||||
|
|
||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
--> initialization stuff
|
--> initialization stuff
|
||||||
|
|||||||
@@ -148,6 +148,9 @@
|
|||||||
--> record last event before dead
|
--> record last event before dead
|
||||||
esta_tabela.last_events_tables = {}
|
esta_tabela.last_events_tables = {}
|
||||||
|
|
||||||
|
--> players in the raid
|
||||||
|
esta_tabela.raid_roster = {}
|
||||||
|
|
||||||
--> frags
|
--> frags
|
||||||
esta_tabela.frags = {}
|
esta_tabela.frags = {}
|
||||||
esta_tabela.frags_need_refresh = false
|
esta_tabela.frags_need_refresh = false
|
||||||
|
|||||||
+1331
-115
File diff suppressed because it is too large
Load Diff
@@ -127,6 +127,10 @@
|
|||||||
return amount
|
return amount
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--[[ exported]] function _detalhes:IsGroupPlayer()
|
||||||
|
return self.grupo
|
||||||
|
end
|
||||||
|
|
||||||
--[[ exported]] function _detalhes:IsPlayer()
|
--[[ exported]] function _detalhes:IsPlayer()
|
||||||
if (self.flag_original) then
|
if (self.flag_original) then
|
||||||
@@ -210,7 +214,7 @@
|
|||||||
return _unpack (_detalhes.class_colors.ARENA_ALLY)
|
return _unpack (_detalhes.class_colors.ARENA_ALLY)
|
||||||
|
|
||||||
else
|
else
|
||||||
if (not is_player_class [actor.classe] and _bit_band (actor.flag_original, 0x00000020) ~= 0) then --> neutral
|
if (not is_player_class [actor.classe] and actor.flag_original and _bit_band (actor.flag_original, 0x00000020) ~= 0) then --> neutral
|
||||||
return _unpack (_detalhes.class_colors.NEUTRAL)
|
return _unpack (_detalhes.class_colors.NEUTRAL)
|
||||||
else
|
else
|
||||||
return _unpack (_detalhes.class_colors [actor.classe])
|
return _unpack (_detalhes.class_colors [actor.classe])
|
||||||
|
|||||||
@@ -269,7 +269,7 @@ function atributo_energy:RefreshWindow (instancia, tabela_do_combate, forcar, ex
|
|||||||
showing:remapear()
|
showing:remapear()
|
||||||
|
|
||||||
if (exportar) then
|
if (exportar) then
|
||||||
return total, keyName, instancia.top
|
return total, keyName, instancia.top, amount
|
||||||
end
|
end
|
||||||
|
|
||||||
if (amount < 1) then --> não há barras para mostrar
|
if (amount < 1) then --> não há barras para mostrar
|
||||||
|
|||||||
@@ -359,7 +359,7 @@ function atributo_heal:RefreshWindow (instancia, tabela_do_combate, forcar, expo
|
|||||||
showing:remapear()
|
showing:remapear()
|
||||||
|
|
||||||
if (exportar) then
|
if (exportar) then
|
||||||
return total, keyName, instancia.top
|
return total, keyName, instancia.top, amount
|
||||||
end
|
end
|
||||||
|
|
||||||
if (amount < 1) then --> não há barras para mostrar
|
if (amount < 1) then --> não há barras para mostrar
|
||||||
|
|||||||
@@ -158,6 +158,10 @@ function _detalhes:IsRaidMode()
|
|||||||
return self.modo == _detalhes._detalhes_props["MODO_RAID"]
|
return self.modo == _detalhes._detalhes_props["MODO_RAID"]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function _detalhes:IsGroupMode()
|
||||||
|
return self.modo == _detalhes._detalhes_props["MODO_GROUP"]
|
||||||
|
end
|
||||||
|
|
||||||
function _detalhes:IsNormalMode()
|
function _detalhes:IsNormalMode()
|
||||||
if (self:GetInstanceId() == 2 or self:GetInstanceId() == 3) then
|
if (self:GetInstanceId() == 2 or self:GetInstanceId() == 3) then
|
||||||
return true
|
return true
|
||||||
@@ -166,6 +170,19 @@ function _detalhes:IsNormalMode()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function _detalhes:GetCustomObject()
|
||||||
|
return _detalhes.custom [self.sub_atributo]
|
||||||
|
end
|
||||||
|
|
||||||
|
function _detalhes:ResetAttribute()
|
||||||
|
if (self.iniciada) then
|
||||||
|
self:TrocaTabela (nil, 1, 1, true)
|
||||||
|
else
|
||||||
|
self.atributo = 1
|
||||||
|
self.sub_atributo = 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
------------------------------------------------------------------------------------------------------------------------
|
------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
--> retorna se a instância esta ou não ativa
|
--> retorna se a instância esta ou não ativa
|
||||||
@@ -1312,7 +1329,10 @@ function _detalhes:InstanceReset (instance)
|
|||||||
self:AtualizaSegmentos (self)
|
self:AtualizaSegmentos (self)
|
||||||
self:AtualizaSoloMode_AfertReset()
|
self:AtualizaSoloMode_AfertReset()
|
||||||
self:ResetaGump()
|
self:ResetaGump()
|
||||||
_detalhes:AtualizaGumpPrincipal (self, true) --atualiza todas as instancias
|
|
||||||
|
if (not _detalhes.initializing) then
|
||||||
|
_detalhes:AtualizaGumpPrincipal (self, true) --atualiza todas as instancias
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function _detalhes:RefreshBars (instance)
|
function _detalhes:RefreshBars (instance)
|
||||||
@@ -1737,6 +1757,7 @@ function _detalhes:TrocaTabela (instancia, segmento, atributo, sub_atributo, ini
|
|||||||
instancia.sub_atributo = sub_atributo
|
instancia.sub_atributo = sub_atributo
|
||||||
|
|
||||||
if (sub_attribute_click) then
|
if (sub_attribute_click) then
|
||||||
|
--print ("aqui", instancia.sub_atributo)
|
||||||
instancia.sub_atributo_last [instancia.atributo] = instancia.sub_atributo
|
instancia.sub_atributo_last [instancia.atributo] = instancia.sub_atributo
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -1928,21 +1949,32 @@ function _detalhes:MontaAtributosOption (instancia, func)
|
|||||||
--> custom
|
--> custom
|
||||||
CoolTip:AddMenu (1, func, nil, 5, nil, atributos.lista[5], nil, true)
|
CoolTip:AddMenu (1, func, nil, 5, nil, atributos.lista[5], nil, true)
|
||||||
CoolTip:AddIcon ("Interface\\AddOns\\Details\\images\\atributos_icones", 1, 1, 20, 20, p*(5-1), p*(5), 0, 1)
|
CoolTip:AddIcon ("Interface\\AddOns\\Details\\images\\atributos_icones", 1, 1, 20, 20, p*(5-1), p*(5), 0, 1)
|
||||||
CoolTip:AddMenu (2, _detalhes.OpenCustomWindow, nil, nil, nil, Loc ["STRING_CUSTOM_NEW"], "Interface\\PaperDollInfoFrame\\Character-Plus", true)
|
CoolTip:AddMenu (2, _detalhes.OpenCustomDisplayWindow, nil, nil, nil, Loc ["STRING_CUSTOM_NEW"], "Interface\\PaperDollInfoFrame\\Character-Plus", true)
|
||||||
|
|
||||||
for index, custom in _ipairs (_detalhes.custom) do
|
for index, custom in _ipairs (_detalhes.custom) do
|
||||||
CoolTip:AddMenu (2, func, nil, 5, index, custom.name, custom.icon, true)
|
CoolTip:AddLine (custom.name, nil, 2)
|
||||||
|
CoolTip:AddMenu (2, func, true, 5, index)
|
||||||
|
CoolTip:AddIcon (custom.icon, 2, 1, 16, 16)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--> set the wallpaper on custom
|
||||||
|
GameCooltip:SetWallpaper (2, [[Interface\TALENTFRAME\WarriorArm-TopLeft]], {1, 0, 0, 1}, {1, 1, 1, 0.1})
|
||||||
|
|
||||||
if (#_detalhes.custom == 0) then
|
if (#_detalhes.custom == 0) then
|
||||||
CoolTip:SetLastSelected (2, 5, 1)
|
CoolTip:SetLastSelected (2, 5, 1)
|
||||||
else
|
else
|
||||||
CoolTip:SetLastSelected (2, 5, instancia.sub_atributo_last [5]+1)
|
if (instancia.atributo == 5) then
|
||||||
|
CoolTip:SetLastSelected (2, 5, instancia.sub_atributo+1)
|
||||||
|
else
|
||||||
|
CoolTip:SetLastSelected (2, 5, instancia.sub_atributo_last [5]+1)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
CoolTip:SetOption ("StatusBarTexture", [[Interface\AddOns\Details\images\bar4_vidro]])
|
||||||
|
|
||||||
CoolTip:SetLastSelected (1, atributo_ativo)
|
CoolTip:SetLastSelected (1, atributo_ativo)
|
||||||
|
|
||||||
CoolTip:SetWallpaper (1, [[Interface\SPELLBOOK\Spellbook-Page-1]], {.6, 0.1, 0, 0.64453125}, {1, 1, 1, 0.1}, true)
|
CoolTip:SetWallpaper (1, [[Interface\SPELLBOOK\DeathKnightBlood-TopLeft]], {.6, 0.1, 0, 0.64453125}, {1, 1, 1, 0.1}, true)
|
||||||
--CoolTip:SetWallpaper (1, [[Interface\ACHIEVEMENTFRAME\UI-Achievement-Parchment-Horizontal-Desaturated]], nil, {1, 1, 1, 0.3})
|
--CoolTip:SetWallpaper (1, [[Interface\ACHIEVEMENTFRAME\UI-Achievement-Parchment-Horizontal-Desaturated]], nil, {1, 1, 1, 0.3})
|
||||||
|
|
||||||
return menu_principal, sub_menus
|
return menu_principal, sub_menus
|
||||||
@@ -2235,7 +2267,8 @@ function _detalhes:monta_relatorio (este_relatorio, custom)
|
|||||||
|
|
||||||
if (not is_current) then
|
if (not is_current) then
|
||||||
--> assumindo que self é sempre uma instância aqui.
|
--> assumindo que self é sempre uma instância aqui.
|
||||||
local total, keyName, keyNameSec, first, container_amount
|
local total, keyName, keyNameSec, first
|
||||||
|
local container_amount = 0
|
||||||
local atributo = self.atributo
|
local atributo = self.atributo
|
||||||
local container = self.showing [atributo]._ActorTable
|
local container = self.showing [atributo]._ActorTable
|
||||||
|
|
||||||
@@ -2261,6 +2294,7 @@ function _detalhes:monta_relatorio (este_relatorio, custom)
|
|||||||
end
|
end
|
||||||
elseif (atributo == 2) then --> heal
|
elseif (atributo == 2) then --> heal
|
||||||
total, keyName, first, container_amount = _detalhes.atributo_heal:RefreshWindow (self, self.showing, true, true)
|
total, keyName, first, container_amount = _detalhes.atributo_heal:RefreshWindow (self, self.showing, true, true)
|
||||||
|
|
||||||
if (self.sub_atributo == 1) then
|
if (self.sub_atributo == 1) then
|
||||||
keyNameSec = "hps"
|
keyNameSec = "hps"
|
||||||
end
|
end
|
||||||
@@ -2281,10 +2315,8 @@ function _detalhes:monta_relatorio (este_relatorio, custom)
|
|||||||
elseif (atributo == 5) then --> custom
|
elseif (atributo == 5) then --> custom
|
||||||
|
|
||||||
if (_detalhes.custom [self.sub_atributo]) then
|
if (_detalhes.custom [self.sub_atributo]) then
|
||||||
total, keyName, first, container_amount = _detalhes.atributo_custom:RefreshWindow (self, self.showing, true, {key = "custom"})
|
total, container, first, container_amount = _detalhes.atributo_custom:RefreshWindow (self, self.showing, true, true)
|
||||||
total = self.showing.totals [self.customName]
|
keyName = "value"
|
||||||
atributo = _detalhes.custom [self.sub_atributo].attribute
|
|
||||||
container = self.showing [atributo]._ActorTable
|
|
||||||
else
|
else
|
||||||
total, keyName, first, container_amount = _detalhes.atributo_damage:RefreshWindow (self, self.showing, true, true)
|
total, keyName, first, container_amount = _detalhes.atributo_damage:RefreshWindow (self, self.showing, true, true)
|
||||||
total = 1
|
total = 1
|
||||||
@@ -2294,10 +2326,11 @@ function _detalhes:monta_relatorio (este_relatorio, custom)
|
|||||||
--print (total, keyName, first, atributo, container_amount)
|
--print (total, keyName, first, atributo, container_amount)
|
||||||
end
|
end
|
||||||
|
|
||||||
amt = math.min (amt, container_amount)
|
amt = math.min (amt, container_amount or 0)
|
||||||
|
|
||||||
for i = 1, amt do
|
for i = 1, amt do
|
||||||
local _thisActor = container [i]
|
local _thisActor = container [i]
|
||||||
|
|
||||||
if (_thisActor) then
|
if (_thisActor) then
|
||||||
|
|
||||||
local amount = _thisActor [keyName]
|
local amount = _thisActor [keyName]
|
||||||
@@ -2403,7 +2436,7 @@ function _detalhes:monta_relatorio (este_relatorio, custom)
|
|||||||
atributo = _detalhes.custom [self.sub_atributo].attribute
|
atributo = _detalhes.custom [self.sub_atributo].attribute
|
||||||
end
|
end
|
||||||
|
|
||||||
local this_amt = math.min (#container, container_amount, amt)
|
local this_amt = math.min (#container, container_amount or 0, amt)
|
||||||
this_amt = #container - this_amt
|
this_amt = #container - this_amt
|
||||||
|
|
||||||
for i = container_amount, this_amt, -1 do
|
for i = container_amount, this_amt, -1 do
|
||||||
|
|||||||
@@ -566,7 +566,7 @@ function atributo_misc:RefreshWindow (instancia, tabela_do_combate, forcar, expo
|
|||||||
showing:remapear()
|
showing:remapear()
|
||||||
|
|
||||||
if (exportar) then
|
if (exportar) then
|
||||||
return total, keyName, instancia.top
|
return total, keyName, instancia.top, amount
|
||||||
end
|
end
|
||||||
|
|
||||||
if (amount < 1) then --> não há barras para mostrar
|
if (amount < 1) then --> não há barras para mostrar
|
||||||
|
|||||||
@@ -12,6 +12,7 @@
|
|||||||
local _setmetatable = setmetatable --lua local
|
local _setmetatable = setmetatable --lua local
|
||||||
local _getmetatable = getmetatable --lua local
|
local _getmetatable = getmetatable --lua local
|
||||||
local _bit_band = bit.band --lua local
|
local _bit_band = bit.band --lua local
|
||||||
|
local _table_sort = table.sort --lua local
|
||||||
local _ipairs = ipairs --lua local
|
local _ipairs = ipairs --lua local
|
||||||
local _pairs = pairs --lua local
|
local _pairs = pairs --lua local
|
||||||
|
|
||||||
@@ -62,6 +63,29 @@
|
|||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function container_combatentes:GetTotal (key)
|
||||||
|
local total = 0
|
||||||
|
key = key or "total"
|
||||||
|
for _, actor in _ipairs (self._ActorTable) do
|
||||||
|
total = total + (actor [key] or 0)
|
||||||
|
end
|
||||||
|
|
||||||
|
return total
|
||||||
|
end
|
||||||
|
|
||||||
|
function container_combatentes:GetTotalOnRaid (key, combat)
|
||||||
|
local total = 0
|
||||||
|
key = key or "total"
|
||||||
|
local roster = combat.raid_roster
|
||||||
|
for _, actor in _ipairs (self._ActorTable) do
|
||||||
|
if (roster [actor.nome]) then
|
||||||
|
total = total + (actor [key] or 0)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return total
|
||||||
|
end
|
||||||
|
|
||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
--> internals
|
--> internals
|
||||||
@@ -435,7 +459,6 @@
|
|||||||
|
|
||||||
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
-- grava o objeto no mapa do container
|
-- grava o objeto no mapa do container
|
||||||
|
|
||||||
local size = #self._ActorTable+1
|
local size = #self._ActorTable+1
|
||||||
self._ActorTable [size] = novo_objeto --> grava na tabela de indexes
|
self._ActorTable [size] = novo_objeto --> grava na tabela de indexes
|
||||||
self._NameIndexTable [nome] = size --> grava no hash map o index deste jogador
|
self._NameIndexTable [nome] = size --> grava no hash map o index deste jogador
|
||||||
@@ -490,6 +513,21 @@
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local bykey
|
||||||
|
local sort = function (t1, t2)
|
||||||
|
return t1 [bykey] > t2 [bykey]
|
||||||
|
end
|
||||||
|
|
||||||
|
function container_combatentes:SortByKey (key)
|
||||||
|
bykey = key
|
||||||
|
_table_sort (self._ActorTable, sort)
|
||||||
|
self:remapear()
|
||||||
|
end
|
||||||
|
|
||||||
|
function container_combatentes:Remap()
|
||||||
|
return self:remapear()
|
||||||
|
end
|
||||||
|
|
||||||
function container_combatentes:remapear()
|
function container_combatentes:remapear()
|
||||||
local mapa = self._NameIndexTable
|
local mapa = self._NameIndexTable
|
||||||
local conteudo = self._ActorTable
|
local conteudo = self._ActorTable
|
||||||
|
|||||||
@@ -132,6 +132,7 @@ function container_pets:BuscarPets()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
elseif (_IsInGroup()) then
|
elseif (_IsInGroup()) then
|
||||||
for i = 1, _GetNumGroupMembers()-1, 1 do
|
for i = 1, _GetNumGroupMembers()-1, 1 do
|
||||||
local pet_serial = _UnitGUID ("partypet"..i)
|
local pet_serial = _UnitGUID ("partypet"..i)
|
||||||
@@ -149,6 +150,21 @@ function container_pets:BuscarPets()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local pet_serial = _UnitGUID ("pet")
|
||||||
|
if (pet_serial) then
|
||||||
|
if (not _detalhes.tabela_pets.pets [pet_serial]) then
|
||||||
|
_detalhes.tabela_pets:Adicionar (pet_serial, _UnitName ("pet"), 0x1114, _UnitGUID ("player"), _detalhes.playername, 0x514)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
else
|
||||||
|
local pet_serial = _UnitGUID ("pet")
|
||||||
|
if (pet_serial) then
|
||||||
|
if (not _detalhes.tabela_pets.pets [pet_serial]) then
|
||||||
|
_detalhes.tabela_pets:Adicionar (pet_serial, _UnitName ("pet"), 0x1114, _UnitGUID ("player"), _detalhes.playername, 0x514)
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -57,6 +57,8 @@
|
|||||||
--> reaplica indexes e metatables
|
--> reaplica indexes e metatables
|
||||||
function _detalhes:RestauraMetaTables()
|
function _detalhes:RestauraMetaTables()
|
||||||
|
|
||||||
|
_detalhes.refresh:r_atributo_custom()
|
||||||
|
|
||||||
--> container de pets e histórico
|
--> container de pets e histórico
|
||||||
_detalhes.refresh:r_container_pets (_detalhes.tabela_pets)
|
_detalhes.refresh:r_container_pets (_detalhes.tabela_pets)
|
||||||
_detalhes.refresh:r_historico (_detalhes.tabela_historico)
|
_detalhes.refresh:r_historico (_detalhes.tabela_historico)
|
||||||
@@ -577,6 +579,8 @@
|
|||||||
esta_instancia.waiting_pid = nil
|
esta_instancia.waiting_pid = nil
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
_detalhes.clear:c_atributo_custom()
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
+33
-8
@@ -9,6 +9,7 @@
|
|||||||
local Loc = LibStub ("AceLocale-3.0"):GetLocale ( "Details" )
|
local Loc = LibStub ("AceLocale-3.0"):GetLocale ( "Details" )
|
||||||
local _tempo = time()
|
local _tempo = time()
|
||||||
local _
|
local _
|
||||||
|
|
||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
--> local pointers
|
--> local pointers
|
||||||
|
|
||||||
@@ -16,7 +17,8 @@
|
|||||||
local _UnitHealth = UnitHealth --wow api local
|
local _UnitHealth = UnitHealth --wow api local
|
||||||
local _UnitHealthMax = UnitHealthMax --wow api local
|
local _UnitHealthMax = UnitHealthMax --wow api local
|
||||||
local _UnitIsFeignDeath = UnitIsFeignDeath --wow api local
|
local _UnitIsFeignDeath = UnitIsFeignDeath --wow api local
|
||||||
local _UnitGUID = UnitGUID
|
local _UnitGUID = UnitGUID --wow api local
|
||||||
|
local _GetUnitName = GetUnitName --wow api local
|
||||||
local _GetInstanceInfo = GetInstanceInfo --wow api local
|
local _GetInstanceInfo = GetInstanceInfo --wow api local
|
||||||
local _IsInRaid = IsInRaid --wow api local
|
local _IsInRaid = IsInRaid --wow api local
|
||||||
local _IsInGroup = IsInGroup --wow api local
|
local _IsInGroup = IsInGroup --wow api local
|
||||||
@@ -34,7 +36,7 @@
|
|||||||
local _table_sort = table.sort --lua local
|
local _table_sort = table.sort --lua local
|
||||||
local _type = type --lua local
|
local _type = type --lua local
|
||||||
local _math_ceil = math.ceil --lua local
|
local _math_ceil = math.ceil --lua local
|
||||||
local _table_wipe = table.wipe
|
local _table_wipe = table.wipe --lua local
|
||||||
|
|
||||||
local escudo = _detalhes.escudos --details local
|
local escudo = _detalhes.escudos --details local
|
||||||
local parser = _detalhes.parser --details local
|
local parser = _detalhes.parser --details local
|
||||||
@@ -2822,6 +2824,7 @@
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function _detalhes.parser_functions:PET_BATTLE_CLOSE (...)
|
function _detalhes.parser_functions:PET_BATTLE_CLOSE (...)
|
||||||
_detalhes.pet_battle = false
|
_detalhes.pet_battle = false
|
||||||
for index, instance in _ipairs (_detalhes.tabela_instancias) do
|
for index, instance in _ipairs (_detalhes.tabela_instancias) do
|
||||||
@@ -2831,6 +2834,10 @@
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function _detalhes.parser_functions:UNIT_NAME_UPDATE (...)
|
||||||
|
_detalhes:SchedulePetUpdate (5)
|
||||||
|
end
|
||||||
|
|
||||||
local parser_functions = _detalhes.parser_functions
|
local parser_functions = _detalhes.parser_functions
|
||||||
|
|
||||||
function _detalhes:OnEvent (evento, ...)
|
function _detalhes:OnEvent (evento, ...)
|
||||||
@@ -2933,34 +2940,52 @@
|
|||||||
_table_wipe (raid_members_cache)
|
_table_wipe (raid_members_cache)
|
||||||
_table_wipe (tanks_members_cache)
|
_table_wipe (tanks_members_cache)
|
||||||
|
|
||||||
|
local roster = _detalhes.tabela_vigente.raid_roster
|
||||||
|
|
||||||
if (_IsInRaid()) then
|
if (_IsInRaid()) then
|
||||||
for i = 1, _GetNumGroupMembers() do
|
for i = 1, _GetNumGroupMembers() do
|
||||||
|
local name = _GetUnitName ("raid"..i, true)
|
||||||
|
|
||||||
raid_members_cache [_UnitGUID ("raid"..i)] = true
|
raid_members_cache [_UnitGUID ("raid"..i)] = true
|
||||||
local role = _UnitGroupRolesAssigned (GetUnitName ("raid"..i, true))
|
roster [name] = true
|
||||||
|
|
||||||
|
local role = _UnitGroupRolesAssigned (name)
|
||||||
if (role == "TANK") then
|
if (role == "TANK") then
|
||||||
tanks_members_cache [_UnitGUID ("raid"..i)] = true
|
tanks_members_cache [_UnitGUID ("raid"..i)] = true
|
||||||
|
|
||||||
--print ("tank detected:", GetUnitName ("raid"..i, true))
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
elseif (_IsInGroup()) then
|
elseif (_IsInGroup()) then
|
||||||
|
--party
|
||||||
for i = 1, _GetNumGroupMembers()-1 do
|
for i = 1, _GetNumGroupMembers()-1 do
|
||||||
|
local name = _GetUnitName ("party"..i, true)
|
||||||
|
|
||||||
raid_members_cache [_UnitGUID ("party"..i)] = true
|
raid_members_cache [_UnitGUID ("party"..i)] = true
|
||||||
local role = _UnitGroupRolesAssigned (GetUnitName ("party"..i, true))
|
roster [name] = true
|
||||||
|
|
||||||
|
local role = _UnitGroupRolesAssigned (name)
|
||||||
if (role == "TANK") then
|
if (role == "TANK") then
|
||||||
tanks_members_cache [_UnitGUID ("party"..i)] = true
|
tanks_members_cache [_UnitGUID ("party"..i)] = true
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--player
|
||||||
|
local name = GetUnitName ("player", true)
|
||||||
|
|
||||||
raid_members_cache [_UnitGUID ("player")] = true
|
raid_members_cache [_UnitGUID ("player")] = true
|
||||||
local role = _UnitGroupRolesAssigned (GetUnitName ("player", true))
|
roster [name] = true
|
||||||
|
|
||||||
|
local role = _UnitGroupRolesAssigned (name)
|
||||||
if (role == "TANK") then
|
if (role == "TANK") then
|
||||||
tanks_members_cache [_UnitGUID ("player")] = true
|
tanks_members_cache [_UnitGUID ("player")] = true
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
local name = GetUnitName ("player", true)
|
||||||
|
|
||||||
raid_members_cache [_UnitGUID ("player")] = true
|
raid_members_cache [_UnitGUID ("player")] = true
|
||||||
local role = _UnitGroupRolesAssigned (GetUnitName ("player", true))
|
roster [name] = true
|
||||||
|
|
||||||
|
local role = _UnitGroupRolesAssigned (name)
|
||||||
if (role == "TANK") then
|
if (role == "TANK") then
|
||||||
tanks_members_cache [_UnitGUID ("player")] = true
|
tanks_members_cache [_UnitGUID ("player")] = true
|
||||||
end
|
end
|
||||||
|
|||||||
+232
-248
@@ -1,12 +1,7 @@
|
|||||||
--File Revision: 1
|
--> this file controls the window position, size and others panels
|
||||||
--Last Modification: 27/07/2013
|
|
||||||
-- Change Log:
|
|
||||||
-- 27/07/2013: Finished alpha version.
|
|
||||||
|
|
||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
local _detalhes = _G._detalhes
|
||||||
|
local Loc = LibStub ("AceLocale-3.0"):GetLocale ( "Details" )
|
||||||
local _detalhes = _G._detalhes
|
|
||||||
local Loc = LibStub ("AceLocale-3.0"):GetLocale ( "Details" )
|
|
||||||
|
|
||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
--> local pointers
|
--> local pointers
|
||||||
@@ -25,7 +20,6 @@
|
|||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
--> core
|
--> core
|
||||||
|
|
||||||
|
|
||||||
function _detalhes:AnimarSplit (barra, goal)
|
function _detalhes:AnimarSplit (barra, goal)
|
||||||
barra.inicio = barra.split.barra:GetValue()
|
barra.inicio = barra.split.barra:GetValue()
|
||||||
barra.fim = goal
|
barra.fim = goal
|
||||||
@@ -35,16 +29,6 @@
|
|||||||
end
|
end
|
||||||
|
|
||||||
function _detalhes:FazerAnimacaoSplit (elapsed)
|
function _detalhes:FazerAnimacaoSplit (elapsed)
|
||||||
|
|
||||||
--[[
|
|
||||||
local velocidade = 0.1
|
|
||||||
local distancia = self.inicio - self.fim
|
|
||||||
if (distancia > 40 or distancia < -40) then
|
|
||||||
velocidade = 0.8
|
|
||||||
elseif (distancia > 20 or distancia < -20) then
|
|
||||||
velocidade = 0.4
|
|
||||||
end
|
|
||||||
--]]
|
|
||||||
local velocidade = 0.8
|
local velocidade = 0.8
|
||||||
|
|
||||||
if (self.fim > self.inicio) then
|
if (self.fim > self.inicio) then
|
||||||
@@ -137,60 +121,23 @@
|
|||||||
if (instance) then
|
if (instance) then
|
||||||
self = instance
|
self = instance
|
||||||
end
|
end
|
||||||
|
|
||||||
local mostrando = self.mostrando
|
local mostrando = self.mostrando
|
||||||
|
|
||||||
--local baseframe_width = math.floor (self.baseframe:GetWidth())
|
--
|
||||||
--local baseframe_height = math.floor (self.baseframe:GetHeight())
|
|
||||||
local baseframe_width = self.baseframe:GetWidth()
|
local baseframe_width = self.baseframe:GetWidth()
|
||||||
local baseframe_height = self.baseframe:GetHeight()
|
local baseframe_height = self.baseframe:GetHeight()
|
||||||
|
|
||||||
if (not baseframe_width) then
|
if (not baseframe_width) then
|
||||||
return _detalhes:ScheduleTimer ("SaveMainWindowPosition", 1, self)
|
return _detalhes:ScheduleTimer ("SaveMainWindowPosition", 1, self)
|
||||||
end
|
end
|
||||||
|
--
|
||||||
--[[
|
|
||||||
if (baseframe_width % 2 ~= 0) then
|
|
||||||
if (self.posicao[mostrando].w > baseframe_width) then
|
|
||||||
baseframe_width = baseframe_width +1
|
|
||||||
else
|
|
||||||
baseframe_width = baseframe_width -1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
self.baseframe:SetWidth (baseframe_width)
|
|
||||||
if (baseframe_height % 2 ~= 0) then
|
|
||||||
if (self.posicao[mostrando].h > baseframe_height) then
|
|
||||||
baseframe_height = baseframe_height +1
|
|
||||||
else
|
|
||||||
baseframe_height = baseframe_height -1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
self.baseframe:SetHeight (baseframe_height)
|
|
||||||
--]]
|
|
||||||
|
|
||||||
local xOfs, yOfs = self.baseframe:GetCenter()
|
local xOfs, yOfs = self.baseframe:GetCenter()
|
||||||
|
|
||||||
if (not xOfs) then
|
if (not xOfs) then
|
||||||
--> this is a small and unknow bug when resizing all windows throgh crtl key (all) the last window of a horizontal row can't 'GetCenter'.
|
|
||||||
--> so, the trick is we start a timer to save pos later.
|
|
||||||
return _detalhes:ScheduleTimer ("SaveMainWindowPosition", 1, self)
|
return _detalhes:ScheduleTimer ("SaveMainWindowPosition", 1, self)
|
||||||
end
|
end
|
||||||
|
--
|
||||||
--xOfs = math.floor (xOfs)
|
|
||||||
--yOfs = math.floor (yOfs)
|
|
||||||
|
|
||||||
if (xOfs % 2 ~= 0) then
|
|
||||||
--xOfs = xOfs -1
|
|
||||||
end
|
|
||||||
if (yOfs % 2 ~= 0) then
|
|
||||||
--yOfs = yOfs -1
|
|
||||||
end
|
|
||||||
|
|
||||||
local q, w = self.baseframe:GetCenter()
|
|
||||||
|
|
||||||
local _scale = self.baseframe:GetEffectiveScale()
|
local _scale = self.baseframe:GetEffectiveScale()
|
||||||
local _UIscale = _UIParent:GetScale()
|
local _UIscale = _UIParent:GetScale()
|
||||||
|
--
|
||||||
xOfs = xOfs*_scale - _GetScreenWidth()*_UIscale/2
|
xOfs = xOfs*_scale - _GetScreenWidth()*_UIscale/2
|
||||||
yOfs = yOfs*_scale - _GetScreenHeight()*_UIscale/2
|
yOfs = yOfs*_scale - _GetScreenHeight()*_UIscale/2
|
||||||
|
|
||||||
@@ -217,7 +164,7 @@
|
|||||||
self.ponto3 = {x = _x + metade_largura, y = _y - metade_altura + statusbar_y_mod} --bottomright
|
self.ponto3 = {x = _x + metade_largura, y = _y - metade_altura + statusbar_y_mod} --bottomright
|
||||||
self.ponto4 = {x = _x + metade_largura, y = _y + metade_altura + (statusbar_y_mod*-1)} --topright
|
self.ponto4 = {x = _x + metade_largura, y = _y + metade_altura + (statusbar_y_mod*-1)} --topright
|
||||||
|
|
||||||
self.baseframe.BoxBarrasAltura = self.baseframe:GetHeight()-4 --> isso aqui não sei o que esta fazendo aqui
|
self.baseframe.BoxBarrasAltura = self.baseframe:GetHeight()-4 --> checar isso
|
||||||
|
|
||||||
return {altura = self.baseframe:GetHeight(), largura = self.baseframe:GetWidth(), x = xOfs/_UIscale, y = yOfs/_UIscale}
|
return {altura = self.baseframe:GetHeight(), largura = self.baseframe:GetWidth(), x = xOfs/_UIscale, y = yOfs/_UIscale}
|
||||||
end
|
end
|
||||||
@@ -243,7 +190,7 @@
|
|||||||
self.baseframe:SetWidth (self.posicao[self.mostrando].w) --slider frame
|
self.baseframe:SetWidth (self.posicao[self.mostrando].w) --slider frame
|
||||||
self.baseframe:SetHeight (self.posicao[self.mostrando].h)
|
self.baseframe:SetHeight (self.posicao[self.mostrando].h)
|
||||||
|
|
||||||
self.baseframe.BoxBarrasAltura = self.baseframe:GetHeight()-4 --> ?????
|
self.baseframe.BoxBarrasAltura = self.baseframe:GetHeight()-4 --> checar isso
|
||||||
end
|
end
|
||||||
|
|
||||||
function _detalhes:RestoreMainWindowPositionNoResize (pre_defined, x, y)
|
function _detalhes:RestoreMainWindowPositionNoResize (pre_defined, x, y)
|
||||||
@@ -266,7 +213,7 @@
|
|||||||
|
|
||||||
self.baseframe:ClearAllPoints()
|
self.baseframe:ClearAllPoints()
|
||||||
self.baseframe:SetPoint ("CENTER", _UIParent, "CENTER", novo_x + x, novo_y + y)
|
self.baseframe:SetPoint ("CENTER", _UIParent, "CENTER", novo_x + x, novo_y + y)
|
||||||
self.baseframe.BoxBarrasAltura = self.baseframe:GetHeight()-4 --> ?????
|
self.baseframe.BoxBarrasAltura = self.baseframe:GetHeight()-4 --> checar isso
|
||||||
end
|
end
|
||||||
|
|
||||||
function _detalhes:ResetaGump (instancia, tipo, segmento)
|
function _detalhes:ResetaGump (instancia, tipo, segmento)
|
||||||
@@ -338,28 +285,12 @@
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--[ --disabled consolidate menu
|
|
||||||
if (_detalhes.lower_instance == self.meu_id or self.consolidate) then
|
|
||||||
if (not self.consolidate) then
|
|
||||||
--if (self.baseframe:GetWidth() < 180) then
|
|
||||||
--> consolidate menus
|
|
||||||
--self:ConsolidateIcons() --disabled
|
|
||||||
--end
|
|
||||||
else
|
|
||||||
if (self.baseframe:GetWidth() > 180 or _detalhes.lower_instance ~= self.meu_id) then
|
|
||||||
--> un consolidade menus
|
|
||||||
self:UnConsolidateIcons()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
--]]
|
|
||||||
|
|
||||||
if (self.stretch_button_side == 2) then
|
if (self.stretch_button_side == 2) then
|
||||||
self:StretchButtonAnchor (2)
|
self:StretchButtonAnchor (2)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--> reajusta o freeze
|
||||||
if (self.freezed) then
|
if (self.freezed) then
|
||||||
--> reajusta o freeze
|
|
||||||
_detalhes:Freeze (self)
|
_detalhes:Freeze (self)
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -369,7 +300,6 @@
|
|||||||
local T = self.rows_fit_in_window
|
local T = self.rows_fit_in_window
|
||||||
if (not T) then --> primeira vez que o gump esta sendo reajustado
|
if (not T) then --> primeira vez que o gump esta sendo reajustado
|
||||||
T = _math_floor (self.baseframe.BoxBarrasAltura / self.row_height)
|
T = _math_floor (self.baseframe.BoxBarrasAltura / self.row_height)
|
||||||
-- o que mais precisa por aqui?
|
|
||||||
end
|
end
|
||||||
|
|
||||||
--> reajustar o local do relógio
|
--> reajustar o local do relógio
|
||||||
@@ -378,28 +308,26 @@
|
|||||||
|
|
||||||
self.rows_fit_in_window = _math_floor ( self.baseframe.BoxBarrasAltura / self.row_height)
|
self.rows_fit_in_window = _math_floor ( self.baseframe.BoxBarrasAltura / self.row_height)
|
||||||
|
|
||||||
--if (not _detalhes.initializing) then
|
--> verifica se precisa criar mais barras
|
||||||
|
if (self.rows_fit_in_window > #self.barras) then--> verifica se precisa criar mais barras
|
||||||
if (self.rows_fit_in_window > #self.barras) then--> verifica se precisa criar mais barras
|
for i = #self.barras+1, self.rows_fit_in_window, 1 do
|
||||||
for i = #self.barras+1, self.rows_fit_in_window, 1 do
|
gump:CriaNovaBarra (self, i, 30) --> cria nova barra
|
||||||
gump:CriaNovaBarra (self, i, 30) --> cria nova barra
|
|
||||||
end
|
|
||||||
self.rows_created = #self.barras
|
|
||||||
end
|
end
|
||||||
|
self.rows_created = #self.barras
|
||||||
--> seta a largura das barras
|
end
|
||||||
if (self.bar_mod and self.bar_mod ~= 0) then
|
|
||||||
for index = 1, self.rows_fit_in_window do
|
|
||||||
self.barras [index]:SetWidth (self.baseframe:GetWidth()+self.bar_mod)
|
|
||||||
end
|
|
||||||
else
|
|
||||||
for index = 1, self.rows_fit_in_window do
|
|
||||||
self.barras [index]:SetWidth (self.baseframe:GetWidth()+self.row_info.space.right)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
--end
|
|
||||||
|
|
||||||
|
--> seta a largura das barras
|
||||||
|
if (self.bar_mod and self.bar_mod ~= 0) then
|
||||||
|
for index = 1, self.rows_fit_in_window do
|
||||||
|
self.barras [index]:SetWidth (self.baseframe:GetWidth()+self.bar_mod)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
for index = 1, self.rows_fit_in_window do
|
||||||
|
self.barras [index]:SetWidth (self.baseframe:GetWidth()+self.row_info.space.right)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
--> verifica se precisa esconder ou mostrar alguma barra
|
||||||
local A = self.barraS[1]
|
local A = self.barraS[1]
|
||||||
if (not A) then --> primeira vez que o resize esta sendo usado, no caso no startup do addon ou ao criar uma nova instância
|
if (not A) then --> primeira vez que o resize esta sendo usado, no caso no startup do addon ou ao criar uma nova instância
|
||||||
--> hida as barras não usadas
|
--> hida as barras não usadas
|
||||||
@@ -520,8 +448,64 @@
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--> cria o frame de wait for plugin
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
--> panels
|
||||||
|
|
||||||
|
--> cooltip presets
|
||||||
|
function _detalhes:CooltipPreset (preset)
|
||||||
|
local GameCooltip = GameCooltip
|
||||||
|
|
||||||
|
GameCooltip:Reset()
|
||||||
|
|
||||||
|
if (preset == 1) then
|
||||||
|
GameCooltip:SetOption ("TextFont", "Friz Quadrata TT")
|
||||||
|
GameCooltip:SetOption ("TextColor", "orange")
|
||||||
|
GameCooltip:SetOption ("TextSize", 12)
|
||||||
|
GameCooltip:SetOption ("ButtonsYMod", -4)
|
||||||
|
GameCooltip:SetOption ("YSpacingMod", -4)
|
||||||
|
GameCooltip:SetOption ("IgnoreButtonAutoHeight", true)
|
||||||
|
GameCooltip:SetColor (1, 0.5, 0.5, 0.5, 0.5)
|
||||||
|
|
||||||
|
elseif (preset == 2) then
|
||||||
|
GameCooltip:SetOption ("TextFont", "Friz Quadrata TT")
|
||||||
|
GameCooltip:SetOption ("TextColor", "orange")
|
||||||
|
GameCooltip:SetOption ("TextSize", 12)
|
||||||
|
GameCooltip:SetOption ("FixedWidth", 220)
|
||||||
|
GameCooltip:SetOption ("ButtonsYMod", -4)
|
||||||
|
GameCooltip:SetOption ("YSpacingMod", -4)
|
||||||
|
GameCooltip:SetOption ("IgnoreButtonAutoHeight", true)
|
||||||
|
GameCooltip:SetColor (1, 0.5, 0.5, 0.5, 0.5)
|
||||||
|
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
--> yes no panel
|
||||||
|
|
||||||
|
do
|
||||||
|
_detalhes.yesNo = _detalhes.gump:NewPanel (UIParent, _, "DetailsYesNoWindow", _, 500, 80)
|
||||||
|
_detalhes.yesNo:SetPoint ("center", UIParent, "center")
|
||||||
|
_detalhes.gump:NewLabel (_detalhes.yesNo, _, "$parentAsk", "ask", "")
|
||||||
|
_detalhes.yesNo ["ask"]:SetPoint ("center", _detalhes.yesNo, "center", 0, 25)
|
||||||
|
_detalhes.yesNo ["ask"]:SetWidth (480)
|
||||||
|
_detalhes.yesNo ["ask"]:SetJustifyH ("center")
|
||||||
|
_detalhes.yesNo ["ask"]:SetHeight (22)
|
||||||
|
_detalhes.gump:NewButton (_detalhes.yesNo, _, "$parentNo", "no", 100, 30, function() _detalhes.yesNo:Hide() end, nil, nil, nil, Loc ["STRING_NO"])
|
||||||
|
_detalhes.gump:NewButton (_detalhes.yesNo, _, "$parentYes", "yes", 100, 30, nil, nil, nil, nil, Loc ["STRING_YES"])
|
||||||
|
_detalhes.yesNo ["no"]:SetPoint (10, -45)
|
||||||
|
_detalhes.yesNo ["yes"]:SetPoint (390, -45)
|
||||||
|
_detalhes.yesNo ["no"]:InstallCustomTexture()
|
||||||
|
_detalhes.yesNo ["yes"]:InstallCustomTexture()
|
||||||
|
_detalhes.yesNo ["yes"]:SetHook ("OnMouseUp", function() _detalhes.yesNo:Hide() end)
|
||||||
|
function _detalhes:Ask (msg, func, ...)
|
||||||
|
_detalhes.yesNo ["ask"].text = msg
|
||||||
|
local p1, p2 = ...
|
||||||
|
_detalhes.yesNo ["yes"]:SetClickFunction (func, p1, p2)
|
||||||
|
_detalhes.yesNo:Show()
|
||||||
|
end
|
||||||
|
_detalhes.yesNo:Hide()
|
||||||
|
end
|
||||||
|
|
||||||
|
--> cria o frame de wait for plugin
|
||||||
function _detalhes:CreateWaitForPlugin()
|
function _detalhes:CreateWaitForPlugin()
|
||||||
|
|
||||||
local WaitForPluginFrame = CreateFrame ("frame", "DetailsWaitForPluginFrame" .. self.meu_id, UIParent)
|
local WaitForPluginFrame = CreateFrame ("frame", "DetailsWaitForPluginFrame" .. self.meu_id, UIParent)
|
||||||
@@ -673,8 +657,8 @@
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--> tutorial bubbles
|
||||||
do
|
do
|
||||||
|
|
||||||
--[1] criar nova instancia
|
--[1] criar nova instancia
|
||||||
--[2] esticar janela
|
--[2] esticar janela
|
||||||
--[3] resize e trava
|
--[3] resize e trava
|
||||||
@@ -781,151 +765,151 @@
|
|||||||
|
|
||||||
|
|
||||||
--> create bubble
|
--> create bubble
|
||||||
local f = CreateFrame ("frame", "DetailsBubble", UIParent)
|
do
|
||||||
f:SetPoint ("center", UIParent, "center")
|
local f = CreateFrame ("frame", "DetailsBubble", UIParent)
|
||||||
f:SetSize (100, 100)
|
f:SetPoint ("center", UIParent, "center")
|
||||||
f:SetFrameStrata ("TOOLTIP")
|
f:SetSize (100, 100)
|
||||||
f.isHorizontalFlipped = false
|
f:SetFrameStrata ("TOOLTIP")
|
||||||
f.isVerticalFlipped = false
|
|
||||||
|
|
||||||
local t = f:CreateTexture (nil, "artwork")
|
|
||||||
t:SetTexture ([[Interface\AddOns\Details\images\icons]])
|
|
||||||
t:SetSize (131 * 1.2, 81 * 1.2)
|
|
||||||
--377 328 508 409 0.0009765625
|
|
||||||
t:SetTexCoord (0.7373046875, 0.9912109375, 0.6416015625, 0.7978515625)
|
|
||||||
t:SetPoint ("center", f, "center")
|
|
||||||
|
|
||||||
local line1 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
|
||||||
line1:SetPoint ("topleft", t, "topleft", 24, -10)
|
|
||||||
_detalhes:SetFontSize (line1, 9)
|
|
||||||
line1:SetTextColor (.9, .9, .9, 1)
|
|
||||||
line1:SetSize (110, 12)
|
|
||||||
line1:SetJustifyV ("center")
|
|
||||||
line1:SetJustifyH ("center")
|
|
||||||
|
|
||||||
local line2 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
|
||||||
line2:SetPoint ("topleft", t, "topleft", 11, -20)
|
|
||||||
_detalhes:SetFontSize (line2, 9)
|
|
||||||
line2:SetTextColor (.9, .9, .9, 1)
|
|
||||||
line2:SetSize (140, 12)
|
|
||||||
line2:SetJustifyV ("center")
|
|
||||||
line2:SetJustifyH ("center")
|
|
||||||
|
|
||||||
local line3 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
|
||||||
line3:SetPoint ("topleft", t, "topleft", 7, -30)
|
|
||||||
_detalhes:SetFontSize (line3, 9)
|
|
||||||
line3:SetTextColor (.9, .9, .9, 1)
|
|
||||||
line3:SetSize (144, 12)
|
|
||||||
line3:SetJustifyV ("center")
|
|
||||||
line3:SetJustifyH ("center")
|
|
||||||
|
|
||||||
local line4 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
|
||||||
line4:SetPoint ("topleft", t, "topleft", 11, -40)
|
|
||||||
_detalhes:SetFontSize (line4, 9)
|
|
||||||
line4:SetTextColor (.9, .9, .9, 1)
|
|
||||||
line4:SetSize (140, 12)
|
|
||||||
line4:SetJustifyV ("center")
|
|
||||||
line4:SetJustifyH ("center")
|
|
||||||
|
|
||||||
local line5 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
|
||||||
line5:SetPoint ("topleft", t, "topleft", 24, -50)
|
|
||||||
_detalhes:SetFontSize (line5, 9)
|
|
||||||
line5:SetTextColor (.9, .9, .9, 1)
|
|
||||||
line5:SetSize (110, 12)
|
|
||||||
line5:SetJustifyV ("center")
|
|
||||||
line5:SetJustifyH ("center")
|
|
||||||
|
|
||||||
f.lines = {line1, line2, line3, line4, line5}
|
|
||||||
|
|
||||||
--t:SetPoint ("center", UIParent, "center")
|
|
||||||
|
|
||||||
function f:FlipHorizontal()
|
|
||||||
if (not f.isHorizontalFlipped) then
|
|
||||||
if (f.isVerticalFlipped) then
|
|
||||||
t:SetTexCoord (0.9912109375, 0.7373046875, 0.7978515625, 0.6416015625)
|
|
||||||
else
|
|
||||||
t:SetTexCoord (0.9912109375, 0.7373046875, 0.6416015625, 0.7978515625)
|
|
||||||
end
|
|
||||||
f.isHorizontalFlipped = true
|
|
||||||
else
|
|
||||||
if (f.isVerticalFlipped) then
|
|
||||||
t:SetTexCoord (0.7373046875, 0.9912109375, 0.7978515625, 0.6416015625)
|
|
||||||
else
|
|
||||||
t:SetTexCoord (0.7373046875, 0.9912109375, 0.6416015625, 0.7978515625)
|
|
||||||
end
|
|
||||||
f.isHorizontalFlipped = false
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function f:FlipVertical()
|
|
||||||
|
|
||||||
if (not f.isVerticalFlipped) then
|
|
||||||
if (f.isHorizontalFlipped) then
|
|
||||||
t:SetTexCoord (0.7373046875, 0.9912109375, 0.7978515625, 0.6416015625)
|
|
||||||
else
|
|
||||||
t:SetTexCoord (0.9912109375, 0.7373046875, 0.7978515625, 0.6416015625)
|
|
||||||
end
|
|
||||||
f.isVerticalFlipped = true
|
|
||||||
else
|
|
||||||
if (f.isHorizontalFlipped) then
|
|
||||||
t:SetTexCoord (0.7373046875, 0.9912109375, 0.6416015625, 0.7978515625)
|
|
||||||
else
|
|
||||||
t:SetTexCoord (0.9912109375, 0.7373046875, 0.6416015625, 0.7978515625)
|
|
||||||
end
|
|
||||||
f.isVerticalFlipped = false
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function f:TextConfig (fontsize, fontface, fontcolor)
|
|
||||||
for i = 1, 5 do
|
|
||||||
|
|
||||||
local line = f.lines [i]
|
|
||||||
|
|
||||||
_detalhes:SetFontSize (line, fontsize or 9)
|
|
||||||
_detalhes:SetFontFace (line, fontface or [[Fonts\FRIZQT__.TTF]])
|
|
||||||
_detalhes:SetFontColor (line, fontcolor or {.9, .9, .9, 1})
|
|
||||||
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function f:SetBubbleText (line1, line2, line3, line4, line5)
|
|
||||||
if (not line1) then
|
|
||||||
for _, line in ipairs (f.lines) do
|
|
||||||
line:SetText ("")
|
|
||||||
end
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
if (line1:find ("\n")) then
|
|
||||||
line1, line2, line3, line4, line5 = strsplit ("\n", line1)
|
|
||||||
end
|
|
||||||
|
|
||||||
f.lines[1]:SetText (line1)
|
|
||||||
f.lines[2]:SetText (line2)
|
|
||||||
f.lines[3]:SetText (line3)
|
|
||||||
f.lines[4]:SetText (line4)
|
|
||||||
f.lines[5]:SetText (line5)
|
|
||||||
end
|
|
||||||
|
|
||||||
function f:SetOwner (frame, myPoint, hisPoint, x, y, alpha)
|
|
||||||
f:ClearAllPoints()
|
|
||||||
f:TextConfig()
|
|
||||||
f:SetBubbleText (nil)
|
|
||||||
t:SetTexCoord (0.7373046875, 0.9912109375, 0.6416015625, 0.7978515625)
|
|
||||||
f.isHorizontalFlipped = false
|
f.isHorizontalFlipped = false
|
||||||
f.isVerticalFlipped = false
|
f.isVerticalFlipped = false
|
||||||
f:SetPoint (myPoint or "bottom", frame, hisPoint or "top", x or 0, y or 0)
|
|
||||||
t:SetAlpha (alpha or 1)
|
local t = f:CreateTexture (nil, "artwork")
|
||||||
end
|
t:SetTexture ([[Interface\AddOns\Details\images\icons]])
|
||||||
|
t:SetSize (131 * 1.2, 81 * 1.2)
|
||||||
function f:ShowBubble()
|
--377 328 508 409 0.0009765625
|
||||||
f:Show()
|
t:SetTexCoord (0.7373046875, 0.9912109375, 0.6416015625, 0.7978515625)
|
||||||
end
|
t:SetPoint ("center", f, "center")
|
||||||
|
|
||||||
function f:HideBubble()
|
local line1 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
||||||
|
line1:SetPoint ("topleft", t, "topleft", 24, -10)
|
||||||
|
_detalhes:SetFontSize (line1, 9)
|
||||||
|
line1:SetTextColor (.9, .9, .9, 1)
|
||||||
|
line1:SetSize (110, 12)
|
||||||
|
line1:SetJustifyV ("center")
|
||||||
|
line1:SetJustifyH ("center")
|
||||||
|
|
||||||
|
local line2 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
||||||
|
line2:SetPoint ("topleft", t, "topleft", 11, -20)
|
||||||
|
_detalhes:SetFontSize (line2, 9)
|
||||||
|
line2:SetTextColor (.9, .9, .9, 1)
|
||||||
|
line2:SetSize (140, 12)
|
||||||
|
line2:SetJustifyV ("center")
|
||||||
|
line2:SetJustifyH ("center")
|
||||||
|
|
||||||
|
local line3 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
||||||
|
line3:SetPoint ("topleft", t, "topleft", 7, -30)
|
||||||
|
_detalhes:SetFontSize (line3, 9)
|
||||||
|
line3:SetTextColor (.9, .9, .9, 1)
|
||||||
|
line3:SetSize (144, 12)
|
||||||
|
line3:SetJustifyV ("center")
|
||||||
|
line3:SetJustifyH ("center")
|
||||||
|
|
||||||
|
local line4 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
||||||
|
line4:SetPoint ("topleft", t, "topleft", 11, -40)
|
||||||
|
_detalhes:SetFontSize (line4, 9)
|
||||||
|
line4:SetTextColor (.9, .9, .9, 1)
|
||||||
|
line4:SetSize (140, 12)
|
||||||
|
line4:SetJustifyV ("center")
|
||||||
|
line4:SetJustifyH ("center")
|
||||||
|
|
||||||
|
local line5 = f:CreateFontString (nil, "overlay", "GameFontHighlightSmall")
|
||||||
|
line5:SetPoint ("topleft", t, "topleft", 24, -50)
|
||||||
|
_detalhes:SetFontSize (line5, 9)
|
||||||
|
line5:SetTextColor (.9, .9, .9, 1)
|
||||||
|
line5:SetSize (110, 12)
|
||||||
|
line5:SetJustifyV ("center")
|
||||||
|
line5:SetJustifyH ("center")
|
||||||
|
|
||||||
|
f.lines = {line1, line2, line3, line4, line5}
|
||||||
|
|
||||||
|
function f:FlipHorizontal()
|
||||||
|
if (not f.isHorizontalFlipped) then
|
||||||
|
if (f.isVerticalFlipped) then
|
||||||
|
t:SetTexCoord (0.9912109375, 0.7373046875, 0.7978515625, 0.6416015625)
|
||||||
|
else
|
||||||
|
t:SetTexCoord (0.9912109375, 0.7373046875, 0.6416015625, 0.7978515625)
|
||||||
|
end
|
||||||
|
f.isHorizontalFlipped = true
|
||||||
|
else
|
||||||
|
if (f.isVerticalFlipped) then
|
||||||
|
t:SetTexCoord (0.7373046875, 0.9912109375, 0.7978515625, 0.6416015625)
|
||||||
|
else
|
||||||
|
t:SetTexCoord (0.7373046875, 0.9912109375, 0.6416015625, 0.7978515625)
|
||||||
|
end
|
||||||
|
f.isHorizontalFlipped = false
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function f:FlipVertical()
|
||||||
|
|
||||||
|
if (not f.isVerticalFlipped) then
|
||||||
|
if (f.isHorizontalFlipped) then
|
||||||
|
t:SetTexCoord (0.7373046875, 0.9912109375, 0.7978515625, 0.6416015625)
|
||||||
|
else
|
||||||
|
t:SetTexCoord (0.9912109375, 0.7373046875, 0.7978515625, 0.6416015625)
|
||||||
|
end
|
||||||
|
f.isVerticalFlipped = true
|
||||||
|
else
|
||||||
|
if (f.isHorizontalFlipped) then
|
||||||
|
t:SetTexCoord (0.7373046875, 0.9912109375, 0.6416015625, 0.7978515625)
|
||||||
|
else
|
||||||
|
t:SetTexCoord (0.9912109375, 0.7373046875, 0.6416015625, 0.7978515625)
|
||||||
|
end
|
||||||
|
f.isVerticalFlipped = false
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function f:TextConfig (fontsize, fontface, fontcolor)
|
||||||
|
for i = 1, 5 do
|
||||||
|
|
||||||
|
local line = f.lines [i]
|
||||||
|
|
||||||
|
_detalhes:SetFontSize (line, fontsize or 9)
|
||||||
|
_detalhes:SetFontFace (line, fontface or [[Fonts\FRIZQT__.TTF]])
|
||||||
|
_detalhes:SetFontColor (line, fontcolor or {.9, .9, .9, 1})
|
||||||
|
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function f:SetBubbleText (line1, line2, line3, line4, line5)
|
||||||
|
if (not line1) then
|
||||||
|
for _, line in ipairs (f.lines) do
|
||||||
|
line:SetText ("")
|
||||||
|
end
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
if (line1:find ("\n")) then
|
||||||
|
line1, line2, line3, line4, line5 = strsplit ("\n", line1)
|
||||||
|
end
|
||||||
|
|
||||||
|
f.lines[1]:SetText (line1)
|
||||||
|
f.lines[2]:SetText (line2)
|
||||||
|
f.lines[3]:SetText (line3)
|
||||||
|
f.lines[4]:SetText (line4)
|
||||||
|
f.lines[5]:SetText (line5)
|
||||||
|
end
|
||||||
|
|
||||||
|
function f:SetOwner (frame, myPoint, hisPoint, x, y, alpha)
|
||||||
|
f:ClearAllPoints()
|
||||||
|
f:TextConfig()
|
||||||
|
f:SetBubbleText (nil)
|
||||||
|
t:SetTexCoord (0.7373046875, 0.9912109375, 0.6416015625, 0.7978515625)
|
||||||
|
f.isHorizontalFlipped = false
|
||||||
|
f.isVerticalFlipped = false
|
||||||
|
f:SetPoint (myPoint or "bottom", frame, hisPoint or "top", x or 0, y or 0)
|
||||||
|
t:SetAlpha (alpha or 1)
|
||||||
|
end
|
||||||
|
|
||||||
|
function f:ShowBubble()
|
||||||
|
f:Show()
|
||||||
|
end
|
||||||
|
|
||||||
|
function f:HideBubble()
|
||||||
|
f:Hide()
|
||||||
|
end
|
||||||
|
|
||||||
|
f:SetBubbleText (nil)
|
||||||
|
|
||||||
f:Hide()
|
f:Hide()
|
||||||
end
|
end
|
||||||
|
|
||||||
f:SetBubbleText (nil)
|
|
||||||
|
|
||||||
f:Hide()
|
|
||||||
@@ -502,8 +502,10 @@ local ButtonMetaFunctions = {}
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if (button.MyObject.have_tooltip) then
|
if (button.MyObject.have_tooltip) then
|
||||||
_detalhes.popup:ShowMe (false)
|
if (GameCooltip:GetText (1) == button.MyObject.have_tooltip) then
|
||||||
|
GameCooltip:Hide()
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local parent = button:GetParent().MyObject
|
local parent = button:GetParent().MyObject
|
||||||
|
|||||||
@@ -805,7 +805,7 @@ function DetailsCreateCoolTip()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function CoolTip:StatusBar (menuButton, StatusBar)
|
function CoolTip:StatusBar (menuButton, StatusBar)
|
||||||
|
|
||||||
if (StatusBar) then
|
if (StatusBar) then
|
||||||
|
|
||||||
menuButton.statusbar:SetValue (StatusBar [1])
|
menuButton.statusbar:SetValue (StatusBar [1])
|
||||||
@@ -899,7 +899,8 @@ function DetailsCreateCoolTip()
|
|||||||
CoolTip.LeftIconTableSub [mainMenuIndex] and CoolTip.LeftIconTableSub [mainMenuIndex] [index],
|
CoolTip.LeftIconTableSub [mainMenuIndex] and CoolTip.LeftIconTableSub [mainMenuIndex] [index],
|
||||||
CoolTip.RightIconTableSub [mainMenuIndex] and CoolTip.RightIconTableSub [mainMenuIndex] [index], true)
|
CoolTip.RightIconTableSub [mainMenuIndex] and CoolTip.RightIconTableSub [mainMenuIndex] [index], true)
|
||||||
--> setup statusbar
|
--> setup statusbar
|
||||||
CoolTip:StatusBar (menuButton, CoolTip.StatusBarTable [mainMenuIndex] and CoolTip.StatusBarTable [mainMenuIndex] [index])
|
CoolTip:StatusBar (menuButton, CoolTip.StatusBarTableSub [mainMenuIndex] and CoolTip.StatusBarTableSub [mainMenuIndex] [index])
|
||||||
|
|
||||||
|
|
||||||
--> click
|
--> click
|
||||||
menuButton:RegisterForClicks ("LeftButtonDown")
|
menuButton:RegisterForClicks ("LeftButtonDown")
|
||||||
@@ -1493,7 +1494,7 @@ function DetailsCreateCoolTip()
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function CoolTip:GetText (buttonIndex)
|
function CoolTip:GetText (buttonIndex)
|
||||||
local button1 = frame1.Lines [buttonIndex]
|
local button1 = frame1.Lines [buttonIndex]
|
||||||
|
|||||||
+105
-20
@@ -875,22 +875,26 @@ function gump:ColorPick (frame, r, g, b, alpha, callback)
|
|||||||
end
|
end
|
||||||
|
|
||||||
------------icon pick
|
------------icon pick
|
||||||
function gump:IconPick (callback)
|
function gump:IconPick (callback, close_when_select)
|
||||||
|
|
||||||
if (not gump.IconPickFrame) then
|
if (not gump.IconPickFrame) then
|
||||||
|
|
||||||
|
local string_lower = string.lower
|
||||||
|
|
||||||
gump.IconPickFrame = CreateFrame ("frame", "DetailsIconPickFrame", UIParent)
|
gump.IconPickFrame = CreateFrame ("frame", "DetailsIconPickFrame", UIParent)
|
||||||
tinsert (UISpecialFrames, "DetailsIconPickFrame")
|
tinsert (UISpecialFrames, "DetailsIconPickFrame")
|
||||||
gump.IconPickFrame:SetFrameStrata ("DIALOG")
|
gump.IconPickFrame:SetFrameStrata ("DIALOG")
|
||||||
|
|
||||||
gump.IconPickFrame:SetPoint ("center", UIParent, "center")
|
gump.IconPickFrame:SetPoint ("center", UIParent, "center")
|
||||||
gump.IconPickFrame:SetWidth (350)
|
gump.IconPickFrame:SetWidth (350)
|
||||||
gump.IconPickFrame:SetHeight (200)
|
gump.IconPickFrame:SetHeight (227)
|
||||||
gump.IconPickFrame:EnableMouse (true)
|
gump.IconPickFrame:EnableMouse (true)
|
||||||
gump.IconPickFrame:SetMovable (true)
|
gump.IconPickFrame:SetMovable (true)
|
||||||
gump.IconPickFrame:SetBackdrop ({bgFile = "Interface\\AddOns\\Details\\images\\background", edgeFile = "Interface\\DialogFrame\\UI-DialogBox-Border",
|
gump.IconPickFrame:SetBackdrop ({bgFile = "Interface\\AddOns\\Details\\images\\background", edgeFile = "Interface\\DialogFrame\\UI-DialogBox-Border",
|
||||||
tile = true, tileSize = 32, edgeSize = 32, insets = {left = 5, right = 5, top = 5, bottom = 5}})
|
tile = true, tileSize = 32, edgeSize = 32, insets = {left = 5, right = 5, top = 5, bottom = 5}})
|
||||||
|
|
||||||
|
--local title = gump.IconPickFrame:CreateTitleRegion()
|
||||||
|
|
||||||
gump.IconPickFrame:SetBackdropBorderColor (170/255, 170/255, 170/255)
|
gump.IconPickFrame:SetBackdropBorderColor (170/255, 170/255, 170/255)
|
||||||
gump.IconPickFrame:SetBackdropColor (24/255, 24/255, 24/255, .8)
|
gump.IconPickFrame:SetBackdropColor (24/255, 24/255, 24/255, .8)
|
||||||
gump.IconPickFrame:SetFrameLevel (1)
|
gump.IconPickFrame:SetFrameLevel (1)
|
||||||
@@ -898,11 +902,29 @@ function gump:IconPick (callback)
|
|||||||
gump.IconPickFrame.emptyFunction = function() end
|
gump.IconPickFrame.emptyFunction = function() end
|
||||||
gump.IconPickFrame.callback = gump.IconPickFrame.emptyFunction
|
gump.IconPickFrame.callback = gump.IconPickFrame.emptyFunction
|
||||||
|
|
||||||
|
gump.IconPickFrame.preview = gump:NewImage (gump.IconPickFrame, nil, 76, 76)
|
||||||
|
|
||||||
|
gump.IconPickFrame.searchLabel = gump:NewLabel (gump.IconPickFrame, nil, "$parentSearchBoxLabel", nil, "search:", font, size, color)
|
||||||
|
gump.IconPickFrame.searchLabel:SetPoint ("topleft", gump.IconPickFrame, "topleft", 12, -20)
|
||||||
|
gump.IconPickFrame.search = gump:NewTextEntry (gump.IconPickFrame, nil, "$parentSearchBox", nil, 140, 20)
|
||||||
|
gump.IconPickFrame.search:SetPoint ("left", gump.IconPickFrame.searchLabel, "right", 2, 0)
|
||||||
|
gump.IconPickFrame.search:SetHook ("OnTextChanged", function()
|
||||||
|
gump.IconPickFrame.searching = gump.IconPickFrame.search:GetText()
|
||||||
|
if (gump.IconPickFrame.searching == "") then
|
||||||
|
gump.IconPickFrameScroll:Show()
|
||||||
|
gump.IconPickFrame.searching = nil
|
||||||
|
gump.IconPickFrame.updateFunc()
|
||||||
|
else
|
||||||
|
gump.IconPickFrameScroll:Hide()
|
||||||
|
gump.IconPickFrame.updateFunc()
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
--> close button
|
--> close button
|
||||||
local close_button = CreateFrame ("button", nil, gump.IconPickFrame, "UIPanelCloseButton")
|
local close_button = CreateFrame ("button", nil, gump.IconPickFrame, "UIPanelCloseButton")
|
||||||
close_button:SetWidth (32)
|
close_button:SetWidth (32)
|
||||||
close_button:SetHeight (32)
|
close_button:SetHeight (32)
|
||||||
close_button:SetPoint ("TOPRIGHT", gump.IconPickFrame, "TOPRIGHT", -3, 20)
|
close_button:SetPoint ("TOPRIGHT", gump.IconPickFrame, "TOPRIGHT", -8, -7)
|
||||||
close_button:SetFrameLevel (close_button:GetFrameLevel()+2)
|
close_button:SetFrameLevel (close_button:GetFrameLevel()+2)
|
||||||
|
|
||||||
local MACRO_ICON_FILENAMES = {}
|
local MACRO_ICON_FILENAMES = {}
|
||||||
@@ -911,7 +933,6 @@ function gump:IconPick (callback)
|
|||||||
MACRO_ICON_FILENAMES = {};
|
MACRO_ICON_FILENAMES = {};
|
||||||
MACRO_ICON_FILENAMES[1] = "INV_MISC_QUESTIONMARK";
|
MACRO_ICON_FILENAMES[1] = "INV_MISC_QUESTIONMARK";
|
||||||
local index = 2;
|
local index = 2;
|
||||||
local numFlyouts = 0;
|
|
||||||
|
|
||||||
for i = 1, GetNumSpellTabs() do
|
for i = 1, GetNumSpellTabs() do
|
||||||
local tab, tabTex, offset, numSpells, _ = GetSpellTabInfo(i);
|
local tab, tabTex, offset, numSpells, _ = GetSpellTabInfo(i);
|
||||||
@@ -957,44 +978,69 @@ function gump:IconPick (callback)
|
|||||||
local OnClickFunction = function (index)
|
local OnClickFunction = function (index)
|
||||||
local button = gump.IconPickFrame.buttons [index]
|
local button = gump.IconPickFrame.buttons [index]
|
||||||
local texture = button:GetNormalTexture()
|
local texture = button:GetNormalTexture()
|
||||||
gump.IconPickFrame.callback ("INTERFACE\\ICONS\\"..MACRO_ICON_FILENAMES [button.IconID])
|
gump.IconPickFrame.callback (button.icon_texture)
|
||||||
|
if (gump.IconPickFrame.click_close) then
|
||||||
|
close_button:Click()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local onenter = function (self)
|
||||||
|
gump.IconPickFrame.preview:SetPoint ("bottom", self, "top", 0, 2)
|
||||||
|
gump.IconPickFrame.preview:SetTexture (self.icon_texture)
|
||||||
|
gump.IconPickFrame.preview:SetParent (self)
|
||||||
|
gump.IconPickFrame.preview:Show()
|
||||||
|
end
|
||||||
|
local onleave = function (self)
|
||||||
|
gump.IconPickFrame.preview:Hide()
|
||||||
end
|
end
|
||||||
|
|
||||||
for i = 0, 9 do
|
for i = 0, 9 do
|
||||||
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i+1, i+1, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..(i+1))
|
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i+1, i+1, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..(i+1))
|
||||||
newcheck:SetPoint ("topleft", gump.IconPickFrame, "topleft", 12+(i*30), -13)
|
newcheck:SetPoint ("topleft", gump.IconPickFrame, "topleft", 12 + (i*30), -40)
|
||||||
newcheck:SetID (i+1)
|
newcheck:SetID (i+1)
|
||||||
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
||||||
|
newcheck.MouseOnEnterHook = onenter
|
||||||
|
newcheck.MouseOnLeaveHook = onleave
|
||||||
end
|
end
|
||||||
for i = 11, 20 do
|
for i = 11, 20 do
|
||||||
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
||||||
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
||||||
newcheck:SetID (i)
|
newcheck:SetID (i)
|
||||||
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
||||||
|
newcheck.MouseOnEnterHook = onenter
|
||||||
|
newcheck.MouseOnLeaveHook = onleave
|
||||||
end
|
end
|
||||||
for i = 21, 30 do
|
for i = 21, 30 do
|
||||||
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
||||||
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
||||||
newcheck:SetID (i)
|
newcheck:SetID (i)
|
||||||
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
||||||
|
newcheck.MouseOnEnterHook = onenter
|
||||||
|
newcheck.MouseOnLeaveHook = onleave
|
||||||
end
|
end
|
||||||
for i = 31, 40 do
|
for i = 31, 40 do
|
||||||
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
||||||
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
||||||
newcheck:SetID (i)
|
newcheck:SetID (i)
|
||||||
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
||||||
|
newcheck.MouseOnEnterHook = onenter
|
||||||
|
newcheck.MouseOnLeaveHook = onleave
|
||||||
end
|
end
|
||||||
for i = 41, 50 do
|
for i = 41, 50 do
|
||||||
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
||||||
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
||||||
newcheck:SetID (i)
|
newcheck:SetID (i)
|
||||||
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
||||||
|
newcheck.MouseOnEnterHook = onenter
|
||||||
|
newcheck.MouseOnLeaveHook = onleave
|
||||||
end
|
end
|
||||||
for i = 51, 60 do
|
for i = 51, 60 do
|
||||||
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
local newcheck = gump:NewDetailsButton (gump.IconPickFrame, gump.IconPickFrame, _, OnClickFunction, i, i, 30, 28, "", "", "", "", _, "DetailsIconPickFrameButton"..i)
|
||||||
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
newcheck:SetPoint ("topleft", "DetailsIconPickFrameButton"..(i-10), "bottomleft", 0, -1)
|
||||||
newcheck:SetID (i)
|
newcheck:SetID (i)
|
||||||
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
gump.IconPickFrame.buttons [#gump.IconPickFrame.buttons+1] = newcheck
|
||||||
|
newcheck.MouseOnEnterHook = onenter
|
||||||
|
newcheck.MouseOnLeaveHook = onleave
|
||||||
end
|
end
|
||||||
|
|
||||||
local scroll = CreateFrame ("ScrollFrame", "DetailsIconPickFrameScroll", gump.IconPickFrame, "ListScrollFrameTemplate")
|
local scroll = CreateFrame ("ScrollFrame", "DetailsIconPickFrameScroll", gump.IconPickFrame, "ListScrollFrameTemplate")
|
||||||
@@ -1008,27 +1054,65 @@ function gump:IconPick (callback)
|
|||||||
|
|
||||||
-- Icon list
|
-- Icon list
|
||||||
local texture;
|
local texture;
|
||||||
for i = 1, 60 do
|
|
||||||
macroPopupIcon = _G["DetailsIconPickFrameButton"..i];
|
local filter
|
||||||
macroPopupButton = _G["DetailsIconPickFrameButton"..i];
|
if (gump.IconPickFrame.searching) then
|
||||||
index = (macroPopupOffset * 10) + i;
|
filter = string_lower (gump.IconPickFrame.searching)
|
||||||
texture = MACRO_ICON_FILENAMES [index]
|
end
|
||||||
if ( index <= numMacroIcons and texture ) then
|
|
||||||
macroPopupButton:ChangeIcon ("INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture)
|
if (filter and filter ~= "") then
|
||||||
macroPopupButton.IconID = index
|
local i = 1
|
||||||
macroPopupButton:Show();
|
for o = 1, numMacroIcons do
|
||||||
else
|
local text = string_lower (MACRO_ICON_FILENAMES [o])
|
||||||
macroPopupButton:Hide();
|
if (text:find (filter)) then
|
||||||
|
macroPopupIcon = _G ["DetailsIconPickFrameButton"..i]
|
||||||
|
macroPopupButton = _G ["DetailsIconPickFrameButton"..i]
|
||||||
|
local texture = MACRO_ICON_FILENAMES [o]
|
||||||
|
macroPopupButton:ChangeIcon ("INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture)
|
||||||
|
macroPopupButton.IconID = index
|
||||||
|
macroPopupButton.icon_texture = "INTERFACE\\ICONS\\"..texture
|
||||||
|
macroPopupButton:Show();
|
||||||
|
|
||||||
|
i = i + 1
|
||||||
|
if (i > 60) then
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if (i == 1) then --no resutls
|
||||||
|
macroPopupButton = _G ["DetailsIconPickFrameButton"..i]
|
||||||
|
macroPopupButton:Hide()
|
||||||
|
end
|
||||||
|
|
||||||
|
for o = i+1, 60 do
|
||||||
|
macroPopupButton = _G ["DetailsIconPickFrameButton"..o]
|
||||||
|
macroPopupButton:Hide()
|
||||||
|
end
|
||||||
|
else
|
||||||
|
for i = 1, 60 do
|
||||||
|
macroPopupIcon = _G ["DetailsIconPickFrameButton"..i]
|
||||||
|
macroPopupButton = _G ["DetailsIconPickFrameButton"..i]
|
||||||
|
index = (macroPopupOffset * 10) + i;
|
||||||
|
texture = MACRO_ICON_FILENAMES [index]
|
||||||
|
if ( index <= numMacroIcons and texture ) then
|
||||||
|
macroPopupButton:ChangeIcon ("INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture, "INTERFACE\\ICONS\\"..texture)
|
||||||
|
macroPopupButton.IconID = index
|
||||||
|
macroPopupButton.icon_texture = "INTERFACE\\ICONS\\"..texture
|
||||||
|
macroPopupButton:Show()
|
||||||
|
else
|
||||||
|
macroPopupButton:Hide()
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Scrollbar stuff
|
-- Scrollbar stuff
|
||||||
FauxScrollFrame_Update (scroll, ceil (numMacroIcons / 10) , 5, 20 );
|
FauxScrollFrame_Update (scroll, ceil (numMacroIcons / 10) , 5, 20 );
|
||||||
end
|
end
|
||||||
|
|
||||||
|
gump.IconPickFrame.updateFunc = ChecksFrame_Update
|
||||||
|
|
||||||
|
scroll:SetPoint ("topleft", gump.IconPickFrame, "topleft", -18, -37)
|
||||||
scroll:SetPoint ("topleft", gump.IconPickFrame, "topleft", -18, -10)
|
|
||||||
scroll:SetWidth (330)
|
scroll:SetWidth (330)
|
||||||
scroll:SetHeight (178)
|
scroll:SetHeight (178)
|
||||||
scroll:SetScript ("OnVerticalScroll", function (self, offset) FauxScrollFrame_OnVerticalScroll (scroll, offset, 20, ChecksFrame_Update) end)
|
scroll:SetScript ("OnVerticalScroll", function (self, offset) FauxScrollFrame_OnVerticalScroll (scroll, offset, 20, ChecksFrame_Update) end)
|
||||||
@@ -1041,5 +1125,6 @@ function gump:IconPick (callback)
|
|||||||
gump.IconPickFrame:Show()
|
gump.IconPickFrame:Show()
|
||||||
gump.IconPickFrameScroll.update (gump.IconPickFrameScroll)
|
gump.IconPickFrameScroll.update (gump.IconPickFrameScroll)
|
||||||
gump.IconPickFrame.callback = callback or gump.IconPickFrame.emptyFunction
|
gump.IconPickFrame.callback = callback or gump.IconPickFrame.emptyFunction
|
||||||
|
gump.IconPickFrame.click_close = close_when_select
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
+31
-9
@@ -248,6 +248,29 @@ local TextEntryMetaFunctions = {}
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function TextEntryMetaFunctions:Enable()
|
||||||
|
if (not self.editbox:IsEnabled()) then
|
||||||
|
self.editbox:Enable()
|
||||||
|
self.editbox:SetBackdropBorderColor (unpack (self.enabled_border_color))
|
||||||
|
self.editbox:SetBackdropColor (unpack (self.enabled_backdrop_color))
|
||||||
|
self.editbox:SetTextColor (unpack (self.enabled_text_color))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function TextEntryMetaFunctions:Disable()
|
||||||
|
if (self.editbox:IsEnabled()) then
|
||||||
|
self.enabled_border_color = {self.editbox:GetBackdropBorderColor()}
|
||||||
|
self.enabled_backdrop_color = {self.editbox:GetBackdropColor()}
|
||||||
|
self.enabled_text_color = {self.editbox:GetTextColor()}
|
||||||
|
|
||||||
|
self.editbox:Disable()
|
||||||
|
|
||||||
|
self.editbox:SetBackdropBorderColor (.5, .5, .5, .5)
|
||||||
|
self.editbox:SetBackdropColor (.5, .5, .5, .5)
|
||||||
|
self.editbox:SetTextColor (.5, .5, .5, .5)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
------------------------------------------------------------------------------------------------------------
|
------------------------------------------------------------------------------------------------------------
|
||||||
--> scripts
|
--> scripts
|
||||||
local OnEnter = function (textentry)
|
local OnEnter = function (textentry)
|
||||||
@@ -269,7 +292,7 @@ local TextEntryMetaFunctions = {}
|
|||||||
|
|
||||||
if (textentry:IsEnabled()) then
|
if (textentry:IsEnabled()) then
|
||||||
textentry.current_bordercolor = textentry.current_bordercolor or {textentry:GetBackdropBorderColor()}
|
textentry.current_bordercolor = textentry.current_bordercolor or {textentry:GetBackdropBorderColor()}
|
||||||
textentry:SetBackdropBorderColor (0.5, 0.5, 0.5, 1)
|
textentry:SetBackdropBorderColor (1, 1, 1, 1)
|
||||||
end
|
end
|
||||||
|
|
||||||
local parent = textentry:GetParent().MyObject
|
local parent = textentry:GetParent().MyObject
|
||||||
@@ -527,16 +550,15 @@ function gump:NewTextEntry (parent, container, name, member, w, h, func, param1,
|
|||||||
TextEntryObject.editbox:SetJustifyH ("center")
|
TextEntryObject.editbox:SetJustifyH ("center")
|
||||||
TextEntryObject.editbox:EnableMouse (true)
|
TextEntryObject.editbox:EnableMouse (true)
|
||||||
TextEntryObject.editbox:SetText ("")
|
TextEntryObject.editbox:SetText ("")
|
||||||
|
|
||||||
--TextEntryObject.editbox:SetBackdrop ({bgFile = "Interface\\ChatFrame\\ChatFrameBackground",
|
|
||||||
--edgeFile = "Interface\\ChatFrame\\ChatFrameBackground",
|
|
||||||
--tile = true, edgeSize = 1, tileSize = 5})
|
|
||||||
|
|
||||||
--TextEntryObject.editbox:SetBackdropColor (0, 0, 0, 0.5)
|
|
||||||
--TextEntryObject.editbox:SetBackdropBorderColor (0.3, 0.3, 0.30, 0.80)
|
|
||||||
TextEntryObject.editbox.current_bordercolor = {1, 1, 1, 1}
|
|
||||||
TextEntryObject.editbox:SetAutoFocus (false)
|
TextEntryObject.editbox:SetAutoFocus (false)
|
||||||
TextEntryObject.editbox:SetFontObject ("GameFontHighlightSmall")
|
TextEntryObject.editbox:SetFontObject ("GameFontHighlightSmall")
|
||||||
|
|
||||||
|
TextEntryObject.editbox.current_bordercolor = {1, 1, 1, 0.7}
|
||||||
|
TextEntryObject.editbox:SetBackdropBorderColor (1, 1, 1, 0.7)
|
||||||
|
TextEntryObject.enabled_border_color = {TextEntryObject.editbox:GetBackdropBorderColor()}
|
||||||
|
TextEntryObject.enabled_backdrop_color = {TextEntryObject.editbox:GetBackdropColor()}
|
||||||
|
TextEntryObject.enabled_text_color = {TextEntryObject.editbox:GetTextColor()}
|
||||||
|
|
||||||
TextEntryObject.func = func
|
TextEntryObject.func = func
|
||||||
TextEntryObject.param1 = param1
|
TextEntryObject.param1 = param1
|
||||||
|
|||||||
@@ -31,6 +31,11 @@ do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--> return the EJ boss id
|
||||||
|
function _detalhes:GetEncounterIdFromBossIndex (mapid, index)
|
||||||
|
return _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].encounter_ids and _detalhes.EncounterInformation [mapid].encounter_ids [index]
|
||||||
|
end
|
||||||
|
|
||||||
--> return the table which contain information about the start of a encounter
|
--> return the table which contain information about the start of a encounter
|
||||||
function _detalhes:GetEncounterStartInfo (mapid, encounterid)
|
function _detalhes:GetEncounterStartInfo (mapid, encounterid)
|
||||||
local bossindex = _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].encounter_ids and _detalhes.EncounterInformation [mapid].encounter_ids [encounterid]
|
local bossindex = _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].encounter_ids and _detalhes.EncounterInformation [mapid].encounter_ids [encounterid]
|
||||||
@@ -83,6 +88,11 @@ do
|
|||||||
return _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].encounters [bossindex]
|
return _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].encounters [bossindex]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--> return a table with all names of boss enemies
|
||||||
|
function _detalhes:GetEncounterActors (mapid, bossindex)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
--> return a table with spells id of specified encounter
|
--> return a table with spells id of specified encounter
|
||||||
function _detalhes:GetEncounterSpells (mapid, bossindex)
|
function _detalhes:GetEncounterSpells (mapid, bossindex)
|
||||||
local encounter = _detalhes:GetBossDetails (mapid, bossindex)
|
local encounter = _detalhes:GetBossDetails (mapid, bossindex)
|
||||||
@@ -108,6 +118,13 @@ do
|
|||||||
return _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].boss_ids
|
return _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].boss_ids
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function _detalhes:InstanceIsRaid (mapid)
|
||||||
|
return _detalhes:InstanceisRaid (mapid)
|
||||||
|
end
|
||||||
|
function _detalhes:InstanceisRaid (mapid)
|
||||||
|
return _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].is_raid
|
||||||
|
end
|
||||||
|
|
||||||
--> return a table with all encounter names present in raid instance
|
--> return a table with all encounter names present in raid instance
|
||||||
function _detalhes:GetBossNames (mapid)
|
function _detalhes:GetBossNames (mapid)
|
||||||
return _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].boss_names
|
return _detalhes.EncounterInformation [mapid] and _detalhes.EncounterInformation [mapid].boss_names
|
||||||
@@ -150,6 +167,24 @@ do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--> return a list with names of adds and bosses
|
||||||
|
function _detalhes:GetEncounterActorsName (EJ_EncounterID)
|
||||||
|
--code snippet from wowpedia
|
||||||
|
local actors = {}
|
||||||
|
local stack, encounter, _, _, curSectionID = {}, EJ_GetEncounterInfo (EJ_EncounterID)
|
||||||
|
repeat
|
||||||
|
local title, description, depth, abilityIcon, displayInfo, siblingID, nextSectionID, filteredByDifficulty, link, startsOpen, flag1, flag2, flag3, flag4 = EJ_GetSectionInfo (curSectionID)
|
||||||
|
if (displayInfo ~= 0 and abilityIcon == "") then
|
||||||
|
actors [title] = {model = displayInfo, info = description}
|
||||||
|
end
|
||||||
|
table.insert (stack, siblingID)
|
||||||
|
table.insert (stack, nextSectionID)
|
||||||
|
curSectionID = table.remove (stack)
|
||||||
|
until not curSectionID
|
||||||
|
|
||||||
|
return actors
|
||||||
|
end
|
||||||
|
|
||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
--> core
|
--> core
|
||||||
|
|
||||||
|
|||||||
@@ -104,7 +104,13 @@ do
|
|||||||
return self.nome or actor.nome
|
return self.nome or actor.nome
|
||||||
end
|
end
|
||||||
function _detalhes:GetName (actor)
|
function _detalhes:GetName (actor)
|
||||||
return actor.nome or self.nome
|
return self.nome or actor.nome
|
||||||
|
end
|
||||||
|
function _detalhes:GetDisplayName (actor)
|
||||||
|
return self.displayName or actor.displayName
|
||||||
|
end
|
||||||
|
function _detalhes:Class (actor)
|
||||||
|
return self.classe or actor.classe
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -288,6 +288,7 @@ function _detalhes:LoadConfig()
|
|||||||
|
|
||||||
--> custom
|
--> custom
|
||||||
_detalhes.custom = _detalhes_global.custom
|
_detalhes.custom = _detalhes_global.custom
|
||||||
|
_detalhes.refresh:r_atributo_custom()
|
||||||
|
|
||||||
--> initialize parser
|
--> initialize parser
|
||||||
_detalhes.capture_current = {}
|
_detalhes.capture_current = {}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ do
|
|||||||
local _ipairs = ipairs
|
local _ipairs = ipairs
|
||||||
local _UnitClass = UnitClass
|
local _UnitClass = UnitClass
|
||||||
local _select = select
|
local _select = select
|
||||||
|
local _unpack = unpack
|
||||||
|
|
||||||
-- try get the class from actor name
|
-- try get the class from actor name
|
||||||
function _detalhes:GetClass (name)
|
function _detalhes:GetClass (name)
|
||||||
@@ -28,15 +29,46 @@ do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local CLASS_ICON_TCOORDS = CLASS_ICON_TCOORDS
|
||||||
|
function _detalhes:GetClassIcon (class)
|
||||||
|
|
||||||
|
local c
|
||||||
|
|
||||||
|
if (self.classe) then
|
||||||
|
c = self.classe
|
||||||
|
elseif (type (class) == "table" and class.classe) then
|
||||||
|
c = class.classe
|
||||||
|
elseif (type (class) == "string") then
|
||||||
|
c = class
|
||||||
|
else
|
||||||
|
c = "UNKNOW"
|
||||||
|
end
|
||||||
|
|
||||||
|
if (c == "UNKNOW") then
|
||||||
|
return [[Interface\LFGFRAME\LFGROLE_BW]], 0.25, 0.5, 0, 1
|
||||||
|
elseif (c == "UNGROUPPLAYER") then
|
||||||
|
return [[Interface\ICONS\Achievement_Character_Orc_Male]], 0, 1, 0, 1
|
||||||
|
elseif (c == "PET") then
|
||||||
|
return [[Interface\AddOns\Details\images\classes_small]], 0.25, 0.49609375, 0.75, 1
|
||||||
|
else
|
||||||
|
return [[Interface\AddOns\Details\images\classes_small]], _unpack (CLASS_ICON_TCOORDS [c])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local default_color = {1, 1, 1, 1}
|
||||||
function _detalhes:GetClassColor (class)
|
function _detalhes:GetClassColor (class)
|
||||||
if (self.classe) then
|
if (self.classe) then
|
||||||
return _detalhes.class_colors [class.classe]
|
return unpack (_detalhes.class_colors [self.classe] or default_color)
|
||||||
|
|
||||||
elseif (type (class) == "table" and class.classe) then
|
elseif (type (class) == "table" and class.classe) then
|
||||||
return _detalhes.class_colors [class.classe]
|
return unpack (_detalhes.class_colors [class.classe] or default_color)
|
||||||
|
|
||||||
|
elseif (type (class) == "string") then
|
||||||
|
return unpack (_detalhes.class_colors [class] or default_color)
|
||||||
|
|
||||||
|
else
|
||||||
|
unpack (default_color)
|
||||||
end
|
end
|
||||||
return _detalhes.class_colors [class]
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function _detalhes:GuessClass (t)
|
function _detalhes:GuessClass (t)
|
||||||
|
|||||||
+3
-148
@@ -12,154 +12,9 @@ function _detalhes:SaveData()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function _detalhes:SaveDataOnLogout()
|
function _detalhes:SaveDataOnLogout()
|
||||||
|
if (true) then
|
||||||
if (true) then
|
return
|
||||||
return
|
end
|
||||||
end
|
|
||||||
|
|
||||||
if (_detalhes.wipe_full_config) then
|
|
||||||
_detalhes_global = nil
|
|
||||||
_detalhes_database = nil
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
--> cleanup tables
|
|
||||||
_detalhes:PrepareTablesForSave()
|
|
||||||
|
|
||||||
--> get data
|
|
||||||
|
|
||||||
-- On Character
|
|
||||||
|
|
||||||
--> nicktag cache
|
|
||||||
_detalhes_database.nick_tag_cache = _detalhes.nick_tag_cache
|
|
||||||
_detalhes_database.only_pvp_frags = _detalhes.only_pvp_frags
|
|
||||||
|
|
||||||
--> minimap
|
|
||||||
_detalhes_database.minimap = _detalhes.minimap
|
|
||||||
|
|
||||||
--> plugin data
|
|
||||||
_detalhes_database.plugin_database = _detalhes.plugin_database
|
|
||||||
|
|
||||||
--> save instances (windows)
|
|
||||||
_detalhes_database.tabela_instancias = _detalhes.tabela_instancias
|
|
||||||
_detalhes_database.class_icons_small = _detalhes.class_icons_small
|
|
||||||
_detalhes_database.class_coords = _detalhes.class_coords
|
|
||||||
_detalhes_database.class_colors = _detalhes.class_colors
|
|
||||||
--> character info
|
|
||||||
_detalhes_database.character_data = _detalhes.character_data
|
|
||||||
--> options data
|
|
||||||
--window size
|
|
||||||
_detalhes_database.max_window_size = _detalhes.max_window_size
|
|
||||||
_detalhes_database.new_window_size = _detalhes.new_window_size
|
|
||||||
_detalhes_database.window_clamp = _detalhes.window_clamp
|
|
||||||
--> text sizes
|
|
||||||
_detalhes_database.font_sizes = _detalhes.font_sizes
|
|
||||||
_detalhes_database.ps_abbreviation = _detalhes.ps_abbreviation
|
|
||||||
-- max segments
|
|
||||||
_detalhes_database.segments_amount = _detalhes.segments_amount
|
|
||||||
_detalhes_database.segments_amount_to_save = _detalhes.segments_amount_to_save
|
|
||||||
_detalhes_database.instances_amount = _detalhes.instances_amount
|
|
||||||
_detalhes_database.clear_ungrouped = _detalhes.clear_ungrouped
|
|
||||||
_detalhes_database.clear_graphic = _detalhes.clear_graphic
|
|
||||||
-- row animation
|
|
||||||
_detalhes_database.use_row_animations = _detalhes.use_row_animations
|
|
||||||
_detalhes_database.animate_scroll = _detalhes.animate_scroll
|
|
||||||
_detalhes_database.use_scroll = _detalhes.use_scroll
|
|
||||||
-- death log
|
|
||||||
_detalhes_database.deadlog_limit = _detalhes.deadlog_limit
|
|
||||||
-- report
|
|
||||||
_detalhes_database.report_lines = _detalhes.report_lines
|
|
||||||
_detalhes_database.report_to_who = _detalhes.report_to_who
|
|
||||||
-- colors
|
|
||||||
_detalhes_database.default_bg_color = _detalhes.default_bg_color
|
|
||||||
_detalhes_database.default_bg_alpha = _detalhes.default_bg_alpha
|
|
||||||
-- fades
|
|
||||||
_detalhes_database.row_fade_in = _detalhes.row_fade_in
|
|
||||||
_detalhes_database.windows_fade_in = _detalhes.windows_fade_in
|
|
||||||
_detalhes_database.row_fade_out = _detalhes.row_fade_out
|
|
||||||
_detalhes_database.windows_fade_out = _detalhes.windows_fade_out
|
|
||||||
-- modes
|
|
||||||
_detalhes_database.solo = _detalhes.solo
|
|
||||||
_detalhes_database.tank = _detalhes.raid
|
|
||||||
-- switch
|
|
||||||
_detalhes_database.switch = {}
|
|
||||||
_detalhes_database.switch.slots = _detalhes.switch.slots
|
|
||||||
_detalhes_database.switch.table = _detalhes.switch.table
|
|
||||||
-- capture
|
|
||||||
_detalhes_database.capture_real = _detalhes.capture_real
|
|
||||||
_detalhes_database.cloud_capture = _detalhes.cloud_capture
|
|
||||||
_detalhes_database.minimum_combat_time = _detalhes.minimum_combat_time
|
|
||||||
--> combat data
|
|
||||||
-- segments table
|
|
||||||
_detalhes_database.tabela_historico = _detalhes.tabela_historico
|
|
||||||
-- combat id
|
|
||||||
_detalhes_database.combat_id = _detalhes.combat_id
|
|
||||||
-- modes
|
|
||||||
_detalhes_database.SoloTables = {}
|
|
||||||
_detalhes_database.RaidTables = {}
|
|
||||||
--> precisa pegar o nome do plugin
|
|
||||||
if (_detalhes.SoloTables.Mode) then
|
|
||||||
_detalhes_database.SoloTables.Mode = _detalhes.SoloTables.Mode
|
|
||||||
if (_detalhes.SoloTables.Plugins [_detalhes.SoloTables.Mode]) then
|
|
||||||
_detalhes_database.SoloTables.LastSelected = _detalhes.SoloTables.Plugins [_detalhes.SoloTables.Mode].real_name
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if (_detalhes.RaidTables.Mode) then
|
|
||||||
_detalhes_database.RaidTables.Mode = _detalhes.RaidTables.Mode
|
|
||||||
if (_detalhes.RaidTables.Plugins [_detalhes.RaidTables.Mode]) then
|
|
||||||
_detalhes_database.RaidTables.LastSelected = _detalhes.RaidTables.Plugins [_detalhes.RaidTables.Mode].real_name
|
|
||||||
end
|
|
||||||
end
|
|
||||||
--> buff data
|
|
||||||
_detalhes.Buffs:SaveBuffs()
|
|
||||||
|
|
||||||
--> customs
|
|
||||||
_detalhes_database.custom = _detalhes.custom
|
|
||||||
|
|
||||||
--> version
|
|
||||||
_detalhes_database.last_realversion = _detalhes.realversion --> core number
|
|
||||||
_detalhes_database.last_version = _detalhes.userversion --> version
|
|
||||||
|
|
||||||
-- On Account
|
|
||||||
|
|
||||||
_detalhes_global = _detalhes_global or {}
|
|
||||||
|
|
||||||
--> profiles
|
|
||||||
_detalhes_global.__profiiles = _detalhes.__profiiles
|
|
||||||
|
|
||||||
--> skins
|
|
||||||
_detalhes_global.savedStyles = _detalhes.savedStyles
|
|
||||||
_detalhes_global.standard_skin = _detalhes.standard_skin
|
|
||||||
_detalhes_global.got_first_run = true
|
|
||||||
--max segments
|
|
||||||
_detalhes_global.segments_amount = _detalhes.segments_amount
|
|
||||||
_detalhes_global.segments_amount_to_save = _detalhes.segments_amount_to_save
|
|
||||||
_detalhes_global.segments_panic_mode = _detalhes.segments_panic_mode
|
|
||||||
-- animations
|
|
||||||
_detalhes_global.use_row_animations = _detalhes.use_row_animations
|
|
||||||
_detalhes_global.animate_scroll = _detalhes.animate_scroll
|
|
||||||
-- scrollbar
|
|
||||||
_detalhes_global.use_scroll = _detalhes.use_scroll
|
|
||||||
-- core
|
|
||||||
_detalhes_global.clear_ungrouped = _detalhes.clear_ungrouped
|
|
||||||
_detalhes_global.update_speed = _detalhes.update_speed
|
|
||||||
_detalhes_global.time_type = _detalhes.time_type
|
|
||||||
_detalhes_global.memory_threshold = _detalhes.memory_threshold
|
|
||||||
_detalhes_global.memory_ram = _detalhes.memory_ram
|
|
||||||
_detalhes_global.remove_realm_from_name = _detalhes.remove_realm_from_name
|
|
||||||
_detalhes_global.trash_concatenate = _detalhes.trash_concatenate
|
|
||||||
_detalhes_global.trash_auto_remove = _detalhes.trash_auto_remove
|
|
||||||
|
|
||||||
_detalhes_global.SpellOverwriteUser = _detalhes.SpellOverwriteUser
|
|
||||||
|
|
||||||
--tutorial
|
|
||||||
_detalhes_global.tutorial = _detalhes.tutorial
|
|
||||||
|
|
||||||
--profiles
|
|
||||||
_detalhes_global.__profiiles = _detalhes.__profiiles
|
|
||||||
|
|
||||||
return true
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
local force_reset = function()
|
local force_reset = function()
|
||||||
|
|||||||
@@ -201,6 +201,55 @@ function SlashCmdList.DETAILS (msg, editbox)
|
|||||||
--instance.baseframe:SetPoint ("CENTER", UIParent, "CENTER", 300, 100)
|
--instance.baseframe:SetPoint ("CENTER", UIParent, "CENTER", 300, 100)
|
||||||
instance.baseframe:SetPoint ("left", DetailsWelcomeWindow, "right", 10, 0)
|
instance.baseframe:SetPoint ("left", DetailsWelcomeWindow, "right", 10, 0)
|
||||||
|
|
||||||
|
elseif (msg == "model") then
|
||||||
|
local frame = CreateFrame ("PlayerModel");
|
||||||
|
frame:SetPoint("center",UIParent,"center");
|
||||||
|
frame:SetHeight(600);
|
||||||
|
frame:SetWidth(300);
|
||||||
|
frame:SetDisplayInfo (49585);
|
||||||
|
|
||||||
|
elseif (msg == "ej2") then
|
||||||
|
|
||||||
|
--[[ get the EJ_ raid id
|
||||||
|
local wantRaids = true -- set false to get 5-man list
|
||||||
|
for i=1,1000 do
|
||||||
|
instanceID,name,description,bgImage,buttonImage,loreImage, dungeonAreaMapID, link = EJ_GetInstanceByIndex(i,wantRaids)
|
||||||
|
if not instanceID then break end
|
||||||
|
DEFAULT_CHAT_FRAME:AddMessage( instanceID.." "..name ,1,0.7,0.5)
|
||||||
|
end
|
||||||
|
--]]
|
||||||
|
|
||||||
|
local iid=362
|
||||||
|
|
||||||
|
for i=1, 100 do
|
||||||
|
local name, description, encounterID, rootSectionID, link = EJ_GetEncounterInfoByIndex (i, iid)
|
||||||
|
|
||||||
|
if not encounterID then break end
|
||||||
|
local msg = encounterID .. " , " .. name .. ", ".. rootSectionID.. ", "..link
|
||||||
|
DEFAULT_CHAT_FRAME:AddMessage(msg, 1,0.7,0.5)
|
||||||
|
end
|
||||||
|
|
||||||
|
elseif (msg == "ej") then
|
||||||
|
function PrintAllEncounterSections(encounterID, difficultyID)
|
||||||
|
EJ_SetDifficulty(difficultyID)
|
||||||
|
local stack, encounter, _, _, curSectionID = {}, EJ_GetEncounterInfo(encounterID)
|
||||||
|
print(stack, encounter, _, _, curSectionID)
|
||||||
|
repeat
|
||||||
|
local title, desc, depth, icon, model, siblingID, nextSectionID, filteredByDifficulty, link, _, f1, f2, f3, f4 = EJ_GetSectionInfo(curSectionID)
|
||||||
|
if not filteredByDifficulty then
|
||||||
|
--print((" "):rep(depth) .. link .. ": " .. desc)
|
||||||
|
--npcs nao tem icone e possuel modelo diferente de zero.
|
||||||
|
--spells tem icone e possuel modelo = zero
|
||||||
|
print (title, icon, model, siblingID)
|
||||||
|
end
|
||||||
|
table.insert(stack, siblingID)
|
||||||
|
table.insert(stack, nextSectionID)
|
||||||
|
curSectionID = table.remove(stack)
|
||||||
|
until not curSectionID
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Print everything in 25-man Normal Madness of Deathwing:
|
||||||
|
PrintAllEncounterSections (869, 4)
|
||||||
|
|
||||||
elseif (msg == "time") then
|
elseif (msg == "time") then
|
||||||
print ("GetTime()", GetTime())
|
print ("GetTime()", GetTime())
|
||||||
|
|||||||
+1576
-893
File diff suppressed because it is too large
Load Diff
+139
-135
@@ -183,14 +183,18 @@ function _detalhes:OpenOptionsWindow (instance)
|
|||||||
local sub_atributo = _this_instance.sub_atributo
|
local sub_atributo = _this_instance.sub_atributo
|
||||||
|
|
||||||
if (atributo == 5) then --> custom
|
if (atributo == 5) then --> custom
|
||||||
|
|
||||||
local CustomObject = _detalhes.custom [sub_atributo]
|
local CustomObject = _detalhes.custom [sub_atributo]
|
||||||
|
|
||||||
if (CustomObject) then
|
if (not CustomObject) then
|
||||||
InstanceList [#InstanceList+1] = {value = index, label = _detalhes.atributos.lista [atributo] .. " - " .. CustomObject.name, onclick = onSelectInstance, icon = CustomObject.icon}
|
_this_instance:ResetAttribute()
|
||||||
|
atributo = _this_instance.atributo
|
||||||
|
sub_atributo = _this_instance.sub_atributo
|
||||||
|
InstanceList [#InstanceList+1] = {value = index, label = "#".. index .. " " .. _detalhes.atributos.lista [atributo] .. " - " .. _detalhes.sub_atributos [atributo].lista [sub_atributo], onclick = onSelectInstance, icon = _detalhes.sub_atributos [atributo].icones[sub_atributo] [1], texcoord = _detalhes.sub_atributos [atributo].icones[sub_atributo] [2]}
|
||||||
else
|
else
|
||||||
InstanceList [#InstanceList+1] = {value = index, label = "unknown" .. " - " .. " invalid custom", onclick = onSelectInstance, icon = [[Interface\COMMON\VOICECHAT-MUTED]]}
|
InstanceList [#InstanceList+1] = {value = index, label = "#".. index .. " " .. CustomObject.name, onclick = onSelectInstance, icon = CustomObject.icon}
|
||||||
end
|
end
|
||||||
|
|
||||||
else
|
else
|
||||||
local modo = _this_instance.modo
|
local modo = _this_instance.modo
|
||||||
|
|
||||||
@@ -1031,6 +1035,7 @@ function window:CreateFrame20()
|
|||||||
_detalhes.atributo_heal:UpdateSelectedToKFunction()
|
_detalhes.atributo_heal:UpdateSelectedToKFunction()
|
||||||
_detalhes.atributo_energy:UpdateSelectedToKFunction()
|
_detalhes.atributo_energy:UpdateSelectedToKFunction()
|
||||||
_detalhes.atributo_misc:UpdateSelectedToKFunction()
|
_detalhes.atributo_misc:UpdateSelectedToKFunction()
|
||||||
|
_detalhes.atributo_custom:UpdateSelectedToKFunction()
|
||||||
end
|
end
|
||||||
|
|
||||||
local icon = [[Interface\COMMON\mini-hourglass]]
|
local icon = [[Interface\COMMON\mini-hourglass]]
|
||||||
@@ -1067,6 +1072,7 @@ function window:CreateFrame20()
|
|||||||
_detalhes.atributo_heal:UpdateSelectedToKFunction()
|
_detalhes.atributo_heal:UpdateSelectedToKFunction()
|
||||||
_detalhes.atributo_energy:UpdateSelectedToKFunction()
|
_detalhes.atributo_energy:UpdateSelectedToKFunction()
|
||||||
_detalhes.atributo_misc:UpdateSelectedToKFunction()
|
_detalhes.atributo_misc:UpdateSelectedToKFunction()
|
||||||
|
_detalhes.atributo_custom:UpdateSelectedToKFunction()
|
||||||
end
|
end
|
||||||
|
|
||||||
local icon = [[Interface\Buttons\UI-Panel-BiggerButton-Up]]
|
local icon = [[Interface\Buttons\UI-Panel-BiggerButton-Up]]
|
||||||
@@ -3010,6 +3016,7 @@ function window:CreateFrame1()
|
|||||||
_detalhes.atributo_heal:UpdateSelectedToKFunction()
|
_detalhes.atributo_heal:UpdateSelectedToKFunction()
|
||||||
_detalhes.atributo_energy:UpdateSelectedToKFunction()
|
_detalhes.atributo_energy:UpdateSelectedToKFunction()
|
||||||
_detalhes.atributo_misc:UpdateSelectedToKFunction()
|
_detalhes.atributo_misc:UpdateSelectedToKFunction()
|
||||||
|
_detalhes.atributo_custom:UpdateSelectedToKFunction()
|
||||||
|
|
||||||
_detalhes:AtualizaGumpPrincipal (-1, true)
|
_detalhes:AtualizaGumpPrincipal (-1, true)
|
||||||
end
|
end
|
||||||
@@ -3294,10 +3301,115 @@ function window:CreateFrame2()
|
|||||||
--
|
--
|
||||||
window:CreateLineBackground2 (frame2, "OverallNewChallengeSlider", "OverallNewChallengeLabel", Loc ["STRING_OPTIONS_OVERALL_CHALLENGE_DESC"])
|
window:CreateLineBackground2 (frame2, "OverallNewChallengeSlider", "OverallNewChallengeLabel", Loc ["STRING_OPTIONS_OVERALL_CHALLENGE_DESC"])
|
||||||
|
|
||||||
|
--> captures
|
||||||
|
|
||||||
|
--> icons
|
||||||
|
g:NewImage (frame2, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "damageCaptureImage", "$parentCaptureDamage")
|
||||||
|
frame2.damageCaptureImage:SetTexCoord (0, 0.125, 0, 1)
|
||||||
|
|
||||||
|
g:NewImage (frame2, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "healCaptureImage", "$parentCaptureHeal")
|
||||||
|
frame2.healCaptureImage:SetTexCoord (0.125, 0.25, 0, 1)
|
||||||
|
|
||||||
|
g:NewImage (frame2, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "energyCaptureImage", "$parentCaptureEnergy")
|
||||||
|
frame2.energyCaptureImage:SetTexCoord (0.25, 0.375, 0, 1)
|
||||||
|
|
||||||
|
g:NewImage (frame2, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "miscCaptureImage", "$parentCaptureMisc")
|
||||||
|
frame2.miscCaptureImage:SetTexCoord (0.375, 0.5, 0, 1)
|
||||||
|
|
||||||
|
g:NewImage (frame2, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "auraCaptureImage", "$parentCaptureAura")
|
||||||
|
frame2.auraCaptureImage:SetTexCoord (0.5, 0.625, 0, 1)
|
||||||
|
|
||||||
|
--> labels
|
||||||
|
g:NewLabel (frame2, _, "$parentCaptureDamageLabel", "damageCaptureLabel", Loc ["STRING_OPTIONS_CDAMAGE"], "GameFontHighlightLeft")
|
||||||
|
frame2.damageCaptureLabel:SetPoint ("left", frame2.damageCaptureImage, "right", 2)
|
||||||
|
|
||||||
|
g:NewLabel (frame2, _, "$parentCaptureHealLabel", "healCaptureLabel", Loc ["STRING_OPTIONS_CHEAL"], "GameFontHighlightLeft")
|
||||||
|
frame2.healCaptureLabel:SetPoint ("left", frame2.healCaptureImage, "right", 2)
|
||||||
|
|
||||||
|
g:NewLabel (frame2, _, "$parentCaptureEnergyLabel", "energyCaptureLabel", Loc ["STRING_OPTIONS_CENERGY"], "GameFontHighlightLeft")
|
||||||
|
frame2.energyCaptureLabel:SetPoint ("left", frame2.energyCaptureImage, "right", 2)
|
||||||
|
|
||||||
|
g:NewLabel (frame2, _, "$parentCaptureMiscLabel", "miscCaptureLabel", Loc ["STRING_OPTIONS_CMISC"], "GameFontHighlightLeft")
|
||||||
|
frame2.miscCaptureLabel:SetPoint ("left", frame2.miscCaptureImage, "right", 2)
|
||||||
|
|
||||||
|
g:NewLabel (frame2, _, "$parentCaptureAuraLabel", "auraCaptureLabel", Loc ["STRING_OPTIONS_CAURAS"], "GameFontHighlightLeft")
|
||||||
|
frame2.auraCaptureLabel:SetPoint ("left", frame2.auraCaptureImage, "right", 2)
|
||||||
|
|
||||||
|
--> switches
|
||||||
|
|
||||||
|
local switch_icon_color = function (icon, on_off)
|
||||||
|
icon:SetDesaturated (not on_off)
|
||||||
|
end
|
||||||
|
|
||||||
|
g:NewSwitch (frame2, _, "$parentCaptureDamageSlider", "damageCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["damage"])
|
||||||
|
frame2.damageCaptureSlider:SetPoint ("left", frame2.damageCaptureLabel, "right", 2)
|
||||||
|
frame2.damageCaptureSlider.OnSwitch = function (self, _, value)
|
||||||
|
_detalhes:CaptureSet (value, "damage", true)
|
||||||
|
switch_icon_color (frame2.damageCaptureImage, value)
|
||||||
|
end
|
||||||
|
switch_icon_color (frame2.damageCaptureImage, _detalhes.capture_real ["damage"])
|
||||||
|
|
||||||
|
window:CreateLineBackground2 (frame2, "damageCaptureSlider", "damageCaptureLabel", Loc ["STRING_OPTIONS_CDAMAGE_DESC"], frame2.damageCaptureImage)
|
||||||
|
|
||||||
|
g:NewSwitch (frame2, _, "$parentCaptureHealSlider", "healCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["heal"])
|
||||||
|
frame2.healCaptureSlider:SetPoint ("left", frame2.healCaptureLabel, "right", 2)
|
||||||
|
frame2.healCaptureSlider.OnSwitch = function (self, _, value)
|
||||||
|
_detalhes:CaptureSet (value, "heal", true)
|
||||||
|
switch_icon_color (frame2.healCaptureImage, value)
|
||||||
|
end
|
||||||
|
switch_icon_color (frame2.healCaptureImage, _detalhes.capture_real ["heal"])
|
||||||
|
|
||||||
|
window:CreateLineBackground2 (frame2, "healCaptureSlider", "healCaptureLabel", Loc ["STRING_OPTIONS_CHEAL_DESC"], frame2.healCaptureImage)
|
||||||
|
|
||||||
|
g:NewSwitch (frame2, _, "$parentCaptureEnergySlider", "energyCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["energy"])
|
||||||
|
frame2.energyCaptureSlider:SetPoint ("left", frame2.energyCaptureLabel, "right", 2)
|
||||||
|
|
||||||
|
frame2.energyCaptureSlider.OnSwitch = function (self, _, value)
|
||||||
|
_detalhes:CaptureSet (value, "energy", true)
|
||||||
|
switch_icon_color (frame2.energyCaptureImage, value)
|
||||||
|
end
|
||||||
|
switch_icon_color (frame2.energyCaptureImage, _detalhes.capture_real ["energy"])
|
||||||
|
|
||||||
|
window:CreateLineBackground2 (frame2, "energyCaptureSlider", "energyCaptureLabel", Loc ["STRING_OPTIONS_CENERGY_DESC"], frame2.energyCaptureImage)
|
||||||
|
|
||||||
|
g:NewSwitch (frame2, _, "$parentCaptureMiscSlider", "miscCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["miscdata"])
|
||||||
|
frame2.miscCaptureSlider:SetPoint ("left", frame2.miscCaptureLabel, "right", 2)
|
||||||
|
frame2.miscCaptureSlider.OnSwitch = function (self, _, value)
|
||||||
|
_detalhes:CaptureSet (value, "miscdata", true)
|
||||||
|
switch_icon_color (frame2.miscCaptureImage, value)
|
||||||
|
end
|
||||||
|
switch_icon_color (frame2.miscCaptureImage, _detalhes.capture_real ["miscdata"])
|
||||||
|
|
||||||
|
window:CreateLineBackground2 (frame2, "miscCaptureSlider", "miscCaptureLabel", Loc ["STRING_OPTIONS_CMISC_DESC"], frame2.miscCaptureImage)
|
||||||
|
|
||||||
|
g:NewSwitch (frame2, _, "$parentCaptureAuraSlider", "auraCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["aura"])
|
||||||
|
frame2.auraCaptureSlider:SetPoint ("left", frame2.auraCaptureLabel, "right", 2)
|
||||||
|
frame2.auraCaptureSlider.OnSwitch = function (self, _, value)
|
||||||
|
_detalhes:CaptureSet (value, "aura", true)
|
||||||
|
switch_icon_color (frame2.auraCaptureImage, value)
|
||||||
|
end
|
||||||
|
switch_icon_color (frame2.auraCaptureImage, _detalhes.capture_real ["aura"])
|
||||||
|
|
||||||
|
window:CreateLineBackground2 (frame2, "auraCaptureSlider", "auraCaptureLabel", Loc ["STRING_OPTIONS_CAURAS_DESC"], frame2.auraCaptureImage)
|
||||||
|
|
||||||
|
--> cloud capture
|
||||||
|
g:NewLabel (frame2, _, "$parentCloudCaptureLabel", "cloudCaptureLabel", Loc ["STRING_OPTIONS_CLOUD"], "GameFontHighlightLeft")
|
||||||
|
|
||||||
|
g:NewSwitch (frame2, _, "$parentCloudAuraSlider", "cloudCaptureSlider", 60, 20, _, _, _detalhes.cloud_capture)
|
||||||
|
frame2.cloudCaptureSlider:SetPoint ("left", frame2.cloudCaptureLabel, "right", 2)
|
||||||
|
frame2.cloudCaptureSlider.OnSwitch = function (self, _, value)
|
||||||
|
_detalhes.cloud_capture = value
|
||||||
|
end
|
||||||
|
|
||||||
|
window:CreateLineBackground2 (frame2, "cloudCaptureSlider", "cloudCaptureLabel", Loc ["STRING_OPTIONS_CLOUD_DESC"] )
|
||||||
|
|
||||||
--> anchors
|
--> anchors
|
||||||
|
|
||||||
--general anchor
|
--general anchor
|
||||||
g:NewLabel (frame2, _, "$parentGeneralAnchor", "GeneralAnchorLabel", Loc ["STRING_OPTIONS_GENERAL_ANCHOR"], "GameFontNormal")
|
g:NewLabel (frame2, _, "$parentGeneralAnchor", "GeneralAnchorLabel", Loc ["STRING_OPTIONS_GENERAL_ANCHOR"], "GameFontNormal")
|
||||||
|
--captures anchor
|
||||||
|
g:NewLabel (frame2, _, "$parentDataCollectAnchor", "DataCollectAnchorLabel", Loc ["STRING_OPTIONS_DATACOLLECT_ANCHOR"], "GameFontNormal")
|
||||||
|
|
||||||
local x = window.left_start_at
|
local x = window.left_start_at
|
||||||
|
|
||||||
titulo_combattweeks:SetPoint (x, -30)
|
titulo_combattweeks:SetPoint (x, -30)
|
||||||
@@ -3320,6 +3432,20 @@ function window:CreateFrame2()
|
|||||||
|
|
||||||
window:arrange_menu (frame2, left_side, x, window.top_start_at)
|
window:arrange_menu (frame2, left_side, x, window.top_start_at)
|
||||||
|
|
||||||
|
local x = window.right_start_at
|
||||||
|
|
||||||
|
local right_side = {
|
||||||
|
{"DataCollectAnchorLabel", 1, true},
|
||||||
|
{"damageCaptureImage", 2},
|
||||||
|
{"healCaptureImage", 3},
|
||||||
|
{"energyCaptureImage", 4},
|
||||||
|
{"miscCaptureImage", 5},
|
||||||
|
{"auraCaptureImage", 6},
|
||||||
|
{"cloudCaptureLabel", 7, true},
|
||||||
|
}
|
||||||
|
|
||||||
|
window:arrange_menu (frame2, right_side, x, -90)
|
||||||
|
|
||||||
end
|
end
|
||||||
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
-- General Settings - Profiles ~13
|
-- General Settings - Profiles ~13
|
||||||
@@ -6110,131 +6236,7 @@ function window:CreateFrame11()
|
|||||||
local frame10 = window.options [10][1]
|
local frame10 = window.options [10][1]
|
||||||
local frame11 = window.options [11][1]
|
local frame11 = window.options [11][1]
|
||||||
|
|
||||||
local titulo_performance_captures = g:NewLabel (frame11, _, "$parentTituloPerformanceCaptures", "tituloPerformanceCaptures", Loc ["STRING_OPTIONS_PERFORMANCECAPTURES"], "GameFontNormal", 16)
|
|
||||||
local titulo_performance_captures_desc = g:NewLabel (frame11, _, "$parentTituloPersonaCaptures2", "tituloPersonaCaptures2Label", Loc ["STRING_OPTIONS_PERFORMANCECAPTURES_DESC"], "GameFontNormal", 9, "white")
|
|
||||||
titulo_performance_captures_desc.width = 320
|
|
||||||
|
|
||||||
--------------- Captures
|
|
||||||
g:NewImage (frame11, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "damageCaptureImage", "$parentCaptureDamage")
|
|
||||||
frame11.damageCaptureImage:SetTexCoord (0, 0.125, 0, 1)
|
|
||||||
|
|
||||||
g:NewImage (frame11, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "healCaptureImage", "$parentCaptureHeal")
|
|
||||||
frame11.healCaptureImage:SetTexCoord (0.125, 0.25, 0, 1)
|
|
||||||
|
|
||||||
g:NewImage (frame11, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "energyCaptureImage", "$parentCaptureEnergy")
|
|
||||||
frame11.energyCaptureImage:SetTexCoord (0.25, 0.375, 0, 1)
|
|
||||||
|
|
||||||
g:NewImage (frame11, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "miscCaptureImage", "$parentCaptureMisc")
|
|
||||||
frame11.miscCaptureImage:SetTexCoord (0.375, 0.5, 0, 1)
|
|
||||||
|
|
||||||
g:NewImage (frame11, [[Interface\AddOns\Details\images\atributos_captures]], 20, 20, nil, nil, "auraCaptureImage", "$parentCaptureAura")
|
|
||||||
frame11.auraCaptureImage:SetTexCoord (0.5, 0.625, 0, 1)
|
|
||||||
|
|
||||||
g:NewLabel (frame11, _, "$parentCaptureDamageLabel", "damageCaptureLabel", Loc ["STRING_OPTIONS_CDAMAGE"], "GameFontHighlightLeft")
|
|
||||||
frame11.damageCaptureLabel:SetPoint ("left", frame11.damageCaptureImage, "right", 2)
|
|
||||||
|
|
||||||
g:NewLabel (frame11, _, "$parentCaptureHealLabel", "healCaptureLabel", Loc ["STRING_OPTIONS_CHEAL"], "GameFontHighlightLeft")
|
|
||||||
frame11.healCaptureLabel:SetPoint ("left", frame11.healCaptureImage, "right", 2)
|
|
||||||
|
|
||||||
g:NewLabel (frame11, _, "$parentCaptureEnergyLabel", "energyCaptureLabel", Loc ["STRING_OPTIONS_CENERGY"], "GameFontHighlightLeft")
|
|
||||||
frame11.energyCaptureLabel:SetPoint ("left", frame11.energyCaptureImage, "right", 2)
|
|
||||||
|
|
||||||
g:NewLabel (frame11, _, "$parentCaptureMiscLabel", "miscCaptureLabel", Loc ["STRING_OPTIONS_CMISC"], "GameFontHighlightLeft")
|
|
||||||
frame11.miscCaptureLabel:SetPoint ("left", frame11.miscCaptureImage, "right", 2)
|
|
||||||
|
|
||||||
g:NewLabel (frame11, _, "$parentCaptureAuraLabel", "auraCaptureLabel", Loc ["STRING_OPTIONS_CAURAS"], "GameFontHighlightLeft")
|
|
||||||
frame11.auraCaptureLabel:SetPoint ("left", frame11.auraCaptureImage, "right", 2)
|
|
||||||
|
|
||||||
local switch_icon_color = function (icon, on_off)
|
|
||||||
icon:SetDesaturated (not on_off)
|
|
||||||
end
|
|
||||||
|
|
||||||
g:NewSwitch (frame11, _, "$parentCaptureDamageSlider", "damageCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["damage"])
|
|
||||||
frame11.damageCaptureSlider:SetPoint ("left", frame11.damageCaptureLabel, "right", 2)
|
|
||||||
frame11.damageCaptureSlider.OnSwitch = function (self, _, value)
|
|
||||||
_detalhes:CaptureSet (value, "damage", true)
|
|
||||||
switch_icon_color (frame11.damageCaptureImage, value)
|
|
||||||
end
|
|
||||||
switch_icon_color (frame11.damageCaptureImage, _detalhes.capture_real ["damage"])
|
|
||||||
|
|
||||||
window:CreateLineBackground2 (frame11, "damageCaptureSlider", "damageCaptureLabel", Loc ["STRING_OPTIONS_CDAMAGE_DESC"], frame11.damageCaptureImage)
|
|
||||||
|
|
||||||
g:NewSwitch (frame11, _, "$parentCaptureHealSlider", "healCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["heal"])
|
|
||||||
frame11.healCaptureSlider:SetPoint ("left", frame11.healCaptureLabel, "right", 2)
|
|
||||||
frame11.healCaptureSlider.OnSwitch = function (self, _, value)
|
|
||||||
_detalhes:CaptureSet (value, "heal", true)
|
|
||||||
switch_icon_color (frame11.healCaptureImage, value)
|
|
||||||
end
|
|
||||||
switch_icon_color (frame11.healCaptureImage, _detalhes.capture_real ["heal"])
|
|
||||||
|
|
||||||
window:CreateLineBackground2 (frame11, "healCaptureSlider", "healCaptureLabel", Loc ["STRING_OPTIONS_CHEAL_DESC"], frame11.healCaptureImage)
|
|
||||||
|
|
||||||
g:NewSwitch (frame11, _, "$parentCaptureEnergySlider", "energyCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["energy"])
|
|
||||||
frame11.energyCaptureSlider:SetPoint ("left", frame11.energyCaptureLabel, "right", 2)
|
|
||||||
|
|
||||||
frame11.energyCaptureSlider.OnSwitch = function (self, _, value)
|
|
||||||
_detalhes:CaptureSet (value, "energy", true)
|
|
||||||
switch_icon_color (frame11.energyCaptureImage, value)
|
|
||||||
end
|
|
||||||
switch_icon_color (frame11.energyCaptureImage, _detalhes.capture_real ["energy"])
|
|
||||||
|
|
||||||
window:CreateLineBackground2 (frame11, "energyCaptureSlider", "energyCaptureLabel", Loc ["STRING_OPTIONS_CENERGY_DESC"], frame11.energyCaptureImage)
|
|
||||||
|
|
||||||
g:NewSwitch (frame11, _, "$parentCaptureMiscSlider", "miscCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["miscdata"])
|
|
||||||
frame11.miscCaptureSlider:SetPoint ("left", frame11.miscCaptureLabel, "right", 2)
|
|
||||||
frame11.miscCaptureSlider.OnSwitch = function (self, _, value)
|
|
||||||
_detalhes:CaptureSet (value, "miscdata", true)
|
|
||||||
switch_icon_color (frame11.miscCaptureImage, value)
|
|
||||||
end
|
|
||||||
switch_icon_color (frame11.miscCaptureImage, _detalhes.capture_real ["miscdata"])
|
|
||||||
|
|
||||||
window:CreateLineBackground2 (frame11, "miscCaptureSlider", "miscCaptureLabel", Loc ["STRING_OPTIONS_CMISC_DESC"], frame11.miscCaptureImage)
|
|
||||||
|
|
||||||
g:NewSwitch (frame11, _, "$parentCaptureAuraSlider", "auraCaptureSlider", 60, 20, _, _, _detalhes.capture_real ["aura"])
|
|
||||||
frame11.auraCaptureSlider:SetPoint ("left", frame11.auraCaptureLabel, "right", 2)
|
|
||||||
frame11.auraCaptureSlider.OnSwitch = function (self, _, value)
|
|
||||||
_detalhes:CaptureSet (value, "aura", true)
|
|
||||||
switch_icon_color (frame11.auraCaptureImage, value)
|
|
||||||
end
|
|
||||||
switch_icon_color (frame11.auraCaptureImage, _detalhes.capture_real ["aura"])
|
|
||||||
|
|
||||||
window:CreateLineBackground2 (frame11, "auraCaptureSlider", "auraCaptureLabel", Loc ["STRING_OPTIONS_CAURAS_DESC"], frame11.auraCaptureImage)
|
|
||||||
|
|
||||||
--------------- Cloud Capture
|
|
||||||
|
|
||||||
g:NewLabel (frame11, _, "$parentCloudCaptureLabel", "cloudCaptureLabel", Loc ["STRING_OPTIONS_CLOUD"], "GameFontHighlightLeft")
|
|
||||||
|
|
||||||
g:NewSwitch (frame11, _, "$parentCloudAuraSlider", "cloudCaptureSlider", 60, 20, _, _, _detalhes.cloud_capture)
|
|
||||||
frame11.cloudCaptureSlider:SetPoint ("left", frame11.cloudCaptureLabel, "right", 2)
|
|
||||||
frame11.cloudCaptureSlider.OnSwitch = function (self, _, value)
|
|
||||||
_detalhes.cloud_capture = value
|
|
||||||
end
|
|
||||||
|
|
||||||
window:CreateLineBackground2 (frame11, "cloudCaptureSlider", "cloudCaptureLabel", Loc ["STRING_OPTIONS_CLOUD_DESC"] )
|
|
||||||
|
|
||||||
--> Anchors
|
|
||||||
|
|
||||||
--general anchor
|
|
||||||
g:NewLabel (frame11, _, "$parentDataCollectAnchor", "DataCollectAnchorLabel", Loc ["STRING_OPTIONS_DATACOLLECT_ANCHOR"], "GameFontNormal")
|
|
||||||
|
|
||||||
local x = window.left_start_at
|
|
||||||
|
|
||||||
titulo_performance_captures:SetPoint (x, -30)
|
|
||||||
titulo_performance_captures_desc:SetPoint (x, -50)
|
|
||||||
|
|
||||||
local left_side = {
|
|
||||||
{"DataCollectAnchorLabel", 1, true},
|
|
||||||
{"damageCaptureImage", 2},
|
|
||||||
{"healCaptureImage", 3},
|
|
||||||
{"energyCaptureImage", 4},
|
|
||||||
{"miscCaptureImage", 5},
|
|
||||||
{"auraCaptureImage", 6},
|
|
||||||
{"cloudCaptureLabel", 7, true},
|
|
||||||
}
|
|
||||||
|
|
||||||
window:arrange_menu (frame11, left_side, x, -90)
|
|
||||||
|
|
||||||
-- end
|
|
||||||
window.creating = nil
|
window.creating = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -6570,6 +6572,13 @@ function window:update_all (editing_instance)
|
|||||||
_G.DetailsOptionsWindow2OverallNewBossSlider.MyObject:SetValue (_detalhes.overall_clear_newboss)
|
_G.DetailsOptionsWindow2OverallNewBossSlider.MyObject:SetValue (_detalhes.overall_clear_newboss)
|
||||||
_G.DetailsOptionsWindow2OverallNewChallengeSlider.MyObject:SetValue (_detalhes.overall_clear_newchallenge)
|
_G.DetailsOptionsWindow2OverallNewChallengeSlider.MyObject:SetValue (_detalhes.overall_clear_newchallenge)
|
||||||
|
|
||||||
|
_G.DetailsOptionsWindow2CaptureDamageSlider.MyObject:SetValue (_detalhes.capture_real ["damage"])
|
||||||
|
_G.DetailsOptionsWindow2CaptureHealSlider.MyObject:SetValue (_detalhes.capture_real ["heal"])
|
||||||
|
_G.DetailsOptionsWindow2CaptureEnergySlider.MyObject:SetValue (_detalhes.capture_real ["energy"])
|
||||||
|
_G.DetailsOptionsWindow2CaptureMiscSlider.MyObject:SetValue (_detalhes.capture_real ["miscdata"])
|
||||||
|
_G.DetailsOptionsWindow2CaptureAuraSlider.MyObject:SetValue (_detalhes.capture_real ["aura"])
|
||||||
|
_G.DetailsOptionsWindow2CloudAuraSlider.MyObject:SetValue (_detalhes.cloud_capture)
|
||||||
|
|
||||||
--> window 3
|
--> window 3
|
||||||
|
|
||||||
local skin = editing_instance.skin
|
local skin = editing_instance.skin
|
||||||
@@ -6731,12 +6740,7 @@ function window:update_all (editing_instance)
|
|||||||
_G.DetailsOptionsWindow10SliderSegmentsSave.MyObject:SetValue (_detalhes.segments_amount_to_save)
|
_G.DetailsOptionsWindow10SliderSegmentsSave.MyObject:SetValue (_detalhes.segments_amount_to_save)
|
||||||
|
|
||||||
--> window 11
|
--> window 11
|
||||||
_G.DetailsOptionsWindow11CaptureDamageSlider.MyObject:SetValue (_detalhes.capture_real ["damage"])
|
|
||||||
_G.DetailsOptionsWindow11CaptureHealSlider.MyObject:SetValue (_detalhes.capture_real ["heal"])
|
|
||||||
_G.DetailsOptionsWindow11CaptureEnergySlider.MyObject:SetValue (_detalhes.capture_real ["energy"])
|
|
||||||
_G.DetailsOptionsWindow11CaptureMiscSlider.MyObject:SetValue (_detalhes.capture_real ["miscdata"])
|
|
||||||
_G.DetailsOptionsWindow11CaptureAuraSlider.MyObject:SetValue (_detalhes.capture_real ["aura"])
|
|
||||||
_G.DetailsOptionsWindow11CloudAuraSlider.MyObject:SetValue (_detalhes.cloud_capture)
|
|
||||||
|
|
||||||
--> window 13
|
--> window 13
|
||||||
_G.DetailsOptionsWindow13SelectProfileDropdown.MyObject:Select (_detalhes:GetCurrentProfileName())
|
_G.DetailsOptionsWindow13SelectProfileDropdown.MyObject:Select (_detalhes:GetCurrentProfileName())
|
||||||
|
|||||||
@@ -4425,6 +4425,7 @@ function _detalhes:ChangeSkin (skin_name)
|
|||||||
_detalhes.atributo_heal:UpdateSelectedToKFunction()
|
_detalhes.atributo_heal:UpdateSelectedToKFunction()
|
||||||
_detalhes.atributo_energy:UpdateSelectedToKFunction()
|
_detalhes.atributo_energy:UpdateSelectedToKFunction()
|
||||||
_detalhes.atributo_misc:UpdateSelectedToKFunction()
|
_detalhes.atributo_misc:UpdateSelectedToKFunction()
|
||||||
|
_detalhes.atributo_custom:UpdateSelectedToKFunction()
|
||||||
|
|
||||||
----------> call widgets handlers
|
----------> call widgets handlers
|
||||||
self:SetBarSettings (self.row_info.height)
|
self:SetBarSettings (self.row_info.height)
|
||||||
@@ -6037,11 +6038,17 @@ function gump:CriaCabecalho (baseframe, instancia)
|
|||||||
|
|
||||||
local CustomObject = _detalhes.custom [sub_atributo]
|
local CustomObject = _detalhes.custom [sub_atributo]
|
||||||
|
|
||||||
--> as addmenu dont support textcoords we need to add in parts, first adding text and menu, after we add the icon
|
if (not CustomObject) then
|
||||||
--> text and menu can be added in one call if doesnt need more details like color or right text
|
_this_instance:ResetAttribute()
|
||||||
CoolTip:AddMenu (1, OnClickNovoMenu, index, nil, nil, "#".. index .. " " .. _detalhes.atributos.lista [atributo] .. " - " .. CustomObject.name, _, true)
|
atributo = _this_instance.atributo
|
||||||
CoolTip:AddIcon (CustomObject.icon, 1, 1, 20, 20, 0, 1, 0, 1)
|
sub_atributo = _this_instance.sub_atributo
|
||||||
|
CoolTip:AddMenu (1, OnClickNovoMenu, index, nil, nil, "#".. index .. " " .. _detalhes.atributos.lista [atributo] .. " - " .. _detalhes.sub_atributos [atributo].lista [sub_atributo], _, true)
|
||||||
|
CoolTip:AddIcon (_detalhes.sub_atributos [atributo].icones[sub_atributo] [1], 1, 1, 20, 20, unpack (_detalhes.sub_atributos [atributo].icones[sub_atributo] [2]))
|
||||||
|
else
|
||||||
|
CoolTip:AddMenu (1, OnClickNovoMenu, index, nil, nil, "#".. index .. " " .. _detalhes.atributos.lista [atributo] .. " - " .. CustomObject:GetName(), _, true)
|
||||||
|
CoolTip:AddIcon (CustomObject.icon, 1, 1, 20, 20, 0, 1, 0, 1)
|
||||||
|
end
|
||||||
|
|
||||||
else
|
else
|
||||||
local modo = _this_instance.modo
|
local modo = _this_instance.modo
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
+35
-26
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+252
-394
@@ -1,5 +1,3 @@
|
|||||||
--no inicio da luta gravar tabela com os coolsdowns de cada jogador e ir anotando quando eles sao usados.
|
|
||||||
|
|
||||||
--File Revision: 1
|
--File Revision: 1
|
||||||
--Last Modification: 27/07/2013
|
--Last Modification: 27/07/2013
|
||||||
-- Change Log:
|
-- Change Log:
|
||||||
@@ -7,51 +5,10 @@
|
|||||||
|
|
||||||
function _G._detalhes:Start()
|
function _G._detalhes:Start()
|
||||||
|
|
||||||
--teste de box
|
local Loc = LibStub ("AceLocale-3.0"):GetLocale ( "Details" )
|
||||||
--[[
|
|
||||||
local f = CreateFrame ("frame", "TestBoxFrame", UIParent)
|
|
||||||
f:SetPoint ("center", UIParent, "center")
|
|
||||||
f:SetSize (256, 256)
|
|
||||||
f:SetMovable (true)
|
|
||||||
|
|
||||||
local t = f:CreateTexture (nil, "artwork")
|
|
||||||
t:SetSize (90, 90)
|
|
||||||
t:SetPoint ("topleft", f, "topleft")
|
|
||||||
t:SetTexture ("Interface\\Addons\\Details\\box")
|
|
||||||
t:SetTexCoord (0.29296875, 0.64453125, 0.265625-0.001953125, 0.6171875+0.001953125) -- 75 68 165 158 0.001953125 //
|
|
||||||
|
|
||||||
local left = f:CreateFontString (nil, "overlay", "GameFontNormal")
|
|
||||||
local right = f:CreateFontString (nil, "overlay", "GameFontNormal")
|
|
||||||
local top = f:CreateFontString (nil, "overlay", "GameFontNormal")
|
|
||||||
local bottom = f:CreateFontString (nil, "overlay", "GameFontNormal")
|
|
||||||
|
|
||||||
left:SetPoint ("right", t, "left", -20, 0)
|
|
||||||
right:SetPoint ("left", t, "right", 20, 0)
|
|
||||||
top:SetPoint ("bottom", t, "top", 0, 20)
|
|
||||||
bottom:SetPoint ("top", t, "bottom", 0, -20)
|
|
||||||
|
|
||||||
function f:UpdateLeftRight()
|
|
||||||
left:SetText ("left: " .. string.format ("%.3f", t:GetLeft()))
|
|
||||||
right:SetText ("right: " .. string.format ("%.3f", t:GetRight()))
|
|
||||||
top:SetText ("top: " .. string.format ("%.3f", t:GetTop()))
|
|
||||||
bottom:SetText ("bottom: " .. string.format ("%.3f", t:GetBottom()))
|
|
||||||
end
|
|
||||||
f:UpdateLeftRight()
|
|
||||||
|
|
||||||
f:SetScript ("OnMouseDown", function() f:StartMoving(); f:SetScript("OnUpdate", function() f:UpdateLeftRight() end) end)
|
|
||||||
f:SetScript ("OnMouseUp", function() f:StopMovingOrSizing(); f:SetScript("OnUpdate", nil); f:UpdateLeftRight() end)
|
|
||||||
|
|
||||||
function _detalhes:updatetestbox()
|
|
||||||
f:UpdateLeftRight()
|
|
||||||
end
|
|
||||||
_detalhes:ScheduleTimer("updatetestbox", 5)
|
|
||||||
|
|
||||||
--]]
|
|
||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
--> details defaults
|
--> details defaults
|
||||||
|
|
||||||
--> parse all config
|
|
||||||
--_detalhes:CountDataOnLoad()
|
|
||||||
|
|
||||||
--> single click row function replace
|
--> single click row function replace
|
||||||
--damage, dps, damage taken, friendly fire
|
--damage, dps, damage taken, friendly fire
|
||||||
@@ -64,7 +21,7 @@ function _G._detalhes:Start()
|
|||||||
self.row_singleclick_overwrite [4] = {true, true, true, true, self.atributo_misc.ReportSingleDeadLine, self.atributo_misc.ReportSingleCooldownLine, self.atributo_misc.ReportSingleBuffUptimeLine, self.atributo_misc.ReportSingleDebuffUptimeLine}
|
self.row_singleclick_overwrite [4] = {true, true, true, true, self.atributo_misc.ReportSingleDeadLine, self.atributo_misc.ReportSingleCooldownLine, self.atributo_misc.ReportSingleBuffUptimeLine, self.atributo_misc.ReportSingleDebuffUptimeLine}
|
||||||
|
|
||||||
self.click_to_report_color = {1, 0.8, 0, 1}
|
self.click_to_report_color = {1, 0.8, 0, 1}
|
||||||
--self.click_to_report_color = {0, 1, 0, 1}
|
|
||||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
--> initialize
|
--> initialize
|
||||||
|
|
||||||
@@ -74,60 +31,38 @@ function _G._detalhes:Start()
|
|||||||
if (self.switch.InitSwitch) then
|
if (self.switch.InitSwitch) then
|
||||||
self.switch:InitSwitch()
|
self.switch:InitSwitch()
|
||||||
end
|
end
|
||||||
|
|
||||||
--> custom window
|
--> custom window
|
||||||
self.custom = self.custom or {}
|
self.custom = self.custom or {}
|
||||||
self:InitCustom()
|
--self:InitCustom()
|
||||||
|
|
||||||
--> actor info
|
--> actor info
|
||||||
self.janela_info = self.gump:CriaJanelaInfo()
|
self.janela_info = self.gump:CriaJanelaInfo()
|
||||||
self.gump:Fade (self.janela_info, 1)
|
self.gump:Fade (self.janela_info, 1)
|
||||||
|
|
||||||
--> copy and paste window
|
--> copy and paste window
|
||||||
self:CreateCopyPasteWindow()
|
self:CreateCopyPasteWindow()
|
||||||
self.CreateCopyPasteWindow = nil
|
self.CreateCopyPasteWindow = nil
|
||||||
--> yesno frame
|
|
||||||
self.yesNo = self.gump:NewPanel (UIParent, _, "DetailsYesNoWindow", _, 500, 80)
|
|
||||||
self.yesNo:SetPoint ("center", UIParent, "center")
|
|
||||||
self.gump:NewLabel (self.yesNo, _, "$parentAsk", "ask", "")
|
|
||||||
self.yesNo ["ask"]:SetPoint ("center", self.yesNo, "center", 0, 25)
|
|
||||||
self.yesNo ["ask"]:SetWidth (480)
|
|
||||||
self.yesNo ["ask"]:SetJustifyH ("center")
|
|
||||||
self.yesNo ["ask"]:SetHeight (22)
|
|
||||||
local Loc = LibStub ("AceLocale-3.0"):GetLocale ("Details")
|
|
||||||
self.gump:NewButton (self.yesNo, _, "$parentNo", "no", 100, 30, function() self.yesNo:Hide() end, nil, nil, nil, Loc ["STRING_NO"])
|
|
||||||
self.gump:NewButton (self.yesNo, _, "$parentYes", "yes", 100, 30, nil, nil, nil, nil, Loc ["STRING_YES"])
|
|
||||||
self.yesNo ["no"]:SetPoint (10, -45)
|
|
||||||
self.yesNo ["yes"]:SetPoint (390, -45)
|
|
||||||
self.yesNo ["no"]:InstallCustomTexture()
|
|
||||||
self.yesNo ["yes"]:InstallCustomTexture()
|
|
||||||
self.yesNo ["yes"]:SetHook ("OnMouseUp", function() self.yesNo:Hide() end)
|
|
||||||
function _detalhes:Ask (msg, func, ...)
|
|
||||||
self.yesNo ["ask"].text = msg
|
|
||||||
local p1, p2 = ...
|
|
||||||
self.yesNo ["yes"]:SetClickFunction (func, p1, p2)
|
|
||||||
self.yesNo:Show()
|
|
||||||
end
|
|
||||||
self.yesNo:Hide()
|
|
||||||
|
|
||||||
--> start instances
|
--> start instances
|
||||||
|
|
||||||
--_detalhes.custom = {}
|
|
||||||
--_detalhes.tabela_instancias = {}
|
|
||||||
|
|
||||||
if (self:QuantasInstancias() == 0) then
|
if (self:QuantasInstancias() == 0) then
|
||||||
self:CriarInstancia()
|
self:CriarInstancia()
|
||||||
else
|
|
||||||
--self:ReativarInstancias()
|
|
||||||
end
|
end
|
||||||
self:GetLowerInstanceNumber()
|
self:GetLowerInstanceNumber()
|
||||||
self:CheckConsolidates()
|
self:CheckConsolidates()
|
||||||
|
|
||||||
--> start time machine
|
--> start time machine
|
||||||
|
|
||||||
self.timeMachine:Ligar()
|
self.timeMachine:Ligar()
|
||||||
|
|
||||||
--> update abbreviation shorcut
|
--> update abbreviation shorcut
|
||||||
|
|
||||||
self.atributo_damage:UpdateSelectedToKFunction()
|
self.atributo_damage:UpdateSelectedToKFunction()
|
||||||
self.atributo_heal:UpdateSelectedToKFunction()
|
self.atributo_heal:UpdateSelectedToKFunction()
|
||||||
self.atributo_energy:UpdateSelectedToKFunction()
|
self.atributo_energy:UpdateSelectedToKFunction()
|
||||||
self.atributo_misc:UpdateSelectedToKFunction()
|
self.atributo_misc:UpdateSelectedToKFunction()
|
||||||
|
self.atributo_custom:UpdateSelectedToKFunction()
|
||||||
|
|
||||||
--> start instances updater
|
--> start instances updater
|
||||||
|
|
||||||
@@ -187,9 +122,9 @@ function _G._detalhes:Start()
|
|||||||
end
|
end
|
||||||
self:ScheduleTimer ("RefreshAfterStartup", 5)
|
self:ScheduleTimer ("RefreshAfterStartup", 5)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
--> start garbage collector
|
--> start garbage collector
|
||||||
|
|
||||||
self.ultima_coleta = 0
|
self.ultima_coleta = 0
|
||||||
self.intervalo_coleta = 720
|
self.intervalo_coleta = 720
|
||||||
--self.intervalo_coleta = 10
|
--self.intervalo_coleta = 10
|
||||||
@@ -204,8 +139,7 @@ function _G._detalhes:Start()
|
|||||||
--> load parser capture options
|
--> load parser capture options
|
||||||
self:CaptureRefresh()
|
self:CaptureRefresh()
|
||||||
--> register parser events
|
--> register parser events
|
||||||
--self.listener:RegisterEvent ("COMBAT_LOG_EVENT_UNFILTERED")
|
|
||||||
self.parser_frame:RegisterEvent ("COMBAT_LOG_EVENT_UNFILTERED")
|
|
||||||
self.listener:RegisterEvent ("PLAYER_REGEN_DISABLED")
|
self.listener:RegisterEvent ("PLAYER_REGEN_DISABLED")
|
||||||
self.listener:RegisterEvent ("PLAYER_REGEN_ENABLED")
|
self.listener:RegisterEvent ("PLAYER_REGEN_ENABLED")
|
||||||
self.listener:RegisterEvent ("SPELL_SUMMON")
|
self.listener:RegisterEvent ("SPELL_SUMMON")
|
||||||
@@ -224,354 +158,277 @@ function _G._detalhes:Start()
|
|||||||
self.listener:RegisterEvent ("ENCOUNTER_END")
|
self.listener:RegisterEvent ("ENCOUNTER_END")
|
||||||
|
|
||||||
self.listener:RegisterEvent ("START_TIMER")
|
self.listener:RegisterEvent ("START_TIMER")
|
||||||
--self.listener:RegisterEvent ("ARENA_PREP_OPPONENT_SPECIALIZATIONS")
|
self.listener:RegisterEvent ("UNIT_NAME_UPDATE")
|
||||||
--self.listener:RegisterEvent ("ARENA_OPPONENT_UPDATE")
|
|
||||||
|
|
||||||
self.listener:RegisterEvent ("PET_BATTLE_OPENING_START")
|
self.listener:RegisterEvent ("PET_BATTLE_OPENING_START")
|
||||||
self.listener:RegisterEvent ("PET_BATTLE_CLOSE")
|
self.listener:RegisterEvent ("PET_BATTLE_CLOSE")
|
||||||
|
|
||||||
--self.listener:RegisterAllEvents()
|
self.parser_frame:RegisterEvent ("COMBAT_LOG_EVENT_UNFILTERED")
|
||||||
|
|
||||||
-- self.listener:RegisterEvent ("SPELL_CAST_START")
|
|
||||||
-- self.listener:RegisterEvent ("UNIT_SPELLCAST_STOP")
|
|
||||||
-- self.listener:RegisterEvent ("UNIT_SPELLCAST_SUCCEEDED")
|
|
||||||
-- self.listener:RegisterEvent ("UNIT_SPELLCAST_FAILED")
|
|
||||||
-- self.listener:RegisterEvent ("UNIT_SPELLCAST_FAILED_QUIET")
|
|
||||||
-- self.listener:RegisterEvent ("UNIT_SPELLCAST_INTERRUPTED")
|
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
function _detalhes:CooltipPreset (preset)
|
|
||||||
|
|
||||||
local GameCooltip = GameCooltip
|
|
||||||
|
|
||||||
GameCooltip:Reset()
|
|
||||||
|
|
||||||
if (preset == 1) then
|
|
||||||
GameCooltip:SetOption ("TextFont", "Friz Quadrata TT")
|
|
||||||
GameCooltip:SetOption ("TextColor", "orange")
|
|
||||||
GameCooltip:SetOption ("TextSize", 12)
|
|
||||||
GameCooltip:SetOption ("ButtonsYMod", -4)
|
|
||||||
GameCooltip:SetOption ("YSpacingMod", -4)
|
|
||||||
GameCooltip:SetOption ("IgnoreButtonAutoHeight", true)
|
|
||||||
GameCooltip:SetColor (1, 0.5, 0.5, 0.5, 0.5)
|
|
||||||
|
|
||||||
elseif (preset == 2) then
|
|
||||||
GameCooltip:SetOption ("TextFont", "Friz Quadrata TT")
|
|
||||||
GameCooltip:SetOption ("TextColor", "orange")
|
|
||||||
GameCooltip:SetOption ("TextSize", 12)
|
|
||||||
GameCooltip:SetOption ("FixedWidth", 220)
|
|
||||||
GameCooltip:SetOption ("ButtonsYMod", -4)
|
|
||||||
GameCooltip:SetOption ("YSpacingMod", -4)
|
|
||||||
GameCooltip:SetOption ("IgnoreButtonAutoHeight", true)
|
|
||||||
GameCooltip:SetColor (1, 0.5, 0.5, 0.5, 0.5)
|
|
||||||
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
--> done
|
|
||||||
self.initializing = nil
|
|
||||||
|
|
||||||
--> group
|
--> group
|
||||||
self.details_users = {}
|
self.details_users = {}
|
||||||
self.in_group = IsInGroup() or IsInRaid()
|
self.in_group = IsInGroup() or IsInRaid()
|
||||||
|
|
||||||
|
--> done
|
||||||
|
self.initializing = nil
|
||||||
|
|
||||||
|
--> scan pets
|
||||||
|
_detalhes:SchedulePetUpdate (1)
|
||||||
|
|
||||||
--> send messages gathered on initialization
|
--> send messages gathered on initialization
|
||||||
self:ScheduleTimer ("ShowDelayMsg", 10)
|
self:ScheduleTimer ("ShowDelayMsg", 10)
|
||||||
|
|
||||||
--> send instance open signal
|
--> send instance open signal
|
||||||
for index, instancia in ipairs (self.tabela_instancias) do
|
for index, instancia in ipairs (self.tabela_instancias) do
|
||||||
if (instancia.ativa) then
|
if (instancia.ativa) then
|
||||||
self:SendEvent ("DETAILS_INSTANCE_OPEN", nil, instancia)
|
self:SendEvent ("DETAILS_INSTANCE_OPEN", nil, instancia)
|
||||||
--instancia:SetBarGrowDirection()
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
--> all done, send started signal and we are ready
|
--> send details startup done signal
|
||||||
function self:AnnounceStartup()
|
function self:AnnounceStartup()
|
||||||
self:SendEvent ("DETAILS_STARTED", "SEND_TO_ALL")
|
self:SendEvent ("DETAILS_STARTED", "SEND_TO_ALL")
|
||||||
end
|
end
|
||||||
self:ScheduleTimer ("AnnounceStartup", 5)
|
self:ScheduleTimer ("AnnounceStartup", 5)
|
||||||
|
|
||||||
--> announce alpha version
|
--> announce alpha version
|
||||||
function self:AnnounceVersion()
|
function self:AnnounceVersion()
|
||||||
for index, instancia in ipairs (self.tabela_instancias) do
|
for index, instancia in ipairs (self.tabela_instancias) do
|
||||||
if (instancia.ativa) then
|
if (instancia.ativa) then
|
||||||
self.gump:Fade (instancia._version, "in", 0.1)
|
self.gump:Fade (instancia._version, "in", 0.1)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
--> restore cooltip anchor position
|
||||||
|
DetailsTooltipAnchor:Restore()
|
||||||
|
|
||||||
--> cooltip anchor
|
--> check is this is the first run
|
||||||
DetailsTooltipAnchor:Restore()
|
if (self.is_first_run) then
|
||||||
|
_detalhes:OpenWelcomeWindow()
|
||||||
|
|
||||||
|
if (#self.custom == 0) then
|
||||||
|
_detalhes:AddDefaultCustomDisplays()
|
||||||
|
end
|
||||||
|
|
||||||
|
_detalhes:FillUserCustomSpells()
|
||||||
|
end
|
||||||
|
|
||||||
|
--> start tutorial if this is first run
|
||||||
|
if (self.tutorial.logons < 2 and self.is_first_run) then
|
||||||
|
self:StartTutorial()
|
||||||
|
end
|
||||||
|
|
||||||
|
--> send feedback panel if the user got 100 or more logons with details
|
||||||
|
if (self.tutorial.logons > 100) then -- and self.tutorial.logons < 104
|
||||||
|
|
||||||
--[[
|
if (not self.tutorial.feedback_window1) then
|
||||||
if (self.tutorial.version_announce < 4) then
|
self.tutorial.feedback_window1 = true
|
||||||
self:ScheduleTimer ("AnnounceVersion", 20)
|
|
||||||
self.tutorial.version_announce = self.tutorial.version_announce + 1
|
local feedback_frame = CreateFrame ("FRAME", "DetailsFeedbackWindow", UIParent, "ButtonFrameTemplate")
|
||||||
else
|
tinsert (UISpecialFrames, "DetailsFeedbackWindow")
|
||||||
|
feedback_frame:SetPoint ("center", UIParent, "center")
|
||||||
for index, instancia in ipairs (self.tabela_instancias) do
|
feedback_frame:SetSize (512, 200)
|
||||||
if (instancia.ativa) then
|
feedback_frame.portrait:SetTexture ([[Interface\CHARACTERFRAME\TEMPORARYPORTRAIT-FEMALE-GNOME]])
|
||||||
self.gump:Fade (instancia._version, 0)
|
|
||||||
instancia._version:SetText ("Details! Alpha " .. _detalhes.userversion .. " (core: " .. self.realversion .. ")")
|
feedback_frame.TitleText:SetText ("Details! Need Your Help!")
|
||||||
instancia._version:SetPoint ("bottomleft", instancia.baseframe, "bottomleft", 0, 1)
|
|
||||||
self.gump:Fade (instancia._version, "in", 10)
|
feedback_frame.uppertext = feedback_frame:CreateFontString (nil, "artwork", "GameFontNormal")
|
||||||
|
feedback_frame.uppertext:SetText ("Tell us about your experience using Details!, what you liked most, where we could improve, what things you want to see in the future?")
|
||||||
|
feedback_frame.uppertext:SetPoint ("topleft", feedback_frame, "topleft", 60, -32)
|
||||||
|
local font, _, flags = feedback_frame.uppertext:GetFont()
|
||||||
|
feedback_frame.uppertext:SetFont (font, 10, flags)
|
||||||
|
feedback_frame.uppertext:SetTextColor (1, 1, 1, .8)
|
||||||
|
feedback_frame.uppertext:SetWidth (440)
|
||||||
|
|
||||||
if (instancia.auto_switch_to_old) then
|
|
||||||
instancia:SwitchBack()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
--]]
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (self.is_first_run) then
|
|
||||||
|
|
||||||
_detalhes:OpenWelcomeWindow()
|
|
||||||
|
|
||||||
if (#self.custom == 0) then
|
|
||||||
local Healthstone = {
|
|
||||||
["attribute"] = 2,
|
|
||||||
["spell"] = "6262",
|
|
||||||
["name"] = "Healthstone",
|
|
||||||
["sattribute"] = 1,
|
|
||||||
["target"] = "",
|
|
||||||
["source"] = "[raid]",
|
|
||||||
["icon"] = "Interface\\Icons\\warlock_ healthstone",
|
|
||||||
}
|
|
||||||
self.custom [#self.custom+1] = Healthstone
|
|
||||||
|
|
||||||
local HealingPotion = {
|
local editbox = _detalhes.gump:NewTextEntry (feedback_frame, nil, "$parentTextEntry", "text", 387, 14)
|
||||||
["attribute"] = 2,
|
editbox:SetPoint (20, -106)
|
||||||
["spell"] = "105708",
|
editbox:SetAutoFocus (false)
|
||||||
["name"] = "Healing Potion",
|
editbox:SetHook ("OnEditFocusGained", function()
|
||||||
["sattribute"] = 1,
|
editbox.text = "http://www.mmo-champion.com/threads/1480721-New-damage-meter-%28Details!%29-need-help-with-tests-and-feedbacks"
|
||||||
["target"] = "",
|
editbox:HighlightText()
|
||||||
["source"] = "[raid]",
|
end)
|
||||||
["icon"] = "Interface\\Icons\\trade_alchemy_potiond3",
|
editbox:SetHook ("OnEditFocusLost", function()
|
||||||
}
|
editbox.text = "http://www.mmo-champion.com/threads/1480721-New-damage-meter-%28Details!%29-need-help-with-tests-and-feedbacks"
|
||||||
self.custom [#self.custom+1] = HealingPotion
|
editbox:HighlightText()
|
||||||
end
|
end)
|
||||||
|
editbox:SetHook ("OnChar", function()
|
||||||
_detalhes:FillUserCustomSpells()
|
editbox.text = "http://www.mmo-champion.com/threads/1480721-New-damage-meter-%28Details!%29-need-help-with-tests-and-feedbacks"
|
||||||
|
editbox:HighlightText()
|
||||||
end
|
end)
|
||||||
|
|
||||||
-- _detalhes:OpenWelcomeWindow()
|
|
||||||
|
|
||||||
--desligado por precaução
|
|
||||||
if (self.tutorial.logons < 2 and self.is_first_run) then
|
|
||||||
self:StartTutorial()
|
|
||||||
end
|
|
||||||
|
|
||||||
--> feedback trhead
|
|
||||||
if (self.tutorial.logons > 100) then -- and self.tutorial.logons < 104
|
|
||||||
|
|
||||||
--desligado por preocaução
|
|
||||||
|
|
||||||
if (not self.tutorial.feedback_window1) then
|
|
||||||
self.tutorial.feedback_window1 = true
|
|
||||||
|
|
||||||
local feedback_frame = CreateFrame ("FRAME", "DetailsFeedbackWindow", UIParent, "ButtonFrameTemplate")
|
|
||||||
tinsert (UISpecialFrames, "DetailsFeedbackWindow")
|
|
||||||
feedback_frame:SetPoint ("center", UIParent, "center")
|
|
||||||
feedback_frame:SetSize (512, 200)
|
|
||||||
feedback_frame.portrait:SetTexture ([[Interface\CHARACTERFRAME\TEMPORARYPORTRAIT-FEMALE-GNOME]])
|
|
||||||
|
|
||||||
feedback_frame.TitleText:SetText ("Details! Need Your Help!")
|
|
||||||
|
|
||||||
feedback_frame.uppertext = feedback_frame:CreateFontString (nil, "artwork", "GameFontNormal")
|
|
||||||
feedback_frame.uppertext:SetText ("Tell us about your experience using Details!, what you liked most, where we could improve, what things you want to see in the future?")
|
|
||||||
feedback_frame.uppertext:SetPoint ("topleft", feedback_frame, "topleft", 60, -32)
|
|
||||||
local font, _, flags = feedback_frame.uppertext:GetFont()
|
|
||||||
feedback_frame.uppertext:SetFont (font, 10, flags)
|
|
||||||
feedback_frame.uppertext:SetTextColor (1, 1, 1, .8)
|
|
||||||
feedback_frame.uppertext:SetWidth (440)
|
|
||||||
|
|
||||||
|
|
||||||
local editbox = _detalhes.gump:NewTextEntry (feedback_frame, nil, "$parentTextEntry", "text", 387, 14)
|
|
||||||
editbox:SetPoint (20, -106)
|
|
||||||
editbox:SetAutoFocus (false)
|
|
||||||
editbox:SetHook ("OnEditFocusGained", function()
|
|
||||||
editbox.text = "http://www.mmo-champion.com/threads/1480721-New-damage-meter-%28Details!%29-need-help-with-tests-and-feedbacks"
|
|
||||||
editbox:HighlightText()
|
|
||||||
end)
|
|
||||||
editbox:SetHook ("OnEditFocusLost", function()
|
|
||||||
editbox.text = "http://www.mmo-champion.com/threads/1480721-New-damage-meter-%28Details!%29-need-help-with-tests-and-feedbacks"
|
|
||||||
editbox:HighlightText()
|
|
||||||
end)
|
|
||||||
editbox:SetHook ("OnChar", function()
|
|
||||||
editbox.text = "http://www.mmo-champion.com/threads/1480721-New-damage-meter-%28Details!%29-need-help-with-tests-and-feedbacks"
|
editbox.text = "http://www.mmo-champion.com/threads/1480721-New-damage-meter-%28Details!%29-need-help-with-tests-and-feedbacks"
|
||||||
editbox:HighlightText()
|
|
||||||
end)
|
|
||||||
editbox.text = "http://www.mmo-champion.com/threads/1480721-New-damage-meter-%28Details!%29-need-help-with-tests-and-feedbacks"
|
feedback_frame.midtext = feedback_frame:CreateFontString (nil, "artwork", "GameFontNormal")
|
||||||
|
feedback_frame.midtext:SetText ("visit the link above and let's make Details! stronger!")
|
||||||
|
feedback_frame.midtext:SetPoint ("center", editbox.widget, "center")
|
||||||
feedback_frame.midtext = feedback_frame:CreateFontString (nil, "artwork", "GameFontNormal")
|
feedback_frame.midtext:SetPoint ("top", editbox.widget, "bottom", 0, -2)
|
||||||
feedback_frame.midtext:SetText ("visit the link above and let's make Details! stronger!")
|
feedback_frame.midtext:SetJustifyH ("center")
|
||||||
feedback_frame.midtext:SetPoint ("center", editbox.widget, "center")
|
local font, _, flags = feedback_frame.midtext:GetFont()
|
||||||
feedback_frame.midtext:SetPoint ("top", editbox.widget, "bottom", 0, -2)
|
feedback_frame.midtext:SetFont (font, 10, flags)
|
||||||
feedback_frame.midtext:SetJustifyH ("center")
|
--feedback_frame.midtext:SetTextColor (1, 1, 1, 1)
|
||||||
local font, _, flags = feedback_frame.midtext:GetFont()
|
feedback_frame.midtext:SetWidth (440)
|
||||||
feedback_frame.midtext:SetFont (font, 10, flags)
|
|
||||||
--feedback_frame.midtext:SetTextColor (1, 1, 1, 1)
|
|
||||||
feedback_frame.midtext:SetWidth (440)
|
feedback_frame.gnoma = feedback_frame:CreateTexture (nil, "artwork")
|
||||||
|
feedback_frame.gnoma:SetPoint ("topright", feedback_frame, "topright", -1, -59)
|
||||||
|
feedback_frame.gnoma:SetTexture ("Interface\\AddOns\\Details\\images\\icons2")
|
||||||
feedback_frame.gnoma = feedback_frame:CreateTexture (nil, "artwork")
|
feedback_frame.gnoma:SetSize (105*1.05, 107*1.05)
|
||||||
feedback_frame.gnoma:SetPoint ("topright", feedback_frame, "topright", -1, -59)
|
feedback_frame.gnoma:SetTexCoord (0.2021484375, 0, 0.7919921875, 1)
|
||||||
feedback_frame.gnoma:SetTexture ("Interface\\AddOns\\Details\\images\\icons2")
|
|
||||||
feedback_frame.gnoma:SetSize (105*1.05, 107*1.05)
|
|
||||||
feedback_frame.gnoma:SetTexCoord (0.2021484375, 0, 0.7919921875, 1)
|
|
||||||
|
|
||||||
feedback_frame.close = CreateFrame ("Button", "DetailsFeedbackWindowCloseButton", feedback_frame, "OptionsButtonTemplate")
|
feedback_frame.close = CreateFrame ("Button", "DetailsFeedbackWindowCloseButton", feedback_frame, "OptionsButtonTemplate")
|
||||||
feedback_frame.close:SetPoint ("bottomleft", feedback_frame, "bottomleft", 8, 4)
|
feedback_frame.close:SetPoint ("bottomleft", feedback_frame, "bottomleft", 8, 4)
|
||||||
feedback_frame.close:SetText ("Close")
|
feedback_frame.close:SetText ("Close")
|
||||||
feedback_frame.close:SetScript ("OnClick", function (self)
|
feedback_frame.close:SetScript ("OnClick", function (self)
|
||||||
editbox:ClearFocus()
|
editbox:ClearFocus()
|
||||||
feedback_frame:Hide()
|
feedback_frame:Hide()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
feedback_frame.postpone = CreateFrame ("Button", "DetailsFeedbackWindowPostPoneButton", feedback_frame, "OptionsButtonTemplate")
|
||||||
|
feedback_frame.postpone:SetPoint ("bottomright", feedback_frame, "bottomright", -10, 4)
|
||||||
|
feedback_frame.postpone:SetText ("Remind-me Later")
|
||||||
|
feedback_frame.postpone:SetScript ("OnClick", function (self)
|
||||||
|
editbox:ClearFocus()
|
||||||
|
feedback_frame:Hide()
|
||||||
|
_detalhes.tutorial.feedback_window1 = false
|
||||||
|
end)
|
||||||
|
feedback_frame.postpone:SetWidth (130)
|
||||||
|
|
||||||
|
feedback_frame:SetScript ("OnHide", function()
|
||||||
|
editbox:ClearFocus()
|
||||||
|
end)
|
||||||
|
|
||||||
|
--0.0009765625 512
|
||||||
|
function _detalhes:FeedbackSetFocus()
|
||||||
|
DetailsFeedbackWindow:Show()
|
||||||
|
DetailsFeedbackWindowTextEntry.MyObject:SetFocus()
|
||||||
|
DetailsFeedbackWindowTextEntry.MyObject:HighlightText()
|
||||||
|
end
|
||||||
|
_detalhes:ScheduleTimer ("FeedbackSetFocus", 5)
|
||||||
|
|
||||||
feedback_frame.postpone = CreateFrame ("Button", "DetailsFeedbackWindowPostPoneButton", feedback_frame, "OptionsButtonTemplate")
|
|
||||||
feedback_frame.postpone:SetPoint ("bottomright", feedback_frame, "bottomright", -10, 4)
|
|
||||||
feedback_frame.postpone:SetText ("Remind-me Later")
|
|
||||||
feedback_frame.postpone:SetScript ("OnClick", function (self)
|
|
||||||
editbox:ClearFocus()
|
|
||||||
feedback_frame:Hide()
|
|
||||||
_detalhes.tutorial.feedback_window1 = false
|
|
||||||
end)
|
|
||||||
feedback_frame.postpone:SetWidth (130)
|
|
||||||
|
|
||||||
feedback_frame:SetScript ("OnHide", function()
|
|
||||||
editbox:ClearFocus()
|
|
||||||
end)
|
|
||||||
|
|
||||||
--0.0009765625 512
|
|
||||||
function _detalhes:FeedbackSetFocus()
|
|
||||||
DetailsFeedbackWindow:Show()
|
|
||||||
DetailsFeedbackWindowTextEntry.MyObject:SetFocus()
|
|
||||||
DetailsFeedbackWindowTextEntry.MyObject:HighlightText()
|
|
||||||
end
|
end
|
||||||
_detalhes:ScheduleTimer ("FeedbackSetFocus", 5)
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--> check is this is the first run of this version
|
||||||
|
if (self.is_version_first_run) then
|
||||||
|
|
||||||
end
|
local enable_reset_warning = true
|
||||||
|
|
||||||
if (self.is_version_first_run) then
|
local lower_instance = _detalhes:GetLowerInstanceNumber()
|
||||||
|
|
||||||
local enable_reset_warning = true
|
|
||||||
|
|
||||||
local lower_instance = _detalhes:GetLowerInstanceNumber()
|
|
||||||
if (lower_instance) then
|
|
||||||
lower_instance = _detalhes:GetInstance (lower_instance)
|
|
||||||
if (lower_instance) then
|
if (lower_instance) then
|
||||||
lower_instance:InstanceAlert (Loc ["STRING_VERSION_UPDATE"], {[[Interface\GossipFrame\AvailableQuestIcon]], 16, 16, false}, 60, {_detalhes.OpenNewsWindow})
|
lower_instance = _detalhes:GetInstance (lower_instance)
|
||||||
|
if (lower_instance) then
|
||||||
|
lower_instance:InstanceAlert (Loc ["STRING_VERSION_UPDATE"], {[[Interface\GossipFrame\AvailableQuestIcon]], 16, 16, false}, 60, {_detalhes.OpenNewsWindow})
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
_detalhes:FillUserCustomSpells()
|
|
||||||
|
|
||||||
if (_detalhes_database.last_realversion and _detalhes_database.last_realversion < 18 and enable_reset_warning) then
|
|
||||||
|
|
||||||
--print ("Last Version:", _detalhes_database.last_version, "Last Interval Version:", _detalhes_database.last_realversion)
|
_detalhes:FillUserCustomSpells()
|
||||||
|
|
||||||
|
if (_detalhes_database.last_realversion and _detalhes_database.last_realversion < 20 and enable_reset_warning) then
|
||||||
|
table.wipe (self.custom)
|
||||||
|
_detalhes:AddDefaultCustomDisplays()
|
||||||
|
end
|
||||||
|
|
||||||
|
if (_detalhes_database.last_realversion and _detalhes_database.last_realversion < 18 and enable_reset_warning) then
|
||||||
|
|
||||||
|
--print ("Last Version:", _detalhes_database.last_version, "Last Interval Version:", _detalhes_database.last_realversion)
|
||||||
|
|
||||||
local resetwarning_frame = CreateFrame ("FRAME", "DetailsResetConfigWarningDialog", UIParent, "ButtonFrameTemplate")
|
local resetwarning_frame = CreateFrame ("FRAME", "DetailsResetConfigWarningDialog", UIParent, "ButtonFrameTemplate")
|
||||||
resetwarning_frame:SetFrameStrata ("LOW")
|
resetwarning_frame:SetFrameStrata ("LOW")
|
||||||
tinsert (UISpecialFrames, "DetailsResetConfigWarningDialog")
|
tinsert (UISpecialFrames, "DetailsResetConfigWarningDialog")
|
||||||
resetwarning_frame:SetPoint ("center", UIParent, "center")
|
resetwarning_frame:SetPoint ("center", UIParent, "center")
|
||||||
resetwarning_frame:SetSize (512, 200)
|
resetwarning_frame:SetSize (512, 200)
|
||||||
resetwarning_frame.portrait:SetTexture ([[Interface\CHARACTERFRAME\TEMPORARYPORTRAIT-FEMALE-GNOME]])
|
resetwarning_frame.portrait:SetTexture ([[Interface\CHARACTERFRAME\TEMPORARYPORTRAIT-FEMALE-GNOME]])
|
||||||
resetwarning_frame:SetScript ("OnHide", function()
|
resetwarning_frame:SetScript ("OnHide", function()
|
||||||
DetailsBubble:HideBubble()
|
DetailsBubble:HideBubble()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
resetwarning_frame.TitleText:SetText ("Noooooooooooo!!!")
|
resetwarning_frame.TitleText:SetText ("Noooooooooooo!!!")
|
||||||
|
|
||||||
resetwarning_frame.midtext = resetwarning_frame:CreateFontString (nil, "artwork", "GameFontNormal")
|
resetwarning_frame.midtext = resetwarning_frame:CreateFontString (nil, "artwork", "GameFontNormal")
|
||||||
resetwarning_frame.midtext:SetText ("A pack of murlocs has attacked Details! tech center, our gnomes engineers are working on fixing the damage.\n\n If something is messed in your Details!, especially the close, instance and reset buttons, you can either 'Reset Skin' or access the options panel.")
|
resetwarning_frame.midtext:SetText ("A pack of murlocs has attacked Details! tech center, our gnomes engineers are working on fixing the damage.\n\n If something is messed in your Details!, especially the close, instance and reset buttons, you can either 'Reset Skin' or access the options panel.")
|
||||||
resetwarning_frame.midtext:SetPoint ("topleft", resetwarning_frame, "topleft", 10, -90)
|
resetwarning_frame.midtext:SetPoint ("topleft", resetwarning_frame, "topleft", 10, -90)
|
||||||
resetwarning_frame.midtext:SetJustifyH ("center")
|
resetwarning_frame.midtext:SetJustifyH ("center")
|
||||||
resetwarning_frame.midtext:SetWidth (370)
|
resetwarning_frame.midtext:SetWidth (370)
|
||||||
|
|
||||||
|
resetwarning_frame.gnoma = resetwarning_frame:CreateTexture (nil, "artwork")
|
||||||
|
resetwarning_frame.gnoma:SetPoint ("topright", resetwarning_frame, "topright", -3, -80)
|
||||||
|
resetwarning_frame.gnoma:SetTexture ("Interface\\AddOns\\Details\\images\\icons2")
|
||||||
|
resetwarning_frame.gnoma:SetSize (89*1.00, 97*1.00)
|
||||||
|
--resetwarning_frame.gnoma:SetTexCoord (0.212890625, 0.494140625, 0.798828125, 0.99609375) -- 109 409 253 510
|
||||||
|
resetwarning_frame.gnoma:SetTexCoord (0.17578125, 0.001953125, 0.59765625, 0.787109375) -- 1 306 90 403
|
||||||
|
|
||||||
|
resetwarning_frame.close = CreateFrame ("Button", "DetailsFeedbackWindowCloseButton", resetwarning_frame, "OptionsButtonTemplate")
|
||||||
|
resetwarning_frame.close:SetPoint ("bottomleft", resetwarning_frame, "bottomleft", 8, 4)
|
||||||
|
resetwarning_frame.close:SetText ("Close")
|
||||||
|
resetwarning_frame.close:SetScript ("OnClick", function (self)
|
||||||
|
resetwarning_frame:Hide()
|
||||||
|
end)
|
||||||
|
|
||||||
resetwarning_frame.gnoma = resetwarning_frame:CreateTexture (nil, "artwork")
|
resetwarning_frame.see_updates = CreateFrame ("Button", "DetailsResetWindowSeeUpdatesButton", resetwarning_frame, "OptionsButtonTemplate")
|
||||||
resetwarning_frame.gnoma:SetPoint ("topright", resetwarning_frame, "topright", -3, -80)
|
resetwarning_frame.see_updates:SetPoint ("bottomright", resetwarning_frame, "bottomright", -10, 4)
|
||||||
resetwarning_frame.gnoma:SetTexture ("Interface\\AddOns\\Details\\images\\icons2")
|
resetwarning_frame.see_updates:SetText ("Update Info")
|
||||||
resetwarning_frame.gnoma:SetSize (89*1.00, 97*1.00)
|
resetwarning_frame.see_updates:SetScript ("OnClick", function (self)
|
||||||
--resetwarning_frame.gnoma:SetTexCoord (0.212890625, 0.494140625, 0.798828125, 0.99609375) -- 109 409 253 510
|
_detalhes.OpenNewsWindow()
|
||||||
resetwarning_frame.gnoma:SetTexCoord (0.17578125, 0.001953125, 0.59765625, 0.787109375) -- 1 306 90 403
|
DetailsBubble:HideBubble()
|
||||||
|
--resetwarning_frame:Hide()
|
||||||
resetwarning_frame.close = CreateFrame ("Button", "DetailsFeedbackWindowCloseButton", resetwarning_frame, "OptionsButtonTemplate")
|
end)
|
||||||
resetwarning_frame.close:SetPoint ("bottomleft", resetwarning_frame, "bottomleft", 8, 4)
|
resetwarning_frame.see_updates:SetWidth (130)
|
||||||
resetwarning_frame.close:SetText ("Close")
|
|
||||||
resetwarning_frame.close:SetScript ("OnClick", function (self)
|
resetwarning_frame.reset_skin = CreateFrame ("Button", "DetailsResetWindowResetSkinButton", resetwarning_frame, "OptionsButtonTemplate")
|
||||||
resetwarning_frame:Hide()
|
resetwarning_frame.reset_skin:SetPoint ("right", resetwarning_frame.see_updates, "left", -5, 0)
|
||||||
end)
|
resetwarning_frame.reset_skin:SetText ("Reset Skin")
|
||||||
|
resetwarning_frame.reset_skin:SetScript ("OnClick", function (self)
|
||||||
resetwarning_frame.see_updates = CreateFrame ("Button", "DetailsResetWindowSeeUpdatesButton", resetwarning_frame, "OptionsButtonTemplate")
|
--do the reset
|
||||||
resetwarning_frame.see_updates:SetPoint ("bottomright", resetwarning_frame, "bottomright", -10, 4)
|
for index, instance in ipairs (_detalhes.tabela_instancias) do
|
||||||
resetwarning_frame.see_updates:SetText ("Update Info")
|
if (not instance.iniciada) then
|
||||||
resetwarning_frame.see_updates:SetScript ("OnClick", function (self)
|
instance:RestauraJanela()
|
||||||
_detalhes.OpenNewsWindow()
|
local skin = instance.skin
|
||||||
DetailsBubble:HideBubble()
|
instance:ChangeSkin ("Default Skin")
|
||||||
--resetwarning_frame:Hide()
|
instance:ChangeSkin ("Minimalistic")
|
||||||
end)
|
instance:ChangeSkin (skin)
|
||||||
resetwarning_frame.see_updates:SetWidth (130)
|
instance:DesativarInstancia()
|
||||||
|
else
|
||||||
resetwarning_frame.reset_skin = CreateFrame ("Button", "DetailsResetWindowResetSkinButton", resetwarning_frame, "OptionsButtonTemplate")
|
local skin = instance.skin
|
||||||
resetwarning_frame.reset_skin:SetPoint ("right", resetwarning_frame.see_updates, "left", -5, 0)
|
instance:ChangeSkin ("Default Skin")
|
||||||
resetwarning_frame.reset_skin:SetText ("Reset Skin")
|
instance:ChangeSkin ("Minimalistic")
|
||||||
resetwarning_frame.reset_skin:SetScript ("OnClick", function (self)
|
instance:ChangeSkin (skin)
|
||||||
--do the reset
|
end
|
||||||
for index, instance in ipairs (_detalhes.tabela_instancias) do
|
|
||||||
if (not instance.iniciada) then
|
|
||||||
instance:RestauraJanela()
|
|
||||||
local skin = instance.skin
|
|
||||||
instance:ChangeSkin ("Default Skin")
|
|
||||||
instance:ChangeSkin ("Minimalistic")
|
|
||||||
instance:ChangeSkin (skin)
|
|
||||||
instance:DesativarInstancia()
|
|
||||||
else
|
|
||||||
local skin = instance.skin
|
|
||||||
instance:ChangeSkin ("Default Skin")
|
|
||||||
instance:ChangeSkin ("Minimalistic")
|
|
||||||
instance:ChangeSkin (skin)
|
|
||||||
end
|
end
|
||||||
end
|
end)
|
||||||
end)
|
resetwarning_frame.reset_skin:SetWidth (130)
|
||||||
resetwarning_frame.reset_skin:SetWidth (130)
|
|
||||||
|
resetwarning_frame.open_options = CreateFrame ("Button", "DetailsResetWindowOpenOptionsButton", resetwarning_frame, "OptionsButtonTemplate")
|
||||||
|
resetwarning_frame.open_options:SetPoint ("right", resetwarning_frame.reset_skin, "left", -5, 0)
|
||||||
|
resetwarning_frame.open_options:SetText ("Options Panel")
|
||||||
|
resetwarning_frame.open_options:SetScript ("OnClick", function (self)
|
||||||
|
local lower_instance = _detalhes:GetLowerInstanceNumber()
|
||||||
|
if (not lower_instance) then
|
||||||
|
local instance = _detalhes:GetInstance (1)
|
||||||
|
_detalhes.CriarInstancia (_, _, 1)
|
||||||
|
_detalhes:OpenOptionsWindow (instance)
|
||||||
|
else
|
||||||
|
_detalhes:OpenOptionsWindow (_detalhes:GetInstance (lower_instance))
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
resetwarning_frame.open_options:SetWidth (130)
|
||||||
|
|
||||||
resetwarning_frame.open_options = CreateFrame ("Button", "DetailsResetWindowOpenOptionsButton", resetwarning_frame, "OptionsButtonTemplate")
|
function _detalhes:ResetWarningDialog()
|
||||||
resetwarning_frame.open_options:SetPoint ("right", resetwarning_frame.reset_skin, "left", -5, 0)
|
DetailsResetConfigWarningDialog:Show()
|
||||||
resetwarning_frame.open_options:SetText ("Options Panel")
|
DetailsBubble:SetOwner (resetwarning_frame.gnoma, "bottomright", "topleft", 30, -37, 1)
|
||||||
resetwarning_frame.open_options:SetScript ("OnClick", function (self)
|
DetailsBubble:FlipHorizontal()
|
||||||
local lower_instance = _detalhes:GetLowerInstanceNumber()
|
DetailsBubble:SetBubbleText ("", "", "WWHYYYYYYYYY!!!!", "", "")
|
||||||
if (not lower_instance) then
|
DetailsBubble:TextConfig (14, nil, "deeppink")
|
||||||
local instance = _detalhes:GetInstance (1)
|
DetailsBubble:ShowBubble()
|
||||||
_detalhes.CriarInstancia (_, _, 1)
|
|
||||||
_detalhes:OpenOptionsWindow (instance)
|
|
||||||
else
|
|
||||||
_detalhes:OpenOptionsWindow (_detalhes:GetInstance (lower_instance))
|
|
||||||
end
|
end
|
||||||
end)
|
_detalhes:ScheduleTimer ("ResetWarningDialog", 7)
|
||||||
resetwarning_frame.open_options:SetWidth (130)
|
|
||||||
|
|
||||||
function _detalhes:ResetWarningDialog()
|
|
||||||
DetailsResetConfigWarningDialog:Show()
|
|
||||||
DetailsBubble:SetOwner (resetwarning_frame.gnoma, "bottomright", "topleft", 30, -37, 1)
|
|
||||||
DetailsBubble:FlipHorizontal()
|
|
||||||
DetailsBubble:SetBubbleText ("", "", "WWHYYYYYYYYY!!!!", "", "")
|
|
||||||
DetailsBubble:TextConfig (14, nil, "deeppink")
|
|
||||||
DetailsBubble:ShowBubble()
|
|
||||||
|
|
||||||
|
|
||||||
end
|
end
|
||||||
_detalhes:ScheduleTimer ("ResetWarningDialog", 7)
|
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
--> interface menu
|
--> interface menu
|
||||||
local f = CreateFrame ("frame", "DetailsInterfaceOptionsPanel", UIParent)
|
local f = CreateFrame ("frame", "DetailsInterfaceOptionsPanel", UIParent)
|
||||||
@@ -1053,6 +910,7 @@ function _G._detalhes:Start()
|
|||||||
--_detalhes:OpenWelcomeWindow() --for debug
|
--_detalhes:OpenWelcomeWindow() --for debug
|
||||||
end
|
end
|
||||||
_detalhes:ScheduleTimer ("OpenOptionsWindowAtStart", 2)
|
_detalhes:ScheduleTimer ("OpenOptionsWindowAtStart", 2)
|
||||||
|
--_detalhes:OpenCustomDisplayWindow()
|
||||||
|
|
||||||
--BNSendFriendInvite ("tercio#1488")
|
--BNSendFriendInvite ("tercio#1488")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user