1 /* gtksidebarrowprivate.h 2 * 3 * Copyright (C) 2015 Carlos Soriano <csoriano@gnome.org> 4 * 5 * This file is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU Lesser General Public License as 7 * published by the Free Software Foundation; either version 2.1 of the 8 * License, or (at your option) any later version. 9 * 10 * This file is distributed in the hope that it will be useful, but 11 * WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public License 16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 17 */ 18 #ifndef GTK_SIDEBAR_ROW_PRIVATE_H 19 #define GTK_SIDEBAR_ROW_PRIVATE_H 20 21 #include <glib.h> 22 #include "gtklistbox.h" 23 24 G_BEGIN_DECLS 25 26 #define GTK_TYPE_SIDEBAR_ROW (gtk_sidebar_row_get_type()) 27 #define GTK_SIDEBAR_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_SIDEBAR_ROW, GtkSidebarRow)) 28 #define GTK_SIDEBAR_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_SIDEBAR_ROW, GtkSidebarRowClass)) 29 #define GTK_IS_SIDEBAR_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_SIDEBAR_ROW)) 30 #define GTK_IS_SIDEBAR_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_SIDEBAR_ROW)) 31 #define GTK_SIDEBAR_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_SIDEBAR_ROW, GtkSidebarRowClass)) 32 33 typedef struct _GtkSidebarRow GtkSidebarRow; 34 typedef struct _GtkSidebarRowClass GtkSidebarRowClass; 35 36 struct _GtkSidebarRowClass 37 { 38 GtkListBoxRowClass parent; 39 }; 40 41 GType gtk_sidebar_row_get_type (void) G_GNUC_CONST; 42 43 GtkSidebarRow *gtk_sidebar_row_new (void); 44 GtkSidebarRow *gtk_sidebar_row_clone (GtkSidebarRow *self); 45 46 /* Use these methods instead of gtk_widget_hide/show to use an animation */ 47 void gtk_sidebar_row_hide (GtkSidebarRow *self, 48 gboolean inmediate); 49 void gtk_sidebar_row_reveal (GtkSidebarRow *self); 50 51 GtkWidget *gtk_sidebar_row_get_eject_button (GtkSidebarRow *self); 52 GtkWidget *gtk_sidebar_row_get_event_box (GtkSidebarRow *self); 53 void gtk_sidebar_row_set_start_icon (GtkSidebarRow *self, 54 GIcon *icon); 55 void gtk_sidebar_row_set_end_icon (GtkSidebarRow *self, 56 GIcon *icon); 57 void gtk_sidebar_row_set_busy (GtkSidebarRow *row, 58 gboolean is_busy); 59 60 G_END_DECLS 61 62 #endif /* GTK_SIDEBAR_ROW_PRIVATE_H */ 63