mirror of
				https://github.com/johrpan/musicus.git
				synced 2025-10-26 19:57:25 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			117 lines
		
	
	
		
			No EOL
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			117 lines
		
	
	
		
			No EOL
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| using Gtk 4.0;
 | |
| using Adw 1;
 | |
| 
 | |
| template $MusicusHomePage : Adw.NavigationPage {
 | |
|   title: _("Musicus");
 | |
|   tag: "home";
 | |
| 
 | |
|   Gtk.Overlay {
 | |
|     Adw.ToolbarView {
 | |
|       [top]
 | |
|       Adw.HeaderBar header_bar {
 | |
|         [end]
 | |
|         MenuButton {
 | |
|           icon-name: "open-menu-symbolic";
 | |
|           menu-model: primary_menu;
 | |
|         }
 | |
|       }
 | |
| 
 | |
|       [top]
 | |
|       Adw.Clamp {
 | |
|         maximum-size: 1000;
 | |
|         tightening-threshold: 600;
 | |
| 
 | |
|         $MusicusSearchEntry search_entry {
 | |
|           activate => $select() swapped;
 | |
|         }
 | |
|       }
 | |
| 
 | |
|       Gtk.ScrolledWindow {
 | |
|         hscrollbar-policy: never;
 | |
| 
 | |
|         Adw.Clamp {
 | |
|           maximum-size: 1000;
 | |
|           tightening-threshold: 600;
 | |
| 
 | |
|           Gtk.Box {
 | |
|             orientation: vertical;
 | |
|             margin-start: 12;
 | |
|             margin-end: 12;
 | |
|             margin-top: 24;
 | |
|             margin-bottom: 68;
 | |
| 
 | |
|             Gtk.Label {
 | |
|               styles ["heading"]
 | |
|               visible: bind persons_flow_box.visible; 
 | |
|               halign: start;
 | |
|               label: _("Composers and performers");
 | |
|             }
 | |
| 
 | |
|             Gtk.FlowBox persons_flow_box {
 | |
|               margin-top: 12;
 | |
|               margin-bottom: 24;
 | |
|               column-spacing: 12;
 | |
|               row-spacing: 12;
 | |
|               homogeneous: true;
 | |
|               selection-mode: none;
 | |
|             }
 | |
| 
 | |
|             Gtk.Label {
 | |
|               styles ["heading"]
 | |
|               visible: bind works_flow_box.visible;
 | |
|               halign: start;
 | |
|               label: _("Works");
 | |
|             }
 | |
| 
 | |
|             Gtk.FlowBox works_flow_box {
 | |
|               margin-top: 12;
 | |
|               margin-bottom: 24;
 | |
|               column-spacing: 12;
 | |
|               row-spacing: 12;
 | |
|               homogeneous: true;
 | |
|               selection-mode: none;
 | |
|             }
 | |
| 
 | |
|             Gtk.Label {
 | |
|               styles ["heading"]
 | |
|               visible: bind recordings_flow_box.visible;
 | |
|               halign: start;
 | |
|               label: _("Recordings");
 | |
|             }
 | |
| 
 | |
|             Gtk.FlowBox recordings_flow_box {
 | |
|               margin-top: 12;
 | |
|               margin-bottom: 24;
 | |
|               column-spacing: 12;
 | |
|               row-spacing: 12;
 | |
|               homogeneous: true;
 | |
|               selection-mode: none;
 | |
|             }
 | |
|           }
 | |
|         }
 | |
|       }
 | |
|     }
 | |
| 
 | |
|     [overlay]
 | |
|     Gtk.Button play_button {
 | |
|       styles ["pill", "suggested-action"]
 | |
|       halign: end;
 | |
|       valign: end;
 | |
|       margin-end: 24;
 | |
|       margin-bottom: 24;
 | |
|       label: _("Play music");
 | |
|       clicked => $play() swapped;
 | |
|     }
 | |
|   }
 | |
| }
 | |
| 
 | |
| menu primary_menu {
 | |
|   item {
 | |
|     label: _("_Preferences");
 | |
|     action: "app.preferences";
 | |
|   }
 | |
|   item {
 | |
|     label: _("_About Musicus");
 | |
|     action: "app.about";
 | |
|   }
 | |
| } |