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)
fix!: Restore solo frame context menu popup 0cc446f33351c8998d2359a42000f84da19defcd Vladyslav Bondarenko 2023-08-29 22:43:22
feat!: Update unit frame layout framework 1af4c0bd53a474483d60425f2a4e40250367ecf1 Vladyslav Bondarenko 2023-08-29 21:20:40
feat: Classify rare or elite units dd2c1f490c08a75774be085b318ebcd1b2788a2b Vladyslav Bondarenko 2023-08-29 21:18:49
feat(build): Remove cgitrc 1e6b59264abab70e1f2fa9ae494c74d2606c060f Vladyslav Bondarenko 2023-08-29 14:37:03
feat(build): Add cgitrc 7288f0336e36010fb92bf60479fdca3a0082ecd1 Vladyslav Bondarenko 2023-08-29 14:14:24
feat(build): Add cgitrc ea45afc0375774c2fe6bb0a3237cfd1817529ff0 Vladyslav Bondarenko 2023-08-29 14:14:24
feat(test)!: Toggle debug mode at runtime 23c37e3ab2eaf924f41fe51adc1e54f525222a8b Vladyslav Bondarenko 2023-08-29 03:41:55
fix: Aura tooltip is always opaque 1f7ba009c71796093b8cfa63cb38d918b9696c79 Vladyslav Bondarenko 2023-08-29 01:31:40
fix: Adjust aura tooltip toggle button layout fc72d10b09f44ef9ba6f2f93413a20def40c2d4a Vladyslav Bondarenko 2023-08-29 01:30:27
feat!: Add role widget 0ac8cda6522056c8adb527ba2f144229f251f69e Vladyslav Bondarenko 2023-08-29 00:59:14
fix: Only show power bar when appropriate 5313d1bfbf676c88b5c2a0a56fbea88549633b7b Vladyslav Bondarenko 2023-08-28 22:46:36
feat!: Toggle detailed unit aura tooltip in combat 460c622c04a8b0fa503c2a5d45313b667809b95c Vladyslav Bondarenko 2023-08-28 19:26:25
feat!: Add detailed buff and debuff popup 1ff7bcff470419c7fa40c6b946e441867dda4825 Vladyslav Bondarenko 2023-08-27 20:42:05
fix!: Further specialize every aura frame 1ec8385427bda76ea40840e68da7f5948d5af9bd Vladyslav Bondarenko 2023-08-27 18:40:55
feat: Add combat status indicator to unit buttons 38e469e01eb581693fd22f69b0739ea308d94966 Vladyslav Bondarenko 2023-08-27 16:35:38
fix!: Show raid targeting icon correctly ae5a1c5541d4bf137ea287671eb1f558422b26f4 Vladyslav Bondarenko 2023-08-27 15:24:57
fix!: Disable test mockup for release 0.4 54113d6a7f222ea2f382a1d5382c8e941e7537b1 Vladyslav Bondarenko 2023-08-26 22:42:33
fix: Apply source formatting before 0.4 cb1c5f11b553aba43751091c8746abdf261806e6 Vladyslav Bondarenko 2023-08-26 22:36:57
fix!: Cast bar consistent between targets a7c5e11ec5094033e946a95002010e5b02d6da74 Vladyslav Bondarenko 2023-08-26 21:56:35
fix(test)!: Add primitive test mockups f2b7fcf2058c7c1b61ef43241f55e92a5113bf57 Vladyslav Bondarenko 2023-08-26 16:55:54
Commit 0cc446f33351c8998d2359a42000f84da19defcd - fix!: Restore solo frame context menu popup
Author: Vladyslav Bondarenko
Author date (UTC): 2023-08-29 22:43
Committer name: Vladyslav Bondarenko
Committer date (UTC): 2023-08-29 22:43
Parent(s): 1af4c0bd53a474483d60425f2a4e40250367ecf1
Signer:
Signing key: EFF9624877D25D02
Signing status: E
Tree: 582c8ec7ad5e2db7968d25d2a043048d7d9573af
File Lines added Lines deleted
src/ChorusFrame.lua 19 19
src/ChorusFrame.xml 12 14
src/ChorusHugeUnitFrameTemplate.xml 0 7
src/ChorusUnitButtonTemplate.xml 1 0
File src/ChorusFrame.lua changed (mode: 100644) (index f3340f6..14b2a65)
... ... local function applyLayout(self)
41 41
42 42 --[[ FIXME Range indicator shows false information. ]]-- --[[ FIXME Range indicator shows false information. ]]--
43 43
44 ChorusPlayerButtonHealthFrame.strategy = 'UnitClass'
45 ChorusPlayerButton.menu = function()
46 local offsetX = ChorusPlayerButton:GetWidth() / 2
47 local offsetY = ChorusPlayerButton:GetHeight()
48 ToggleDropDownMenu(1, nil, PlayerFrameDropDown, 'ChorusPlayerButton', offsetX, offsetY)
44 ChorusPlayerFrameHealthFrame.strategy = 'UnitClass'
45 ChorusPlayerFrameSecureUnitButton.menu = function()
46 local offsetX = ChorusPlayerFrame:GetWidth() / 2
47 local offsetY = ChorusPlayerFrame:GetHeight()
48 ToggleDropDownMenu(1, nil, PlayerFrameDropDown, 'ChorusPlayerFrame', offsetX, offsetY)
49 49 end end
50 50
51 51 local focuscastModifier = GetModifiedClick('FOCUSCAST') local focuscastModifier = GetModifiedClick('FOCUSCAST')
52 52 if focuscastModifier and 'NONE' ~= focuscastModifier then if focuscastModifier and 'NONE' ~= focuscastModifier then
53 53 local key = string.lower(focuscastModifier) .. '-type1' local key = string.lower(focuscastModifier) .. '-type1'
54 ChorusPlayerButton:SetAttribute(key, 'focus')
55 ChorusTargetButton:SetAttribute(key, 'focus')
54 ChorusPlayerFrameSecureUnitButton:SetAttribute(key, 'focus')
55 ChorusTargetFrameSecureUnitButton:SetAttribute(key, 'focus')
56 56 end end
57 57
58 ChorusFocusButtonHealthFrame.strategy = 'UnitIsFriend'
59 ChorusFocusButtonUnitNameFrame.strategy = 'UnitClass'
58 ChorusFocusFrameHealthFrame.strategy = 'UnitIsFriend'
59 ChorusFocusFrameUnitNameFrame.strategy = 'UnitClass'
60 60
61 ChorusTargetButtonHealthFrame.strategy = 'UnitIsFriend'
62 ChorusTargetButtonUnitNameFrame.strategy = 'UnitClass'
61 ChorusTargetFrameHealthFrame.strategy = 'UnitIsFriend'
62 ChorusTargetFrameUnitNameFrame.strategy = 'UnitClass'
63 63
64 64 --[[ FIXME Selecting "Set focus" option in the context menu for Chorus --[[ FIXME Selecting "Set focus" option in the context menu for Chorus
65 65 unit button results in permission violation exception (restricted unit button results in permission violation exception (restricted
66 66 execution environment issue). ]]-- execution environment issue). ]]--
67 67
68 ChorusTargetButton.menu = function()
69 local offsetX = ChorusTargetButton:GetWidth() / 2
70 local offsetY = ChorusTargetButton:GetHeight()
71 ToggleDropDownMenu(1, nil, TargetFrameDropDown, 'ChorusTargetButton', offsetX, offsetY)
68 ChorusTargetFrameSecureUnitButton.menu = function()
69 local offsetX = ChorusTargetFrame:GetWidth() / 2
70 local offsetY = ChorusTargetFrame:GetHeight()
71 ToggleDropDownMenu(1, nil, TargetFrameDropDown, 'ChorusTargetFrame', offsetX, offsetY)
72 72 end end
73 73
74 ChorusFocusButton.menu = function()
75 local offsetX = ChorusFocusButton:GetWidth() / 2
76 local offsetY = ChorusFocusButton:GetHeight()
77 ToggleDropDownMenu(1, nil, FocusFrameDropDown, 'ChorusFocusButton', offsetX, offsetY)
74 ChorusFocusFrameSecureUnitButton.menu = function()
75 local offsetX = ChorusFocusFrame:GetWidth() / 2
76 local offsetY = ChorusFocusFrame:GetHeight()
77 ToggleDropDownMenu(1, nil, FocusFrameDropDown, 'ChorusFocusFrame', offsetX, offsetY)
78 78 end end
79 79
80 80 --[[ NOTE The menu functions are equivalent of PlayerFrame.menu and --[[ NOTE The menu functions are equivalent of PlayerFrame.menu and
File src/ChorusFrame.xml changed (mode: 100644) (index 91d2f28..810ba27)
2 2 <Ui xmlns="http://www.blizzard.com/wow/ui/"> <Ui xmlns="http://www.blizzard.com/wow/ui/">
3 3 <Script file="ChorusFrame.lua"/> <Script file="ChorusFrame.lua"/>
4 4 <Frame name="ChorusFrame"> <Frame name="ChorusFrame">
5 <!-- TODO Add back disabling of native frames.
6 5 <Scripts> <Scripts>
7 6 <OnLoad>Chorus.chorusFrameMain(self);</OnLoad> <OnLoad>Chorus.chorusFrameMain(self);</OnLoad>
8 7 </Scripts> </Scripts>
9 -->
10 8 </Frame> </Frame>
11 9 <!-- TODO Toggle unit frame visibility when units update. --> <!-- TODO Toggle unit frame visibility when units update. -->
12 <Frame name="ChorusHugePlayerFrame" inherits="ChorusHugeUnitFrameTemplate">
10 <Frame name="ChorusPlayerFrame" inherits="ChorusHugeUnitFrameTemplate">
13 11 <Anchors> <Anchors>
14 12 <Anchor point="TOP"> <Anchor point="TOP">
15 <Offset x="-288" y="-100"/>
13 <Offset x="-288" y="-64"/>
16 14 </Anchor> </Anchor>
17 15 <Anchor point="CENTER"> <Anchor point="CENTER">
18 16 <Offset x="0" y="0"/> <Offset x="0" y="0"/>
 
23 21 <Attribute name="unit" type="string" value="player"/> <Attribute name="unit" type="string" value="player"/>
24 22 </Attributes> </Attributes>
25 23 </Frame> </Frame>
26 <Frame name="ChorusHugeTargetFrame" inherits="ChorusHugeUnitFrameTemplate">
24 <Frame name="ChorusTargetFrame" inherits="ChorusHugeUnitFrameTemplate">
27 25 <Anchors> <Anchors>
28 26 <Anchor point="TOP"> <Anchor point="TOP">
29 <Offset x="-288" y="-300"/>
27 <Offset x="-288" y="-256"/>
30 28 </Anchor> </Anchor>
31 29 <Anchor point="CENTER"> <Anchor point="CENTER">
32 30 <Offset x="0" y="0"/> <Offset x="0" y="0"/>
 
37 35 <Attribute name="unit" type="string" value="target"/> <Attribute name="unit" type="string" value="target"/>
38 36 </Attributes> </Attributes>
39 37 </Frame> </Frame>
40 <Frame name="ChorusHugeFocusFrame" inherits="ChorusHugeUnitFrameTemplate">
38 <Frame name="ChorusFocusFrame" inherits="ChorusHugeUnitFrameTemplate">
41 39 <Anchors> <Anchors>
42 40 <Anchor point="TOP"> <Anchor point="TOP">
43 <Offset x="288" y="-100"/>
41 <Offset x="288" y="-64"/>
44 42 </Anchor> </Anchor>
45 43 <Anchor point="CENTER"> <Anchor point="CENTER">
46 44 <Offset x="0" y="0"/> <Offset x="0" y="0"/>
 
51 49 <Attribute name="unit" type="string" value="focus"/> <Attribute name="unit" type="string" value="focus"/>
52 50 </Attributes> </Attributes>
53 51 </Frame> </Frame>
54 <Button name="ChorusHugePlayerPetButton" inherits="ChorusSmallUnitButtonTemplate">
52 <Button name="ChorusPlayerPetButton" inherits="ChorusSmallUnitButtonTemplate">
55 53 <Anchors> <Anchors>
56 <Anchor point="TOPRIGHT" relativeTo="ChorusHugePlayerFrame" relativePoint="TOPLEFT">
54 <Anchor point="TOPRIGHT" relativeTo="ChorusPlayerFrame" relativePoint="TOPLEFT">
57 55 <Offset x="-6" y="-6"/> <Offset x="-6" y="-6"/>
58 56 </Anchor> </Anchor>
59 57 </Anchors> </Anchors>
 
61 59 <Attribute name="unit" type="string" value="pet"/> <Attribute name="unit" type="string" value="pet"/>
62 60 </Attributes> </Attributes>
63 61 </Button> </Button>
64 <Button name="ChorusHugeTargetTargetButton" inherits="ChorusSmallUnitButtonTemplate">
62 <Button name="ChorusTargetTargetButton" inherits="ChorusSmallUnitButtonTemplate">
65 63 <Anchors> <Anchors>
66 <Anchor point="TOPRIGHT" relativeTo="ChorusHugeTargetFrame" relativePoint="TOPLEFT">
64 <Anchor point="TOPRIGHT" relativeTo="ChorusTargetFrame" relativePoint="TOPLEFT">
67 65 <Offset x="-6" y="-6"/> <Offset x="-6" y="-6"/>
68 66 </Anchor> </Anchor>
69 67 </Anchors> </Anchors>
 
71 69 <Attribute name="unit" type="string" value="targettarget"/> <Attribute name="unit" type="string" value="targettarget"/>
72 70 </Attributes> </Attributes>
73 71 </Button> </Button>
74 <Button name="ChorusHugeFocusTargetButton" inherits="ChorusSmallUnitButtonTemplate">
72 <Button name="ChorusFocusTargetButton" inherits="ChorusSmallUnitButtonTemplate">
75 73 <Anchors> <Anchors>
76 <Anchor point="TOPLEFT" relativeTo="ChorusHugeFocusFrame" relativePoint="TOPRIGHT">
74 <Anchor point="TOPLEFT" relativeTo="ChorusFocusFrame" relativePoint="TOPRIGHT">
77 75 <Offset x="6" y="-6"/> <Offset x="6" y="-6"/>
78 76 </Anchor> </Anchor>
79 77 </Anchors> </Anchors>
File src/ChorusHugeUnitFrameTemplate.xml changed (mode: 100644) (index 5533e70..2f83523)
4 4 <Size> <Size>
5 5 <AbsDimension x="200" y="150"/> <AbsDimension x="200" y="150"/>
6 6 </Size> </Size>
7 <Layers>
8 <Layer level="BACKGROUND">
9 <Texture name="$parentBackground" setAllPoints="true">
10 <Color r="0.05" g="0.05" b="0.05" a="0.6"/>
11 </Texture>
12 </Layer>
13 </Layers>
14 7 <Frames> <Frames>
15 8 <!-- Clickable area. --> <!-- Clickable area. -->
16 9 <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true"> <Button name="$parentSecureUnitButton" inherits="ChorusUnitButtonTemplate" setAllPoints="true">
File src/ChorusUnitButtonTemplate.xml changed (mode: 100644) (index 64f77bf..f58f26b)
157 157 <Attribute name="type1" type="string" value="target"/> <Attribute name="type1" type="string" value="target"/>
158 158 <!-- Fallback to parent's unit property if necessary. --> <!-- Fallback to parent's unit property if necessary. -->
159 159 <Attribute name="useparent-unit" type="boolean" value="true"/> <Attribute name="useparent-unit" type="boolean" value="true"/>
160 <Attribute name="type2" type="string" value="menu"/>
160 161 </Attributes> </Attributes>
161 162 </Button> </Button>
162 163 <Button name="ChorusTinyUnitButtonTemplate" inherits="ChorusUnitButtonTemplate" virtual="true"> <Button name="ChorusTinyUnitButtonTemplate" inherits="ChorusUnitButtonTemplate" virtual="true">
Date/time (UTC) Type Misc Labels
2024-06-10 09:09 build debian-11-amd64 worker/r1 builder/color=fff worker_elap/40s wait_time/24660907s date/2023-08-29 time/22:45
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