# HG changeset patch # User Flick # Date 1174426439 0 # Node ID c05fd3e18b4fee702683771c3bdd81449e518099 # Parent f920db5fc6b1cc9b3d09bcbb28a99b0b585230c2 Version 0.31 diff -r f920db5fc6b1 -r c05fd3e18b4f Buttons.lua --- a/Buttons.lua Tue Mar 20 21:25:29 2007 +0000 +++ b/Buttons.lua Tue Mar 20 21:33:59 2007 +0000 @@ -38,9 +38,10 @@ showKeyBind = true, showStackCount = true, showMacroText = true, - showGrid = false, showBorder = true, keyBindColorCode = false, + hideCooldown = false, + hideGlobalCooldown = false, } PetAction.defaultProfile = { @@ -91,6 +92,19 @@ end end + local function setOpacity(field, value) + if not config.opacity then + config.opacity = { } + end + config.opacity[field] = (value and value / 100) + refresh() + end + + local function getOpacity(field, default) + local o = config.opacity and config.opacity[field] or (default and default/100) or 1 + return o * 100 + end + return { type = "group", args = { @@ -111,6 +125,89 @@ validate = { "default", "none", "alt", "ctrl", "shift", "right-click" }, }, + opacity = { + type = "group", + name = "Opacity", + desc = "Set options for variable button opacity", + args = { + usable = { + type = "range", + name = "Usable", + desc = "Button opacity when the action is currently usable", + min = 0, + max = 100, + step = 1, + get = function() return getOpacity("usable") end, + set = function(x) setOpacity("usable", x) end, + order = 1, + }, + + notUsable = { + type = "range", + name = "Not Usable", + desc = "Button opacity when the action is currently not usable", + min = 0, + max = 100, + step = 1, + get = function() return getOpacity("notUsable") end, + set = function(x) setOpacity("notUsable",x) end, + order = 2, + }, + + oom = { + type = "range", + name = "Out of Power", + desc = "Button opacity when the action is not usable due to not enough mana/energy/rage. ".. + "By default this uses the generic 'not-usable' setting.", + min = 0, + max = 100, + step = 1, + get = function() return getOpacity("oom",getOpacity("notUsable")) end, + set = function(x) setOpacity("oom", x ~= getOpacity("notUsable") and x) end, + order = 3, + }, + + oorange = { + type = "range", + name = "Out of Range", + desc = "Button opacity when the action is not usable due to the target not being in range. ".. + "By default this uses the generic 'not-usable' setting.", + min = 0, + max = 100, + step = 1, + get = function() return getOpacity("ooRange",getOpacity("notUsable")) end, + set = function(x) setOpacity("ooRange", x ~= getOpacity("notUsable") and x) end, + order = 4, + }, + + empty = { + type = "range", + name = "Empty Slot", + desc = "Button opacity when the button's action slot is empty. By default this is 0 (fully transparent), ".. + "but note that they still block mouse clicks. Empty slots are automatically made opaque (per the ".. + "'usable' opacity setting) when moving actions around.", + min = 0, + max = 100, + step = 1, + get = function() return getOpacity("empty",0) end, + set = function(x) setOpacity("empty",x) end, + order = 5, + }, + + hideEmpty = { + type = "toggle", + name = "Hide Empty Slots", + desc = "Hides empty action slots rather than changing their opacity. This has the advantage that empty slots ".. + "don't block mouse clicks. WARNING: this makes it impossible to re-arrange actions with drag-and-drop ".. + "while in combat.", + get = function() return config.hideEmptySlots end, + set = function() config.hideEmptySlots = not config.hideEmptySlots ; refresh() end, + order = 6, + }, + + }, + }, + keyloc = { type = "text", name = "Hotkey Location", @@ -153,12 +250,20 @@ set = function() config.showMacroText = not config.showMacroText ; refresh() end, }, - showgrid = { + hidecooldown = { type = "toggle", - name = "Always Show Buttons", - desc = "Show button placeholders when no action is assigned or on the cursor. Note that buttons are always shown when bars are unlocked.", - get = function() return config.showGrid end, - set = function() config.showGrid = not config.showGrid ; refresh() end, + name = "Hide Cooldowns", + desc = "Hides all cooldown displays on buttons. Toggling this on does not hide currently running cooldowns.", + get = function() return config.hideCooldown end, + set = function() config.hideCooldown = not config.hideCooldown ; refresh() end, + }, + + hideglobalcooldown = { + type = "toggle", + name = "Hide Global Cooldown", + desc = "Disables the global cooldown from being displayed on buttons.", + get = function() return config.hideGlobalCooldown end, + set = function() config.hideGlobalCooldown = not config.hideGlobalCooldown ; refresh() end, }, colorhotkeys = { diff -r f920db5fc6b1 -r c05fd3e18b4f Defaults.lua --- a/Defaults.lua Tue Mar 20 21:25:29 2007 +0000 +++ b/Defaults.lua Tue Mar 20 21:33:59 2007 +0000 @@ -89,96 +89,8 @@ btnConfig = tcopy(defaultActionConfig), }, - -- multibar right - [2] = { - visible = false, - size = 36, - spacing = 6, - rows = 12, - columns = 1, - growLeft = true, - growUp = false, - columnMajor = true, - pages = nil, - opacity = 100, - anchor = { - frame = "UIParent", - point = "BOTTOMRIGHT", - relPoint = "BOTTOMRIGHT", - x = -4, - y = 95, - }, - btnConfig = tcopy(defaultActionConfig), - }, - - -- multibar left - [3] = { - visible = false, - size = 36, - spacing = 6, - rows = 12, - columns = 1, - growLeft = true, - growUp = false, - columnMajor = true, - pages = nil, - opacity = 100, - anchor = { - frame = "UIParent", - point = "BOTTOMRIGHT", - relPoint = "BOTTOMRIGHT", - x = -51, - y = 95, - }, - btnConfig = tcopy(defaultActionConfig), - }, - - -- multibar bottom right - [4] = { - visible = false, - size = 36, - spacing = 6, - rows = 1, - columns = 12, - growLeft = false, - growUp = false, - columnMajor = false, - pages = nil, - opacity = 100, - anchor = { - frame = "MainMenuBarArtFrame", - point = "BOTTOMLEFT", - relPoint = "BOTTOMLEFT", - x = 514, - y = 53, - }, - btnConfig = tcopy(defaultActionConfig), - }, - - -- multibar bottom left - [5] = { - visible = false, - size = 36, - spacing = 6, - rows = 1, - columns = 12, - growLeft = false, - growUp = false, - columnMajor = false, - pages = nil, - opacity = 100, - anchor = { - frame = "MainMenuBarArtFrame", - point = "BOTTOMLEFT", - relPoint = "BOTTOMLEFT", - x = 3, - y = 53, - }, - btnConfig = tcopy(defaultActionConfig), - }, - -- pet action bar - [6] = { + [10] = { visible = true, parent = "PetActionBarFrame", size = 30, @@ -218,14 +130,8 @@ } end -for b = 2, 5 do - for i = 1, 12 do - bars[b].btnConfig.ids[i] = { 12*(b-1) + i } - end +for i = 1, 10 do + bars[10].btnConfig.ids[i] = { i } end -for i = 1, 10 do - bars[6].btnConfig.ids[i] = { i } -end - diff -r f920db5fc6b1 -r c05fd3e18b4f Options.lua --- a/Options.lua Tue Mar 20 21:25:29 2007 +0000 +++ b/Options.lua Tue Mar 20 21:33:59 2007 +0000 @@ -53,6 +53,7 @@ desc = "Show ActionIDs on buttons", get = "AreIdsVisible", set = "ToggleIds", + disabled = true, }, create = { @@ -124,15 +125,6 @@ order = 4, }, - showid = { - type = "toggle", - name = "Show Action IDs", - desc = "Show ActionIDs on buttons", - get = "AreIdsVisible", - set = "ToggleIds", - order = 5, - }, - hidedefault = { type = "toggle", name = "Hide Default Main Menu Bar", @@ -360,18 +352,6 @@ } }, - opacity = { - type = "range", - name = "Opacity", - desc = "Set the bar alpha value, from fully transparent (0) to fully opaque (100).", - get = "GetOpacity", - set = "SetOpacity", - min = 0, - max = 100, - step = 1, - order = 6, - }, - delete = { type = "execute", name = "Delete Bar #"..bar.barID, diff -r f920db5fc6b1 -r c05fd3e18b4f README.html --- a/README.html Tue Mar 20 21:25:29 2007 +0000 +++ b/README.html Tue Mar 20 21:33:59 2007 +0000 @@ -7,8 +7,8 @@

ReAction

AddOn for World of Warcraft

-

Current Version: 0.3 (beta)
- Released: 29 Jan 2007

+

Current Version: 0.31 (alpha)
+ Released: 02 Feb 2007

WoW Version Compatibility/TOC: 2.0.6 / TOC 20003

The Basics

ReAction is a replacement for the default Blizzard action bars. It allows you @@ -30,6 +30,7 @@

  • Settings can be saved per account, realm, character, class, or independent profile.
  • Compatible with OmniCC
  • +
  • Various configurable display options
  • ReAction is built using the Ace2 development framework.

    @@ -41,8 +42,8 @@

    When you first enter World of Warcraft with ReAction installed, it will look very similar to the default Blizzard UI, depending on what other AddOns are installed. Any keybindings you have made to the action bars, however, are not - in effect. Also, only the main menu bar is shown by default. The bottom left, - bottom right, and two right action bars are hidden.

    + in effect. Also, only the main menu bar is shown by default. Other bars can + be created as desired.

    If you have FuBar installed, on the left side you should see the ReAction plugin icon and label. If not, there should be a button on your minimap. In either case, that button (the ReAction Control Button) is the gateway to configuring @@ -110,12 +111,11 @@

  • If you have a bar with empty buttons, even though they're invisible they still block mouse input from reaching whatever might be under the button. This is a workaround so that you can drag and drop actions onto hidden slots - during combat.
  • + during combat. This workaround can be disabled via a configuration option, + but then you can't drag and drop actions onto slots during combat. Pick your + poison, it's a limitation of Blizzard's protection scheme.
  • If you hide the default main menu bar, there is no substitute for the XP bar, bag bar, or micro menu bar (although the hotkeys for them still work)
  • -
  • The pet bar, by default, appears underneath bar #6 (lower left). You'll - have to move bar 6 out of the way if you want to move the pet bar. Also, it - does not
  • Known Issues

    Version History

    +

    Version 0.31:

    +

    Version 0.3