├── Masque
├── Textures
│ ├── Icon.tga
│ ├── Backdrop
│ │ ├── Aura.tga
│ │ ├── Item.tga
│ │ ├── Pet.tga
│ │ ├── Action.tga
│ │ ├── Debuff.tga
│ │ └── Enchant.tga
│ ├── Cooldown
│ │ ├── Edge.tga
│ │ ├── Swipe.tga
│ │ ├── Edge-LoC.tga
│ │ └── Swipe-Circle.tga
│ └── SpellAlert
│ │ ├── IconAlert.blp
│ │ ├── IconAlertAnts.blp
│ │ ├── IconAlert-Circle.tga
│ │ └── IconAlertAnts-Circle.tga
├── Libs
│ ├── AceDB-3.0
│ │ └── AceDB-3.0.xml
│ ├── AceAddon-3.0
│ │ └── AceAddon-3.0.xml
│ ├── AceDBOptions-3.0
│ │ └── AceDBOptions-3.0.xml
│ ├── LibDBIcon-1.0
│ │ └── lib.xml
│ ├── AceConfig-3.0
│ │ ├── AceConfigCmd-3.0
│ │ │ └── AceConfigCmd-3.0.xml
│ │ ├── AceConfigDialog-3.0
│ │ │ └── AceConfigDialog-3.0.xml
│ │ ├── AceConfigRegistry-3.0
│ │ │ └── AceConfigRegistry-3.0.xml
│ │ ├── AceConfig-3.0.xml
│ │ └── AceConfig-3.0.lua
│ ├── AceGUI-3.0_SFX-Widgets
│ │ ├── AceGUI-3.0_SFX-Widgets.xml
│ │ ├── AceGUI-3.0_SFX-Widgets-BCC.toc
│ │ ├── AceGUI-3.0_SFX-Widgets-Classic.toc
│ │ ├── AceGUI-3.0_SFX-Widgets.toc
│ │ └── LibStub
│ │ │ └── LibStub.lua
│ ├── Libs.xml
│ ├── AceGUI-3.0
│ │ ├── AceGUI-3.0.xml
│ │ └── widgets
│ │ │ ├── AceGUIContainer-SimpleGroup.lua
│ │ │ ├── AceGUIWidget-Heading.lua
│ │ │ ├── AceGUIWidget-Button.lua
│ │ │ ├── AceGUIWidget-InteractiveLabel.lua
│ │ │ ├── AceGUIContainer-InlineGroup.lua
│ │ │ ├── AceGUIContainer-BlizOptionsGroup.lua
│ │ │ ├── AceGUIWidget-Icon.lua
│ │ │ └── AceGUIWidget-Label.lua
│ ├── LibStub
│ │ └── LibStub.lua
│ └── LibDataBroker-1.1
│ │ └── LibDataBroker-1.1.lua
├── Skins
│ ├── Skins.xml
│ └── Skins.lua
├── Options
│ ├── Options.xml
│ ├── LDB.lua
│ ├── Profiles.lua
│ └── About.lua
├── Core
│ ├── Core.xml
│ ├── Regions
│ │ ├── Regions.xml
│ │ ├── Text.lua
│ │ ├── IconBorder.lua
│ │ ├── QuestBorder.lua
│ │ ├── Mask.lua
│ │ ├── NewItem.lua
│ │ ├── Gloss.lua
│ │ ├── Shadow.lua
│ │ ├── SpellAlert.lua
│ │ ├── Texture.lua
│ │ ├── Icon.lua
│ │ └── Backdrop.lua
│ ├── Callback.lua
│ ├── Groups.lua
│ ├── Core.lua
│ ├── Utility.lua
│ └── Button.lua
├── Locales
│ └── Locales.xml
├── Masque.toc
└── Masque.lua
├── Masque_Apathy
├── Textures
│ ├── Glow.tga
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Normal.tga
│ ├── Quest.tga
│ ├── Shadow.tga
│ └── Indicator.tga
├── Masque_Apathy.toc
└── Locales.lua
├── Masque_Caith
├── Textures
│ ├── Gloss.tga
│ ├── Glow.tga
│ ├── Quest.tga
│ ├── Border.tga
│ ├── Normal.tga
│ ├── Shadow.tga
│ ├── Indicator.tga
│ ├── Backdrop-Item.tga
│ ├── Backdrop-Pet.tga
│ └── Backdrop-Action.tga
├── Masque_Caith.toc
└── Locales.lua
├── Masque_Epix
├── Textures
│ ├── Border.tga
│ ├── Normal.tga
│ ├── Backdrop.tga
│ ├── Normals.tga
│ └── Overlay.tga
├── Masque_Epix.toc
└── Masque_Epix.lua
├── Masque_Qhil
├── Textures
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Normal.tga
│ ├── Backdrop.tga
│ ├── Highlight.tga
│ ├── Overlay.tga
│ └── PlainBackdrop.tga
├── Masque_Qhil.toc
└── Masque_Qhil.lua
├── Masque_Entropy
├── Textures
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Glow.tga
│ ├── Normal.tga
│ ├── Quest.tga
│ ├── Shadow.tga
│ └── Indicator.tga
├── Masque_Entropy.toc
└── Locales.lua
├── Masque_LiteStep
├── Textures
│ ├── Gloss.tga
│ ├── Glow.tga
│ ├── Lite.tga
│ ├── Quest.tga
│ ├── Border.tga
│ ├── Normal.tga
│ ├── Backdrop-Pet.tga
│ ├── Backdrop-Action.tga
│ └── Backdrop-Item.tga
├── Masque_LiteStep.toc
└── Locales.lua
├── Masque_Raeli
├── Textures
│ └── Raeli
│ │ ├── Icon.tga
│ │ ├── Border.tga
│ │ ├── Checked.tga
│ │ ├── Flash.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Pushed.tga
│ │ ├── Highlight.tga
│ │ ├── Border_Inset.tga
│ │ ├── No_Backdrop.tga
│ │ └── Normal_Inset.tga
└── Masque_Raeli.toc
├── Masque_CleanUI
├── CleanUI_Black
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Normal.tga
│ ├── Backdrop.tga
│ ├── Overlay.tga
│ └── Highlight.tga
├── CleanUI_Edged
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Normal.tga
│ ├── Backdrop.tga
│ ├── Overlay.tga
│ └── Highlight.tga
├── CleanUI_Gray
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Normal.tga
│ ├── Overlay.tga
│ ├── Backdrop.tga
│ └── Highlight.tga
├── CleanUI_Thin
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Normal.tga
│ ├── Overlay.tga
│ ├── Backdrop.tga
│ └── Highlight.tga
├── CleanUI_White
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Normal.tga
│ ├── Backdrop.tga
│ ├── Overlay.tga
│ └── Highlight.tga
├── CleanUI_Default
│ ├── Border.tga
│ ├── Gloss.tga
│ ├── Normal.tga
│ ├── Backdrop.tga
│ ├── Highlight.tga
│ └── Overlay.tga
├── CleanUI_BlackAndWhite
│ ├── Gloss.tga
│ ├── Backdrop.tga
│ ├── Border.tga
│ ├── Normal.tga
│ ├── Overlay.tga
│ └── Highlight.tga
├── CleanUI_WhiteAndBlack
│ ├── Gloss.tga
│ ├── Backdrop.tga
│ ├── Border.tga
│ ├── Normal.tga
│ ├── Overlay.tga
│ └── Highlight.tga
└── Masque_CleanUI.toc
├── Masque_FlatSquares
├── Textures
│ ├── Border.tga
│ ├── Normal.tga
│ ├── Overlay.tga
│ ├── Backdrop.tga
│ └── Highlight.tga
├── Masque_FlatSquares.toc
└── FlatSquares.lua
├── Masque_Renaitre
├── Textures
│ ├── Fade
│ │ ├── Gloss.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── Circle
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Square
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Beveled
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── CirclePro
│ │ ├── Gloss.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── Rounded
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── FadeCircle
│ │ ├── Border.tga
│ │ ├── Flash.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── SquareThin
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ ├── Highlight.tga
│ │ └── Overlay.tga
│ └── Thinnerest
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ ├── Highlight.tga
│ │ └── Overlay.tga
└── Masque_Renaitre.toc
├── Masque_Shadow
├── Textures
│ ├── Shadow 1
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Shadow 2
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Shadow 3
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Shadow 4
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ └── Shadow 5
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
└── Masque_Shadow.toc
├── Masque_Stylo
├── Textures
│ ├── Stylo_Red
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Stylo_Tan
│ │ ├── Gloss.tga
│ │ ├── Backdrop.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Stylo_Blue
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── Stylo_Bonus
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Stylo_Green
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Stylo_Orange
│ │ ├── Gloss.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── Stylo_Pink
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── Stylo_Purple
│ │ ├── Gloss.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── Stylo_White
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Stylo_Yellow
│ │ ├── Gloss.tga
│ │ ├── Border.tga
│ │ ├── Normal.tga
│ │ ├── Overlay.tga
│ │ ├── Backdrop.tga
│ │ └── Highlight.tga
│ ├── Stylo_Light_Blue
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ ├── Overlay.tga
│ │ └── Highlight.tga
│ ├── Stylo_Dark_Magenta
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ ├── Highlight.tga
│ │ └── Overlay.tga
│ └── Stylo_Spring_Green
│ │ ├── Border.tga
│ │ ├── Gloss.tga
│ │ ├── Normal.tga
│ │ ├── Backdrop.tga
│ │ ├── Highlight.tga
│ │ └── Overlay.tga
└── Masque_Stylo.toc
└── Masque_Blizzard
├── Masque_Blizzard.toc
└── Masque_Blizzard.lua
/Masque/Textures/Icon.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Icon.tga
--------------------------------------------------------------------------------
/Masque_Apathy/Textures/Glow.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Apathy/Textures/Glow.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Glow.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Glow.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Quest.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Quest.tga
--------------------------------------------------------------------------------
/Masque_Epix/Textures/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Epix/Textures/Border.tga
--------------------------------------------------------------------------------
/Masque_Epix/Textures/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Epix/Textures/Normal.tga
--------------------------------------------------------------------------------
/Masque_Qhil/Textures/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Qhil/Textures/Border.tga
--------------------------------------------------------------------------------
/Masque_Qhil/Textures/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Qhil/Textures/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Qhil/Textures/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Qhil/Textures/Normal.tga
--------------------------------------------------------------------------------
/Masque/Textures/Backdrop/Aura.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Backdrop/Aura.tga
--------------------------------------------------------------------------------
/Masque/Textures/Backdrop/Item.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Backdrop/Item.tga
--------------------------------------------------------------------------------
/Masque/Textures/Backdrop/Pet.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Backdrop/Pet.tga
--------------------------------------------------------------------------------
/Masque/Textures/Cooldown/Edge.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Cooldown/Edge.tga
--------------------------------------------------------------------------------
/Masque/Textures/Cooldown/Swipe.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Cooldown/Swipe.tga
--------------------------------------------------------------------------------
/Masque_Apathy/Textures/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Apathy/Textures/Border.tga
--------------------------------------------------------------------------------
/Masque_Apathy/Textures/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Apathy/Textures/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Apathy/Textures/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Apathy/Textures/Normal.tga
--------------------------------------------------------------------------------
/Masque_Apathy/Textures/Quest.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Apathy/Textures/Quest.tga
--------------------------------------------------------------------------------
/Masque_Apathy/Textures/Shadow.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Apathy/Textures/Shadow.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Border.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Normal.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Shadow.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Shadow.tga
--------------------------------------------------------------------------------
/Masque_Entropy/Textures/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Entropy/Textures/Border.tga
--------------------------------------------------------------------------------
/Masque_Entropy/Textures/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Entropy/Textures/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Entropy/Textures/Glow.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Entropy/Textures/Glow.tga
--------------------------------------------------------------------------------
/Masque_Entropy/Textures/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Entropy/Textures/Normal.tga
--------------------------------------------------------------------------------
/Masque_Entropy/Textures/Quest.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Entropy/Textures/Quest.tga
--------------------------------------------------------------------------------
/Masque_Entropy/Textures/Shadow.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Entropy/Textures/Shadow.tga
--------------------------------------------------------------------------------
/Masque_Epix/Textures/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Epix/Textures/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Epix/Textures/Normals.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Epix/Textures/Normals.tga
--------------------------------------------------------------------------------
/Masque_Epix/Textures/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Epix/Textures/Overlay.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Gloss.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Glow.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Glow.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Lite.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Lite.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Quest.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Quest.tga
--------------------------------------------------------------------------------
/Masque_Qhil/Textures/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Qhil/Textures/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Qhil/Textures/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Qhil/Textures/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Qhil/Textures/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Qhil/Textures/Overlay.tga
--------------------------------------------------------------------------------
/Masque/Textures/Backdrop/Action.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Backdrop/Action.tga
--------------------------------------------------------------------------------
/Masque/Textures/Backdrop/Debuff.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Backdrop/Debuff.tga
--------------------------------------------------------------------------------
/Masque/Textures/Backdrop/Enchant.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Backdrop/Enchant.tga
--------------------------------------------------------------------------------
/Masque_Apathy/Textures/Indicator.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Apathy/Textures/Indicator.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Indicator.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Indicator.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Border.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Normal.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Icon.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Icon.tga
--------------------------------------------------------------------------------
/Masque/Textures/Cooldown/Edge-LoC.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Cooldown/Edge-LoC.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Backdrop-Item.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Backdrop-Item.tga
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Backdrop-Pet.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Backdrop-Pet.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Black/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Black/Border.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Black/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Black/Gloss.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Black/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Black/Normal.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Edged/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Edged/Border.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Edged/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Edged/Gloss.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Edged/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Edged/Normal.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Gray/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Gray/Border.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Gray/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Gray/Gloss.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Gray/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Gray/Normal.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Gray/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Gray/Overlay.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Thin/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Thin/Border.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Thin/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Thin/Gloss.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Thin/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Thin/Normal.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Thin/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Thin/Overlay.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_White/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_White/Border.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_White/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_White/Gloss.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_White/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_White/Normal.tga
--------------------------------------------------------------------------------
/Masque_Entropy/Textures/Indicator.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Entropy/Textures/Indicator.tga
--------------------------------------------------------------------------------
/Masque_FlatSquares/Textures/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_FlatSquares/Textures/Border.tga
--------------------------------------------------------------------------------
/Masque_FlatSquares/Textures/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_FlatSquares/Textures/Normal.tga
--------------------------------------------------------------------------------
/Masque_FlatSquares/Textures/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_FlatSquares/Textures/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Qhil/Textures/PlainBackdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Qhil/Textures/PlainBackdrop.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Border.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Checked.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Checked.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Flash.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Flash.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Normal.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Pushed.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Pushed.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Fade/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Fade/Gloss.tga
--------------------------------------------------------------------------------
/Masque/Textures/Cooldown/Swipe-Circle.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/Cooldown/Swipe-Circle.tga
--------------------------------------------------------------------------------
/Masque/Textures/SpellAlert/IconAlert.blp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/SpellAlert/IconAlert.blp
--------------------------------------------------------------------------------
/Masque_Caith/Textures/Backdrop-Action.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Caith/Textures/Backdrop-Action.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Black/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Black/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Black/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Black/Overlay.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Default/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Default/Border.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Default/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Default/Gloss.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Default/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Default/Normal.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Edged/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Edged/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Edged/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Edged/Overlay.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Gray/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Gray/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Gray/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Gray/Highlight.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Thin/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Thin/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Thin/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Thin/Highlight.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_White/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_White/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_White/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_White/Overlay.tga
--------------------------------------------------------------------------------
/Masque_FlatSquares/Textures/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_FlatSquares/Textures/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_FlatSquares/Textures/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_FlatSquares/Textures/Highlight.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Backdrop-Pet.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Backdrop-Pet.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Circle/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Circle/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Fade/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Fade/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Fade/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Fade/Normal.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Fade/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Fade/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Square/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Square/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 1/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 1/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 2/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 2/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 3/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 3/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 4/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 4/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 5/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 5/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Red/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Red/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Tan/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Tan/Gloss.tga
--------------------------------------------------------------------------------
/Masque/Textures/SpellAlert/IconAlertAnts.blp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/SpellAlert/IconAlertAnts.blp
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Black/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Black/Highlight.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Default/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Default/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Default/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Default/Highlight.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Default/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Default/Overlay.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_Edged/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_Edged/Highlight.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_White/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_White/Highlight.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Backdrop-Action.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Backdrop-Action.tga
--------------------------------------------------------------------------------
/Masque_LiteStep/Textures/Backdrop-Item.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_LiteStep/Textures/Backdrop-Item.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Border_Inset.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Border_Inset.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/No_Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/No_Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Raeli/Textures/Raeli/Normal_Inset.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Raeli/Textures/Raeli/Normal_Inset.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Beveled/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Beveled/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Beveled/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Beveled/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Beveled/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Beveled/Normal.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Beveled/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Beveled/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Circle/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Circle/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Circle/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Circle/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Circle/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Circle/Normal.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Circle/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Circle/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/CirclePro/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/CirclePro/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Fade/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Fade/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Fade/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Fade/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Rounded/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Rounded/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Rounded/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Rounded/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Rounded/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Rounded/Normal.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Rounded/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Rounded/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Square/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Square/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Square/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Square/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Square/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Square/Normal.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Square/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Square/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 1/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 1/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 1/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 1/Border.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 1/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 1/Normal.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 1/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 1/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 2/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 2/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 2/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 2/Border.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 2/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 2/Normal.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 2/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 2/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 3/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 3/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 3/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 3/Border.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 3/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 3/Normal.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 3/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 3/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 4/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 4/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 4/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 4/Border.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 4/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 4/Normal.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 4/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 4/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 5/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 5/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 5/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 5/Border.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 5/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 5/Normal.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 5/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 5/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Blue/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Blue/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Blue/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Blue/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Blue/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Blue/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Blue/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Blue/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Bonus/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Bonus/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Bonus/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Bonus/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Bonus/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Bonus/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Green/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Green/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Green/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Green/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Green/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Green/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Orange/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Orange/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Pink/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Pink/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Pink/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Pink/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Pink/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Pink/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Pink/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Pink/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Purple/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Purple/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Red/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Red/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Red/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Red/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Red/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Red/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Red/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Red/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Tan/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Tan/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Tan/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Tan/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Tan/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Tan/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Tan/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Tan/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_White/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_White/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_White/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_White/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_White/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_White/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Yellow/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Yellow/Gloss.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_BlackAndWhite/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_BlackAndWhite/Gloss.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_WhiteAndBlack/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_WhiteAndBlack/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Beveled/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Beveled/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Beveled/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Beveled/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Circle/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Circle/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/CirclePro/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/CirclePro/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/CirclePro/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/CirclePro/Normal.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/CirclePro/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/CirclePro/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/FadeCircle/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/FadeCircle/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/FadeCircle/Flash.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/FadeCircle/Flash.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/FadeCircle/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/FadeCircle/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/FadeCircle/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/FadeCircle/Normal.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Rounded/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Rounded/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Rounded/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Rounded/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Square/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Square/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/SquareThin/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/SquareThin/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/SquareThin/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/SquareThin/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/SquareThin/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/SquareThin/Normal.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Thinnerest/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Thinnerest/Border.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Thinnerest/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Thinnerest/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Thinnerest/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Thinnerest/Normal.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 1/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 1/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 2/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 2/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 3/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 3/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 4/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 4/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Shadow/Textures/Shadow 5/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Shadow/Textures/Shadow 5/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Blue/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Blue/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Blue/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Blue/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Bonus/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Bonus/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Bonus/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Bonus/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Green/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Green/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Green/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Green/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Orange/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Orange/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Orange/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Orange/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Orange/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Orange/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Pink/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Pink/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Pink/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Pink/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Purple/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Purple/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Purple/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Purple/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Purple/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Purple/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Red/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Red/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Tan/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Tan/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_White/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_White/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_White/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_White/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Yellow/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Yellow/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Yellow/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Yellow/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Yellow/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Yellow/Overlay.tga
--------------------------------------------------------------------------------
/Masque/Textures/SpellAlert/IconAlert-Circle.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/SpellAlert/IconAlert-Circle.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_BlackAndWhite/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_BlackAndWhite/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_BlackAndWhite/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_BlackAndWhite/Border.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_BlackAndWhite/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_BlackAndWhite/Normal.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_BlackAndWhite/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_BlackAndWhite/Overlay.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_WhiteAndBlack/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_WhiteAndBlack/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_WhiteAndBlack/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_WhiteAndBlack/Border.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_WhiteAndBlack/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_WhiteAndBlack/Normal.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_WhiteAndBlack/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_WhiteAndBlack/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/CirclePro/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/CirclePro/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/CirclePro/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/CirclePro/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/FadeCircle/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/FadeCircle/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/FadeCircle/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/FadeCircle/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/SquareThin/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/SquareThin/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/SquareThin/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/SquareThin/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/SquareThin/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/SquareThin/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Thinnerest/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Thinnerest/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Thinnerest/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Thinnerest/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Renaitre/Textures/Thinnerest/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Renaitre/Textures/Thinnerest/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Bonus/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Bonus/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Green/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Green/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Light_Blue/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Light_Blue/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Light_Blue/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Light_Blue/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Light_Blue/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Light_Blue/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Orange/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Orange/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Orange/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Orange/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Purple/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Purple/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Purple/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Purple/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_White/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_White/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Yellow/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Yellow/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Yellow/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Yellow/Highlight.tga
--------------------------------------------------------------------------------
/Masque/Textures/SpellAlert/IconAlertAnts-Circle.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque/Textures/SpellAlert/IconAlertAnts-Circle.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_BlackAndWhite/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_BlackAndWhite/Highlight.tga
--------------------------------------------------------------------------------
/Masque_CleanUI/CleanUI_WhiteAndBlack/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_CleanUI/CleanUI_WhiteAndBlack/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Dark_Magenta/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Dark_Magenta/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Dark_Magenta/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Dark_Magenta/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Dark_Magenta/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Dark_Magenta/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Light_Blue/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Light_Blue/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Light_Blue/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Light_Blue/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Spring_Green/Border.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Spring_Green/Border.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Spring_Green/Gloss.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Spring_Green/Gloss.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Spring_Green/Normal.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Spring_Green/Normal.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Dark_Magenta/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Dark_Magenta/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Dark_Magenta/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Dark_Magenta/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Dark_Magenta/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Dark_Magenta/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Light_Blue/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Light_Blue/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Spring_Green/Backdrop.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Spring_Green/Backdrop.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Spring_Green/Highlight.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Spring_Green/Highlight.tga
--------------------------------------------------------------------------------
/Masque_Stylo/Textures/Stylo_Spring_Green/Overlay.tga:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bkader/Masque-WoTLK/HEAD/Masque_Stylo/Textures/Stylo_Spring_Green/Overlay.tga
--------------------------------------------------------------------------------
/Masque_Epix/Masque_Epix.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Title: Masque: |cff99CCFFEpix|r
3 | ## Version: 2.1
4 | ## Author: Epix
5 | ## Notes: Epix's skin for Masque.
6 | ## Dependencies: Masque
7 |
8 | Masque_Epix.lua
--------------------------------------------------------------------------------
/Masque_Blizzard/Masque_Blizzard.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Version: 1.1.0
3 | ## Title: Masque_Blizzard
4 | ## Author: Shamahan
5 | ## SavedVariables: MasqueSkin
6 | ## RequiredDeps: Masque
7 |
8 | Masque_Blizzard.lua
--------------------------------------------------------------------------------
/Masque/Libs/AceDB-3.0/AceDB-3.0.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
--------------------------------------------------------------------------------
/Masque_CleanUI/Masque_CleanUI.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Title: Masque_CleanUI
3 | ## Author: Seharad (Kader Backport)
4 | ## Version: 9.1.0
5 | ## Notes: Masque Skin for the CleanUI look and feel
6 | ## Dependencies: Masque
7 |
8 | Masque_CleanUI.lua
--------------------------------------------------------------------------------
/Masque/Libs/AceAddon-3.0/AceAddon-3.0.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
--------------------------------------------------------------------------------
/Masque_FlatSquares/Masque_FlatSquares.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Title: Masque: |cffffffffFlatSquares|r
3 | ## Version: 1.0.8
4 | ## Author: ccfreak (Kader Backport)
5 | ## Notes: FlatSquares skin for Masque.
6 | ## Dependencies: Masque
7 |
8 | FlatSquares.lua
--------------------------------------------------------------------------------
/Masque/Libs/AceDBOptions-3.0/AceDBOptions-3.0.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
--------------------------------------------------------------------------------
/Masque/Libs/LibDBIcon-1.0/lib.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Masque_Shadow/Masque_Shadow.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Title: Masque|cff36e5ff:|r|cff1784d1 Shadow|r
3 | ## Notes: |cff36e5ffChange the texture of your buttons.|r
4 | ## Version: v6.2.2
5 | ## Author: Fedorenko R.D. (Kader Backport)
6 | ## Dependencies: Masque
7 |
8 | Settings.lua
--------------------------------------------------------------------------------
/Masque/Libs/AceConfig-3.0/AceConfigCmd-3.0/AceConfigCmd-3.0.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
--------------------------------------------------------------------------------
/Masque/Libs/AceConfig-3.0/AceConfigDialog-3.0/AceConfigDialog-3.0.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
--------------------------------------------------------------------------------
/Masque/Libs/AceConfig-3.0/AceConfigRegistry-3.0/AceConfigRegistry-3.0.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
--------------------------------------------------------------------------------
/Masque_Raeli/Masque_Raeli.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Title: Masque: |cffffffffRaeli|r
3 | ## Notes: Raeli's skins for Masque.
4 | ## Version: r25-release
5 | ## Author: Raeli (Kader Backport)
6 | ## Dependencies: Masque
7 | ## X-Curse-project-ID: 283762
8 | ## X-WOWI-ID: 25719
9 |
10 | Masque_Raeli.lua
--------------------------------------------------------------------------------
/Masque_Stylo/Masque_Stylo.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Title: Masque |cffff8000Stylo|r
3 | ## Version: v7.2.0
4 | ## Notes: Stylo Designs for Masque
5 | ## Author: Stylo (Kader Backport)
6 | ## X-Credits: Creators of Masque and Opaque for asking for a Masque version of Stylo
7 | ## Dependencies: Masque
8 |
9 | Stylo.lua
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0_SFX-Widgets/AceGUI-3.0_SFX-Widgets.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Masque_Renaitre/Masque_Renaitre.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Title: Masque|c0000FF00:|r|cffa335ee Renaitre|r
3 | ## Version: v7.0.3
4 | ## Notes: Renaitre's (US Thrall) button skins for Masque.
5 | ## Author: Limb0 (Kader Backport)
6 | ## X-Credits: StormFX and JJ Sheets (the creators of Masque and ButtonFacade), Sairen (creator of cyCircled)
7 | ## Dependencies: Masque
8 |
9 | Skins.lua
--------------------------------------------------------------------------------
/Masque/Skins/Skins.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Masque_Qhil/Masque_Qhil.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 | ## Title: Masque: Qhil
3 | ## Version: 1.3.0
4 | ## Author: Qhil (Kader Backport)
5 | ## Notes: Qhil skin for Masque.
6 | ## Notes-deDE: Qhil-Skin für Masque.
7 | ## Notes-esES: Skin Qhil para Masque.
8 | ## Notes-esMX: Skin Qhil para Masque.
9 | ## Notes-itIT: Skin Qhil per Masque.
10 | ## Dependencies: Masque
11 |
12 | Masque_Qhil.lua
--------------------------------------------------------------------------------
/Masque/Options/Options.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Masque/Core/Core.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Masque/Locales/Locales.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Masque/Libs/AceConfig-3.0/AceConfig-3.0.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Masque/Core/Regions/Regions.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Masque_Caith/Masque_Caith.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 |
3 | ## Title: Masque: Caith
4 | ## Notes: Caith skin for Masque.
5 | ## Notes-deDE: Caith-Skin für Masque.
6 | ## Notes-esMX: Skin Caith para Masque.
7 | ## Notes-esES: Skin Caith para Masque.
8 | ## Notes-frFR: Skin de Caith pour Masque.
9 | ## Notes-itIT: Skin Caith per Masque.
10 | ## Notes-ruRU: Скин Caith для Masque.
11 | ## Notes-zhTW: Masque的Caith皮膚。
12 |
13 | ## Version: 9.1.0
14 | ## Author: StormFX (Kader Backport)
15 | ## Dependencies: Masque
16 |
17 | ## X-Website: https://github.com/SFX-WoW/Masque_Caith
18 | ## X-Category: Interface Enhancements
19 | ## X-Credits: Zeal, Caith
20 | ## X-Curse-Project-ID: 13594
21 | ## X-Wago-ID: RXKqjoGy
22 | ## X-WoWI-ID: 8869
23 |
24 | # Locales
25 | Locales.lua
26 |
27 | # Skins
28 | Skins.lua
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0_SFX-Widgets/AceGUI-3.0_SFX-Widgets-BCC.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 20501
2 |
3 | ## Title: AceGUI-3.0: SFX Widgets
4 | ## Notes: Adds custom widgets to AceGUI-3.0 and AceConfigDialog-3.0.
5 | ## Notes-itIT: Aggiungi widgets personalizzati ad AceGUI-3.0 e AceConfigDialog-3.0.
6 | ## Notes-ruRU: Добавляет настраиваемые виджеты для AceGUI-3.0 и AceConfigDialog-3.0.
7 | ## Notes-zhTW: 新增自訂的小套件到 AceGUI-3.0 和 AceConfigDialog-3.0。
8 |
9 | ## Version: 1e94a8f
10 | ## Author: StormFX
11 | ## OptionalDeps: Ace3
12 |
13 | ## X-Category: Library
14 | ## X-Website: https://github.com/SFX-WoW/AceGUI-3.0_SFX-Widgets
15 | ## X-Credits: The Ace3 Team
16 | ## X-Curse-Project-ID: 340803
17 | ## X-Wago-ID: RaN0zvKj
18 | ## X-WoWI-ID: 25658
19 |
20 | LibStub\LibStub.lua
21 | AceGUI-3.0_SFX-Widgets.xml
22 |
--------------------------------------------------------------------------------
/Masque_Apathy/Masque_Apathy.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 |
3 | ## Title: Masque: Apathy
4 | ## Notes: Apathy skin for Masque.
5 | ## Notes-deDE: Apathy-Skin für Masque.
6 | ## Notes-esMX: Skin Apathy para Masque.
7 | ## Notes-esES: Skin Apathy para Masque.
8 | ## Notes-frFR: Skin de Apathy pour Masque.
9 | ## Notes-itIT: Skin Apathy per Masque.
10 | ## Notes-ruRU: Скин Apathy для Masque.
11 | ## Notes-zhTW: Masque的Apathy皮膚。
12 |
13 | ## Version: 9.1.0
14 | ## Author: StormFX (Kader Backport)
15 | ## Dependencies: Masque
16 |
17 | ## X-Website: https://github.com/SFX-WoW/Masque_Apathy
18 | ## X-Category: Interface Enhancements
19 | ## X-Credits: Zeal
20 | ## X-Curse-Project-ID: 13593
21 | ## X-Wago-ID: PANzJ5N4
22 | ## X-WoWI-ID: 8870
23 |
24 | # Locales
25 | Locales.lua
26 |
27 | # Skins
28 | Skins.lua
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0_SFX-Widgets/AceGUI-3.0_SFX-Widgets-Classic.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 11307
2 |
3 | ## Title: AceGUI-3.0: SFX Widgets
4 | ## Notes: Adds custom widgets to AceGUI-3.0 and AceConfigDialog-3.0.
5 | ## Notes-itIT: Aggiungi widgets personalizzati ad AceGUI-3.0 e AceConfigDialog-3.0.
6 | ## Notes-ruRU: Добавляет настраиваемые виджеты для AceGUI-3.0 и AceConfigDialog-3.0.
7 | ## Notes-zhTW: 新增自訂的小套件到 AceGUI-3.0 和 AceConfigDialog-3.0。
8 |
9 | ## Version: 1e94a8f
10 | ## Author: StormFX
11 | ## OptionalDeps: Ace3
12 |
13 | ## X-Category: Library
14 | ## X-Website: https://github.com/SFX-WoW/AceGUI-3.0_SFX-Widgets
15 | ## X-Credits: The Ace3 Team
16 | ## X-Curse-Project-ID: 340803
17 | ## X-Wago-ID: RaN0zvKj
18 | ## X-WoWI-ID: 25658
19 |
20 | LibStub\LibStub.lua
21 | AceGUI-3.0_SFX-Widgets.xml
22 |
--------------------------------------------------------------------------------
/Masque/Libs/Libs.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/Masque_Entropy/Masque_Entropy.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 |
3 | ## Title: Masque: Entropy
4 | ## Notes: Entropy skins for Masque.
5 | ## Notes-deDE: Entropy-Skin für Masque.
6 | ## Notes-esMX: Skins Entropy para Masque.
7 | ## Notes-esES: Skins Entropy para Masque.
8 | ## Notes-frFR: Skins de Entropy pour Masque.
9 | ## Notes-itIT: Skins Entropy per Masque.
10 | ## Notes-ruRU: Скин Entropy для Masque.
11 | ## Notes-zhTW: Masque的Entropy皮膚。
12 |
13 | ## Version: 9.1.0
14 | ## Author: StormFX (Kader Backport)
15 | ## Dependencies: Masque
16 |
17 | ## X-Website: https://github.com/SFX-WoW/Masque_Entropy
18 | ## X-Category: Interface Enhancements
19 | ## X-Credits: Zeal
20 | ## X-Curse-Project-ID: 13595
21 | ## X-Wago-ID: 25NRZvN3
22 | ## X-WoWI-ID: 8873
23 |
24 | # Locales
25 | Locales.lua
26 |
27 | # Skins
28 | Skins.lua
--------------------------------------------------------------------------------
/Masque_LiteStep/Masque_LiteStep.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 |
3 | ## Title: Masque: LiteStep
4 | ## Notes: LiteStep skins for Masque.
5 | ## Notes-deDE: LiteStep-Skin für Masque.
6 | ## Notes-esMX: Skins LiteStep para Masque.
7 | ## Notes-esES: Skins LiteStep para Masque.
8 | ## Notes-frFR: Skins de LiteStep pour Masque.
9 | ## Notes-itIT: Skins LiteStep per Masque.
10 | ## Notes-ruRU: Скин LiteStep для Masque.
11 | ## Notes-zhTW: Masque的LiteStep皮膚。
12 |
13 | ## Version: 9.1.0
14 | ## Author: StormFX (Kader Backport)
15 | ## Dependencies: Masque
16 |
17 | ## X-Website: https://github.com/SFX-WoW/Masque_LiteStep
18 | ## X-Category: Interface Enhancements
19 | ## X-Credits: Saynt
20 | ## X-Curse-Project-ID: 13599
21 | ## X-Wago-ID: Qb6mj7KP
22 | ## X-WoWI-ID: 8882
23 |
24 | # Locales
25 | Locales.lua
26 |
27 | # Skins
28 | Skins.lua
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0_SFX-Widgets/AceGUI-3.0_SFX-Widgets.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 90100
2 | ## Interface-BCC: 20501
3 | ## Interface-Classic: 11307
4 |
5 | ## Title: AceGUI-3.0: SFX Widgets
6 | ## Notes: Adds custom widgets to AceGUI-3.0 and AceConfigDialog-3.0.
7 | ## Notes-itIT: Aggiungi widgets personalizzati ad AceGUI-3.0 e AceConfigDialog-3.0.
8 | ## Notes-ruRU: Добавляет настраиваемые виджеты для AceGUI-3.0 и AceConfigDialog-3.0.
9 | ## Notes-zhTW: 新增自訂的小套件到 AceGUI-3.0 和 AceConfigDialog-3.0。
10 |
11 | ## Version: 1e94a8f
12 | ## Author: StormFX
13 | ## OptionalDeps: Ace3
14 |
15 | ## X-Category: Library
16 | ## X-Website: https://github.com/SFX-WoW/AceGUI-3.0_SFX-Widgets
17 | ## X-Credits: The Ace3 Team
18 | ## X-Curse-Project-ID: 340803
19 | ## X-Wago-ID: RaN0zvKj
20 | ## X-WoWI-ID: 25658
21 |
22 | LibStub\LibStub.lua
23 | AceGUI-3.0_SFX-Widgets.xml
24 |
--------------------------------------------------------------------------------
/Masque/Masque.toc:
--------------------------------------------------------------------------------
1 | ## Interface: 30300
2 |
3 | ## Title: Masque
4 | ## Notes: A skinning engine for button-based add-ons.
5 | ## Notes-esMX: Un sistema de cambio de apariencia para los add-ons de botones.
6 | ## Notes-esES: Un sistema de cambio de apariencia para los add-ons de botones.
7 | ## Notes-ruRU: Основа для аддонов, изменяющих внешний вид кнопок.
8 | ## Notes-zhCN: 一款基于按钮的外观美化插件。
9 | ## Notes-zhTW: 一個基於按鈕的外觀美化插件。
10 |
11 | ## Version: 9.1.1
12 | ## Author: StormFX, JJSheets (Kader Backport)
13 | ## SavedVariables: MasqueDB
14 | ## OptionalDeps: Ace3, AceGUI-3.0_SFX-Widgets, LibDBIcon-1.0, LibDualSpec-1.0
15 |
16 | ## X-Website: https://github.com/bkader/Masque-WoTLK
17 | ## X-Category: Interface Enhancements
18 | ## X-Curse-Project-ID: 13592
19 | ## X-WoWI-ID: 12097
20 |
21 | # Libraries
22 | Libs\Libs.xml
23 | Libs\LibDualSpec-1.0\LibDualSpec-1.0.lua
24 |
25 | # Locales
26 | Locales\Locales.xml
27 |
28 | # Add-On
29 | Masque.lua
30 |
31 | # Skins
32 | Skins\Skins.xml
33 |
34 | # Core
35 | Core\Core.xml
36 |
37 | # Options
38 | Options\Options.xml
--------------------------------------------------------------------------------
/Masque_Entropy/Locales.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque: Entropy', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque_Entropy.
5 |
6 | * File...: Locales.lua
7 | * Author.: StormFX, Kader
8 |
9 | ]]
10 |
11 | -- GLOBALS: GetLocale, setmetatable
12 |
13 | local _, Core = ...
14 |
15 | ----------------------------------------
16 | -- Locales
17 | ---
18 |
19 | local L = {}
20 |
21 | Core.Locale = setmetatable(L, {
22 | __index = function(self, k)
23 | self[k] = k
24 | return k
25 | end
26 | })
27 |
28 | local Locale = GetLocale()
29 |
30 | if Locale == "enGB" or Locale == "enUS" then
31 | -- enUS/enGB for Reference
32 | --L["A metallic version of Apathy in the color of %s ore."]
33 | return
34 | --elseif Locale == "deDE" then
35 | --elseif Locale == "esES" or Locale == "esMX" then
36 | --elseif Locale == "frFR" then
37 | --elseif Locale == "itIT" then
38 | --elseif Locale == "koKR" then
39 | --elseif Locale == "ptBR" then
40 | --elseif Locale == "ruRU" then
41 | --elseif Locale == "zhCN" then
42 | elseif Locale == "zhTW" then
43 | L["A metallic version of Apathy in the color of %s ore."] = "Apathy的一種金屬版本,以%s礦石的顏色顯示。"
44 | end
--------------------------------------------------------------------------------
/Masque_Apathy/Locales.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque: Apathy', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque_Apathy.
5 |
6 | * File...: Locales.lua
7 | * Author.: StormFX, Kader
8 |
9 | ]]
10 |
11 | -- GLOBALS: GetLocale, setmetatable
12 |
13 | local _, Core = ...
14 |
15 | ----------------------------------------
16 | -- Locales
17 | ---
18 |
19 | local L = {}
20 |
21 | Core.Locale = setmetatable(L, {
22 | __index = function(self, k)
23 | self[k] = k
24 | return k
25 | end
26 | })
27 |
28 | local Locale = GetLocale()
29 |
30 | if Locale == "enGB" or Locale == "enUS" then
31 | -- enUS/enGB for Reference
32 | --L["A square, minimalistic skin with thin borders."] = "A square, minimalistic skin with thin borders."
33 | return
34 | --elseif Locale == "deDE" then
35 | --elseif Locale == "esES" or Locale == "esMX" then
36 | --elseif Locale == "frFR" then
37 | --elseif Locale == "itIT" then
38 | --elseif Locale == "koKR" then
39 | --elseif Locale == "ptBR" then
40 | --elseif Locale == "ruRU" then
41 | --elseif Locale == "zhCN" then
42 | elseif Locale == "zhTW" then
43 | L["A square, minimalistic skin with thin borders."] = "一個方形,簡約帶薄外框的主題皮膚。"
44 | end
--------------------------------------------------------------------------------
/Masque/Core/Regions/Text.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\Text.lua
7 | * Author.: StormFX, Kader
8 |
9 | Text Regions
10 |
11 | * See Skins\Default.lua for region defaults.
12 |
13 | ]]
14 | local _, Core = ...
15 |
16 | ----------------------------------------
17 | -- Internal
18 | ---
19 |
20 | -- @ Skins\Default
21 | local Defaults = Core.Skins.Default
22 |
23 | -- @ Core\Utility
24 | local GetSize, SetPoints = Core.GetSize, Core.SetPoints
25 |
26 | ----------------------------------------
27 | -- Core
28 | ---
29 |
30 | -- Skins a text layer of a button.
31 | function Core.SkinText(Layer, Region, Button, Skin, xScale, yScale)
32 | local bType = Button.__MSQ_bType
33 | local Default = Defaults[Layer]
34 |
35 | Skin = Skin[bType] or Skin
36 | Default = Default[bType] or Default
37 |
38 | Region:SetJustifyH(Skin.JustifyH or Default.JustifyH)
39 | Region:SetJustifyV(Skin.JustifyV or "MIDDLE")
40 | Region:SetDrawLayer(Skin.DrawLayer or Default.DrawLayer)
41 | Region:SetSize(GetSize(Skin.Width, Skin.Height or 10, xScale, yScale))
42 | SetPoints(Region, Button, Skin, Default)
43 | end
--------------------------------------------------------------------------------
/Masque_LiteStep/Locales.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque: LiteStep', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque_LiteStep.
5 |
6 | * File...: Locales.lua
7 | * Author.: StormFX, Kader
8 |
9 | ]]
10 |
11 | -- GLOBALS: GetLocale, setmetatable
12 |
13 | local _, Core = ...
14 |
15 | ----------------------------------------
16 | -- Locales
17 | ---
18 |
19 | local L = {}
20 |
21 | Core.Locale = setmetatable(L, {
22 | __index = function(self, k)
23 | self[k] = k
24 | return k
25 | end
26 | })
27 |
28 | local Locale = GetLocale()
29 |
30 | if Locale == "enGB" or Locale == "enUS" then
31 | -- enUS/enGB for Reference
32 | --L["A port of the original LiteStep skin by Saynt."] = "A port of the original LiteStep skin by Saynt."
33 | --L["An alternate version of LiteStep without borders."] = "An alternate version of LiteStep without borders."
34 | return
35 | --elseif Locale == "deDE" then
36 | --elseif Locale == "esES" or Locale == "esMX" then
37 | --elseif Locale == "frFR" then
38 | --elseif Locale == "itIT" then
39 | --elseif Locale == "koKR" then
40 | --elseif Locale == "ptBR" then
41 | --elseif Locale == "ruRU" then
42 | --elseif Locale == "zhCN" then
43 | --elseif Locale == "zhTW" then
44 | end
--------------------------------------------------------------------------------
/Masque/Options/LDB.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Options\LDB.lua
7 | * Author.: StormFX
8 |
9 | LDB Launcher
10 |
11 | ]]
12 | local MASQUE, Core = ...
13 |
14 | ----------------------------------------
15 | -- Locals
16 | ---
17 |
18 | -- @ Options\Core
19 | local Setup = Core.Setup
20 |
21 | ----------------------------------------
22 | -- Setup
23 | ---
24 |
25 | function Setup.LDB(self)
26 | local LDB = LibStub("LibDataBroker-1.1", true)
27 |
28 | if LDB then
29 | -- @ Locales\enUS
30 | local L = self.Locale
31 |
32 | self.LDBO = LDB:NewDataObject(MASQUE, {
33 | type = "launcher",
34 | label = MASQUE,
35 | icon = "Interface\\Addons\\Masque\\Textures\\Icon",
36 | OnClick = function(Tip, Button)
37 | if Button == "LeftButton" or Button == "RightButton" then
38 | Core:ToggleOptions()
39 | end
40 | end,
41 | OnTooltipShow = function(Tip)
42 | if not Tip or not Tip.AddLine then return end
43 | Tip:AddLine(MASQUE)
44 | Tip:AddLine(L["Click to open Masque's settings."], 1, 1, 1)
45 | end
46 | })
47 |
48 | local LDBI = LibStub("LibDBIcon-1.0", true)
49 |
50 | if LDBI then
51 | LDBI:Register(MASQUE, self.LDBO, self.db.profile.LDB)
52 | self.LDBI = LDBI
53 | end
54 | end
55 |
56 | -- GC
57 | Setup.LDB = nil
58 | end
--------------------------------------------------------------------------------
/Masque_Caith/Locales.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque: Caith', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque_Caith.
5 |
6 | * File...: Locales.lua
7 | * Author.: StormFX
8 |
9 | ]]
10 |
11 | -- GLOBALS: GetLocale, setmetatable
12 |
13 | local _, Core = ...
14 |
15 | ----------------------------------------
16 | -- Locales
17 | ---
18 |
19 | local L = {}
20 |
21 | Core.Locale = setmetatable(L, {
22 | __index = function(self, k)
23 | self[k] = k
24 | return k
25 | end
26 | })
27 |
28 | local Locale = GetLocale()
29 |
30 | if Locale == "enGB" or Locale == "enUS" then
31 | -- enUS/enGB for Reference
32 | --L["A larger version of Apathy inspired by Caith UI."] = "A larger version of Apathy inspired by Caith UI."
33 | return
34 | --elseif Locale == "deDE" then
35 | --elseif Locale == "esES" or Locale == "esMX" then
36 | elseif Locale == "frFR" then
37 | L["A larger version of Apathy inspired by Caith UI."] = "Une version plus grande de Apathy inspirée par Caith UI."
38 | elseif Locale == "itIT" then
39 | L["A larger version of Apathy inspired by Caith UI."] = "Una versione più grande di Apathy inspirata dalla UI di Caith."
40 | --elseif Locale == "koKR" then
41 | --elseif Locale == "ptBR" then
42 | --elseif Locale == "ruRU" then
43 | --elseif Locale == "zhCN" then
44 | elseif Locale == "zhTW" then
45 | L["A larger version of Apathy inspired by Caith UI."] = "一個更大版本的Apathy,啟發自Caith UI。"
46 | end
47 |
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/AceGUI-3.0.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/Masque/Options/Profiles.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Options\Profiles.lua
7 | * Author.: StormFX, Kader
8 |
9 | 'Profile Settings' Group/Panel
10 |
11 | TODO: Create a custom profiles panel.
12 |
13 | ]]
14 | local MASQUE, Core = ...
15 |
16 | ----------------------------------------
17 | -- Lua
18 | ---
19 |
20 | local pairs = pairs
21 |
22 | ----------------------------------------
23 | -- Locals
24 | ---
25 |
26 | -- @ Options\Core
27 | local Setup = Core.Setup
28 |
29 | ----------------------------------------
30 | -- Setup
31 | ---
32 |
33 | -- Creates the 'Profile Settings' group/panel.
34 | function Setup.Profiles(self)
35 | -- @ Locales\enUS
36 | local L = self.Locale
37 |
38 | local Options = LibStub("AceDBOptions-3.0"):GetOptionsTable(self.db)
39 | Options.name = L["Profile Settings"]
40 | Options.order = -1
41 |
42 | -- Font Size Fix
43 | local args = Options.args
44 | for _, arg in pairs(args) do
45 | local type = arg.type
46 | if type and type == "description" then
47 | arg.fontSize = "medium"
48 | end
49 | end
50 |
51 | -- LibDualSpec-1.0
52 | local LDS = self.USE_LDS and LibStub("LibDualSpec-1.0", true)
53 | if LDS then
54 | LDS:EnhanceOptions(Options, self.db)
55 | end
56 |
57 | self.Options.args.Profiles = Options
58 | self.ProfilesPanel =
59 | LibStub("AceConfigDialog-3.0"):AddToBlizOptions(MASQUE, L["Profile Settings"], MASQUE, "Profiles")
60 |
61 | -- GC
62 | Setup.Profiles = nil
63 | end
--------------------------------------------------------------------------------
/Masque/Core/Callback.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Callback.lua
7 | * Author.: StormFX, JJSheets, Kader
8 |
9 | Callback API
10 |
11 | ]]
12 | local _, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local error, pairs, type = error, pairs, type
19 |
20 | ----------------------------------------
21 | -- Locals
22 | ---
23 |
24 | local Cache = {}
25 |
26 | ----------------------------------------
27 | -- Callback
28 | ---
29 |
30 | local Callback = {
31 | -- Notifies an add-on of skin changes.
32 | -- @ Core\Group: Group, SkinID, Backdrop, Shadow, Gloss, Colors, Disabled
33 | Fire = function(self, Addon, ...)
34 | local args = Cache[Addon]
35 | if args then
36 | for arg, func in pairs(args) do
37 | if arg then
38 | func(arg, ...)
39 | else
40 | func(...)
41 | end
42 | end
43 | end
44 | end,
45 | -- Registers an add-on to be notified of skin changes.
46 | Register = function(self, Addon, func, arg)
47 | Cache[Addon] = Cache[Addon] or {}
48 | Cache[Addon][arg] = func
49 | end
50 | }
51 |
52 | ----------------------------------------
53 | -- Core
54 | ---
55 |
56 | Core.Callback = setmetatable(Callback, {__call = Callback.Fire})
57 |
58 | ----------------------------------------
59 | -- API
60 | ---
61 |
62 | -- Registers a callback at the add-on level.
63 | function Core.API:Register(Addon, func, arg)
64 | if type(Addon) ~= "string" then
65 | if Core.Debug then
66 | error("Bad argument to API method 'Register'. 'Addon' must be a string.", 2)
67 | end
68 | return
69 | elseif type(func) ~= "function" then
70 | if Core.Debug then
71 | error("Bad argument to API method 'Register'. 'func' must be a function.", 2)
72 | end
73 | return
74 | elseif arg and type(arg) ~= "table" then
75 | if Core.Debug then
76 | error("Bad argument to API method 'Register'. 'arg' must be a table or nil.", 2)
77 | end
78 | return
79 | end
80 |
81 | Callback:Register(Addon, func, arg or false)
82 | end
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/widgets/AceGUIContainer-SimpleGroup.lua:
--------------------------------------------------------------------------------
1 | --[[-----------------------------------------------------------------------------
2 | SimpleGroup Container
3 | Simple container widget that just groups widgets.
4 | -------------------------------------------------------------------------------]]
5 | local Type, Version = "SimpleGroup", 20
6 | local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
7 | if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
8 |
9 | -- Lua APIs
10 | local pairs = pairs
11 |
12 | -- WoW APIs
13 | local CreateFrame, UIParent = CreateFrame, UIParent
14 |
15 |
16 | --[[-----------------------------------------------------------------------------
17 | Methods
18 | -------------------------------------------------------------------------------]]
19 | local methods = {
20 | ["OnAcquire"] = function(self)
21 | self:SetWidth(300)
22 | self:SetHeight(100)
23 | end,
24 |
25 | -- ["OnRelease"] = nil,
26 |
27 | ["LayoutFinished"] = function(self, width, height)
28 | if self.noAutoHeight then return end
29 | self:SetHeight(height or 0)
30 | end,
31 |
32 | ["OnWidthSet"] = function(self, width)
33 | local content = self.content
34 | content:SetWidth(width)
35 | content.width = width
36 | end,
37 |
38 | ["OnHeightSet"] = function(self, height)
39 | local content = self.content
40 | content:SetHeight(height)
41 | content.height = height
42 | end
43 | }
44 |
45 | --[[-----------------------------------------------------------------------------
46 | Constructor
47 | -------------------------------------------------------------------------------]]
48 | local function Constructor()
49 | local frame = CreateFrame("Frame", nil, UIParent)
50 | frame:SetFrameStrata("FULLSCREEN_DIALOG")
51 |
52 | --Container Support
53 | local content = CreateFrame("Frame", nil, frame)
54 | content:SetPoint("TOPLEFT")
55 | content:SetPoint("BOTTOMRIGHT")
56 |
57 | local widget = {
58 | frame = frame,
59 | content = content,
60 | type = Type
61 | }
62 | for method, func in pairs(methods) do
63 | widget[method] = func
64 | end
65 |
66 | return AceGUI:RegisterAsContainer(widget)
67 | end
68 |
69 | AceGUI:RegisterWidgetType(Type, Constructor, Version)
70 |
--------------------------------------------------------------------------------
/Masque_Epix/Masque_Epix.lua:
--------------------------------------------------------------------------------
1 | local MSQ = LibStub("Masque", true)
2 | if not MSQ then return end
3 |
4 | MSQ:AddSkin("Epix", {
5 | Icon = {
6 | Width = 36,
7 | Height = 36,
8 | TexCoords = {0.08, 0.92, 0.08, 0.92}
9 | },
10 | Cooldown = {
11 | Width = 36,
12 | Height = 36
13 | },
14 | ChargeCooldown = {
15 | Width = 36,
16 | Height = 36
17 | },
18 | Name = {
19 | Width = 42,
20 | Height = 10,
21 | OffsetY = 2
22 | },
23 | Count = {
24 | Width = 42,
25 | Height = 10,
26 | OffsetX = -3,
27 | OffsetY = 6
28 | },
29 | HotKey = {
30 | Width = 42,
31 | Height = 10,
32 | OffsetX = -5,
33 | OffsetY = -5
34 | },
35 | Duration = {
36 | Width = 42,
37 | Height = 10,
38 | OffsetY = -3
39 | },
40 | Backdrop = {
41 | Width = 42,
42 | Height = 42,
43 | Texture = [[Interface\AddOns\Masque_Epix\Textures\Backdrop]]
44 | },
45 | Disabled = {
46 | Width = 42,
47 | Height = 42,
48 | BlendMode = "BLEND",
49 | Color = {0.77, 0.12, 0.23, 1},
50 | Texture = [[Interface\AddOns\Masque_Epix\Textures\Normal]]
51 | },
52 | Border = {
53 | Width = 42,
54 | Height = 42,
55 | BlendMode = "ADD",
56 | Color = {1, 1, 1, 0.1},
57 | Texture = [[Interface\AddOns\Masque_Epix\Textures\Border]]
58 | },
59 | Checked = {
60 | Width = 38,
61 | Height = 38,
62 | BlendMode = "ADD",
63 | DrawLayer = "OVERLAY",
64 | DrawLevel = 0,
65 | Color = {1, 1, 1, 1},
66 | Texture = [[Interface\AddOns\Masque_Epix\Textures\Border]]
67 | },
68 | Normal = {
69 | Width = 42,
70 | Height = 42,
71 | Texture = [[Interface\AddOns\Masque_Epix\Textures\Normal]],
72 | Color = {0.125, 0.125, 0.125, 1}
73 | },
74 | Pushed = {
75 | Width = 38,
76 | Height = 38,
77 | Texture = [[Interface\AddOns\Masque_Epix\Textures\Overlay]],
78 | Color = {1, 1, 1, 0.1}
79 | },
80 | Highlight = {
81 | Width = 42,
82 | Height = 42,
83 | BlendMode = "ADD",
84 | Texture = [[Interface\AddOns\Masque_Epix\Textures\Overlay]],
85 | Color = {1, 1, 1, 0.1}
86 | },
87 | Flash = {
88 | Width = 38,
89 | Height = 38,
90 | Color = {1, 0, 0, 0.2},
91 | Texture = [[Interface\AddOns\Masque_Epix\Textures\Overlay]]
92 | },
93 | AutoCastable = {
94 | Width = 38,
95 | Height = 38,
96 | Texture = [[Interface\Buttons\UI-AutoCastableOverlay]]
97 | }
98 | }, true)
--------------------------------------------------------------------------------
/Masque/Libs/LibStub/LibStub.lua:
--------------------------------------------------------------------------------
1 | -- $Id: LibStub.lua 103 2014-10-16 03:02:50Z mikk $
2 | -- LibStub is a simple versioning stub meant for use in Libraries. http://www.wowace.com/addons/libstub/ for more info
3 | -- LibStub is hereby placed in the Public Domain
4 | -- Credits: Kaelten, Cladhaire, ckknight, Mikk, Ammo, Nevcairiel, joshborke
5 | local LIBSTUB_MAJOR, LIBSTUB_MINOR = "LibStub", 2 -- NEVER MAKE THIS AN SVN REVISION! IT NEEDS TO BE USABLE IN ALL REPOS!
6 | local LibStub = _G[LIBSTUB_MAJOR]
7 |
8 | -- Check to see is this version of the stub is obsolete
9 | if not LibStub or LibStub.minor < LIBSTUB_MINOR then
10 | LibStub = LibStub or {libs = {}, minors = {} }
11 | _G[LIBSTUB_MAJOR] = LibStub
12 | LibStub.minor = LIBSTUB_MINOR
13 |
14 | -- LibStub:NewLibrary(major, minor)
15 | -- major (string) - the major version of the library
16 | -- minor (string or number ) - the minor version of the library
17 | --
18 | -- returns nil if a newer or same version of the lib is already present
19 | -- returns empty library object or old library object if upgrade is needed
20 | function LibStub:NewLibrary(major, minor)
21 | assert(type(major) == "string", "Bad argument #2 to `NewLibrary' (string expected)")
22 | minor = assert(tonumber(strmatch(minor, "%d+")), "Minor version must either be a number or contain a number.")
23 |
24 | local oldminor = self.minors[major]
25 | if oldminor and oldminor >= minor then return nil end
26 | self.minors[major], self.libs[major] = minor, self.libs[major] or {}
27 | return self.libs[major], oldminor
28 | end
29 |
30 | -- LibStub:GetLibrary(major, [silent])
31 | -- major (string) - the major version of the library
32 | -- silent (boolean) - if true, library is optional, silently return nil if its not found
33 | --
34 | -- throws an error if the library can not be found (except silent is set)
35 | -- returns the library object if found
36 | function LibStub:GetLibrary(major, silent)
37 | if not self.libs[major] and not silent then
38 | error(("Cannot find a library instance of %q."):format(tostring(major)), 2)
39 | end
40 | return self.libs[major], self.minors[major]
41 | end
42 |
43 | -- LibStub:IterateLibraries()
44 | --
45 | -- Returns an iterator for the currently registered libraries
46 | function LibStub:IterateLibraries()
47 | return pairs(self.libs)
48 | end
49 |
50 | setmetatable(LibStub, { __call = LibStub.GetLibrary })
51 | end
--------------------------------------------------------------------------------
/Masque/Libs/AceConfig-3.0/AceConfig-3.0.lua:
--------------------------------------------------------------------------------
1 | --- AceConfig-3.0 wrapper library.
2 | -- Provides an API to register an options table with the config registry,
3 | -- as well as associate it with a slash command.
4 | -- @class file
5 | -- @name AceConfig-3.0
6 | -- @release $Id: AceConfig-3.0.lua 969 2010-10-07 02:11:48Z shefki $
7 |
8 | --[[
9 | AceConfig-3.0
10 |
11 | Very light wrapper library that combines all the AceConfig subcomponents into one more easily used whole.
12 |
13 | ]]
14 |
15 | local MAJOR, MINOR = "AceConfig-3.0", 2
16 | local AceConfig = LibStub:NewLibrary(MAJOR, MINOR)
17 |
18 | if not AceConfig then return end
19 |
20 | local cfgreg = LibStub("AceConfigRegistry-3.0")
21 | local cfgcmd = LibStub("AceConfigCmd-3.0")
22 | --TODO: local cfgdlg = LibStub("AceConfigDialog-3.0", true)
23 | --TODO: local cfgdrp = LibStub("AceConfigDropdown-3.0", true)
24 |
25 | -- Lua APIs
26 | local pcall, error, type, pairs = pcall, error, type, pairs
27 |
28 | -- -------------------------------------------------------------------
29 | -- :RegisterOptionsTable(appName, options, slashcmd, persist)
30 | --
31 | -- - appName - (string) application name
32 | -- - options - table or function ref, see AceConfigRegistry
33 | -- - slashcmd - slash command (string) or table with commands, or nil to NOT create a slash command
34 |
35 | --- Register a option table with the AceConfig registry.
36 | -- You can supply a slash command (or a table of slash commands) to register with AceConfigCmd directly.
37 | -- @paramsig appName, options [, slashcmd]
38 | -- @param appName The application name for the config table.
39 | -- @param options The option table (or a function to generate one on demand). http://www.wowace.com/addons/ace3/pages/ace-config-3-0-options-tables/
40 | -- @param slashcmd A slash command to register for the option table, or a table of slash commands.
41 | -- @usage
42 | -- local AceConfig = LibStub("AceConfig-3.0")
43 | -- AceConfig:RegisterOptionsTable("MyAddon", myOptions, {"/myslash", "/my"})
44 | function AceConfig:RegisterOptionsTable(appName, options, slashcmd)
45 | local ok,msg = pcall(cfgreg.RegisterOptionsTable, self, appName, options)
46 | if not ok then error(msg, 2) end
47 |
48 | if slashcmd then
49 | if type(slashcmd) == "table" then
50 | for _,cmd in pairs(slashcmd) do
51 | cfgcmd:CreateChatCommand(cmd, appName)
52 | end
53 | else
54 | cfgcmd:CreateChatCommand(slashcmd, appName)
55 | end
56 | end
57 | end
58 |
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0_SFX-Widgets/LibStub/LibStub.lua:
--------------------------------------------------------------------------------
1 | -- $Id: LibStub.lua 103 2014-10-16 03:02:50Z mikk $
2 | -- LibStub is a simple versioning stub meant for use in Libraries. http://www.wowace.com/addons/libstub/ for more info
3 | -- LibStub is hereby placed in the Public Domain
4 | -- Credits: Kaelten, Cladhaire, ckknight, Mikk, Ammo, Nevcairiel, joshborke
5 | local LIBSTUB_MAJOR, LIBSTUB_MINOR = "LibStub", 2 -- NEVER MAKE THIS AN SVN REVISION! IT NEEDS TO BE USABLE IN ALL REPOS!
6 | local LibStub = _G[LIBSTUB_MAJOR]
7 |
8 | -- Check to see is this version of the stub is obsolete
9 | if not LibStub or LibStub.minor < LIBSTUB_MINOR then
10 | LibStub = LibStub or {libs = {}, minors = {} }
11 | _G[LIBSTUB_MAJOR] = LibStub
12 | LibStub.minor = LIBSTUB_MINOR
13 |
14 | -- LibStub:NewLibrary(major, minor)
15 | -- major (string) - the major version of the library
16 | -- minor (string or number ) - the minor version of the library
17 | --
18 | -- returns nil if a newer or same version of the lib is already present
19 | -- returns empty library object or old library object if upgrade is needed
20 | function LibStub:NewLibrary(major, minor)
21 | assert(type(major) == "string", "Bad argument #2 to `NewLibrary' (string expected)")
22 | minor = assert(tonumber(strmatch(minor, "%d+")), "Minor version must either be a number or contain a number.")
23 |
24 | local oldminor = self.minors[major]
25 | if oldminor and oldminor >= minor then return nil end
26 | self.minors[major], self.libs[major] = minor, self.libs[major] or {}
27 | return self.libs[major], oldminor
28 | end
29 |
30 | -- LibStub:GetLibrary(major, [silent])
31 | -- major (string) - the major version of the library
32 | -- silent (boolean) - if true, library is optional, silently return nil if its not found
33 | --
34 | -- throws an error if the library can not be found (except silent is set)
35 | -- returns the library object if found
36 | function LibStub:GetLibrary(major, silent)
37 | if not self.libs[major] and not silent then
38 | error(("Cannot find a library instance of %q."):format(tostring(major)), 2)
39 | end
40 | return self.libs[major], self.minors[major]
41 | end
42 |
43 | -- LibStub:IterateLibraries()
44 | --
45 | -- Returns an iterator for the currently registered libraries
46 | function LibStub:IterateLibraries()
47 | return pairs(self.libs)
48 | end
49 |
50 | setmetatable(LibStub, { __call = LibStub.GetLibrary })
51 | end
52 |
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/widgets/AceGUIWidget-Heading.lua:
--------------------------------------------------------------------------------
1 | --[[-----------------------------------------------------------------------------
2 | Heading Widget
3 | -------------------------------------------------------------------------------]]
4 | local Type, Version = "Heading", 20
5 | local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
6 | if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
7 |
8 | -- Lua APIs
9 | local pairs = pairs
10 |
11 | -- WoW APIs
12 | local CreateFrame, UIParent = CreateFrame, UIParent
13 |
14 | --[[-----------------------------------------------------------------------------
15 | Methods
16 | -------------------------------------------------------------------------------]]
17 | local methods = {
18 | ["OnAcquire"] = function(self)
19 | self:SetText()
20 | self:SetFullWidth()
21 | self:SetHeight(18)
22 | end,
23 |
24 | -- ["OnRelease"] = nil,
25 |
26 | ["SetText"] = function(self, text)
27 | self.label:SetText(text or "")
28 | if text and text ~= "" then
29 | self.left:SetPoint("RIGHT", self.label, "LEFT", -5, 0)
30 | self.right:Show()
31 | else
32 | self.left:SetPoint("RIGHT", -3, 0)
33 | self.right:Hide()
34 | end
35 | end
36 | }
37 |
38 | --[[-----------------------------------------------------------------------------
39 | Constructor
40 | -------------------------------------------------------------------------------]]
41 | local function Constructor()
42 | local frame = CreateFrame("Frame", nil, UIParent)
43 | frame:Hide()
44 |
45 | local label = frame:CreateFontString(nil, "BACKGROUND", "GameFontNormal")
46 | label:SetPoint("TOP")
47 | label:SetPoint("BOTTOM")
48 | label:SetJustifyH("CENTER")
49 |
50 | local left = frame:CreateTexture(nil, "BACKGROUND")
51 | left:SetHeight(8)
52 | left:SetPoint("LEFT", 3, 0)
53 | left:SetPoint("RIGHT", label, "LEFT", -5, 0)
54 | left:SetTexture("Interface\\Tooltips\\UI-Tooltip-Border")
55 | left:SetTexCoord(0.81, 0.94, 0.5, 1)
56 |
57 | local right = frame:CreateTexture(nil, "BACKGROUND")
58 | right:SetHeight(8)
59 | right:SetPoint("RIGHT", -3, 0)
60 | right:SetPoint("LEFT", label, "RIGHT", 5, 0)
61 | right:SetTexture("Interface\\Tooltips\\UI-Tooltip-Border")
62 | right:SetTexCoord(0.81, 0.94, 0.5, 1)
63 |
64 | local widget = {
65 | label = label,
66 | left = left,
67 | right = right,
68 | frame = frame,
69 | type = Type
70 | }
71 | for method, func in pairs(methods) do
72 | widget[method] = func
73 | end
74 |
75 | return AceGUI:RegisterAsWidget(widget)
76 | end
77 |
78 | AceGUI:RegisterWidgetType(Type, Constructor, Version)
79 |
--------------------------------------------------------------------------------
/Masque_FlatSquares/FlatSquares.lua:
--------------------------------------------------------------------------------
1 | local MSQ = LibStub("Masque", true)
2 | if not MSQ then return end
3 |
4 | MSQ:AddSkin("FlatSquares", {
5 | Authors = {"ccfreak", "|cfff58cbaKader|r"},
6 | Websites = {"https://github.com/bkader/Masque-WoTLK", "https://www.curseforge.com/wow/addons/masque_flatsquares"},
7 | Version = "1.0.7",
8 | Shape = "Square",
9 | Masque_Version = 80000,
10 | Backdrop = {
11 | Width = 32,
12 | Height = 32,
13 | Texture = [[Interface\AddOns\Masque_FlatSquares\Textures\Backdrop]]
14 | },
15 | Icon = {
16 | Width = 31,
17 | Height = 31,
18 | TexCoords = {0.08, 0.92, 0.08, 0.92}
19 | },
20 | Flash = {
21 | Width = 32,
22 | Height = 32,
23 | Color = {1, 0, 0, 0.5},
24 | Texture = [[Interface\AddOns\Masque_FlatSquares\Textures\Overlay]]
25 | },
26 | Cooldown = {
27 | Width = 31,
28 | Height = 31
29 | },
30 | ChargeCooldown = {
31 | Width = 31,
32 | Height = 31
33 | },
34 | Pushed = {
35 | Width = 32,
36 | Height = 32,
37 | Color = {0, 0, 0, 0.5},
38 | Texture = [[Interface\AddOns\Masque_FlatSquares\Textures\Overlay]]
39 | },
40 | Normal = {
41 | Width = 32,
42 | Height = 32,
43 | Color = {0, 0, 0, 1},
44 | Texture = [[Interface\AddOns\Masque_FlatSquares\Textures\Normal]]
45 | },
46 | Disabled = {
47 | Hide = true
48 | },
49 | Checked = {
50 | Width = 32,
51 | Height = 32,
52 | BlendMode = "ADD",
53 | Color = {0, 0.8, 1, 1},
54 | Texture = [[Interface\AddOns\Masque_FlatSquares\Textures\Border]]
55 | },
56 | Border = {
57 | Width = 32,
58 | Height = 32,
59 | BlendMode = "ADD",
60 | Color = {0, 0, 0, 1},
61 | Texture = [[Interface\AddOns\Masque_FlatSquares\Textures\Border]]
62 | },
63 | AutoCastable = {
64 | Width = 54,
65 | Height = 54,
66 | OffsetX = 0.5,
67 | OffsetY = -0.5,
68 | Texture = [[Interface\Buttons\UI-AutoCastableOverlay]]
69 | },
70 | Highlight = {
71 | Width = 32,
72 | Height = 32,
73 | BlendMode = "ADD",
74 | Color = {1, 1, 1, 0.1},
75 | Texture = [[Interface\AddOns\Masque_FlatSquares\Textures\Highlight]]
76 | },
77 | Name = {
78 | Width = 32,
79 | Height = 10,
80 | OffsetX = 0,
81 | OffsetY = 5
82 | },
83 | Count = {
84 | Width = 32,
85 | Height = 10,
86 | OffsetX = -4,
87 | OffsetY = 5
88 | },
89 | HotKey = {
90 | Width = 32,
91 | Height = 10,
92 | OffsetX = 1,
93 | OffsetY = -6
94 | },
95 | Duration = {
96 | Width = 32,
97 | Height = 10,
98 | OffsetY = -2
99 | },
100 | AutoCast = {
101 | Width = 26,
102 | Height = 26,
103 | OffsetX = 1,
104 | OffsetY = -1
105 | }
106 | }, true)
--------------------------------------------------------------------------------
/Masque/Core/Regions/IconBorder.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\IconBorder.lua
7 | * Author.: StormFX, Kader
8 |
9 | Texture Regions
10 |
11 | * See Skins\Default.lua for region defaults.
12 |
13 | ]]
14 | local _, Core = ...
15 |
16 | ----------------------------------------
17 | -- WoW API
18 | ---
19 |
20 | local hooksecurefunc = hooksecurefunc
21 |
22 | ----------------------------------------
23 | -- Internal
24 | ---
25 |
26 | -- @ Skins\Default
27 | local Default = Core.Skins.Default.IconBorder
28 |
29 | -- @ Core\Utility
30 | local GetSize, GetTexCoords, SetPoints = Core.GetSize, Core.GetTexCoords, Core.SetPoints
31 |
32 | ----------------------------------------
33 | -- Locals
34 | ---
35 |
36 | local DEFAULT_TEXTURE = Default.Texture
37 | local RELIC_TEXTURE = Default.RelicTexture
38 |
39 | ----------------------------------------
40 | -- Hook
41 | ---
42 |
43 | -- Counters texture changes for artifact items.
44 | local function Hook_SetTexture(Region, Texture)
45 | if Region.__ExitHook or not Region.__MSQ_Skin then
46 | return
47 | end
48 |
49 | Region.__ExitHook = true
50 |
51 | local Skin = Region.__MSQ_Skin
52 | local SkinTexture = Skin.Texture
53 |
54 | if Texture == RELIC_TEXTURE then
55 | SkinTexture = Skin.RelicTexture or SkinTexture or Texture
56 | Region.__MSQ_Texture = Texture
57 | else
58 | SkinTexture = SkinTexture or DEFAULT_TEXTURE
59 | Region.__MSQ_Texture = DEFAULT_TEXTURE
60 | end
61 |
62 | Region:SetTexture(SkinTexture)
63 | Region.__ExitHook = nil
64 | end
65 |
66 | ----------------------------------------
67 | -- Core
68 | ---
69 |
70 | -- Skins the 'IconBorder' region of a button.
71 | function Core.SkinIconBorder(Region, Button, Skin, xScale, yScale)
72 | local Texture = Region.__MSQ_Texture or Region:GetTexture()
73 |
74 | if Button.__MSQ_Enabled then
75 | Region.__MSQ_Skin = Skin
76 | Region.__MSQ_Texture = Texture
77 |
78 | Hook_SetTexture(Region, Texture)
79 | else
80 | Region.__MSQ_Skin = nil
81 | Region.__MSQ_Texture = nil
82 |
83 | Region:SetTexture(Texture)
84 | end
85 |
86 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
87 | Region:SetBlendMode(Skin.BlendMode or "BLEND")
88 | Region:SetDrawLayer(Skin.DrawLayer or "OVERLAY", Skin.DrawLevel or 0)
89 | Region:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
90 | SetPoints(Region, Button, Skin, nil, Skin.SetAllPoints)
91 |
92 | if not Region.__MSQ_Hooked then
93 | hooksecurefunc(Region, "SetTexture", Hook_SetTexture)
94 | Region.__MSQ_Hooked = true
95 | end
96 | end
--------------------------------------------------------------------------------
/Masque/Core/Regions/QuestBorder.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\QuestBorder.lua
7 | * Author.: StormFX, Kader
8 |
9 | Quest Item Border Texture
10 |
11 | * See Skins\Default.lua for region defaults.
12 |
13 | ]]
14 | local _, Core = ...
15 |
16 | ----------------------------------------
17 | -- WoW API
18 | ---
19 |
20 | local hooksecurefunc = hooksecurefunc
21 |
22 | ----------------------------------------
23 | -- Internal
24 | ---
25 |
26 | -- @ Skins\Default
27 | local Default = Core.Skins.Default.QuestBorder
28 |
29 | -- @ Core\Utility
30 | local GetColor, GetSize = Core.GetColor, Core.GetSize
31 | local GetTexCoords, SetPoints = Core.GetTexCoords, Core.SetPoints
32 |
33 | ----------------------------------------
34 | -- Locals
35 | ---
36 |
37 | local DEFAULT_TEXTURE = Default.Texture
38 | local BORDER_TEXTURE = Default.Border
39 |
40 | ----------------------------------------
41 | -- Hook
42 | ---
43 |
44 | -- Counters texture changes for the quest border texture.
45 | local function Hook_SetTexture(Region, Texture)
46 | if Region.__ExitHook or not Region.__MSQ_Skin then
47 | return
48 | end
49 |
50 | Region.__ExitHook = true
51 |
52 | local Skin = Region.__MSQ_Skin
53 | local SkinTexture = Skin.Texture
54 |
55 | if Texture == DEFAULT_TEXTURE then
56 | SkinTexture = SkinTexture or Texture
57 | Region.__MSQ_Texture = Texture
58 | else
59 | SkinTexture = Skin.Border or BORDER_TEXTURE
60 | Region.__MSQ_Texture = BORDER_TEXTURE
61 | end
62 |
63 | Region:SetTexture(SkinTexture)
64 | Region.__ExitHook = nil
65 | end
66 |
67 | ----------------------------------------
68 | -- Core
69 | ---
70 |
71 | -- Skins the 'QuestBorder' region of a button.
72 | function Core.SkinQuestBorder(Region, Button, Skin, xScale, yScale)
73 | local Texture = Region.__MSQ_Texture or Region:GetTexture()
74 |
75 | if Button.__MSQ_Enabled then
76 | Region.__MSQ_Skin = Skin
77 | Region.__MSQ_Texture = Texture
78 |
79 | Hook_SetTexture(Region, Texture)
80 | else
81 | Region.__MSQ_Skin = nil
82 | Region.__MSQ_Texture = nil
83 |
84 | Region:SetTexture(Texture)
85 | end
86 |
87 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
88 | Region:SetVertexColor(GetColor(Skin.Color))
89 | Region:SetBlendMode(Skin.BlendMode or "BLEND")
90 | Region:SetDrawLayer(Skin.DrawLayer or "OVERLAY", Skin.DrawLevel or 0)
91 | Region:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
92 | SetPoints(Region, Button, Skin, nil, Skin.SetAllPoints)
93 |
94 | if not Region.__MSQ_Hooked then
95 | hooksecurefunc(Region, "SetTexture", Hook_SetTexture)
96 | Region.__MSQ_Hooked = true
97 | end
98 | end
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/widgets/AceGUIWidget-Button.lua:
--------------------------------------------------------------------------------
1 | --[[-----------------------------------------------------------------------------
2 | Button Widget
3 | Graphical Button.
4 | -------------------------------------------------------------------------------]]
5 | local Type, Version = "Button", 20
6 | local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
7 | if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
8 |
9 | -- Lua APIs
10 | local pairs = pairs
11 |
12 | -- WoW APIs
13 | local _G = _G
14 | local PlaySound, CreateFrame, UIParent = PlaySound, CreateFrame, UIParent
15 |
16 | --[[-----------------------------------------------------------------------------
17 | Scripts
18 | -------------------------------------------------------------------------------]]
19 | local function Button_OnClick(frame, ...)
20 | PlaySound("igMainMenuOption")
21 | frame.obj:Fire("OnClick", ...)
22 | AceGUI:ClearFocus()
23 | end
24 |
25 | local function Control_OnEnter(frame)
26 | frame.obj:Fire("OnEnter")
27 | end
28 |
29 | local function Control_OnLeave(frame)
30 | frame.obj:Fire("OnLeave")
31 | end
32 |
33 | --[[-----------------------------------------------------------------------------
34 | Methods
35 | -------------------------------------------------------------------------------]]
36 | local methods = {
37 | ["OnAcquire"] = function(self)
38 | -- restore default values
39 | self:SetHeight(24)
40 | self:SetWidth(200)
41 | self:SetDisabled(false)
42 | self:SetText()
43 | end,
44 |
45 | -- ["OnRelease"] = nil,
46 |
47 | ["SetText"] = function(self, text)
48 | self.text:SetText(text)
49 | end,
50 |
51 | ["SetDisabled"] = function(self, disabled)
52 | self.disabled = disabled
53 | if disabled then
54 | self.frame:Disable()
55 | else
56 | self.frame:Enable()
57 | end
58 | end
59 | }
60 |
61 | --[[-----------------------------------------------------------------------------
62 | Constructor
63 | -------------------------------------------------------------------------------]]
64 | local function Constructor()
65 | local name = "AceGUI30Button" .. AceGUI:GetNextWidgetNum(Type)
66 | local frame = CreateFrame("Button", name, UIParent, "UIPanelButtonTemplate2")
67 | frame:Hide()
68 |
69 | frame:EnableMouse(true)
70 | frame:SetScript("OnClick", Button_OnClick)
71 | frame:SetScript("OnEnter", Control_OnEnter)
72 | frame:SetScript("OnLeave", Control_OnLeave)
73 |
74 | local text = frame:GetFontString()
75 | text:ClearAllPoints()
76 | text:SetPoint("TOPLEFT", 15, -1)
77 | text:SetPoint("BOTTOMRIGHT", -15, 1)
78 | text:SetJustifyV("MIDDLE")
79 |
80 | local widget = {
81 | text = text,
82 | frame = frame,
83 | type = Type
84 | }
85 | for method, func in pairs(methods) do
86 | widget[method] = func
87 | end
88 |
89 | return AceGUI:RegisterAsWidget(widget)
90 | end
91 |
92 | AceGUI:RegisterWidgetType(Type, Constructor, Version)
93 |
--------------------------------------------------------------------------------
/Masque/Core/Regions/Mask.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\Mask.lua
7 | * Author.: StormFX, Kader
8 |
9 | Button/Region Mask
10 |
11 | ]]
12 | local _, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local type = type
19 |
20 | ----------------------------------------
21 | -- Internal
22 | ---
23 |
24 | -- @ Core\Utility
25 | -- local GetSize = Core.GetSize
26 | -- local SetPoints = Core.SetPoints
27 | -- local CreateMaskTexture = Core.CreateMaskTexture
28 | -- local AddMaskTexture = Core.AddMaskTexture
29 | -- local RemoveMaskTexture = Core.RemoveMaskTexture
30 | -- local SetMask = Core.SetMask
31 |
32 | ----------------------------------------
33 | -- Core
34 | ---
35 |
36 | -- Skins a button or region mask.
37 | function Core.SkinMask(Region, Button, Skin, xScale, yScale)
38 | return -- Sorry, until i find a solution
39 | -- local ButtonMask = Button.__MSQ_Mask
40 |
41 | -- -- Region
42 | -- if Region then
43 | -- local SkinMask = Skin.Mask
44 |
45 | -- -- Button Mask
46 | -- if Skin.UseMask and ButtonMask and not SkinMask then
47 | -- if not Region.__MSQ_ButtonMask then
48 | -- AddMaskTexture(Region, ButtonMask, Skin.DrawLayer, Skin.DrawLevel)
49 | -- Region.__MSQ_ButtonMask = true
50 | -- end
51 | -- elseif Region.__MSQ_ButtonMask then
52 | -- RemoveMaskTexture(Region, ButtonMask)
53 | -- Region.__MSQ_ButtonMask = nil
54 | -- end
55 |
56 | -- -- Region Mask
57 | -- local RegionMask = Region.__MSQ_Mask
58 |
59 | -- if SkinMask then
60 | -- if not RegionMask then
61 | -- RegionMask = CreateMaskTexture(Button)
62 | -- Region.__MSQ_Mask = RegionMask
63 | -- end
64 |
65 | -- if type(SkinMask) == "table" then
66 | -- RegionMask:SetTexture(SkinMask.Texture)
67 | -- RegionMask:SetSize(GetSize(SkinMask.Width, SkinMask.Height, xScale, yScale))
68 | -- SetPoints(RegionMask, Region, Skin, nil, SkinMask.SetAllPoints)
69 | -- else
70 | -- RegionMask:SetTexture(SkinMask)
71 | -- RegionMask:SetAllPoints(Region)
72 | -- end
73 |
74 | -- if not Region.__MSQ_RegionMask then
75 | -- AddMaskTexture(Region, RegionMask, Skin.DrawLayer, Skin.DrawLevel)
76 | -- Region.__MSQ_RegionMask = true
77 | -- end
78 | -- elseif Region.__MSQ_RegionMask then
79 | -- RemoveMaskTexture(Region, RegionMask)
80 | -- Region.__MSQ_RegionMask = nil
81 | -- end
82 |
83 | -- -- Button
84 | -- else
85 | -- ButtonMask = ButtonMask or CreateMaskTexture(Button)
86 | -- Button.__MSQ_Mask = ButtonMask
87 |
88 | -- if type(Skin) == "table" then
89 | -- ButtonMask:SetTexture(Skin.Texture)
90 | -- ButtonMask:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
91 | -- SetPoints(ButtonMask, Button, Skin, nil, Skin.SetAllPoints)
92 | -- else
93 | -- ButtonMask:SetTexture(Skin)
94 | -- ButtonMask:SetAllPoints(Button)
95 | -- end
96 | -- end
97 | end
--------------------------------------------------------------------------------
/Masque/Core/Regions/NewItem.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\NewItem.lua
7 | * Author.: StormFX, Kader
8 |
9 | 'NewItem' Region
10 |
11 | * See Skins\Default.lua for region defaults.
12 |
13 | ]]
14 | local _, Core = ...
15 |
16 | ----------------------------------------
17 | -- WoW API
18 | ---
19 |
20 | local hooksecurefunc = hooksecurefunc
21 |
22 | ----------------------------------------
23 | -- Internal
24 | ---
25 |
26 | -- @ Skins\Default
27 | local Default = Core.Skins.Default.NewItem
28 |
29 | -- @ Core\Utility
30 | local GetColor, GetSize = Core.GetColor, Core.GetSize
31 | local GetTexCoords, SetPoints = Core.GetTexCoords, Core.SetPoints
32 |
33 | ----------------------------------------
34 | -- Locals
35 | ---
36 |
37 | local DEF_ATLAS = Default.Atlas
38 |
39 | local Colors = {
40 | ["bags-glow-white"] = {1, 1, 1, 1},
41 | ["bags-glow-green"] = {0.12, 1, 0, 1},
42 | ["bags-glow-blue"] = {0, 0.44, 0.87, 1},
43 | ["bags-glow-purple"] = {0.64, 0.21, 0.93, 1},
44 | ["bags-glow-orange"] = {1, 0.5, 0, 1},
45 | ["bags-glow-artifact"] = {0.9, 0.8, 0.5, 1},
46 | ["bags-glow-heirloom"] = {0, 0.8, 1, 1}
47 | }
48 |
49 | ----------------------------------------
50 | -- Hook
51 | ---
52 |
53 | -- Counters atlas changes when using a static skin texture.
54 | local function Hook_SetAtlas(Region, Atlas)
55 | if not Region.__MSQ_Skin then
56 | return
57 | end
58 |
59 | Atlas = Atlas or DEF_ATLAS
60 | Region.__MSQ_Atlas = Atlas
61 |
62 | local Skin = Region.__MSQ_Skin
63 |
64 | Region:SetTexture(Skin.Texture)
65 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
66 | Region:SetVertexColor(GetColor(Colors[Atlas]))
67 | end
68 |
69 | ----------------------------------------
70 | -- Core
71 | ---
72 |
73 | -- Skins the 'NewItem' region of a button.
74 | function Core.SkinNewItem(Region, Button, Skin, xScale, yScale)
75 | local Atlas = Region.__MSQ_Atlas or Region:GetAtlas() or DEF_ATLAS
76 | local Texture = Skin.Texture
77 |
78 | if Texture then
79 | Region.__MSQ_Skin = Skin
80 | Region.__MSQ_Atlas = Atlas
81 |
82 | Region:SetTexture(Texture)
83 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
84 | Region:SetVertexColor(GetColor(Colors[Atlas]))
85 |
86 | if not Region.__MSQ_Hooked then
87 | if Region.SetAtlas then
88 | hooksecurefunc(Region, "SetAtlas", Hook_SetAtlas)
89 | end
90 | Region.__MSQ_Hooked = true
91 | end
92 | else
93 | Region.__MSQ_Skin = nil
94 | Region.__MSQ_Atlas = nil
95 |
96 | if Region.SetAtlas then
97 | Region:SetAtlas(Atlas)
98 | end
99 | Region:SetVertexColor(1, 1, 1, 1)
100 | end
101 |
102 | Region:SetBlendMode(Skin.BlendMode or "ADD")
103 | Region:SetDrawLayer(Skin.DrawLayer or "OVERLAY", Skin.DrawLevel or 2)
104 | Region:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
105 | SetPoints(Region, Button, Skin, nil, Skin.SetAllPoints)
106 | end
--------------------------------------------------------------------------------
/Masque_Qhil/Masque_Qhil.lua:
--------------------------------------------------------------------------------
1 | local MSQ = LibStub("Masque", true)
2 | if not MSQ then return end
3 |
4 | MSQ:AddSkin("Qhil", {
5 | Authors = {"Qhil", "|cfff58cbaKader|r"},
6 | Websites = {"https://github.com/bkader/Masque-WoTLK"},
7 | Version = "1.3.0",
8 | Shape = "Square",
9 | Description = "A pretty simple and clean skin. It comes with a 1 pixel border, no shadows and a themed backdrop.",
10 | Masque_Version = 80200,
11 | Backdrop = {
12 | Width = 36,
13 | Height = 36,
14 | Texture = [[Interface\AddOns\Masque_Qhil\Textures\Backdrop]]
15 | },
16 | Icon = {
17 | Width = 34,
18 | Height = 34,
19 | TexCoords = {0.08, 0.92, 0.08, 0.92}
20 | },
21 | Flash = {
22 | Width = 36,
23 | Height = 36,
24 | Color = {1, 0, 0, 0.3},
25 | Texture = [[Interface\AddOns\Masque_Qhil\Textures\Overlay]]
26 | },
27 | Cooldown = {
28 | Width = 34,
29 | Height = 34,
30 | Color = {0, 0, 0, 0.8}
31 | },
32 | Pushed = {
33 | Width = 36,
34 | Height = 36,
35 | Color = {0, 0, 0, 0.5},
36 | Texture = [[Interface\AddOns\Masque_Qhil\Textures\Overlay]]
37 | },
38 | Normal = {
39 | Width = 36,
40 | Height = 36,
41 | Color = {0, 0, 0, 1},
42 | Texture = [[Interface\AddOns\Masque_Qhil\Textures\Normal]]
43 | },
44 | Disabled = {
45 | Hide = true
46 | },
47 | Checked = {
48 | Width = 36,
49 | Height = 36,
50 | BlendMode = "BLEND",
51 | Color = {1, 0.8, 0.0, 1},
52 | Texture = [[Interface\AddOns\Masque_Qhil\Textures\Border]]
53 | },
54 | Border = {
55 | Width = 36,
56 | Height = 36,
57 | BlendMode = "BLEND",
58 | Texture = [[Interface\AddOns\Masque_Qhil\Textures\Normal]]
59 | },
60 | AutoCastable = {
61 | Width = 60,
62 | Height = 60,
63 | OffsetX = 0.5,
64 | OffsetY = -0.5,
65 | Texture = [[Interface\Buttons\UI-AutoCastableOverlay]]
66 | },
67 | Highlight = {
68 | Width = 36,
69 | Height = 36,
70 | BlendMode = "ADD",
71 | Color = {1, 1, 1, 0.1},
72 | Texture = [[Interface\AddOns\Masque_Qhil\Textures\Highlight]]
73 | },
74 | Gloss = {
75 | Hide = true
76 | },
77 | HotKey = {
78 | Width = 36,
79 | Height = 36,
80 | OffsetX = -1,
81 | OffsetY = -3,
82 | JustifyH = "RIGHT",
83 | JustifyV = "TOP"
84 | },
85 | Count = {
86 | Width = 36,
87 | Height = 0,
88 | OffsetX = -1,
89 | OffsetY = 1,
90 | JustifyH = "RIGHT",
91 | JustifyV = "BOTTOM"
92 | },
93 | Name = {
94 | Width = 36,
95 | Height = 36,
96 | OffsetX = 1,
97 | OffsetY = 3,
98 | JustifyH = "LEFT",
99 | JustifyV = "BOTTOM"
100 | },
101 | Duration = {
102 | Width = 36,
103 | Height = 36,
104 | OffsetX = 0,
105 | OffsetY = 0,
106 | JustifyH = "CENTER",
107 | JustifyV = "MIDDLE"
108 | },
109 | AutoCast = {
110 | Width = 36,
111 | Height = 36
112 | }
113 | }, true)
114 |
115 | MSQ:AddSkin("Qhil - Plain Backdrop", {
116 | Description = "A pretty simple and clean skin. It comes with a 1 pixel border, no shadows and a plain backdrop.",
117 | Template = "Qhil",
118 | Backdrop = {
119 | Width = 36,
120 | Height = 36,
121 | Texture = [[Interface\AddOns\Masque_Qhil\Textures\PlainBackdrop]]
122 | }
123 | }, true)
--------------------------------------------------------------------------------
/Masque/Core/Groups.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Groups.lua
7 | * Author.: StormFX, JJSheets, Kader
8 |
9 | Group Setup
10 |
11 | ]]
12 | local MASQUE, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local error, setmetatable, type = error, setmetatable, type
19 |
20 | ----------------------------------------
21 | -- Internal
22 | ---
23 |
24 | -- @ Core\Group
25 | local Group_MT = Core.Group_MT
26 |
27 | ----------------------------------------
28 | -- Locals
29 | ---
30 |
31 | local Groups = {}
32 | local GetGroup
33 |
34 | ----------------------------------------
35 | -- Functions
36 | ---
37 |
38 | -- Creates and returns an ID for a group.
39 | local function GetID(Addon, Group, StaticID)
40 | local ID = MASQUE
41 |
42 | if Addon then
43 | ID = Addon
44 | if Group then
45 | if StaticID then
46 | ID = ID .. "_" .. StaticID
47 | else
48 | ID = ID .. "_" .. Group
49 | end
50 | end
51 | end
52 |
53 | return ID
54 | end
55 |
56 | -- Creates and returns a new group.
57 | local function NewGroup(ID, Addon, Group, StaticID)
58 | local obj = {
59 | ID = ID,
60 | Addon = Addon,
61 | Group = Group,
62 | Buttons = {},
63 | SubList = (not Group and {}) or nil,
64 | StaticID = (Group and StaticID) or nil
65 | }
66 |
67 | setmetatable(obj, Group_MT)
68 | Groups[ID] = obj
69 |
70 | local Parent
71 |
72 | if Group then
73 | Parent = GetGroup(Addon)
74 | elseif Addon then
75 | Parent = GetGroup()
76 | end
77 |
78 | if Parent then
79 | Parent.SubList[ID] = obj
80 | obj.Parent = Parent
81 | end
82 |
83 | obj:__Update(true)
84 | return obj
85 | end
86 |
87 | -- Returns an existing or new group.
88 | function GetGroup(Addon, Group, StaticID)
89 | local ID = GetID(Addon, Group, StaticID)
90 | return Groups[ID] or NewGroup(ID, Addon, Group, StaticID)
91 | end
92 |
93 | ----------------------------------------
94 | -- Core
95 | ---
96 |
97 | Core.GetID = GetID
98 | Core.Groups = Groups
99 | Core.GetGroup = GetGroup
100 |
101 | -- Cleans the database.
102 | function Core.CleanDB()
103 | local db = Core.db.profile.Groups
104 |
105 | for ID in pairs(db) do
106 | if not Groups[ID] then
107 | db[ID] = nil
108 | end
109 | end
110 | end
111 |
112 | ----------------------------------------
113 | -- API
114 | ---
115 |
116 | -- Wrapper for the GetGroup function.
117 | function Core.API:Group(Addon, Group, StaticID, Deprecated)
118 | if type(Addon) ~= "string" or Addon == MASQUE then
119 | if Core.Debug then
120 | error("Bad argument to API method 'Group'. 'Addon' must be a string.", 2)
121 | end
122 | return
123 | elseif Group and type(Group) ~= "string" then
124 | if Core.Debug then
125 | error("Bad argument to API method 'Group'. 'Group' must be a string.", 2)
126 | end
127 | return
128 | elseif type(StaticID) ~= "string" then
129 | if type(Deprecated) == "string" then
130 | StaticID = Deprecated
131 | else
132 | StaticID = nil
133 | end
134 | end
135 |
136 | return GetGroup(Addon, Group, StaticID)
137 | end
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/widgets/AceGUIWidget-InteractiveLabel.lua:
--------------------------------------------------------------------------------
1 | --[[-----------------------------------------------------------------------------
2 | InteractiveLabel Widget
3 | -------------------------------------------------------------------------------]]
4 | local Type, Version = "InteractiveLabel", 20
5 | local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
6 | if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
7 |
8 | -- Lua APIs
9 | local select, pairs = select, pairs
10 |
11 | -- WoW APIs
12 | local CreateFrame, UIParent = CreateFrame, UIParent
13 |
14 | -- Global vars/functions that we don't upvalue since they might get hooked, or upgraded
15 | -- List them here for Mikk's FindGlobals script
16 | -- GLOBALS: GameFontHighlightSmall
17 |
18 | --[[-----------------------------------------------------------------------------
19 | Scripts
20 | -------------------------------------------------------------------------------]]
21 | local function Control_OnEnter(frame)
22 | frame.obj:Fire("OnEnter")
23 | end
24 |
25 | local function Control_OnLeave(frame)
26 | frame.obj:Fire("OnLeave")
27 | end
28 |
29 | local function Label_OnClick(frame, button)
30 | frame.obj:Fire("OnClick", button)
31 | AceGUI:ClearFocus()
32 | end
33 |
34 | --[[-----------------------------------------------------------------------------
35 | Methods
36 | -------------------------------------------------------------------------------]]
37 | local methods = {
38 | ["OnAcquire"] = function(self)
39 | self:LabelOnAcquire()
40 | self:SetHighlight()
41 | self:SetHighlightTexCoord()
42 | self:SetDisabled(false)
43 | end,
44 |
45 | -- ["OnRelease"] = nil,
46 |
47 | ["SetHighlight"] = function(self, ...)
48 | self.highlight:SetTexture(...)
49 | end,
50 |
51 | ["SetHighlightTexCoord"] = function(self, ...)
52 | local c = select("#", ...)
53 | if c == 4 or c == 8 then
54 | self.highlight:SetTexCoord(...)
55 | else
56 | self.highlight:SetTexCoord(0, 1, 0, 1)
57 | end
58 | end,
59 |
60 | ["SetDisabled"] = function(self,disabled)
61 | self.disabled = disabled
62 | if disabled then
63 | self.frame:EnableMouse(false)
64 | self.label:SetTextColor(0.5, 0.5, 0.5)
65 | else
66 | self.frame:EnableMouse(true)
67 | self.label:SetTextColor(1, 1, 1)
68 | end
69 | end
70 | }
71 |
72 | --[[-----------------------------------------------------------------------------
73 | Constructor
74 | -------------------------------------------------------------------------------]]
75 | local function Constructor()
76 | -- create a Label type that we will hijack
77 | local label = AceGUI:Create("Label")
78 |
79 | local frame = label.frame
80 | frame:EnableMouse(true)
81 | frame:SetScript("OnEnter", Control_OnEnter)
82 | frame:SetScript("OnLeave", Control_OnLeave)
83 | frame:SetScript("OnMouseDown", Label_OnClick)
84 |
85 | local highlight = frame:CreateTexture(nil, "HIGHLIGHT")
86 | highlight:SetTexture(nil)
87 | highlight:SetAllPoints()
88 | highlight:SetBlendMode("ADD")
89 |
90 | label.highlight = highlight
91 | label.type = Type
92 | label.LabelOnAcquire = label.OnAcquire
93 | for method, func in pairs(methods) do
94 | label[method] = func
95 | end
96 |
97 | return label
98 | end
99 |
100 | AceGUI:RegisterWidgetType(Type, Constructor, Version)
101 |
102 |
--------------------------------------------------------------------------------
/Masque/Core/Regions/Gloss.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\Gloss.lua
7 | * Author.: StormFX, Kader
8 |
9 | 'Gloss' Region
10 |
11 | ]]
12 | local _, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local error, type = error, type
19 |
20 | ----------------------------------------
21 | -- Internal
22 | ---
23 |
24 | -- @ Core\Utility
25 | local GetColor, GetSize = Core.GetColor, Core.GetSize
26 | local GetTexCoords, SetPoints = Core.GetTexCoords, Core.SetPoints
27 |
28 | ----------------------------------------
29 | -- Locals
30 | ---
31 |
32 | local Cache = {}
33 |
34 | ----------------------------------------
35 | -- Functions
36 | ---
37 |
38 | -- Removes the 'Gloss' region from a button.
39 | local function RemoveGloss(Button)
40 | local Region = Button.__MSQ_Gloss
41 |
42 | if Region then
43 | Region:SetTexture()
44 | Region:Hide()
45 |
46 | Cache[#Cache + 1] = Region
47 | Button.__MSQ_Gloss = nil
48 | end
49 | end
50 |
51 | -- Skins or creates the 'Gloss' region of a button.
52 | local function AddGloss(Button, Skin, Color, xScale, yScale)
53 | local Region = Button.__MSQ_Gloss
54 |
55 | if not Region then
56 | local i = #Cache
57 |
58 | if i > 0 then
59 | Region = Cache[i]
60 | Cache[i] = nil
61 | else
62 | Region = Button:CreateTexture()
63 | end
64 |
65 | Button.__MSQ_Gloss = Region
66 | end
67 |
68 | Region:SetParent(Button)
69 | Region:SetTexture(Skin.Texture)
70 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
71 | Region:SetBlendMode(Skin.BlendMode or "BLEND")
72 | Region:SetVertexColor(GetColor(Color or Skin.Color))
73 | Region:SetDrawLayer(Skin.DrawLayer or "OVERLAY", Skin.DrawLevel or 0)
74 | Region:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
75 | SetPoints(Region, Button, Skin, nil, Skin.SetAllPoints)
76 |
77 | if Button.__MSQ_Empty then
78 | Region:Hide()
79 | else
80 | Region:Show()
81 | end
82 | end
83 |
84 | ----------------------------------------
85 | -- Core
86 | ---
87 |
88 | -- Skins or removes a 'Gloss' region.
89 | function Core.SkinGloss(Enabled, Button, Skin, Color, xScale, yScale)
90 | local bType = Button.__MSQ_bType
91 | Skin = Skin[bType] or Skin
92 |
93 | if Enabled and not Skin.Hide and Skin.Texture then
94 | AddGloss(Button, Skin, Color, xScale, yScale)
95 | else
96 | RemoveGloss(Button)
97 | end
98 | end
99 |
100 | -- Sets the color of the 'Gloss' region.
101 | function Core.SetGlossColor(Region, Button, Skin, Color)
102 | Region = Region or Button.__MSQ_Gloss
103 |
104 | if Region then
105 | local bType = Button.__MSQ_bType
106 | Skin = Skin[bType] or Skin
107 |
108 | Region:SetVertexColor(GetColor(Color or Skin.Color))
109 | end
110 | end
111 |
112 | ----------------------------------------
113 | -- API
114 | ---
115 |
116 | -- Retrieves the 'Gloss' region of a button.
117 | function Core.API:GetGloss(Button)
118 | if type(Button) ~= "table" then
119 | if Core.Debug then
120 | error("Bad argument to API method 'GetGloss'. 'Button' must be a button object.", 2)
121 | end
122 | return
123 | end
124 |
125 | return Button.__MSQ_Gloss
126 | end
--------------------------------------------------------------------------------
/Masque/Core/Core.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Core.lua
7 | * Author.: StormFX, Kader
8 |
9 | Core Functions
10 |
11 | ]]
12 | local _, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local _G, type = _G, type
19 |
20 | ----------------------------------------
21 | -- Region Finder
22 | ---
23 |
24 | -- Gets a button region.
25 | function Core.GetRegion(Button, Info)
26 | local Key, Region = Info.Key, nil
27 |
28 | if Key then
29 | local Value = Key and Button[Key]
30 |
31 | if Value and type(Value) == "table" then
32 | local Type = Value.GetObjectType and Value:GetObjectType()
33 |
34 | if Type == Info.Type then
35 | Region = Value
36 | end
37 | end
38 | end
39 |
40 | if not Region then
41 | local Func, Name = Info.Func, Info.Name
42 |
43 | if Func then
44 | local f = Func and Button[Func]
45 | Region = f and f(Button)
46 | elseif Name then
47 | local n = Button.GetName and Button:GetName()
48 | Region = n and _G[n .. Name]
49 | end
50 | end
51 |
52 | return Region
53 | end
54 |
55 | ----------------------------------------
56 | -- Type Validator
57 | ---
58 |
59 | do
60 | -- Valid Types
61 | local oTypes = {
62 | Button = true,
63 | CheckButton = true,
64 | Frame = true
65 | }
66 |
67 | -- Returns a button's object or internal type.
68 | function Core.GetType(Button, oType)
69 | local Type
70 |
71 | if not oType then
72 | if type(Button) == "table" then
73 | Type = Button.GetObjectType and Button:GetObjectType()
74 |
75 | if not Type or not oTypes[Type] then
76 | Type = nil
77 | end
78 |
79 | Button.__MSQ_oType = Type
80 | end
81 | else
82 | Type = "Legacy"
83 |
84 | if oType == "CheckButton" then
85 | if Button.HotKey then
86 | Type = "Action"
87 |
88 | local bName = Button.GetName and Button:GetName()
89 |
90 | if bName and bName:find("Pet") then
91 | Type = "Pet"
92 | end
93 | end
94 | elseif oType == "Button" then
95 | if Button.IconBorder then
96 | Type = "Item"
97 | elseif Button.duration then
98 | Type = "Aura"
99 |
100 | local bName = Button.GetName and Button:GetName()
101 | local Border = bName and _G[bName .. "Border"]
102 |
103 | if Border then
104 | Type = (Button.symbol and "Debuff") or "Enchant"
105 | end
106 | end
107 | end
108 | end
109 |
110 | return Type
111 | end
112 | end
113 |
114 | ----------------------------------------
115 | -- Group Queue
116 | ---
117 |
118 | -- Self-destructing table to skin groups created prior to PLAYER_LOGIN.
119 | Core.Queue = {
120 | Cache = {},
121 | -- Adds a group to the queue.
122 | Add = function(self, obj)
123 | self.Cache[#self.Cache + 1] = obj
124 | obj.Queued = true
125 | end,
126 | -- Re-Skins all queued groups.
127 | ReSkin = function(self)
128 | for i = 1, #self.Cache do
129 | local obj = self.Cache[i]
130 |
131 | obj:ReSkin(true)
132 | obj.Queued = nil
133 | end
134 |
135 | -- GC
136 | self.Cache = nil
137 | Core.Queue = nil
138 | end
139 | }
140 |
141 | setmetatable(Core.Queue, {__call = Core.Queue.Add})
--------------------------------------------------------------------------------
/Masque/Core/Regions/Shadow.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\Shadow.lua
7 | * Author.: StormFX, Kader
8 |
9 | 'Shadow' Region
10 |
11 | ]]
12 | local _, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local error, type = error, type
19 |
20 | ----------------------------------------
21 | -- Internal
22 | ---
23 |
24 | -- @ Core\Utility
25 | local GetColor, GetSize = Core.GetColor, Core.GetSize
26 | local GetTexCoords, SetPoints = Core.GetTexCoords, Core.SetPoints
27 |
28 | ----------------------------------------
29 | -- Locals
30 | ---
31 |
32 | local Cache = {}
33 |
34 | ----------------------------------------
35 | -- Functions
36 | ---
37 |
38 | -- Removes the 'Shadow' region from a button.
39 | local function RemoveShadow(Button)
40 | local Region = Button.__MSQ_Shadow
41 |
42 | if Region then
43 | Region:SetTexture()
44 | Region:Hide()
45 |
46 | Cache[#Cache + 1] = Region
47 | Button.__MSQ_Shadow = nil
48 | end
49 | end
50 |
51 | -- Skins or creates the 'Shadow' region of a button.
52 | local function AddShadow(Button, Skin, Color, xScale, yScale)
53 | local Region = Button.__MSQ_Shadow
54 |
55 | if not Region then
56 | local i = #Cache
57 |
58 | if i > 0 then
59 | Region = Cache[i]
60 | Cache[i] = nil
61 | else
62 | Region = Button:CreateTexture()
63 | end
64 |
65 | Button.__MSQ_Shadow = Region
66 | end
67 |
68 | Region:SetParent(Button)
69 | Region:SetTexture(Skin.Texture)
70 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
71 | Region:SetVertexColor(GetColor(Color or Skin.Color))
72 | Region:SetBlendMode(Skin.BlendMode or "BLEND")
73 | Region:SetDrawLayer(Skin.DrawLayer or "ARTWORK", Skin.DrawLevel or -1)
74 | Region:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
75 | SetPoints(Region, Button, Skin, nil, Skin.SetAllPoints)
76 |
77 | if Button.__MSQ_Empty then
78 | Region:Hide()
79 | else
80 | Region:Show()
81 | end
82 | end
83 |
84 | ----------------------------------------
85 | -- Core
86 | ---
87 |
88 | -- Sets the color of the 'Shadow' region.
89 | function Core.SetShadowColor(Region, Button, Skin, Color)
90 | Region = Region or Button.__MSQ_Shadow
91 |
92 | if Region then
93 | local bType = Button.__MSQ_bType
94 | Skin = Skin[bType] or Skin
95 |
96 | Region:SetVertexColor(GetColor(Color or Skin.Color))
97 | end
98 | end
99 |
100 | -- Add or removes a 'Shadow' region.
101 | function Core.SkinShadow(Enabled, Button, Skin, Color, xScale, yScale)
102 | local bType = Button.__MSQ_bType
103 | Skin = Skin[bType] or Skin
104 |
105 | if Enabled and not Skin.Hide and Skin.Texture then
106 | AddShadow(Button, Skin, Color, xScale, yScale)
107 | else
108 | RemoveShadow(Button)
109 | end
110 | end
111 |
112 | ----------------------------------------
113 | -- API
114 | ---
115 |
116 | -- Retrieves the 'Shadow' region of a button.
117 | function Core.API:GetShadow(Button)
118 | if type(Button) ~= "table" then
119 | if Core.Debug then
120 | error("Bad argument to API method 'GetShadow'. 'Button' must be a button object.", 2)
121 | end
122 | return
123 | end
124 |
125 | return Button.__MSQ_Shadow
126 | end
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/widgets/AceGUIContainer-InlineGroup.lua:
--------------------------------------------------------------------------------
1 | --[[-----------------------------------------------------------------------------
2 | InlineGroup Container
3 | Simple container widget that creates a visible "box" with an optional title.
4 | -------------------------------------------------------------------------------]]
5 | local Type, Version = "InlineGroup", 20
6 | local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
7 | if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
8 |
9 | -- Lua APIs
10 | local pairs = pairs
11 |
12 | -- WoW APIs
13 | local CreateFrame, UIParent = CreateFrame, UIParent
14 |
15 | --[[-----------------------------------------------------------------------------
16 | Methods
17 | -------------------------------------------------------------------------------]]
18 | local methods = {
19 | ["OnAcquire"] = function(self)
20 | self:SetWidth(300)
21 | self:SetHeight(100)
22 | end,
23 |
24 | -- ["OnRelease"] = nil,
25 |
26 | ["SetTitle"] = function(self,title)
27 | self.titletext:SetText(title)
28 | end,
29 |
30 |
31 | ["LayoutFinished"] = function(self, width, height)
32 | if self.noAutoHeight then return end
33 | self:SetHeight((height or 0) + 40)
34 | end,
35 |
36 | ["OnWidthSet"] = function(self, width)
37 | local content = self.content
38 | local contentwidth = width - 20
39 | if contentwidth < 0 then
40 | contentwidth = 0
41 | end
42 | content:SetWidth(contentwidth)
43 | content.width = contentwidth
44 | end,
45 |
46 | ["OnHeightSet"] = function(self, height)
47 | local content = self.content
48 | local contentheight = height - 20
49 | if contentheight < 0 then
50 | contentheight = 0
51 | end
52 | content:SetHeight(contentheight)
53 | content.height = contentheight
54 | end
55 | }
56 |
57 | --[[-----------------------------------------------------------------------------
58 | Constructor
59 | -------------------------------------------------------------------------------]]
60 | local PaneBackdrop = {
61 | bgFile = "Interface\\ChatFrame\\ChatFrameBackground",
62 | edgeFile = "Interface\\Tooltips\\UI-Tooltip-Border",
63 | tile = true, tileSize = 16, edgeSize = 16,
64 | insets = { left = 3, right = 3, top = 5, bottom = 3 }
65 | }
66 |
67 | local function Constructor()
68 | local frame = CreateFrame("Frame", nil, UIParent)
69 | frame:SetFrameStrata("FULLSCREEN_DIALOG")
70 |
71 | local titletext = frame:CreateFontString(nil, "OVERLAY", "GameFontNormal")
72 | titletext:SetPoint("TOPLEFT", 14, 0)
73 | titletext:SetPoint("TOPRIGHT", -14, 0)
74 | titletext:SetJustifyH("LEFT")
75 | titletext:SetHeight(18)
76 |
77 | local border = CreateFrame("Frame", nil, frame)
78 | border:SetPoint("TOPLEFT", 0, -17)
79 | border:SetPoint("BOTTOMRIGHT", -1, 3)
80 | border:SetBackdrop(PaneBackdrop)
81 | border:SetBackdropColor(0.1, 0.1, 0.1, 0.5)
82 | border:SetBackdropBorderColor(0.4, 0.4, 0.4)
83 |
84 | --Container Support
85 | local content = CreateFrame("Frame", nil, border)
86 | content:SetPoint("TOPLEFT", 10, -10)
87 | content:SetPoint("BOTTOMRIGHT", -10, 10)
88 |
89 | local widget = {
90 | frame = frame,
91 | content = content,
92 | titletext = titletext,
93 | type = Type
94 | }
95 | for method, func in pairs(methods) do
96 | widget[method] = func
97 | end
98 |
99 | return AceGUI:RegisterAsContainer(widget)
100 | end
101 |
102 | AceGUI:RegisterWidgetType(Type, Constructor, Version)
103 |
--------------------------------------------------------------------------------
/Masque/Libs/LibDataBroker-1.1/LibDataBroker-1.1.lua:
--------------------------------------------------------------------------------
1 |
2 | assert(LibStub, "LibDataBroker-1.1 requires LibStub")
3 | assert(LibStub:GetLibrary("CallbackHandler-1.0", true), "LibDataBroker-1.1 requires CallbackHandler-1.0")
4 |
5 | local lib, oldminor = LibStub:NewLibrary("LibDataBroker-1.1", 4)
6 | if not lib then return end
7 | oldminor = oldminor or 0
8 |
9 |
10 | lib.callbacks = lib.callbacks or LibStub:GetLibrary("CallbackHandler-1.0"):New(lib)
11 | lib.attributestorage, lib.namestorage, lib.proxystorage = lib.attributestorage or {}, lib.namestorage or {}, lib.proxystorage or {}
12 | local attributestorage, namestorage, callbacks = lib.attributestorage, lib.namestorage, lib.callbacks
13 |
14 | if oldminor < 2 then
15 | lib.domt = {
16 | __metatable = "access denied",
17 | __index = function(self, key) return attributestorage[self] and attributestorage[self][key] end,
18 | }
19 | end
20 |
21 | if oldminor < 3 then
22 | lib.domt.__newindex = function(self, key, value)
23 | if not attributestorage[self] then attributestorage[self] = {} end
24 | if attributestorage[self][key] == value then return end
25 | attributestorage[self][key] = value
26 | local name = namestorage[self]
27 | if not name then return end
28 | callbacks:Fire("LibDataBroker_AttributeChanged", name, key, value, self)
29 | callbacks:Fire("LibDataBroker_AttributeChanged_"..name, name, key, value, self)
30 | callbacks:Fire("LibDataBroker_AttributeChanged_"..name.."_"..key, name, key, value, self)
31 | callbacks:Fire("LibDataBroker_AttributeChanged__"..key, name, key, value, self)
32 | end
33 | end
34 |
35 | if oldminor < 2 then
36 | function lib:NewDataObject(name, dataobj)
37 | if self.proxystorage[name] then return end
38 |
39 | if dataobj then
40 | assert(type(dataobj) == "table", "Invalid dataobj, must be nil or a table")
41 | self.attributestorage[dataobj] = {}
42 | for i,v in pairs(dataobj) do
43 | self.attributestorage[dataobj][i] = v
44 | dataobj[i] = nil
45 | end
46 | end
47 | dataobj = setmetatable(dataobj or {}, self.domt)
48 | self.proxystorage[name], self.namestorage[dataobj] = dataobj, name
49 | self.callbacks:Fire("LibDataBroker_DataObjectCreated", name, dataobj)
50 | return dataobj
51 | end
52 | end
53 |
54 | if oldminor < 1 then
55 | function lib:DataObjectIterator()
56 | return pairs(self.proxystorage)
57 | end
58 |
59 | function lib:GetDataObjectByName(dataobjectname)
60 | return self.proxystorage[dataobjectname]
61 | end
62 |
63 | function lib:GetNameByDataObject(dataobject)
64 | return self.namestorage[dataobject]
65 | end
66 | end
67 |
68 | if oldminor < 4 then
69 | local next = pairs(attributestorage)
70 | function lib:pairs(dataobject_or_name)
71 | local t = type(dataobject_or_name)
72 | assert(t == "string" or t == "table", "Usage: ldb:pairs('dataobjectname') or ldb:pairs(dataobject)")
73 |
74 | local dataobj = self.proxystorage[dataobject_or_name] or dataobject_or_name
75 | assert(attributestorage[dataobj], "Data object not found")
76 |
77 | return next, attributestorage[dataobj], nil
78 | end
79 |
80 | local ipairs_iter = ipairs(attributestorage)
81 | function lib:ipairs(dataobject_or_name)
82 | local t = type(dataobject_or_name)
83 | assert(t == "string" or t == "table", "Usage: ldb:ipairs('dataobjectname') or ldb:ipairs(dataobject)")
84 |
85 | local dataobj = self.proxystorage[dataobject_or_name] or dataobject_or_name
86 | assert(attributestorage[dataobj], "Data object not found")
87 |
88 | return ipairs_iter, attributestorage[dataobj], 0
89 | end
90 | end
--------------------------------------------------------------------------------
/Masque/Core/Regions/SpellAlert.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\SpellAlert.lua
7 | * Author.: StormFX, Kader
8 |
9 | 'SpellAlert' Region
10 |
11 | * TODO: Improve the textures.
12 |
13 | ]]
14 | local _, Core = ...
15 |
16 | ----------------------------------------
17 | -- Lua
18 | ---
19 |
20 | local error, type = error, type
21 |
22 | ----------------------------------------
23 | -- Locals
24 | ---
25 |
26 | local Alerts = {
27 | Square = {
28 | Glow = [[Interface\AddOns\Masque\Textures\SpellAlert\IconAlert]],
29 | Ants = [[Interface\AddOns\Masque\Textures\SpellAlert\IconAlertAnts]]
30 | },
31 | Circle = {
32 | Glow = [[Interface\AddOns\Masque\Textures\SpellAlert\IconAlert-Circle]],
33 | Ants = [[Interface\AddOns\Masque\Textures\SpellAlert\IconAlertAnts-Circle]]
34 | }
35 | }
36 |
37 | ----------------------------------------
38 | -- Update
39 | ---
40 |
41 | -- Hook to update the 'SpellAlert' animation.
42 | local function UpdateSpellAlert(Button)
43 | local Overlay = Button.overlay
44 |
45 | if not Overlay or not Overlay.spark then
46 | return
47 | end
48 |
49 | local Shape = Button.__MSQ_Shape
50 |
51 | if Overlay.__MSQ_Shape ~= Shape then
52 | local Glow, Ants
53 |
54 | if Shape and Alerts[Shape] then
55 | Glow = Alerts[Shape].Glow or Alerts.Square.Glow
56 | Ants = Alerts[Shape].Ants or Alerts.Square.Ants
57 | else
58 | Glow = Alerts.Square.Glow
59 | Ants = Alerts.Square.Ants
60 | end
61 |
62 | Overlay.innerGlow:SetTexture(Glow)
63 | Overlay.innerGlowOver:SetTexture(Glow)
64 | Overlay.outerGlow:SetTexture(Glow)
65 | Overlay.outerGlowOver:SetTexture(Glow)
66 | Overlay.spark:SetTexture(Glow)
67 | Overlay.ants:SetTexture(Ants)
68 |
69 | Overlay.__MSQ_Shape = Shape
70 | end
71 | end
72 |
73 | -- @ FrameXML\ActionButton.lua
74 | -- hooksecurefunc("ActionButton_ShowOverlayGlow", UpdateSpellAlert)
75 |
76 | ----------------------------------------
77 | -- Core
78 | ---
79 |
80 | Core.UpdateSpellAlert = UpdateSpellAlert
81 |
82 | ----------------------------------------
83 | -- API
84 | ---
85 |
86 | local API = Core.API
87 |
88 | -- Wrapper for the Update function.
89 | -- * Allows add-ons to call the function when not using the native API.
90 | function API:UpdateSpellAlert(Button)
91 | if type(Button) ~= "table" then
92 | return
93 | end
94 |
95 | UpdateSpellAlert(Button)
96 | end
97 |
98 | -- Adds or overwrites a 'SpellAlert' texture set.
99 | function API:AddSpellAlert(Shape, Glow, Ants)
100 | if type(Shape) ~= "string" then
101 | if Core.Debug then
102 | error("Bad argument to API method 'AddSpellAlert'. 'Shape' must be a string.", 2)
103 | end
104 | return
105 | end
106 |
107 | local Overlay = Alerts[Shape] or {}
108 |
109 | if type(Glow) == "string" then
110 | Overlay.Glow = Glow
111 | end
112 |
113 | if type(Ants) == "string" then
114 | Overlay.Ants = Ants
115 | end
116 |
117 | Alerts[Shape] = Overlay
118 | end
119 |
120 | -- Retrieves a 'SpellAlert' texture set.
121 | function API:GetSpellAlert(Shape)
122 | if type(Shape) ~= "string" then
123 | if Core.Debug then
124 | error("Bad argument to API method 'GetSpellAlert'. 'Shape' must be a string.", 2)
125 | end
126 | return
127 | end
128 |
129 | local Overlay = Alerts[Shape]
130 |
131 | if Overlay then
132 | return Overlay.Glow, Overlay.Ants
133 | end
134 | end
--------------------------------------------------------------------------------
/Masque/Core/Regions/Texture.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\Texture.lua
7 | * Author.: StormFX, Kader
8 |
9 | Texture Regions
10 |
11 | * See Skins\Default.lua for region defaults.
12 |
13 | ]]
14 | local _, Core = ...
15 |
16 | ----------------------------------------
17 | -- Internal
18 | ---
19 |
20 | -- @ Skins\Regions
21 | local Settings = Core.RegTypes.Legacy
22 |
23 | -- @ Skins\Default
24 | local Defaults = Core.Skins.Default
25 |
26 | -- @ Core\Utility
27 | local GetColor, GetSize = Core.GetColor, Core.GetSize
28 | local GetTexCoords, SetPoints = Core.GetTexCoords, Core.SetPoints
29 |
30 | -- @ Core\Regions\Mask
31 | local SkinMask = Core.SkinMask
32 |
33 | ----------------------------------------
34 | -- Core
35 | ---
36 |
37 | -- Skins a texture region of a button.
38 | function Core.SkinTexture(Layer, Region, Button, Skin, Color, xScale, yScale)
39 | local bType = Button.__MSQ_bType
40 | local Config = Settings[Layer]
41 |
42 | Skin = Skin[bType] or Skin
43 | Config = Config[bType] or Config
44 |
45 | if Config.CanHide and Skin.Hide then
46 | Region:SetTexture()
47 | Region:Hide()
48 | return
49 | end
50 |
51 | local Default = Defaults[Layer]
52 | Default = Default[bType] or Default
53 |
54 | if not Config.NoTexture then
55 | local Texture = Skin.Texture
56 | Color = Color or Skin.Color
57 |
58 | local SetColor = not Config.NoColor
59 | local UseColor = Config.UseColor
60 |
61 | if Skin.UseColor and UseColor then
62 | Region:SetTexture()
63 | Region:SetVertexColor(1, 1, 1, 1)
64 | Region:SetVertexColor(GetColor(Color))
65 | elseif Texture then
66 | Region:SetTexture(Texture)
67 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
68 |
69 | if SetColor then
70 | Region:SetVertexColor(GetColor(Color))
71 | end
72 | else
73 | local Atlas = Default.Atlas
74 | Texture = Default.Texture
75 |
76 | if Atlas then
77 | if Region.SetAtlas then
78 | Region:SetAtlas(Atlas)
79 | end
80 |
81 | if SetColor then
82 | Region:SetVertexColor(GetColor(Default.Color))
83 | end
84 | elseif Texture then
85 | Region:SetTexture(Default.Texture)
86 | Region:SetTexCoord(GetTexCoords(Default.TexCoords))
87 |
88 | if SetColor then
89 | Region:SetVertexColor(GetColor(Default.Color))
90 | end
91 | elseif UseColor then
92 | Region:SetTexture()
93 | Region:SetVertexColor(GetColor(Default.Color))
94 | end
95 | end
96 | end
97 |
98 | Region:SetBlendMode(Skin.BlendMode or Default.BlendMode or "BLEND")
99 | Region:SetDrawLayer(Skin.DrawLayer or Default.DrawLayer, Skin.DrawLevel or Default.DrawLevel or 0)
100 | Region:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
101 |
102 | local SetAllPoints = Skin.SetAllPoints or (not Skin.Point and Default.SetAllPoints)
103 | SetPoints(Region, Button, Skin, Default, SetAllPoints)
104 |
105 | -- Mask
106 | if Config.CanMask then
107 | SkinMask(Region, Button, Skin, xScale, yScale)
108 | end
109 | end
110 |
111 | -- Sets the color of a texture region.
112 | function Core.SetTextureColor(Layer, Region, Button, Skin, Color)
113 | if Region then
114 | local bType = Button.__MSQ_bType
115 | local Config = Settings[Layer]
116 |
117 | Skin = Skin[bType] or Skin
118 | Config = Config[bType] or Config
119 | Color = Color or Skin.Color
120 | Region:SetVertexColor(GetColor(Color))
121 | end
122 | end
--------------------------------------------------------------------------------
/Masque/Core/Utility.lua:
--------------------------------------------------------------------------------
1 | local _, Core = ...
2 |
3 | ----------------------------------------
4 | -- Lua
5 | ---
6 |
7 | local type = type
8 |
9 | ----------------------------------------
10 | -- Color
11 | ---
12 |
13 | -- Returns a set of color values.
14 | function Core.GetColor(Color, Alpha)
15 | if type(Color) == "table" then
16 | return Color[1] or 1, Color[2] or 1, Color[3] or 1, Alpha or Color[4] or 1
17 | else
18 | return 1, 1, 1, Alpha or 1
19 | end
20 | end
21 |
22 | ----------------------------------------
23 | -- NoOp
24 | ---
25 |
26 | -- An empty function.
27 | function Core.NoOp()
28 | end
29 |
30 | ----------------------------------------
31 | -- Points
32 | ---
33 |
34 | -- Clears and sets the points for a region.
35 | function Core.SetPoints(Region, Button, Skin, Default, SetAllPoints)
36 | Region:ClearAllPoints()
37 |
38 | if SetAllPoints then
39 | Region:SetAllPoints(Button)
40 | else
41 | local Point = Skin.Point
42 | local RelPoint = Skin.RelPoint or Point
43 |
44 | if not Point then
45 | Point = Default and Default.Point
46 |
47 | if Point then
48 | RelPoint = Default.RelPoint or Point
49 | else
50 | Point = "CENTER"
51 | RelPoint = Point
52 | end
53 | end
54 |
55 | local OffsetX = Skin.OffsetX
56 | local OffsetY = Skin.OffsetY
57 |
58 | if Default and not OffsetX and not OffsetY then
59 | OffsetX = Default.OffsetX or 0
60 | OffsetY = Default.OffsetY or 0
61 | end
62 |
63 | Region:SetPoint(Point, Button, RelPoint, OffsetX or 0, OffsetY or 0)
64 | end
65 | end
66 |
67 | ----------------------------------------
68 | -- Scale
69 | ---
70 |
71 | -- Returns the x and y scale of a button.
72 | function Core.GetScale(Button)
73 | local x = (Button:GetWidth() or 36) / 36
74 | local y = (Button:GetHeight() or 36) / 36
75 | return x, y
76 | end
77 |
78 | ----------------------------------------
79 | -- Size
80 | ---
81 |
82 | -- Returns a height and width.
83 | function Core.GetSize(Width, Height, xScale, yScale)
84 | local w = (Width or 36) * xScale
85 | local h = (Height or 36) * yScale
86 | return w, h
87 | end
88 |
89 | ----------------------------------------
90 | -- TexCoords
91 | ---
92 |
93 | -- Returns a set of texture coordinates.
94 | function Core.GetTexCoords(Coords)
95 | if type(Coords) == "table" then
96 | return Coords[1] or 0, Coords[2] or 1, Coords[3] or 0, Coords[4] or 1
97 | else
98 | return 0, 1, 0, 1
99 | end
100 | end
101 |
102 | ----------------------------------------
103 | -- MaskTexture
104 | ---
105 |
106 | -- function Core.CreateMaskTexture(obj, name, layer, inheritsFrom, subLayer)
107 | -- local t = obj:CreateTexture(name, layer, inheritsFrom, subLayer)
108 | -- obj.MaskTextures = obj.MaskTextures or {}
109 | -- obj.MaskTextures[t] = true
110 | -- return t
111 | -- end
112 |
113 | -- -- SetPortraitToTexture
114 | -- function Core.AddMaskTexture(Region, MaskTexture)
115 | -- local Parent = Region.GetParent and Region:GetParent()
116 | -- if Parent and Parent.MaskTextures then
117 | -- if Parent.__MSQ_Icon and Parent.__MSQ_Icon == Region then
118 | -- local Texture = Parent.__MSQ_Icon:GetTexture()
119 | -- -- print("YES!", Texture)
120 | -- end
121 | -- end
122 | -- end
123 |
124 | -- function Core.RemoveMaskTexture(obj, MaskTexture)
125 | -- if obj and obj.MaskTextures and obj.MaskTextures[MaskTexture] then
126 | -- MaskTexture:Hide()
127 | -- MaskTexture = nil
128 | -- end
129 | -- end
130 |
131 | -- function Core.SetMask(obj, texture)
132 | -- -- if obj and obj.MaskTexture and texture then
133 | -- -- obj.MaskTexture:SetTexture(texture)
134 | -- -- obj.MaskTexture:SetBlendMode("BLEND")
135 | -- -- end
136 | -- end
--------------------------------------------------------------------------------
/Masque/Core/Regions/Icon.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\Icon.lua
7 | * Author.: StormFX, Kader
8 |
9 | 'Icon' Region
10 |
11 | * See Skins\Default.lua for region defaults.
12 |
13 | ]]
14 | local _, Core = ...
15 |
16 | ----------------------------------------
17 | -- Lua
18 | ---
19 |
20 | local error, type = error, type
21 |
22 | ----------------------------------------
23 | -- WoW API
24 | ---
25 |
26 | local hooksecurefunc = hooksecurefunc
27 |
28 | ----------------------------------------
29 | -- Internal
30 | ---
31 |
32 | -- @ Core\Utility
33 | local GetSize, GetTexCoords, SetPoints = Core.GetSize, Core.GetTexCoords, Core.SetPoints
34 |
35 | -- @ Core\Regions\Mask
36 | local SkinMask = Core.SkinMask
37 |
38 | -- @ Core\Regions\Normal
39 | local UpdateNormal = Core.UpdateNormal
40 |
41 | ----------------------------------------
42 | -- SetEmpty
43 | ---
44 |
45 | -- Sets a button's empty state and updates its regions.
46 | local function SetEmpty(Button, IsEmpty)
47 | IsEmpty = (IsEmpty and true) or nil
48 | Button.__MSQ_Empty = IsEmpty
49 |
50 | local Shadow = Button.__MSQ_Shadow
51 | local Gloss = Button.__MSQ_Gloss
52 |
53 | if IsEmpty then
54 | if Shadow then
55 | Shadow:Hide()
56 | end
57 | if Gloss then
58 | Gloss:Hide()
59 | end
60 | else
61 | if Shadow then
62 | Shadow:Show()
63 | end
64 | if Gloss then
65 | Gloss:Show()
66 | end
67 | end
68 |
69 | UpdateNormal(Button, IsEmpty)
70 | end
71 |
72 | ----------------------------------------
73 | -- Hooks
74 | ---
75 |
76 | -- Sets a button's empty state to empty.
77 | local function Hook_Hide(Region)
78 | local Button = Region.__MSQ_Button
79 | if not Button then
80 | return
81 | end
82 |
83 | SetEmpty(Button, true)
84 | end
85 |
86 | -- Sets a button's empty state to not empty.
87 | local function Hook_Show(Region)
88 | local Button = Region.__MSQ_Button
89 | if not Button then
90 | return
91 | end
92 |
93 | SetEmpty(Button)
94 | end
95 |
96 | ----------------------------------------
97 | -- Core
98 | ---
99 |
100 | -- Skins the 'Icon' region of a button.
101 | function Core.SkinIcon(Region, Button, Skin, xScale, yScale)
102 | Button.__MSQ_Icon = Region
103 | Region.__MSQ_Button = Button
104 |
105 | -- Skin
106 | local bType = Button.__MSQ_bType
107 | Skin = Skin[bType] or Skin
108 |
109 | Region:SetParent(Button)
110 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
111 | Region:SetDrawLayer(Skin.DrawLayer or "BACKGROUND", Skin.DrawLevel or 0)
112 | Region:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
113 | SetPoints(Region, Button, Skin, nil, Skin.SetAllPoints)
114 |
115 | -- Mask
116 | SkinMask(Region, Button, Skin, xScale, yScale)
117 |
118 | if not Button.__MSQ_Enabled then
119 | Region.__MSQ_Button = nil
120 | end
121 |
122 | if Button.__MSQ_EmptyType then
123 | -- Empty Status
124 | SetEmpty(Button, not Region:IsShown())
125 |
126 | -- Hooks
127 | if not Region.__MSQ_Hooked then
128 | hooksecurefunc(Region, "Hide", Hook_Hide)
129 | hooksecurefunc(Region, "Show", Hook_Show)
130 | Region.__MSQ_Hooked = true
131 | end
132 | end
133 | end
134 |
135 | ----------------------------------------
136 | -- API
137 | ---
138 |
139 | -- Sets the button's empty status.
140 | function Core.API:SetEmpty(Button, IsEmpty)
141 | if type(Button) ~= "table" then
142 | if Core.db.profile.Debug then
143 | error("Bad argument to API method 'SetEmpty'. 'Button' must be a button object.", 2)
144 | end
145 | return
146 | end
147 |
148 | SetEmpty(Button, IsEmpty)
149 | end
--------------------------------------------------------------------------------
/Masque/Options/About.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Options\About.lua
7 | * Author.: StormFX, Kader
8 |
9 | 'About Masque' Group/Panel
10 |
11 | ]]
12 | local _, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local tostring = tostring
19 |
20 | ----------------------------------------
21 | -- Locals
22 | ---
23 |
24 | -- @ Options\Core
25 | local Setup = Core.Setup
26 |
27 | ----------------------------------------
28 | -- Setup
29 | ---
30 |
31 | -- Creates the 'About Masque' options group/panel.
32 | function Setup.About(self)
33 | -- @ Locales\enUS
34 | local L = self.Locale
35 |
36 | -- @ Masque
37 | local CRLF = Core.CRLF
38 |
39 | local Desc =
40 | L["Masque is a skinning engine for button-based add-ons."] .. " " .. L["You must have an add-on that supports Masque installed to use it."] .. " " .. L["For more information, please visit one of the sites listed below."] .. CRLF
41 |
42 | local Options = {
43 | type = "group",
44 | name = L["About Masque"],
45 | desc = "|cffffffff" .. L["Select to view."] .. "|r",
46 | order = 3,
47 | args = {
48 | Head = {
49 | type = "description",
50 | name = "|cffffcc00" .. L["About Masque"] .. "|r" .. CRLF,
51 | fontSize = "medium",
52 | order = 1
53 | },
54 | Desc = {
55 | type = "description",
56 | name = Desc,
57 | fontSize = "medium",
58 | order = 2
59 | },
60 | Info = {
61 | type = "group",
62 | name = "",
63 | order = 3,
64 | inline = true,
65 | get = self.GetArg,
66 | set = self.NoOp,
67 | args = {
68 | Version = {
69 | type = "input",
70 | name = L["Version"],
71 | arg = tostring(self.Version),
72 | order = 1,
73 | disabled = true,
74 | dialogControl = "SFX-Info"
75 | },
76 | API = {
77 | type = "input",
78 | name = L["API"],
79 | arg = tostring(self.API_VERSION),
80 | order = 2,
81 | disabled = true,
82 | dialogControl = "SFX-Info"
83 | },
84 | SPC0 = {
85 | type = "description",
86 | name = " ",
87 | order = 3
88 | }
89 | }
90 | }
91 | }
92 | }
93 |
94 | local args = Options.args.Info.args
95 |
96 | local Authors = self.Authors
97 | local Websites = self.Websites
98 |
99 | local Order = 4
100 | local Count
101 |
102 | -- Populate the Author fields.
103 | Count = #Authors
104 | if Count > 0 then
105 | for i = 1, Count do
106 | local Name = (i == 1 and L["Authors"]) or ""
107 | local Key = "Author" .. i
108 | args[Key] = {
109 | type = "input",
110 | name = Name,
111 | arg = Authors[i],
112 | order = Order,
113 | disabled = true,
114 | dialogControl = "SFX-Info"
115 | }
116 | Order = Order + 1
117 | end
118 | args["SPC" .. Order] = {
119 | type = "description",
120 | name = " ",
121 | order = Order
122 | }
123 | Order = Order + 1
124 | end
125 |
126 | -- Populate the Website fields.
127 | Count = #Websites
128 | if Count > 0 then
129 | for i = 1, Count do
130 | local Name = (i == 1 and L["Websites"]) or ""
131 | local Key = "Website" .. i
132 | args[Key] = {
133 | type = "input",
134 | name = Name,
135 | arg = Websites[i],
136 | order = Order,
137 | dialogControl = "SFX-Info-URL"
138 | }
139 | Order = Order + 1
140 | end
141 | args["SPC" .. Order] = {
142 | type = "description",
143 | name = " ",
144 | order = Order
145 | }
146 | end
147 |
148 | self.Options.args.Core.args.About = Options
149 |
150 | -- GC
151 | Setup.About = nil
152 | end
--------------------------------------------------------------------------------
/Masque/Skins/Skins.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Skins\Skins.lua
7 | * Author.: StormFX, JJSheets, Kader
8 |
9 | Skin API
10 |
11 | ]]
12 | local _, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local error, setmetatable, type = error, setmetatable, type
19 |
20 | ----------------------------------------
21 | -- Internal
22 | ---
23 |
24 | -- @ Skins\Regions
25 | local Layers = Core.RegTypes.Legacy
26 |
27 | ----------------------------------------
28 | -- Locals
29 | ---
30 |
31 | local Skins, SkinList = {}, {}
32 | local Hidden = {Hide = true}
33 |
34 | ----------------------------------------
35 | -- Functions
36 | ---
37 |
38 | -- Returns a valid shape.
39 | local function GetShape(Shape)
40 | if type(Shape) ~= "string" then
41 | Shape = "Square"
42 | end
43 | return Shape
44 | end
45 |
46 | -- Adds data to the skin tables.
47 | local function AddSkin(SkinID, SkinData)
48 | local Template = SkinData.Template
49 | local Default = Skins.Default
50 |
51 | if Template then
52 | setmetatable(SkinData, {__index = Skins[Template]})
53 | end
54 |
55 | for Layer, Info in pairs(Layers) do
56 | local Skin = SkinData[Layer]
57 |
58 | if Layer == "AutoCastShine" then
59 | Skin = Skin or SkinData.Shine or SkinData.AutoCast
60 | elseif Layer == "ChargeCooldown" then
61 | Skin = Skin or SkinData.Cooldown
62 | end
63 |
64 | if (type(Skin) ~= "table") or (Skin.Hide and not Info.CanHide) then
65 | Skin = Default[Layer]
66 | elseif Info.Hide then
67 | Skin = Hidden
68 | end
69 |
70 | SkinData[Layer] = Skin
71 | end
72 |
73 | SkinData.SkinID = SkinID
74 | SkinData.API_VERSION = SkinData.API_VERSION or SkinData.Masque_Version
75 |
76 | local Shape = SkinData.Shape
77 | SkinData.Shape = GetShape(Shape)
78 |
79 | Skins[SkinID] = SkinData
80 |
81 | if not SkinData.Disable then
82 | SkinList[SkinID] = SkinID
83 | end
84 | end
85 |
86 | ----------------------------------------
87 | -- Core
88 | ---
89 |
90 | Core.__Hidden = Hidden
91 | Core.AddSkin = AddSkin
92 |
93 | Core.Skins = setmetatable(Skins, {__index = function(self, id)
94 | if id == "Blizzard" then
95 | return self.Classic
96 | end
97 | end})
98 |
99 | Core.SkinList = SkinList
100 |
101 | ----------------------------------------
102 | -- API
103 | ---
104 |
105 | local API = Core.API
106 |
107 | -- Wrapper for the AddSkin function.
108 | function API:AddSkin(SkinID, SkinData, Replace)
109 | local Debug = Core.Debug
110 |
111 | if type(SkinID) ~= "string" then
112 | if Debug then
113 | error("Bad argument to API method 'AddSkin'. 'SkinID' must be a string.", 2)
114 | end
115 | return
116 | end
117 |
118 | if Skins[SkinID] then
119 | return
120 | end
121 |
122 | if type(SkinData) ~= "table" then
123 | if Debug then
124 | error("Bad argument to API method 'AddSkin'. 'SkinData' must be a table.", 2)
125 | end
126 | return
127 | end
128 |
129 | local Template = SkinData.Template
130 |
131 | if Template then
132 | if type(Template) ~= "string" then
133 | if Debug then
134 | error(("Invalid template reference by skin '%s'. 'Template' must be a string."):format(SkinID), 2)
135 | end
136 | return
137 | end
138 |
139 | local Parent = Skins[Template]
140 |
141 | if type(Parent) ~= "table" then
142 | if Debug then
143 | error(("Invalid template reference by skin '%s'. Template '%s' does not exist or is not a table."):format(SkinID, Template), 2)
144 | end
145 | return
146 | end
147 | end
148 |
149 | AddSkin(SkinID, SkinData)
150 | end
151 |
152 | -- Retrieves the default skin.
153 | function API:GetDefaultSkin()
154 | return "Classic"
155 | end
156 |
157 | -- Retrieves the skin data for the specified skin.
158 | function API:GetSkin(SkinID)
159 | return SkinID and Skins[SkinID]
160 | end
161 |
162 | -- Retrieves the Skins table.
163 | function API:GetSkins()
164 | return Skins
165 | end
--------------------------------------------------------------------------------
/Masque_Blizzard/Masque_Blizzard.lua:
--------------------------------------------------------------------------------
1 | local MSQ = LibStub("Masque", true)
2 | if not MSQ then return end
3 |
4 | MasqueSkin = MasqueSkin or {}
5 |
6 | local Masque_Blizzard = {MasqueSkin = MasqueSkin, Groups = {}}
7 |
8 | local buttons = {
9 | ActionBar = {
10 | ActionButton = NUM_ACTIONBAR_BUTTONS,
11 | BonusActionButton = NUM_BONUS_ACTION_SLOTS
12 | },
13 | MultiBarBottomLeft = {
14 | MultiBarBottomLeftButton = NUM_MULTIBAR_BUTTONS
15 | },
16 | MultiBarBottomRight = {
17 | MultiBarBottomRightButton = NUM_MULTIBAR_BUTTONS
18 | },
19 | MultiBarLeft = {
20 | MultiBarLeftButton = NUM_MULTIBAR_BUTTONS
21 | },
22 | MultiBarRight = {
23 | MultiBarRightButton = NUM_MULTIBAR_BUTTONS
24 | },
25 | PetBar = {
26 | PetActionButton = NUM_PET_ACTION_SLOTS
27 | },
28 | StanceBar = {
29 | ShapeshiftButton = NUM_SHAPESHIFT_SLOTS,
30 | PossessButton = NUM_POSSESS_SLOTS,
31 | StanceButton = NUM_STANCE_SLOTS
32 | },
33 | Bags = {}
34 | }
35 |
36 | function Masque_Blizzard:OnSkinChange(Group, Skin, SkinID, Gloss, Backdrop, Colors)
37 | if (Group == nil) then
38 | for k, v in pairs(Masque_Blizzard.Groups) do
39 | Masque_Blizzard:OnSkinChange(v, Skin, SkinID, Gloss, Backdrop, Colors)
40 | end
41 | return
42 | elseif (not Masque_Blizzard.MasqueSkin[Group]) then
43 | Masque_Blizzard.MasqueSkin[Group] = {}
44 | end
45 | Masque_Blizzard.MasqueSkin[Group].Skin = Skin
46 | Masque_Blizzard.MasqueSkin[Group].SkinID = SkinID
47 | Masque_Blizzard.MasqueSkin[Group].Gloss = Gloss
48 | Masque_Blizzard.MasqueSkin[Group].Backdrop = Backdrop
49 | Masque_Blizzard.MasqueSkin[Group].Colors = Colors
50 | end
51 |
52 | function Masque_Blizzard:UIParent_ManageFramePositions()
53 | for k, v in pairs(Masque_Blizzard.Groups) do
54 | v:ReSkin()
55 | end
56 | end
57 |
58 | function Masque_Blizzard:Init()
59 | hooksecurefunc("UIParent_ManageFramePositions", Masque_Blizzard.UIParent_ManageFramePositions)
60 | MSQ:Register("Blizzard Action Bars", Masque_Blizzard.OnSkinChange, Masque_Blizzard)
61 |
62 | Masque_Blizzard.Groups = {
63 | ActionBar = MSQ:Group("Blizzard Action Bars", "Action Bar"),
64 | MultiBarBottomLeft = MSQ:Group("Blizzard Action Bars", "MultiBar BottomLeft"),
65 | MultiBarBottomRight = MSQ:Group("Blizzard Action Bars", "MultiBar BottomRight"),
66 | MultiBarLeft = MSQ:Group("Blizzard Action Bars", "MultiBar Left"),
67 | MultiBarRight = MSQ:Group("Blizzard Action Bars", "MultiBar Right"),
68 | PetBar = MSQ:Group("Blizzard Action Bars", "PetBar"),
69 | StanceBar = MSQ:Group("Blizzard Action Bars", "StanceBar"),
70 | Bags = MSQ:Group("Blizzard Action Bars", "Bags")
71 | }
72 |
73 | if Masque_Blizzard.MasqueSkin then
74 | for k, v in pairs(Masque_Blizzard.Groups) do
75 | if (Masque_Blizzard.MasqueSkin[v.Group]) then
76 | v:SetOption("Group", Masque_Blizzard.MasqueSkin[v.Group].Group)
77 | v:SetOption("SkinID", Masque_Blizzard.MasqueSkin[v.Group].SkinID)
78 | v:SetOption("Gloss", Masque_Blizzard.MasqueSkin[v.Group].Gloss)
79 | v:SetOption("Backdrop", Masque_Blizzard.MasqueSkin[v.Group].Backdrop)
80 | v:SetOption("Colors", Masque_Blizzard.MasqueSkin[v.Group].Colors)
81 | end
82 | end
83 | end
84 |
85 | Masque_Blizzard:UpdateActionBars()
86 | end
87 |
88 | function Masque_Blizzard:SkinButton(group, button, strata)
89 | local st = strata or "HIGH"
90 | if button then
91 | group:AddButton(button)
92 | button:SetFrameStrata(st)
93 | end
94 | end
95 |
96 | function Masque_Blizzard:UpdateActionBars()
97 | for k, v in pairs(Masque_Blizzard.Groups) do
98 | if k == "Bags" then
99 | Masque_Blizzard:SkinButton(v, _G["MainMenuBarBackpackButton"])
100 | Masque_Blizzard:SkinButton(v, _G["CharacterBag0Slot"])
101 | Masque_Blizzard:SkinButton(v, _G["CharacterBag1Slot"])
102 | Masque_Blizzard:SkinButton(v, _G["CharacterBag2Slot"])
103 | Masque_Blizzard:SkinButton(v, _G["CharacterBag3Slot"])
104 | else
105 | for _k, _v in pairs(buttons[k]) do
106 | for i = 1, _v do
107 | Masque_Blizzard:SkinButton(v, _G[_k .. i])
108 | end
109 | end
110 | end
111 | end
112 | end
113 |
114 | Masque_Blizzard:Init()
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/widgets/AceGUIContainer-BlizOptionsGroup.lua:
--------------------------------------------------------------------------------
1 | --[[-----------------------------------------------------------------------------
2 | BlizOptionsGroup Container
3 | Simple container widget for the integration of AceGUI into the Blizzard Interface Options
4 | -------------------------------------------------------------------------------]]
5 | local Type, Version = "BlizOptionsGroup", 20
6 | local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
7 | if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
8 |
9 | -- Lua APIs
10 | local pairs = pairs
11 |
12 | -- WoW APIs
13 | local CreateFrame = CreateFrame
14 |
15 | --[[-----------------------------------------------------------------------------
16 | Scripts
17 | -------------------------------------------------------------------------------]]
18 |
19 | local function OnShow(frame)
20 | frame.obj:Fire("OnShow")
21 | end
22 |
23 | local function OnHide(frame)
24 | frame.obj:Fire("OnHide")
25 | end
26 |
27 | --[[-----------------------------------------------------------------------------
28 | Support functions
29 | -------------------------------------------------------------------------------]]
30 |
31 | local function okay(frame)
32 | frame.obj:Fire("okay")
33 | end
34 |
35 | local function cancel(frame)
36 | frame.obj:Fire("cancel")
37 | end
38 |
39 | local function defaults(frame)
40 | frame.obj:Fire("defaults")
41 | end
42 |
43 | --[[-----------------------------------------------------------------------------
44 | Methods
45 | -------------------------------------------------------------------------------]]
46 |
47 | local methods = {
48 | ["OnAcquire"] = function(self)
49 | self:SetName()
50 | self:SetTitle()
51 | end,
52 |
53 | -- ["OnRelease"] = nil,
54 |
55 | ["OnWidthSet"] = function(self, width)
56 | local content = self.content
57 | local contentwidth = width - 63
58 | if contentwidth < 0 then
59 | contentwidth = 0
60 | end
61 | content:SetWidth(contentwidth)
62 | content.width = contentwidth
63 | end,
64 |
65 | ["OnHeightSet"] = function(self, height)
66 | local content = self.content
67 | local contentheight = height - 26
68 | if contentheight < 0 then
69 | contentheight = 0
70 | end
71 | content:SetHeight(contentheight)
72 | content.height = contentheight
73 | end,
74 |
75 | ["SetName"] = function(self, name, parent)
76 | self.frame.name = name
77 | self.frame.parent = parent
78 | end,
79 |
80 | ["SetTitle"] = function(self, title)
81 | local content = self.content
82 | content:ClearAllPoints()
83 | if not title or title == "" then
84 | content:SetPoint("TOPLEFT", 10, -10)
85 | self.label:SetText("")
86 | else
87 | content:SetPoint("TOPLEFT", 10, -40)
88 | self.label:SetText(title)
89 | end
90 | content:SetPoint("BOTTOMRIGHT", -10, 10)
91 | end
92 | }
93 |
94 | --[[-----------------------------------------------------------------------------
95 | Constructor
96 | -------------------------------------------------------------------------------]]
97 | local function Constructor()
98 | local frame = CreateFrame("Frame")
99 | frame:Hide()
100 |
101 | -- support functions for the Blizzard Interface Options
102 | frame.okay = okay
103 | frame.cancel = cancel
104 | frame.defaults = defaults
105 |
106 | frame:SetScript("OnHide", OnHide)
107 | frame:SetScript("OnShow", OnShow)
108 |
109 | local label = frame:CreateFontString(nil, "OVERLAY", "GameFontNormalLarge")
110 | label:SetPoint("TOPLEFT", 10, -15)
111 | label:SetPoint("BOTTOMRIGHT", frame, "TOPRIGHT", 10, -45)
112 | label:SetJustifyH("LEFT")
113 | label:SetJustifyV("TOP")
114 |
115 | --Container Support
116 | local content = CreateFrame("Frame", nil, frame)
117 | content:SetPoint("TOPLEFT", 10, -10)
118 | content:SetPoint("BOTTOMRIGHT", -10, 10)
119 |
120 | local widget = {
121 | label = label,
122 | frame = frame,
123 | content = content,
124 | type = Type
125 | }
126 | for method, func in pairs(methods) do
127 | widget[method] = func
128 | end
129 |
130 | return AceGUI:RegisterAsContainer(widget)
131 | end
132 |
133 | AceGUI:RegisterWidgetType(Type, Constructor, Version)
134 |
--------------------------------------------------------------------------------
/Masque/Masque.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Masque.lua
7 | * Author.: StormFX
8 |
9 | Add-On Setup
10 |
11 | ]]
12 |
13 | local MASQUE, Core = ...
14 |
15 | assert(LibStub, MASQUE.." requires LibStub.")
16 |
17 | ----------------------------------------
18 | -- Lua
19 | ---
20 |
21 | local print = print
22 |
23 | ----------------------------------------
24 | -- Locals
25 | ---
26 |
27 | local Masque = LibStub("AceAddon-3.0"):NewAddon(MASQUE)
28 |
29 | -- @ Locales\enUS
30 | local L = Core.Locale
31 |
32 | -- Game Version
33 | local WOW_VERSION = select(4, GetBuildInfo()) or 0
34 | Core.WOW_VERSION = WOW_VERSION
35 |
36 | -- Retail
37 | Core.WOW_RETAIL = (WOW_VERSION > 90000 and true) or nil
38 |
39 | ----------------------------------------
40 | -- API
41 | ---
42 |
43 | do
44 | local VERSION = 90002
45 | Core.API = LibStub:NewLibrary(MASQUE, VERSION)
46 |
47 | ----------------------------------------
48 | -- Internal
49 | ---
50 |
51 | Core.API_VERSION = VERSION
52 | Core.OLD_VERSION = 70200
53 |
54 | -- Core Info
55 | Core.Version = GetAddOnMetadata(MASQUE, "Version")
56 | Core.Authors = {
57 | "|cfff58cbaKader|r",
58 | "StormFX",
59 | "|cff999999JJSheets|r"
60 | }
61 | Core.Websites = {
62 | "https://discord.gg/a8z5CyS3eW",
63 | "https://github.com/bkader/Masque-WoTLK"
64 | }
65 | end
66 |
67 | ----------------------------------------
68 | -- Add-On
69 | ---
70 |
71 | -- ADDON_LOADED Event
72 | function Masque:OnInitialize()
73 | local Defaults = {
74 | profile = {
75 | Debug = false,
76 | SkinInfo = true,
77 | StandAlone = false,
78 | Groups = {
79 | ["*"] = {
80 | Backdrop = false,
81 | Colors = {},
82 | Disabled = false,
83 | Gloss = false,
84 | Inherit = true,
85 | Pulse = true,
86 | Shadow = false,
87 | SkinID = "Classic",
88 | },
89 | },
90 | LDB = {
91 | hide = true,
92 | minimapPos = 220,
93 | radius = 80,
94 | },
95 | },
96 | }
97 |
98 | local db = LibStub("AceDB-3.0"):New("MasqueDB", Defaults, true)
99 | db.RegisterCallback(Core, "OnProfileChanged", "UpdateProfile")
100 | db.RegisterCallback(Core, "OnProfileCopied", "UpdateProfile")
101 | db.RegisterCallback(Core, "OnProfileReset", "UpdateProfile")
102 | Core.db = db
103 |
104 | local LDS = (WOW_VERSION > 30000) and LibStub("LibDualSpec-1.0", true)
105 | if LDS then
106 | LDS:EnhanceDatabase(Core.db, MASQUE)
107 | Core.USE_LDS = true
108 | end
109 |
110 | SLASH_MASQUE1 = "/msq"
111 | SLASH_MASQUE2 = "/masque"
112 |
113 | SlashCmdList["MASQUE"] = function(Cmd, ...)
114 | if Cmd == "debug" then
115 | Core.ToggleDebug()
116 | else
117 | Core:ToggleOptions()
118 | end
119 | end
120 | end
121 |
122 | -- PLAYER_LOGIN Event
123 | function Masque:OnEnable()
124 | local Setup = Core.Setup
125 | if Setup then
126 | Setup("Core")
127 | Setup("LDB")
128 | end
129 |
130 | if Core.Queue then
131 | Core.Queue:ReSkin()
132 | end
133 | end
134 |
135 | -- Wrapper for the DB:CopyProfile method.
136 | function Masque:CopyProfile(Name, Silent)
137 | Core.db:CopyProfile(Name, Silent)
138 | end
139 |
140 | -- Wrapper for the DB:SetProfile method.
141 | function Masque:SetProfile(Name)
142 | Core.db:SetProfile(Name)
143 | end
144 |
145 | ----------------------------------------
146 | -- Core
147 | ---
148 |
149 | -- Toggles debug mode.
150 | function Core.ToggleDebug()
151 | local db = Core.db.profile
152 | local Debug = not db.Debug
153 |
154 | db.Debug = Debug
155 | Core.Debug = Debug
156 |
157 | if Debug then
158 | print("|cffffff99"..L["Masque debug mode enabled."].."|r")
159 | else
160 | print("|cffffff99"..L["Masque debug mode disabled."].."|r")
161 | end
162 | end
163 |
164 | -- Updates on profile activity.
165 | function Core:UpdateProfile()
166 | self.Debug = self.db.profile.Debug
167 |
168 | local Global = self.GetGroup()
169 | Global:__Update()
170 |
171 | self.Setup("Info")
172 |
173 | local LDBI = LibStub("LibDBIcon-1.0", true)
174 | if LDBI then
175 | LDBI:Refresh(MASQUE, Core.db.profile.LDB)
176 | end
177 | end
--------------------------------------------------------------------------------
/Masque/Core/Regions/Backdrop.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Regions\Backdrop.lua
7 | * Author.: StormFX, Kader
8 |
9 | 'Backdrop' Region
10 |
11 | * See Skins\Default.lua for region defaults.
12 |
13 | ]]
14 | local _, Core = ...
15 |
16 | ----------------------------------------
17 | -- Lua
18 | ---
19 |
20 | local error, type = error, type
21 |
22 | ----------------------------------------
23 | -- Internal
24 | ---
25 |
26 | -- @ Skins\Default
27 | local Default = Core.Skins.Default.Backdrop
28 |
29 | -- @ Core\Utility
30 | local GetColor, GetSize = Core.GetColor, Core.GetSize
31 | local GetTexCoords, SetPoints = Core.GetTexCoords, Core.SetPoints
32 |
33 | -- @ Core\Regions\Mask
34 | local SkinMask = Core.SkinMask
35 |
36 | ----------------------------------------
37 | -- Locals
38 | ---
39 |
40 | local DEF_COLOR = Default.Color
41 | local DEF_TEXTURE = Default.Texture
42 |
43 | local Cache = {}
44 |
45 | ----------------------------------------
46 | -- Functions
47 | ---
48 |
49 | -- Removes the 'Backdrop' region from a button.
50 | local function RemoveBackdrop(Region, Button)
51 | Region = Region or Button.__MSQ_Backdrop
52 |
53 | if Region then
54 | Region:Hide()
55 |
56 | if Button.__MSQ_Backdrop then
57 | -- Remove the button mask.
58 | local ButtonMask = Button.__MSQ_Mask
59 |
60 | if ButtonMask and Region.__MSQ_ButtonMask then
61 | Region:RemoveMaskTexture(ButtonMask)
62 | Region.__MSQ_ButtonMask = nil
63 | end
64 |
65 | Region:SetTexture()
66 |
67 | Cache[#Cache + 1] = Region
68 | Button.__MSQ_Backdrop = nil
69 | end
70 | end
71 | end
72 |
73 | -- Skins or creates the 'Backdrop' region of a button.
74 | local function AddBackdrop(Region, Button, Skin, Color, xScale, yScale)
75 | Button.FloatingBG = Region
76 | Region = Region or Button.__MSQ_Backdrop
77 |
78 | if not Region then
79 | local i = #Cache
80 |
81 | if i > 0 then
82 | Region = Cache[i]
83 | Cache[i] = nil
84 | else
85 | Region = Button:CreateTexture()
86 | end
87 |
88 | Button.__MSQ_Backdrop = Region
89 | end
90 |
91 | Region:SetParent(Button)
92 | Color = Color or Skin.Color
93 |
94 | if Skin.UseColor then
95 | Region:SetTexture()
96 | Region:SetVertexColor(GetColor(Color or DEF_COLOR))
97 | else
98 | Region:SetTexture(Skin.Texture or DEF_TEXTURE)
99 | Region:SetTexCoord(GetTexCoords(Skin.TexCoords))
100 | Region:SetVertexColor(GetColor(Color or DEF_COLOR))
101 | end
102 |
103 | Region:SetBlendMode(Skin.BlendMode or "BLEND")
104 | Region:SetDrawLayer(Skin.DrawLayer or "BACKGROUND", Skin.DrawLevel or -1)
105 | Region:SetSize(GetSize(Skin.Width, Skin.Height, xScale, yScale))
106 | SetPoints(Region, Button, Skin, nil, Skin.SetAllPoints)
107 | Region:Show()
108 |
109 | -- Mask
110 | SkinMask(Region, Button, Skin, xScale, yScale)
111 | end
112 |
113 | ----------------------------------------
114 | -- Core
115 | ---
116 |
117 | -- Sets the color of the 'Backdrop' region.
118 | function Core.SetBackdropColor(Region, Button, Skin, Color)
119 | Region = Region or Button.__MSQ_Backdrop
120 |
121 | if Region then
122 | local bType = Button.__MSQ_bType
123 | Skin = Skin[bType] or Skin
124 |
125 | Color = Color or Skin.Color
126 | Region:SetVertexColor(GetColor(Color or DEF_COLOR))
127 | end
128 | end
129 |
130 | -- Add or removes a 'Backdrop' region.
131 | function Core.SkinBackdrop(Enabled, Region, Button, Skin, Color, xScale, yScale)
132 | local bType = Button.__MSQ_bType
133 | Skin = Skin[bType] or Skin
134 |
135 | if Enabled and not Skin.Hide then
136 | AddBackdrop(Region, Button, Skin, Color, xScale, yScale)
137 | else
138 | RemoveBackdrop(Region, Button)
139 | end
140 | end
141 |
142 | ----------------------------------------
143 | -- API
144 | ---
145 |
146 | -- Retrieves the 'Backdrop' region of a button.
147 | function Core.API:GetBackdrop(Button)
148 | if type(Button) ~= "table" then
149 | if Core.Debug then
150 | error("Bad argument to API method 'GetBackdrop'. 'Button' must be a button object.", 2)
151 | end
152 | return
153 | end
154 |
155 | return Button.FloatingBG or Button.__MSQ_Backdrop
156 | end
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/widgets/AceGUIWidget-Icon.lua:
--------------------------------------------------------------------------------
1 | --[[-----------------------------------------------------------------------------
2 | Icon Widget
3 | -------------------------------------------------------------------------------]]
4 | local Type, Version = "Icon", 20
5 | local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
6 | if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
7 |
8 | -- Lua APIs
9 | local select, pairs, print = select, pairs, print
10 |
11 | -- WoW APIs
12 | local CreateFrame, UIParent, GetBuildInfo = CreateFrame, UIParent, GetBuildInfo
13 |
14 | --[[-----------------------------------------------------------------------------
15 | Scripts
16 | -------------------------------------------------------------------------------]]
17 | local function Control_OnEnter(frame)
18 | frame.obj:Fire("OnEnter")
19 | end
20 |
21 | local function Control_OnLeave(frame)
22 | frame.obj:Fire("OnLeave")
23 | end
24 |
25 | local function Button_OnClick(frame, button)
26 | frame.obj:Fire("OnClick", button)
27 | AceGUI:ClearFocus()
28 | end
29 |
30 | --[[-----------------------------------------------------------------------------
31 | Methods
32 | -------------------------------------------------------------------------------]]
33 | local methods = {
34 | ["OnAcquire"] = function(self)
35 | self:SetHeight(110)
36 | self:SetWidth(110)
37 | self:SetLabel()
38 | self:SetImage(nil)
39 | self:SetImageSize(64, 64)
40 | self:SetDisabled(false)
41 | end,
42 |
43 | -- ["OnRelease"] = nil,
44 |
45 | ["SetLabel"] = function(self, text)
46 | if text and text ~= "" then
47 | self.label:Show()
48 | self.label:SetText(text)
49 | self:SetHeight(self.image:GetHeight() + 25)
50 | else
51 | self.label:Hide()
52 | self:SetHeight(self.image:GetHeight() + 10)
53 | end
54 | end,
55 |
56 | ["SetImage"] = function(self, path, ...)
57 | local image = self.image
58 | image:SetTexture(path)
59 |
60 | if image:GetTexture() then
61 | local n = select("#", ...)
62 | if n == 4 or n == 8 then
63 | image:SetTexCoord(...)
64 | else
65 | image:SetTexCoord(0, 1, 0, 1)
66 | end
67 | end
68 | end,
69 |
70 | ["SetImageSize"] = function(self, width, height)
71 | self.image:SetWidth(width)
72 | self.image:SetHeight(height)
73 | --self.frame:SetWidth(width + 30)
74 | if self.label:IsShown() then
75 | self:SetHeight(height + 25)
76 | else
77 | self:SetHeight(height + 10)
78 | end
79 | end,
80 |
81 | ["SetDisabled"] = function(self, disabled)
82 | self.disabled = disabled
83 | if disabled then
84 | self.frame:Disable()
85 | self.label:SetTextColor(0.5, 0.5, 0.5)
86 | self.image:SetVertexColor(0.5, 0.5, 0.5, 0.5)
87 | else
88 | self.frame:Enable()
89 | self.label:SetTextColor(1, 1, 1)
90 | self.image:SetVertexColor(1, 1, 1)
91 | end
92 | end
93 | }
94 |
95 | --[[-----------------------------------------------------------------------------
96 | Constructor
97 | -------------------------------------------------------------------------------]]
98 | local function Constructor()
99 | local frame = CreateFrame("Button", nil, UIParent)
100 | frame:Hide()
101 |
102 | frame:EnableMouse(true)
103 | frame:SetScript("OnEnter", Control_OnEnter)
104 | frame:SetScript("OnLeave", Control_OnLeave)
105 | frame:SetScript("OnClick", Button_OnClick)
106 |
107 | local label = frame:CreateFontString(nil, "BACKGROUND", "GameFontHighlight")
108 | label:SetPoint("BOTTOMLEFT")
109 | label:SetPoint("BOTTOMRIGHT")
110 | label:SetJustifyH("CENTER")
111 | label:SetJustifyV("TOP")
112 | label:SetHeight(18)
113 |
114 | local image = frame:CreateTexture(nil, "BACKGROUND")
115 | image:SetWidth(64)
116 | image:SetHeight(64)
117 | image:SetPoint("TOP", 0, -5)
118 |
119 | local highlight = frame:CreateTexture(nil, "HIGHLIGHT")
120 | highlight:SetAllPoints(image)
121 | highlight:SetTexture("Interface\\PaperDollInfoFrame\\UI-Character-Tab-Highlight")
122 | highlight:SetTexCoord(0, 1, 0.23, 0.77)
123 | highlight:SetBlendMode("ADD")
124 |
125 | local widget = {
126 | label = label,
127 | image = image,
128 | frame = frame,
129 | type = Type
130 | }
131 | for method, func in pairs(methods) do
132 | widget[method] = func
133 | end
134 | -- SetText is deprecated, but keep it around for a while. (say, to WoW 4.0)
135 | if (select(4, GetBuildInfo()) < 40000) then
136 | widget.SetText = widget.SetLabel
137 | else
138 | widget.SetText = function(self, ...) print("AceGUI-3.0-Icon: SetText is deprecated! Use SetLabel instead!"); self:SetLabel(...) end
139 | end
140 |
141 | return AceGUI:RegisterAsWidget(widget)
142 | end
143 |
144 | AceGUI:RegisterWidgetType(Type, Constructor, Version)
145 |
--------------------------------------------------------------------------------
/Masque/Core/Button.lua:
--------------------------------------------------------------------------------
1 | --[[
2 |
3 | This file is part of 'Masque', an add-on for World of Warcraft. For bug reports,
4 | suggestions and license information, please visit https://github.com/SFX-WoW/Masque.
5 |
6 | * File...: Core\Button.lua
7 | * Author.: StormFX, JJSheets, Kader
8 |
9 | Button-Skinning API
10 |
11 | ]]
12 | local _, Core = ...
13 |
14 | ----------------------------------------
15 | -- Lua
16 | ---
17 |
18 | local pairs, type = pairs, type
19 |
20 | ----------------------------------------
21 | -- Internal
22 | ---
23 |
24 | -- @ Skins\Skins
25 | local Skins = Core.Skins
26 |
27 | -- @ Skins\Regions
28 | local RegTypes = Core.RegTypes
29 |
30 | -- @ Core\Utility
31 | local GetScale = Core.GetScale
32 |
33 | -- @ Core\Regions\*
34 | local SkinBackdrop, SkinCooldown, SkinFrame = Core.SkinBackdrop, Core.SkinCooldown, Core.SkinFrame
35 | local SkinGloss, SkinIcon, SkinIconBorder = Core.SkinGloss, Core.SkinIcon, Core.SkinIconBorder
36 | local SkinMask, SkinNewItem, SkinNormal = Core.SkinMask, Core.SkinNewItem, Core.SkinNormal
37 | local SkinQuestBorder, SkinShadow, SkinText = Core.SkinQuestBorder, Core.SkinShadow, Core.SkinText
38 | local SkinTexture, UpdateSpellAlert = Core.SkinTexture, Core.UpdateSpellAlert
39 |
40 | ----------------------------------------
41 | -- Locals
42 | ---
43 |
44 | local __Empty = {}
45 |
46 | ----------------------------------------
47 | -- Core
48 | ---
49 |
50 | -- Applies a skin to a button and its associated layers.
51 | function Core.SkinButton(Button, Regions, SkinID, Backdrop, Shadow, Gloss, Colors, Pulse)
52 | if not Button then
53 | return
54 | end
55 |
56 | local bType = Button.__MSQ_bType
57 | local Skin, Disabled
58 |
59 | if SkinID then
60 | Skin = Skins[SkinID] or Skins.Classic
61 | else
62 | local Addon = Button.__MSQ_Addon or false
63 | Skin = Skins[Addon] or Skins.Default
64 | Disabled = true
65 | Pulse = true
66 | end
67 |
68 | Button.__MSQ_Enabled = (not Disabled and true) or nil
69 | Button.__MSQ_Shape = Skin.Shape
70 |
71 | if Disabled or type(Colors) ~= "table" then
72 | Colors = __Empty
73 | end
74 |
75 | local xScale, yScale = GetScale(Button)
76 |
77 | -- Mask
78 | -- local Mask = Skin.Mask
79 |
80 | -- if Mask then
81 | -- SkinMask(nil, Button, Mask, xScale, yScale)
82 | -- end
83 |
84 | -- Backdrop
85 | local FloatingBG = Button.FloatingBG or Regions.Backdrop
86 |
87 | if Disabled then
88 | Backdrop = (FloatingBG and true) or false
89 | end
90 |
91 | SkinBackdrop(Backdrop, FloatingBG, Button, Skin.Backdrop, Colors.Backdrop, xScale, yScale)
92 |
93 | -- Icon
94 | local Icon = Regions.Icon
95 |
96 | if Icon then
97 | SkinIcon(Icon, Button, Skin.Icon, xScale, yScale)
98 | end
99 |
100 | -- Shadow
101 | Shadow = (Shadow and not Disabled) or false
102 | SkinShadow(Shadow, Button, Skin.Shadow, Colors.Shadow, xScale, yScale)
103 |
104 | -- Normal
105 | local Normal = Regions.Normal
106 |
107 | if Normal ~= false then
108 | SkinNormal(Normal, Button, Skin.Normal, Colors.Normal, xScale, yScale)
109 | end
110 |
111 | -- FontStrings and Textures
112 | local Layers = RegTypes[bType] or RegTypes.Legacy
113 |
114 | for Layer, Info in pairs(Layers) do
115 | if Info.Iterate then
116 | local Region = Regions[Layer]
117 | local Type = Info.Type
118 |
119 | if Region then
120 | if Type == "FontString" then
121 | SkinText(Layer, Region, Button, Skin[Layer], xScale, yScale)
122 | else
123 | SkinTexture(Layer, Region, Button, Skin[Layer], Colors[Layer], xScale, yScale)
124 | end
125 | end
126 | end
127 | end
128 |
129 | -- IconBorder
130 | local IconBorder = Regions.IconBorder
131 |
132 | if IconBorder then
133 | SkinIconBorder(IconBorder, Button, Skin.IconBorder, xScale, yScale)
134 | end
135 |
136 | -- Gloss
137 | Gloss = (Gloss and not Disabled) or false
138 | SkinGloss(Gloss, Button, Skin.Gloss, Colors.Gloss, xScale, yScale)
139 |
140 | -- NewItem
141 | local NewItem = Regions.NewItem
142 |
143 | if NewItem then
144 | SkinNewItem(NewItem, Button, Skin.NewItem, xScale, yScale)
145 | end
146 |
147 | -- QuestBorder
148 | local QuestBorder = Regions.QuestBorder
149 |
150 | if QuestBorder then
151 | SkinQuestBorder(QuestBorder, Button, Skin.QuestBorder, xScale, yScale)
152 | end
153 |
154 | -- Cooldown
155 | local Cooldown = Regions.Cooldown
156 |
157 | if Cooldown then
158 | SkinCooldown(Cooldown, Button, Skin.Cooldown, Colors.Cooldown, xScale, yScale, Pulse)
159 | end
160 |
161 | -- ChargeCooldown
162 | local Charge = Regions.ChargeCooldown or Button.chargeCooldown
163 | local ChargeSkin = Skin.ChargeCooldown
164 |
165 | Button.__MSQ_ChargeSkin = ChargeSkin
166 |
167 | if Charge then
168 | SkinCooldown(Charge, Button, ChargeSkin, nil, xScale, yScale, Pulse)
169 | end
170 |
171 | -- AutoCastShine
172 | local Shine = Regions.AutoCastShine
173 |
174 | if Shine then
175 | SkinFrame(Shine, Button, Skin.AutoCastShine, xScale, yScale)
176 | end
177 |
178 | -- SpellAlert
179 | -- UpdateSpellAlert(Button)
180 | end
--------------------------------------------------------------------------------
/Masque/Libs/AceGUI-3.0/widgets/AceGUIWidget-Label.lua:
--------------------------------------------------------------------------------
1 | --[[-----------------------------------------------------------------------------
2 | Label Widget
3 | Displays text and optionally an icon.
4 | -------------------------------------------------------------------------------]]
5 | local Type, Version = "Label", 21
6 | local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
7 | if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
8 |
9 | -- Lua APIs
10 | local max, select, pairs = math.max, select, pairs
11 |
12 | -- WoW APIs
13 | local CreateFrame, UIParent = CreateFrame, UIParent
14 |
15 | -- Global vars/functions that we don't upvalue since they might get hooked, or upgraded
16 | -- List them here for Mikk's FindGlobals script
17 | -- GLOBALS: GameFontHighlightSmall
18 |
19 | --[[-----------------------------------------------------------------------------
20 | Support functions
21 | -------------------------------------------------------------------------------]]
22 |
23 | local function UpdateImageAnchor(self)
24 | if self.resizing then return end
25 | local frame = self.frame
26 | local width = frame.width or frame:GetWidth() or 0
27 | local image = self.image
28 | local label = self.label
29 | local height
30 |
31 | label:ClearAllPoints()
32 | image:ClearAllPoints()
33 |
34 | if self.imageshown then
35 | local imagewidth = image:GetWidth()
36 | if (width - imagewidth) < 200 or (label:GetText() or "") == "" then
37 | -- image goes on top centered when less than 200 width for the text, or if there is no text
38 | image:SetPoint("TOP")
39 | label:SetPoint("TOP", image, "BOTTOM")
40 | label:SetPoint("LEFT")
41 | label:SetWidth(width)
42 | height = image:GetHeight() + label:GetHeight()
43 | else
44 | -- image on the left
45 | image:SetPoint("TOPLEFT")
46 | label:SetPoint("TOPLEFT", image, "TOPRIGHT", 4, 0)
47 | label:SetWidth(width - imagewidth - 4)
48 | height = max(image:GetHeight(), label:GetHeight())
49 | end
50 | else
51 | -- no image shown
52 | label:SetPoint("TOPLEFT")
53 | label:SetWidth(width)
54 | height = label:GetHeight()
55 | end
56 |
57 | self.resizing = true
58 | frame:SetHeight(height)
59 | frame.height = height
60 | self.resizing = nil
61 | end
62 |
63 | --[[-----------------------------------------------------------------------------
64 | Methods
65 | -------------------------------------------------------------------------------]]
66 | local methods = {
67 | ["OnAcquire"] = function(self)
68 | -- set the flag to stop constant size updates
69 | self.resizing = true
70 | -- height is set dynamically by the text and image size
71 | self:SetWidth(200)
72 | self:SetText()
73 | self:SetImage(nil)
74 | self:SetImageSize(16, 16)
75 | self:SetColor()
76 | self:SetFontObject()
77 |
78 | -- reset the flag
79 | self.resizing = nil
80 | -- run the update explicitly
81 | UpdateImageAnchor(self)
82 | end,
83 |
84 | -- ["OnRelease"] = nil,
85 |
86 | ["OnWidthSet"] = function(self, width)
87 | UpdateImageAnchor(self)
88 | end,
89 |
90 | ["SetText"] = function(self, text)
91 | self.label:SetText(text)
92 | UpdateImageAnchor(self)
93 | end,
94 |
95 | ["SetColor"] = function(self, r, g, b)
96 | if not (r and g and b) then
97 | r, g, b = 1, 1, 1
98 | end
99 | self.label:SetVertexColor(r, g, b)
100 | end,
101 |
102 | ["SetImage"] = function(self, path, ...)
103 | local image = self.image
104 | image:SetTexture(path)
105 |
106 | if image:GetTexture() then
107 | self.imageshown = true
108 | local n = select("#", ...)
109 | if n == 4 or n == 8 then
110 | image:SetTexCoord(...)
111 | else
112 | image:SetTexCoord(0, 1, 0, 1)
113 | end
114 | else
115 | self.imageshown = nil
116 | end
117 | UpdateImageAnchor(self)
118 | end,
119 |
120 | ["SetFont"] = function(self, font, height, flags)
121 | self.label:SetFont(font, height, flags)
122 | end,
123 |
124 | ["SetFontObject"] = function(self, font)
125 | self:SetFont((font or GameFontHighlightSmall):GetFont())
126 | end,
127 |
128 | ["SetImageSize"] = function(self, width, height)
129 | self.image:SetWidth(width)
130 | self.image:SetHeight(height)
131 | UpdateImageAnchor(self)
132 | end,
133 | }
134 |
135 | --[[-----------------------------------------------------------------------------
136 | Constructor
137 | -------------------------------------------------------------------------------]]
138 | local function Constructor()
139 | local frame = CreateFrame("Frame", nil, UIParent)
140 | frame:Hide()
141 |
142 | local label = frame:CreateFontString(nil, "BACKGROUND", "GameFontHighlightSmall")
143 | label:SetJustifyH("LEFT")
144 | label:SetJustifyV("TOP")
145 |
146 | local image = frame:CreateTexture(nil, "BACKGROUND")
147 |
148 | -- create widget
149 | local widget = {
150 | label = label,
151 | image = image,
152 | frame = frame,
153 | type = Type
154 | }
155 | for method, func in pairs(methods) do
156 | widget[method] = func
157 | end
158 |
159 | return AceGUI:RegisterAsWidget(widget)
160 | end
161 |
162 | AceGUI:RegisterWidgetType(Type, Constructor, Version)
163 |
--------------------------------------------------------------------------------