Nick@108: Nick@108: local print = DEVIAN_WORKSPACE and function(...) print('VnRoster', ...) end or nop Nick@108: Nenue@102: VeneerRosterKunMixin = { Nenue@102: addonTrigger = 'Blizzard_GuildUI', Nenue@102: Nenue@102: anchorFrame = 'GuildFrame', Nenue@102: anchorPoint = 'TOPLEFT', Nenue@102: } Nenue@102: Nenue@102: Nenue@102: local module = VeneerRosterKunMixin Nenue@102: Nenue@102: function module:OnLoad() Nenue@102: Veneer:AddHandler(self, self.anchorPoint) Nenue@102: self:RegisterEvent('GUILD_ROSTER_UPDATE') Nenue@102: self:RegisterEvent('GUILD_TRADESKILL_UPDATE') Nick@108: Nick@108: self:RegisterEvent('LFG_LIST_SEARCH_RESULT_UPDATED') Nick@108: self:RegisterEvent('LFG_LIST_SEARCH_RESULTS_RECEIVED') Nick@108: self:RegisterEvent('LFG_LIST_AVAILABILITY_UPDATE') Nick@108: self:RegisterEvent('LFG_LIST_LOCK_INFO_RECEIVED') Nenue@102: end Nenue@102: Nick@108: function module:Setup() Nick@108: VeneerHandlerMixin.Setup(self) Nick@108: self:SetParent(GuildFrame) Nick@108: self:SetShown(true) Nick@108: end Nenue@102: Nick@108: function module:SetDirty() Nick@108: if self:IsVisible() then Nick@108: self:Update() Nick@108: else Nick@108: self.GuildInfoDirty = true Nick@108: end Nick@108: end Nenue@102: Nick@108: function module:OnShow() Nick@108: print('|cFF00FFFFOnShow()|r') Nick@108: if self.GuildInfoDirty then Nick@108: self:UpdateGuildInfo() Nick@108: end Nick@108: end Nick@108: Nick@108: function module:UpdateGuildInfo() Nick@108: local numMembers = GetNumGuildMembers() Nick@108: print(numMembers) Nick@108: for i = 1, numMembers do Nick@108: print(GetGuildRosterInfo(i)) Nick@108: end Nick@108: end Nick@108: Nick@108: function module:Update() end Nick@108: Nick@108: function module:OnEvent(event, ...) Nick@108: print('|cFFFF0088OnEvent()|r', event, ...) Nick@108: if event == 'LFG_LIST_SEARCH_RESULTS_RECEIVED' then Nick@108: elseif event == 'LFG_LIST_SEARCH_RESULT_UPDATED' then Nick@108: elseif event == 'GUILD_ROSTER_UPDATE' then Nick@108: self:SetDirty() Nick@108: end Nenue@102: end