]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkicontheme.h
Iterate on the proxies we hold when we change the sorting function and the
[~andy/gtk] / gtk / gtkicontheme.h
index c97d7a130542bab1f0580f9faabfc68bcbd25586..6b62bc51fe5ba88aa4060e67b0fb65bb665c3cdd 100644 (file)
@@ -64,8 +64,11 @@ struct _GtkIconThemeClass
  *   Cannot be used together with %GTK_ICON_LOOKUP_NO_SVG.
  * @GTK_ICON_LOOKUP_USE_BUILTIN: When passed to
  *   gtk_icon_theme_lookup_icon() includes builtin icons
- *   as well as files. For a builtin icon, gdk_icon_info_get_filename()
- *   returns %NULL and you need to call gdk_icon_info_get_builtin_pixbuf().
+ *   as well as files. For a builtin icon, gtk_icon_info_get_filename()
+ *   returns %NULL and you need to call gtk_icon_info_get_builtin_pixbuf().
+ * @GTK_ICON_LOOKUP_GENERIC_FALLBACK: Try to shorten icon name at '-'
+ *   characters before looking at inherited themes. For more general
+ *   fallback, see gtk_icon_theme_choose_icon(). Since 2.12.
  * 
  * Used to specify options for gtk_icon_theme_lookup_icon()
  **/
@@ -73,7 +76,8 @@ typedef enum
 {
   GTK_ICON_LOOKUP_NO_SVG = 1 << 0,
   GTK_ICON_LOOKUP_FORCE_SVG = 1 << 1,
-  GTK_ICON_LOOKUP_USE_BUILTIN = 1 << 2
+  GTK_ICON_LOOKUP_USE_BUILTIN = 1 << 2,
+  GTK_ICON_LOOKUP_GENERIC_FALLBACK = 1 << 3
 } GtkIconLookupFlags;
 
 #define GTK_ICON_THEME_ERROR gtk_icon_theme_error_quark ()
@@ -90,7 +94,16 @@ typedef enum {
   GTK_ICON_THEME_FAILED
 } GtkIconThemeError;
 
-GQuark gtk_icon_theme_error_quark (void) G_GNUC_CONST;
+GQuark gtk_icon_theme_error_quark (void);
+
+#ifdef G_OS_WIN32
+/* Reserve old name for DLL ABI backward compatibility */
+#define gtk_icon_theme_set_search_path gtk_icon_theme_set_search_path_utf8
+#define gtk_icon_theme_get_search_path gtk_icon_theme_get_search_path_utf8
+#define gtk_icon_theme_append_search_path gtk_icon_theme_append_search_path_utf8
+#define gtk_icon_theme_prepend_search_path gtk_icon_theme_prepend_search_path_utf8
+#define gtk_icon_info_get_filename gtk_icon_info_get_filename_utf8
+#endif
 
 GType         gtk_icon_theme_get_type              (void) G_GNUC_CONST;
 
@@ -122,6 +135,10 @@ GtkIconInfo * gtk_icon_theme_lookup_icon           (GtkIconTheme
                                                    const gchar                 *icon_name,
                                                    gint                         size,
                                                    GtkIconLookupFlags           flags);
+GtkIconInfo * gtk_icon_theme_choose_icon           (GtkIconTheme                *icon_theme,
+                                                   const gchar                 *icon_names[],
+                                                   gint                         size,
+                                                   GtkIconLookupFlags           flags);
 GdkPixbuf *   gtk_icon_theme_load_icon             (GtkIconTheme                *icon_theme,
                                                    const gchar                 *icon_name,
                                                    gint                         size,
@@ -130,6 +147,7 @@ GdkPixbuf *   gtk_icon_theme_load_icon             (GtkIconTheme
 
 GList *       gtk_icon_theme_list_icons            (GtkIconTheme                *icon_theme,
                                                    const gchar                 *context);
+GList *       gtk_icon_theme_list_contexts         (GtkIconTheme                *icon_theme);
 char *        gtk_icon_theme_get_example_icon_name (GtkIconTheme                *icon_theme);
 
 gboolean      gtk_icon_theme_rescan_if_needed      (GtkIconTheme                *icon_theme);
@@ -138,7 +156,7 @@ void       gtk_icon_theme_add_builtin_icon  (const gchar *icon_name,
                                             gint         size,
                                             GdkPixbuf   *pixbuf);
 
-GType         gtk_icon_info_get_type (void);
+GType         gtk_icon_info_get_type (void) G_GNUC_CONST;
 GtkIconInfo  *gtk_icon_info_copy     (GtkIconInfo *icon_info);
 void          gtk_icon_info_free     (GtkIconInfo *icon_info);
 
@@ -158,6 +176,10 @@ gboolean              gtk_icon_info_get_attach_points (GtkIconInfo   *icon_info,
                                                       gint          *n_points);
 G_CONST_RETURN gchar *gtk_icon_info_get_display_name  (GtkIconInfo   *icon_info);
 
+/* Non-public methods */
+void _gtk_icon_theme_check_reload                     (GdkDisplay *display);
+void _gtk_icon_theme_ensure_builtin_cache             (void);
+
 G_END_DECLS
 
 #endif /* __GTK_ICON_THEME_H__ */