jf-roku/components/music/ArtistView.xml
2022-10-02 06:24:31 -04:00

61 lines
4.1 KiB
XML

<?xml version="1.0" encoding="utf-8" ?>
<component name="ArtistView" extends="JFScreen">
<children>
<Poster id="backdrop" opacity=".4" loadDisplayMode="scaleToZoom" width="1920" height="1200" blendColor="#3f3f3f" />
<SectionScroller id="sectionScroller">
<Section id="slide-1" defaultFocusID="play">
<LayoutGroup id="toplevel" layoutDirection="vert" itemSpacings="[75]">
<LayoutGroup id="main_group" layoutDirection="horiz" itemSpacings="[125]">
<LayoutGroup layoutDirection="vert" itemSpacings="[75]">
<Label id="overview" wrap="true" lineSpacing="25" maxLines="6" width="1080" ellipsisText=" ... (Press * to read more)" />
<ButtonGroupHoriz id="buttons" itemSpacings="[20]">
<IconButton id="play" background="#070707" focusBackground="#00a4dc" padding="35" icon="pkg:/images/icons/play.png" text="Play" height="85" width="150" />
<IconButton id="instantMix" background="#070707" focusBackground="#00a4dc" padding="35" icon="pkg:/images/icons/instantMix.png" text="Instant Mix" height="85" width="150" />
</ButtonGroupHoriz>
</LayoutGroup>
<Poster id="artistImage" width="500" height="500" />
</LayoutGroup>
</LayoutGroup>
</Section>
<Section id="albumsSlide" translation="[0, 950]" defaultFocusID="albums">
<Rectangle id='albumRect' translation="[0, 0]" width="1920" height="1080" color="#000000" opacity=".75" />
<Label id="albumHeader" translation="[120, 50]" font="font:LargeSystemFont" />
<AlbumGrid id="albums" translation="[120, 150]" vertFocusAnimationStyle="fixedFocus" basePosterSize="[300, 300]" numColumns="5" numRows="99" caption1NumLines="1" itemSpacing="[50, 50]" />
</Section>
<Section id="appearsOnSlide" translation="[0, 1100]" defaultFocusID="appearsOn">
<Rectangle id='appearsOnRect' translation="[0, 0]" width="1920" height="1080" color="#000000" opacity=".75" />
<Label id="appearsOnHeader" translation="[120, 50]" font="font:LargeSystemFont" />
<AlbumGrid id="appearsOn" translation="[120, 150]" vertFocusAnimationStyle="fixedFocus" basePosterSize="[300, 300]" numColumns="5" numRows="99" caption1NumLines="1" itemSpacing="[50, 50]" />
</Section>
</SectionScroller>
<bgv_ButtonGroupVert id="sectionNavigation" translation="[-100, 175]" itemSpacings="[10]">
<sob_SlideOutButton background="#070707" focusBackground="#00a4dc" highlightBackground="#555555" padding="20" icon="pkg:/images/icons/details.png" text="Details" height="50" width="60" />
<sob_SlideOutButton id="albumsLink" background="#070707" focusBackground="#00a4dc" highlightBackground="#555555" padding="20" icon="pkg:/images/icons/cd.png" text="Albums" height="50" width="60" />
<sob_SlideOutButton id="appearsOnLink" background="#070707" focusBackground="#00a4dc" highlightBackground="#555555" padding="20" icon="pkg:/images/icons/cassette.png" text="Appears On" height="50" width="60" />
</bgv_ButtonGroupVert>
<Animation id="pageLoad" duration="1" repeat="false">
<Vector2DFieldInterpolator key="[0.5, 1.0]" keyValue="[[-100, 175], [40, 175]]" fieldToInterp="sectionNavigation.translation" />
</Animation>
</children>
<interface>
<field id="pageContent" type="node" onChange="pageContentChanged" />
<field id="musicArtistAlbumData" type="assocarray" alias="albums.MusicArtistAlbumData" />
<field id="musicArtistAppearsOnData" type="assocarray" alias="appearsOn.MusicArtistAlbumData" />
<field id="artistOverview" type="string" onChange="artistOverviewChanged" />
<field id="musicAlbumSelected" alias="albums.itemSelected" />
<field id="appearsOnSelected" alias="appearsOn.itemSelected" />
<field id="playArtistSelected" alias="play.selected" />
<field id="instantMixSelected" alias="instantMix.selected" />
<field id="selectedButtonIndex" type="integer" value="-1" />
</interface>
<script type="text/brightscript" uri="pkg:/source/utils/misc.brs" />
<script type="text/brightscript" uri="ArtistView.brs" />
</component>