WoWInterface SVN NeedToKnow-Updated

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /branches
    from Rev 60 to Rev 62
    Reverse comparison

Rev 60 → Rev 62

lieandswell/NeedToKnow/NeedToKnow_Options.xml
148,7 → 148,7
</Layers>
<Scripts>
<OnEnter>
GameTooltip:SetOwner(this, "ANCHOR_TOPLEFT");
GameTooltip:SetOwner(self, "ANCHOR_TOPLEFT");
GameTooltip:SetText(NEEDTOKNOW.UIPANEL_TOOLTIP_FIXEDDURATION, nil, nil, nil, nil, 1);
</OnEnter>
<OnLeave>
257,23 → 257,6
</Anchor>
</Anchors>
</FontString>
<FontString name="$parentSubText2" inherits="GameFontHighlightSmall" nonspacewrap="false" justifyH="LEFT" justifyV="BOTTOM">
<Size>
<AbsDimension x="0" y="48"/>
</Size>
<Anchors>
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT">
<Offset>
<AbsDimension x="128" y="16"/>
</Offset>
</Anchor>
<Anchor point="RIGHT">
<Offset>
<AbsDimension x="-24" y="0"/>
</Offset>
</Anchor>
</Anchors>
</FontString>
<FontString name="$parentNumberbarsLabel" inherits="GameFontNormalSmall">
<Anchors>
<Anchor point="BOTTOM" relativeTo="$parentSubText1" relativePoint="BOTTOMLEFT">
339,18 → 322,154
</Anchor>
</Anchors>
</Frame>
<Slider name="$parentBarSpacingSlider" inherits="OptionsSliderTemplate">
<Button name="$parentConfigModeButton" inherits="UIPanelButtonTemplate">
<Size>
<AbsDimension x="128" y="22"/>
</Size>
<Anchors>
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT">
<Offset>
<AbsDimension x="24" y="24"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
_G[self:GetName().."Text"]:SetText(NEEDTOKNOW.UIPANEL_CONFIGMODE);
</OnLoad>
<OnClick>
PlaySound("gsTitleOptionOK");
NeedToKnow_Settings["Locked"] = false;
NeedToKnow.Update();
</OnClick>
<OnEnter>
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
GameTooltip:SetText(NEEDTOKNOW.UIPANEL_CONFIGMODE_TOOLTIP, nil, nil, nil, nil, 1);
</OnEnter>
<OnLeave function="GameTooltip_Hide"/>
</Scripts>
<NormalFont inherits="GameFontNormalSmall"/>
<HighlightFont inherits="GameFontHighlightSmall"/>
</Button>
<Button name="$parentPlayModeButton" inherits="UIPanelButtonTemplate">
<Size>
<AbsDimension x="128" y="22"/>
</Size>
<Anchors>
<Anchor point="BOTTOMRIGHT" relativeTo="$parent" relativePoint="BOTTOMRIGHT">
<Offset>
<AbsDimension x="-24" y="24"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
_G[self:GetName().."Text"]:SetText(NEEDTOKNOW.UIPANEL_PLAYMODE);
</OnLoad>
<OnClick>
PlaySound("gsTitleOptionOK");
NeedToKnow_Settings["Locked"] = true;
NeedToKnow.Update();
</OnClick>
<OnEnter>
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
GameTooltip:SetText(NEEDTOKNOW.UIPANEL_PLAYMODE_TOOLTIP, nil, nil, nil, nil, 1);
</OnEnter>
<OnLeave function="GameTooltip_Hide"/>
</Scripts>
<NormalFont inherits="GameFontNormalSmall"/>
<HighlightFont inherits="GameFontHighlightSmall"/>
</Button>
</Frames>
</Frame>
 
<Frame name="InterfaceOptionsNeedToKnowAppearancePanel" hidden="true" parent="InterfaceOptionsFramePanelContainer">
<Layers>
<Layer level="ARTWORK">
<FontString name="$parentTitle" text="NeedToKnow" inherits="GameFontNormalLarge" justifyH="LEFT" justifyV="TOP">
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="16" y="-16"/>
</Offset>
</Anchor>
</Anchors>
</FontString>
<FontString name="$parentVersion" inherits="GameFontNormalLarge" justifyH="LEFT" justifyV="TOP">
<Anchors>
<Anchor point="LEFT" relativeTo="$parentTitle" relativePoint="RIGHT">
<Offset>
<AbsDimension x="4" y="-0"/>
</Offset>
</Anchor>
</Anchors>
</FontString>
<FontString name="$parentSubText1" inherits="GameFontHighlightSmall" nonspacewrap="true" maxLines="3" justifyH="LEFT" justifyV="TOP">
<Size>
<AbsDimension y="24" x="0"/>
</Size>
<Anchors>
<Anchor point="TOPLEFT" relativeTo="$parentTitle" relativePoint="BOTTOMLEFT">
<Offset>
<AbsDimension x="0" y="-8"/>
</Offset>
</Anchor>
<Anchor point="RIGHT">
<Offset>
<AbsDimension x="-24" y="0"/>
</Offset>
</Anchor>
</Anchors>
</FontString>
</Layer>
</Layers>
<Scripts>
<OnLoad>
self.name = NEEDTOKNOW.UIPANEL_APPEARANCE;
self.parent = "NeedToKnow";
self.default = NeedToKnow.Reset;
-- self.cancel = NeedToKnow.Cancel;
-- need different way to handle cancel? users might open appearance panel without opening main panel
InterfaceOptions_AddCategory(self);
NeedToKnow.UIPanel_Appearance_OnLoad(self)
</OnLoad>
<OnShow>
NeedToKnow.UIPanel_Appearance_OnShow();
</OnShow>
<OnHide>
</OnHide>
</Scripts>
<Frames>
<Button name="$parentBackgroundColorButton" inherits="NeedToKnow_ColorButtonTemplate">
<Anchors>
<Anchor point="TOPLEFT" relativeTo="$parentSubText1" relativePoint="BOTTOMLEFT">
<Offset>
<AbsDimension x="16" y="-208"/>
<AbsDimension x="16" y="-16"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
getglobal(self:GetName().."Text"):SetText(NEEDTOKNOW.UIPANEL_BARSPACING);
_G[self:GetName().."Label"]:SetText(NEEDTOKNOW.UIPANEL_BACKGROUNDCOLOR);
self:RegisterForClicks("LeftButtonUp");
</OnLoad>
<OnClick>
NeedToKnow.ChooseColor("BkgdColor");
</OnClick>
</Scripts>
</Button>
<Slider name="$parentBarSpacingSlider" inherits="OptionsSliderTemplate">
<Anchors>
<Anchor point="TOPLEFT" relativeTo="$parentBackgroundColorButton" relativePoint="BOTTOMLEFT">
<Offset>
<AbsDimension x="0" y="-32"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
_G[self:GetName().."Text"]:SetText(NEEDTOKNOW.UIPANEL_BARSPACING);
</OnLoad>
<OnValueChanged>
NeedToKnow_Settings["BarSpacing"] = value;
NeedToKnow.Update();
367,7 → 486,7
</Anchors>
<Scripts>
<OnLoad>
getglobal(self:GetName().."Text"):SetText(NEEDTOKNOW.UIPANEL_BARPADDING);
_G[self:GetName().."Text"]:SetText(NEEDTOKNOW.UIPANEL_BARPADDING);
</OnLoad>
<OnValueChanged>
NeedToKnow_Settings["BarPadding"] = value;
375,11 → 494,11
</OnValueChanged>
</Scripts>
</Slider>
<Slider name="$parentBarTextureSlider" inherits="OptionsSliderTemplate">
<Frame name="$parentBarTextureDropDown" inherits="UIDropDownMenuTemplate" enableMouse="true">
<Anchors>
<Anchor point="TOPLEFT" relativeTo="$parentBarSpacingSlider" relativePoint="TOPLEFT">
<Anchor point="TOPLEFT" relativeTo="$parentSubText1" relativePoint="BOTTOMLEFT">
<Offset>
<AbsDimension x="166" y="0" />
<AbsDimension x="192" y="-32"/>
</Offset>
</Anchor>
</Anchors>
387,9 → 506,9
<Layer level="BACKGROUND">
<FontString name="$parentLabel" inherits="GameFontHighlight">
<Anchors>
<Anchor point="BOTTOMLEFT" relativePoint="TOPLEFT">
<Anchor point="BOTTOM" relativePoint="TOP">
<Offset>
<AbsDimension x="40" y="-30"/>
<AbsDimension x="0" y="3"/>
</Offset>
</Anchor>
</Anchors>
398,18 → 517,20
</Layers>
<Scripts>
<OnLoad>
_G[self:GetName().."Label"]:SetText(NEEDTOKNOW.UIPANEL_BARTEXTURE);
UIDropDownMenu_SetWidth(self, 128);
UIDropDownMenu_Initialize(self, NeedToKnow.BarTextureDropDown);
</OnLoad>
<OnValueChanged>
NeedToKnow.UpdateBarTextureSlider(self, value);
</OnValueChanged>
<OnShow>
UIDropDownMenu_Initialize(this, NeedToKnow.BarTextureDropDown);
</OnShow>
</Scripts>
</Slider>
 
<Slider name="$parentBarFontSlider" inherits="OptionsSliderTemplate">
</Frame>
<Frame name="$parentBarFontDropDown" inherits="UIDropDownMenuTemplate" enableMouse="true">
<Anchors>
<Anchor point="TOPLEFT" relativeTo="$parentBarTextureSlider" relativePoint="BOTTOMLEFT">
<Anchor point="TOPLEFT" relativeTo="$parentBarTextureDropDown" relativePoint="BOTTOMLEFT">
<Offset>
<AbsDimension x="0" y="-30" />
<AbsDimension x="0" y="-24"/>
</Offset>
</Anchor>
</Anchors>
417,9 → 538,9
<Layer level="BACKGROUND">
<FontString name="$parentLabel" inherits="GameFontHighlight">
<Anchors>
<Anchor point="TOPLEFT" relativePoint="BOTTOMLEFT">
<Anchor point="BOTTOM" relativePoint="TOP">
<Offset>
<AbsDimension x="0" y="-4"/>
<AbsDimension x="0" y="3"/>
</Offset>
</Anchor>
</Anchors>
428,47 → 549,69
</Layers>
<Scripts>
<OnLoad>
_G[self:GetName().."Label"]:SetText(NEEDTOKNOW.UIPANEL_FONT);
UIDropDownMenu_SetWidth(self, 128);
UIDropDownMenu_Initialize(self, NeedToKnow.BarFontDropDown);
</OnLoad>
<OnValueChanged>
NeedToKnow.UpdateBarFontSlider(self, value);
</OnValueChanged>
<OnShow>
UIDropDownMenu_Initialize(this, NeedToKnow.BarFontDropDown);
</OnShow>
</Scripts>
</Slider>
 
<Button name="$parentBackgroundColorButton" inherits="NeedToKnow_ColorButtonTemplate">
</Frame>
<Button name="$parentConfigModeButton" inherits="UIPanelButtonTemplate">
<Size>
<AbsDimension x="128" y="22"/>
</Size>
<Anchors>
<Anchor point="TOPLEFT" relativeTo="$parentGroup4" relativePoint="BOTTOMLEFT">
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT">
<Offset>
<AbsDimension x="80" y="-8"/>
<AbsDimension x="24" y="24"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
self:RegisterForClicks("LeftButtonUp");
_G[self:GetName().."Text"]:SetText(NEEDTOKNOW.UIPANEL_CONFIGMODE);
</OnLoad>
<OnClick>
NeedToKnow.ChooseColor("BkgdColor");
PlaySound("gsTitleOptionOK");
NeedToKnow_Settings["Locked"] = false;
NeedToKnow.Update();
</OnClick>
<OnEnter>
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
GameTooltip:SetText(NEEDTOKNOW.UIPANEL_CONFIGMODE_TOOLTIP, nil, nil, nil, nil, 1);
</OnEnter>
<OnLeave function="GameTooltip_Hide"/>
</Scripts>
<NormalFont inherits="GameFontNormalSmall"/>
<HighlightFont inherits="GameFontHighlightSmall"/>
</Button>
<Button name="$parentLockUnlockButton" inherits="UIPanelButtonTemplate">
<Button name="$parentPlayModeButton" inherits="UIPanelButtonTemplate">
<Size>
<AbsDimension x="96" y="22"/>
<AbsDimension x="128" y="22"/>
</Size>
<Anchors>
<Anchor point="BOTTOMLEFT">
<Anchor point="BOTTOMRIGHT" relativeTo="$parent" relativePoint="BOTTOMRIGHT">
<Offset>
<AbsDimension x="16" y="16"/>
<AbsDimension x="-24" y="24"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
_G[self:GetName().."Text"]:SetText(NEEDTOKNOW.UIPANEL_PLAYMODE);
</OnLoad>
<OnClick>
PlaySound("gsTitleOptionOK");
NeedToKnow.LockToggle();
NeedToKnow.LockUnlockButton_Update();
NeedToKnow_Settings["Locked"] = true;
NeedToKnow.Update();
</OnClick>
<OnEnter>
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
GameTooltip:SetText(NEEDTOKNOW.UIPANEL_PLAYMODE_TOOLTIP, nil, nil, nil, nil, 1);
</OnEnter>
<OnLeave function="GameTooltip_Hide"/>
</Scripts>
<NormalFont inherits="GameFontNormalSmall"/>
<HighlightFont inherits="GameFontHighlightSmall"/>
lieandswell/NeedToKnow/NeedToKnow_Options.lua
1,9 → 1,4
-- --------------------------------------
-- TellMeWhen
-- by Nephthys <Drunken Monkeys> of Hyjal
-- --------------------------------------
 
 

NEEDTOKNOW.MAXBARSPACING = 24;
NEEDTOKNOW.MAXBARPADDING = 12;
 
23,46 → 18,51
end
end
 
function NeedToKnow.LockToggle()
if ( NeedToKnow_Settings["Locked"] ) then
NeedToKnow_Settings["Locked"] = false;
else
NeedToKnow_Settings["Locked"] = true;
end
NeedToKnow.Show(true);
PlaySound("UChatScrollButton");
NeedToKnow.last_cast = {};
NeedToKnow.Update();
end
 
-- -----------------------
-- INTERFACE OPTIONS PANEL
-- -----------------------
 
-- -----------------------------
-- INTERFACE OPTIONS PANEL: MAIN
-- -----------------------------
 
function NeedToKnow.UIPanel_OnLoad(self)
local panelName = self:GetName();
local versionText = getglobal(panelName.."Version");
local subText1 = getglobal(panelName.."SubText1");
local subText2 = getglobal(panelName.."SubText2");
local numberbarsLabel = getglobal(panelName.."NumberbarsLabel");
local fixedDurationLabel = getglobal(panelName.."FixedDurationLabel");
local barTextureLabel = getglobal(panelName.."BarTextureSliderLabel");
local barFontLabel = getglobal(panelName.."BarFontSliderLabel");
local backgroundColorLabel = getglobal(panelName.."BackgroundColorButtonLabel");
 
versionText:SetText(NEEDTOKNOW.VERSION);
subText1:SetText(NEEDTOKNOW.UIPANEL_SUBTEXT1);
subText2:SetText(NEEDTOKNOW.UIPANEL_SUBTEXT2);
local numberbarsLabel = _G[panelName.."NumberbarsLabel"];
local fixedDurationLabel = _G[panelName.."FixedDurationLabel"];
_G[panelName.."Version"]:SetText(NEEDTOKNOW.VERSION);
_G[panelName.."SubText1"]:SetText(NEEDTOKNOW.UIPANEL_SUBTEXT1);
numberbarsLabel:SetText(NEEDTOKNOW.UIPANEL_NUMBERBARS);
numberbarsLabel:SetWidth(50);
fixedDurationLabel:SetText(NEEDTOKNOW.UIPANEL_FIXEDDURATION);
fixedDurationLabel:SetWidth(50);
barTextureLabel:SetText(NEEDTOKNOW.UIPANEL_BARTEXTURE);
barFontLabel:SetText("Bar Font"); -- FIXME: Localize
backgroundColorLabel:SetText(NEEDTOKNOW.UIPANEL_BACKGROUNDCOLOR);
end
 
function NeedToKnow.UIPanel_OnShow()
NeedToKnow_OldSettings = CopyTable(NeedToKnow_Settings);
NeedToKnow.bUIPanelVisible = true;
NeedToKnow.UIPanel_Update()
-- Why is this here? Would it be better to use a self:IsVisible() check? -- lieandswell
NeedToKnow.UIPanel_Update();
end
 
function NeedToKnow.UIPanel_OnHide()
NeedToKnow.bUIPanelVisible = nil;
-- Why is this here? Would it be better to use a self:IsVisible() check? -- lieandswell
end
 
function NeedToKnow.UIPanel_Update()
if ( not NeedToKnow.bUIPanelVisible ) then return ; end
if ( not NeedToKnow.bUIPanelVisible ) then return ; end
-- Why is this here? Would it be better to use a self:IsVisible() check? -- lieandswell
 
local settings = NeedToKnow_Settings;
local panelName = "InterfaceOptionsNeedToKnowPanel";
 
71,48 → 71,6
NeedToKnow.NumberbarsWidget_Update(groupID);
_G[panelName.."Group"..groupID.."FixedDurationBox"]:SetText(settings["Spec"][NEEDTOKNOW.CURRENTSPEC]["Groups"][groupID]["FixedDuration"] or "");
end
_G[panelName.."BackgroundColorButtonNormalTexture"]:SetVertexColor(unpack(NeedToKnow_Settings["BkgdColor"]));
 
local barSpacingSlider = _G[panelName.."BarSpacingSlider"];
barSpacingSlider:SetMinMaxValues(0, NEEDTOKNOW.MAXBARSPACING);
barSpacingSlider:SetValue(settings.BarSpacing);
 
local barTextureSlider = _G[panelName.."BarTextureSlider"];
barTextureSlider:SetMinMaxValues(1, #(textureList));
barTextureSlider:SetValueStep(1);
getglobal(panelName.."BarTextureSliderLow"):SetText('');
getglobal(panelName.."BarTextureSliderHigh"):SetText('');
local textureLabel = getglobal(panelName.."BarTextureSliderLabel");
textureLabel:SetText(settings["BarTexture"]);
local fn = textureLabel:GetFont();
textureLabel:SetFont(fn, 10); -- There's got to be some way to say this in the xml
getglobal(panelName.."BarTextureSliderText"):SetText('Bar Texture');
for i=1, #(textureList) do
if textureList[i] == settings.BarTexture then
barTextureSlider:SetValue(i);
end
end
 
local barFontSlider = _G[panelName.."BarFontSlider"];
barFontSlider:SetMinMaxValues(1, #(fontList));
barFontSlider:SetValueStep(1);
getglobal(panelName.."BarFontSliderLow"):SetText('');
getglobal(panelName.."BarFontSliderHigh"):SetText('');
getglobal(panelName.."BarFontSliderText"):SetText('Bar Font'); -- Fixme: Localize? What does this do?
for i=1, #(fontList) do
if ( LSM:Fetch("font", fontList[i]) == settings.BarFont ) then
barFontSlider:SetValue(i);
local lbl = getglobal(panelName.."BarFontSliderLabel");
lbl:SetText(fontList[i]);
lbl:SetFont(fn, 10);
end
end
 
local barPaddingSlider = _G[panelName.."BarPaddingSlider"];
barPaddingSlider:SetMinMaxValues(0, NEEDTOKNOW.MAXBARPADDING);
barPaddingSlider:SetValue(settings.BarPadding);
 
NeedToKnow.LockUnlockButton_Update();
end
 
function NeedToKnow.GroupEnableButton_Update(groupID)
132,9 → 90,9
 
function NeedToKnow.NumberbarsWidget_Update(groupID)
local widgetName = "InterfaceOptionsNeedToKnowPanelGroup"..groupID.."NumberbarsWidget";
local text = getglobal(widgetName.."Text");
local leftButton = getglobal(widgetName.."LeftButton");
local rightButton = getglobal(widgetName.."RightButton");
local text = _G[widgetName.."Text"];
local leftButton = _G[widgetName.."LeftButton"];
local rightButton = _G[widgetName.."RightButton"];
local numberBars = NeedToKnow_Settings["Spec"][NEEDTOKNOW.CURRENTSPEC]["Groups"][groupID]["NumberBars"];
text:SetText(numberBars);
leftButton:Enable();
169,20 → 127,56
NeedToKnow.Update();
end
 
function NeedToKnow.UpdateBarTextureSlider(info, value)
getglobal(info:GetName().."Label"):SetText(textureList[value]);
NeedToKnow_Settings["BarTexture"] = textureList[value];
function NeedToKnow.Reset()
NeedToKnow_Settings = CopyTable(NEEDTOKNOW.DEFAULTS);
NeedToKnow_Settings["Spec"][1]["Groups"][1]["Enabled"] = true;
NeedToKnow_Settings["Spec"][2]["Groups"][1]["Enabled"] = true;
for groupID = 1, NEEDTOKNOW.MAXGROUPS do
local group = _G["NeedToKnow_Group"..groupID];
group:ClearAllPoints();
group:SetPoint("TOPLEFT", "UIParent", "TOPLEFT", 100, -100 - 100*groupID);
end
NeedToKnow.Update();
NeedToKnow.UIPanel_Update();
end
 
function NeedToKnow.UpdateBarFontSlider(info, value)
local fontName = fontList[value];
local fontPath = LSM:Fetch("font", fontName);
getglobal(info:GetName().."Label"):SetText(fontName);
NeedToKnow_Settings["BarFont"] = fontPath;
function NeedToKnow.Cancel()
NeedToKnow_Settings = CopyTable(NeedToKnow_OldSettings);
NeedToKnow.Update();
end
 
 
-- -----------------------------------
-- INTERFACE OPTIONS PANEL: APPEARANCE
-- -----------------------------------
 
function NeedToKnow.UIPanel_Appearance_OnLoad(self)
local panelName = self:GetName();
_G[panelName.."Version"]:SetText(NEEDTOKNOW.VERSION);
_G[panelName.."SubText1"]:SetText(NEEDTOKNOW.UIPANEL_SUBTEXT1);
end
 
function NeedToKnow.UIPanel_Appearance_OnShow()
NeedToKnow.UIPanel_Appearance_Update();
end
 
function NeedToKnow.UIPanel_Appearance_Update()
local settings = NeedToKnow_Settings;
local panelName = "InterfaceOptionsNeedToKnowAppearancePanel";
local barSpacingSlider = _G[panelName.."BarSpacingSlider"];
local barPaddingSlider = _G[panelName.."BarPaddingSlider"];
 
_G[panelName.."BackgroundColorButtonNormalTexture"]:SetVertexColor(unpack(settings.BkgdColor));
 
barSpacingSlider:SetMinMaxValues(0, NEEDTOKNOW.MAXBARSPACING);
barSpacingSlider:SetValue(settings.BarSpacing);
barPaddingSlider:SetMinMaxValues(0, NEEDTOKNOW.MAXBARPADDING);
barPaddingSlider:SetValue(settings.BarPadding);
 
NeedToKnow.UpdateBarTextureDropDown();
NeedToKnow.UpdateBarFontDropDown();
end
 
function NeedToKnow.ChooseColor(variable)
info = UIDropDownMenu_CreateInfo();
info.r, info.g, info.b, info.opacity = unpack(NeedToKnow_Settings[variable]);
224,46 → 218,61
end
end
 
function NeedToKnow.LockUnlockButton_Update()
local text = getglobal("InterfaceOptionsNeedToKnowPanelLockUnlockButtonText");
if ( NeedToKnow_Settings["Locked"] ) then
text:SetText(NEEDTOKNOW.UIPANEL_UNLOCK);
else
text:SetText(NEEDTOKNOW.UIPANEL_LOCK);
end
function NeedToKnow.UpdateBarTextureDropDown()
_G["InterfaceOptionsNeedToKnowAppearancePanelBarTextureDropDownText"]:SetText(NeedToKnow_Settings["BarTexture"]);
end
 
function NeedToKnow.LockToggle()
if ( NeedToKnow_Settings["Locked"] ) then
NeedToKnow_Settings["Locked"] = false;
else
NeedToKnow_Settings["Locked"] = true;
end
NeedToKnow.Show(true);
PlaySound("UChatScrollButton");
NeedToKnow.last_cast = {};
NeedToKnow.Update();
function NeedToKnow.BarTextureDropDown(self)
if ( NeedToKnow_Settings ) then
for key, textureName in ipairs(textureList) do
info = UIDropDownMenu_CreateInfo();
info.value = textureName;
info.text = textureName;
info.checked = ( NeedToKnow_Settings["BarTexture"] == textureName );
info.func = NeedToKnow.ChooseBarTexture;
UIDropDownMenu_AddButton(info);
end
end
end
 
function NeedToKnow.Reset()
NeedToKnow_Settings = CopyTable(NEEDTOKNOW.DEFAULTS);
NeedToKnow_Settings["Spec"][1]["Groups"][1]["Enabled"] = true;
NeedToKnow_Settings["Spec"][2]["Groups"][1]["Enabled"] = true;
for groupID = 1, NEEDTOKNOW.MAXGROUPS do
local group = getglobal("NeedToKnow_Group"..groupID);
group:ClearAllPoints();
group:SetPoint("TOPLEFT", "UIParent", "TOPLEFT", 100, -100 - 100*groupID);
function NeedToKnow.ChooseBarTexture()
NeedToKnow_Settings["BarTexture"] = this.value;
NeedToKnow.Update();
NeedToKnow.UpdateBarTextureDropDown();
end
 
function NeedToKnow.UpdateBarFontDropDown()
local settings = NeedToKnow_Settings;
local barFontDropdownText = _G["InterfaceOptionsNeedToKnowAppearancePanelBarFontDropDownText"];
for i=1, #(fontList) do
if ( LSM:Fetch("font", fontList[i]) == settings.BarFont ) then
barFontDropdownText:SetText(fontList[i]);
end
end
NeedToKnow.Update();
NeedToKnow.UIPanel_Update();
end
 
function NeedToKnow.Cancel()
NeedToKnow_Settings = CopyTable(NeedToKnow_OldSettings);
NeedToKnow.Update();
function NeedToKnow.BarFontDropDown(self)
if ( NeedToKnow_Settings ) then
for key, fontName in ipairs(fontList) do
local fontPath = LSM:Fetch("font", fontName);
info = UIDropDownMenu_CreateInfo();
info.value = fontPath;
info.text = fontName;
info.checked = ( NeedToKnow_Settings["BarFont"] == fontPath );
info.func = NeedToKnow.ChooseBarFont;
UIDropDownMenu_AddButton(info);
end
end
end
 
function NeedToKnow.ChooseBarFont()
NeedToKnow_Settings["BarFont"] = this.value;
NeedToKnow.Update();
NeedToKnow.UpdateBarFontDropDown();
end
 
 
 
-- --------
-- BAR GUI
-- --------
277,14 → 286,14
hasEditBox = 1,
maxLetters = 255,
OnAccept = function(iconNumber)
local text = getglobal(this:GetParent():GetName().."EditBox"):GetText();
local text = _G[this:GetParent():GetName().."EditBox"]:GetText();
local variable = this:GetParent().variable;
if ( nil ~= variable ) then
NeedToKnow.BarMenu_ChooseName(text, variable);
end
end,
EditBoxOnEnterPressed = function(iconNumber)
local text = getglobal(this:GetParent():GetName().."EditBox"):GetText();
local text = _G[this:GetParent():GetName().."EditBox"]:GetText();
local variable = this:GetParent().variable;
if ( nil ~= variable ) then
NeedToKnow.BarMenu_ChooseName(text, variable);
298,7 → 307,7
if ( ChatFrameEditBox:IsVisible() ) then
ChatFrameEditBox:SetFocus();
end
getglobal(this:GetName().."EditBox"):SetText("");
_G[this:GetName().."EditBox"]:SetText("");
end,
timeout = 0,
whileDead = 1,
387,21 → 396,13
};
NeedToKnow.BarMenu_SubMenus.Opt_HARMFUL = NeedToKnow.BarMenu_SubMenus.Opt_HELPFUL;
 
function NeedToKnow.Bar_OnEnter(self)
local tooltip = getglobal("GameTooltip");
GameTooltip_SetDefaultAnchor(tooltip, self);
tooltip:AddLine(NEEDTOKNOW.BAR_TOOLTIP1, HIGHLIGHT_FONT_COLOR.r, HIGHLIGHT_FONT_COLOR.g, HIGHLIGHT_FONT_COLOR.b, 1);
tooltip:AddLine(NEEDTOKNOW.BAR_TOOLTIP2, NORMAL_FONT_COLOR.r, NORMAL_FONT_COLOR.g, NORMAL_FONT_COLOR.b, 1);
tooltip:Show();
end
 
function NeedToKnow.Bar_OnMouseUp(self, button)
if ( button == "RightButton" ) then
PlaySound("UChatScrollButton");
PlaySound("UChatScrollButton");
NeedToKnow.CurrentBar["barID"] = self:GetID();
NeedToKnow.CurrentBar["groupID"] = self:GetParent():GetID();
ToggleDropDownMenu(1, nil, getglobal(self:GetName().."DropDown"), "cursor", 0, 0);
end
ToggleDropDownMenu(1, nil, _G[self:GetName().."DropDown"], "cursor", 0, 0);
end
end
 
function NeedToKnow.BarMenu_AddButton(barSettings, i_desc, i_parent)
471,7 → 472,7
local listFrame = _G["DropDownList"..level];
local index = listFrame and (listFrame.numButtons) or 1;
local listFrameName = listFrame:GetName();
local button = getglobal(listFrameName.."Button"..index);
local button = _G[listFrameName.."Button"..index];
button.extraInfo = info.value;
end
end
548,7 → 549,7
local button = NeedToKnow.BarMenu_GetItem(NeedToKnow.BarMenu_GetItemLevel(self), self.value);
if ( button ) then
local checkName = button:GetName() .. "Check";
getglobal(checkName):Hide();
_G[checkName]:Hide();
button.checked = false;
end
end
590,7 → 591,7
local listFrameName = listFrame:GetName();
local n = listFrame.numButtons;
for index=1,n do
local button = getglobal(listFrameName.."Button"..index);
local button = _G[listFrameName.."Button"..index];
local txt = button.value;
if ( txt == i_valueName ) then
return button;
603,7 → 604,7
local button = NeedToKnow.BarMenu_GetItem(i_level, i_valueName);
if ( button ) then
local checkName = button:GetName() .. "Check";
local check = getglobal(checkName);
local check = _G[checkName];
if ( i_bCheck ) then
check:Show();
button.checked = true;
637,7 → 638,7
NeedToKnow.BarMenu_SubMenus.Options = Opt;
local button = NeedToKnow.BarMenu_GetItem(1, "Options");
if button then
local arrow = getglobal(button:GetName().."ExpandArrow")
local arrow = _G[button:GetName().."ExpandArrow"]
local lbl = ""
if #Opt == 0 then
lbl = lbl .. "No "
690,7 → 691,7
local dialog = StaticPopup_Show("NEEDTOKNOW.CHOOSENAME_DIALOG");
dialog.variable = this.value.variable;
 
local edit = getglobal(dialog:GetName().."EditBox");
local edit = _G[dialog:GetName().."EditBox"];
local groupID = NeedToKnow.CurrentBar["groupID"];
local barID = NeedToKnow.CurrentBar["barID"];
local barSettings = NeedToKnow_Settings["Spec"][NEEDTOKNOW.CURRENTSPEC]["Groups"][groupID]["Bars"][barID];
795,7 → 796,7
-- -------------
 
function NeedToKnow.Resizebutton_OnEnter(self)
local tooltip = getglobal("GameTooltip");
local tooltip = _G["GameTooltip"];
GameTooltip_SetDefaultAnchor(tooltip, self);
tooltip:AddLine(NEEDTOKNOW.RESIZE_TOOLTIP, NORMAL_FONT_COLOR.r, NORMAL_FONT_COLOR.g, NORMAL_FONT_COLOR.b, 1);
tooltip:Show();
810,7 → 811,7
-- group:ClearAllPoints();
-- group:SetPoint("TOPLEFT", UIParent, "BOTTOMLEFT", group.oldX, group.oldY);
self.oldCursorX, self.oldCursorY = GetCursorPosition(UIParent);
self.oldWidth = getglobal(group:GetName().."Bar1"):GetWidth();
self.oldWidth = _G[group:GetName().."Bar1"]:GetWidth();
self:SetScript("OnUpdate", NeedToKnow.Sizing_OnUpdate);
end
 
837,9 → 838,9
 
function NeedToKnow.SetWidth(groupID, width)
for barID = 1, NeedToKnow_Settings["Spec"][NEEDTOKNOW.CURRENTSPEC]["Groups"][groupID]["NumberBars"] do
local bar = getglobal("NeedToKnow_Group"..groupID.."Bar"..barID);
local background = getglobal(bar:GetName().."Background");
local text = getglobal(bar:GetName().."Text");
local bar = _G["NeedToKnow_Group"..groupID.."Bar"..barID];
local background = _G[bar:GetName().."Background"];
local text = _G[bar:GetName().."Text"];
bar:SetWidth(width);
text:SetWidth(width-60);
background:SetWidth(width + 2*NeedToKnow_Settings["BarPadding"]);
lieandswell/NeedToKnow/NeedToKnow.xml
120,7 → 120,11
self:RegisterForDrag("LeftButton");
</OnLoad>
<OnEnter>
NeedToKnow.Bar_OnEnter(self, motion);
local tooltip = _G["GameTooltip"];
tooltip:SetOwner(self:GetParent(), "ANCHOR_TOPLEFT");
tooltip:AddLine(NEEDTOKNOW.BAR_TOOLTIP1, HIGHLIGHT_FONT_COLOR.r, HIGHLIGHT_FONT_COLOR.g, HIGHLIGHT_FONT_COLOR.b, 1);
tooltip:AddLine(NEEDTOKNOW.BAR_TOOLTIP2, NORMAL_FONT_COLOR.r, NORMAL_FONT_COLOR.g, NORMAL_FONT_COLOR.b, 1);
tooltip:Show();
</OnEnter>
<OnLeave>
GameTooltip:Hide();
lieandswell/NeedToKnow/NeedToKnow.lua
1,11 → 1,7
-- ---------------------
-- ----------------------
-- NeedToKnow
-- by Nephthys of Hyjal
-- updated by
-- kitjan
-- Bilt of Lightninghoof
-- lieandswell@yahoo.com
-- ---------------------
-- by Kitjan, lieandswell
-- ----------------------
 
 
if not trace then trace = print end
115,7 → 111,6
-- SharedMedia Support
-- -------------------
 
 
NeedToKnow.LSM = LibStub("LibSharedMedia-3.0", true)
 
if not NeedToKnow.LSM:Fetch("statusbar", "Aluminum", true) then NeedToKnow.LSM:Register("statusbar", "Aluminum", [[Interface\Addons\NeedToKnow\Textures\Aluminum.tga]]) end
lieandswell/NeedToKnow/NeedToKnow.toc
1,11 → 1,12
## Interface: 30300
## Title: NeedToKnow
## Author: Kitjan
## Version: 3.1.1
## Notes: Buff/debuff timer bars, original code by Nephthys of Hyjal-US. Additional work by lieandswell and Bilt
## Author: Kitjan, lieandswell
## Version: 3.1.2
## Notes: Timer bars for buffs, debuffs, cooldowns, etc.
## X-Credits: Bilt, Fxfighter EU-Echsenkessel, metalchoir, sp00n, Vlakarados, wowui.cn
## X-Category: Buffs, Combat
## OptionalDeps: LibStub,LibSharedMedia-3.0
## DefaultState: Enabled
## LoadOnDemand: 0
## DefaultState: enabled
## SavedVariablesPerCharacter: NeedToKnow_Settings
libs\LibStub\LibStub.lua
libs\CallbackHandler-1.0\CallbackHandler-1.0.lua
lieandswell/NeedToKnow/NeedToKnow_Localization.lua
1,8 → 1,62

-- If you want to be super helpful, you can translate this stuff into whatever non-enUS language you happen to know. Email them to me and I'll credit you. ZOMG 15 minutes of fame. Neph <lieandswell@yahoo.com>
--[[
 
If you want to be super helpful, you can translate this stuff into whatever non-enUS language you happen to know and we'll credit you. Please post the translations as a ticket on CurseForge.com (http://wow.curseforge.com/addons/need-to-know/tickets/) or email them to us (lieandswell@yahoo.com).
 
Thanks a bunch!
 
--]]
 
NEEDTOKNOW = {};
-- Untranslated defaults
 
-- Define defaults in enUS
NEEDTOKNOW.BAR_TOOLTIP1 = "NeedToKnow";
NEEDTOKNOW.BAR_TOOLTIP2 = "Right click bars to configure. More options in the Blizzard interface options menu. Type /needtoknow to lock and enable.";
 
NEEDTOKNOW.RESIZE_TOOLTIP = "Click and drag to change size";
 
NEEDTOKNOW.BARMENU_ENABLE = "Enable bar";
NEEDTOKNOW.BARMENU_CHOOSENAME = "Choose buff/debuff to time";
NEEDTOKNOW.CHOOSENAME_DIALOG = "Enter the name of the buff or debuff to time with this bar"
NEEDTOKNOW.BARMENU_CHOOSEUNIT = "Unit to monitor";
NEEDTOKNOW.BARMENU_PLAYER = "Player";
NEEDTOKNOW.BARMENU_TARGET = "Target";
NEEDTOKNOW.BARMENU_FOCUS = "Focus";
NEEDTOKNOW.BARMENU_PET = "Pet";
NEEDTOKNOW.BARMENU_VEHICLE = "Vehicle";
NEEDTOKNOW.BARMENU_TARGETTARGET = "Target of Target";
NEEDTOKNOW.BARMENU_BUFFORDEBUFF = "Bar Type";
NEEDTOKNOW.BARMENU_SPELLID = "Use SpellID";
NEEDTOKNOW.BARMENU_HELPFUL = "Buff";
NEEDTOKNOW.BARMENU_HARMFUL = "Debuff";
NEEDTOKNOW.BARMENU_ONLYMINE = "Only show if cast by self";
NEEDTOKNOW.BARMENU_BARCOLOR = "Bar color";
NEEDTOKNOW.BARMENU_CLEARSETTINGS = "Clear settings";
 
NEEDTOKNOW.UIPANEL_SUBTEXT1 = "These options allow you to customize NeedToKnow's timer bars.";
-- NEEDTOKNOW.UIPANEL_SUBTEXT2 = "Bars work when locked. When unlocked, you can move/size bar groups and right click individual bars for more settings. You can also type '/needtoknow' or '/ntk' to lock/unlock.";
NEEDTOKNOW.UIPANEL_BARGROUP = "Group ";
NEEDTOKNOW.UIPANEL_NUMBERBARS = "Number of bars";
NEEDTOKNOW.UIPANEL_FIXEDDURATION = "Max bar duration";
NEEDTOKNOW.UIPANEL_LOCK = "Lock";
NEEDTOKNOW.UIPANEL_UNLOCK = "Unlock";
NEEDTOKNOW.UIPANEL_TOOLTIP_ENABLEGROUP = "Show and enable this group of bars";
NEEDTOKNOW.UIPANEL_TOOLTIP_FIXEDDURATION = "Set the maximum length of bars for this group (in seconds). Leave empty to set dynamically per bar.";
NEEDTOKNOW.UIPANEL_TOOLTIP_BARTEXTURE = "Choose the texture graphic for timer bars";
NEEDTOKNOW.CMD_RESET = "reset";
 
NEEDTOKNOW.UIPANEL_CONFIGMODE = "Config mode";
NEEDTOKNOW.UIPANEL_CONFIGMODE_TOOLTIP = "Unlock timer bars and make them configurable";
NEEDTOKNOW.UIPANEL_PLAYMODE = "Play mode";
NEEDTOKNOW.UIPANEL_PLAYMODE_TOOLTIP = "Lock and enable timer bars, making them click-through";
 
NEEDTOKNOW.UIPANEL_APPEARANCE = "Appearance";
NEEDTOKNOW.UIPANEL_BACKGROUNDCOLOR = "Background color";
NEEDTOKNOW.UIPANEL_BARSPACING = "Bar spacing";
NEEDTOKNOW.UIPANEL_BARPADDING = "Bar padding";
NEEDTOKNOW.UIPANEL_BARTEXTURE = "Bar texture";
NEEDTOKNOW.UIPANEL_BARFONT = "Bar font";
NEEDTOKNOW.UIPANEL_FONT = "Font";
 
NEEDTOKNOW.BARMENU_TOTEM = "Totem";
NEEDTOKNOW.BARMENU_CASTCD = "Spell Cooldown";
NEEDTOKNOW.BARMENU_BUFFCD = "Internal Cooldown";
27,9 → 81,9
NEEDTOKNOW.USABLE_DURATION_DIALOG = "Enter the cooldown duration triggered by the abilities watched by this bar.";
 
 
 
-- replace with translations, if available
if ( GetLocale() == "deDE" ) then
-- Thanks, sp00n & Fxfighter EU-Echsenkessel!
-- by sp00n and Fxfighter EU-Echsenkessel
NEEDTOKNOW.BAR_TOOLTIP1 = "NeedToKnow";
NEEDTOKNOW.BAR_TOOLTIP2 = "Rechtsklick auf einen Balken für Einstellungen. Mehr Optionen sind im Blizzard Interface vorhanden. Zum Festsetzen und Aktivieren /needtoknow oder /ntk eingeben.";
NEEDTOKNOW.RESIZE_TOOLTIP = "Klicken und ziehen, um die Größe zu ändern";
66,7 → 120,7
NEEDTOKNOW.CMD_RESET = "reset";
 
elseif ( GetLocale() == "koKR" ) then
-- Thanks, metalchoir!
-- by metalchoir
NEEDTOKNOW.BAR_TOOLTIP1 = "NeedToKnow";
NEEDTOKNOW.BAR_TOOLTIP2 = "우?�릭: 메뉴 불러오기\n세부옵션? �기본 ?�터페?�스 설정?�서 가능\n/ntk 명령어로 잠근 후? �애드온 사용가능";
NEEDTOKNOW.RESIZE_TOOLTIP = "드래그: ?�기 변경";
104,7 → 158,7
NEEDTOKNOW.CMD_RESET = "초기화";
 
elseif ( GetLocale() == "ruRU" ) then
-- Thanks, Vlakarados!
-- by Vlakarados
NEEDTOKNOW.BAR_TOOLTIP1 = "NeedToKnow";
NEEDTOKNOW.BAR_TOOLTIP2 = "Клик правой кнопкой мыши по поло?�е дл? �на?�тройки. Больше на?�троек в Интерфей? / �Модификации / NeedToKnow меню. Вве?�ти /needtoknow или /ntk дл? �блокировки и включени?.";
NEEDTOKNOW.RESIZE_TOOLTIP = "�Кликнуть и тащить дл? �изменени? �размера";
141,42 → 195,79
NEEDTOKNOW.UIPANEL_TOOLTIP_BARTEXTURE = "Выбрать тек?�туру дл? �поло?.";
NEEDTOKNOW.CMD_RESET = "�?�бро?";
 
else
elseif ( GetLocale() == "zhCN" ) then
-- by wowui.cn
NEEDTOKNOW.BAR_TOOLTIP1 = "NeedToKnow";
NEEDTOKNOW.BAR_TOOLTIP2 = "右键点击计时条配置. 更多的选项在暴雪界面选项菜单里. 输入 /needtoknow 来锁定并启用.";
NEEDTOKNOW.RESIZE_TOOLTIP = "点击和拖动来修改计时条尺寸";
NEEDTOKNOW.BARMENU_ENABLE = "启用计时条";
NEEDTOKNOW.BARMENU_CHOOSENAME = "选择需要计时的Buff/Debuff";
NEEDTOKNOW.CHOOSENAME_DIALOG = "输入在这个计时条内计时的Buff或Debuff的精确名字"
NEEDTOKNOW.BARMENU_CHOOSEUNIT = "需要监视的单位";
NEEDTOKNOW.BARMENU_PLAYER = "玩家";
NEEDTOKNOW.BARMENU_TARGET = "目标";
NEEDTOKNOW.BARMENU_FOCUS = "焦点";
NEEDTOKNOW.BARMENU_PET = "宠物";
NEEDTOKNOW.BARMENU_VEHICLE = "载具";
NEEDTOKNOW.BARMENU_TARGETTARGET = "目标的目标";
NEEDTOKNOW.BARMENU_BUFFORDEBUFF = "Buff还是Debuff?";
NEEDTOKNOW.BARMENU_BUFF = "Buff";
NEEDTOKNOW.BARMENU_DEBUFF = "Debuff";
NEEDTOKNOW.BARMENU_ONLYMINE = "仅显示自身施放的";
NEEDTOKNOW.BARMENU_BARCOLOR = "计时条颜色";
NEEDTOKNOW.BARMENU_CLEARSETTINGS = "清除设置";
NEEDTOKNOW.UIPANEL_SUBTEXT1 = "这些选项允许你自定义Buff/Debuff计时条.";
NEEDTOKNOW.UIPANEL_SUBTEXT2 = "计时条锁定后才能正常工作. 当解锁时, 你可以移动或修改计时条分组的大小, 右键点击单独的计时条可以进行更多的设置. 你也可以输入 '/needtoknow' 或 '/ntk' 来锁定/解锁.";
NEEDTOKNOW.UIPANEL_BARGROUP = "分组 ";
NEEDTOKNOW.UIPANEL_NUMBERBARS = "计时条数量";
NEEDTOKNOW.UIPANEL_FIXEDDURATION = "计时条最大持续时间";
NEEDTOKNOW.UIPANEL_BARTEXTURE = "计时条材质";
NEEDTOKNOW.UIPANEL_BARSPACING = "计时条空距";
NEEDTOKNOW.UIPANEL_BARPADDING = "计时条间距";
NEEDTOKNOW.UIPANEL_BACKGROUNDCOLOR = "背景颜色";
NEEDTOKNOW.UIPANEL_LOCK = "锁定";
NEEDTOKNOW.UIPANEL_UNLOCK = "解锁";
NEEDTOKNOW.UIPANEL_TOOLTIP_ENABLEGROUP = "显示并启用这个分组的计时条";
NEEDTOKNOW.UIPANEL_TOOLTIP_FIXEDDURATION = "设置这个分组计时条的最大长度 (按秒数). 留空为每个计时条设置不同的数值.";
NEEDTOKNOW.UIPANEL_TOOLTIP_BARTEXTURE = "选择计时条的材质图像.";
NEEDTOKNOW.CMD_RESET = "重置";
 
elseif ( GetLocale() == "zhTW" ) then
-- by wowui.cn
NEEDTOKNOW.BAR_TOOLTIP1 = "NeedToKnow";
NEEDTOKNOW.BAR_TOOLTIP2 = "Right click bars to configure. More options in the Blizzard interface options menu. Type /needtoknow to lock and enable.";
NEEDTOKNOW.RESIZE_TOOLTIP = "Click and drag to change size";
NEEDTOKNOW.BARMENU_ENABLE = "Enable bar";
NEEDTOKNOW.BARMENU_CHOOSENAME = "Choose buff/debuff to time";
NEEDTOKNOW.CHOOSENAME_DIALOG = "Enter the name of the buff or debuff to time with this bar"
NEEDTOKNOW.BARMENU_CHOOSEUNIT = "Unit to monitor";
NEEDTOKNOW.BARMENU_PLAYER = "Player";
NEEDTOKNOW.BARMENU_TARGET = "Target";
NEEDTOKNOW.BARMENU_FOCUS = "Focus";
NEEDTOKNOW.BARMENU_PET = "Pet";
NEEDTOKNOW.BARMENU_VEHICLE = "Vehicle";
NEEDTOKNOW.BARMENU_TARGETTARGET = "Target of Target";
NEEDTOKNOW.BARMENU_BUFFORDEBUFF = "Bar Type";
NEEDTOKNOW.BARMENU_SPELLID = "Use SpellID";
NEEDTOKNOW.BARMENU_HELPFUL = "Buff";
NEEDTOKNOW.BARMENU_HARMFUL = "Debuff";
NEEDTOKNOW.BARMENU_ONLYMINE = "Only show if cast by self";
NEEDTOKNOW.BARMENU_BARCOLOR = "Bar color";
NEEDTOKNOW.BARMENU_CLEARSETTINGS = "Clear settings";
NEEDTOKNOW.UIPANEL_SUBTEXT1 = "These options allow you to customize the buff/debuff timer bars.";
NEEDTOKNOW.UIPANEL_SUBTEXT2 = "Bars work when locked. When unlocked, you can move/size bar groups and right click individual bars for more settings. You can also type '/needtoknow' or '/ntk' to lock/unlock.";
NEEDTOKNOW.UIPANEL_BARGROUP = "Group ";
NEEDTOKNOW.UIPANEL_NUMBERBARS = "Number of bars";
NEEDTOKNOW.UIPANEL_FIXEDDURATION = "Max bar duration";
NEEDTOKNOW.UIPANEL_BARTEXTURE = "Bar texture";
NEEDTOKNOW.UIPANEL_BARSPACING = "Bar spacing";
NEEDTOKNOW.UIPANEL_BARPADDING = "Bar padding";
NEEDTOKNOW.UIPANEL_BACKGROUNDCOLOR = "Background color";
NEEDTOKNOW.UIPANEL_LOCK = "Lock";
NEEDTOKNOW.UIPANEL_UNLOCK = "Unlock";
NEEDTOKNOW.UIPANEL_TOOLTIP_ENABLEGROUP = "Show and enable this group of bars";
NEEDTOKNOW.UIPANEL_TOOLTIP_FIXEDDURATION = "Set the maximum length of bars for this group (in seconds). Leave empty to set dynamically per bar.";
NEEDTOKNOW.UIPANEL_TOOLTIP_BARTEXTURE = "Choose the texture graphic for timer bars";
NEEDTOKNOW.CMD_RESET = "reset";
NEEDTOKNOW.BAR_TOOLTIP2 = "右鍵點擊計時條配置. 更多的選項在暴雪介面選項菜單裏. 輸入 /needtoknow 來鎖定並啟用.";
NEEDTOKNOW.RESIZE_TOOLTIP = "點擊和拖動來修改計時條尺寸";
NEEDTOKNOW.BARMENU_ENABLE = "啟用計時條";
NEEDTOKNOW.BARMENU_CHOOSENAME = "選擇需要計時的Buff/Debuff";
NEEDTOKNOW.CHOOSENAME_DIALOG = "輸入在這個計時條內計時的Buff或Debuff的精確名字"
NEEDTOKNOW.BARMENU_CHOOSEUNIT = "需要監視的單位";
NEEDTOKNOW.BARMENU_PLAYER = "玩家";
NEEDTOKNOW.BARMENU_TARGET = "目標";
NEEDTOKNOW.BARMENU_FOCUS = "焦點";
NEEDTOKNOW.BARMENU_PET = "寵物";
NEEDTOKNOW.BARMENU_VEHICLE = "載具";
NEEDTOKNOW.BARMENU_TARGETTARGET = "目標的目標";
NEEDTOKNOW.BARMENU_BUFFORDEBUFF = "Buff還是Debuff?";
NEEDTOKNOW.BARMENU_BUFF = "Buff";
NEEDTOKNOW.BARMENU_DEBUFF = "Debuff";
NEEDTOKNOW.BARMENU_ONLYMINE = "僅顯示自身施放的";
NEEDTOKNOW.BARMENU_BARCOLOR = "計時條顏色";
NEEDTOKNOW.BARMENU_CLEARSETTINGS = "清除設置";
NEEDTOKNOW.UIPANEL_SUBTEXT1 = "這些選項允許妳自定義Buff/Debuff計時條.";
NEEDTOKNOW.UIPANEL_SUBTEXT2 = "計時條鎖定後才能正常工作. 當解鎖時, 妳可以移動或修改計時條分組的大小, 右鍵點擊單獨的計時條可以進行更多的設置. 妳也可以輸入 '/needtoknow' 或 '/ntk' 來鎖定/解鎖.";
NEEDTOKNOW.UIPANEL_BARGROUP = "分組 ";
NEEDTOKNOW.UIPANEL_NUMBERBARS = "計時條數量";
NEEDTOKNOW.UIPANEL_FIXEDDURATION = "計時條最大持續時間";
NEEDTOKNOW.UIPANEL_BARTEXTURE = "計時條材質";
NEEDTOKNOW.UIPANEL_BARSPACING = "計時條空距";
NEEDTOKNOW.UIPANEL_BARPADDING = "計時條間距";
NEEDTOKNOW.UIPANEL_BACKGROUNDCOLOR = "背景顏色";
NEEDTOKNOW.UIPANEL_LOCK = "鎖定";
NEEDTOKNOW.UIPANEL_UNLOCK = "解鎖";
NEEDTOKNOW.UIPANEL_TOOLTIP_ENABLEGROUP = "顯示並啟用這個分組的計時條";
NEEDTOKNOW.UIPANEL_TOOLTIP_FIXEDDURATION = "設置這個分組計時條的最大長度 (按秒數). 留空為每個計時條設置不同的數值.";
NEEDTOKNOW.UIPANEL_TOOLTIP_BARTEXTURE = "選擇計時條的材質圖像.";
NEEDTOKNOW.CMD_RESET = "重置";
 
end