Skip to content

Addition in a custom theme

Lacro59 edited this page Dec 14, 2022 · 5 revisions

You can see a example with https://github.com/Lacro59/playnite-defaultextend-theme.

Differents resources disponible with PluginSettings

The SourceName for the plugin is LibraryManagement

Plugin settings

CustomOption Type Default Description
EnableIntegrationFeatures bool true Parameters to display or not the plugin feature icons list.
EnableIntegrationAgeRatings bool true Parameters to display or not the plugin age rating icons.

Plugin data for game selected

CustomOption Type Default Description
HasData bool false Indicates if the game has data.
DataCount int 0 Count of feature icons
DataList List List empty details

Integration of plugin elements with ContentControl

Visibility

Visibility according to the presence of the plugin

<StackPanel Visibility="{PluginStatus Plugin=<PluginId>, Status=Installed}">
</StackPanel>

Visibility depending the element visibility parameter in plugin settings

If the item is not enabled in the plugin settings, it is collapsed.

Visibility according to the visibility of the element

<StackPanel Visibility="{Binding ElementName=<SourceName>_<ElementName>, Path=Visibility}">
</StackPanel>

Plugin elements

Features icons list (supporting the different options in the plugin settings)

<ContentControl x:Name="LibraryManagement_PluginFeaturesIconList" Height="obligatory" />

Age icons (supporting the different options in the plugin settings)

<ContentControl x:Name="LibraryManagement_PluginAgeRating" Height="obligatory" />

Custom elements with plugin data

Custom list of supported features(example)

<ListBox ItemsSource="{PluginSettings Plugin=LibraryManagement, Path=DataList}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <Grid Margin="0,2">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="auto" />
                </Grid.ColumnDefinitions>

                <Image Grid.Column="0" HorizontalAlignment="Center" Height="24" VerticalAlignment="Center" Width="24" 
				       Source="{Binding IconBitmapImage}" ToolTip={Binding NameAssociated } />
            </Grid>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>