vrtc / chorus (public) (License: CC0) (since 2023-08-12) (hash sha1)
World of Warcraft add-on stub. The overall goal is to create a specialized raid frame.
List of commits:
Subject Hash Author Date (UTC)
feat: add unit frame borders that are color coded fb8e310e827c1cbdafa6ff2bc7760ef8fc617a16 Vladyslav Bondarenko 2024-01-24 20:23:43
fix: typo in src/ChorusUnitFrameTemplate.lua 62ccfd2a62ce4ec8d9be7658663d06c9d39f743a Vladyslav Bondarenko 2024-01-24 18:57:02
fix: single frame toggles every group frame 44d20820afb80aa381c2cfb1272123ba9a8e6156 Vladyslav Bondarenko 2024-01-24 18:47:12
build: migrate to make and adoc 1e410bff214b6a32cd13343d3b7e521afa0cf93f Vladyslav Bondarenko 2024-01-23 14:42:21
doc: note the need to backport GetSpellName 8dac49bb037de94b2980a45b91152691d9c5b98b Vladyslav Bondarenko 2024-01-23 14:24:44
feat: show remaining aura charges beedf659895a3ecdd0df97e14e63d87f534d0bbc Vladyslav Bondarenko 2024-01-23 14:24:01
fix: remove aura button overlay and artwork gap d0785edceabe16095e6e56aa42d88fb25bca3eb7 Vladyslav Bondarenko 2024-01-21 22:35:02
Release 0.6 d76ca463e13d1a47b68541f33faa9c44ec745347 Vladyslav Bondarenko 2023-09-12 02:02:46
fix!: Show arena as party 1c7d9c4c80948486eacd0c0eaa8f785a1efaa5ae Vladyslav Bondarenko 2023-09-11 23:51:47
fix: Filter out aura events 193d8864ae6ca3a2f6bf3e6ed2260e06722e47fc Vladyslav Bondarenko 2023-09-11 21:14:26
feat: Arrange all solo frames in one column 5d1f55b456efee534b970ed3ec80c5aeb334baa8 Vladyslav Bondarenko 2023-09-11 19:31:46
fix!: Show arena as party 6b1ac51958c213e1e06ef4c43b2e01a7ef0d1e01 Vladyslav Bondarenko 2023-09-11 17:06:51
feat: Add arrow graphics to aura tooltip button 16b016797a6bc7bb65d5cab8caa7dc8beeb4b48d Vladyslav Bondarenko 2023-09-11 16:35:40
feat: Add arrow graphics to aura tooltip button 12129625fc1277c77974cc9a2b63b3cfc592cdf6 Vladyslav Bondarenko 2023-09-11 16:35:40
fix: Improve small raid layout a4e48cb4e4b198d141abd4ce3914e71f5155f502 Vladyslav Bondarenko 2023-09-07 06:55:19
fix!: Simplify aura sorting algorithm a2a294f60cee50ab51d044139f50d784bb8f3455 Vladyslav Bondarenko 2023-09-07 01:49:15
feat!: Add raid frame with 25 small buttons 5bdc57423adeb4137bc796932657cf64f22ef8ad Vladyslav Bondarenko 2023-09-01 01:12:15
feat!: Add UnitSetRole backport 1eb6a3777cb6361f57386959cdec4066715bb0a6 Vladyslav Bondarenko 2023-08-31 18:07:35
feat(build): Add separation for Cata and Wrath API c1ec823b22648324afb48852149296f6b0612830 Vladyslav Bondarenko 2023-08-31 18:05:42
feat!: Release 0.5 ff0038bc36df311a01b038e192c3e6b495e5c509 Vladyslav Bondarenko 2023-08-30 23:45:43
Commit fb8e310e827c1cbdafa6ff2bc7760ef8fc617a16 - feat: add unit frame borders that are color coded
Every unit frame has a border. Yellow border indicates that given unit
is the user. Red, target. Blue, focus. White for every other unit. This
allows the user to clearly see which unit they currently target by
looking only at the raid frames, and not glance back to the target
frame.
Author: Vladyslav Bondarenko
Author date (UTC): 2024-01-24 20:23
Committer name: Vladyslav Bondarenko
Committer date (UTC): 2024-01-24 20:23
Parent(s): 62ccfd2a62ce4ec8d9be7658663d06c9d39f743a
Signer:
Signing key: EFF9624877D25D02
Signing status: E
Tree: f5c8ae043ad27e0ab8dd0f60241e151942da8562
File Lines added Lines deleted
src/Chorus.xml 1 0
src/ChorusHugeUnitFrameTemplate.xml 3 1
src/ChorusLargeUnitFrameTemplate.xml 2 0
src/ChorusSmallUnitFrameTemplate.xml 3 1
src/ChorusTinyUnitFrameTemplate.xml 2 0
src/ChorusUnitBackdropTemplate.lua 52 0
src/ChorusUnitBackdropTemplate.xml 23 0
File src/Chorus.xml changed (mode: 100644) (index bdcba4f..3acb861)
23 23 <Include file="ChorusUnitGroupRoleFrameTemplate.xml"/> <Include file="ChorusUnitGroupRoleFrameTemplate.xml"/>
24 24 <Include file="ChorusUnitButtonTemplate.xml"/> <Include file="ChorusUnitButtonTemplate.xml"/>
25 25 <Include file="ChorusUnitFrameTemplate.xml"/> <Include file="ChorusUnitFrameTemplate.xml"/>
26 <Include file="ChorusUnitBackdropTemplate.xml"/>
26 27 <Include file="ChorusHugeUnitFrameTemplate.xml"/> <Include file="ChorusHugeUnitFrameTemplate.xml"/>
27 28 <Include file="ChorusLargeUnitFrameTemplate.xml"/> <Include file="ChorusLargeUnitFrameTemplate.xml"/>
28 29 <Include file="ChorusSmallUnitFrameTemplate.xml"/> <Include file="ChorusSmallUnitFrameTemplate.xml"/>
File src/ChorusHugeUnitFrameTemplate.xml changed (mode: 100644) (index d8b5f27..c29d5c5)
1 1 <?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
2 2 <Ui xmlns="http://www.blizzard.com/wow/ui/"> <Ui xmlns="http://www.blizzard.com/wow/ui/">
3 <Frame name="ChorusHugeUnitFrameTemplate" virtual="true">
3 <Frame name="ChorusHugeUnitFrameTemplate" inherits="ChorusUnitFrameTemplate" virtual="true">
4 4 <Size> <Size>
5 5 <AbsDimension x="200" y="150"/> <AbsDimension x="200" y="150"/>
6 6 </Size> </Size>
7 7 <Frames> <Frames>
8 <!-- Backdrop. -->
9 <Frame name="$parentBackdrop" inherits="ChorusUnitBackdropTemplate" setAllPoints="true"/>
8 10 <!-- Clickable area. --> <!-- Clickable area. -->
9 11 <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true"> <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true">
10 12 <Anchors> <Anchors>
File src/ChorusLargeUnitFrameTemplate.xml changed (mode: 100644) (index b8fe4e1..7e6f193)
5 5 <AbsDimension x="160" y="100"/> <AbsDimension x="160" y="100"/>
6 6 </Size> </Size>
7 7 <Frames> <Frames>
8 <!-- Backdrop. -->
9 <Frame name="$parentBackdrop" inherits="ChorusUnitBackdropTemplate" setAllPoints="true"/>
8 10 <!-- Clickable area. --> <!-- Clickable area. -->
9 11 <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true"> <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true">
10 12 <Size> <Size>
File src/ChorusSmallUnitFrameTemplate.xml changed (mode: 100644) (index 7149f95..7cc140b)
1 1 <?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
2 2 <Ui xmlns="http://www.blizzard.com/wow/ui/"> <Ui xmlns="http://www.blizzard.com/wow/ui/">
3 <Frame name="ChorusSmallUnitFrameTemplate" virtual="true">
3 <Frame name="ChorusSmallUnitFrameTemplate" inherits="ChorusUnitFrameTemplate" virtual="true">
4 4 <Size> <Size>
5 5 <AbsDimension x="96" y="32"/> <AbsDimension x="96" y="32"/>
6 6 </Size> </Size>
7 7 <Frames> <Frames>
8 <!-- Backdrop. -->
9 <Frame name="$parentBackdrop" inherits="ChorusUnitBackdropTemplate" setAllPoints="true"/>
8 10 <!-- Clickable area. --> <!-- Clickable area. -->
9 11 <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true"/> <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true"/>
10 12 <!-- Header --> <!-- Header -->
File src/ChorusTinyUnitFrameTemplate.xml changed (mode: 100644) (index 538b937..cd31ac4)
5 5 <AbsDimension x="64" y="16"/> <AbsDimension x="64" y="16"/>
6 6 </Size> </Size>
7 7 <Frames> <Frames>
8 <!-- Backdrop. -->
9 <Frame name="$parentBackdrop" inherits="ChorusUnitBackdropTemplate" setAllPoints="true"/>
8 10 <!-- Clickable area. --> <!-- Clickable area. -->
9 11 <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true"/> <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true"/>
10 12 <!-- Header --> <!-- Header -->
File src/ChorusUnitBackdropTemplate.lua added (mode: 100644) (index 0000000..23773dc)
1 local SecureButton_GetUnit = SecureButton_GetUnit
2
3 local function unitBackdropEventProcessor(unitBackdrop)
4 assert(unitBackdrop ~= nil)
5
6 local unitDesignation = unitBackdrop:GetAttribute('unit')
7 if not unitDesignation then
8 unitDesignation = SecureButton_GetUnit(unitBackdrop)
9 end
10 assert(unitDesignation ~= nil)
11
12 if UnitExists(unitDesignation) then
13 unitBackdrop:Show()
14 else
15 unitBackdrop:Hide()
16 end
17
18 if UnitIsUnit(unitDesignation, 'target') then
19 unitBackdrop:SetBackdropBorderColor(178 / 255, 34 / 255, 34 / 255, 1)
20 elseif UnitIsUnit(unitDesignation, 'focus') then
21 unitBackdrop:SetBackdropBorderColor(72 / 255, 118 / 255, 1, 1)
22 elseif UnitIsUnit(unitDesignation, 'player') then
23 unitBackdrop:SetBackdropBorderColor(1, 225 / 255, 0, 1)
24 else
25 unitBackdrop:SetBackdropBorderColor(1, 1, 1, 1)
26 end
27 end
28
29 function Chorus.unitBackdropMain(unitBackdrop)
30 assert(unitBackdrop ~= nil)
31
32 unitBackdrop:SetBackdropBorderColor(1, 1, 1, 1)
33 unitBackdrop:SetBackdropColor(0, 0, 0, 0.8)
34
35 local p = unitBackdrop:GetParent()
36 if p then
37 local offset = 6
38 unitBackdrop:SetPoint('TOPRIGHT', offset, offset)
39 unitBackdrop:SetPoint('TOPLEFT', -offset, offset)
40 unitBackdrop:SetPoint('BOTTOMLEFT', -offset, -offset)
41 unitBackdrop:SetPoint('BOTTOMRIGHT', offset, -offset)
42 end
43
44 unitBackdrop:RegisterEvent('ADDON_LOADED')
45 unitBackdrop:RegisterEvent('PARTY_CONVERTED_TO_RAID')
46 unitBackdrop:RegisterEvent('PARTY_MEMBERS_CHANGED')
47 unitBackdrop:RegisterEvent('PLAYER_FOCUS_CHANGED')
48 unitBackdrop:RegisterEvent('PLAYER_TARGET_CHANGED')
49 unitBackdrop:RegisterEvent('RAID_ROSTER_UPDATE')
50 unitBackdrop:SetScript('OnEvent', unitBackdropEventProcessor)
51 unitBackdrop:SetScript('OnAttributeChanged', unitBackdropEventProcessor)
52 end
File src/ChorusUnitBackdropTemplate.xml added (mode: 100644) (index 0000000..579bf0c)
1 <?xml version="1.0" encoding="UTF-8"?>
2 <Ui xmlns="http://www.blizzard.com/wow/ui/">
3 <Script file="ChorusUnitBackdropTemplate.lua"/>
4 <Frame name="ChorusUnitBackdropTemplate" virtual="true" protected="false">
5 <Backdrop bgFile="Interface\Tooltips\UI-Tooltip-Background" edgeFile="Interface\Tooltips\UI-Tooltip-Border" tile="true">
6 <BackgroundInsets>
7 <AbsInset left="4" right="4" top="4" bottom="4"/>
8 </BackgroundInsets>
9 <TileSize>
10 <AbsValue val="36"/>
11 </TileSize>
12 <EdgeSize>
13 <AbsValue val="24"/>
14 </EdgeSize>
15 </Backdrop>
16 <Attributes>
17 <Attribute name="useparent-unit" type="boolean" value="true"/>
18 </Attributes>
19 <Scripts>
20 <OnLoad>Chorus.unitBackdropMain(self);</OnLoad>
21 </Scripts>
22 </Frame>
23 </Ui>
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/vrtc/chorus

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/vrtc/chorus

Clone this repository using git:
git clone git://git.rocketgit.com/user/vrtc/chorus

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main