Download
(2Kb)
Download
Updated: 06-26-10 11:44 AM
Pictures
File Info
Updated:06-26-10 11:44 AM
Created:unknown
Downloads:34,524
Favorites:302
MD5:

Fane  Popular! (More than 5000 hits)

Version: 1.6
by: haste [More]

Fane is a small add-on to make the chat tabs look slightly more appealing. The tabs will always be shown on ChatFrame1 (that's the one where you can have more than one tab).

There are zero configurations for this add-on.

Changes from 1.5
- The tabs will no longer fade, while the combat log quick button list still will.
- Separate chat frames now have their tabs handled correctly.

Changes from 1.4
- Make a global local. (If you fetched 1.4, then you really shouldn't bother fetching this one as well).

Changes from 1.3
- Updated to work on 3.3.5.

Changes from 1.2
- Should no longer error when trying to close chat frames.

Changes from 1.1
- Updated to work on 3.0.

Changes from 1.0
- Set TOC version to 2.4.
Optional Files (0)


Post A Reply Comment Options
Unread 07-09-08, 12:32 PM  
steino
A Kobold Labourer
 
steino's Avatar
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 19
Uploads: 4
Originally posted by Sec
I tried oPanel today, however it messed up my screen. I hope this doesn't occur for anyone else.

Aside from that, can someone please explain to me what I should change in the .lua to make Fane apply a custom font on log in. Right now, I have a custom font set up, but I have to put my mouse over each chat tab to make the font change apply. There was a thread on WowAce's forum asking the same thing - the thread's author figured it out, but I'm having problems and haven't been able to get a reply.
There is a reason why its on his git and not here on wowi :--D
Report comment to moderator  
Reply With Quote
Unread 07-09-08, 04:38 PM  
Sec
A Cyclonian
 
Sec's Avatar

Forum posts: 48
File comments: 177
Uploads: 0
I am more concerned with figuring out how to get Fane tweaked as I described on my previous post. If you can offer any insight, I'd be much obliged.

Originally posted by steino
There is a reason why its on his git and not here on wowi :--D
I downloaded oPanel from his git. I can double check to make sure that everything matches up, but aside from that, I am at a loss. I do not mind - I was only testing the waters with oPanel. I did notice, though, that there was at least one UI compilation on WoWI that contained oPanel, which gave me the initial impression that the addon was fully working. It may work just fine straight from his git, which would mean I'm just running into some strange problem. It may require tweaking - if so, then I am unaware of that requirement. If I get more curious about oPanel, I'll send Haste a PM to inquire about my problem, otherwise, no worries.
Report comment to moderator  
Reply With Quote
Unread 07-11-08, 10:15 AM  
DJJoeJoe
A Murloc Raider
 
DJJoeJoe's Avatar
AddOn Compiler - Click to view compilations

Forum posts: 6
File comments: 172
Uploads: 1
Well, anyone on the 'GiT' is treated as 'alpha' and a heavy work in progress, hence only some of this addons are finally here on an actual mod sites as opposed to SVNs and the like.
__________________

Joetest - Ner'Zhul - Disciples of Death
Report comment to moderator  
Reply With Quote
Unread 07-11-08, 03:39 PM  
Sec
A Cyclonian
 
Sec's Avatar

Forum posts: 48
File comments: 177
Uploads: 0
I am using Fane. I am curious about how to change Fane so that the font I assigned for the tabs' text will update on login. Right now, when I log in or reload I have to mouse over the tabs' text for them to appear in the correct font. I have been trying to figure this out for some time now, but I am stumped.

I understand all this regarding oPanel. I am not using oPanel. I am not concerned about oPanel.

If anyone knows how to tweak Fane, please comment on how to do so. If more people are going to keep talking about oPanel, please refrain from commenting - as I have already said before, I am not concerned with oPanel. I appreciate the sentiment, but my question keeps going ignored in favor of discussing something that doesn't need discussing.
Report comment to moderator  
Reply With Quote
Unread 09-08-08, 12:35 PM  
dragongirl411
A Murloc Raider
AddOn Compiler - Click to view compilations

Forum posts: 9
File comments: 4
Uploads: 1
Hi Haste, I've been using Fane for quite some time now.

My question is, can I modify the .lua file so that the chat tabs appear on the bottom of the chat window? I've been teaching myself .lua as I go along, and managed to change my font and font colors myself, but for this I'm stumped.

Thanks.
Report comment to moderator  
Reply With Quote
Unread 09-08-08, 01:53 PM  
haste
Featured Artist
 
haste's Avatar
Featured Addon Author

Forum posts: 1027
File comments: 392
Uploads: 17
Originally posted by dragongirl411
Hi Haste, I've been using Fane for quite some time now.

My question is, can I modify the .lua file so that the chat tabs appear on the bottom of the chat window? I've been teaching myself .lua as I go along, and managed to change my font and font colors myself, but for this I'm stumped.

Thanks.
This is very far outside the scope of Fane. Anyhow... The common way to solve issues like this is to block the blizzard code from execution what it should, or trick it into doing something else. A block you can do by hooking the functions that handle the arranging of the tabs, and just have it execute your function instead. This is most likely the easiest way to solve it.

You could also place a function on the chattab to act as a proxy to the setpoint function, as the chat tabs (like all other widget elements) have a metatable lookup on their respective widget table.

Now, this really isn't my (or fane's issue) at all. I recommend that you make a post on any of the coding related forums.
Report comment to moderator  
Reply With Quote
Unread 09-08-08, 08:25 PM  
dragongirl411
A Murloc Raider
AddOn Compiler - Click to view compilations

Forum posts: 9
File comments: 4
Uploads: 1
Thanks for the info
Report comment to moderator  
Reply With Quote
Unread 10-12-08, 10:31 AM  
Akustik
A Kobold Labourer
 
Akustik's Avatar

Forum posts: 0
File comments: 24
Uploads: 0
Hi I've been using a lot of ur addons and since u haven't uploaded oPanel here i decided to ask in here. oPanel's been doing something screwy lately -- when i start WoW or /rl the chat frame when oPanel is shrunk and when i expand it is not appearing as it should. Think it's best to post a pic :
Problem 1
Problem 2
Any idea how to fix this? ... it only affects Chat Frame, Combat Log is functioning properly
Last edited by Akustik : 10-12-08 at 10:32 AM.
Report comment to moderator  
Reply With Quote
Unread 10-12-08, 10:50 AM  
haste
Featured Artist
 
haste's Avatar
Featured Addon Author

Forum posts: 1027
File comments: 392
Uploads: 17
Originally posted by Akustik
Hi I've been using a lot of ur addons and since u haven't uploaded oPanel here i decided to ask in here. oPanel's been doing something screwy lately -- when i start WoW or /rl the chat frame when oPanel is shrunk and when i expand it is not appearing as it should. Think it's best to post a pic :
Problem 1
Problem 2
Any idea how to fix this? ... it only affects Chat Frame, Combat Log is functioning properly
Sending me a PM would have been the most logical choice .

However, unlock the chatframe, move it, reload ui, it should be fixed . It also might be that your chatframe is being moved by the UI because it's "outside" the screen. Take a look at IHasNoScope and tear out the FCF hook that's there. The comment it has should be obvious enough I believe.
Report comment to moderator  
Reply With Quote
Unread 10-12-08, 12:01 PM  
Akustik
A Kobold Labourer
 
Akustik's Avatar

Forum posts: 0
File comments: 24
Uploads: 0
Ye I tried moving it all around a lot of times didn't work now i just downloaded IHasNoScope and it fixed it
Report comment to moderator  
Reply With Quote
Unread 10-15-08, 06:35 PM  
Kyc
A Fallenroot Satyr
AddOn Author - Click to view AddOns

Forum posts: 23
File comments: 14
Uploads: 3
With the 3.0.2 patch Fane broke. I made the following changes to get things working again:
Code:
local OnEnter = function(self)
	local f, s = inherit:GetFont()
	_G["ChatFrame"..self:GetID().."TabText"]:SetTextColor(.64, .207, .933)
	_G["ChatFrame"..self:GetID().."TabText"]:SetFont(f, s, "OUTLINE")
end
local OnLeave = function(self)
	if(_G["ChatFrame"..self:GetID()] == SELECTED_CHAT_FRAME) then
		_G["ChatFrame"..self:GetID().."TabText"]:SetTextColor(.64, .207, .933)
	else
		_G["ChatFrame"..self:GetID().."TabText"]:SetTextColor(1, 1, 1)
	end

	local f, s = inherit:GetFont()
	_G["ChatFrame"..self:GetID().."TabText"]:SetFont(f, s)
end
local OnShow = function(self)
	local f, s = inherit:GetFont()
    _G["ChatFrame"..self:GetID().."TabText"]:SetFont(f, s+1)
    _G["ChatFrame"..self:GetID().."TabText"]:SetTextColor(1, 0, 0)
end
local OnHide = function(self)
	local f, s = inherit:GetFont()
	G["ChatFrame"..self:GetID().."TabText"]:SetFont(f, s)
	_G["ChatFrame"..self:GetID().."TabText"]:SetTextColor(1, 1, 1)
end

local rollCF = function()
	for i = 1, 7 do
		local chat = _G["ChatFrame"..i]
		local tab = _G["ChatFrame"..i.."Tab"]
        local tabText = _G["ChatFrame"..i.."TabText"]
		local flash = _G["ChatFrame"..i.."TabFlash"]

		flash:GetRegions():SetTexture(nil)
		flash:SetScript("OnShow", OnShow)
		flash:SetScript("OnHide", OnHide)

		_G["ChatFrame"..i.."TabLeft"]:Hide()
		_G["ChatFrame"..i.."TabMiddle"]:Hide()
		_G["ChatFrame"..i.."TabRight"]:Hide()

		tab:SetScript("OnEnter", OnEnter)
		tab:SetScript("OnLeave", OnLeave)

		tab.SetAlpha = dummy
		if(chat == SELECTED_CHAT_FRAME) then
			tabText:SetTextColor(.64, .207, .933)
		else
			tabText:SetTextColor(1, 1, 1)
		end
		tab:GetHighlightTexture():SetTexture(nil)

		if(chat.isDocked) then
			tab:Show()
			tab.Hide = dummy
		else
			tab.SetAlpha = nil
			tab.Hide = nil
		end
	end
end

event.PLAYER_LOGIN = function()
	rollCF()
	hooksecurefunc("FCF_OpenNewWindow", rollCF)
	hooksecurefunc("FCF_Close", function(self)
		UIParent.Hide(_G[self:GetName().."Tab"])
	end)

	local _orig_FCF_Tab_OnClick = FCF_Tab_OnClick
	FCF_Tab_OnClick = function(button)
		_orig_FCF_Tab_OnClick(button)

		for k, v in pairs(DOCKED_CHAT_FRAMES) do
			if(v == SELECTED_CHAT_FRAME) then
				_G[v:GetName().."TabText"]:SetTextColor(.64, .207, .933)
			else
				_G[v:GetName().."TabText"]:SetTextColor(1, 1, 1)
			end
		end
	end

	FCF_ChatTabFadeFinished = dummy
end
This is still not ideal. With these changes you can't get to the menu of the chat frames, so do all your chatframe customizations before enabling the addon.

Thanks
Report comment to moderator  
Reply With Quote
Unread 10-16-08, 01:57 AM  
haste
Featured Artist
 
haste's Avatar
Featured Addon Author

Forum posts: 1027
File comments: 392
Uploads: 17
wine segfaulted when I updated my WoW yesterday, so the following isn't tested, but it should work. I will review Fane's code before pushing an update however.

Code:
diff --git a/tabs.lua b/tabs.lua
index 0c29ce3..abcfcd8 100644
--- a/tabs.lua
+++ b/tabs.lua
@@ -35,18 +35,18 @@ local inherit = GameFontNormalSmall
 
 local OnEnter = function(self)
 	local f, s = inherit:GetFont()
-	self:SetTextColor(.64, .207, .933)
-	self:SetFont(f, s, "OUTLINE")
+	self:GetFontString():SetTextColor(.64, .207, .933)
+	self:GetFontString():SetFont(f, s, "OUTLINE")
 end
 local OnLeave = function(self)
 	if(_G["ChatFrame"..self:GetID()] == SELECTED_CHAT_FRAME) then
-		self:SetTextColor(.64, .207, .933)
+		self:GetFontString():SetTextColor(.64, .207, .933)
 	else
-		self:SetTextColor(1, 1, 1)
+		self:GetFontString():SetTextColor(1, 1, 1)
 	end
 
 	local f, s = inherit:GetFont()
-	self:SetFont(f, s)
+	self:GetFontString():SetFont(f, s)
 end
 local OnShow = function(self)
 	local f, s = inherit:GetFont()
@@ -78,9 +78,9 @@ local rollCF = function()
 
 		tab.SetAlpha = dummy
 		if(chat == SELECTED_CHAT_FRAME) then
-			tab:SetTextColor(.64, .207, .933)
+			tab:GetFontString():SetTextColor(.64, .207, .933)
 		else
-			tab:SetTextColor(1, 1, 1)
+			tab:GetFontString():SetTextColor(1, 1, 1)
 		end
 		tab:GetHighlightTexture():SetTexture(nil)
 
@@ -102,14 +102,14 @@ event.PLAYER_LOGIN = function()
 	end)
 
 	local _orig_FCF_Tab_OnClick = FCF_Tab_OnClick
-	FCF_Tab_OnClick = function(button)
-		_orig_FCF_Tab_OnClick(button)
+	FCF_Tab_OnClick = function(...)
+		_orig_FCF_Tab_OnClick(...)
 
 		for k, v in pairs(DOCKED_CHAT_FRAMES) do
 			if(v == SELECTED_CHAT_FRAME) then
-				_G[v:GetName().."Tab"]:SetTextColor(.64, .207, .933)
+				_G[v:GetName().."Tab"]:GetFontString():SetTextColor(.64, .207, .933)
 			else
-				_G[v:GetName().."Tab"]:SetTextColor(1, 1, 1)
+				_G[v:GetName().."Tab"]:GetFontString():SetTextColor(1, 1, 1)
 			end
 		end
 	end
Report comment to moderator  
Reply With Quote
Unread 10-17-08, 08:35 AM  
Aschker
A Murloc Raider
AddOn Compiler - Click to view compilations

Forum posts: 6
File comments: 105
Uploads: 1
lovely but ehrm.. arent the tabs supposed to blink red if i get a message in a custom channel? Like a whisper if i have one tab just for whispers? anyway.. it doesnt..

And if i delete the whisper tab, the tab stays up there, it doesnt go a way until a reload.
Last edited by Aschker : 10-17-08 at 08:37 AM.
Report comment to moderator  
Reply With Quote
Unread 10-17-08, 11:08 AM  
haste
Featured Artist
 
haste's Avatar
Featured Addon Author

Forum posts: 1027
File comments: 392
Uploads: 17
Originally posted by Aschker
lovely but ehrm.. arent the tabs supposed to blink red if i get a message in a custom channel? Like a whisper if i have one tab just for whispers? anyway.. it doesnt..
It highlights it red, and that's what it has always done.

Originally posted by Aschker
And if i delete the whisper tab, the tab stays up there, it doesnt go a way until a reload.
Post a bug report.
Report comment to moderator  
Reply With Quote
Unread 10-17-08, 12:59 PM  
Aschker
A Murloc Raider
AddOn Compiler - Click to view compilations

Forum posts: 6
File comments: 105
Uploads: 1
Well, it doesnt highlight in red in my ui.. Using PhanxChat btw, if that makes a difference..
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.