mirror of
https://github.com/brues-code/pfUI.git
synced 2026-10-30 15:40:51 +00:00
Show the addon list in a ClassicAPI ScrollBox
The list built one row per addon in a ScrollFrame, hid the rows out of view by hand and drove pfUI's own slider. A WowScrollBoxList keeps rows only for the addons in view and recycles them while scrolling. pfUIScrollBarTemplate (api/ui-widgets.xml) is a ScrollBarMixin bar with the old slider's look: a thin track and a flat teal thumb that hides when nothing scrolls. Its steppers exist for the mixin but stay hidden. Rows read the addon's enabled state, so profiles enable and disable addons directly instead of clicking every row's checkbox. A checkbox now shows whether an addon is enabled; it showed whether it was loaded.
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||
<!--
|
||||
pfUI's scroll bar for ClassicAPI's ScrollBox: a thin track with a flat
|
||||
thumb. ScrollBarMixin needs Back and Forward steppers, so they exist but
|
||||
stay hidden. Hook it up with ScrollUtil.InitScrollBoxListWithScrollBar.
|
||||
-->
|
||||
<EventFrame name="pfUIScrollBarTemplate" inherits="VerticalScrollBarTemplate" virtual="true">
|
||||
<Size x="7"/>
|
||||
<KeyValues>
|
||||
<KeyValue key="hideIfUnscrollable" value="true" type="boolean"/>
|
||||
</KeyValues>
|
||||
<Frames>
|
||||
<Frame parentKey="Track" setAllPoints="true" enableMouse="true">
|
||||
<Frames>
|
||||
<EventButton parentKey="Thumb">
|
||||
<Size x="7"/>
|
||||
<Layers>
|
||||
<Layer level="ARTWORK">
|
||||
<Texture setAllPoints="true">
|
||||
<Color r=".3" g="1" b=".8" a=".5"/>
|
||||
</Texture>
|
||||
</Layer>
|
||||
</Layers>
|
||||
</EventButton>
|
||||
</Frames>
|
||||
</Frame>
|
||||
<EventButton parentKey="Back" hidden="true"/>
|
||||
<EventButton parentKey="Forward" hidden="true"/>
|
||||
</Frames>
|
||||
</EventFrame>
|
||||
</Ui>
|
||||
Reference in New Issue
Block a user