Quantcast

Rework Options pannel layout

Tek Hudson [06-24-19 - 01:17]
Rework Options pannel layout
Filename
DruidBar.lua
DruidBar.xml
GUI.lua
GUI.xml
Options.lua
Options.xml
README.md
localization.lua
diff --git a/DruidBar.lua b/DruidBar.lua
index 18a2571..a8cd02d 100644
--- a/DruidBar.lua
+++ b/DruidBar.lua
@@ -222,41 +222,37 @@ function DruidBar_OnUpdate(self, elapsed)
 			end
 			notyet = true;
 		end
+
 		if lowregentimer > 0 then
 			lowregentimer = lowregentimer - elapsed;
 			if lowregentimer <= 0 then lowregentimer = 0; end
 		end
+
 		if UnitPowerType("player") ~= 0 then
 			fullmanatimer = fullmanatimer + elapsed;
 			if fullmanatimer > 6 and floor((DruidBarKey.keepthemana*100) / DruidBarKey.maxmana) > 90 then
 				DruidBarKey.keepthemana = DruidBarKey.maxmana;
 			end
 		end
+
+		-- Graphics ON
 		if DruidBarKey.Graphics then
-			if DruidBarKey.kmg then
-				dbarhide(DruidBarFrame);
-				dbarhide(DruidBarReplaceText);
-				DruidBar_KMGraphics();
+			if DruidBarKey.Replace then
+				DruidBar_ReplaceGraphics();
 			else
-				dbarhide(DruidBarKMG);
-				if DruidBarKey.Replace then
-					DruidBar_ReplaceGraphics();
-				else
-					DruidBarMana:SetMinMaxValues(0, DruidBarKey.maxmana);
-					DruidBarMana:SetValue(DruidBarKey.keepthemana);
-					if timer > 2 then DruidBar_ColorAndStrataAndTexture(); timer = 0; end
-					DruidBar_MainGraphics();
-				end
+				DruidBarMana:SetMinMaxValues(0, DruidBarKey.maxmana);
+				DruidBarMana:SetValue(DruidBarKey.keepthemana);
+				if timer > 2 then DruidBar_ColorAndStrataAndTexture(); timer = 0; end
+				DruidBar_MainGraphics();
 			end
+		--Graphics OFF
 		else
 			dbarhide(DruidBarFrame);
 			dbarhide(DruidBarReplaceText);
-			dbarhide(DruidBarKMG);
 			if PlayerFrameManaBar:GetWidth() < 100 then PlayerFrameManaBar:SetWidth(120); end
 		end
 	else
 		dbarhide(DruidBarFrame);
-		dbarhide(DruidBarKMG);
 		dbarhide(DruidBarUpdateFrame);
 	end
 end
@@ -565,52 +561,6 @@ function DruidBar_ReplaceGraphics()
 	end
 end

-function DruidBar_KMGraphics()
-	if (MGplayer_ManaBar) then
-		dbarhide(DruidBarManaBg);
-		if UnitPowerType("player") == 0 then
-			MGplayer_ManaBar:SetWidth(MGplayer_HealthBar:GetWidth());
-			MGplayer_ManaBar:ClearAllPoints();
-			MGplayer_ManaBar:SetPoint("TOP","MGplayer_HealthBar","BOTTOM",0,-2);
-			DruidBarKMG:Hide();
-		else
-			local sub = 0;
-			if MG_Get("ShowEndcaps") == 1 then sub = 1; else sub = -1; end
-			KMGDruidBar:SetWidth(MGplayer_HealthBar:GetWidth() / 2 - sub);
-			KMGDruidBar:SetHeight(MGplayer_ManaBar:GetHeight());
-			MGplayer_ManaBar:SetWidth(MGplayer_HealthBar:GetWidth() / 2);
-			DruidBarKMG:Show();
-			DruidBarKMG:ClearAllPoints();
-			MGplayer_ManaBar:ClearAllPoints();
-			MGplayer_ManaBar:SetPoint("TOPLEFT","MGplayer_HealthBar","BOTTOMLEFT",0,-2);
-			local points = MGplayer_HealthBar:GetWidth() / 4 * 3;
-			if MG_Get("ShowEndcaps") == 1 then
-				dbarshow(KMGDruidBar_ManaEndcapRight);
-			else
-				dbarhide(KMGDruidBar_ManaEndcapRight);
-				if MGplayer_ManaBar:GetWidth() <= 92 then points = points - 1; else points = points - 1; end
-			end
-			DruidBarKMG:SetScale(MGplayer_HealthBar:GetScale());
-			DruidBarKMG:SetPoint("LEFT","MGplayer_ManaBar","LEFT", points, 0);
-			DruidBarKMG:SetFrameLevel("1");
-			KMGDruidBar:SetFrameLevel(MGplayer_ManaBar:GetFrameLevel());
-			KMGDruidBar:SetMinMaxValues(0, DruidBarKey.maxmana);
-			KMGDruidBar:SetValue(DruidBarKey.keepthemana);
-			if (DruidBarKey.Percent and MGplayer_HealthBar:GetWidth() <= 92) then
-				local curstat = (UnitPower("player") / UnitPowerMax("player") * 100);
-				local manstat = (floor(DruidBarKey.keepthemana / DruidBarKey.maxmana * 100)).."%";
-				MGplayer_ManaText:SetText(curstat.."/"..manstat);
-			elseif (MGplayer_HealthBar:GetWidth() <= 92) then
-				local curstat = UnitPower("player");
-				MGplayer_ManaText:SetText(curstat.."/"..floor(DruidBarKey.keepthemana));
-			end
-		end
-	else
-		DruidBarKMG:Hide();
-		DruidBarKey.kmg = nil;
-	end
-end
-
 --Text Parsing. Yay!
 function TextParse(InputString)
   --[[ By FERNANDO!
@@ -854,14 +804,6 @@ function DruidBar_Enable_ChatCommandHandler(text)
 				DruidBarKey.color[3] = tonumber(msg[4]);
 			end
 		end
-	elseif msg[1] == "kmg" then
-		if (MGplayer_ManaBar) then
-			DruidBarKey.kmg = DruidBar_Toggle(DruidBarKey.kmg, "Replacing the MiniGroup mana bar is");
-		else
-			DruidBarKey.kmg = nil;
-			DruidBar_Print("Can't replace MiniGroup if it don't exist, YO!");
-		end
-		DRUIDBAR_FrameSet();
 	elseif msg[1] == "debug" then
 		DruidBarKey.Debug = DruidBar_Toggle(DruidBarKey.Debug, "Debug options");
 		DRUIDBAR_FrameSet();
diff --git a/DruidBar.xml b/DruidBar.xml
index cbc36f9..de0453a 100644
--- a/DruidBar.xml
+++ b/DruidBar.xml
@@ -1,8 +1,9 @@
 <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="DruidBar.lua"/>
-	<Script file="GUI.lua"/>
+	<Script file="Options.lua"/>
 	<Script file="localization.lua"/>
-	<Include file="GUI.xml"/>
+
+	<Include file="Options.xml"/>
 	<GameTooltip name="DBarSpellCatch" frameStrata="TOOLTIP" inherits="GameTooltipTemplate"/>

 	<Frame name="DruidBarFrame" hidden="true" frameStrata="BACKGROUND" enableMouse="true" movable="true" parent="UIParent">
@@ -166,87 +167,4 @@
 			</Layer>
     </Layers>
   </Frame>
-
-	<Frame name="DruidBarKMG" frameStrata="LOW" enableMouse="true" movable="true" parent="UIParent" hidden="true">
-		<Size>
-			<AbsDimension x="1" y="18" />
-		</Size>
-
-		<Anchors>
-			<Anchor point="CENTER" relativeTo="UIParent" relativePoint="CENTER">
-				<Offset>
-					<AbsDimension x="0" y="0" />
-				</Offset>
-			</Anchor>
-		</Anchors>
-
-		<TitleRegion setAllPoints="true" />
-
-		<Frames>
-			<StatusBar name="KMGDruidBar" movable="true" inherits="TextStatusBar">
-				<Size>
-					<AbsDimension x="150" y="12" />
-				</Size>
-
-				<Anchors>
-					<Anchor point="CENTER" relativeTo="$Parent" relativePoint="CENTER">
-						<Offset>
-							<AbsDimension x="0" y="0" />
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Layers>
-					<Layer level="BACKGROUND">
-						<Texture name="$parent_ManaEndcapRight" file="Interface\AddOns\MiniGroup\Images\Endcap" hidden="false">
-							<Size>
-								<AbsDimension x="1" y="6"/>
-							</Size>
-
-							<Anchors>
-								<Anchor point="TOPLEFT" relativeTo="$parent" relativepoint="TOPRIGHT">
-									<Offset>
-										<AbsDimension x="0" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-
-							<TexCoords left="0" right="0.0625" top="0" bottom="0.875"/>
-						</Texture>
-					</Layer>
-				</Layers>
-
-				<BarTexture file="Interface\TargetingFrame\UI-StatusBar" />
-				<BarColor r="0" g="0" b="1" a="1" />
-
-				<Frames>
-					<Frame name="KMGDruidBarBackground">
-						<Scripts>
-							<OnLoad>DruidBarKMG:SetFrameLevel("1"); self:SetFrameLevel("1");</OnLoad>
-						</Scripts>
-
-						<Layers>
-							<Layer level="BACKGROUND">
-								<Texture name="KMGDruidBarLowerBackground1">
-									<Size>
-										<AbsDimension x="140" y="12" />
-									</Size>
-
-									<Anchors>
-										<Anchor point="CENTER" relativeTo="$Parent" relativePoint="CENTER">
-											<Offset>
-												<AbsDimension x="0" y="0" />
-											</Offset>
-										</Anchor>
-									</Anchors>
-
-									<Color r="0" g="0" b="0" a="0.5" />
-								</Texture>
-							</Layer>
-						</Layers>
-					</Frame>
-				</Frames>
-			</StatusBar>
-		</Frames>
-	</Frame>
 </Ui>
diff --git a/GUI.lua b/GUI.lua
deleted file mode 100644
index 5b96eeb..0000000
--- a/GUI.lua
+++ /dev/null
@@ -1,629 +0,0 @@
-function DRUIDBAROptionsFrame_Toggle()
-	if(DRUIDBAROptionsFrame:IsVisible()) then
-		DRUIDBAROptionsFrame:Hide();
-	else
-		DRUIDBAR_FrameSet();
-		DRUIDBAROptionsFrame:Show();
-	end
-end
-
-function DRUIDBAROptions_OnLoad()
-	UIPanelWindows['DRUIDBAROptionsFrame'] = {area = 'center', pushable = 0};
-end
-
-function DRUIDBAROptions_CheckWeight(self)
-	if ( DRUIDBAROptionsWeightEditBox:GetText() < "1" ) then
-		DRUIDBAROptionsWeightEditBox:SetText("1");
-		DruidBarKey.xvar = self:GetNumber();
-		DruidBarKey.tempW = DruidBarKey.xvar;
-	elseif( DRUIDBAROptionsWeightEditBox:GetText() > "9999" ) then
-		DRUIDBAROptionsWeightEditBox:SetText("9999");
-		DruidBarKey.xvar = self:GetNumber();
-		DruidBarKey.tempW = DruidBarKey.xvar;
-	else
-		DruidBarKey.xvar = self:GetNumber();
-		DruidBarKey.tempW = DruidBarKey.xvar;
-	end
-end
-
-function DRUIDBAROptions_CheckHeight(self)
-	if ( DRUIDBAROptionsHeightEditBox:GetText() < "1" ) then
-		DRUIDBAROptionsHeightEditBox:SetText("1");
-		DruidBarKey.yvar = self:GetNumber();
-		DruidBarKey.tempH = DruidBarKey.yvar;
-	elseif( DRUIDBAROptionsHeightEditBox:GetText() > "999" ) then
-		DRUIDBAROptionsHeightEditBox:SetText("999");
-		DruidBarKey.yvar = self:GetNumber();
-		DruidBarKey.tempH = DruidBarKey.yvar;
-	else
-		DruidBarKey.yvar = self:GetNumber();
-		DruidBarKey.tempH = DruidBarKey.yvar;
-	end
-end
-
-function DRUIDBAROptions_Toggle()
-	if(DruidBarKey.Enabled) then
-		DruidBarKey.Enabled = false;
-	else
-		DruidBarKey.Enabled = true;
-	end
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_Vis()
-	if(DruidBarKey.Graphics) then
-		DruidBarKey.Graphics = false;
-	else
-		DruidBarKey.Graphics = true;
-	end
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_KMG()
-	if(DruidBarKey.kmg) then
-		DruidBarKey.kmg = false;
-	else
-		DruidBarKey.kmg = true;
-	end
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_Replace()
-	DruidBarKey.Replace = true;
-	DruidBarKey.Player = false;
-	DruidBarKey.Lock = true;
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_Player()
-	DruidBarKey.Player = true;
-	DruidBarKey.xvar = 150;
-	DruidBarKey.yvar = 18;
-	DruidBarKey.Replace = false;
-	DruidBarKey.Lock = true;
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_Custom()
-	DruidBarKey.Replace = false;
-	DruidBarKey.Player = false;
-	DruidBarKey.Lock = false;
-	DruidBarKey.xvar = DruidBarKey.tempW;
-	DruidBarKey.yvar = DruidBarKey.tempH;
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_Lock()
-	if(DruidBarKey.Lock) then
-		DruidBarKey.Lock = false;
-	else
-		DruidBarKey.Lock = true;
-	end
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_Hide()
-	if(DruidBarKey.Hide) then
-		DruidBarKey.Hide = false;
-	else
-		DruidBarKey.Hide = true;
-	end
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_Full()
-	if(DruidBarKey.Full) then
-		DruidBarKey.Full = false;
-	else
-		DruidBarKey.Full = true;
-	end
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_Text_Initialize()
-	local info;
-	for i = 0, 2, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Text[i];
-		info.func = DRUIDBAROptions_Text_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_Text_OnShow()
-	-- Construct dropdown
-	UIDropDownMenu_Initialize(DRUIDBAROptionsTextDropDown, DRUIDBAROptions_Text_Initialize);
-
-	-- Sets initial value
-	if( DruidBarKey.Text == 0 ) then
-		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsTextDropDown, 1);
-	elseif( DruidBarKey.Text == 1 ) then
-		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsTextDropDown, 2);
-	elseif( DruidBarKey.Text == nil ) then
-		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsTextDropDown, 3);
-	end
-	UIDropDownMenu_SetWidth(DRUIDBAROptionsTextDropDown, 100);
-end
-
-function DRUIDBAROptions_Text_OnClick(self)
-	i = self:GetID();
-	UIDropDownMenu_SetSelectedID(DRUIDBAROptionsTextDropDown, i);
-
-	if(i == 1) then
-		DruidBarKey.Text = 0;
-	elseif(i == 2) then
-		DruidBarKey.Text = 1;
-	elseif(i == 3) then
-		DruidBarKey.Text = nil;
-	end
-end
-
-function DRUIDBAROptions_Percent_Initialize()
-	local info;
-	for i = 0, 2, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Percent[i];
-		info.func = DRUIDBAROptions_Percent_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_Percent_OnShow()
-	UIDropDownMenu_Initialize(DRUIDBAROptionsPercentDropDown, DRUIDBAROptions_Percent_Initialize);
-	if( DruidBarKey.Percent == 0 ) then
-		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsPercentDropDown, 1);
-	elseif( DruidBarKey.Percent == 1 ) then
-		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsPercentDropDown, 2);
-	elseif( DruidBarKey.Percent == nil ) then
-		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsPercentDropDown, 3);
-	end
-	UIDropDownMenu_SetWidth(DRUIDBAROptionsPercentDropDown, 112);
-end
-
-function DRUIDBAROptions_Percent_OnClick(self)
-	i = self:GetID();
-	UIDropDownMenu_SetSelectedID(DRUIDBAROptionsPercentDropDown, i);
-
-	if(i == 1) then
-		DruidBarKey.Percent = 0;
-	elseif(i == 2) then
-		DruidBarKey.Percent = 1;
-	elseif(i == 3) then
-		DruidBarKey.Percent = nil;
-	end
-end
-
-function DRUIDBAROptions_Message()
-	if(DruidBarKey.message) then
-		DruidBarKey.message = false;
-	else
-		DruidBarKey.message = true;
-	end
-	DRUIDBAR_FrameSet();
-end
-
-function DRUIDBAROptions_MessageBear_Initialize()
-	local info;
-	for i = 0, 3, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
-		info.func = DRUIDBAROptions_MessageBear_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_MessageBear_OnShow()
-		UIDropDownMenu_Initialize(Bear_Message, DRUIDBAROptions_MessageBear_Initialize);
-		if( DruidBarKey.BearMessage[2] == "SAY") then
-			UIDropDownMenu_SetSelectedID(Bear_Message, 1);
-		elseif( DruidBarKey.BearMessage[2] == "PARTY") then
-			UIDropDownMenu_SetSelectedID(Bear_Message, 2);
-		elseif( DruidBarKey.BearMessage[2] == "RAID") then
-			UIDropDownMenu_SetSelectedID(Bear_Message, 3);
-		elseif( DruidBarKey.BearMessage[2] == "EMOTE") then
-			UIDropDownMenu_SetSelectedID(Bear_Message, 4);
-		elseif( not DruidBarKey.BearMessage[2]) then
-			UIDropDownMenu_SetSelectedID(Bear_Message, 1);
-			DruidBarKey.BearMessage[2] = "SAY";
-		end
-	UIDropDownMenu_SetWidth(Bear_Message, 80);
-end
-
-function DRUIDBAROptions_MessageBear_OnClick()
-	i = self:GetID();
-	UIDropDownMenu_SetSelectedID(Bear_Message, i);
-
-	if(i == 1) then
-			DruidBarKey.BearMessage[2] = "SAY";
-	elseif(i == 2) then
-			DruidBarKey.BearMessage[2] = "PARTY";
-	elseif(i == 3) then
-			DruidBarKey.BearMessage[2] = "RAID";
-	elseif(i == 4) then
-			DruidBarKey.BearMessage[2] = "EMOTE";
-	end
-end
-
-function DRUIDBAROptions_MessageAqua_Initialize()
-	local info;
-	for i = 0, 3, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
-		info.func = DRUIDBAROptions_MessageAqua_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_MessageAqua_OnShow()
-		UIDropDownMenu_Initialize(Aqua_Message, DRUIDBAROptions_MessageAqua_Initialize);
-		if( DruidBarKey.AquaMessage[2] == "SAY") then
-			UIDropDownMenu_SetSelectedID(Aqua_Message, 1);
-		elseif( DruidBarKey.AquaMessage[2] == "PARTY") then
-			UIDropDownMenu_SetSelectedID(Aqua_Message, 2);
-		elseif( DruidBarKey.AquaMessage[2] == "RAID") then
-			UIDropDownMenu_SetSelectedID(Aqua_Message, 3);
-		elseif( DruidBarKey.AquaMessage[2] == "EMOTE") then
-			UIDropDownMenu_SetSelectedID(Aqua_Message, 4);
-		elseif( not DruidBarKey.AquaMessage[2]) then
-			UIDropDownMenu_SetSelectedID(Aqua_Message, 1);
-			DruidBarKey.AquaMessage[2] = "SAY";
-		end
-	UIDropDownMenu_SetWidth(Aqua_Message, 80);
-end
-
-function DRUIDBAROptions_MessageAqua_OnClick()
-	i = self:GetID();
-	UIDropDownMenu_SetSelectedID(Aqua_Message, i);
-
-	if(i == 1) then
-			DruidBarKey.AquaMessage[2] = "SAY";
-	elseif(i == 2) then
-			DruidBarKey.AquaMessage[2] = "PARTY";
-	elseif(i == 3) then
-			DruidBarKey.AquaMessage[2] = "RAID";
-	elseif(i == 4) then
-			DruidBarKey.AquaMessage[2] = "EMOTE";
-	end
-end
-
-function DRUIDBAROptions_MessageCat_Initialize()
-	local info;
-	for i = 0, 3, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
-		info.func = DRUIDBAROptions_MessageCat_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_MessageCat_OnShow()
-		UIDropDownMenu_Initialize(Cat_Message, DRUIDBAROptions_MessageCat_Initialize);
-		if( DruidBarKey.CatMessage[2] == "SAY") then
-			UIDropDownMenu_SetSelectedID(Cat_Message, 1);
-		elseif( DruidBarKey.CatMessage[2] == "PARTY") then
-			UIDropDownMenu_SetSelectedID(Cat_Message, 2);
-		elseif( DruidBarKey.CatMessage[2] == "RAID") then
-			UIDropDownMenu_SetSelectedID(Cat_Message, 3);
-		elseif( DruidBarKey.CatMessage[2] == "EMOTE") then
-			UIDropDownMenu_SetSelectedID(Cat_Message, 4);
-		elseif( not DruidBarKey.CatMessage[2]) then
-			UIDropDownMenu_SetSelectedID(Cat_Message, 1);
-			DruidBarKey.CatMessage[2] = "SAY";
-		end
-	UIDropDownMenu_SetWidth(Cat_Message, 80);
-end
-
-function DRUIDBAROptions_MessageCat_OnClick()
-	i = self:GetID();
-	UIDropDownMenu_SetSelectedID(Cat_Message, i);
-
-	if(i == 1) then
-			DruidBarKey.CatMessage[2] = "SAY";
-	elseif(i == 2) then
-			DruidBarKey.CatMessage[2] = "PARTY";
-	elseif(i == 3) then
-			DruidBarKey.CatMessage[2] = "RAID";
-	elseif(i == 4) then
-			DruidBarKey.CatMessage[2] = "EMOTE";
-	end
-end
-
-function DRUIDBAROptions_MessageTrav_Initialize()
-	local info;
-	for i = 0, 3, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
-		info.func = DRUIDBAROptions_MessageTrav_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_MessageTrav_OnShow()
-		UIDropDownMenu_Initialize(Trav_Message, DRUIDBAROptions_MessageTrav_Initialize);
-		if( DruidBarKey.TravMessage[2] == "SAY") then
-			UIDropDownMenu_SetSelectedID(Trav_Message, 1);
-		elseif( DruidBarKey.TravMessage[2] == "PARTY") then
-			UIDropDownMenu_SetSelectedID(Trav_Message, 2);
-		elseif( DruidBarKey.TravMessage[2] == "RAID") then
-			UIDropDownMenu_SetSelectedID(Trav_Message, 3);
-		elseif( DruidBarKey.TravMessage[2] == "EMOTE") then
-			UIDropDownMenu_SetSelectedID(Trav_Message, 4);
-		elseif( not DruidBarKey.TravMessage[2]) then
-			UIDropDownMenu_SetSelectedID(Trav_Message, 1);
-			DruidBarKey.TravMessage[2] = "SAY";
-		end
-	UIDropDownMenu_SetWidth(Trav_Message, 80);
-end
-
-function DRUIDBAROptions_MessageTrav_OnClick()
-	i = self:GetID();
-	UIDropDownMenu_SetSelectedID(Trav_Message, i);
-
-	if(i == 1) then
-			DruidBarKey.TravMessage[2] = "SAY";
-	elseif(i == 2) then
-			DruidBarKey.TravMessage[2] = "PARTY";
-	elseif(i == 3) then
-			DruidBarKey.TravMessage[2] = "RAID";
-	elseif(i == 4) then
-			DruidBarKey.TravMessage[2] = "EMOTE";
-	end
-end
-
-
-function DRUIDBAROptions_MessageOOM_Initialize()
-	local info;
-	for i = 0, 3, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
-		info.func = DRUIDBAROptions_MessageOOM_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_MessageOOM_OnShow()
-		UIDropDownMenu_Initialize(OOM_Message, DRUIDBAROptions_MessageOOM_Initialize);
-		if( DruidBarKey.OOMMessage[2] == "SAY") then
-			UIDropDownMenu_SetSelectedID(OOM_Message, 1);
-		elseif( DruidBarKey.OOMMessage[2] == "PARTY") then
-			UIDropDownMenu_SetSelectedID(OOM_Message, 2);
-		elseif( DruidBarKey.OOMMessage[2] == "RAID") then
-			UIDropDownMenu_SetSelectedID(OOM_Message, 3);
-		elseif( DruidBarKey.OOMMessage[2] == "EMOTE") then
-			UIDropDownMenu_SetSelectedID(OOM_Message, 4);
-		elseif( not DruidBarKey.OOMMessage[2]) then
-			UIDropDownMenu_SetSelectedID(OOM_Message, 1);
-			DruidBarKey.OOMMessage[2] = "SAY";
-		end
-	UIDropDownMenu_SetWidth(OOM_Message, 80);
-end
-
-function DRUIDBAROptions_MessageOOM_OnClick()
-	i = self:GetID();
-	UIDropDownMenu_SetSelectedID(OOM_Message, i);
-
-	if(i == 1) then
-			DruidBarKey.OOMMessage[2] = "SAY";
-	elseif(i == 2) then
-			DruidBarKey.OOMMessage[2] = "PARTY";
-	elseif(i == 3) then
-			DruidBarKey.OOMMessage[2] = "RAID";
-	elseif(i == 4) then
-			DruidBarKey.OOMMessage[2] = "EMOTE";
-	end
-end
-
-function DRUIDBAR_FrameSet()
-	-- DruidBarKey is not set, get out
-	if not DruidBarKey then return end
-	-- Check temp width and temp height
-	if not DruidBarKey.tempW then DruidBarKey.tempW = 0; end
-	if not DruidBarKey.tempH then DruidBarKey.tempH = 0; end
-
-	DRUIDBAROptionsToggle:SetChecked(DruidBarKey.Enabled);
-	DRUIDBAROptionsVis:SetChecked(DruidBarKey.Graphics);
-	DRUIDBAROptionsReplace:SetChecked(DruidBarKey.Replace);
-	DRUIDBAROptionsPlayer:SetChecked(DruidBarKey.Player);
-	DRUIDBAROptionsLock:SetChecked(DruidBarKey.Lock);
-	DRUIDBAROptionsHide:SetChecked(DruidBarKey.Hide);
-	DRUIDBAROptionsFull:SetChecked(DruidBarKey.Full);
-	DRUIDBAROptionsMessage:SetChecked(DruidBarKey.message);
-	DRUIDBAROptionsWeightEditBox:SetText(DruidBarKey.tempW);
-	DRUIDBAROptionsHeightEditBox:SetText(DruidBarKey.tempH);
-	Bear_Message_EditBox:SetText(DruidBarKey.BearMessage[1]);
-	Aqua_Message_EditBox:SetText(DruidBarKey.AquaMessage[1]);
-	Cat_Message_EditBox:SetText(DruidBarKey.CatMessage[1]);
-	Trav_Message_EditBox:SetText(DruidBarKey.TravMessage[1]);
-	OOM_Message_EditBox:SetText(DruidBarKey.OOMMessage[1]);
-	ManaBar_FrameLevel_EditBox:SetText(DruidBarKey.manatexture);
-	ManaBorder_FrameLevel_EditBox:SetText(DruidBarKey.bordertexture);
-	DRUIDBAROptionsKMG:SetChecked(DruidBarKey.kmg);
-
-	if(MGplayer_ManaBar) then
-		DRUIDBAROptionsKMG:Enable();
-		DRUIDBAROptionsKMGText:SetText(DRUIDBAR_OPTIONS_KMG);
-	else
-		DRUIDBAROptionsKMG:Disable();
-		DRUIDBAROptionsKMGText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_KMG.."|r");
-	end
-
-	if(DruidBarKey.Player == false and DruidBarKey.Replace == false) then
-		DRUIDBAROptionsCustom:SetChecked("true");
-		DRUIDBAROptionsWeightText:SetText(DRUIDBAR_OPTIONS_Weight);
-		DRUIDBAROptionsHeightText:SetText(DRUIDBAR_OPTIONS_Height);
-	else
-		DRUIDBAROptionsCustom:SetChecked("false");
-		DRUIDBAROptionsWeightText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Weight.."|r");
-		DRUIDBAROptionsHeightText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Height.."|r");
-	end
-
-	if(DruidBarKey.Enabled and DruidBarKey.Graphics) then
-		DRUIDBAROptionsVis:Enable();
-		DRUIDBAROptionsVisText:SetText(DRUIDBAR_OPTIONS_Vis);
-		DRUIDBAROptionsReplace:Enable();
-		DRUIDBAROptionsReplaceText:SetText(DRUIDBAR_OPTIONS_Replace);
-		DRUIDBAROptionsPlayer:Enable();
-		DRUIDBAROptionsPlayerText:SetText(DRUIDBAR_OPTIONS_Player);
-		DRUIDBAROptionsCustom:Enable();
-		DRUIDBAROptionsCustomText:SetText(DRUIDBAR_OPTIONS_Custom);
-		DRUIDBAROptionsHide:Enable();
-		DRUIDBAROptionsHideText:SetText(DRUIDBAR_OPTIONS_Hide);
-		DRUIDBAROptionsFull:Enable();
-		DRUIDBAROptionsFullText:SetText(DRUIDBAR_OPTIONS_Full);
-		DRUIDBAROptionsLock:Enable();
-		DRUIDBAROptionsLockText:SetText(DRUIDBAR_OPTIONS_Lock);
-	elseif DruidBarKey.Enabled and not DruidBarKey.Graphics then
-		DRUIDBAROptionsVis:Enable();
-		DRUIDBAROptionsVisText:SetText(DRUIDBAR_OPTIONS_Vis);
-		DRUIDBAROptionsReplace:Disable();
-		DRUIDBAROptionsReplaceText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Replace.."|r");
-		DRUIDBAROptionsPlayer:Disable();
-		DRUIDBAROptionsPlayerText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Player.."|r");
-		DRUIDBAROptionsCustom:Disable();
-		DRUIDBAROptionsCustomText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Custom.."|r");
-		DRUIDBAROptionsHide:Disable();
-		DRUIDBAROptionsHideText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Hide.."|r");
-		DRUIDBAROptionsFull:Disable();
-		DRUIDBAROptionsFullText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Full.."|r");
-		DRUIDBAROptionsLock:Disable();
-		DRUIDBAROptionsLockText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Lock.."|r");
-	elseif not DruidBarKey.Enabled then
-		DRUIDBAROptionsVis:Disable();
-		DRUIDBAROptionsVisText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Vis.."|r");
-		DRUIDBAROptionsReplace:Disable();
-		DRUIDBAROptionsReplaceText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Replace.."|r");
-		DRUIDBAROptionsPlayer:Disable();
-		DRUIDBAROptionsPlayerText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Player.."|r");
-		DRUIDBAROptionsCustom:Disable();
-		DRUIDBAROptionsCustomText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Custom.."|r");
-		DRUIDBAROptionsHide:Disable();
-		DRUIDBAROptionsHideText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Hide.."|r");
-		DRUIDBAROptionsFull:Disable();
-		DRUIDBAROptionsFullText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Full.."|r");
-		DRUIDBAROptionsLock:Disable();
-		DRUIDBAROptionsLockText:SetText("|cff9d9d9d"..DRUIDBAR_OPTIONS_Lock.."|r");
-	end
-end
-
-function DRUIDBAROptions_GetColor(self)
-	if not DruidBarKey then return end
-	local info;
-	info = self;
-	info.hasColorSwatch = 1;
-	info.r = DruidBarKey.color[1];
-	info.g = DruidBarKey.color[2];
-	info.b = DruidBarKey.color[3];
-	info.notCheckable = 1;
-	info.opacity = 1.0 - DruidBarKey.color[4];
-	info.swatchFunc = function() DruidBarKey.color[1], DruidBarKey.color[2], DruidBarKey.color[3] = ColorPickerFrame:GetColorRGB(); end
-	info.func = UIDropDownMenuButton_OpenColorPicker;
-	info.hasOpacity = 0;
-	info.opacityFunc = function() DruidBarKey.color[4] = 1.0 - OpacitySliderFrame:GetValue(); end;
-	info.cancelFunc = function()    DruidBarKey.color[1] = ColorPickerFrame.previousValues.r;
-									DruidBarKey.color[2] = ColorPickerFrame.previousValues.g;
-									DruidBarKey.color[3] = ColorPickerFrame.previousValues.b;
-									DruidBarKey.color[4] = 1.0 - ColorPickerFrame.previousValues.opacity; end;
-	getglobal(self:GetName().."_SwatchBg"):SetVertexColor(DruidBarKey.color[1], DruidBarKey.color[2], DruidBarKey.color[3]);
-end
-
-function DRUIDBAROptions_GetBGColor(self)
-	if not DruidBarKey then return end
-	local info;
-	info = self;
-	info.hasColorSwatch = 1;
-	info.r = DruidBarKey.bgcolor[1];
-	info.g = DruidBarKey.bgcolor[2];
-	info.b = DruidBarKey.bgcolor[3];
-	info.notCheckable = 1;
-	info.opacity = 1.0 - DruidBarKey.bgcolor[4];
-	info.swatchFunc = function() DruidBarKey.bgcolor[1], DruidBarKey.bgcolor[2], DruidBarKey.bgcolor[3] = ColorPickerFrame:GetColorRGB(); end
-	info.func = UIDropDownMenuButton_OpenColorPicker;
-	info.hasOpacity = 0;
-	info.opacityFunc = function() DruidBarKey.bgcolor[4] = 1.0 - OpacitySliderFrame:GetValue(); end;
-	info.cancelFunc = function()    DruidBarKey.bgcolor[1] = ColorPickerFrame.previousValues.r;
-									DruidBarKey.bgcolor[2] = ColorPickerFrame.previousValues.g;
-									DruidBarKey.bgcolor[3] = ColorPickerFrame.previousValues.b;
-									DruidBarKey.bgcolor[4] = 1.0 - ColorPickerFrame.previousValues.opacity; end;
-	getglobal(self:GetName().."_SwatchBg"):SetVertexColor(DruidBarKey.bgcolor[1], DruidBarKey.bgcolor[2], DruidBarKey.bgcolor[3]);
-end
-
-function DRUIDBAROptions_GetBorderColor(self)
-	if not DruidBarKey then return end
-	local info;
-	info = self;
-	info.hasColorSwatch = 1;
-	info.r = DruidBarKey.bordercolor[1];
-	info.g = DruidBarKey.bordercolor[2];
-	info.b = DruidBarKey.bordercolor[3];
-	info.notCheckable = 1;
-	info.opacity = 1.0 - DruidBarKey.bordercolor[4];
-	info.swatchFunc = function() DruidBarKey.bordercolor[1], DruidBarKey.bordercolor[2], DruidBarKey.bordercolor[3] = ColorPickerFrame:GetColorRGB(); end
-	info.func = UIDropDownMenuButton_OpenColorPicker;
-	info.hasOpacity = 0;
-	info.opacityFunc = function() DruidBarKey.bordercolor[4] = 1.0 - OpacitySliderFrame:GetValue(); end;
-	info.cancelFunc = function()    DruidBarKey.bordercolor[1] = ColorPickerFrame.previousValues.r;
-									DruidBarKey.bordercolor[2] = ColorPickerFrame.previousValues.g;
-									DruidBarKey.bordercolor[3] = ColorPickerFrame.previousValues.b;
-									DruidBarKey.bordercolor[4] = 1.0 - ColorPickerFrame.previousValues.opacity; end;
-	getglobal(self:GetName().."_SwatchBg"):SetVertexColor(DruidBarKey.bordercolor[1], DruidBarKey.bordercolor[2], DruidBarKey.bordercolor[3]);
-end
-
-function DRUIDBAROptions_ManaBarFrameLevel_Initialize()
-	local info;
-	for i = 0, 3, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Strata[i];
-		info.func = DRUIDBAROptions_ManaBarFrameLevel_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_ManaBarFrameLevel_OnShow()
-		UIDropDownMenu_Initialize(ManaBar_FrameLevel, DRUIDBAROptions_ManaBarFrameLevel_Initialize);
-		if DruidBarKey.barstrata then
-			UIDropDownMenu_SetSelectedID(ManaBar_FrameLevel, DruidBarKey.barstrata+1);
-		elseif not DruidBarKey.barstrata then
-			UIDropDownMenu_SetSelectedID(ManaBar_FrameLevel, 2);
-			DruidBarKey.barstrata = 2;
-		end
-	UIDropDownMenu_SetWidth(ManaBar_FrameLevel, 80);
-end
-
-function DRUIDBAROptions_ManaBarFrameLevel_OnClick()
-	i = self:GetID();
-	DruidBarKey.barstrata = i-1;
-	UIDropDownMenu_SetSelectedID(ManaBar_FrameLevel, i);
-	DEFAULT_CHAT_FRAME:AddMessage(i);
-end
-
-function DRUIDBAROptions_ManaBorderFrameLevel_Initialize()
-	local info;
-	for i = 0, 3, 1 do
-		info = { };
-		info.text = DRUIDBAR_OPTIONS_DROP.Strata[i];
-		info.func = DRUIDBAROptions_ManaBorderFrameLevel_OnClick;
-		UIDropDownMenu_AddButton(info);
-	end
-end
-
-function DRUIDBAROptions_ManaBorderFrameLevel_OnShow()
-		UIDropDownMenu_Initialize(ManaBorder_FrameLevel, DRUIDBAROptions_ManaBorderFrameLevel_Initialize);
-		if DruidBarKey.borderstrata then
-			local i;
-			local j = DruidBarKey.borderstrata;
-			if j == "BACKGROUND" then i = 1; elseif j == "BORDER" then i = 2; elseif j == "ARTWORK" then i = 3; elseif j == "OVERLAY" then i = 4; end
-			UIDropDownMenu_SetSelectedID(ManaBorder_FrameLevel, i+1);
-		elseif not DruidBarKey.borderstrata then
-			UIDropDownMenu_SetSelectedID(ManaBorder_FrameLevel, 1);
-			DruidBarKey.borderstrata = "BACKGROUND";
-		end
-	UIDropDownMenu_SetWidth(ManaBorder_FrameLevel, 80);
-end
-
-function DRUIDBAROptions_ManaBorderFrameLevel_OnClick()
-	i = self:GetID();
-	local j;
-	if i == 1 then j = "BACKGROUND"; elseif i == 2 then j = "BORDER"; elseif i == 3 then j = "ARTWORK"; elseif i == 4 then j = "OVERLAY"; end
-	DruidBarKey.borderstrata = j;
-	UIDropDownMenu_SetSelectedID(ManaBorder_FrameLevel, i);
-end
diff --git a/GUI.xml b/GUI.xml
deleted file mode 100644
index d8498d3..0000000
--- a/GUI.xml
+++ /dev/null
@@ -1,1168 +0,0 @@
-<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">
-	<Frame name="DRUIDBAROptionsFrame" toplevel="true" frameStrata="DIALOG" movable="true" enableMouse="true" hidden="true" parent="UIParent">
-		<Size>
-			<AbsDimension x="460" y="550"/>
-		</Size>
-
-		<Anchors>
-			<Anchor point="CENTER"/>
-		</Anchors>
-
-		<Backdrop bgFile="Interface\DialogFrame\UI-DialogBox-Background" edgeFile="Interface\DialogFrame\UI-DialogBox-Border" tile="true">
-			<BackgroundInsets>
-				<AbsInset left="11" right="12" top="12" bottom="11"/>
-			</BackgroundInsets>
-
-			<TileSize>
-				<AbsValue val="32"/>
-			</TileSize>
-
-			<EdgeSize>
-				<AbsValue val="32"/>
-			</EdgeSize>
-		</Backdrop>
-
-		<Layers>
-			<Layer level="ARTWORK">
-				<Texture name="DRUIDBAROptionsFrameHeader" file="Interface\DialogFrame\UI-DialogBox-Header" movable="true" enableMouse="true">
-					<Size>
-						<AbsDimension x="256" y="64"/>
-					</Size>
-
-					<Anchors>
-						<Anchor point="TOP">
-							<Offset>
-								<AbsDimension x="0" y="12"/>
-							</Offset>
-						</Anchor>
-					</Anchors>
-				</Texture>
-
-				<FontString inherits="GameFontNormal" text="DRUIDBAR_OPTIONS_TITLE">
-					<Anchors>
-						<Anchor point="TOP" relativeTo="DRUIDBAROptionsFrameHeader">
-							<Offset>
-								<AbsDimension x="0" y="-14"/>
-							</Offset>
-						</Anchor>
-					</Anchors>
-				</FontString>
-			</Layer>
-		</Layers>
-
-		<Frames>
-			<Frame name="DRUIDBAROptions_Bar">
-				<Size>
-					<AbsDimension x="420" y="153"/>
-				</Size>
-
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="20" y="-30"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Backdrop bgFile="Interface\Tooltips\UI-Tooltip-Background" edgeFile="Interface\Tooltips\UI-Tooltip-Border" tile="true">
-					<EdgeSize>
-						<AbsValue val="8"/>
-					</EdgeSize>
-
-					<TileSize>
-						<AbsValue val="8"/>
-					</TileSize>
-
-					<BackgroundInsets>
-						<AbsInset left="2" right="2" top="2" bottom="2"/>
-					</BackgroundInsets>
-				</Backdrop>
-
-				<Layers>
-					<Layer>
-						<FontString inherits="GameFontHighlight" text="DRUIDBAR_OPTIONS_Bar">
-							<Anchors>
-								<Anchor point="TOP">
-									<Offset>
-										<AbsDimension x="0" y="-6"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-
-				<Scripts>
-					<OnLoad>
-						self:SetBackdropBorderColor(0.4, 0.4, 0.4);
-						self:SetBackdropColor(0.1, 0.1, 0.1);
-					</OnLoad>
-				</Scripts>
-			</Frame>
-
-			<CheckButton name="DRUIDBAROptionsToggle" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="30" y="-54"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Toggle);
-					</OnLoad>
-
-					<OnClick>
-						DRUIDBAROptions_Toggle();
-					</OnClick>
-				</Scripts>
-			</CheckButton>
-
-			<CheckButton name="DRUIDBAROptionsVis" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="170" y="-54"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Vis);
-					</OnLoad>
-					<OnClick>
-						DRUIDBAROptions_Vis();
-					</OnClick>
-					<OnEnter>
-						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
-						GameTooltip:SetText(DRUIDBAR_OPTIONS_VisTT);
-						GameTooltip:Show();
-					</OnEnter>
-					<OnLeave>
-						GameTooltip:Hide();
-					</OnLeave>
-				</Scripts>
-			</CheckButton>
-
-			<CheckButton name="DRUIDBAROptionsKMG" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="310" y="-54"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_KMG);
-					</OnLoad>
-
-					<OnClick>
-						DRUIDBAROptions_KMG();
-					</OnClick>
-
-					<OnEnter>
-						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
-						GameTooltip:SetText(DRUIDBAR_OPTIONS_KMGTT);
-						GameTooltip:Show();
-					</OnEnter>
-
-					<OnLeave>
-						GameTooltip:Hide();
-					</OnLeave>
-				</Scripts>
-			</CheckButton>
-
-			<CheckButton name="DRUIDBAROptionsReplace" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="30" y="-80"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Replace);
-					</OnLoad>
-
-					<OnClick>
-						DRUIDBAROptions_Replace();
-					</OnClick>
-
-					<OnEnter>
-						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
-						GameTooltip:SetText(DRUIDBAR_OPTIONS_ReplaceTT);
-						GameTooltip:Show();
-					</OnEnter>
-
-					<OnLeave>
-						GameTooltip:Hide();
-					</OnLeave>
-				</Scripts>
-			</CheckButton>
-
-			<CheckButton name="DRUIDBAROptionsPlayer" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="170" y="-80"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Player);
-					</OnLoad>
-
-					<OnClick>
-						DRUIDBAROptions_Player();
-					</OnClick>
-
-					<OnEnter>
-						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
-						GameTooltip:SetText(DRUIDBAR_OPTIONS_PlayerTT);
-						GameTooltip:Show();
-					</OnEnter>
-
-					<OnLeave>
-						GameTooltip:Hide();
-					</OnLeave>
-				</Scripts>
-			</CheckButton>
-
-			<CheckButton name="DRUIDBAROptionsCustom" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="310" y="-80"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Custom);
-					</OnLoad>
-
-					<OnClick>
-						DRUIDBAROptions_Custom();
-					</OnClick>
-				</Scripts>
-			</CheckButton>
-
-			<EditBox name="DRUIDBAROptionsWeightEditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="34" y="16"/>
-				</Size>
-
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="100" y="-108"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(4);
-					</OnLoad>
-
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-
-					<OnTextChanged>
-						DRUIDBAROptions_CheckWeight(self);
-					</OnTextChanged>
-				</Scripts>
-
-				<FontString inherits="ChatFontNormal"/>
-
-				<Layers>
-					<Layer level="OVERLAY">
-						<FontString name="DRUIDBAROptionsWeightText" inherits="GameFontNormalSmall" justifyH="RIGHT" text="DRUIDBAR_OPTIONS_Weight">
-							<Size>
-								<AbsDimension x="0" y="20"/>
-							</Size>
-
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="DRUIDBAROptionsWeightEditBox" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="-10" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-			</EditBox>
-
-			<EditBox name="DRUIDBAROptionsHeightEditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="28" y="16"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="DRUIDBAROptionsWeightEditBox" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="110" y="0"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(3);
-					</OnLoad>
-
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-
-					<OnTextChanged>
-						DRUIDBAROptions_CheckHeight(self);
-					</OnTextChanged>
-				</Scripts>
-
-				<FontString inherits="ChatFontNormal"/>
-
-				<Layers>
-					<Layer level="OVERLAY">
-						<FontString name="DRUIDBAROptionsHeightText" inherits="GameFontNormalSmall" justifyH="RIGHT" text="DRUIDBAR_OPTIONS_Height">
-							<Size>
-								<AbsDimension x="60" y="20"/>
-							</Size>
-
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="DRUIDBAROptionsHeightEditBox" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="-10" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-			</EditBox>
-
-			<CheckButton name="DRUIDBAROptionsLock" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="DRUIDBAROptionsHeightEditBox" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="74" y="0"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Lock);
-					</OnLoad>
-
-					<OnClick>
-						DRUIDBAROptions_Lock();
-					</OnClick>
-				</Scripts>
-			</CheckButton>
-
-			<CheckButton name="DRUIDBAROptionsHide" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="30" y="-124"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Hide);
-					</OnLoad>
-
-					<OnClick>
-						DRUIDBAROptions_Hide();
-					</OnClick>
-				</Scripts>
-			</CheckButton>
-
-			<CheckButton name="DRUIDBAROptionsFull" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="230" y="-124"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Full);
-					</OnLoad>
-
-					<OnClick>
-						DRUIDBAROptions_Full();
-					</OnClick>
-				</Scripts>
-			</CheckButton>
-
-			<Frame name="DRUIDBAROptionsTextDropDown" inherits="UIDropDownMenuTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="80" y="-150"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Text">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="DRUIDBAROptionsTextDropDown" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_Text_OnShow(self);
-					</OnShow>
-				</Scripts>
-			</Frame>
-
-			<Frame name="DRUIDBAROptionsPercentDropDown" inherits="UIDropDownMenuTemplate" enableMouse="true">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="290" y="-150"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Percent">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="DRUIDBAROptionsPercentDropDown" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_Percent_OnShow();
-					</OnShow>
-				</Scripts>
-			</Frame>
-
-
-			<Frame name="DRUIDBAROptions_Message">
-				<Size>
-					<AbsDimension x="420" y="177"/>
-				</Size>
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="20" y="-190"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Backdrop bgFile="Interface\Tooltips\UI-Tooltip-Background" edgeFile="Interface\Tooltips\UI-Tooltip-Border" tile="true">
-					<EdgeSize>
-						<AbsValue val="8"/>
-					</EdgeSize>
-					<TileSize>
-						<AbsValue val="8"/>
-					</TileSize>
-					<BackgroundInsets>
-						<AbsInset left="2" right="2" top="2" bottom="2"/>
-					</BackgroundInsets>
-				</Backdrop>
-				<Layers>
-					<Layer>
-						<FontString inherits="GameFontHighlight" text="DRUIDBAR_OPTIONS_MessageO">
-							<Anchors>
-								<Anchor point="TOP">
-									<Offset>
-										<AbsDimension x="0" y="-6"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnLoad>
-						self:SetBackdropBorderColor(0.4, 0.4, 0.4);
-						self:SetBackdropColor(0.1, 0.1, 0.1);
-					</OnLoad>
-				</Scripts>
-			</Frame>
-			<CheckButton name="DRUIDBAROptionsMessage" inherits="OptionsCheckButtonTemplate">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="30" y="-204"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Message);
-					</OnLoad>
-					<OnClick>
-						DRUIDBAROptions_Message();
-					</OnClick>
-					<OnEnter>
-						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
-						GameTooltip:SetText(DRUIDBAR_OPTIONS_MessageTT);
-						GameTooltip:Show();
-					</OnEnter>
-					<OnLeave>
-						GameTooltip:Hide();
-					</OnLeave>
-				</Scripts>
-			</CheckButton>
-			<Frame name="Bear_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="80" y="-234"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Bear">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="Bear_Message" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_MessageBear_OnShow();
-					</OnShow>
-				</Scripts>
-			</Frame>
-			<EditBox name="Bear_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="230" y="16"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="Bear_Message" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="-8" y="2"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(225);
-					</OnLoad>
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-					<OnTextChanged>
-						DruidBarKey.BearMessage[1] = self:GetText();
-					</OnTextChanged>
-				</Scripts>
-				<FontString inherits="ChatFontNormal"/>
-			</EditBox>
-			<Frame name="Aqua_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
-				<Anchors>
-					<Anchor point="TOP" relativeTo="Bear_Message" relativePoint="BOTTOM">
-						<Offset>
-							<AbsDimension x="0" y="8"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Aqua">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="Aqua_Message" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_MessageAqua_OnShow();
-					</OnShow>
-				</Scripts>
-			</Frame>
-			<EditBox name="Aqua_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="230" y="16"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="Aqua_Message" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="-8" y="2"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(225);
-					</OnLoad>
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-					<OnTextChanged>
-						DruidBarKey.AquaMessage[1] = self:GetText();
-					</OnTextChanged>
-				</Scripts>
-				<FontString inherits="ChatFontNormal"/>
-			</EditBox>
-			<Frame name="Cat_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
-				<Anchors>
-					<Anchor point="TOP" relativeTo="Aqua_Message" relativePoint="BOTTOM">
-						<Offset>
-							<AbsDimension x="0" y="8"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Cat">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="Cat_Message" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_MessageCat_OnShow();
-					</OnShow>
-				</Scripts>
-			</Frame>
-			<EditBox name="Cat_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="230" y="16"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="Cat_Message" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="-8" y="2"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(225);
-					</OnLoad>
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-					<OnTextChanged>
-						DruidBarKey.CatMessage[1] = self:GetText();
-					</OnTextChanged>
-				</Scripts>
-				<FontString inherits="ChatFontNormal"/>
-			</EditBox>
-			<Frame name="Trav_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
-				<Anchors>
-					<Anchor point="TOP" relativeTo="Cat_Message" relativePoint="BOTTOM">
-						<Offset>
-							<AbsDimension x="0" y="8"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Trav">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="Trav_Message" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_MessageTrav_OnShow();
-					</OnShow>
-				</Scripts>
-			</Frame>
-			<EditBox name="Trav_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="230" y="16"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="Trav_Message" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="-8" y="2"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(225);
-					</OnLoad>
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-					<OnTextChanged>
-						DruidBarKey.TravMessage[1] = self:GetText();
-					</OnTextChanged>
-				</Scripts>
-				<FontString inherits="ChatFontNormal"/>
-			</EditBox>
-
-			<Frame name="OOM_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
-				<Anchors>
-					<Anchor point="TOP" relativeTo="Trav_Message" relativePoint="BOTTOM">
-						<Offset>
-							<AbsDimension x="0" y="8"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Oom">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="OOM_Message" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_MessageOOM_OnShow();
-					</OnShow>
-				</Scripts>
-			</Frame>
-			<EditBox name="OOM_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="230" y="16"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="OOM_Message" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="-8" y="2"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(225);
-					</OnLoad>
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-					<OnTextChanged>
-						DruidBarKey.OOMMessage[1] = self:GetText();
-					</OnTextChanged>
-				</Scripts>
-				<FontString inherits="ChatFontNormal"/>
-			</EditBox>
-
-
-			<Frame name="DRUIDBAROptions_Misc">
-				<Size>
-					<AbsDimension x="420" y="100"/>
-				</Size>
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset>
-							<AbsDimension x="20" y="-380"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Backdrop bgFile="Interface\Tooltips\UI-Tooltip-Background" edgeFile="Interface\Tooltips\UI-Tooltip-Border" tile="true">
-					<EdgeSize>
-						<AbsValue val="8"/>
-					</EdgeSize>
-					<TileSize>
-						<AbsValue val="8"/>
-					</TileSize>
-					<BackgroundInsets>
-						<AbsInset left="2" right="2" top="2" bottom="2"/>
-					</BackgroundInsets>
-				</Backdrop>
-				<Layers>
-					<Layer>
-						<FontString inherits="GameFontHighlight" text="DRUIDBAR_OPTIONS_MiscO">
-							<Anchors>
-								<Anchor point="TOP">
-									<Offset>
-										<AbsDimension x="0" y="-6"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnLoad>
-						self:SetBackdropBorderColor(0.4, 0.4, 0.4);
-						self:SetBackdropColor(0.1, 0.1, 0.1);
-					</OnLoad>
-				</Scripts>
-			</Frame>
-			<Button name="DBColorSwatch" hidden="false" virtual="true">
-				<Size>
-					<AbsDimension x="20" y="20"/>
-				</Size>
-				<Anchors>
-					<Anchor point="TOPLEFT">
-						<Offset><AbsDimension x="35" y="-397"/></Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="ARTWORK">
-						<Texture name="$parent_SwatchBg" file="Interface\TargetingFrame\UI-StatusBar">
-							<Size>
-								<AbsDimension x="14" y="14"/>
-							</Size>
-							<Anchors>
-								<Anchor point="LEFT" relativeTo="$parent" relativePoint="CENTER">
-									<Offset>
-										<AbsDimension x="0" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-							<Color r="1.0" g="1.0" b="1.0"/>
-						</Texture>
-						<FontString name="$parentText" inherits="GameFontNormalSmall" text="Bar Color" JustifyH="LEFT">
-							<Size>
-								<AbsDimension x="75" y="16"/>
-							</Size>
-							<Anchors>
-								<Anchor point="LEFT" relativeTo="$parent_SwatchBg" relativePoint="RIGHT">
-									<Offset>
-										<AbsDimension x="0" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_ColorBar);
-					</OnLoad>
-					<OnShow>
-						DRUIDBAROptions_GetColor(self);
-					</OnShow>
-					<OnClick>
-						DRUIDBAROptionsFrame:Hide();
-						UIDropDownMenuButton_OpenColorPicker(self);
-					</OnClick>
-				</Scripts>
-			</Button>
-			<Button name="DBBGSwatch" hidden="false" virtual="true">
-				<Size>
-					<AbsDimension x="20" y="20"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="DBColorSwatchText" relativePoint="RIGHT">
-						<Offset><AbsDimension x="0" y="0"/></Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="ARTWORK">
-						<Texture name="$parent_SwatchBg" file="Interface\TargetingFrame\UI-StatusBar">
-							<Size>
-								<AbsDimension x="14" y="14"/>
-							</Size>
-							<Anchors>
-								<Anchor point="LEFT" relativeTo="$parent" relativePoint="CENTER">
-									<Offset>
-										<AbsDimension x="0" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-							<Color r="1.0" g="1.0" b="1.0"/>
-						</Texture>
-						<FontString name="$parentText" inherits="GameFontNormalSmall" text="Background Color" JustifyH="LEFT">
-							<Size>
-								<AbsDimension x="75" y="16"/>
-							</Size>
-							<Anchors>
-								<Anchor point="LEFT" relativeTo="$parent_SwatchBg" relativePoint="RIGHT">
-									<Offset>
-										<AbsDimension x="0" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_ColorBack);
-					</OnLoad>
-					<OnShow>
-						DRUIDBAROptions_GetBGColor(self);
-					</OnShow>
-					<OnClick>
-						DRUIDBAROptionsFrame:Hide();
-						UIDropDownMenuButton_OpenColorPicker(self);
-					</OnClick>
-				</Scripts>
-			</Button>
-
-			<Button name="DBBorderSwatch" hidden="false" virtual="true">
-				<Size>
-					<AbsDimension x="20" y="20"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="DBBGSwatchText" relativePoint="RIGHT">
-						<Offset><AbsDimension x="0" y="0"/></Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="ARTWORK">
-						<Texture name="$parent_SwatchBg" file="Interface\TargetingFrame\UI-StatusBar">
-							<Size>
-								<AbsDimension x="14" y="14"/>
-							</Size>
-							<Anchors>
-								<Anchor point="LEFT" relativeTo="$parent" relativePoint="CENTER">
-									<Offset>
-										<AbsDimension x="0" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-							<Color r="1.0" g="1.0" b="1.0"/>
-						</Texture>
-						<FontString name="$parentText" inherits="GameFontNormalSmall" text="Border Color" JustifyH="LEFT">
-							<Size>
-								<AbsDimension x="75" y="16"/>
-							</Size>
-							<Anchors>
-								<Anchor point="LEFT" relativeTo="$parent_SwatchBg" relativePoint="RIGHT">
-									<Offset>
-										<AbsDimension x="0" y="0"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnLoad>
-						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_ColorBorder);
-					</OnLoad>
-					<OnShow>
-						DRUIDBAROptions_GetBorderColor(self);
-					</OnShow>
-					<OnClick>
-						DRUIDBAROptionsFrame:Hide();
-						UIDropDownMenuButton_OpenColorPicker(self);
-					</OnClick>
-				</Scripts>
-			</Button>
-
-			<Frame name="ManaBar_FrameLevel" inherits="UIDropDownMenuTemplate" enableMouse="true">
-				<Anchors>
-					<Anchor point="TOPLEFT" relativeTo="DBColorSwatch" relativePoint="BOTTOM">
-						<Offset>
-							<AbsDimension x="30" y="-5"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Mana">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="ManaBar_FrameLevel" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_ManaBarFrameLevel_OnShow();
-					</OnShow>
-				</Scripts>
-			</Frame>
-			<EditBox name="ManaBar_FrameLevel_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="230" y="16"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="ManaBar_FrameLevel" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="-8" y="2"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(225);
-					</OnLoad>
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-					<OnTextChanged>
-						DruidBarKey.manatexture = self:GetText();
-					</OnTextChanged>
-				</Scripts>
-				<FontString inherits="ChatFontNormal"/>
-			</EditBox>
-
-			<Frame name="ManaBorder_FrameLevel" inherits="UIDropDownMenuTemplate" enableMouse="true">
-				<Anchors>
-					<Anchor point="TOPLEFT" relativeTo="ManaBar_FrameLevel" relativePoint="BOTTOMLEFT">
-						<Offset>
-							<AbsDimension x="0" y="5"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_border">
-							<Anchors>
-								<Anchor point="RIGHT" relativeTo="ManaBorder_FrameLevel" relativePoint="LEFT">
-									<Offset>
-										<AbsDimension x="16" y="2"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-				<Scripts>
-					<OnShow>
-						DRUIDBAROptions_ManaBorderFrameLevel_OnShow();
-					</OnShow>
-				</Scripts>
-			</Frame>
-
-			<EditBox name="ManaBorder_FrameLevel_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
-				<Size>
-					<AbsDimension x="230" y="16"/>
-				</Size>
-				<Anchors>
-					<Anchor point="LEFT" relativeTo="ManaBorder_FrameLevel" relativePoint="RIGHT">
-						<Offset>
-							<AbsDimension x="-8" y="2"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnLoad>
-						self:SetMaxLetters(225);
-					</OnLoad>
-					<OnEnterPressed>
-						self:ClearFocus();
-					</OnEnterPressed>
-					<OnEscapePressed>
-						self:ClearFocus();
-					</OnEscapePressed>
-					<OnTextChanged>
-						DruidBarKey.bordertexture = self:GetText();
-					</OnTextChanged>
-				</Scripts>
-				<FontString inherits="ChatFontNormal"/>
-			</EditBox>
-
-			<Button name="DRUIDBAROptionsFrameClose" inherits="OptionsButtonTemplate" text="DRUIDBAR_OPTIONS_Close">
-				<Anchors>
-					<Anchor point="BOTTOMRIGHT">
-						<Offset>
-							<AbsDimension x="-20" y="20"/>
-						</Offset>
-					</Anchor>
-				</Anchors>
-				<Scripts>
-					<OnClick>
-						DRUIDBAROptionsFrame_Toggle();
-					</OnClick>
-				</Scripts>
-				<Layers>
-					<Layer level="BACKGROUND">
-						<FontString name="$parentLabel" inherits="GameFontNormalSmall" justifyH="LEFT" text="DRUIDBAR_OPTIONS_Version">
-							<Anchors>
-								<Anchor point="BOTTOMLEFT" relativeTo="DRUIDBAROptionsFrame">
-									<Offset>
-										<AbsDimension x="20" y="16"/>
-									</Offset>
-								</Anchor>
-							</Anchors>
-						</FontString>
-					</Layer>
-				</Layers>
-			</Button>
-		</Frames>
-
-		<Scripts>
-			<OnLoad>
-				DRUIDBAROptions_OnLoad();
-				self:RegisterForDrag("LeftButton");
-			</OnLoad>
-			<OnDragStart>self:StartMoving();</OnDragStart>
-			<OnDragStop>self:StopMovingOrSizing();</OnDragStop>
-		</Scripts>
-	</Frame>
-</Ui>
diff --git a/Options.lua b/Options.lua
new file mode 100644
index 0000000..c848123
--- /dev/null
+++ b/Options.lua
@@ -0,0 +1,622 @@
+function DRUIDBAROptionsFrame_Toggle()
+	if(DRUIDBAROptionsFrame:IsVisible()) then
+		DRUIDBAROptionsFrame:Hide();
+	else
+		DRUIDBAR_FrameSet();
+		DRUIDBAROptionsFrame:Show();
+	end
+end
+
+function DRUIDBAROptions_OnLoad()
+	UIPanelWindows['DRUIDBAROptionsFrame'] = {area = 'center', pushable = 0};
+end
+
+function DRUIDBAROptions_CheckWidth(self)
+	if ( DRUIDBAROptionsWidthEditBox:GetText() < "1" ) then
+		DRUIDBAROptionsWidthEditBox:SetText("1");
+		DruidBarKey.xvar = self:GetNumber();
+		DruidBarKey.tempW = DruidBarKey.xvar;
+	elseif( DRUIDBAROptionsWidthEditBox:GetText() > "9999" ) then
+		DRUIDBAROptionsWidthEditBox:SetText("9999");
+		DruidBarKey.xvar = self:GetNumber();
+		DruidBarKey.tempW = DruidBarKey.xvar;
+	else
+		DruidBarKey.xvar = self:GetNumber();
+		DruidBarKey.tempW = DruidBarKey.xvar;
+	end
+end
+
+function DRUIDBAROptions_CheckHeight(self)
+	if ( DRUIDBAROptionsHeightEditBox:GetText() < "1" ) then
+		DRUIDBAROptionsHeightEditBox:SetText("1");
+		DruidBarKey.yvar = self:GetNumber();
+		DruidBarKey.tempH = DruidBarKey.yvar;
+	elseif( DRUIDBAROptionsHeightEditBox:GetText() > "999" ) then
+		DRUIDBAROptionsHeightEditBox:SetText("999");
+		DruidBarKey.yvar = self:GetNumber();
+		DruidBarKey.tempH = DruidBarKey.yvar;
+	else
+		DruidBarKey.yvar = self:GetNumber();
+		DruidBarKey.tempH = DruidBarKey.yvar;
+	end
+end
+
+function DRUIDBAROptions_Toggle()
+	if(DruidBarKey.Enabled) then
+		DruidBarKey.Enabled = false;
+	else
+		DruidBarKey.Enabled = true;
+	end
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_Vis()
+	if(DruidBarKey.Graphics) then
+		DruidBarKey.Graphics = false;
+	else
+		DruidBarKey.Graphics = true;
+	end
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_Replace()
+	DruidBarKey.Replace = true;
+	DruidBarKey.Player = false;
+	DruidBarKey.Custom = false;
+	DruidBarKey.Lock = true;
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_Player()
+	DruidBarKey.Replace = false;
+	DruidBarKey.Player = true;
+	DruidBarKey.Custom = false;
+	--Assign value that default to match player frame
+	DruidBarKey.xvar = 150;
+	DruidBarKey.yvar = 18;
+	DruidBarKey.Lock = true;
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_Custom()
+	DruidBarKey.Custom = true;
+	DruidBarKey.Replace = false;
+	DruidBarKey.Player = false;
+	DruidBarKey.Lock = false;
+	DruidBarKey.xvar = DruidBarKey.tempW;
+	DruidBarKey.yvar = DruidBarKey.tempH;
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_Lock()
+	if(DruidBarKey.Lock) then
+		DruidBarKey.Lock = false;
+	else
+		DruidBarKey.Lock = true;
+	end
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_Hide()
+	if(DruidBarKey.Hide) then
+		DruidBarKey.Hide = false;
+	else
+		DruidBarKey.Hide = true;
+	end
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_Full()
+	if(DruidBarKey.Full) then
+		DruidBarKey.Full = false;
+	else
+		DruidBarKey.Full = true;
+	end
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_Text_Initialize()
+	local info;
+	for i = 0, 2, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Text[i];
+		info.func = DRUIDBAROptions_Text_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_Text_OnShow()
+	-- Construct dropdown
+	UIDropDownMenu_Initialize(DRUIDBAROptionsTextDropDown, DRUIDBAROptions_Text_Initialize);
+
+	-- Sets initial value
+	if( DruidBarKey.Text == 0 ) then
+		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsTextDropDown, 1);
+	elseif( DruidBarKey.Text == 1 ) then
+		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsTextDropDown, 2);
+	elseif( DruidBarKey.Text == nil ) then
+		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsTextDropDown, 3);
+	end
+	UIDropDownMenu_SetWidth(DRUIDBAROptionsTextDropDown, 100);
+end
+
+function DRUIDBAROptions_Text_OnClick(self)
+	i = self:GetID();
+	UIDropDownMenu_SetSelectedID(DRUIDBAROptionsTextDropDown, i);
+
+	if(i == 1) then
+		DruidBarKey.Text = 0;
+	elseif(i == 2) then
+		DruidBarKey.Text = 1;
+	elseif(i == 3) then
+		DruidBarKey.Text = nil;
+	end
+end
+
+function DRUIDBAROptions_Percent_Initialize()
+	local info;
+	for i = 0, 2, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Percent[i];
+		info.func = DRUIDBAROptions_Percent_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_Percent_OnShow()
+	UIDropDownMenu_Initialize(DRUIDBAROptionsPercentDropDown, DRUIDBAROptions_Percent_Initialize);
+	if( DruidBarKey.Percent == 0 ) then
+		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsPercentDropDown, 1);
+	elseif( DruidBarKey.Percent == 1 ) then
+		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsPercentDropDown, 2);
+	elseif( DruidBarKey.Percent == nil ) then
+		UIDropDownMenu_SetSelectedID(DRUIDBAROptionsPercentDropDown, 3);
+	end
+	UIDropDownMenu_SetWidth(DRUIDBAROptionsPercentDropDown, 112);
+end
+
+function DRUIDBAROptions_Percent_OnClick(self)
+	i = self:GetID();
+	UIDropDownMenu_SetSelectedID(DRUIDBAROptionsPercentDropDown, i);
+
+	if(i == 1) then
+		DruidBarKey.Percent = 0;
+	elseif(i == 2) then
+		DruidBarKey.Percent = 1;
+	elseif(i == 3) then
+		DruidBarKey.Percent = nil;
+	end
+end
+
+function DRUIDBAROptions_Message()
+	if(DruidBarKey.message) then
+		DruidBarKey.message = false;
+	else
+		DruidBarKey.message = true;
+	end
+	DRUIDBAR_FrameSet();
+end
+
+function DRUIDBAROptions_MessageBear_Initialize()
+	local info;
+	for i = 0, 3, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
+		info.func = DRUIDBAROptions_MessageBear_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_MessageBear_OnShow()
+		UIDropDownMenu_Initialize(Bear_Message, DRUIDBAROptions_MessageBear_Initialize);
+		if( DruidBarKey.BearMessage[2] == "SAY") then
+			UIDropDownMenu_SetSelectedID(Bear_Message, 1);
+		elseif( DruidBarKey.BearMessage[2] == "PARTY") then
+			UIDropDownMenu_SetSelectedID(Bear_Message, 2);
+		elseif( DruidBarKey.BearMessage[2] == "RAID") then
+			UIDropDownMenu_SetSelectedID(Bear_Message, 3);
+		elseif( DruidBarKey.BearMessage[2] == "EMOTE") then
+			UIDropDownMenu_SetSelectedID(Bear_Message, 4);
+		elseif( not DruidBarKey.BearMessage[2]) then
+			UIDropDownMenu_SetSelectedID(Bear_Message, 1);
+			DruidBarKey.BearMessage[2] = "SAY";
+		end
+	UIDropDownMenu_SetWidth(Bear_Message, 80);
+end
+
+function DRUIDBAROptions_MessageBear_OnClick()
+	i = self:GetID();
+	UIDropDownMenu_SetSelectedID(Bear_Message, i);
+
+	if(i == 1) then
+			DruidBarKey.BearMessage[2] = "SAY";
+	elseif(i == 2) then
+			DruidBarKey.BearMessage[2] = "PARTY";
+	elseif(i == 3) then
+			DruidBarKey.BearMessage[2] = "RAID";
+	elseif(i == 4) then
+			DruidBarKey.BearMessage[2] = "EMOTE";
+	end
+end
+
+function DRUIDBAROptions_MessageAqua_Initialize()
+	local info;
+	for i = 0, 3, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
+		info.func = DRUIDBAROptions_MessageAqua_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_MessageAqua_OnShow()
+		UIDropDownMenu_Initialize(Aqua_Message, DRUIDBAROptions_MessageAqua_Initialize);
+		if( DruidBarKey.AquaMessage[2] == "SAY") then
+			UIDropDownMenu_SetSelectedID(Aqua_Message, 1);
+		elseif( DruidBarKey.AquaMessage[2] == "PARTY") then
+			UIDropDownMenu_SetSelectedID(Aqua_Message, 2);
+		elseif( DruidBarKey.AquaMessage[2] == "RAID") then
+			UIDropDownMenu_SetSelectedID(Aqua_Message, 3);
+		elseif( DruidBarKey.AquaMessage[2] == "EMOTE") then
+			UIDropDownMenu_SetSelectedID(Aqua_Message, 4);
+		elseif( not DruidBarKey.AquaMessage[2]) then
+			UIDropDownMenu_SetSelectedID(Aqua_Message, 1);
+			DruidBarKey.AquaMessage[2] = "SAY";
+		end
+	UIDropDownMenu_SetWidth(Aqua_Message, 80);
+end
+
+function DRUIDBAROptions_MessageAqua_OnClick()
+	i = self:GetID();
+	UIDropDownMenu_SetSelectedID(Aqua_Message, i);
+
+	if(i == 1) then
+			DruidBarKey.AquaMessage[2] = "SAY";
+	elseif(i == 2) then
+			DruidBarKey.AquaMessage[2] = "PARTY";
+	elseif(i == 3) then
+			DruidBarKey.AquaMessage[2] = "RAID";
+	elseif(i == 4) then
+			DruidBarKey.AquaMessage[2] = "EMOTE";
+	end
+end
+
+function DRUIDBAROptions_MessageCat_Initialize()
+	local info;
+	for i = 0, 3, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
+		info.func = DRUIDBAROptions_MessageCat_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_MessageCat_OnShow()
+		UIDropDownMenu_Initialize(Cat_Message, DRUIDBAROptions_MessageCat_Initialize);
+		if( DruidBarKey.CatMessage[2] == "SAY") then
+			UIDropDownMenu_SetSelectedID(Cat_Message, 1);
+		elseif( DruidBarKey.CatMessage[2] == "PARTY") then
+			UIDropDownMenu_SetSelectedID(Cat_Message, 2);
+		elseif( DruidBarKey.CatMessage[2] == "RAID") then
+			UIDropDownMenu_SetSelectedID(Cat_Message, 3);
+		elseif( DruidBarKey.CatMessage[2] == "EMOTE") then
+			UIDropDownMenu_SetSelectedID(Cat_Message, 4);
+		elseif( not DruidBarKey.CatMessage[2]) then
+			UIDropDownMenu_SetSelectedID(Cat_Message, 1);
+			DruidBarKey.CatMessage[2] = "SAY";
+		end
+	UIDropDownMenu_SetWidth(Cat_Message, 80);
+end
+
+function DRUIDBAROptions_MessageCat_OnClick()
+	i = self:GetID();
+	UIDropDownMenu_SetSelectedID(Cat_Message, i);
+
+	if(i == 1) then
+			DruidBarKey.CatMessage[2] = "SAY";
+	elseif(i == 2) then
+			DruidBarKey.CatMessage[2] = "PARTY";
+	elseif(i == 3) then
+			DruidBarKey.CatMessage[2] = "RAID";
+	elseif(i == 4) then
+			DruidBarKey.CatMessage[2] = "EMOTE";
+	end
+end
+
+function DRUIDBAROptions_MessageTrav_Initialize()
+	local info;
+	for i = 0, 3, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
+		info.func = DRUIDBAROptions_MessageTrav_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_MessageTrav_OnShow()
+		UIDropDownMenu_Initialize(Trav_Message, DRUIDBAROptions_MessageTrav_Initialize);
+		if( DruidBarKey.TravMessage[2] == "SAY") then
+			UIDropDownMenu_SetSelectedID(Trav_Message, 1);
+		elseif( DruidBarKey.TravMessage[2] == "PARTY") then
+			UIDropDownMenu_SetSelectedID(Trav_Message, 2);
+		elseif( DruidBarKey.TravMessage[2] == "RAID") then
+			UIDropDownMenu_SetSelectedID(Trav_Message, 3);
+		elseif( DruidBarKey.TravMessage[2] == "EMOTE") then
+			UIDropDownMenu_SetSelectedID(Trav_Message, 4);
+		elseif( not DruidBarKey.TravMessage[2]) then
+			UIDropDownMenu_SetSelectedID(Trav_Message, 1);
+			DruidBarKey.TravMessage[2] = "SAY";
+		end
+	UIDropDownMenu_SetWidth(Trav_Message, 80);
+end
+
+function DRUIDBAROptions_MessageTrav_OnClick()
+	i = self:GetID();
+	UIDropDownMenu_SetSelectedID(Trav_Message, i);
+
+	if(i == 1) then
+			DruidBarKey.TravMessage[2] = "SAY";
+	elseif(i == 2) then
+			DruidBarKey.TravMessage[2] = "PARTY";
+	elseif(i == 3) then
+			DruidBarKey.TravMessage[2] = "RAID";
+	elseif(i == 4) then
+			DruidBarKey.TravMessage[2] = "EMOTE";
+	end
+end
+
+
+function DRUIDBAROptions_MessageOOM_Initialize()
+	local info;
+	for i = 0, 3, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Message[i];
+		info.func = DRUIDBAROptions_MessageOOM_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_MessageOOM_OnShow()
+		UIDropDownMenu_Initialize(OOM_Message, DRUIDBAROptions_MessageOOM_Initialize);
+		if( DruidBarKey.OOMMessage[2] == "SAY") then
+			UIDropDownMenu_SetSelectedID(OOM_Message, 1);
+		elseif( DruidBarKey.OOMMessage[2] == "PARTY") then
+			UIDropDownMenu_SetSelectedID(OOM_Message, 2);
+		elseif( DruidBarKey.OOMMessage[2] == "RAID") then
+			UIDropDownMenu_SetSelectedID(OOM_Message, 3);
+		elseif( DruidBarKey.OOMMessage[2] == "EMOTE") then
+			UIDropDownMenu_SetSelectedID(OOM_Message, 4);
+		elseif( not DruidBarKey.OOMMessage[2]) then
+			UIDropDownMenu_SetSelectedID(OOM_Message, 1);
+			DruidBarKey.OOMMessage[2] = "SAY";
+		end
+	UIDropDownMenu_SetWidth(OOM_Message, 80);
+end
+
+function DRUIDBAROptions_MessageOOM_OnClick()
+	i = self:GetID();
+	UIDropDownMenu_SetSelectedID(OOM_Message, i);
+
+	if(i == 1) then
+			DruidBarKey.OOMMessage[2] = "SAY";
+	elseif(i == 2) then
+			DruidBarKey.OOMMessage[2] = "PARTY";
+	elseif(i == 3) then
+			DruidBarKey.OOMMessage[2] = "RAID";
+	elseif(i == 4) then
+			DruidBarKey.OOMMessage[2] = "EMOTE";
+	end
+end
+
+function DRUIDBAR_FrameSet()
+	-- DruidBarKey is not set, get out
+	if not DruidBarKey then return end
+
+	local gold = {1, 0.82, 0}
+	local grey = {0.5, 0.5, 0.5}
+	local allDisplayStyleTexts = {DRUIDBAROptionsVisText, DRUIDBAROptionsReplaceText,
+		DRUIDBAROptionsPlayerText, DRUIDBAROptionsCustomText, DRUIDBAROptionsHideText,
+	  DRUIDBAROptionsFullText, DRUIDBAROptionsLockText, DRUIDBAROptionsTextDropDownText,
+    DRUIDBAROptionsPercentDropDownText}
+
+	-- Check temp width and temp height
+	if not DruidBarKey.tempW then DruidBarKey.tempW = 0; end
+	if not DruidBarKey.tempH then DruidBarKey.tempH = 0; end
+
+	-- Toggle Checkboxes/Buttons
+	DRUIDBAROptionsToggle:SetChecked(DruidBarKey.Enabled);
+	DRUIDBAROptionsVis:SetChecked(DruidBarKey.Graphics);
+	DRUIDBAROptionsReplace:SetChecked(DruidBarKey.Replace);
+	DRUIDBAROptionsPlayer:SetChecked(DruidBarKey.Player);
+	DRUIDBAROptionsCustom:SetChecked(DruidBarKey.Custom);
+	DRUIDBAROptionsLock:SetChecked(DruidBarKey.Lock);
+	DRUIDBAROptionsHide:SetChecked(DruidBarKey.Hide);
+	DRUIDBAROptionsFull:SetChecked(DruidBarKey.Full);
+	DRUIDBAROptionsMessage:SetChecked(DruidBarKey.message);
+	-- Assign Text Box Values
+	DRUIDBAROptionsWidthEditBox:SetText(DruidBarKey.tempW);
+	DRUIDBAROptionsHeightEditBox:SetText(DruidBarKey.tempH);
+	Bear_Message_EditBox:SetText(DruidBarKey.BearMessage[1]);
+	Aqua_Message_EditBox:SetText(DruidBarKey.AquaMessage[1]);
+	Cat_Message_EditBox:SetText(DruidBarKey.CatMessage[1]);
+	Trav_Message_EditBox:SetText(DruidBarKey.TravMessage[1]);
+	OOM_Message_EditBox:SetText(DruidBarKey.OOMMessage[1]);
+	ManaBar_FrameLevel_EditBox:SetText(DruidBarKey.manatexture);
+	ManaBorder_FrameLevel_EditBox:SetText(DruidBarKey.bordertexture);
+
+	-- Addon Enabled and Graphics on
+	if(DruidBarKey.Enabled and DruidBarKey.Graphics) then
+		DRUIDBAROptionsVis:Enable();
+		DRUIDBAROptionsReplace:Enable();
+		DRUIDBAROptionsPlayer:Enable();
+		DRUIDBAROptionsCustom:Enable();
+		DRUIDBAROptionsHide:Enable();
+		DRUIDBAROptionsFull:Enable();
+		DRUIDBAROptionsLock:Enable();
+		SetTextColorFor(allDisplayStyleTexts, gold);
+	-- Addon Enabled and Graphics off
+	elseif DruidBarKey.Enabled and not DruidBarKey.Graphics then
+		DRUIDBAROptionsReplace:Disable();
+		DRUIDBAROptionsPlayer:Disable();
+		DRUIDBAROptionsCustom:Disable();
+		DRUIDBAROptionsHide:Disable();
+		DRUIDBAROptionsFull:Disable();
+		DRUIDBAROptionsLock:Disable();
+		SetTextColorFor(allDisplayStyleTexts, grey);
+		SetTextColorFor({DRUIDBAROptionsVisText}, gold);
+	elseif not DruidBarKey.Enabled then
+		DRUIDBAROptionsVis:Disable();
+		DRUIDBAROptionsReplace:Disable();
+		DRUIDBAROptionsPlayer:Disable();
+		DRUIDBAROptionsCustom:Disable();
+		DRUIDBAROptionsHide:Disable();
+		DRUIDBAROptionsFull:Disable();
+		DRUIDBAROptionsLock:Disable();
+
+		SetTextColorFor(allDisplayStyleTexts, grey);
+	end
+
+	-- Player or Replace is selected
+	if(DruidBarKey.Player == true or DruidBarKey.Replace == true) then
+		DRUIDBAROptionsLock:Disable();
+		DRUIDBAROptionsWidthEditBox:Disable();
+		DRUIDBAROptionsHeightEditBox:Disable();
+
+		SetTextColorFor({DRUIDBAROptionsLockText, DRUIDBAROptionsWidthText, DRUIDBAROptionsHeightText}, grey);
+	else
+		DRUIDBAROptionsLock:Enable();
+		DRUIDBAROptionsWidthEditBox:Enable();
+		DRUIDBAROptionsHeightEditBox:Enable();
+
+		SetTextColorFor({DRUIDBAROptionsLockText, DRUIDBAROptionsWidthText, DRUIDBAROptionsHeightText}, gold);
+	end
+end
+
+function SetTextColorFor(objects, color)
+	for k, v in pairs (objects) do
+	  v:SetTextColor(unpack(color))
+	end
+end
+
+function DRUIDBAROptions_GetColor(self)
+	if not DruidBarKey then return end
+	local info;
+	info = self;
+	info.hasColorSwatch = 1;
+	info.r = DruidBarKey.color[1];
+	info.g = DruidBarKey.color[2];
+	info.b = DruidBarKey.color[3];
+	info.notCheckable = 1;
+	info.opacity = 1.0 - DruidBarKey.color[4];
+	info.swatchFunc = function() DruidBarKey.color[1], DruidBarKey.color[2], DruidBarKey.color[3] = ColorPickerFrame:GetColorRGB(); end
+	info.func = UIDropDownMenuButton_OpenColorPicker;
+	info.hasOpacity = 0;
+	info.opacityFunc = function() DruidBarKey.color[4] = 1.0 - OpacitySliderFrame:GetValue(); end;
+	info.cancelFunc = function()    DruidBarKey.color[1] = ColorPickerFrame.previousValues.r;
+									DruidBarKey.color[2] = ColorPickerFrame.previousValues.g;
+									DruidBarKey.color[3] = ColorPickerFrame.previousValues.b;
+									DruidBarKey.color[4] = 1.0 - ColorPickerFrame.previousValues.opacity; end;
+	getglobal(self:GetName().."_SwatchBg"):SetVertexColor(DruidBarKey.color[1], DruidBarKey.color[2], DruidBarKey.color[3]);
+end
+
+function DRUIDBAROptions_GetBGColor(self)
+	if not DruidBarKey then return end
+	local info;
+	info = self;
+	info.hasColorSwatch = 1;
+	info.r = DruidBarKey.bgcolor[1];
+	info.g = DruidBarKey.bgcolor[2];
+	info.b = DruidBarKey.bgcolor[3];
+	info.notCheckable = 1;
+	info.opacity = 1.0 - DruidBarKey.bgcolor[4];
+	info.swatchFunc = function() DruidBarKey.bgcolor[1], DruidBarKey.bgcolor[2], DruidBarKey.bgcolor[3] = ColorPickerFrame:GetColorRGB(); end
+	info.func = UIDropDownMenuButton_OpenColorPicker;
+	info.hasOpacity = 0;
+	info.opacityFunc = function() DruidBarKey.bgcolor[4] = 1.0 - OpacitySliderFrame:GetValue(); end;
+	info.cancelFunc = function()    DruidBarKey.bgcolor[1] = ColorPickerFrame.previousValues.r;
+									DruidBarKey.bgcolor[2] = ColorPickerFrame.previousValues.g;
+									DruidBarKey.bgcolor[3] = ColorPickerFrame.previousValues.b;
+									DruidBarKey.bgcolor[4] = 1.0 - ColorPickerFrame.previousValues.opacity; end;
+	getglobal(self:GetName().."_SwatchBg"):SetVertexColor(DruidBarKey.bgcolor[1], DruidBarKey.bgcolor[2], DruidBarKey.bgcolor[3]);
+end
+
+function DRUIDBAROptions_GetBorderColor(self)
+	if not DruidBarKey then return end
+	local info;
+	info = self;
+	info.hasColorSwatch = 1;
+	info.r = DruidBarKey.bordercolor[1];
+	info.g = DruidBarKey.bordercolor[2];
+	info.b = DruidBarKey.bordercolor[3];
+	info.notCheckable = 1;
+	info.opacity = 1.0 - DruidBarKey.bordercolor[4];
+	info.swatchFunc = function() DruidBarKey.bordercolor[1], DruidBarKey.bordercolor[2], DruidBarKey.bordercolor[3] = ColorPickerFrame:GetColorRGB(); end
+	info.func = UIDropDownMenuButton_OpenColorPicker;
+	info.hasOpacity = 0;
+	info.opacityFunc = function() DruidBarKey.bordercolor[4] = 1.0 - OpacitySliderFrame:GetValue(); end;
+	info.cancelFunc = function()    DruidBarKey.bordercolor[1] = ColorPickerFrame.previousValues.r;
+									DruidBarKey.bordercolor[2] = ColorPickerFrame.previousValues.g;
+									DruidBarKey.bordercolor[3] = ColorPickerFrame.previousValues.b;
+									DruidBarKey.bordercolor[4] = 1.0 - ColorPickerFrame.previousValues.opacity; end;
+	getglobal(self:GetName().."_SwatchBg"):SetVertexColor(DruidBarKey.bordercolor[1], DruidBarKey.bordercolor[2], DruidBarKey.bordercolor[3]);
+end
+
+function DRUIDBAROptions_ManaBarFrameLevel_Initialize()
+	local info;
+	for i = 0, 3, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Strata[i];
+		info.func = DRUIDBAROptions_ManaBarFrameLevel_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_ManaBarFrameLevel_OnShow()
+		UIDropDownMenu_Initialize(ManaBar_FrameLevel, DRUIDBAROptions_ManaBarFrameLevel_Initialize);
+		if DruidBarKey.barstrata then
+			UIDropDownMenu_SetSelectedID(ManaBar_FrameLevel, DruidBarKey.barstrata+1);
+		elseif not DruidBarKey.barstrata then
+			UIDropDownMenu_SetSelectedID(ManaBar_FrameLevel, 2);
+			DruidBarKey.barstrata = 2;
+		end
+	UIDropDownMenu_SetWidth(ManaBar_FrameLevel, 80);
+end
+
+function DRUIDBAROptions_ManaBarFrameLevel_OnClick()
+	i = self:GetID();
+	DruidBarKey.barstrata = i-1;
+	UIDropDownMenu_SetSelectedID(ManaBar_FrameLevel, i);
+	DEFAULT_CHAT_FRAME:AddMessage(i);
+end
+
+function DRUIDBAROptions_ManaBorderFrameLevel_Initialize()
+	local info;
+	for i = 0, 3, 1 do
+		info = { };
+		info.text = DRUIDBAR_OPTIONS_DROP.Strata[i];
+		info.func = DRUIDBAROptions_ManaBorderFrameLevel_OnClick;
+		UIDropDownMenu_AddButton(info);
+	end
+end
+
+function DRUIDBAROptions_ManaBorderFrameLevel_OnShow()
+		UIDropDownMenu_Initialize(ManaBorder_FrameLevel, DRUIDBAROptions_ManaBorderFrameLevel_Initialize);
+		if DruidBarKey.borderstrata then
+			local i;
+			local j = DruidBarKey.borderstrata;
+			if j == "BACKGROUND" then i = 1; elseif j == "BORDER" then i = 2; elseif j == "ARTWORK" then i = 3; elseif j == "OVERLAY" then i = 4; end
+			UIDropDownMenu_SetSelectedID(ManaBorder_FrameLevel, i+1);
+		elseif not DruidBarKey.borderstrata then
+			UIDropDownMenu_SetSelectedID(ManaBorder_FrameLevel, 1);
+			DruidBarKey.borderstrata = "BACKGROUND";
+		end
+	UIDropDownMenu_SetWidth(ManaBorder_FrameLevel, 80);
+end
+
+function DRUIDBAROptions_ManaBorderFrameLevel_OnClick()
+	i = self:GetID();
+	local j;
+	if i == 1 then j = "BACKGROUND"; elseif i == 2 then j = "BORDER"; elseif i == 3 then j = "ARTWORK"; elseif i == 4 then j = "OVERLAY"; end
+	DruidBarKey.borderstrata = j;
+	UIDropDownMenu_SetSelectedID(ManaBorder_FrameLevel, i);
+end
diff --git a/Options.xml b/Options.xml
new file mode 100644
index 0000000..540b951
--- /dev/null
+++ b/Options.xml
@@ -0,0 +1,1214 @@
+<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">
+	<Frame name="DRUIDBAROptionsFrame" toplevel="true" frameStrata="DIALOG" movable="true" enableMouse="true" hidden="true" parent="UIParent">
+		<Size>
+			<AbsDimension x="460" y="600"/>
+		</Size>
+
+		<Anchors>
+			<Anchor point="CENTER"/>
+		</Anchors>
+
+		<Backdrop bgFile="Interface\DialogFrame\UI-DialogBox-Background" edgeFile="Interface\DialogFrame\UI-DialogBox-Border" tile="true">
+			<BackgroundInsets>
+				<AbsInset left="11" right="12" top="12" bottom="11"/>
+			</BackgroundInsets>
+
+			<TileSize>
+				<AbsValue val="32"/>
+			</TileSize>
+
+			<EdgeSize>
+				<AbsValue val="32"/>
+			</EdgeSize>
+		</Backdrop>
+
+		<Layers>
+			<Layer level="ARTWORK">
+				<Texture name="DRUIDBAROptionsFrameHeader" file="Interface\DialogFrame\UI-DialogBox-Header" movable="true" enableMouse="true">
+					<Size>
+						<AbsDimension x="256" y="64"/>
+					</Size>
+
+					<Anchors>
+						<Anchor point="TOP">
+							<Offset>
+								<AbsDimension x="0" y="12"/>
+							</Offset>
+						</Anchor>
+					</Anchors>
+				</Texture>
+
+				<FontString inherits="GameFontNormal" text="DRUIDBAR_OPTIONS_TITLE">
+					<Anchors>
+						<Anchor point="TOP" relativeTo="DRUIDBAROptionsFrameHeader">
+							<Offset>
+								<AbsDimension x="0" y="-14"/>
+							</Offset>
+						</Anchor>
+					</Anchors>
+				</FontString>
+			</Layer>
+		</Layers>
+
+		<!-- Layout for all options -->
+		<Frames>
+			<!-- BAR OPTIONS SUBFRAME -->
+			<!-- Text Header for 'Bar Options' -->
+			<Frame name="DRUIDBAROptions_Bar">
+				<Size>
+					<AbsDimension x="420" y="200"/>
+				</Size>
+
+				<Anchors>
+					<Anchor point="TOPLEFT">
+						<Offset>
+							<AbsDimension x="20" y="-30"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Backdrop bgFile="Interface\Tooltips\UI-Tooltip-Background" edgeFile="Interface\Tooltips\UI-Tooltip-Border" tile="true">
+					<EdgeSize>
+						<AbsValue val="8"/>
+					</EdgeSize>
+
+					<TileSize>
+						<AbsValue val="8"/>
+					</TileSize>
+
+					<BackgroundInsets>
+						<AbsInset left="2" right="2" top="2" bottom="2"/>
+					</BackgroundInsets>
+				</Backdrop>
+
+				<Layers>
+					<Layer>
+						<FontString inherits="GameFontHighlight" text="DRUIDBAR_OPTIONS_Bar">
+							<Anchors>
+								<Anchor point="TOP">
+									<Offset>
+										<AbsDimension x="0" y="-6"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+
+				<Scripts>
+					<OnLoad>
+						self:SetBackdropBorderColor(0.4, 0.4, 0.4);
+						self:SetBackdropColor(0.1, 0.1, 0.1);
+					</OnLoad>
+				</Scripts>
+			</Frame>
+
+			<!-- Toggle for 'Enable' -->
+			<CheckButton name="DRUIDBAROptionsToggle" inherits="OptionsCheckButtonTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="30" y="-30"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Toggle);
+					</OnLoad>
+
+					<OnClick>
+						DRUIDBAROptions_Toggle();
+					</OnClick>
+				</Scripts>
+			</CheckButton>
+
+			<!-- Toggle for 'Graphics' -->
+			<CheckButton name="DRUIDBAROptionsVis" inherits="OptionsCheckButtonTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="175" y="-30"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Vis);
+					</OnLoad>
+					<OnClick>
+						DRUIDBAROptions_Vis();
+					</OnClick>
+					<OnEnter>
+						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
+						GameTooltip:SetText(DRUIDBAR_OPTIONS_VisTT);
+						GameTooltip:Show();
+					</OnEnter>
+					<OnLeave>
+						GameTooltip:Hide();
+					</OnLeave>
+				</Scripts>
+			</CheckButton>
+
+			<!-- Toggle for 'Hide when in caster form' -->
+			<CheckButton name="DRUIDBAROptionsHide" inherits="OptionsCheckButtonTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="30" y="-60"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Hide);
+					</OnLoad>
+
+					<OnClick>
+						DRUIDBAROptions_Hide();
+					</OnClick>
+				</Scripts>
+			</CheckButton>
+
+			<!-- Toggle for 'Hide when mana is full' -->
+			<CheckButton name="DRUIDBAROptionsFull" inherits="OptionsCheckButtonTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="225" y="-60"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Full);
+					</OnLoad>
+
+					<OnClick>
+						DRUIDBAROptions_Full();
+					</OnClick>
+				</Scripts>
+			</CheckButton>
+
+			<!-- Radio for style 'Replace' -->
+			<CheckButton name="DRUIDBAROptionsReplace" inherits="UIRadioButtonTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="35" y="-100"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Replace);
+					</OnLoad>
+
+					<OnClick>
+						DRUIDBAROptions_Replace();
+					</OnClick>
+
+					<OnEnter>
+						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
+						GameTooltip:SetText(DRUIDBAR_OPTIONS_ReplaceTT);
+						GameTooltip:Show();
+					</OnEnter>
+
+					<OnLeave>
+						GameTooltip:Hide();
+					</OnLeave>
+				</Scripts>
+			</CheckButton>
+
+			<!-- Radio for style 'Player' -->
+			<CheckButton name="DRUIDBAROptionsPlayer" inherits="UIRadioButtonTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="120" y="-100"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Player);
+					</OnLoad>
+
+					<OnClick>
+						DRUIDBAROptions_Player();
+					</OnClick>
+
+					<OnEnter>
+						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
+						GameTooltip:SetText(DRUIDBAR_OPTIONS_PlayerTT);
+						GameTooltip:Show();
+					</OnEnter>
+
+					<OnLeave>
+						GameTooltip:Hide();
+					</OnLeave>
+				</Scripts>
+			</CheckButton>
+
+			<!-- Radio for style 'Custom' -->
+			<CheckButton name="DRUIDBAROptionsCustom" inherits="UIRadioButtonTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="230" y="-100"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Custom);
+					</OnLoad>
+
+					<OnClick>
+						DRUIDBAROptions_Custom();
+					</OnClick>
+				</Scripts>
+			</CheckButton>
+
+			<!-- Input for 'Width' -->
+			<EditBox name="DRUIDBAROptionsWidthEditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="34" y="16"/>
+				</Size>
+
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptionsCustom" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="20" y="-30"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(4);
+					</OnLoad>
+
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+
+					<OnTextChanged>
+						DRUIDBAROptions_CheckWidth(self);
+					</OnTextChanged>
+				</Scripts>
+
+				<FontString inherits="ChatFontNormal"/>
+
+				<Layers>
+					<Layer level="OVERLAY">
+						<FontString name="DRUIDBAROptionsWidthText" inherits="GameFontNormalSmall" justifyH="RIGHT" text="DRUIDBAR_OPTIONS_Width">
+							<Size>
+								<AbsDimension x="0" y="20"/>
+							</Size>
+
+							<Anchors>
+								<Anchor point="LEFT" relativeTo="DRUIDBAROptionsWidthEditBox" relativePoint="RIGHT">
+									<Offset>
+										<AbsDimension x="5" y="0"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+			</EditBox>
+
+			<!-- Input for 'Height' -->
+			<EditBox name="DRUIDBAROptionsHeightEditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="34" y="16"/>
+				</Size>
+
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="DRUIDBAROptionsWidthEditBox" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="50" y="0"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(3);
+					</OnLoad>
+
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+
+					<OnTextChanged>
+						DRUIDBAROptions_CheckHeight(self);
+					</OnTextChanged>
+				</Scripts>
+
+				<FontString inherits="ChatFontNormal"/>
+
+				<Layers>
+					<Layer level="OVERLAY">
+						<FontString name="DRUIDBAROptionsHeightText" inherits="GameFontNormalSmall" justifyH="RIGHT" text="DRUIDBAR_OPTIONS_Height">
+							<Size>
+								<AbsDimension x="0" y="20"/>
+							</Size>
+
+							<Anchors>
+								<Anchor point="LEFT" relativeTo="DRUIDBAROptionsHeightEditBox" relativePoint="RIGHT">
+									<Offset>
+										<AbsDimension x="5" y="0"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+			</EditBox>
+
+			<!-- Toggle for 'Lock' -->
+			<CheckButton name="DRUIDBAROptionsLock" inherits="OptionsCheckButtonTemplate">
+				<Anchors>
+					<Anchor point="RIGHT" relativeTo="DRUIDBAROptionsCustom" relativePoint="LEFT">
+						<Offset>
+							<AbsDimension x="100" y=""/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Lock);
+					</OnLoad>
+
+					<OnClick>
+						DRUIDBAROptions_Lock();
+					</OnClick>
+				</Scripts>
+			</CheckButton>
+
+			<!-- Dropdown to select 'Text Style' -->
+			<Frame name="DRUIDBAROptionsTextDropDown" inherits="UIDropDownMenuTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="75" y="-130"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Text">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="DRUIDBAROptionsTextDropDown" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="10" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_Text_OnShow(self);
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<!-- Dropdown to select 'Number Style' -->
+			<Frame name="DRUIDBAROptionsPercentDropDown" inherits="UIDropDownMenuTemplate" enableMouse="true">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Bar" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="75" y="-160"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Percent">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="DRUIDBAROptionsPercentDropDown" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="10" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_Percent_OnShow();
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<!-- MESSAGES SUBFRAME -->
+			<!-- Text Header for 'Messages' -->
+			<Frame name="DRUIDBAROptions_Messages">
+				<Size>
+					<AbsDimension x="420" y="195"/>
+				</Size>
+
+				<Anchors>
+					<Anchor point="TOPLEFT">
+						<Offset>
+							<AbsDimension x="20" y="-235"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Backdrop bgFile="Interface\Tooltips\UI-Tooltip-Background" edgeFile="Interface\Tooltips\UI-Tooltip-Border" tile="true">
+					<EdgeSize>
+						<AbsValue val="8"/>
+					</EdgeSize>
+
+					<TileSize>
+						<AbsValue val="8"/>
+					</TileSize>
+
+					<BackgroundInsets>
+						<AbsInset left="2" right="2" top="2" bottom="2"/>
+					</BackgroundInsets>
+				</Backdrop>
+
+				<Layers>
+					<Layer>
+						<FontString inherits="GameFontHighlight" text="DRUIDBAR_OPTIONS_MessageO">
+							<Anchors>
+								<Anchor point="TOP">
+									<Offset>
+										<AbsDimension x="0" y="-6"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+
+				<Scripts>
+					<OnLoad>
+						self:SetBackdropBorderColor(0.4, 0.4, 0.4);
+						self:SetBackdropColor(0.1, 0.1, 0.1);
+					</OnLoad>
+				</Scripts>
+			</Frame>
+
+			<!-- Toggle for 'Enable' -->
+			<CheckButton name="DRUIDBAROptionsMessage" inherits="OptionsCheckButtonTemplate">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Messages" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="30" y="-30"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_Message);
+					</OnLoad>
+					<OnClick>
+						DRUIDBAROptions_Message();
+					</OnClick>
+					<OnEnter>
+						GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
+						GameTooltip:SetText(DRUIDBAR_OPTIONS_MessageTT);
+						GameTooltip:Show();
+					</OnEnter>
+					<OnLeave>
+						GameTooltip:Hide();
+					</OnLeave>
+				</Scripts>
+			</CheckButton>
+
+			<Frame name="Bear_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Messages" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="55" y="-60"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Bear">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="Bear_Message" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="16" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_MessageBear_OnShow();
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<EditBox name="Bear_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="230" y="16"/>
+				</Size>
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="Bear_Message" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="-8" y="2"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(225);
+					</OnLoad>
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+					<OnTextChanged>
+						DruidBarKey.BearMessage[1] = self:GetText();
+					</OnTextChanged>
+				</Scripts>
+				<FontString inherits="ChatFontNormal"/>
+			</EditBox>
+
+			<Frame name="Aqua_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
+				<Anchors>
+					<Anchor point="TOP" relativeTo="Bear_Message" relativePoint="BOTTOM">
+						<Offset>
+							<AbsDimension x="0" y="8"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Aqua">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="Aqua_Message" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="16" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_MessageAqua_OnShow();
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<EditBox name="Aqua_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="230" y="16"/>
+				</Size>
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="Aqua_Message" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="-8" y="2"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(225);
+					</OnLoad>
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+					<OnTextChanged>
+						DruidBarKey.AquaMessage[1] = self:GetText();
+					</OnTextChanged>
+				</Scripts>
+				<FontString inherits="ChatFontNormal"/>
+			</EditBox>
+
+			<Frame name="Cat_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
+				<Anchors>
+					<Anchor point="TOP" relativeTo="Aqua_Message" relativePoint="BOTTOM">
+						<Offset>
+							<AbsDimension x="0" y="8"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Cat">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="Cat_Message" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="16" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_MessageCat_OnShow();
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<EditBox name="Cat_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="230" y="16"/>
+				</Size>
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="Cat_Message" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="-8" y="2"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(225);
+					</OnLoad>
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+					<OnTextChanged>
+						DruidBarKey.CatMessage[1] = self:GetText();
+					</OnTextChanged>
+				</Scripts>
+				<FontString inherits="ChatFontNormal"/>
+			</EditBox>
+
+			<Frame name="Trav_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
+				<Anchors>
+					<Anchor point="TOP" relativeTo="Cat_Message" relativePoint="BOTTOM">
+						<Offset>
+							<AbsDimension x="0" y="8"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Trav">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="Trav_Message" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="16" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_MessageTrav_OnShow();
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<EditBox name="Trav_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="230" y="16"/>
+				</Size>
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="Trav_Message" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="-8" y="2"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(225);
+					</OnLoad>
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+					<OnTextChanged>
+						DruidBarKey.TravMessage[1] = self:GetText();
+					</OnTextChanged>
+				</Scripts>
+				<FontString inherits="ChatFontNormal"/>
+			</EditBox>
+
+			<Frame name="OOM_Message" inherits="UIDropDownMenuTemplate" enableMouse="true">
+				<Anchors>
+					<Anchor point="TOP" relativeTo="Trav_Message" relativePoint="BOTTOM">
+						<Offset>
+							<AbsDimension x="0" y="8"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Oom">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="OOM_Message" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="16" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_MessageOOM_OnShow();
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<EditBox name="OOM_Message_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="230" y="16"/>
+				</Size>
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="OOM_Message" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="-8" y="2"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(225);
+					</OnLoad>
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+					<OnTextChanged>
+						DruidBarKey.OOMMessage[1] = self:GetText();
+					</OnTextChanged>
+				</Scripts>
+				<FontString inherits="ChatFontNormal"/>
+			</EditBox>
+
+			<!-- MISC SUBFRAME -->
+			<!-- Text Header for 'Misc' -->
+			<Frame name="DRUIDBAROptions_Misc">
+				<Size>
+					<AbsDimension x="420" y="120"/>
+				</Size>
+
+				<Anchors>
+					<Anchor point="TOPLEFT">
+						<Offset>
+							<AbsDimension x="20" y="-435"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Backdrop bgFile="Interface\Tooltips\UI-Tooltip-Background" edgeFile="Interface\Tooltips\UI-Tooltip-Border" tile="true">
+					<EdgeSize>
+						<AbsValue val="8"/>
+					</EdgeSize>
+
+					<TileSize>
+						<AbsValue val="8"/>
+					</TileSize>
+
+					<BackgroundInsets>
+						<AbsInset left="2" right="2" top="2" bottom="2"/>
+					</BackgroundInsets>
+				</Backdrop>
+
+				<Layers>
+					<Layer>
+						<FontString inherits="GameFontHighlight" text="DRUIDBAR_OPTIONS_MiscO">
+							<Anchors>
+								<Anchor point="TOP">
+									<Offset>
+										<AbsDimension x="0" y="-6"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+
+				<Scripts>
+					<OnLoad>
+						self:SetBackdropBorderColor(0.4, 0.4, 0.4);
+						self:SetBackdropColor(0.1, 0.1, 0.1);
+					</OnLoad>
+				</Scripts>
+			</Frame>
+
+			<Button name="DBColorSwatch" hidden="false" virtual="true">
+				<Size>
+					<AbsDimension x="20" y="20"/>
+				</Size>
+
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DRUIDBAROptions_Misc" relativePoint="TOPLEFT">
+						<Offset>
+							<AbsDimension x="30" y="-30"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Layers>
+					<Layer level="ARTWORK">
+						<Texture name="$parent_SwatchBg" file="Interface\TargetingFrame\UI-StatusBar">
+							<Size>
+								<AbsDimension x="14" y="14"/>
+							</Size>
+
+							<Anchors>
+								<Anchor point="LEFT" relativeTo="$parent" relativePoint="CENTER">
+									<Offset>
+										<AbsDimension x="0" y="0"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+
+							<Color r="1.0" g="1.0" b="1.0"/>
+						</Texture>
+
+						<FontString name="$parentText" inherits="GameFontNormalSmall" text="Bar Color" JustifyH="LEFT">
+							<Size>
+								<AbsDimension x="75" y="16"/>
+							</Size>
+
+							<Anchors>
+								<Anchor point="LEFT" relativeTo="$parent_SwatchBg" relativePoint="RIGHT">
+									<Offset>
+										<AbsDimension x="10" y="0"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_ColorBar);
+					</OnLoad>
+					<OnShow>
+						DRUIDBAROptions_GetColor(self);
+					</OnShow>
+					<OnClick>
+						DRUIDBAROptionsFrame:Hide();
+						UIDropDownMenuButton_OpenColorPicker(self);
+					</OnClick>
+				</Scripts>
+			</Button>
+
+			<Button name="DBBGSwatch" hidden="false" virtual="true">
+				<Size>
+					<AbsDimension x="20" y="20"/>
+				</Size>
+
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="DBColorSwatchText" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="0" y="0"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Layers>
+					<Layer level="ARTWORK">
+						<Texture name="$parent_SwatchBg" file="Interface\TargetingFrame\UI-StatusBar">
+							<Size>
+								<AbsDimension x="14" y="14"/>
+							</Size>
+
+							<Anchors>
+								<Anchor point="LEFT" relativeTo="$parent" relativePoint="CENTER">
+									<Offset>
+										<AbsDimension x="0" y="0"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+
+							<Color r="1.0" g="1.0" b="1.0"/>
+						</Texture>
+
+						<FontString name="$parentText" inherits="GameFontNormalSmall" text="Background Color" JustifyH="LEFT">
+							<Size>
+								<AbsDimension x="75" y="16"/>
+							</Size>
+
+							<Anchors>
+								<Anchor point="LEFT" relativeTo="$parent_SwatchBg" relativePoint="RIGHT">
+									<Offset>
+										<AbsDimension x="10" y="0"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_ColorBack);
+					</OnLoad>
+					<OnShow>
+						DRUIDBAROptions_GetBGColor(self);
+					</OnShow>
+					<OnClick>
+						DRUIDBAROptionsFrame:Hide();
+						UIDropDownMenuButton_OpenColorPicker(self);
+					</OnClick>
+				</Scripts>
+			</Button>
+
+			<Button name="DBBorderSwatch" hidden="false" virtual="true">
+				<Size>
+					<AbsDimension x="20" y="20"/>
+				</Size>
+
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="DBBGSwatchText" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="0" y="0"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Layers>
+					<Layer level="ARTWORK">
+						<Texture name="$parent_SwatchBg" file="Interface\TargetingFrame\UI-StatusBar">
+							<Size>
+								<AbsDimension x="14" y="14"/>
+							</Size>
+
+							<Anchors>
+								<Anchor point="LEFT" relativeTo="$parent" relativePoint="CENTER">
+									<Offset>
+										<AbsDimension x="0" y="0"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+
+							<Color r="1.0" g="1.0" b="1.0"/>
+						</Texture>
+
+						<FontString name="$parentText" inherits="GameFontNormalSmall" text="Border Color" JustifyH="LEFT">
+							<Size>
+								<AbsDimension x="75" y="16"/>
+							</Size>
+
+							<Anchors>
+								<Anchor point="LEFT" relativeTo="$parent_SwatchBg" relativePoint="RIGHT">
+									<Offset>
+										<AbsDimension x="10" y="0"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+
+				<Scripts>
+					<OnLoad>
+						getglobal(self:GetName().."Text"):SetText(DRUIDBAR_OPTIONS_ColorBorder);
+					</OnLoad>
+					<OnShow>
+						DRUIDBAROptions_GetBorderColor(self);
+					</OnShow>
+					<OnClick>
+						DRUIDBAROptionsFrame:Hide();
+						UIDropDownMenuButton_OpenColorPicker(self);
+					</OnClick>
+				</Scripts>
+			</Button>
+
+			<Frame name="ManaBar_FrameLevel" inherits="UIDropDownMenuTemplate" enableMouse="true">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="DBColorSwatch" relativePoint="BOTTOM">
+						<Offset>
+							<AbsDimension x="15" y="-5"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_Mana">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="ManaBar_FrameLevel" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="16" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_ManaBarFrameLevel_OnShow();
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<EditBox name="ManaBar_FrameLevel_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="230" y="16"/>
+				</Size>
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="ManaBar_FrameLevel" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="-8" y="2"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(225);
+					</OnLoad>
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+					<OnTextChanged>
+						DruidBarKey.manatexture = self:GetText();
+					</OnTextChanged>
+				</Scripts>
+				<FontString inherits="ChatFontNormal"/>
+			</EditBox>
+
+			<Frame name="ManaBorder_FrameLevel" inherits="UIDropDownMenuTemplate" enableMouse="true">
+				<Anchors>
+					<Anchor point="TOPLEFT" relativeTo="ManaBar_FrameLevel" relativePoint="BOTTOMLEFT">
+						<Offset>
+							<AbsDimension x="0" y="5"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" text="DRUIDBAR_OPTIONS_Message_border">
+							<Anchors>
+								<Anchor point="RIGHT" relativeTo="ManaBorder_FrameLevel" relativePoint="LEFT">
+									<Offset>
+										<AbsDimension x="16" y="2"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+				<Scripts>
+					<OnShow>
+						DRUIDBAROptions_ManaBorderFrameLevel_OnShow();
+					</OnShow>
+				</Scripts>
+			</Frame>
+
+			<EditBox name="ManaBorder_FrameLevel_EditBox" autoFocus="false" inherits="InputBoxTemplate" bytes="64">
+				<Size>
+					<AbsDimension x="230" y="16"/>
+				</Size>
+				<Anchors>
+					<Anchor point="LEFT" relativeTo="ManaBorder_FrameLevel" relativePoint="RIGHT">
+						<Offset>
+							<AbsDimension x="-8" y="2"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnLoad>
+						self:SetMaxLetters(225);
+					</OnLoad>
+					<OnEnterPressed>
+						self:ClearFocus();
+					</OnEnterPressed>
+					<OnEscapePressed>
+						self:ClearFocus();
+					</OnEscapePressed>
+					<OnTextChanged>
+						DruidBarKey.bordertexture = self:GetText();
+					</OnTextChanged>
+				</Scripts>
+				<FontString inherits="ChatFontNormal"/>
+			</EditBox>
+
+			<Button name="DRUIDBAROptionsFrameClose" inherits="OptionsButtonTemplate" text="DRUIDBAR_OPTIONS_Close">
+				<Anchors>
+					<Anchor point="BOTTOMRIGHT">
+						<Offset>
+							<AbsDimension x="-20" y="20"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnClick>
+						DRUIDBAROptionsFrame_Toggle();
+					</OnClick>
+				</Scripts>
+				<Layers>
+					<Layer level="BACKGROUND">
+						<FontString name="$parentLabel" inherits="GameFontNormalSmall" justifyH="LEFT" text="DRUIDBAR_OPTIONS_Version">
+							<Anchors>
+								<Anchor point="BOTTOMLEFT" relativeTo="DRUIDBAROptionsFrame">
+									<Offset>
+										<AbsDimension x="20" y="16"/>
+									</Offset>
+								</Anchor>
+							</Anchors>
+						</FontString>
+					</Layer>
+				</Layers>
+			</Button>
+		</Frames>
+
+		<Scripts>
+			<OnLoad>
+				DRUIDBAROptions_OnLoad();
+				self:RegisterForDrag("LeftButton");
+			</OnLoad>
+			<OnDragStart>self:StartMoving();</OnDragStart>
+			<OnDragStop>self:StopMovingOrSizing();</OnDragStop>
+		</Scripts>
+	</Frame>
+</Ui>
diff --git a/README.md b/README.md
index f9842ff..bcae86a 100644
--- a/README.md
+++ b/README.md
@@ -46,8 +46,6 @@ There are 2 available /druidbar or /dbar and either may recieve a number of para

 * Best: This will try to determine which is the best travel form for you to be in; Mounted, Cheetah, or Aquatic.

-* kmg: This will try to replace the MiniGroup window's mana bar with a split-screen bar like with replace.
-
 * Debug: dumps some junk into the chat frame to help me(and you) figure out why the bar is not subtracting the proper amount of mana.

 * shift: enables or disables the "shift back to caster using any form" option built-in to druidbar. defaults to enabled.
@@ -70,6 +68,10 @@ Discord: https://discord.gg/b5sPQnu

 ## Version History

+#### 0.2
+Remove KMG suport.
+Re-align options.
+
 #### 0.1:
 Got most things up and running for basic functionality.

diff --git a/localization.lua b/localization.lua
index c590501..d840100 100644
--- a/localization.lua
+++ b/localization.lua
@@ -1,5 +1,5 @@
 DRUIDBAR_CHAT_COMMAND_USAGE	= "Commands: /DruidBar or /dbar.\n/dbar function to see behavioral parameters\n/dbar cosmetic to see cosmetic parameters.";
-DRUIDBAR_CHAT_FUNCTIONAL_USAGE 	= "Functional Parameters: [Toggle/Update/Lock/Hide/Replace/shift/EZShift/kmg/best/message]";
+DRUIDBAR_CHAT_FUNCTIONAL_USAGE 	= "Functional Parameters: [Toggle/Update/Lock/Hide/Replace/shift/EZShift/best/message]";
 DRUIDBAR_CHAT_COSMETIC_USAGE	= "Cosmetic Parameters: [barcolor/ShowText/Percent/Changex (1-??)/Changey (1-??)/PlayerFrame/Color/TextType/TextColor]\ntype /dbar textcolor for more info on it";
 DRUIDBAR_CHAT_TEXTCOLOR_USE	= "TextColor use: /dbar textcolor -color- (\"original, red, orange, yellow, green, blue, purple, black, white\")\n/dbar textcolor [r/g/b] (0.00 to 1.00)\n/dbar textcolor set # # #";
 DRUIDBAR_DRUIDCLASS	= "Druid";
@@ -31,20 +31,19 @@ DRUIDBAR_WAR = "Summon Warhorse";

 DRUIDBAR_OPTIONS_TITLE = "Druid Bar Options";
 DRUIDBAR_OPTIONS_Bar = "Bar Options";
+DRUIDBAR_OPTIONS_Style = "Display Style"
 DRUIDBAR_OPTIONS_MessageO = "Shapeshift Message Options";
 DRUIDBAR_OPTIONS_MessageTT = "Allows you to send messages in the channel you choose when shifted.";
 DRUIDBAR_OPTIONS_MiscO = "Misc";
 DRUIDBAR_OPTIONS_Toggle = "Enable";
 DRUIDBAR_OPTIONS_Vis = "Graphics";
 DRUIDBAR_OPTIONS_VisTT = "Enable or disable any and all graphical stuff.\nIf you use with other addons like StatusBars or Linoleum, turn it off. If not, leave it on.";
-DRUIDBAR_OPTIONS_KMG = "MiniGroup bar";
-DRUIDBAR_OPTIONS_KMGTT = "Replacing the MiniGroup mana bar";
 DRUIDBAR_OPTIONS_Replace = "Replace";
 DRUIDBAR_OPTIONS_ReplaceTT = "Replace the Player Frame's mana bar, splitting it into two when shifted.";
 DRUIDBAR_OPTIONS_Player = "Player Frame";
 DRUIDBAR_OPTIONS_PlayerTT = "Make the bar show up directly under the Player Frame.";
 DRUIDBAR_OPTIONS_Custom = "Custom";
-DRUIDBAR_OPTIONS_Weight = "Width";
+DRUIDBAR_OPTIONS_Width = "Width";
 DRUIDBAR_OPTIONS_Height = "Height";
 DRUIDBAR_OPTIONS_Lock = "Lock";
 DRUIDBAR_OPTIONS_Hide = "Hide when in caster form";
@@ -153,14 +152,12 @@ elseif GetLocale() == "zhTW" then
 	DRUIDBAR_OPTIONS_Toggle = "啟用";
 	DRUIDBAR_OPTIONS_Vis = "變示";
 	DRUIDBAR_OPTIONS_VisTT = "開啟或是關閉任一個,或是全部的顯示。\n如果你和其他的插件(如StatusBars或是Linoleum)一起使用的話,關掉它,不然請保持在開啟狀態。";
-	DRUIDBAR_OPTIONS_KMG = "MiniGroup狀態條";
-	DRUIDBAR_OPTIONS_KMGTT = "取代MiniGroup法力條";
 	DRUIDBAR_OPTIONS_Replace = "取代";
 	DRUIDBAR_OPTIONS_ReplaceTT = "取代玩家的法力條,變形時狀態條會變成二條分別顯示法力和能量/怒氣。";
 	DRUIDBAR_OPTIONS_Player = "玩家圖像";
 	DRUIDBAR_OPTIONS_PlayerTT = "將DruidBar直接顯示在圖像下方";
 	DRUIDBAR_OPTIONS_Custom = "自訂";
-	DRUIDBAR_OPTIONS_Weight = "寛度";
+	DRUIDBAR_OPTIONS_Width = "寛度";
 	DRUIDBAR_OPTIONS_Height = "高度";
 	DRUIDBAR_OPTIONS_Lock = "鎖定";
 	DRUIDBAR_OPTIONS_Hide = "人型狀態時隱藏";
@@ -218,14 +215,12 @@ elseif GetLocale() == "zhCN" then
 	DRUIDBAR_OPTIONS_MiscO = "其他设置";
 	DRUIDBAR_OPTIONS_Vis = "显示";
 	DRUIDBAR_OPTIONS_VisTT = "开启或关闭法力槽显示。\n如果你使用 StatusBars 等 Linoleum 等插件,请将该选项关闭。反之,请打开。";
-	DRUIDBAR_OPTIONS_KMG = "整合MiniGroup";
-	DRUIDBAR_OPTIONS_KMGTT = "整合入 MiniGroup 的法力槽";
 	DRUIDBAR_OPTIONS_Replace = "整合";
 	DRUIDBAR_OPTIONS_ReplaceTT = "变形后将玩家框架内的法力槽分成两部分分别显示怒气/精力和法力。";
 	DRUIDBAR_OPTIONS_Player = "玩家框架";
 	DRUIDBAR_OPTIONS_PlayerTT = "将 Druid Bar 显示在玩家框架下方。";
 	DRUIDBAR_OPTIONS_Custom = "自定义";
-	DRUIDBAR_OPTIONS_Weight = "宽度";
+	DRUIDBAR_OPTIONS_Width = "宽度";
 	DRUIDBAR_OPTIONS_Height = "高度";
 	DRUIDBAR_OPTIONS_Lock = "锁定";
 	DRUIDBAR_OPTIONS_Hide = "施法者形态下隐藏";