Minion Beta! - Help us test our new AddOn updater. Get it now!
Download
(24 Kb)
Download
Updated: 09-16-13 04:44 AM
Pictures
File Info
Compatibility:
Siege of Orgrimmar (5.4)
Updated:09-16-13 04:44 AM
Created:12-27-08 08:46 PM
Downloads:67,469
Favorites:311
MD5:
rActionButtonStyler  Popular! (More than 5000 hits)
Version: 50400.01
by: zork [More]

Intro
rActionButtonStyler is a small mod to adjust the graphical appearance of action buttons.
Install
The zip-file contains one folder: rActionButtonStyler. Put it in your AddOns folder.
Config
To adjust the settings check the config.lua.
SVN
http://code.google.com/p/rothui/sour...onButtonStyler
50400.01
- updated toc to 50400

50100.01
- updated for patch 5.2

50100.01
- updated for patch 5.1

50001.07
- Readded support for Dominos and Bartender4

50001.06
- Added SpellFlyoutButton styling

50001.05
- Added the new LeaveVehicleButton from rActionBarStyler to the styling

50001.04
- Fixed a bug with the ExtraActionButtonStyle not hiding correctly

50001.03
- Config now has macro and hotkey texts enabled by default
- Removed the updateHotkey function call, that is not needed anymore

50001.02
- Fixed the stack overflow issue that came up if the normaltextue color is equal to 1,1,1 or 0.5,0.5,1

50001.01
- initial release for MoP

40300.06
- added Dominos support
- added Bartender4 support
changelog: http://code.google.com/p/rothui/source/detail?r=806

40300.05
- removed all secure hook calls for button updates
- new function calls
- added normaltexture to ExtraActionButton

40300.04
- added style function for the ExtraActionButton1

40300.03
- fixing patch 4.3 taint issues (DIFF)

40300.02
- fixing the Dominos issue when trying to put a background behind a button on framelevel -1.

40300.01
- fixes for patch 4.3

4.007
- updated toc for patch 4.2

4.006
- updated toc for patch 4.1

4.005
- WoW patch 4.0.6 fix

4.004
- added Garrys code for background image and outer glow


4.003
- fixing setpoints of long macro names and keybinds to be inside the buttons

4.002
- complete new file structure and finally a real config

4.001
- first running version for cataclysm

100812
- final multicastactionbar fix

100808
- fixed the bug that prevents from putting spells into bars while in combat
- mod is compatible to tullaRange
- if you want to use white buttons you need to adjust the ntSetVertexColor function

100710
- deleted A LOT of stuff and rewrote some other
- removed rangechange install "tullaRange" if you want rangecheck

005
- complete rewrite
- added a config
- biggest change is that I rewrite the default ActionButton onUpdate func now, this improved the performance by a mile
- added dominos support

004-2
- range_indicator fix

004
- updated for 3.1
- included range/mana coloring (thus only 1x hooking the actionbutton onupdate func is needed -> better cpu usage)

003
- classcolored buttons possible (see lua)
- onupdate in again to be able to colorize textures (make sure redrange normaltexture coloring is disabled!)
- new default skin (simplebutton)

002
- fixed the normaltexture bug for stancebars
- removed the onupdate hook for actionbuttons (thx to Neal)

001
- first release
Optional Files (18)
File Name
Version
Size
Author
Date
Type
1.3
80kB
11-29-10 02:09 PM
Addon
1.0
22kB
11-14-10 06:23 PM
Addon
1.2
24kB
11-09-10 02:59 PM
Addon
1.0
3kB
11-05-10 09:22 AM
Addon
4.003
41kB
10-16-10 07:02 PM
Patch
rev3
6kB
07-06-10 06:25 PM
Addon
1.0
8kB
04-25-10 01:32 PM
Patch
1.0
2kB
12-06-09 12:47 PM
Addon
1.0
3kB
08-18-09 11:37 AM
Addon
1.0
10kB
07-06-09 12:02 PM
Addon
v1
16kB
06-17-09 06:57 PM
Addon
v1.3
18kB
02-19-09 12:10 PM
Addon
001
21kB
01-23-09 03:24 AM
Addon
1.0
5kB
01-22-09 09:38 AM
Addon
003
6kB
01-20-09 08:16 PM
Patch
001
15kB
01-20-09 03:59 PM
Addon
001
10kB
01-20-09 03:58 PM
Addon
0.1
7kB
01-17-09 10:12 AM
Addon


Archived Files (21)
File Name
Version
Size
Author
Date
50200.01
24kB
zork
03-04-13 05:37 PM
50100.01
24kB
zork
11-28-12 01:27 PM
50001.07
24kB
zork
11-21-12 12:24 PM
50001.06
24kB
zork
09-21-12 02:19 PM
40300.06
23kB
zork
02-16-12 03:14 PM
40300.05
23kB
zork
02-15-12 04:59 PM
40300.04
23kB
zork
01-20-12 12:51 PM
40300.03
23kB
zork
12-04-11 05:16 PM
40300.02
23kB
zork
11-30-11 01:45 PM
40300.01
23kB
zork
11-30-11 12:35 PM
4.007
23kB
zork
06-29-11 03:40 PM
4.006
23kB
zork
04-28-11 11:40 AM
4.005
23kB
zork
02-09-11 01:55 PM
4.004
23kB
zork
10-17-10 07:16 AM
4.003
18kB
zork
10-16-10 06:03 AM
4.001
18kB
zork
10-15-10 03:40 PM
100812
18kB
zork
08-12-10 03:11 PM
005
18kB
zork
08-02-09 06:42 AM
004-2
17kB
zork
04-18-09 08:28 PM
003
17kB
zork
01-20-09 04:04 PM
002
12kB
zork
01-17-09 07:20 AM


Post A Reply Comment Options
Unread 10-20-10, 05:45 PM  
Dhaern
A Kobold Labourer

Forum posts: 0
File comments: 61
Uploads: 0
Originally posted by grimgaw
Something i've noticed though, when you enter combat whole Hotkey settings get reset. Even with unmodified rABS when i enter combat my hotkey text shifts few pixels down and stays like that until next reloadui. Is there any fix for that Zork?
Yep, when I enter in combat this Abbreviates returns to normal keybinds text
Dhaern is offline Report comment to moderator  
Reply With Quote
Unread 10-20-10, 05:39 PM  
grimgaw
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 5
File comments: 12
Uploads: 1
Something i've noticed though, when you enter combat whole Hotkey settings get reset. Even with unmodified rABS when i enter combat my hotkey text shifts few pixels down and stays like that until next reloadui. Is there any fix for that Zork?
grimgaw is offline Report comment to moderator  
Reply With Quote
Unread 10-20-10, 04:37 PM  
Dhaern
A Kobold Labourer

Forum posts: 0
File comments: 61
Uploads: 0
Originally posted by grimgaw
how about this:
Code:
local t = ho:GetText()
if(not t or t=="") then return end
t = t:gsub("Num Pad ", "n")
t = t:gsub("-", "")
ho:SetText(t)
OMG this works! Thanks very much, I am a noob with lua I only know change or edit things not create functions. Thx very much again
Dhaern is offline Report comment to moderator  
Reply With Quote
Unread 10-20-10, 04:08 PM  
grimgaw
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 5
File comments: 12
Uploads: 1
how about this:
Code:
local t = ho:GetText()
if(not t or t=="") then return end
t = t:gsub("Num Pad ", "n")
t = t:gsub("-", "")
ho:SetText(t)
grimgaw is offline Report comment to moderator  
Reply With Quote
Unread 10-20-10, 12:23 PM  
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1361
File comments: 3264
Uploads: 86
Why don't you just sit down and try/error it out yourself?

The error is pretty clear. Go to line 112 and make sure that line and maybe the ones after are only called under specific conditions. Maybe you need sth like

Code:
--call this only if "ho" (hotkey) object exists
if ho then
  -- do dat
end
or sth like this
Code:
--call this only if "text" object exists
if text then
  -- do dat
end
"Es ist nocht keine Meister vom Himmel gefallen", how we say in Germany. Just show some dedication.
__________________
| Simple is beautiful.
| Roth UI | Roth UI FAQ | GoogleCode | Zork | TDMOG

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
zork is online now Report comment to moderator  
Reply With Quote
Unread 10-20-10, 11:07 AM  
Improvver
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
Originally posted by Dhaern
The Problem: currently when using the number pad for action button hotkeys WoW formats the hotkey text on the button as NUM 1, NUM 2, NUM 3, etc. Well, at least I think so. Trouble is that all it actually shows is NUM. NUM, NUM, NUM. This makes the text on the buttons absolutely useless.

The Suggestion: change the format of this button text for number pad so that things that are obvious to the person who set the hotkeys (Number Pad, Control, Alt) are abbreviated by their first letter and a dash, or the first letter only. That way the hotkey text would look something like:

N-1, N-2, N-3
C-N-1, C-N-2, C-N-3

Any plans for implement this? this option will not cpu hog and I suppose easy to do. Thx for this great mod
same problem here. I need abbreviates for modifier keys and NUM PAD. temporal fix (code to replace) in other post don't work. Please i will love u if u work this. Nice work on this mod, thanks!
Improvver is offline Report comment to moderator  
Reply With Quote
Unread 10-19-10, 04:37 PM  
Dhaern
A Kobold Labourer

Forum posts: 0
File comments: 61
Uploads: 0
Hi again, I added this code and this error show in game:

Code:
Message: ...erface\AddOns\rActionButtonStyler\func\functions.lua:112: attempt to call method 'GetBindingText' (a nil value)
Time: 10/19/10 23:31:45
Count: 78
Stack: ...erface\AddOns\rActionButtonStyler\func\functions.lua:112: in function <...erface\AddOns\rActionButtonStyler\func\functions.lua:86>
[C]: in function `ActionButton_Update'
Interface\FrameXML\ActionButton.lua:440: in function `ActionButton_OnEvent'
[string "*:OnEvent"]:1: in function <[string "*:OnEvent"]:1>

Locals: self = VehicleMenuBarActionButton6 {
 0 = <userdata>
 feedback_action = 78
 action = 78
 isBonus = 1
 flashing = 0
 rangeTimer = -1
 eventsRegistered = true
 alwaysBonus = 1
 FlyoutBorder = VehicleMenuBarActionButton6FlyoutBorder {
 }
 FlyoutBorderShadow = VehicleMenuBarActionButton6FlyoutBorderShadow {
 }
 flashtime = 0
 FlyoutArrow = VehicleMenuBarActionButton6FlyoutArrow {
 }
 icon = VehicleMenuBarActionButton6Icon {
 }
 bg = VehicleMenuBarActionButton6BG {
 }
}
action = 78
name = "VehicleMenuBarActionButton6"
bu = VehicleMenuBarActionButton6 {
 0 = <userdata>
 feedback_action = 78
 action = 78
 isBonus = 1
 flashing = 0
 rangeTimer = -1
 eventsRegistered = true
 alwaysBonus = 1
 FlyoutBorder = VehicleMenuBarActionButton6FlyoutBorder {
 }
 FlyoutBorderShadow = VehicleMenuBarActionButton6FlyoutBorderShadow {
 }
 flashtime = 0
 FlyoutArrow = VehicleMenuBarActionButton6FlyoutArrow {
 }
 icon = VehicleMenuBarActionButton6Icon {
 }
 bg = VehicleMenuBarActionButton6BG {
 }
}
ic = VehicleMenuBarActionButton6Icon {
 0 = <userdata>
}
co = VehicleMenuBarActionButton6Count {
 0 = <userdata>
}
bo = VehicleMenuBarActionButton6Border {
 0 = <userdata>
 Show = <function> defined @Interface\AddOns\rActionButtonStyler\func\functions.lua:10
}
ho = VehicleMenuBarActionButton6HotKey {
 0 = <userdata>
 SetPoint = <function> defined @Interface\FrameXML\VehicleMenuBar.lua:808
}
cd = VehicleMenuBarActionButton6Cooldown {
 0 = <userdata>
}
na = VehicleMenuBarActionButton6Name {
 0 = <userdata>
}
fl = VehicleMenuBarActionButton6Flash {
 0 = <userdata>
}
nt = VehicleMenuBarActionButton6NormalTexture {
 0 = <userdata>
}
(*temporary) = nil
(*temporary) = VehicleMenuBarActionButton6HotKey {
 0 = <userdata>
 SetPoint = <function> defined @Interface\FrameXML\VehicleMenuBar.lua:808
}
(*temporary) = "attempt to call method 'GetBindingText' (a nil value)"
_G = <table> {
 ActionButton7FlyoutBorder = ActionButton7FlyoutBorder {
 }
 MultiCastActionButton6Cooldown = MultiCastActionButton6Cooldown {
 }
 MerchantItem9ItemButtonStock = MerchantItem9ItemButtonStock {
 }
 GetTrainerServiceTypeFilter = <function> defined =[C]:-1
 UNIT_NAMES_COMBATLOG_TOOLTIP = "Color unit names."
 KBASE_NUM_FAKE_CATEGORIES = 1
 SetTrainerServiceTypeFilter = <function> defined =[C]:-1
 TutorialFrameLeft19 = TutorialFrameLeft19 {
 }
 MultiCastActionButton2Cooldown = MultiCastActionButton2Cooldown {
 }
 ERR_TRADE_EQUIPPED_BAG = "You can't trade equipped bags."
 PVP_RANK_6_1 = "Corporal"
 BOOKTYPE_PROFESSION = "professions"
 AudioOptionsVoicePanelOutputDeviceDropDownButtonHighlightTexture = AudioOptionsVoicePanelOutputDeviceDropDownButtonHighlightTexture {
 }
 InterfaceOptionsDisplayPanelShowAggroPercentageText = InterfaceOptionsDisplayPanelShowAggroPercentageText {
 }
 VideoOptionsFrameDefaults = VideoOptionsFrameDefaults {
 }
 MerchantItem4AltCurrencyFrameItem1Text = MerchantItem4AltCurrencyFrameItem1Text {
 }
 BINDING_NAME_NAMEPLATES = "Show Enemy Name Plates"
 IsReferAFriendLinked = <function> defined =[C]:-1
 MAIL_LETTER_TOOLTIP = "Click to make a permanent
copy of this letter."
 AudioOptionsVoicePanelMicrophoneVolumeThumb = AudioOptionsVoicePanelMicrophoneVolumeThumb {
 }
 ContainerFrame1Item22Cooldown = ContainerFrame1Item22Cooldown {
 }
 CHAT_CONFIG_OTHER_COMBAT = <table> {
 }
 CONSOLIDATED_BUFFS_PER_ROW = 4
 TutorialFrameRight19 = TutorialFrameRight19 {
 }
 MoneyFrame_OnEvent = <function> defined @Interface\FrameXML\MoneyFrame.lua:199
 BN_UNABLE_TO_RESOLVE_NAME = "Unable to whisper '%s'. Battle.net may be
If I delete this

Code:
        text = replace(text, '(s%-)', 'S')
        text = replace(text, '(a%-)', 'A')
        text = replace(text, '(c%-)', 'C')
        text = replace(text, '(Mouse Button )', 'M')
        text = replace(text, '(Middle Mouse)', 'M3')
        text = replace(text, '(Num Pad )', 'N')
        text = replace(text, '(Page Up)', 'PU')
        text = replace(text, '(Page Down)', 'PD')
        text = replace(text, '(Spacebar)', 'SpB')
        text = replace(text, '(Insert)', 'Ins')
        text = replace(text, '(Home)', 'Hm')
        text = replace(text, '(Delete)', 'Del')
This addon don't return error and enable again but not abbreviate hotkeys are shown, line 112 begins in: text = replace(text, '(s%-)', 'S')

Thx for reply, I hope can add this for better game experience. I love ur mod, is very lightweight
Last edited by Dhaern : 10-19-10 at 05:17 PM.
Dhaern is offline Report comment to moderator  
Reply With Quote
Unread 10-19-10, 04:10 PM  
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1361
File comments: 3264
Uploads: 86
Mail Blizzard
It can be done via replace. Open the functions.lua. Find this
Code:
      if cfg.hotkeys.show then
        ho:SetFont(cfg.font, cfg.hotkeys.fontsize, "OUTLINE")
        ho:ClearAllPoints()
        ho:SetPoint(cfg.hotkeys.pos1.a1,bu,cfg.hotkeys.pos1.x,cfg.hotkeys.pos1.y)
        ho:SetPoint(cfg.hotkeys.pos2.a1,bu,cfg.hotkeys.pos2.x,cfg.hotkeys.pos2.y)
      else
        ho:Hide()
        ho.Show = nomoreplay
      end
Make it
Code:
      if cfg.hotkeys.show then
        ho:SetFont(cfg.font, cfg.hotkeys.fontsize, "OUTLINE")
        ho:ClearAllPoints()
        ho:SetPoint(cfg.hotkeys.pos1.a1,bu,cfg.hotkeys.pos1.x,cfg.hotkeys.pos1.y)
        ho:SetPoint(cfg.hotkeys.pos2.a1,bu,cfg.hotkeys.pos2.x,cfg.hotkeys.pos2.y)
        
        local text = ho:GetText()
        
        text = replace(text, '(s%-)', 'S')
        text = replace(text, '(a%-)', 'A')
        text = replace(text, '(c%-)', 'C')
        text = replace(text, '(Mouse Button )', 'M')
        text = replace(text, '(Middle Mouse)', 'M3')
        text = replace(text, '(Num Pad )', 'N')
        text = replace(text, '(Page Up)', 'PU')
        text = replace(text, '(Page Down)', 'PD')
        text = replace(text, '(Spacebar)', 'SpB')
        text = replace(text, '(Insert)', 'Ins')
        text = replace(text, '(Home)', 'Hm')
        text = replace(text, '(Delete)', 'Del')
        
        if ho:GetText() == _G['RANGE_INDICATOR'] then
          ho:SetText('')
        else
          ho:SetText(text)
        end
        
      else
        ho:Hide()
        ho.Show = nomoreplay
      end
I'm not going to add it though for language reasons and because I don't want to.
__________________
| Simple is beautiful.
| Roth UI | Roth UI FAQ | GoogleCode | Zork | TDMOG

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
Last edited by zork : 10-19-10 at 04:12 PM.
zork is online now Report comment to moderator  
Reply With Quote
Unread 10-19-10, 02:47 PM  
Dhaern
A Kobold Labourer

Forum posts: 0
File comments: 61
Uploads: 0
The Problem: currently when using the number pad for action button hotkeys WoW formats the hotkey text on the button as NUM 1, NUM 2, NUM 3, etc. Well, at least I think so. Trouble is that all it actually shows is NUM. NUM, NUM, NUM. This makes the text on the buttons absolutely useless.

The Suggestion: change the format of this button text for number pad so that things that are obvious to the person who set the hotkeys (Number Pad, Control, Alt) are abbreviated by their first letter and a dash, or the first letter only. That way the hotkey text would look something like:

N-1, N-2, N-3
C-N-1, C-N-2, C-N-3

Any plans for implement this? this option will not cpu hog and I suppose easy to do. Thx for this great mod
Dhaern is offline Report comment to moderator  
Reply With Quote
Unread 10-18-10, 04:31 AM  
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1361
File comments: 3264
Uploads: 86
This mod styles the Blizzard default button template only. If a mod makes use of that the buttons will get styled otherwise they will not. This is the case for Bartender and there are no plans to change the intention of the mod which is styling the default button template.
__________________
| Simple is beautiful.
| Roth UI | Roth UI FAQ | GoogleCode | Zork | TDMOG

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
Last edited by zork : 10-18-10 at 07:12 AM.
zork is online now Report comment to moderator  
Reply With Quote
Unread 10-18-10, 03:20 AM  
eldavido
A Kobold Labourer

Forum posts: 1
File comments: 116
Uploads: 0
Hi there,

I've recently been pointed to this addon by a friend of mine, who swears by it due to low overheads. I have to say, at first glance, I was quite keen to try it, but after many hours messing around couldn't get it working...

It was then I noticed a post saying that it wasn't compatible with Bartender, but Domino's worked ok. So, I switched to Dominos, but really didn't like it, so is there any way, or plans afoot, to make it work with BT4?

Sorry if this has already been answered / discussed before, but I'm posting from work, and access is... difficult :/

Thanks!
eldavido is offline Report comment to moderator  
Reply With Quote
Unread 10-17-10, 03:03 PM  
wtrhzrd
A Kobold Labourer

Forum posts: 0
File comments: 8
Uploads: 0
Yes, was just about to edit that post... I just figured that by playing with it some more... sorry.

Well, I got it all tweaked up finally... using stoneh skin I pretty much was able to swap from Stellarbars/Buttonfacade/Buttonfacade_Caith to Domino's and rABS/Stoneh and get the same look with a smaller overhead and fewer addons. Very nice work and thanks for the addon. Works and looks great.

I still couldn't figure out how to insert SetTextColor into the lua to get the hotkey font color to change. Mostly, I tried alot of different combinations with the code example I had from wowwiki, but I dunno jack really about lua scripting so I'm sure it's me not knowing what I'm doing.
Last edited by wtrhzrd : 10-17-10 at 07:25 PM.
wtrhzrd is offline Report comment to moderator  
Reply With Quote
Unread 10-17-10, 02:57 PM  
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1361
File comments: 3264
Uploads: 86
Re: Background Textures

the alpha value you set is used for both.
Code:
    backgroundcolor   = { r = 0.3, g = 0.3, b = 0.3, a = 0.7},
"a" stays for alpha. r,g, b for RGB (red, green, blue). Make "a" = 1 and it will be solid.

Try
Code:
backgroundcolor   = { r = 0.2, g = 0.2, b = 0.2, a = 1},
__________________
| Simple is beautiful.
| Roth UI | Roth UI FAQ | GoogleCode | Zork | TDMOG

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
Last edited by zork : 10-17-10 at 03:03 PM.
zork is online now Report comment to moderator  
Reply With Quote
Unread 10-17-10, 02:52 PM  
wtrhzrd
A Kobold Labourer

Forum posts: 0
File comments: 8
Uploads: 0
Background Textures

With this update, I'm noticing that with the following settings:
cfg.background = {
showbg = true, --show an background image?
showshadow = false, --show an outer shadow?
useflatbackground = false, --true uses plain flat color instead
backgroundcolor = { r = 0.3, g = 0.3, b = 0.3, a = 0.7},
shadowcolor = { r = 0, g = 0, b = 0, a = 0.9},
classcolored = false,
inset = 5,

I still don't see the background texture, I see a semi-transparent color. I noticed that if I comment out backgroundcolor and shadowcolor above, then I see the texture (but I obviously also get an error since I didn't also comment out the applicable sections in the function file). Seems the backgroundcolor setting overrides showbg no matter what is set to true above.
wtrhzrd is offline Report comment to moderator  
Reply With Quote
Unread 10-17-10, 11:01 AM  
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1361
File comments: 3264
Uploads: 86
Setting your keybindings ist part of the config. It's really easy. Open the config.lua with Notepad and change this part:
Code:
  cfg.hotkeys = {
    show            = false,
    fontsize        = 12,
    pos1             = { a1 = "TOPRIGHT", x = 0, y = 0 }, 
    pos2             = { a1 = "TOPLEFT", x = 0, y = 0 }, --important! two points are needed to make the hotkeyname be inside of the button
  }
Change that value to "true".
__________________
| Simple is beautiful.
| Roth UI | Roth UI FAQ | GoogleCode | Zork | TDMOG

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
Last edited by zork : 10-17-10 at 11:05 AM.
zork is online now Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: