Allow the user to select which font is used.
arcadepro opened this issue ยท 8 comments
Perhaps define which font (and size) to be used in the options file so people can change it.
It was just a thought as the timers were a little too small on thin on my screen.
Perhaps for the moment you could simply add some variables to the options file like:
fontpath="Fonts\FRIZQT__.TTF"
size=14
style="OUTLINE"
then use self.Timer: SetFont (fontpath, size, style) in overlay.lua.
Anyone wanting a different font can hack it in without going down the addon going down sharedmedia rabbithole for now. I think allowing the size to be changed will be the important thing for most users.
Are you able to send a screenshot of how the timer looks for you?
There's not much room on the button once there are stacks and the cooldown number. Anything with stacks the timer is already bumping up against it with NumberFontNormal.
I'm not averse to the option, but my first preference is a default that works for everyone.
Edit: FWIW the font is the same one used for the button stack count, which is the bottom right corner.
I looked at ABA - I copied most of the style from it since it's what I've been using for a decade. Their default is tenths of a second below 3 seconds, so that's what I did also as my ABA config is pretty much default. I use the tenths a lot, I tend to be a interrupt-at-the-last-(sub-)second kind, and also try to max out my chi torpedo run speed increase. :)
I think there is a good argument for a "tenths or not" option, since that is something people can reasonably differ on.
The font stuff I will have to think about more.
8537a4f adds /lba decimaltimers on|off
The problem with the font is not that its hard to set (it's not) but that for it to be dynamic there has to be a complete reskin action of all the already created buttons, and some kind of event that triggers it when the option is changed.
And the event requires that the rest of the code no longer sets the db options directly, but calls some kind of getter/setter function wrapper to do it, which is a massive annoyance.
I really wish AceDB had an OnProfileModified event or something. I'm sick of DIY all the time. :(