]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkrecentchooser.c
filechooser: Show FUSE mounted locations in shortcuts
[~andy/gtk] / gtk / gtkrecentchooser.c
index d381df328aa2a21ea63620e5047063b263aa4fd4..bbaa4c61356283833a41b38395cf7dd786319679 100644 (file)
@@ -14,9 +14,7 @@
  * Lesser General Public License for more details.
  *
  * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
  */
 
 #include "config.h"
@@ -30,8 +28,6 @@
 #include "gtktypebuiltins.h"
 #include "gtkprivate.h"
 #include "gtkmarshalers.h"
-#include "gtkalias.h"
-
 
 /**
  * SECTION:gtkrecentchooser
@@ -58,7 +54,6 @@ enum
   LAST_SIGNAL
 };
 
-static void     gtk_recent_chooser_class_init         (gpointer          g_iface);
 static gboolean recent_chooser_has_show_numbers       (GtkRecentChooser *chooser);
 
 static GQuark      quark_gtk_related_action               = 0;
@@ -69,35 +64,21 @@ static const gchar gtk_use_action_appearance_key[]        = "gtk-use-action-appe
 
 static guint chooser_signals[LAST_SIGNAL] = { 0, };
 
-GType
-gtk_recent_chooser_get_type (void)
-{
-  static GType chooser_type = 0;
-  
-  if (!chooser_type)
-    {
-      chooser_type = g_type_register_static_simple (G_TYPE_INTERFACE,
-                                                   I_("GtkRecentChooser"),
-                                                   sizeof (GtkRecentChooserIface),
-                                                   (GClassInitFunc) gtk_recent_chooser_class_init,
-                                                   0, NULL, 0);
-      
-      g_type_interface_add_prerequisite (chooser_type, G_TYPE_OBJECT);
-    }
-  
-  return chooser_type;
-}
+
+typedef GtkRecentChooserIface GtkRecentChooserInterface;
+G_DEFINE_INTERFACE (GtkRecentChooser, gtk_recent_chooser, G_TYPE_OBJECT);
+
 
 static void
-gtk_recent_chooser_class_init (gpointer g_iface)
+gtk_recent_chooser_default_init (GtkRecentChooserInterface *iface)
 {
-  GType iface_type = G_TYPE_FROM_INTERFACE (g_iface);
+  GType iface_type = G_TYPE_FROM_INTERFACE (iface);
 
   quark_gtk_related_action        = g_quark_from_static_string (gtk_related_action_key);
   quark_gtk_use_action_appearance = g_quark_from_static_string (gtk_use_action_appearance_key);
   
   /**
-   * GtkRecentChooser::selection-changed
+   * GtkRecentChooser::selection-changed:
    * @chooser: the object which received the signal
    *
    * This signal is emitted when there is a change in the set of
@@ -117,7 +98,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
                   G_TYPE_NONE, 0);
    
   /**
-   * GtkRecentChooser::item-activated
+   * GtkRecentChooser::item-activated:
    * @chooser: the object which received the signal
    *
    * This signal is emitted when the user "activates" a recent item
@@ -144,7 +125,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_object ("recent-manager",
                                                            P_("Recent Manager"),
                                                            P_("The RecentManager object to use"),
@@ -159,7 +140,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_boolean ("show-private",
                                                             P_("Show Private"),
                                                             P_("Whether the private items should be displayed"),
@@ -173,7 +154,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_boolean ("show-tips",
                                                             P_("Show Tooltips"),
                                                             P_("Whether there should be a tooltip on the item"),
@@ -186,7 +167,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_boolean ("show-icons",
                                                             P_("Show Icons"),
                                                             P_("Whether there should be an icon near the item"),
@@ -202,7 +183,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_boolean ("show-not-found",
                                                             P_("Show Not Found"),
                                                             P_("Whether the items pointing to unavailable resources should be displayed"),
@@ -215,7 +196,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_boolean ("select-multiple",
                                                             P_("Select Multiple"),
                                                             P_("Whether to allow multiple items to be selected"),
@@ -229,7 +210,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_boolean ("local-only",
                                                             P_("Local only"),
                                                             P_("Whether the selected resource(s) should be limited to local file: URIs"),
@@ -246,7 +227,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_int ("limit",
                                                         P_("Limit"),
                                                         P_("The maximum number of items to be displayed"),
@@ -261,7 +242,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_enum ("sort-type",
                                                          P_("Sort Type"),
                                                          P_("The sorting order of the items displayed"),
@@ -276,7 +257,7 @@ gtk_recent_chooser_class_init (gpointer g_iface)
    *
    * Since: 2.10
    */
-  g_object_interface_install_property (g_iface,
+  g_object_interface_install_property (iface,
                                       g_param_spec_object ("filter",
                                                            P_("Filter"),
                                                            P_("The current filter for selecting which resources are displayed"),
@@ -876,8 +857,9 @@ gtk_recent_chooser_get_items (GtkRecentChooser *chooser)
  *
  * Since the returned array is %NULL terminated, @length may be %NULL.
  * 
- * Return value: A newly allocated, %NULL terminated array of strings. Use
- *   g_strfreev() to free it.
+ * Return value: (array length=length zero-terminated=1) (transfer full):
+ *     A newly allocated, %NULL-terminated array of strings. Use
+ *     g_strfreev() to free it.
  *
  * Since: 2.10
  */
@@ -911,10 +893,7 @@ gtk_recent_chooser_get_uris (GtkRecentChooser *chooser,
   if (length)
     *length = i;
   
-  g_list_foreach (items,
-                 (GFunc) gtk_recent_info_unref,
-                 NULL);
-  g_list_free (items);
+  g_list_free_full (items, (GDestroyNotify) gtk_recent_info_unref);
   
   return retval;
 }
@@ -1007,7 +986,7 @@ gtk_recent_chooser_set_filter (GtkRecentChooser *chooser,
  * Gets the #GtkRecentFilter object currently used by @chooser to affect
  * the display of the recently used resources.
  *
- * Return value: a #GtkRecentFilter object.
+ * Return value: (transfer none): a #GtkRecentFilter object.
  *
  * Since: 2.10
  */
@@ -1148,6 +1127,3 @@ _gtk_recent_chooser_get_use_action_appearance (GtkRecentChooser *recent_chooser)
 {
   return !GPOINTER_TO_INT (g_object_get_qdata (G_OBJECT (recent_chooser), quark_gtk_use_action_appearance));
 }
-
-#define __GTK_RECENT_CHOOSER_C__
-#include "gtkaliasdef.c"