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 configuration menu 254bab612dbdadb0db925eab00cec81256b032ff Vladyslav Bondarenko 2025-01-27 21:30:05
fix: aura buttons do not violate borders 452ee7ff2e66a63e1c86f1cc1d9056b4ebe5cec4 Vladyslav Bondarenko 2025-01-27 18:02:08
fix: do not overlap tiny aura buttons 6f894b23eb90d2e88f57285ef7d5779550386ab9 Vladyslav Bondarenko 2025-01-27 17:58:48
fix: unify aura button logic 52c88f27f978e6ae528e4d04507f8c73184f904c Vladyslav Bondarenko 2025-01-27 17:50:00
feat!: extend huge unit with more aura buttons 36bba5e5bb7170758410ca3d7e3b619a68591937 Vladyslav Bondarenko 2025-01-17 14:58:43
feat!: extend huge unit with more aura buttons 368dd673050bd53efde56a17055100dc1f24c1ed Vladyslav Bondarenko 2025-01-17 14:58:43
fix: update TOT aura more frequently 29751221b920518b14a51c9bf1b486f5a177ad4f Vladyslav Bondarenko 2024-12-23 16:59:12
feat: rearrange solo and raid frames a7139f7359fe357808e97c4518369b49fd4cbd29 Vladyslav Bondarenko 2024-12-23 19:44:06
feat: arrange party frame vertically 55d13ff2eabd4d444c77cf6cdc664c83529f9c7d Vladyslav Bondarenko 2024-12-23 18:19:11
feat: change aura collapse button graphics 7085558a5afbcd942f3a9e368fdb617083304c5d Vladyslav Bondarenko 2024-12-20 22:45:32
fix: bump version 24da29749a723ae0a9025d23974d4ba5edfae720 Vladyslav Bondarenko 2024-12-04 03:43:51
fix: role widget toggle visibility correctly c8393fa228fc07c892993228f4a0b91b06cab319 Vladyslav Bondarenko 2024-12-03 08:00:46
fix: prepare release 0.11.0 c60fa1b56310a13399d60992f8334b0f88490fd1 Vladyslav Bondarenko 2024-12-03 03:56:40
fix: typo in aura frame initializator be11f220fc2d2e009a0be0258c23855993b71f2b Vladyslav Bondarenko 2024-12-02 12:12:55
fix: remove redundant initialization 611d5ec779272d3fcceefdc18852ee0de320e19d Vladyslav Bondarenko 2024-12-02 11:49:28
fix: adjust frames for all resolutions d378a6b25a5e8c87af367e199f57dc4b7781b26f Vladyslav Bondarenko 2024-12-02 11:13:10
fix: adjust buff priorities bfa198b18dfdfaab3db2d0f31e3b794eb52c9b9b Vladyslav Bondarenko 2024-12-02 10:32:14
fix!: remove all taint from aura buttons 198dcbb367596370de36e6ebbcde3c9a1887b657 Vladyslav Bondarenko 2024-07-14 23:21:37
fix: show death knight rune frame at player frame 9949a0bafac5d0f1ccbcd3f80b301977d4fa4e0f Vladyslav Bondarenko 2024-07-14 15:46:33
feat: prepare release 0.10.0 7b12ee714c95d94d9d34dd034fe7c1b27b29fa0e Vladyslav Bondarenko 2024-06-27 12:54:18
Commit 254bab612dbdadb0db925eab00cec81256b032ff - feat!: add configuration menu
Add conventional configuration menu to the Interface > Addons > Chorus
menu. The only available option so far is to toggle solo frame drag. The
options are not persistent yet.
Author: Vladyslav Bondarenko
Author date (UTC): 2025-01-27 21:30
Committer name: Vladyslav Bondarenko
Committer date (UTC): 2025-01-27 21:30
Parent(s): 7c9dc46750f67fc9eddd16800752895594a5bc89
Signer:
Signing key: EFF9624877D25D02
Signing status: E
Tree: 56356abf46d9e2afa5fce7894b10627ed536bf31
File Lines added Lines deleted
src/Chorus.xml 1 0
src/ChorusConfFrame.lua 80 0
src/ChorusConfFrame.xml 73 0
src/ChorusSoloFrame.lua 3 0
src/ChorusSoloFrame.xml 10 8
File src/Chorus.xml changed (mode: 100644) (index f4b7799..50abb84)
42 42 Otherwise, critical runtime failure will occurr. --> Otherwise, critical runtime failure will occurr. -->
43 43 <Include file="ChorusGroupFrame.xml"/> <Include file="ChorusGroupFrame.xml"/>
44 44 <Include file="ChorusFrame.xml"/> <Include file="ChorusFrame.xml"/>
45 <Include file="ChorusConfFrame.xml"/>
45 46 </Ui> </Ui>
File src/ChorusConfFrame.lua added (mode: 100644) (index 0000000..1fc8ddd)
1 local function movableEnable(frame)
2 assert(frame ~= nil)
3
4 frame:SetMovable(true)
5 frame:EnableMouse(true)
6 frame:RegisterForDrag('LeftButton', 'RightButton')
7 frame:SetScript('OnDragStart', frame.StartMoving)
8 frame:SetScript('OnDragStop', frame.StopMovingOrSizing)
9
10 local n = frame:GetName()
11 if not n then
12 return
13 end
14
15 local background = frame.background or _G[n .. 'Background']
16 if background then
17 background:Show()
18 end
19 end
20
21 local function movableDisable(frame)
22 assert(frame ~= nil)
23
24 frame:SetMovable(false)
25 frame:EnableMouse(false)
26 frame:RegisterForDrag(nil)
27 frame:SetScript('OnDragStart', nil)
28 frame:SetScript('OnDragStop', nil)
29
30 local n = frame:GetName()
31 if not n then
32 return
33 end
34
35 local background = frame.background or _G[n .. 'Background']
36 if background then
37 background:Hide()
38 end
39 end
40
41 local function confApply(confFrame)
42 assert(confFrame ~= nil)
43
44 local flag = ChorusConfMovableCheckBox:GetChecked()
45
46 if flag then
47 movableEnable(ChorusSoloFrame)
48 else
49 movableDisable(ChorusSoloFrame)
50 end
51 end
52
53 function Chorus.confFrameMain(confFrame)
54 assert(confFrame ~= nil)
55
56 local n = GetAddOnMetadata('chorus', 'Title') or 'chorus'
57 local ver = GetAddOnMetadata('chorus', 'Version') or '0'
58 local t = string.format('%s-%s', n, ver)
59 ChorusConfFrameTitle:SetText(t)
60
61 confFrame.name = n
62
63 confFrame.okay = confApply
64
65 confFrame.cancel = function(self)
66 ChorusConfMovableCheckBox:SetChecked(false)
67 confApply(self)
68 end
69
70 confFrame.default = function(self)
71 ChorusConfMovableCheckBox:SetChecked(false)
72 ChorusSoloFrame:ClearAllPoints()
73 ChorusSoloFrame:SetPoint('CENTER', 0, 0)
74 confApply(self)
75 end
76
77 confFrame.refresh = confApply
78
79 InterfaceOptions_AddCategory(confFrame)
80 end
File src/ChorusConfFrame.xml added (mode: 100644) (index 0000000..aa64ae3)
1 <?xml version="1.0" encoding="UTF-8"?>
2 <Ui xmlns="http://www.blizzard.com/wow/ui/">
3 <Script file="ChorusConfFrame.lua"/>
4 <Frame name="ChorusConfFrame" parent="InterfaceOptionsFramePanelContainer">
5 <Size>
6 <AbsDimension x="640" y="480"/>
7 </Size>
8 <Layers>
9 <Layer level="ARTWORK">
10 <FontString name="$parentTitle" text="Chorus" inherits="GameFontNormalLarge" justifyH="LEFT" justifyV="TOP">
11 <Anchors>
12 <Anchor point="TOPLEFT">
13 <Offset>
14 <AbsDimension x="16" y="-16"/>
15 </Offset>
16 </Anchor>
17 </Anchors>
18 </FontString>
19 <FontString name="$parentSubText" text="Chorus subtext paragraph." inherits="GameFontHighlightSmall" nonspacewrap="true" maxLines="3" justifyH="LEFT" justifyV="TOP">
20 <Size>
21 <AbsDimension x="32" y="0"/>
22 </Size>
23 <Anchors>
24 <Anchor point="TOPLEFT" relativeTo="$parentTitle" relativePoint="BOTTOMLEFT">
25 <Offset>
26 <AbsDimension x="0" y="-8"/>
27 </Offset>
28 </Anchor>
29 <Anchor point="RIGHT">
30 <Offset>
31 <AbsDimension x="-32" y="0"/>
32 </Offset>
33 </Anchor>
34 </Anchors>
35 </FontString>
36 </Layer>
37 </Layers>
38 <Frames>
39 <!-- See FrameXML/InterfaceOptionsPanels.xml -->
40 <CheckButton name="ChorusConfMovableCheckBox" inherits="InterfaceOptionsCheckButtonTemplate">
41 <Anchors>
42 <Anchor point="TOPLEFT" relativeTo="$parentSubText" relativePoint="BOTTOMLEFT">
43 <Offset>
44 <AbsDimension x="-2" y="-8"/>
45 </Offset>
46 </Anchor>
47 </Anchors>
48 <Scripts>
49 <OnLoad>
50 ChorusConfMovableCheckBoxText:SetText('Movable')
51 </OnLoad>
52 </Scripts>
53 </CheckButton>
54 <!--
55 <Button name="ChorusConfDragEnableButton" inherits="UIPanelButtonTemplate" text="Drag Enable">
56 <Size>
57 <AbsDimension x="96" y="22"/>
58 </Size>
59 <Anchors>
60 <Anchor point="TOPLEFT">
61 <Offset>
62 <AbsDimension x="12" y="-36"/>
63 </Offset>
64 </Anchor>
65 </Anchors>
66 </Button>
67 -->
68 </Frames>
69 <Scripts>
70 <OnLoad>Chorus.confFrameMain(self);</OnLoad>
71 </Scripts>
72 </Frame>
73 </Ui>
File src/ChorusSoloFrame.lua added (mode: 100644) (index 0000000..4cb21bc)
1 function Chorus.soloFrameMain(soloFrame)
2 assert(soloFrame ~= nil)
3 end
File src/ChorusSoloFrame.xml changed (mode: 100644) (index d2821e0..9dd9051)
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 3 <Script file="ChorusSoloFrame.lua"/> <Script file="ChorusSoloFrame.lua"/>
4 <Frame name="ChorusSoloFrame" parent="UIParent">
4 <Frame name="ChorusSoloFrame" parent="UIParent" movable="true" clampedToScreen="true">
5 5 <Size> <Size>
6 <AbsDimension x="640" y="300"/>
6 <AbsDimension x="640" y="190"/>
7 7 </Size> </Size>
8 <Layers>
9 <Layer level="BACKGROUND">
10 <Texture name="$parentBackground" setAllPoints="true" hidden="true">
11 <Color r="0" g="0" b="0" a="0.34"/>
12 </Texture>
13 </Layer>
14 </Layers>
8 15 <Anchors> <Anchors>
9 16 <Anchor point="CENTER"> <Anchor point="CENTER">
10 17 <Offset> <Offset>
 
12 19 </Offset> </Offset>
13 20 </Anchor> </Anchor>
14 21 </Anchors> </Anchors>
15 <!--
16 22 <Scripts> <Scripts>
17 <OnLoad>Chorus.groupFrameMain(self);</OnLoad>
23 <OnLoad>Chorus.soloFrameMain(self);</OnLoad>
18 24 </Scripts> </Scripts>
19 <Frames>
20 <Frame name="ChorusGroupSecureHandler" inherits="SecureHandlerStateTemplate"/>
21 </Frames>
22 -->
23 25 </Frame> </Frame>
24 26 </Ui> </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