Addon Info.
Change Log
Archived (1)
Comments (42)
  Category: FuBar
Addon Information
Download Latest Version.
To add favorites please register for a free account. If you already have one you need to login. How do I install this? (FAQ)
ckknight's Portal Bug Reports Feature Requests

This file is a Addon for FuBar 3.0 by ckknight. You must have that installed before this Addon will work.

Author:
Version:
r65610
Date:
03-25-2008 12:32 AM
Size:
117.82 Kb
Downloads:
31,768
Favorites:
339
MD5:
Pictures
0.4.23
FuBar - MicroMenuFu   Popular!

Shows the micro menu on FuBar.


TO INSTALL: Put the FuBar_MicroMenuFu folder into
\World of Warcraft\Interface\AddOns\

Features
  1. Shows all the clickable buttons from your micro menu (character sheet, quest log, etc).

If you find _any_ bugs, feel free to submit them at
http://jira.wowace.com/browse/FUB

If you want to request any features, feel free to submit your ideas at
http://jira.wowace.com/browse/FUB

Forums: http://www.wowace.com/forums/index.php?board=55.0
  Change Log - FuBar - MicroMenuFu
r65610
toc bump for 2.4

r55081
updated to latest version from wowace
  Archived Versions - FuBar - MicroMenuFu
File Name
Version
Size
Author
Date
r55081
121kB
ckknight
03-14-2008 11:20 PM
  Comments - FuBar - MicroMenuFu
Post A Reply
Author Comments Comment Options
Old 11-06-2008, 08:23 PM  
gridius
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
FIX

Open MicroMenuFu.lua and replace all the code with this code...includes Achievements, and fixes Quest and Help items.

Code:
local Tablet = AceLibrary("Tablet-2.0")

MicroMenuFu = AceLibrary("AceAddon-2.0"):new("FuBarPlugin-2.0", "AceDB-2.0", "AceConsole-2.0")

MicroMenuFu.version = "2.0." .. string.sub("$Revision: 31019 $", 12, -3)
MicroMenuFu.date = string.sub("$Date: 2007-03-26 09:16:30 -0400 (Mon, 26 Mar 2007) $", 8, 17)
MicroMenuFu.hasNoText = true
MicroMenuFu.hideWithoutStandby = true
MicroMenuFu.hasIcon = false
MicroMenuFu.frame = MicroMenuFu:CreateBasicPluginFrame("FuBar_MicroMenuFuFrame")

MicroMenuFu:RegisterDB("MicroMenuFuDB")
MicroMenuFu:RegisterDefaults("profile", {
	buttonSize = 3,
	buttonSpacing = 1,
	visible = {
		["Char"] = true,
		["Spells"] = true,
		--["Main"] = true,
		["Talents"] = true,
		["Achievements"] = true,
		["Quest"] = true,
		["Socials"] = true,
		["LFG"] = true,
		["World"] = true,
		["Help"] = true,
	},
})

local L = AceLibrary("AceLocale-2.2"):new("FuBar_MicroMenuFu")
local _G = getfenv(0)

local buttons = {
	{
		id = "Char",
		icon = "Interface\\GroupFrame\\UI-Group-LeaderIcon",
		exec = function() ToggleCharacter("PaperDollFrame") end,
		key  = "TOGGLECHARACTER0",
		name = CHARACTER_BUTTON,
		tip  = NEWBIE_TOOLTIP_CHARACTER,
	},
	{
		id = "Spells",
		icon = "Interface\\Buttons\\UI-MicroButton-Spellbook-Up",
		exec = function() ToggleSpellBook(BOOKTYPE_SPELL) end,
		key  = "TOGGLESPELLBOOK",
		name = SPELLBOOK_ABILITIES_BUTTON,
		tip  = NEWBIE_TOOLTIP_SPELLBOOK,
		texcoord = {0.1, 0.9, 0.5, 0.9},
	},
	--[[{
		id = "Main",
		icon = "Interface\\Buttons\\UI-MicroButton-MainMenu-Up",
		exec = function() ToggleGameMenu(1) end,
		key  = "TOGGLEGAMEMENU",
		name = MAINMENU_BUTTON,
		tip  = NEWBIE_TOOLTIP_MAINMENU,
		texcoord = {0.1, 0.9, 0.5, 0.9},
	},]]
	{
		id = "Talents",
		icon = "Interface\\Buttons\\UI-MicroButton-Talents-Up",
		exec = function() ToggleTalentFrame() end,
		key  = "TOGGLETALENTS",
		name = TALENTS_BUTTON,
		tip  = NEWBIE_TOOLTIP_TALENTS,
		texcoord = {0.1, 0.9, 0.5, 0.9},
	},
	{
		id = "Achievements",
		icon = "Interface\\Buttons\\UI-MicroButton-Achievement-Up",
		exec = function() ToggleAchievementFrame(stats) end,
		key  = "TOGGLEACHIEVEMENTFRAME",
		name = ACHIEVEMENT_BUTTON,
		tip  = NEWBIE_TOOLTIP_ACHIEVEMENT,
		texcoord = {0.1, 0.9, 0.5, 0.9},
	},
	{
		id = "Quest",
		icon = "Interface\\Buttons\\UI-MicroButton-Quest-Up",
		exec = function() ToggleFrame(QuestLogFrame) end,
		key  = "TOGGLEQUESTLOG",
		name = QUESTLOG_BUTTON,
		tip  = NEWBIE_TOOLTIP_QUESTLOG,
		texcoord = {0.1, 0.9, 0.5, 0.9},
	},
	{
		id = "Socials",
		icon = "Interface\\Buttons\\UI-MicroButton-Socials-Up",
		exec = function() ToggleFriendsFrame() end,
		key  = "TOGGLESOCIAL",
		name = SOCIAL_BUTTON,
		tip  = NEWBIE_TOOLTIP_SOCIAL,
		texcoord = {0.1, 0.9, 0.5, 0.9},
	},
	{
		id = "LFG",
		icon = "Interface\\Buttons\\UI-MicroButton-LFG-Up",
		exec = function() ToggleLFGParentFrame() end,
		key  = "TOGGLELFG",
		name = LFG_BUTTON,
		tip  = NEWBIE_TOOLTIP_LFGPARENT,
		texcoord = {0.1, 0.9, 0.5, 0.9},
	},
	{
		id = "Help",
		icon = "Interface\\Buttons\\UI-MicroButton-Help-Up",
		exec = function() ToggleHelpFrame() end,
		key  = "TOGGLEHELPMENU",
		name = HELP_BUTTON,
		tip  = NEWBIE_TOOLTIP_HELP,
		texcoord = {0.1, 0.9, 0.5, 0.9},
	},
}

local options = {
	handler = MicroMenuFu,
	type = 'group',
	args = {
		spacing = {
			type = 'range',
			name = L["Button Spacing"],
			desc = L["Set Button Spacing"],
			min  = 0,
			max  = 10,
			step = 0.5,
			set  = function(size) MicroMenuFu:SetButtonSpacing(size) end,
			get  = function() return MicroMenuFu:GetButtonSpacing() end,
		},
		visibility = {
			type = 'group',
			name = L["Button Visibility"],
			desc = L["Toggle Button Visibility"],
			args = {
			}
		},
	},
}

for _, data in ipairs(buttons) do
	local name = data.id
	local key_name = string.gsub(name, "%s+", "-")
	local button_name = name

	local subtbl = {}
	options.args.visibility.args[key_name] = subtbl
	subtbl.type = "toggle"
	subtbl.name = data.name
	subtbl.desc = string.format(L["Toggle visibility of %s"], data.name)
	subtbl.get = function() return MicroMenuFu:IsShowingButton(button_name) end
	subtbl.set = function() MicroMenuFu:ToggleShowingButton(button_name) end
end

MicroMenuFu.OnMenuRequest = options
MicroMenuFu:RegisterChatCommand({ "/micromenufu" }, options)

function MicroMenuFu:OnEnable()
	self.fontSize = FuBar:GetFontSize()
	self:BuildButtons()
end

function MicroMenuFu:IsShowingButton(button)
	return self.db.profile.visible[button]
end

function MicroMenuFu:ToggleShowingButton(button)
	self.db.profile.visible[button] = not self.db.profile.visible[button]
	self:CheckWidth(true)
	return self.db.profile.visible[button]
end

function MicroMenuFu:OnTooltipUpdate()
	if self.current_mouseover then
		local data
		for _,v in ipairs(buttons) do
			if v.id == self.current_mouseover then
				data = v
				break
			end
		end
		if not data then
			return
		end
		local key = GetBindingKey(data.key)
		if key then
			key = " (" .. key .. ")"
		else
			key = ""
		end
		Tablet:SetTitle(format("|cffffffff%s|r%s", data.name, key))
		Tablet:AddCategory():AddLine(
			'text', data.tip,
			'wrap', true
		)
	end
end

function MicroMenuFu:GetButtonSpacing()
	return self.db.profile.buttonSpacing
end

function MicroMenuFu:SetButtonSpacing(spacing)
	if spacing then
		self.db.profile.buttonSpacing = spacing
		self:SetFontSize(self.fontSize)
	end
end

function MicroMenuFu:BuildButtons()
	local last
	local frameWidth = 0
	for _, data in ipairs(buttons) do
		local name = data.id
		if self:IsShowingButton(name) then
			local button_name = name
			local frame_name = "MicroMenuFuFrame" .. name
			local button = _G[frame_name] or self:CreatePluginChildFrame("Button", frame_name, self.frame)
			button:Show()
			button:EnableMouse(true)
			if last then
				button:SetPoint("LEFT", last, "RIGHT", self:GetButtonSpacing(), 0)
			else
				button:SetPoint("LEFT", self.frame, "LEFT", self:GetButtonSpacing(), 0)
			end

			local texture = _G[frame_name .. "Texture"] or button:CreateTexture(frame_name .. "Texture")
			texture:SetTexture(data.icon)
			if data.texcoord then
				texture:SetTexCoord(unpack(data.texcoord))
			end

			texture:SetAllPoints(button)

			local OnEnter = button:GetScript("OnEnter")
			button:SetScript("OnEnter", function()
				self.current_mouseover = button_name
				OnEnter()
			end)

			local OnLeave = button:GetScript("OnLeave")
			button:SetScript("OnLeave", function()
				self.current_mouseover = nil
				OnLeave()
			end)

			button:SetScript("OnClick", data.exec)

			button:SetWidth(FuBar:GetFontSize())
			button:SetHeight(FuBar:GetFontSize())
			frameWidth = frameWidth + button:GetWidth() + self:GetButtonSpacing()

			last = button
		else
			local button = _G["MicroMenuFuFrame" .. name]
			if button then
				button:Hide()
			end
		end
	end

	if frameWidth > 0 then
		self:SetFontSize(self.fontSize)
	else
		self:ToggleShowingButton("Char")
		self:BuildButtons()
	end
end

function MicroMenuFu:CheckWidth(force)
	if force then
		self:SetFontSize(self.fontSize)
		if self.panel and self.panel:GetPluginSide(self) == "CENTER" then
			self.panel:UpdateCenteredPosition()
		end
	end
end

function MicroMenuFu:SetFontSize(fsize)
	if fsize then
		local frameWidth = 0
		local last
		local newIconSize = FuBar:GetFontSize()
		for _, v in ipairs(buttons) do
			local name = v.id
			local button = _G["MicroMenuFuFrame" .. name]
			if button then
				if self:IsShowingButton(name) then
					button:SetWidth(newIconSize)
					button:SetHeight(newIconSize)
					button:Show()

					if last then
						button:SetPoint("LEFT", last, "RIGHT", self:GetButtonSpacing(), 0)
					else
						button:SetPoint("LEFT", self.frame, "LEFT", self:GetButtonSpacing(), 0)
					end

					frameWidth = frameWidth + button:GetWidth() + self:GetButtonSpacing()
					last = button
				else
					button:Hide()
				end
			end
		end

		self.fontSize = fsize
		self.frame:SetWidth(frameWidth)
	end
end

Last edited by gridius : 11-09-2008 at 09:44 AM.
gridius is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 11-04-2008, 05:07 AM  
Craynark
A Kobold Labourer
Interface Author - Click to view interfaces

Forum posts: 0
File comments: 2
Uploads: 1
Damn the man! Save the Empire!

Yeah obviously they'd rather that nobody uses it instead of someone fixing it. I emailed the author at least a week before posting here so that he could post the fixed code himself. Though never heard back, ah well.

I've just replied to all who've messaged me and sent the files if you provided me with an email address. If there's still any demand for it I'll post it as a Fan Update or something. Maybe MicroMenuFanFu! Power of the fan!

Cheers,


Craynark
Craynark is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 11-04-2008, 03:47 AM  
Cerag
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Quote:
Originally posted by rullstolsbroms
Would also like the modded code.. if you can.. could you upload it to some host so more people could benefit from it?
He had it uploaded here but someone at WowAce didn't like the fact that he wasn't the original author so they had it taken down. It was up for about a day. So he's stuck emailing it to people. I understand the concern of modding someone else's code and reposting it as theres. I just think it was silly it was pulled. It should have just been renamed with a "Fan Update" tag and left up(it works fine) because it seems the original author is not updating this himself.

This is an extremely handy mod and needs to be updated and available.

Last edited by Cerag : 11-04-2008 at 03:51 AM.
Cerag is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 10-28-2008, 05:53 AM  
rullstolsbroms
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
Would also like the modded code.. if you can.. could you upload it to some host so more people could benefit from it?
rullstolsbroms is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 10-19-2008, 06:23 PM  
tayedaen
A Murloc Raider
Interface Author - Click to view interfaces

Forum posts: 4
File comments: 216
Uploads: 31
Re: Patch 3 Fix

Quote:
Originally posted by Craynark
I'm not the creator but I've altered this for wotlk patch.

Added Achievements, PvP, Main menu and fixed the quest button. email me via the forum for a copy if you want a copy.

Craynark
Hi,
I would be very interested in the updated plugin.
Please send me a copy to workhard@gmx.co.uk

Thanks in advance
tay
tayedaen is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 10-18-2008, 11:36 PM  
Craynark
A Kobold Labourer
Interface Author - Click to view interfaces

Forum posts: 0
File comments: 2
Uploads: 1
Thumbs down Patch 3 Fix

I'm not the creator but I've altered this for wotlk patch.

Added Achievements, PvP, Main menu and fixed the quest button. email me via the forum for a copy if you want a copy.

Craynark
Craynark is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 10-17-2008, 07:00 AM  
LordSidious
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
I would love getting this plugin updated. It's awesome.
LordSidious is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 10-16-2008, 02:54 PM  
Farook
A Firelord
 
Farook's Avatar

Forum posts: 484
File comments: 63
Uploads: 0
Re: Patch 3.0.2

Quote:
Originally posted by Azhag
Do you plan to update the handy addon for the newest patch? An achievement button would be very usefull.
QFT!

That would be awesome...
__________________
Farook is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 10-16-2008, 07:58 AM  
Azhag
A Kobold Labourer
 
Azhag's Avatar

Forum posts: 0
File comments: 8
Uploads: 0
Patch 3.0.2

Do you plan to update the handy addon for the newest patch? An achievement button would be very usefull.

Last edited by Azhag : 10-16-2008 at 07:58 AM.
Azhag is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 08-26-2008, 09:45 PM  
Elloria
A Chromatic Dragonspawn
 
Elloria's Avatar
Interface Author - Click to view interfaces

Forum posts: 162
File comments: 231
Uploads: 20
Re: Fix for patch 2.4.3

Im blind i should have read the comment below me im sorry
__________________
LOL WUT?

Last edited by Elloria : 08-26-2008 at 10:17 PM.
Elloria is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 07-16-2008, 05:19 PM  
Nevan
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
Fix for patch 2.4.3

I Fixxed my version r65610 with this Fix:

Find (Line 98):
Code:
exec = function() ToggleKnowledgeBaseFrame() end,
Replace With:
Code:
exec = function() ToggleHelpFrame() end,
Nevan is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 04-25-2008, 12:16 PM  
Vrul
A Murloc Raider
 
Vrul's Avatar
Interface Author - Click to view interfaces

Forum posts: 4
File comments: 37
Uploads: 7
Re: Key ring

Quote:
Originally posted by Belasarius
Would it be possible to add a key ring to the menu bar?

The Blizzard menu bar has one attached and as I have mine hidden I am no longer able to see it.

Regards,
The key ring is attached to the bag bar and not the micro menu, but there is a micro menu equivalent of the bag bar with the key ring: http://www.wowinterface.com/download...ar-BagBar.html
Vrul is online now Report comment to moderator   Edit/Delete Message Reply With Quote
Old 04-25-2008, 12:14 PM  
Vrul
A Murloc Raider
 
Vrul's Avatar
Interface Author - Click to view interfaces

Forum posts: 4
File comments: 37
Uploads: 7
Quote:
Originally posted by Ruinna
Has someone taken this and created a raid icon micro menu? I've seen something of the sort in a few of the screenshots posted in the forums, but can't seem to find the addon..
Maybe try: http://www.wowinterface.com/download...ckyCharms.html
Vrul is online now Report comment to moderator   Edit/Delete Message Reply With Quote
Old 04-25-2008, 10:55 AM  
Belasarius
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
Key ring

Would it be possible to add a key ring to the menu bar?

The Blizzard menu bar has one attached and as I have mine hidden I am no longer able to see it.

Regards,
Belasarius is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Old 12-20-2007, 04:27 PM  
Kazren
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Why doesnt it have the main menu button on it like the normal micro menu. When Im doing my profession training, sometimes i want to open the main menu, but dont want to by pressing esc stopping my crafting, so I use the micro menu for this.
Kazren is offline Report comment to moderator   Edit/Delete Message Reply With Quote
Post A Reply



Category Jump:



The Network:
EQInterface | EQ2Interface | LoTROInterface | MMOUI | War.MMOUI | WoWInterface | VGInterface | Allakhazam | Thottbot | Wowhead | Zam


MMOInterface.com Copyright ©2008
World of Warcraft is a registered Trademark of Blizzard Entertainment.
vBulletin - Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.