| 1 | /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ | 
| 2 |  | 
| 3 | /* GtkPlacesSidebar - sidebar widget for places in the filesystem | 
| 4 |  * | 
| 5 |  * This program is free software: you can redistribute it and/or modify | 
| 6 |  * it under the terms of the GNU Lesser General Public License as published | 
| 7 |  * by the Free Software Foundation, either version 2.1 of the License, or | 
| 8 |  * (at your option) any later version. | 
| 9 |  * | 
| 10 |  * This program is distributed in the hope that it will be useful, | 
| 11 |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| 12 |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
| 13 |  * GNU 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 |  * This code comes from Nautilus, GNOME’s file manager. | 
| 19 |  * | 
| 20 |  * Authors : Mr Jamie McCracken (jamiemcc at blueyonder dot co dot uk) | 
| 21 |  *           Federico Mena Quintero <federico@gnome.org> | 
| 22 |  */ | 
| 23 |  | 
| 24 | #ifndef __GTK_PLACES_SIDEBAR_H__ | 
| 25 | #define  | 
| 26 |  | 
| 27 | #if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) | 
| 28 | #error "Only <gtk/gtk.h> can be included directly." | 
| 29 | #endif | 
| 30 |  | 
| 31 | #include <gtk/gtkwidget.h> | 
| 32 |  | 
| 33 | G_BEGIN_DECLS | 
| 34 |  | 
| 35 | #define 			(gtk_places_sidebar_get_type ()) | 
| 36 | #define (obj)			(G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_PLACES_SIDEBAR, GtkPlacesSidebar)) | 
| 37 | #define (klass)		(G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_PLACES_SIDEBAR, GtkPlacesSidebarClass)) | 
| 38 | #define (obj)		(G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_PLACES_SIDEBAR)) | 
| 39 | #define (klass)	(G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_PLACES_SIDEBAR)) | 
| 40 | #define (obj)	(G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_PLACES_SIDEBAR, GtkPlacesSidebarClass)) | 
| 41 |  | 
| 42 | typedef struct  ; | 
| 43 | typedef struct  ; | 
| 44 |  | 
| 45 | /** | 
| 46 |  * GtkPlacesOpenFlags: | 
| 47 |  * @GTK_PLACES_OPEN_NORMAL: This is the default mode that #GtkPlacesSidebar uses if no other flags | 
| 48 |  *  are specified.  It indicates that the calling application should open the selected location | 
| 49 |  *  in the normal way, for example, in the folder view beside the sidebar. | 
| 50 |  * @GTK_PLACES_OPEN_NEW_TAB: When passed to gtk_places_sidebar_set_open_flags(), this indicates | 
| 51 |  *  that the application can open folders selected from the sidebar in new tabs.  This value | 
| 52 |  *  will be passed to the #GtkPlacesSidebar::open-location signal when the user selects | 
| 53 |  *  that a location be opened in a new tab instead of in the standard fashion. | 
| 54 |  * @GTK_PLACES_OPEN_NEW_WINDOW: Similar to @GTK_PLACES_OPEN_NEW_TAB, but indicates that the application | 
| 55 |  *  can open folders in new windows. | 
| 56 |  * | 
| 57 |  * These flags serve two purposes.  First, the application can call gtk_places_sidebar_set_open_flags() | 
| 58 |  * using these flags as a bitmask.  This tells the sidebar that the application is able to open | 
| 59 |  * folders selected from the sidebar in various ways, for example, in new tabs or in new windows in | 
| 60 |  * addition to the normal mode. | 
| 61 |  * | 
| 62 |  * Second, when one of these values gets passed back to the application in the | 
| 63 |  * #GtkPlacesSidebar::open-location signal, it means that the application should | 
| 64 |  * open the selected location in the normal way, in a new tab, or in a new | 
| 65 |  * window.  The sidebar takes care of determining the desired way to open the location, | 
| 66 |  * based on the modifier keys that the user is pressing at the time the selection is made. | 
| 67 |  * | 
| 68 |  * If the application never calls gtk_places_sidebar_set_open_flags(), then the sidebar will only | 
| 69 |  * use #GTK_PLACES_OPEN_NORMAL in the #GtkPlacesSidebar::open-location signal.  This is the | 
| 70 |  * default mode of operation. | 
| 71 |  */ | 
| 72 | typedef enum { | 
| 73 |   GTK_PLACES_OPEN_NORMAL     = 1 << 0, | 
| 74 |   GTK_PLACES_OPEN_NEW_TAB    = 1 << 1, | 
| 75 |   GTK_PLACES_OPEN_NEW_WINDOW = 1 << 2 | 
| 76 | } GtkPlacesOpenFlags; | 
| 77 |  | 
| 78 | GDK_AVAILABLE_IN_3_10 | 
| 79 | GType                                 (void) G_GNUC_CONST; | 
| 80 | GDK_AVAILABLE_IN_3_10 | 
| 81 | GtkWidget *                                (void); | 
| 82 |  | 
| 83 | GDK_AVAILABLE_IN_3_10 | 
| 84 | GtkPlacesOpenFlags              (GtkPlacesSidebar   *); | 
| 85 | GDK_AVAILABLE_IN_3_10 | 
| 86 | void                            (GtkPlacesSidebar   *, | 
| 87 |                                                                   GtkPlacesOpenFlags  flags); | 
| 88 |  | 
| 89 | GDK_AVAILABLE_IN_3_10 | 
| 90 | GFile *                           (GtkPlacesSidebar   *); | 
| 91 | GDK_AVAILABLE_IN_3_10 | 
| 92 | void                              (GtkPlacesSidebar   *, | 
| 93 |                                                                   GFile              *location); | 
| 94 |  | 
| 95 | GDK_AVAILABLE_IN_3_18 | 
| 96 | gboolean                       (GtkPlacesSidebar   *); | 
| 97 | GDK_AVAILABLE_IN_3_18 | 
| 98 | void                           (GtkPlacesSidebar   *, | 
| 99 |                                                                   gboolean            show_recent); | 
| 100 |  | 
| 101 | GDK_AVAILABLE_IN_3_10 | 
| 102 | gboolean                      (GtkPlacesSidebar   *); | 
| 103 | GDK_AVAILABLE_IN_3_10 | 
| 104 | void                          (GtkPlacesSidebar   *, | 
| 105 |                                                                   gboolean            show_desktop); | 
| 106 |  | 
| 107 | GDK_DEPRECATED_IN_3_18 | 
| 108 | gboolean            (GtkPlacesSidebar   *); | 
| 109 | GDK_DEPRECATED_IN_3_18 | 
| 110 | void                (GtkPlacesSidebar   *, | 
| 111 |                                                                   gboolean            show_connect_to_server); | 
| 112 | GDK_AVAILABLE_IN_3_14 | 
| 113 | gboolean               (GtkPlacesSidebar   *); | 
| 114 | GDK_AVAILABLE_IN_3_14 | 
| 115 | void                   (GtkPlacesSidebar   *, | 
| 116 |                                                                   gboolean            show_enter_location); | 
| 117 |  | 
| 118 | GDK_AVAILABLE_IN_3_12 | 
| 119 | void                            (GtkPlacesSidebar   *, | 
| 120 |                                                                   gboolean            local_only); | 
| 121 | GDK_AVAILABLE_IN_3_12 | 
| 122 | gboolean                        (GtkPlacesSidebar   *); | 
| 123 |  | 
| 124 |  | 
| 125 | GDK_AVAILABLE_IN_3_10 | 
| 126 | void                              (GtkPlacesSidebar   *, | 
| 127 |                                                                   GFile              *location); | 
| 128 | GDK_AVAILABLE_IN_3_10 | 
| 129 | void                           (GtkPlacesSidebar   *, | 
| 130 |                                                                   GFile              *location); | 
| 131 | GDK_AVAILABLE_IN_3_10 | 
| 132 | GSList *                        (GtkPlacesSidebar   *); | 
| 133 |  | 
| 134 | GDK_AVAILABLE_IN_3_10 | 
| 135 | GFile *                       (GtkPlacesSidebar   *, | 
| 136 |                                                                   gint                n); | 
| 137 | GDK_AVAILABLE_IN_3_18 | 
| 138 | void                  (GtkPlacesSidebar   *, | 
| 139 |                                                                   gboolean            visible, | 
| 140 |                                                                   GdkDragContext     *context); | 
| 141 | GDK_AVAILABLE_IN_3_18 | 
| 142 | gboolean                        (GtkPlacesSidebar   *); | 
| 143 | GDK_AVAILABLE_IN_3_18 | 
| 144 | void                            (GtkPlacesSidebar   *, | 
| 145 |                                                                   gboolean            show_trash); | 
| 146 |  | 
| 147 | GDK_AVAILABLE_IN_3_18 | 
| 148 | void                  (GtkPlacesSidebar   *, | 
| 149 |                                                                   gboolean            show_other_locations); | 
| 150 | GDK_AVAILABLE_IN_3_18 | 
| 151 | gboolean              (GtkPlacesSidebar   *); | 
| 152 |  | 
| 153 | GDK_AVAILABLE_IN_3_22 | 
| 154 | void                  (GtkPlacesSidebar   *, | 
| 155 |                                                                    gboolean            show_starred_location); | 
| 156 | GDK_AVAILABLE_IN_3_22 | 
| 157 | gboolean              (GtkPlacesSidebar   *); | 
| 158 | G_END_DECLS | 
| 159 |  | 
| 160 | #endif /* __GTK_PLACES_SIDEBAR_H__ */ | 
| 161 |  |