652 lines
26 KiB
XML
652 lines
26 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<interface>
|
|
<requires lib="gtk+" version="4.8"/>
|
|
<requires lib="adw" version="1.2" />
|
|
<object class="GtkAdjustment" id="grid_adjustment">
|
|
<property name="lower">100</property>
|
|
<property name="upper">1000</property>
|
|
<property name="value">150</property>
|
|
<property name="step-increment">1</property>
|
|
<property name="page-increment">10</property>
|
|
</object>
|
|
<object class="GtkPopover" id="toolbar_popover">
|
|
<property name="can-focus">False</property>
|
|
<child>
|
|
<object class="GtkBox">
|
|
<property name="orientation">vertical</property>
|
|
<property name="halign">end</property>
|
|
<child>
|
|
<object class="GtkScale" id="grid_scale">
|
|
<property name="width-request">350</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="adjustment">grid_adjustment</property>
|
|
<property name="restrict-to-fill-level">False</property>
|
|
<property name="fill-level">-1</property>
|
|
<property name="round-digits">0</property>
|
|
<property name="digits">0</property>
|
|
<property name="has-origin">False</property>
|
|
<!--
|
|
<signal name="button-release-event" handler="on_grid_scale_changed" swapped="no"/>
|
|
-->
|
|
<signal name="change-value" handler="on_grid_scale_change" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkButton" id="library-toolbar-update">
|
|
<property name="label">gtk-refresh</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">True</property>
|
|
<!--
|
|
<property name="relief">none</property>
|
|
<property name="use-stock">True</property>
|
|
-->
|
|
<signal name="clicked" handler="on_update_clicked" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox" id="library-toolbar-sort">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkSeparator">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="label" translatable="yes">Sort</property>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkCheckButton" id="sort_artist">
|
|
<property name="label" translatable="yes">sort by artist</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">False</property>
|
|
<!--
|
|
<property name="draw-indicator">True</property>
|
|
-->
|
|
<property name="group">sort_year</property>
|
|
<signal name="toggled" handler="on_sort_toggled" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">2</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkCheckButton" id="sort_title">
|
|
<property name="label" translatable="yes">sort by title</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">False</property>
|
|
<!--
|
|
<property name="draw-indicator">True</property>
|
|
-->
|
|
<property name="group">sort_year</property>
|
|
<signal name="toggled" handler="on_sort_toggled" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">3</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkCheckButton" id="sort_year">
|
|
<property name="label" translatable="yes">sort by year</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">False</property>
|
|
<property name="active">True</property>
|
|
<!--
|
|
<property name="draw-indicator">True</property>
|
|
-->
|
|
<signal name="toggled" handler="on_sort_toggled" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">4</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkCheckButton" id="toolbar_sort_order_button">
|
|
<property name="label">gtk-sort-descending</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">False</property>
|
|
<!--
|
|
<property name="use-stock">True</property>
|
|
<property name="draw-indicator">True</property>
|
|
-->
|
|
<property name="active">True</property>
|
|
<signal name="toggled" handler="on_sort_order_toggled" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">5</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">2</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
|
|
|
|
<object class="GtkBox" id="toolbar">
|
|
<property name="orientation">horizontal</property>
|
|
<property name="halign">end</property>
|
|
<property name="spacing">6</property>
|
|
<child>
|
|
<object class="GtkToggleButton" id="toolbar_search_bar">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">True</property>
|
|
<property name="tooltip-text" translatable="yes">Search the library</property>
|
|
<signal name="toggled" handler="on_search_toggled" swapped="no"/>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="icon-name">system-search-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<!--
|
|
<accelerator key="f" signal="activate" modifiers="GDK_CONTROL_MASK"/>
|
|
-->
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">False</property>
|
|
<property name="position">0</property>
|
|
<property name="non-homogeneous">True</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkToggleButton" id="select_button">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">True</property>
|
|
<property name="tooltip-text" translatable="yes">Select multiple albums</property>
|
|
<signal name="toggled" handler="on_select_toggled" swapped="no"/>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="icon-name">object-select-symbolic</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">False</property>
|
|
<property name="position">1</property>
|
|
<property name="non-homogeneous">True</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkMenuButton">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">True</property>
|
|
<property name="tooltip-text" translatable="yes">Settings and actions</property>
|
|
<property name="popover">toolbar_popover</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="icon-name">open-menu-symbolic</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">False</property>
|
|
<property name="position">2</property>
|
|
<property name="non-homogeneous">True</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
|
|
|
|
</object>
|
|
<template class="McgLibraryPanel" parent="AdwBin">
|
|
<child>
|
|
<object class="GtkStack">
|
|
<property name="transition-type">slide-left-right</property>
|
|
<child>
|
|
<object class="GtkBox" id="panel_normal">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkSearchBar" id="filter_bar">
|
|
<!--
|
|
<property name="app-paintable">True</property>
|
|
-->
|
|
<signal name="notify" handler="on_filter_bar_notify" swapped="no"/>
|
|
<child>
|
|
<object class="GtkSearchEntry" id="filter_entry">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<!--
|
|
<property name="primary-icon-name">edit-find-symbolic</property>
|
|
<property name="primary-icon-activatable">False</property>
|
|
<property name="primary-icon-sensitive">False</property>
|
|
-->
|
|
<property name="placeholder-text" translatable="yes">search library</property>
|
|
<signal name="search-changed" handler="on_filter_entry_changed" swapped="no"/>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<object class="GtkStack" id="stack">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="transition-type">crossfade</property>
|
|
<child>
|
|
<object class="GtkBox" id="progress_box">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child type="center">
|
|
<object class="GtkBox">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child type="center">
|
|
<object class="GtkBox">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="halign">center</property>
|
|
<property name="orientation">vertical</property>
|
|
<property name="spacing">10</property>
|
|
<child>
|
|
<object class="GtkImage" id="progress_image">
|
|
<property name="icon-size">large</property>
|
|
<property name="icon-name">image-x-generic-symbolic</property>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkProgressBar" id="progress_bar">
|
|
<property name="width-request">200</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="pulse-step">0</property>
|
|
<property name="show-text">True</property>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="name">page1</property>
|
|
<property name="title">page1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkScrolledWindow" id="scroll">
|
|
<property name="vexpand">true</property>
|
|
<child>
|
|
<object class="GtkGridView" id="library_grid">
|
|
<property name="orientation">vertical</property>
|
|
<!--
|
|
<signal name="activate" handler="on_library_grid_clicked" swapped="no"/>
|
|
<signal name="selection-changed" handler="on_library_grid_selection_changed" swapped="no"/>
|
|
<signal name="size-allocate" handler="on_resize" swapped="no"/>
|
|
-->
|
|
<style>
|
|
<class name="no-bg"/>
|
|
</style>
|
|
<property name="factory">
|
|
<object class="GtkBuilderListItemFactory">
|
|
<property name="bytes">
|
|
<![CDATA[
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<interface>
|
|
<template class="GtkListItem">
|
|
<property name="child">
|
|
<object class="GtkBox">
|
|
<property name="orientation">vertical</property>
|
|
<!--
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="hexpand">false</property>
|
|
<binding name="label">
|
|
<lookup name="title" type="GridItem">
|
|
<lookup name="item">GtkListItem</lookup>
|
|
</lookup>
|
|
</binding>
|
|
</object>
|
|
</child>
|
|
-->
|
|
<child>
|
|
<object class="GtkPicture">
|
|
<property name="content-fit">contain</property>
|
|
<property name="can-shrink">false</property>
|
|
<binding name="tooltip-markup">
|
|
<lookup name="tooltip" type="GridItem">
|
|
<lookup name="item">GtkListItem</lookup>
|
|
</lookup>
|
|
</binding>
|
|
<binding name="paintable">
|
|
<lookup name="cover" type="GridItem">
|
|
<lookup name="item">GtkListItem</lookup>
|
|
</lookup>
|
|
</binding>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</property>
|
|
</template>
|
|
</interface>
|
|
]]>
|
|
</property>
|
|
</object>
|
|
</property>
|
|
</object>
|
|
</child>
|
|
<style>
|
|
<class name="no-bg"/>
|
|
</style>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="name">page0</property>
|
|
<property name="title">page0</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">2</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkRevealer" id="actionbar_revealer">
|
|
<property name="transition-type">none</property>
|
|
<property name="reveal-child">false</property>
|
|
<child>
|
|
<object class="GtkActionBar" id="library-actionbar">
|
|
<child>
|
|
<object class="GtkButton">
|
|
<property name="label" translatable="yes">cancel</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">True</property>
|
|
<signal name="clicked" handler="on_selection_cancel_clicked" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="pack-type">end</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkButton">
|
|
<property name="label" translatable="yes">queue</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">True</property>
|
|
<signal name="clicked" handler="on_selection_add_clicked" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="pack-type">end</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">3</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="name">page0</property>
|
|
<property name="title">page0</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox" id="panel_standalone">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkStack" id="standalone_stack">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="transition-type">crossfade</property>
|
|
<child>
|
|
<object class="GtkSpinner" id="standalone_spinner">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="name">standalone-spinne</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkScrolledWindow" id="standalone_scroll">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="kinetic-scrolling">False</property>
|
|
<property name="overlay-scrolling">False</property>
|
|
<!--
|
|
<signal name="size-allocate" handler="on_standalone_scroll_size_allocate" swapped="no"/>
|
|
-->
|
|
<child>
|
|
<object class="GtkViewport">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<child>
|
|
<object class="GtkImage" id="standalone_image">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<property name="icon-name">gtk-missing-image</property>
|
|
<!--
|
|
<property name="icon_size">6</property>
|
|
-->
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="name">standalone-scroll</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkActionBar" id="library-standalone-actionbar">
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">False</property>
|
|
<child>
|
|
<object class="GtkButton">
|
|
<property name="label" translatable="yes">queue</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">True</property>
|
|
<signal name="clicked" handler="on_standalone_queue_clicked" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="pack-type">end</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
<child>
|
|
<object class="GtkButton">
|
|
<property name="label" translatable="yes">play</property>
|
|
<property name="visible">True</property>
|
|
<property name="can-focus">True</property>
|
|
<property name="receives-default">True</property>
|
|
<signal name="clicked" handler="on_standalone_play_clicked" swapped="no"/>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="pack-type">end</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
<!--
|
|
<packing>
|
|
<property name="name">page1</property>
|
|
<property name="title">page1</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
-->
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</template>
|
|
</interface>
|