Quantcast

- Updated TOC

HonorGoG [12-30-18 - 07:35]
- Updated TOC
- Updated !LibUIDropDownMenu
- Modified XML files to address the above library changes
- Added check for TitanPanelLocationButton_LocOnMiniMap() to initialize on an existing update timer and removed it from the PLAYER_ENTERING_WORLD event
Filename
Titan/Titan.toc
Titan/TitanPanel.xml
Titan/TitanPanelTemplate.xml
Titan/libs/!LibUIDropDownMenu.toc
Titan/libs/!LibUIDropDownMenu/Docs/Revision.txt
Titan/libs/!LibUIDropDownMenu/LibStub/LibStub.toc
Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua
Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.xml
Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.lua
Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.xml
TitanBag/TitanBag.toc
TitanClock/TitanClock.toc
TitanGold/TitanGold.toc
TitanLocation/TitanLocation.lua
TitanLocation/TitanLocation.toc
TitanLootType/TitanLootType.toc
TitanPerformance/TitanPerformance.toc
TitanRepair/TitanRepair.toc
TitanVolume/TitanVolume.toc
TitanXP/TitanXP.toc
diff --git a/Titan/Titan.toc b/Titan/Titan.toc
index b0b40e6..33a7f76 100644
--- a/Titan/Titan.toc
+++ b/Titan/Titan.toc
@@ -1,7 +1,7 @@
 ## Interface: 80100
-## Title: Titan Panel |cff00aa005.15.3.80100|r
+## Title: Titan Panel |cff00aa005.16.0.80100|r
 ## Author: Titan Development Team
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## SavedVariables: TitanAll, TitanSettings, TitanSkins, ServerTimeOffsets, ServerHourFormat
 ## OptionalDeps: Ace3, AceGUI-3.0-SharedMediaWidgets, LibSharedMedia-3.0, LibQTip-1.0, !LibUIDropDownMenu
 ## Notes: Adds a display bar on the top and/or bottom of the screen. Allows users to show and control information/launcher plugins.
diff --git a/Titan/TitanPanel.xml b/Titan/TitanPanel.xml
index f72b77e..63766ed 100644
--- a/Titan/TitanPanel.xml
+++ b/Titan/TitanPanel.xml
@@ -35,10 +35,12 @@
 			</Anchors>
 		</ButtonText>
 		-->
+		<!-- Removed on 20181229 to deal with the new LibUIDropDownMenu
 		<Frames>
 			<Frame name="$parentRightClickMenu" inherits="L_UIDropDownMenuTemplate" hidden="true">
 			</Frame>
 		</Frames>
+		-->
 	</Button>

 	<!--
diff --git a/Titan/TitanPanelTemplate.xml b/Titan/TitanPanelTemplate.xml
index 1f857c7..c8c0796 100644
--- a/Titan/TitanPanelTemplate.xml
+++ b/Titan/TitanPanelTemplate.xml
@@ -2,10 +2,12 @@
 ..\FrameXML\UI.xsd">
 	<Script file="TitanPanelTemplate.lua" />
 	<Button name="TitanPanelButtonTemplate" hidden="true" movable="true" virtual="true">
+		<!-- Removed on 20181229 to deal with the new LibUIDropDownMenu
 		<Frames>
 			<Frame name="$parentRightClickMenu" inherits="L_UIDropDownMenuTemplate" id="1" hidden="true">
 			</Frame>
 		</Frames>
+		-->
 		<Scripts>
 			<OnLoad>
 				TitanPanelButton_OnLoad(self);
@@ -25,10 +27,12 @@
 		</Scripts>
 	</Button>
 	<Button name="TitanPanelChildButtonTemplate" hidden="true" virtual="true">
+		<!-- Removed on 20181229 to deal with the new LibUIDropDownMenu
 		<Frames>
 			<Frame name="$parentRightClickMenu" inherits="L_UIDropDownMenuTemplate" id="1" hidden="true">
 			</Frame>
 		</Frames>
+		-->
 		<Scripts>
 			<OnLoad>
 				TitanPanelButton_OnLoad(self, true);
diff --git a/Titan/libs/!LibUIDropDownMenu.toc b/Titan/libs/!LibUIDropDownMenu.toc
new file mode 100755
index 0000000..dcb9c35
--- /dev/null
+++ b/Titan/libs/!LibUIDropDownMenu.toc
@@ -0,0 +1,12 @@
+## Interface: 80100
+## Title: Lib: UIDropDownMenu
+## Notes: A Replacement for standard UIDropDownMenu
+## Version: v2.00.8010028833
+## X-Category: Libraries
+## X-Website: https://www.wowace.com/projects/libuidropdownmenu
+## OptionalDeps: LibStub
+
+#@no-lib-strip@
+LibStub\LibStub.lua
+#@end-no-lib-strip@
+LibUIDropDownMenu\LibUIDropDownMenu.xml
diff --git a/Titan/libs/!LibUIDropDownMenu/Docs/Revision.txt b/Titan/libs/!LibUIDropDownMenu/Docs/Revision.txt
index 1b99a8d..5b8596c 100755
--- a/Titan/libs/!LibUIDropDownMenu/Docs/Revision.txt
+++ b/Titan/libs/!LibUIDropDownMenu/Docs/Revision.txt
@@ -1,7 +1,19 @@
-$Id: Revision.txt 36 2018-08-11 13:29:16Z arith $
+$Id: Revision.txt 41 2018-12-26 17:41:59Z arith $
 Revision History:
 =================

+v2.00.8010028833 (2018/12/27)
+-----------------------------
+- Migrate template to Lua function call
+  (Refer to below page for more details:
+   https://www.wowace.com/projects/libuidropdownmenu/pages/faq/changes-regarding-to-dropdown-templates-usage )
+- Update major version to "LibUIDropDownMenu-2.0"
+
+v1.08.8010028768 (2018/12/17)
+-----------------------------
+- Update to sync with 8.0.1 build 28768
+- ToC update
+
 v1.08.8000127326 (2018/08/11)
 -----------------------------
 - Workaround to get rid of addons which are still using old version of this library
diff --git a/Titan/libs/!LibUIDropDownMenu/LibStub/LibStub.toc b/Titan/libs/!LibUIDropDownMenu/LibStub/LibStub.toc
index 31aef48..acd0f7e 100755
--- a/Titan/libs/!LibUIDropDownMenu/LibStub/LibStub.toc
+++ b/Titan/libs/!LibUIDropDownMenu/LibStub/LibStub.toc
@@ -1,4 +1,4 @@
-## Interface: 70200
+## Interface: 80000
 ## Title: Lib: LibStub
 ## Notes: Universal Library Stub
 ## Credits: Kaelten, Cladhaire, ckknight, Mikk, Ammo, Nevcairiel
diff --git a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua
index de3b658..37ecff3 100755
--- a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua
+++ b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua
@@ -1,30 +1,27 @@
--- $Id: LibUIDropDownMenu.lua 36 2018-08-11 13:29:16Z arith $
+-- $Id: LibUIDropDownMenu.lua 40 2018-12-23 16:14:03Z arith $
 -- ----------------------------------------------------------------------------
 -- Localized Lua globals.
 -- ----------------------------------------------------------------------------
 local _G = getfenv(0)
-local tonumber, type, string, table = tonumber, type, string, table
-local strsub, strlen, strmatch, gsub = strsub, strlen, strmatch, gsub
-local max, match = max, match
-local securecall, issecure = securecall, issecure
+local tonumber, type, string, table = _G.tonumber, _G.type, _G.string, _G.table
+local strsub, strlen, strmatch, gsub = _G.strsub, _G.strlen, _G.strmatch, _G.gsub
+local max, match = _G.max, _G.match
+local securecall, issecure = _G.securecall, _G.issecure
 local wipe = table.wipe
 -- WoW
-local CreateFrame, GetCursorPosition, GetCVar, GetScreenHeight, GetScreenWidth, OpenColorPicker, PlaySound = CreateFrame, GetCursorPosition, GetCVar, GetScreenHeight, GetScreenWidth, OpenColorPicker, PlaySound
+local CreateFrame, GetCursorPosition, GetCVar, GetScreenHeight, GetScreenWidth, PlaySound = _G.CreateFrame, _G.GetCursorPosition, _G.GetCVar, _G.GetScreenHeight, _G.GetScreenWidth, _G.PlaySound

 -- ----------------------------------------------------------------------------
-local WRONG_VERSION = "LibUIDropDownMenu-1.07.7030024931"
-local MAJOR_VERSION = "LibUIDropDownMenu"
-local MINOR_VERSION = 90000 + tonumber(("$Rev: 36 $"):match("%d+"))
+local MAJOR_VERSION = "LibUIDropDownMenu-2.0"
+local MINOR_VERSION = 90000 + tonumber(("$Rev: 40 $"):match("%d+"))

 local LibStub = _G.LibStub
 if not LibStub then error(MAJOR_VERSION .. " requires LibStub.") end
-local wronglib = LibStub:NewLibrary(WRONG_VERSION, MINOR_VERSION)
 local lib = LibStub:NewLibrary(MAJOR_VERSION, MINOR_VERSION)
 if not lib then return end

 -- //////////////////////////////////////////////////////////////
-L_UIDROPDOWNMENU_MINBUTTONS = 8;
-L_UIDROPDOWNMENU_MAXBUTTONS = 8;
+L_UIDROPDOWNMENU_MAXBUTTONS = 1;
 L_UIDROPDOWNMENU_MAXLEVELS = 2;
 L_UIDROPDOWNMENU_BUTTON_HEIGHT = 16;
 L_UIDROPDOWNMENU_BORDER_HEIGHT = 15;
@@ -83,7 +80,332 @@ function L_UIDropDownMenu_InitializeHelper (frame)
 	frame:SetHeight(L_UIDROPDOWNMENU_BUTTON_HEIGHT * 2);
 end

--- added since 8.0.1.26433
+-- //////////////////////////////////////////////////////////////
+-- L_UIDropDownMenuButtonTemplate
+local function create_UIDropDownMenuButton(name, parent)
+	local f = CreateFrame("Button", name, parent or nil)
+    f:SetWidth(100)
+    f:SetHeight(16)
+    f:SetFrameLevel(f:GetParent():GetFrameLevel()+2)
+
+	f.Highlight = f:CreateTexture(name.."Highlight", "BACKGROUND")
+	f.Highlight:SetTexture("Interface\\QuestFrame\\UI-QuestTitleHighlight")
+	f.Highlight:SetBlendMode("ADD")
+	f.Highlight:SetAllPoints()
+	f.Highlight:Hide()
+
+	f.Check = f:CreateTexture(name.."Check", "ARTWORK")
+	f.Check:SetTexture("Interface\\Common\\UI-DropDownRadioChecks")
+	f.Check:SetSize(16, 16)
+	f.Check:SetPoint("LEFT", f, 0, 0)
+	f.Check:SetTexCoord(0, 0.5, 0.5, 1)
+
+	f.UnCheck = f:CreateTexture(name.."UnCheck", "ARTWORK")
+	f.UnCheck:SetTexture("Interface\\Common\\UI-DropDownRadioChecks")
+	f.UnCheck:SetSize(16, 16)
+	f.UnCheck:SetPoint("LEFT", f, 0, 0)
+	f.UnCheck:SetTexCoord(0.5, 1, 0.5, 1)
+
+	f.Icon = f:CreateTexture(name.."Icon", "ARTWORK")
+	f.Icon:SetSize(16, 16)
+	f.Icon:SetPoint("RIGHT", f, 0, 0)
+	f.Icon:Hide()
+
+	-- ColorSwatch
+	local fcw = CreateFrame("Button", name.."ColorSwatch", f)
+	fcw:SetSize(16, 16)
+	fcw:SetPoint("RIGHT", f, -6, 0)
+	fcw:Hide()
+	fcw.SwatchBg = fcw:CreateTexture(name.."ColorSwatchSwatchBg", "BACKGROUND")
+	fcw.SwatchBg:SetVertexColor(1, 1, 1)
+	fcw.SwatchBg:SetWidth(14)
+	fcw.SwatchBg:SetHeight(14)
+	fcw.SwatchBg:SetPoint("CENTER", fcw, 0, 0)
+	local button1NormalTexture = fcw:CreateTexture(name.."ColorSwatchNormalTexture")
+	button1NormalTexture:SetTexture("Interface\\ChatFrame\\ChatFrameColorSwatch")
+	button1NormalTexture:SetAllPoints()
+	fcw:SetNormalTexture(button1NormalTexture)
+	fcw:SetScript("OnClick", function(self, button, down)
+		CloseMenus()
+		L_UIDropDownMenuButton_OpenColorPicker(self:GetParent())
+	end)
+	fcw:SetScript("OnEnter", function(self, motion)
+		L_CloseDropDownMenus(self:GetParent():GetParent():GetID() + 1)
+		_G[self:GetName().."SwatchBg"]:SetVertexColor(NORMAL_FONT_COLOR.r, NORMAL_FONT_COLOR.g, NORMAL_FONT_COLOR.b)
+		L_UIDropDownMenu_StopCounting(self:GetParent():GetParent())
+	end)
+	fcw:SetScript("OnLeave", function(self, motion)
+		_G[self:GetName().."SwatchBg"]:SetVertexColor(HIGHLIGHT_FONT_COLOR.r, HIGHLIGHT_FONT_COLOR.g, HIGHLIGHT_FONT_COLOR.b);
+		L_UIDropDownMenu_StartCounting(self:GetParent():GetParent())
+	end)
+	f.ColorSwatch = fcw
+
+	-- ExpandArrow
+	local fea = CreateFrame("Button", name.."ExpandArrow", f)
+	fea:SetSize(16, 16)
+	fea:SetPoint("RIGHT", f, 0, 0)
+	fea:Hide()
+	local button2NormalTexture = fea:CreateTexture(name.."ExpandArrowNormalTexture")
+	button2NormalTexture:SetTexture("Interface\\ChatFrame\\ChatFrameExpandArrow")
+	button2NormalTexture:SetAllPoints()
+	fea:SetNormalTexture(button2NormalTexture)
+	fea:SetScript("OnClick", function(self, button, down)
+		L_ToggleDropDownMenu(self:GetParent():GetParent():GetID() + 1, self:GetParent().value, nil, nil, nil, nil, self:GetParent().menuList, self)
+	end)
+	fea:SetScript("OnEnter", function(self, motion)
+		local level =  self:GetParent():GetParent():GetID() + 1
+		L_CloseDropDownMenus(level)
+		if self:IsEnabled() then
+			local listFrame = _G["L_DropDownList"..level];
+			if ( not listFrame or not listFrame:IsShown() or select(2, listFrame:GetPoint()) ~= self ) then
+				L_ToggleDropDownMenu(level, self:GetParent().value, nil, nil, nil, nil, self:GetParent().menuList, self)
+			end
+		end
+		L_UIDropDownMenu_StopCounting(self:GetParent():GetParent())
+	end)
+	fea:SetScript("OnLeave", function(self, motion)
+		L_UIDropDownMenu_StartCounting(self:GetParent():GetParent())
+	end)
+	f.ExpandArrow = fea
+
+	-- InvisibleButton
+	local fib = CreateFrame("Button", name.."InvisibleButton", f)
+	fib:Hide()
+	fib:SetPoint("TOPLEFT", f, 0, 0)
+	fib:SetPoint("BOTTOMLEFT", f, 0, 0)
+	fib:SetPoint("RIGHT", fcw, "LEFT", 0, 0)
+	fib:SetScript("OnEnter", function(self, motion)
+		L_UIDropDownMenuButtonInvisibleButton_OnEnter(self)
+	end)
+	fib:SetScript("OnLeave", function(self, motion)
+		L_UIDropDownMenuButtonInvisibleButton_OnLeave(self)
+	end)
+	f.invisibleButton = fib
+
+	-- UIDropDownMenuButton Scripts
+	f:SetScript("OnClick", function(self, button, down)
+		L_UIDropDownMenuButton_OnClick(self, button, down)
+	end)
+	f:SetScript("OnEnter", function(self, motion)
+		L_UIDropDownMenuButton_OnEnter(self)
+	end)
+	f:SetScript("OnLeave", function(self, motion)
+		L_UIDropDownMenuButton_OnLeave(self)
+	end)
+	f:SetScript("OnEnable", function(self)
+		self.invisibleButton:Hide()
+	end)
+	f:SetScript("OnDisable", function(self)
+		self.invisibleButton:Show()
+	end)
+
+	local text1 = f:CreateFontString(name.."NormalText")
+	f:SetFontString(text1)
+	text1:SetPoint("LEFT", f, -5, 0)
+	f:SetNormalFontObject("GameFontHighlightSmallLeft")
+	f:SetHighlightFontObject("GameFontHighlightSmallLeft")
+	f:SetDisabledFontObject("GameFontDisableSmallLeft")
+
+	return f
+end
+
+-- //////////////////////////////////////////////////////////////
+-- L_UIDropDownListTemplate
+local function creatre_UIDropDownList(name, parent)
+	local f = _G[name] or CreateFrame("Button", name)
+	f:SetParent(parent or nil)
+	f:Hide()
+	f:SetFrameStrata("DIALOG")
+	f:EnableMouse(true)
+
+	f.Backdrop = _G[name.."Backdrop"] or CreateFrame("Frame", name.."Backdrop", f)
+	f.Backdrop:SetAllPoints()
+	f.Backdrop:SetBackdrop({
+		bgFile = "Interface\\DialogFrame\\UI-DialogBox-Background-Dark",
+		edgeFile = "Interface\\DialogFrame\\UI-DialogBox-Border",
+		tile = true,
+		tileSize = 32,
+		edgeSize = 32,
+		insets = { left = 11, right = 12, top = 12, bottom = 9, },
+	})
+
+	f.MenuBackdrop= _G[name.."MenuBackdrop"] or CreateFrame("Frame", name.."MenuBackdrop", f)
+	f.MenuBackdrop:SetAllPoints()
+	f.MenuBackdrop:SetBackdrop({
+		bgFile = "Interface\\Tooltips\\UI-Tooltip-Background",
+		edgeFile = "Interface\\Tooltips\\UI-Tooltip-Border",
+		tile = true,
+		tileSize = 16,
+		edgeSize = 16,
+		insets = { left = 5, right = 4, top = 4, bottom = 4, },
+	})
+	f.MenuBackdrop:SetBackdropBorderColor(TOOLTIP_DEFAULT_COLOR.r, TOOLTIP_DEFAULT_COLOR.g, TOOLTIP_DEFAULT_COLOR.b)
+	f.MenuBackdrop:SetBackdropColor(TOOLTIP_DEFAULT_BACKGROUND_COLOR.r, TOOLTIP_DEFAULT_BACKGROUND_COLOR.g, TOOLTIP_DEFAULT_BACKGROUND_COLOR.b)
+
+	f.Button1 = _G[name.."Button1"] or create_UIDropDownMenuButton(name.."Button1", f)
+	f.Button1:SetID(1)
+
+	f:SetScript("OnClick", function(self)
+		self:Hide()
+	end)
+	f:SetScript("OnEnter", function(self, motion)
+		L_UIDropDownMenu_StopCounting(self, motion)
+	end)
+	f:SetScript("OnLeave", function(self, motion)
+		L_UIDropDownMenu_StartCounting(self, motion)
+	end)
+	f:SetScript("OnUpdate", function(self, elapsed)
+		L_UIDropDownMenu_OnUpdate(self, elapsed)
+	end)
+	f:SetScript("OnShow", function(self)
+		for i=1, L_UIDROPDOWNMENU_MAXBUTTONS do
+			if (not self.noResize) then
+				_G[self:GetName().."Button"..i]:SetWidth(self.maxWidth);
+			end
+		end
+		if (not self.noResize) then
+			self:SetWidth(self.maxWidth+25);
+		end
+		self.showTimer = nil;
+		if ( self:GetID() > 1 ) then
+			self.parent = _G["L_DropDownList"..(self:GetID() - 1)];
+		end
+	end)
+	f:SetScript("OnHide", function(self)
+		L_UIDropDownMenu_OnHide(self)
+	end)
+
+	return f
+end
+
+-- //////////////////////////////////////////////////////////////
+-- L_UIDropDownMenuTemplate
+local function create_UIDropDownMenu(name, parent)
+	local f
+	if type(name) == "table" then
+		f = name
+		name = f:GetName()
+	else
+		f = CreateFrame("Frame", name, parent or nil)
+	end
+	f:SetSize(40, 32)
+
+	f.Left = f:CreateTexture(name.."Left", "ARTWORK")
+	f.Left:SetTexture("Interface\\Glues\\CharacterCreate\\CharacterCreate-LabelFrame")
+	f.Left:SetSize(25, 64)
+	f.Left:SetPoint("TOPLEFT", f, 0, 17)
+	f.Left:SetTexCoord(0, 0.1953125, 0, 1)
+
+	f.Middle = f:CreateTexture(name.."Middle", "ARTWORK")
+	f.Middle:SetTexture("Interface\\Glues\\CharacterCreate\\CharacterCreate-LabelFrame")
+	f.Middle:SetSize(115, 64)
+	f.Middle:SetPoint("LEFT", f.Left, "RIGHT")
+	f.Middle:SetTexCoord(0.1953125, 0.8046875, 0, 1)
+
+	f.Right = f:CreateTexture(name.."Right", "ARTWORK")
+	f.Right:SetTexture("Interface\\Glues\\CharacterCreate\\CharacterCreate-LabelFrame")
+	f.Right:SetSize(25, 64)
+	f.Right:SetPoint("LEFT", f.Middle, "RIGHT")
+	f.Right:SetTexCoord(0.8046875, 1, 0, 1)
+
+	f.Text = f:CreateFontString(name.."Text", "ARTWORK", "GameFontHighlightSmall")
+	f.Text:SetWordWrap(false)
+	f.Text:SetJustifyH("RIGHT")
+	f.Text:SetSize(0, 10)
+	f.Text:SetPoint("RIGHT", f.Right, -43, 2)
+
+	f.Icon = f:CreateTexture(name.."Icon", "OVERLAY")
+	f.Icon:Hide()
+	f.Icon:SetSize(16, 16)
+	f.Icon:SetPoint("LEFT", 30, 2)
+
+	f.Button = CreateFrame("Button", name.."Button", f)
+	f.Button:SetMotionScriptsWhileDisabled(true)
+	f.Button:SetSize(24, 24)
+	f.Button:SetPoint("TOPRIGHT", f.Right, -16, -18)
+
+	f.Button.NormalTexture = f.Button:CreateTexture(name.."NormalTexture")
+	f.Button.NormalTexture:SetTexture("Interface\\ChatFrame\\UI-ChatIcon-ScrollDown-Up")
+	f.Button.NormalTexture:SetSize(24, 24)
+	f.Button.NormalTexture:SetPoint("RIGHT", f.Button, 0, 0)
+	f.Button:SetNormalTexture(f.Button.NormalTexture)
+
+	f.Button.PushedTexture = f.Button:CreateTexture(name.."PushedTexture")
+	f.Button.PushedTexture:SetTexture("Interface\\ChatFrame\\UI-ChatIcon-ScrollDown-Down")
+	f.Button.PushedTexture:SetSize(24, 24)
+	f.Button.PushedTexture:SetPoint("RIGHT", f.Button, 0, 0)
+	f.Button:SetPushedTexture(f.Button.PushedTexture)
+
+	f.Button.DisabledTexture = f.Button:CreateTexture(name.."DisabledTexture")
+	f.Button.DisabledTexture:SetTexture("Interface\\ChatFrame\\UI-ChatIcon-ScrollDown-Disabled")
+	f.Button.DisabledTexture:SetSize(24, 24)
+	f.Button.DisabledTexture:SetPoint("RIGHT", f.Button, 0, 0)
+	f.Button:SetDisabledTexture(f.Button.DisabledTexture)
+
+	f.Button.HighlightTexture = f.Button:CreateTexture(name.."HighlightTexture")
+	f.Button.HighlightTexture:SetTexture("Interface\\Buttons\\UI-Common-MouseHilight")
+	f.Button.HighlightTexture:SetSize(24, 24)
+	f.Button.HighlightTexture:SetPoint("RIGHT", f.Button, 0, 0)
+	f.Button.HighlightTexture:SetBlendMode("ADD")
+	f.Button:SetHighlightTexture(f.Button.HighlightTexture)
+
+	-- Button Script
+	f.Button:SetScript("OnEnter", function(self, motion)
+		local parent = self:GetParent()
+		local myscript = parent:GetScript("OnEnter")
+		if(myscript ~= nil) then
+			myscript(parent)
+		end
+	end)
+	f.Button:SetScript("OnLeave", function(self, motion)
+		local parent = self:GetParent()
+		local myscript = parent:GetScript("OnLeave")
+		if(myscript ~= nil) then
+			myscript(parent)
+		end
+	end)
+	f.Button:SetScript("OnClick", function(self, button, down)
+		L_ToggleDropDownMenu(nil, nil, self:GetParent())
+		PlaySound(SOUNDKIT.IG_MAINMENU_OPTION_CHECKBOX_ON)
+	end)
+
+	-- UIDropDownMenu Script
+	f:SetScript("OnHide", function(self)
+		L_CloseDropDownMenus()
+	end)
+
+	return f
+end
+-- End of frame templates
+-- //////////////////////////////////////////////////////////////
+
+-- //////////////////////////////////////////////////////////////
+-- Handling two frames from LibUIDropDownMenu.xml
+local L_DropDownList1, L_DropDownList2
+do
+	L_DropDownList1 = creatre_UIDropDownList("L_DropDownList1")
+	L_DropDownList1:SetToplevel(true)
+	L_DropDownList1:SetFrameStrata("FULLSCREEN_DIALOG")
+	L_DropDownList1:Hide()
+	L_DropDownList1:SetID(1)
+	L_DropDownList1:SetSize(180, 10)
+	local fontName, fontHeight, fontFlags = _G["L_DropDownList1Button1NormalText"]:GetFont()
+	L_UIDROPDOWNMENU_DEFAULT_TEXT_HEIGHT = fontHeight
+
+	L_DropDownList2 = creatre_UIDropDownList("L_DropDownList2")
+	L_DropDownList2:SetToplevel(true)
+	L_DropDownList2:SetFrameStrata("FULLSCREEN_DIALOG")
+	L_DropDownList2:Hide()
+	L_DropDownList2:SetID(2)
+	L_DropDownList2:SetSize(180, 10)
+end
+
+-- //////////////////////////////////////////////////////////////
+-- Global function to replace L_UIDropDownMenuTemplate
+function L_Create_UIDropDownMenu(name, parent)
+    return create_UIDropDownMenu(name, parent)
+end
+
 local function GetChild(frame, name, key)
 	if (frame[key]) then
 		return frame[key];
@@ -309,37 +631,24 @@ info.icon = [TEXTURE] -- An icon for the button.
 info.mouseOverIcon = [TEXTURE] -- An override icon when a button is moused over.
 ]]

-local L_UIDropDownMenu_ButtonInfo = {};
-
---Until we get around to making this betterz...
---local UIDropDownMenu_SecureInfo = {};
-
---local wipe = table.wipe;
-
 function L_UIDropDownMenu_CreateInfo()
-	-- Reuse the same table to prevent memory churn
-
---	if ( issecure() ) then
---		securecall(wipe, UIDropDownMenu_SecureInfo);
---		return UIDropDownMenu_SecureInfo;
---	else
-		return wipe(L_UIDropDownMenu_ButtonInfo);
---	end
+	return {};
 end

 function L_UIDropDownMenu_CreateFrames(level, index)
-
 	while ( level > L_UIDROPDOWNMENU_MAXLEVELS ) do
 		L_UIDROPDOWNMENU_MAXLEVELS = L_UIDROPDOWNMENU_MAXLEVELS + 1;
-		local newList = CreateFrame("Button", "L_DropDownList"..L_UIDROPDOWNMENU_MAXLEVELS, nil, "L_UIDropDownListTemplate");
+		--local newList = CreateFrame("Button", "L_DropDownList"..L_UIDROPDOWNMENU_MAXLEVELS, nil, "L_UIDropDownListTemplate");
+		local newList = creatre_UIDropDownList("L_DropDownList"..L_UIDROPDOWNMENU_MAXLEVELS)
 		newList:SetFrameStrata("FULLSCREEN_DIALOG");
 		newList:SetToplevel(true);
 		newList:Hide();
 		newList:SetID(L_UIDROPDOWNMENU_MAXLEVELS);
 		newList:SetWidth(180)
 		newList:SetHeight(10)
-		for i=L_UIDROPDOWNMENU_MINBUTTONS+1, L_UIDROPDOWNMENU_MAXBUTTONS do
-			local newButton = CreateFrame("Button", "L_DropDownList"..L_UIDROPDOWNMENU_MAXLEVELS.."Button"..i, newList, "L_UIDropDownMenuButtonTemplate");
+		for i=1, L_UIDROPDOWNMENU_MAXBUTTONS do
+			--local newButton = CreateFrame("Button", "L_DropDownList"..L_UIDROPDOWNMENU_MAXLEVELS.."Button"..i, newList, "L_UIDropDownMenuButtonTemplate");
+			local newButton = create_UIDropDownMenuButton("L_DropDownList"..L_UIDROPDOWNMENU_MAXLEVELS.."Button"..i, newList)
 			newButton:SetID(i);
 		end
 	end
@@ -347,42 +656,39 @@ function L_UIDropDownMenu_CreateFrames(level, index)
 	while ( index > L_UIDROPDOWNMENU_MAXBUTTONS ) do
 		L_UIDROPDOWNMENU_MAXBUTTONS = L_UIDROPDOWNMENU_MAXBUTTONS + 1;
 		for i=1, L_UIDROPDOWNMENU_MAXLEVELS do
-			local newButton = CreateFrame("Button", "L_DropDownList"..i.."Button"..L_UIDROPDOWNMENU_MAXBUTTONS, _G["L_DropDownList"..i], "L_UIDropDownMenuButtonTemplate");
+			--local newButton = CreateFrame("Button", "L_DropDownList"..i.."Button"..L_UIDROPDOWNMENU_MAXBUTTONS, _G["L_DropDownList"..i], "L_UIDropDownMenuButtonTemplate");
+			local newButton = create_UIDropDownMenuButton("L_DropDownList"..i.."Button"..L_UIDROPDOWNMENU_MAXBUTTONS, _G["L_DropDownList"..i])
 			newButton:SetID(L_UIDROPDOWNMENU_MAXBUTTONS);
 		end
 	end
 end

-local separatorInfo;
-
 function L_UIDropDownMenu_AddSeparator(level)
-	if not separatorInfo then
-		separatorInfo =	{
-			hasArrow = false;
-			dist = 0;
-			isTitle = true;
-			isUninteractable = true;
-			notCheckable = true;
-			iconOnly = true;
-			icon = "Interface\\Common\\UI-TooltipDivider-Transparent";
-			tCoordLeft = 0;
-			tCoordRight = 1;
-			tCoordTop = 0;
-			tCoordBottom = 1;
-			tSizeX = 0;
-			tSizeY = 8;
-			tFitDropDownSizeX = true;
-			iconInfo = {
-				tCoordLeft = 0,
-				tCoordRight = 1,
-				tCoordTop = 0,
-				tCoordBottom = 1,
-				tSizeX = 0,
-				tSizeY = 8,
-				tFitDropDownSizeX = true
-			},
-		};
-	end
+	local separatorInfo = {
+		hasArrow = false;
+		dist = 0;
+		isTitle = true;
+		isUninteractable = true;
+		notCheckable = true;
+		iconOnly = true;
+		icon = "Interface\\Common\\UI-TooltipDivider-Transparent";
+		tCoordLeft = 0;
+		tCoordRight = 1;
+		tCoordTop = 0;
+		tCoordBottom = 1;
+		tSizeX = 0;
+		tSizeY = 8;
+		tFitDropDownSizeX = true;
+		iconInfo = {
+			tCoordLeft = 0,
+			tCoordRight = 1,
+			tCoordTop = 0,
+			tCoordBottom = 1,
+			tSizeX = 0,
+			tSizeY = 8,
+			tFitDropDownSizeX = true
+		},
+	};

 	L_UIDropDownMenu_AddButton(separatorInfo, level);
 end
@@ -657,7 +963,7 @@ function L_UIDropDownMenu_AddButton(info, level)
 	else
 		_G[listFrameName.."Button"..index.."Check"]:Hide();
 		_G[listFrameName.."Button"..index.."UnCheck"]:Hide();
-	end
+	end
 	button.checked = info.checked;

 	-- If has a colorswatch, show it and vertex color it
@@ -761,7 +1067,6 @@ function L_UIDropDownMenu_GetButtonWidth(button)
 end

 function L_UIDropDownMenu_Refresh(frame, useValue, dropdownLevel)
-	local button, checked, checkImage, uncheckImage, normalText, width;
 	local maxWidth = 0;
 	local somethingChecked = nil;
 	if ( not dropdownLevel ) then
@@ -772,8 +1077,8 @@ function L_UIDropDownMenu_Refresh(frame, useValue, dropdownLevel)
 	listFrame.numButtons = listFrame.numButtons or 0;
 	-- Just redraws the existing menu
 	for i=1, L_UIDROPDOWNMENU_MAXBUTTONS do
-		button = _G["L_DropDownList"..dropdownLevel.."Button"..i];
-		checked = nil;
+		local button = _G["L_DropDownList"..dropdownLevel.."Button"..i];
+		local checked = nil;

 		if(i <= listFrame.numButtons) then
 			-- See if checked or not
@@ -797,8 +1102,8 @@ function L_UIDropDownMenu_Refresh(frame, useValue, dropdownLevel)

 		if not button.notCheckable and button:IsShown() then
 			-- If checked show check image
-			checkImage = _G["L_DropDownList"..dropdownLevel.."Button"..i.."Check"];
-			uncheckImage = _G["L_DropDownList"..dropdownLevel.."Button"..i.."UnCheck"];
+			local checkImage = _G["L_DropDownList"..dropdownLevel.."Button"..i.."Check"];
+			local uncheckImage = _G["L_DropDownList"..dropdownLevel.."Button"..i.."UnCheck"];
 			if ( checked ) then
 				somethingChecked = true;
 				local icon = GetChild(frame, frame:GetName(), "Icon");
@@ -822,7 +1127,7 @@ function L_UIDropDownMenu_Refresh(frame, useValue, dropdownLevel)
 		end

 		if ( button:IsShown() ) then
-			width = L_UIDropDownMenu_GetButtonWidth(button);
+			local width = L_UIDropDownMenu_GetButtonWidth(button);
 			if ( width > maxWidth ) then
 				maxWidth = width;
 			end
@@ -833,7 +1138,7 @@ function L_UIDropDownMenu_Refresh(frame, useValue, dropdownLevel)
 	end
 	if (not frame.noResize) then
 		for i=1, L_UIDROPDOWNMENU_MAXBUTTONS do
-			button = _G["L_DropDownList"..dropdownLevel.."Button"..i];
+			local button = _G["L_DropDownList"..dropdownLevel.."Button"..i];
 			button:SetWidth(maxWidth);
 		end
 		L_UIDropDownMenu_RefreshDropDownSize(_G["L_DropDownList"..dropdownLevel]);
@@ -902,9 +1207,9 @@ function L_UIDropDownMenu_GetSelectedID(frame)
 		return frame.selectedID;
 	else
 		-- If no explicit selectedID then try to send the id of a selected value or name
-		local button;
-		for i=1, L_UIDROPDOWNMENU_MAXBUTTONS do
-			button = _G["L_DropDownList"..L_UIDROPDOWNMENU_MENU_LEVEL.."Button"..i];
+		local listFrame = _G["L_DropDownList"..L_UIDROPDOWNMENU_MENU_LEVEL];
+		for i=1, listFrame.numButtons do
+			local button = _G["L_DropDownList"..L_UIDROPDOWNMENU_MENU_LEVEL.."Button"..i];
 			-- See if checked or not
 			if ( L_UIDropDownMenu_GetSelectedName(frame) ) then
 				if ( button:GetText() == L_UIDropDownMenu_GetSelectedName(frame) ) then
@@ -1329,7 +1634,7 @@ function L_UIDropDownMenuButton_OpenColorPicker(self, button)
 		button = self;
 	end
 	L_UIDROPDOWNMENU_MENU_VALUE = button.value;
-	OpenColorPicker(button); --remains shared through color picker frame
+	L_OpenColorPicker(button);
 end

 function L_UIDropDownMenu_DisableButton(level, id)
@@ -1393,7 +1698,7 @@ function L_UIDropDownMenu_GetValue(id)
 	end
 end

---[[function OpenColorPicker(info) --ColorPicker stuff not changed
+function L_OpenColorPicker(info)
 	ColorPickerFrame.func = info.swatchFunc;
 	ColorPickerFrame.hasOpacity = info.hasOpacity;
 	ColorPickerFrame.opacityFunc = info.opacityFunc;
@@ -1406,6 +1711,6 @@ end
 	ShowUIPanel(ColorPickerFrame);
 end

-function ColorPicker_GetPreviousValues()
+function L_ColorPicker_GetPreviousValues()
 	return ColorPickerFrame.previousValues.r, ColorPickerFrame.previousValues.g, ColorPickerFrame.previousValues.b;
-end]]
+end
diff --git a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.xml b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.xml
index 13a3944..dc97e9d 100755
--- a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.xml
+++ b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.xml
@@ -1,9 +1,10 @@
-<!-- $Id: LibUIDropDownMenu.xml 13 2017-05-25 04:26:27Z arith $ -->
+<!-- $Id: LibUIDropDownMenu.xml 40 2018-12-23 16:14:03Z arith $ -->
 <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/
 ..\FrameXML\UI.xsd">
 	<Script file="LibUIDropDownMenu.lua"/>
 	<Include file="LibUIDropDownMenuTemplates.xml"/>
 	<Script file="LibEasyMenu.lua"/>
+<!--
 	<Button name="L_DropDownList1" toplevel="true" frameStrata="FULLSCREEN_DIALOG" inherits="L_UIDropDownListTemplate" hidden="true" id="1">
 		<Size>
 			<AbsDimension x="180" y="10"/>
@@ -20,4 +21,5 @@
 			<AbsDimension x="180" y="10"/>
 		</Size>
 	</Button>
+-->
 </Ui>
diff --git a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.lua b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.lua
index ca74b3d..615f41d 100755
--- a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.lua
+++ b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.lua
@@ -1,11 +1,11 @@
--- $Id: LibUIDropDownMenuTemplates.lua 30 2018-04-24 06:44:39Z arith $
+-- $Id: LibUIDropDownMenuTemplates.lua 40 2018-12-23 16:14:03Z arith $
 -- ----------------------------------------------------------------------------
 -- Localized Lua globals.
 -- ----------------------------------------------------------------------------
 local _G = getfenv(0)
 -- ----------------------------------------------------------------------------
-local MAJOR_VERSION = "LibUIDropDownMenuTemplates"
-local MINOR_VERSION = 90000 + tonumber(("$Rev: 30 $"):match("%d+"))
+local MAJOR_VERSION = "LibUIDropDownMenuTemplates-2.0"
+local MINOR_VERSION = 90000 + tonumber(("$Rev: 40 $"):match("%d+"))

 local LibStub = _G.LibStub
 if not LibStub then error(MAJOR_VERSION .. " requires LibStub.") end
@@ -55,3 +55,39 @@ end
 function L_UIDropDownCustomMenuEntryMixin:OnLeave()
 	L_UIDropDownMenu_StartCounting(self:GetOwningDropdown());
 end
+
+-- //////////////////////////////////////////////////////////////
+-- L_UIDropDownCustomMenuEntryTemplate
+function L_Create_UIDropDownCustomMenuEntry(name, parent)
+	local f = _G[name] or CreateFrame("Frame", name, parent or nil)
+	f:EnableMouse(true)
+	f:Hide()
+
+	f:SetScript("OnEnter", function(self)
+		L_UIDropDownMenu_StopCounting(self:GetOwningDropdown())
+	end)
+	f:SetScript("OnLeave", function(self)
+		L_UIDropDownMenu_StartCounting(self:GetOwningDropdown())
+	end)
+
+	-- I am not 100% sure if below works for replacing the mixins
+	f:SetScript("GetPreferredEntryWidth", function(self)
+		return self:GetWidth()
+	end)
+	f:SetScript("SetOwningButton", function(self, button)
+		self:SetParent(button:GetParent())
+		self.owningButton = button
+		self:OnSetOwningButton()
+	end)
+	f:SetScript("GetOwningDropdown", function(self)
+		return self.owningButton:GetParent()
+	end)
+	f:SetScript("SetContextData", function(self, contextData)
+		self.contextData = contextData
+	end)
+	f:SetScript("GetContextData", function(self)
+		return self.contextData
+	end)
+
+	return f
+end
diff --git a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.xml b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.xml
index 2ab55e6..c2ac300 100755
--- a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.xml
+++ b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenuTemplates.xml
@@ -1,14 +1,14 @@
-<!-- $Id: LibUIDropDownMenuTemplates.xml 34 2018-07-25 13:26:33Z arith $ -->
+<!-- $Id: LibUIDropDownMenuTemplates.xml 40 2018-12-23 16:14:03Z arith $ -->
 <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/
 ..\FrameXML\UI.xsd">
 	<Include file="LibUIDropDownMenuTemplates.lua"/>
+<!--
 	<Frame name="L_UIDropDownCustomMenuEntryTemplate" enableMouse="true" hidden="true" mixin="L_UIDropDownCustomMenuEntryMixin" virtual="true">
 		<Scripts>
 			<OnEnter method="OnEnter"/>
 			<OnLeave method="OnLeave"/>
 		</Scripts>
 	</Frame>
-
 	<Button name="L_UIDropDownMenuButtonTemplate" virtual="true">
 		<Size x="100" y="16"/>
 		<Layers>
@@ -170,7 +170,6 @@
 		<HighlightFont style="GameFontHighlightSmallLeft"/>
 		<DisabledFont style="GameFontDisableSmallLeft"/>
 	</Button>
-
 	<Button name="L_UIDropDownListTemplate" hidden="true" frameStrata="DIALOG" enableMouse="true" virtual="true">
 		<Frames>
 			<Frame name="$parentBackdrop" setAllPoints="true">
@@ -206,13 +205,6 @@
 				</Scripts>
 			</Frame>
 			<Button name="$parentButton1" inherits="L_UIDropDownMenuButtonTemplate" id="1"/>
-			<Button name="$parentButton2" inherits="L_UIDropDownMenuButtonTemplate" id="2"/>
-			<Button name="$parentButton3" inherits="L_UIDropDownMenuButtonTemplate" id="3"/>
-			<Button name="$parentButton4" inherits="L_UIDropDownMenuButtonTemplate" id="4"/>
-			<Button name="$parentButton5" inherits="L_UIDropDownMenuButtonTemplate" id="5"/>
-			<Button name="$parentButton6" inherits="L_UIDropDownMenuButtonTemplate" id="6"/>
-			<Button name="$parentButton7" inherits="L_UIDropDownMenuButtonTemplate" id="7"/>
-			<Button name="$parentButton8" inherits="L_UIDropDownMenuButtonTemplate" id="8"/>
 		</Frames>
 		<Scripts>
 			<OnClick>
@@ -246,7 +238,6 @@
 			</OnHide>
 		</Scripts>
 	</Button>
-
 	<Frame name="L_UIDropDownMenuTemplate" virtual="true">
 		<Size>
 			<AbsDimension x="40" y="32"/>
@@ -382,4 +373,5 @@
 			</OnHide>
 		</Scripts>
 	</Frame>
+-->
 </Ui>
diff --git a/TitanBag/TitanBag.toc b/TitanBag/TitanBag.toc
index 89aebc5..b10d32f 100644
--- a/TitanBag/TitanBag.toc
+++ b/TitanBag/TitanBag.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fBag|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fBag|r] |cff00aa005.16.0.80100|r
 ## Notes: Adds bag and free slot information to Titan Panel
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables:
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanBag.xml
diff --git a/TitanClock/TitanClock.toc b/TitanClock/TitanClock.toc
index 1769e94..91ba6d8 100644
--- a/TitanClock/TitanClock.toc
+++ b/TitanClock/TitanClock.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fClock|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fClock|r] |cff00aa005.16.0.80100|r
 ## Notes: Adds a clock to Titan Panel
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables:
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanClock.xml
diff --git a/TitanGold/TitanGold.toc b/TitanGold/TitanGold.toc
index f7c3752..7265fbd 100644
--- a/TitanGold/TitanGold.toc
+++ b/TitanGold/TitanGold.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fGold|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fGold|r] |cff00aa005.16.0.80100|r
 ## Notes: Keeps track of all gold held by a player's toons on a per server/faction basis.
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables: GoldSave
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanGold.xml
diff --git a/TitanLocation/TitanLocation.lua b/TitanLocation/TitanLocation.lua
index dc85e9d..c0c5216 100755
--- a/TitanLocation/TitanLocation.lua
+++ b/TitanLocation/TitanLocation.lua
@@ -16,6 +16,7 @@ local updateTable = {TITAN_LOCATION_ID, TITAN_PANEL_UPDATE_BUTTON};
 local L = LibStub("AceLocale-3.0"):GetLocale("Titan", true)
 local AceTimer = LibStub("AceTimer-3.0")
 local LocationTimer = nil;
+local LocOnMiniMap = false;
 -- ******************************** Functions *******************************

 -- **************************************************************************
@@ -186,9 +187,9 @@ end
 -- **************************************************************************
 function TitanPanelLocationButton_OnEvent(self, event, ...)
 	if event == "PLAYER_ENTERING_WORLD" then
-		if not TitanGetVar(TITAN_LOCATION_ID, "ShowLocOnMiniMap") and MinimapBorderTop and MinimapBorderTop:IsShown() then
-			TitanPanelLocationButton_LocOnMiniMap()
-		end
+--		if not TitanGetVar(TITAN_LOCATION_ID, "ShowLocOnMiniMap") and MinimapBorderTop and MinimapBorderTop:IsShown() then
+--			TitanPanelLocationButton_LocOnMiniMap()
+--		end
 	end
 	if TitanGetVar(TITAN_LOCATION_ID, "UpdateWorldmap") then
 		local mapID = C_Map.GetBestMapForUnit("player")
@@ -203,6 +204,10 @@ end

 -- function to throttle down unnecessary updates
 function TitanPanelLocationButton_CheckForUpdate()
+	if not LocOnMiniMap and not TitanGetVar(TITAN_LOCATION_ID, "ShowLocOnMiniMap") and MinimapBorderTop and MinimapBorderTop:IsShown() then
+		TitanPanelLocationButton_LocOnMiniMap()
+		local LocOnMiniMap = true;
+	end
 	local mapID = C_Map.GetBestMapForUnit("player")
 	local tempx, tempy = TitanPanelGetPlayerMapPosition();
 	if tempx ~= cachedX or tempy ~= cachedY then
@@ -558,4 +563,4 @@ function TitanPanelLocation_CreateMapFrames()
 		end
 	end);

-end
\ No newline at end of file
+end
diff --git a/TitanLocation/TitanLocation.toc b/TitanLocation/TitanLocation.toc
index 3d89c26..a28dbe9 100644
--- a/TitanLocation/TitanLocation.toc
+++ b/TitanLocation/TitanLocation.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fLocation|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fLocation|r] |cff00aa005.16.0.80100|r
 ## Notes: Adds coordinates and location information to Titan Panel
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables:
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanLocation.xml
diff --git a/TitanLootType/TitanLootType.toc b/TitanLootType/TitanLootType.toc
index 3c9e41c..106b447 100644
--- a/TitanLootType/TitanLootType.toc
+++ b/TitanLootType/TitanLootType.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fLootType|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fLootType|r] |cff00aa005.16.0.80100|r
 ## Notes: Adds group loot and instance difficulty information to Titan Panel
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables:
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanLootType.xml
diff --git a/TitanPerformance/TitanPerformance.toc b/TitanPerformance/TitanPerformance.toc
index 18a2004..28b987b 100644
--- a/TitanPerformance/TitanPerformance.toc
+++ b/TitanPerformance/TitanPerformance.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fPerformance|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fPerformance|r] |cff00aa005.16.0.80100|r
 ## Notes: Adds FPS and Garbage collection information to Titan Panel
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables:
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanPerformance.xml
diff --git a/TitanRepair/TitanRepair.toc b/TitanRepair/TitanRepair.toc
index 2d4c846..0c22f8a 100644
--- a/TitanRepair/TitanRepair.toc
+++ b/TitanRepair/TitanRepair.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fRepair|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fRepair|r] |cff00aa005.16.0.80100|r
 ## Notes: Provides a configurable durability display. Also adds the ability to auto repair items and inventory at vendors
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables:
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanRepair.xml
diff --git a/TitanVolume/TitanVolume.toc b/TitanVolume/TitanVolume.toc
index b5d0d7a..0830d4c 100644
--- a/TitanVolume/TitanVolume.toc
+++ b/TitanVolume/TitanVolume.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fVolume|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fVolume|r] |cff00aa005.16.0.80100|r
 ## Notes: Adds a volume control icon on your Titan Bar
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables:
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanVolume.xml
diff --git a/TitanXP/TitanXP.toc b/TitanXP/TitanXP.toc
index 17f3c5e..ed61c26 100644
--- a/TitanXP/TitanXP.toc
+++ b/TitanXP/TitanXP.toc
@@ -1,10 +1,10 @@
 ## Interface: 80100
-## Title: Titan Panel [|cffeda55fXP|r] |cff00aa005.15.3.80100|r
+## Title: Titan Panel [|cffeda55fXP|r] |cff00aa005.16.0.80100|r
 ## Notes: Adds information to Titan Panel about XP earned and time to level
 ## Author: Titan Development Team (http://www.titanpanel.org)
 ## SavedVariables:
 ## OptionalDeps:
 ## Dependencies: Titan
-## Version: 5.15.3.80100
+## Version: 5.16.0.80100
 ## X-Child-Of: Titan
 TitanXP.xml