In addition a skin package could add ButtonFacade as an Optional Dependency, and would then throw out the error that the user needs to install ButtonFacade for the skin to work. Opinions?
I always found the mix up of "optional" and not odd. If it can't run without it, it's not optional. All skin packs should have LibButtonFacade listed as a dependency.
Edit: Lawl. I can has Hero status? 500 posts, no "spam". /flex
Modules that add support for addons should follow the format BarAddon_ButtonFacade, to distinguish them from skin packs which should follow the format ButtonFacade_SkinName.
Sounds good.
With regard to skins included in ButtonFacade, I'd limit it to Blizzard, Zoomed, and Dreamlayout skins...
Okay. Then we need to have a wiki page or something to show all of the skins that are available along with their names, so people can see what choices they have.
I'm not sure what "the Template" and "the built-in skin files" failing or erroring is all about; I thought the whole purpose behind you writing this as a lib was so that bar addons wanting to support this system could embed the lib and not bother the aforementioned users who are happy with the Blizz look.
The template, never being run, won't actually fail. My point with it is that whenever changes are made to it, it should not break it if you make a skin as a direct copy of it. Thus, hopefully, at all times a person can make a copy of the Template, rename it, create a TOC file for it, load up, and it should work.
Built in skins should never fail for missing LBF, because it should always be there. Not sure why I suggested that...
Quote from StormFX »
I always found the mix up of "optional" and not odd. If it can't run without it, it's not optional. All skin packs should have LibButtonFacade listed as a dependency.
If a skin package is made with an optional dependency, it will load when ButtonFacade is not loaded. Thus we can detect that and pop up an error that says something along the lines of: "ButtonFacade must be enabled for ButtonFacade_<SkinName> to work."
If it's a plain dependency, it just won't load, and users might never realize the problem.
Then we need to have a wiki page or something to show all of the skins that are available along with their names, so people can see what choices they have.
I've long wanted to do this. cC never had a details wiki page. I think it'd be great to have a page for BF and then one with details on creating a skin. We could also then provide links to additional skins and/or info on how to obtain additional skins.
If a skin package is made with an optional dependency, it will load when ButtonFacade is not loaded. Thus we can detect that and pop up an error that says something along the lines of: "ButtonFacade must be enabled for ButtonFacade_<SkinName> to work."
If it's a plain dependency, it just won't load, and users might never realize the problem.
Ah. I see. That makes sense. Could just use an assert(). But shouldn't it be LibBF that's the Optional Dependency?
P.S. I have an idea: Instead of including the template with BF, why don't I simple create a template skin that includes a dummy ToC and a ReadMe that points users to the wiki (when available)? :)
P.P.S. Since LibButtonFacade is the actual skinning engine (library) while ButtonFacade is simply the GUI for it, do you plan on separating them so that mod authors who want to utilize the engine for their mod but wish to provide their own "interface" can exclude the BF package?
HideBlizzard is going to be incompatible with Bongos since you're hiding the pet buttons (which I reuse), and reshowing the main menu bar (which I hide at load).
I think the Hide Blizzard module was just an example... It should not be a functional module, though, if it is left in at all. It should be up to the bar addons to hide the Blizzard bar if they want to.
ButtonCouture
ButtonDesigner
BustMyButtons
Spanx (lol..really tight hosiery to make your butt look "good".)
ButtonHouse
ButtonFactory
Proctologist (I thought ButtonDoc was just too bland.)
Ah. I see. That makes sense. Could just use an assert(). But shouldn't it be LibBF that's the Optional Dependency?
Since the library is part of ButtonFacade, no. OptDeps are for Addons, not libraries. If the library was separate, it would be LibButtonFacade.
P.S. I have an idea: Instead of including the template with BF, why don't I simple create a template skin that includes a dummy ToC and a ReadMe that points users to the wiki (when available)? :)
Sounds perfectly fine to me.
P.P.S. Since LibButtonFacade is the actual skinning engine (library) while ButtonFacade is simply the GUI for it, do you plan on separating them so that mod authors who want to utilize the engine for their mod but wish to provide their own "interface" can exclude the BF package?
The discussion on page 1 suggests resulting difficulty in user support doing it that way. Thus, the two are part of one addon.
HideBlizzard is going to be incompatible with Bongos since you're hiding the pet buttons (which I reuse), and reshowing the main menu bar (which I hide at load).
Quote from Seerah »
I think the Hide Blizzard module was just an example... It should not be a functional module, though, if it is left in at all. It should be up to the bar addons to hide the Blizzard bar if they want to.
Yeah, the Hide Blizzard Module was mostly for me to verify the correct way to create a module, add its options into the GUI, etc. Once real modules come along, the hide blizzard module will be removed. Note, also that it defaults to disabled. (At least it should be... :p )
Did you ever put up a Wiki for additional skins for BF? I'd like to use it, but i'm quite hooked on my modified Vol_theme i'm using with Cy_C. Is there a way for me to add this to BF easily, or does it require some coding insight?
Did you ever put up a Wiki for additional skins for BF? I'd like to use it, but i'm quite hooked on my modified Vol_theme i'm using with Cy_C. Is there a way for me to add this to BF easily, or does it require some coding insight?
Keep in mind that ButtonFacade only works with Infinibar at the moment until more modules are written and more authors add support. The skinning wiki is up:
also startet converting the Vol Skins from CyCircled. But the highlight texture doesn't seem to work. tested it with own textures. but the textur doesn't appear anyway ingame. maybe you can take a look at it...
greetings Bandicut
Edit: Think i found the problem. i'm using IB2 and the default text substitutions (with dogtags) seems to overwrite all highlightlayers. removing the dogtag for border highlight only causes that theres no highlight effect.
also startet converting the Vol Skins from CyCircled. But the highlight texture doesn't seem to work. tested it with own textures. but the textur doesn't appear anyway ingame. maybe you can take a look at it...
greetings Bandicut
Edit: Think i found the problem. i'm using IB2 and the default text substitutions (with dogtags) seems to overwrite all highlightlayers. removing the dogtag for border highlight only causes that theres no highlight effect.
I'll be honest, IB2 doesn't use all of the layers correctly (something I'm working on). So I think I've found the first real module to add to ButtonFacade: Test Buttons. This will add a group of buttons (that can then be hidden after you're done), that allow the skinner to apply their work in progress to normal Blizzard style buttons. In addition, it'll help hash out any errors/bugs in the layering system. I'll have it done by tonight.
also startet converting the Vol Skins from CyCircled. But the highlight texture doesn't seem to work. tested it with own textures. but the textur doesn't appear anyway ingame. maybe you can take a look at it...
greetings Bandicut
Edit: Think i found the problem. i'm using IB2 and the default text substitutions (with dogtags) seems to overwrite all highlightlayers. removing the dogtag for border highlight only causes that theres no highlight effect.
Is ButtonFacade itself supposed to store the Skin i selected for my Buttons or do i need to store and restore that? Right now it doesnt seem to be saving at all ;)
Also, for buttons that are bigger then the "default" action buttons, the backdrop layer doesnt work properly (aka is hidden behind the button)
the button thats not working is actually smaller and scaled up, but still doesnt show any backdrop..
Do i need to supply anything specific for the backdrop to work?
Well it works fine for the buttons that inherit the "ActionButtonTemplate", but does not seem to work for buttons that inherit the "ShapeshiftButtonTemplate", and i have not a clue why, i even checkd ButtonFacade code to see how it applys the skin, but i couldnt find any real reason for it not working.
I always found the mix up of "optional" and not odd. If it can't run without it, it's not optional. All skin packs should have LibButtonFacade listed as a dependency.
Edit: Lawl. I can has Hero status? 500 posts, no "spam". /flex
Sounds good.
Okay. Then we need to have a wiki page or something to show all of the skins that are available along with their names, so people can see what choices they have.
The template, never being run, won't actually fail. My point with it is that whenever changes are made to it, it should not break it if you make a skin as a direct copy of it. Thus, hopefully, at all times a person can make a copy of the Template, rename it, create a TOC file for it, load up, and it should work.
Built in skins should never fail for missing LBF, because it should always be there. Not sure why I suggested that...
If a skin package is made with an optional dependency, it will load when ButtonFacade is not loaded. Thus we can detect that and pop up an error that says something along the lines of: "ButtonFacade must be enabled for ButtonFacade_<SkinName> to work."
If it's a plain dependency, it just won't load, and users might never realize the problem.
I've long wanted to do this. cC never had a details wiki page. I think it'd be great to have a page for BF and then one with details on creating a skin. We could also then provide links to additional skins and/or info on how to obtain additional skins.
Ah. I see. That makes sense. Could just use an assert(). But shouldn't it be LibBF that's the Optional Dependency?
P.S. I have an idea: Instead of including the template with BF, why don't I simple create a template skin that includes a dummy ToC and a ReadMe that points users to the wiki (when available)? :)
P.P.S. Since LibButtonFacade is the actual skinning engine (library) while ButtonFacade is simply the GUI for it, do you plan on separating them so that mod authors who want to utilize the engine for their mod but wish to provide their own "interface" can exclude the BF package?
ButtonDesigner
BustMyButtons
Spanx (lol..really tight hosiery to make your butt look "good".)
ButtonHouse
ButtonFactory
Proctologist (I thought ButtonDoc was just too bland.)
AnAlbumCover
Since the library is part of ButtonFacade, no. OptDeps are for Addons, not libraries. If the library was separate, it would be LibButtonFacade.
Sounds perfectly fine to me.
The discussion on page 1 suggests resulting difficulty in user support doing it that way. Thus, the two are part of one addon.
Yeah, the Hide Blizzard Module was mostly for me to verify the correct way to create a module, add its options into the GUI, etc. Once real modules come along, the hide blizzard module will be removed. Note, also that it defaults to disabled. (At least it should be... :p )
Keep in mind that ButtonFacade only works with Infinibar at the moment until more modules are written and more authors add support. The skinning wiki is up:
http://www.wowace.com/wiki/ButtonFacade/Skins
I'll tweak it as time goes by. I'll also be converting my skins (and some others) as I get time.
P.S. I created the following wiki pages:
http://www.wowace.com/wiki/ButtonFacade
http://www.wowace.com/wiki/ButtonFacade/Addons
http://www.wowace.com/wiki/ButtonFacade/Modules
http://www.wowace.com/wiki/ButtonFacade/Skins
Feel free to add to them.
also startet converting the Vol Skins from CyCircled. But the highlight texture doesn't seem to work. tested it with own textures. but the textur doesn't appear anyway ingame. maybe you can take a look at it...
greetings Bandicut
Edit: Think i found the problem. i'm using IB2 and the default text substitutions (with dogtags) seems to overwrite all highlightlayers. removing the dogtag for border highlight only causes that theres no highlight effect.
I'll be honest, IB2 doesn't use all of the layers correctly (something I'm working on). So I think I've found the first real module to add to ButtonFacade: Test Buttons. This will add a group of buttons (that can then be hidden after you're done), that allow the skinner to apply their work in progress to normal Blizzard style buttons. In addition, it'll help hash out any errors/bugs in the layering system. I'll have it done by tonight.
share? :)
Also, for buttons that are bigger then the "default" action buttons, the backdrop layer doesnt work properly (aka is hidden behind the button)
the button thats not working is actually smaller and scaled up, but still doesnt show any backdrop..
Do i need to supply anything specific for the backdrop to work?
You probably know this, but I'll say it anyhow: Backdrop is a texture layer, so needs a texture.
Edit: Skin authors might want to wait until the "Test Bar" module is complete to ensure that their skins are working correctly.
Revision 69199 has the new Button Test module. It displays 5 buttons, each of a different template. Disabling the module completely hides the buttons.