Additions
authorMatthias Clasen <matthiasc@src.gnome.org>
Mon, 11 Feb 2008 07:18:56 +0000 (07:18 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Mon, 11 Feb 2008 07:18:56 +0000 (07:18 +0000)
svn path=/trunk/; revision=6494

docs/reference/ChangeLog
docs/reference/gio/gio-docs.xml
docs/reference/gio/gio-sections.txt
docs/reference/gio/overview.xml

index 433e63e..b24f319 100644 (file)
@@ -1,3 +1,9 @@
+2008-02-11  Matthias Clasen <mclasen@redhat.com>
+
+       * gio/gio-docs.xml:
+       * gio/gio-sections.txt:
+       * gio/overview.xml: Documentation additions
+
 2008-02-10  Philip Withnall  <pwithnall@svn.gnome.org>
 
        * glib/tmpl/modules.sgml: Improve the documentation for
index 9a48942..2697d4e 100644 (file)
@@ -92,6 +92,7 @@
        <title>Extending GIO</title>
         <xi:include href="xml/gvfs.xml"/>
        <xi:include href="xml/giomodule.xml"/>
+       <xi:include href="xml/extensionpoints.xml"/>
     </chapter>
   </part>
 
index 9400d11..99a0731 100644 (file)
@@ -2,6 +2,7 @@
 <FILE>gvfs</FILE>
 <TITLE>GVfs</TITLE>
 GVfs
+G_VFS_EXTENSION_POINT_NAME
 g_vfs_get_file_for_path
 g_vfs_get_file_for_uri
 g_vfs_parse_name
@@ -69,6 +70,7 @@ g_file_query_info_async
 g_file_query_info_finish
 g_file_query_exists
 g_file_query_filesystem_info
+g_file_query_default_handler
 g_file_find_enclosing_mount
 g_file_find_enclosing_mount_async
 g_file_find_enclosing_mount_finish
@@ -758,6 +760,7 @@ g_seekable_get_type
 <FILE>gvolumemonitor</FILE>
 <TITLE>GVolumeMonitor</TITLE>
 GVolumeMonitor
+G_VOLUME_MONITOR_EXTENSION_POINT_NAME
 g_volume_monitor_get
 g_volume_monitor_get_connected_drives
 g_volume_monitor_get_volumes
@@ -817,6 +820,7 @@ g_volume_get_icon
 g_volume_get_drive
 g_volume_get_mount
 g_volume_can_mount
+g_volume_should_automount
 g_volume_mount
 g_volume_mount_finish
 g_volume_can_eject
@@ -1010,6 +1014,7 @@ g_app_info_get_all
 g_app_info_get_all_for_type
 g_app_info_get_default_for_type
 g_app_info_get_default_for_uri_scheme
+g_app_info_launch_default_for_uri
 g_app_launch_context_get_display
 g_app_launch_context_get_startup_notify_id
 g_app_launch_context_launch_failed
@@ -1155,6 +1160,9 @@ g_desktop_app_info_new_from_filename
 g_desktop_app_info_new
 g_desktop_app_info_get_is_hidden
 g_desktop_app_info_set_desktop_env
+GDesktopAppInfoLookup
+G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME
+g_desktop_app_info_lookup_get_default_for_uri_scheme
 <SUBSECTION Standard>
 GDesktopAppInfoClass
 G_TYPE_DESKTOP_APP_INFO
@@ -1163,8 +1171,14 @@ G_DESKTOP_APP_INFO_CLASS
 G_IS_DESKTOP_APP_INFO
 G_IS_DESKTOP_APP_INFO_CLASS
 G_DESKTOP_APP_INFO_GET_CLASS
+GDesktopAppInfoLookupIface
+G_DESKTOP_APP_INFO_LOOKUP
+G_TYPE_DESKTOP_APP_INFO_LOOKUP
+G_DESKTOP_APP_INFO_LOOKUP_GET_IFACE
+G_IS_DESKTOP_APP_INFO_LOOKUP
 <SUBSECTION Private>
 g_desktop_app_info_get_type
+g_desktop_app_info_lookup_get_type
 </SECTION>
 
 <SECTION>
@@ -1186,3 +1200,23 @@ G_IO_MODULE_GET_CLASS
 <SUBSECTION Private>
 g_io_module_get_type
 </SECTION>
+
+<SECTION>
+<FILE>extensionpoints</FILE>
+<TITLE>Extension Points</TITLE>
+GIOExtension
+GIOExtensionPoint
+g_io_extension_get_name
+g_io_extension_get_priority
+g_io_extension_get_type
+g_io_extension_point_get_extension_by_name
+g_io_extension_point_get_extensions
+g_io_extension_point_get_required_type
+g_io_extension_point_implement
+g_io_extension_point_lookup
+g_io_extension_point_register
+g_io_extension_point_set_required_type
+g_io_extension_ref_class
+</SECTION>
+
+
index 5ae6ccc..bf9088b 100644 (file)
     </formalpara>
 
     <formalpara>
+      <title><envar>GIO_USE_URI_ASSOCIATION</envar></title>
+
+      <para>
+        This variable can be set to the name of a #GDesktopAppInfoLookup
+        implementation to override the dfeault for debugging purposes.
+        GIO does not include a #GDesktopAppInfoLookup implementation,
+        the GConf-based implementation in the gvfs module has the name
+        "gconf".  
+      </para>
+    </formalpara>
+
+    <formalpara>
       <title><envar>GVFS_INOTIFY_DIAG</envar></title>
 
       <para>
 
   </chapter>
 
+  <chapter id="gio-extension-points">
+    <title>Extending GIO</title>
+
+    <para>
+      A lot of the functionality that is accessible through GIO
+      is implemented in loadable modules, and modules provide a convenient
+      way to extend GIO. In addition to the #GIOModule API which supports 
+      writing such modules, GIO has a mechanism to define extension points,
+      and register implementations thereof, see #GIOExtensionPoint.
+    </para>
+    <para>
+      The following extension points are currently defined by GIO:
+    </para>
+
+    <formalpara>
+       <title>G_VFS_EXTENSION_POINT_NAME</title>
+
+       <para>
+          Allows to override the functionality of the #GVfs class.
+          Implementations of this extension point must be derived from #GVfs.
+          GIO uses the implementation with the highest priority that is active,
+          see g_vfs_is_active().
+       </para>
+       <para>
+          GIO implements this extension point for local files, gvfs contains
+          an implementation that supports all the backends in gvfs.
+       </para>
+   </formalpara>
+
+   <formalpara>
+      <title>G_VOLUME_MONITOR_EXTENSION_POINT_NAME</title>
+
+      <para>
+         Allows to add more volume monitors.
+         Implementations of this extension point must be derived from
+         #GVolumeMonitor. GIO uses all registered extensions.
+      </para>
+      <para>
+        gvfs contains an implementation that works together with the #GVfs
+        implementation in gvfs.
+      </para>
+   </formalpara>
+
+   <formalpara>
+      <title>G_NATIVE_VOLUME_MONITOR_EXTENSION_POINT_NAME</title>
+
+      <para>
+         Allows to override the 'native' volume monitor.
+         Implementations of this extension point must be derived from
+         #GNativeVolumeMonitor. GIO uses the implementation with
+         the highest priority that is supported, as determined by the
+         is_supported() vfunc in #GVolumeMonitorClass.
+      </para>
+      <para>
+         GIO implements this extension point for local mounts, 
+         gvfs contains a hal-based implementation. 
+      </para>
+   </formalpara>
+
+   <formalpara>
+      <title>G_LOCAL_FILE_MONITOR_EXTENSION_POINT_NAME</title>
+
+      <para>
+        Allows to override the file monitor implementation for 
+        local files. Implementations of this extension point must 
+        be derived from #GLocalFileMonitor. GIO uses the implementation 
+        with the highest priority that is supported, as determined by the
+        is_supported() vfunc in #GLocalFileMonitorClass.
+      </para>
+      <para>
+        GIO uses this extension point internally, to switch between
+        its fam-based and inotify-based file monitoring implementations.
+      </para>
+   </formalpara>
+
+   <formalpara>
+      <title>G_LOCAL_DIRECTORY_MONITOR_EXTENSION_POINT_NAME</title>
+
+      <para>
+        Allows to override the directory monitor implementation for 
+        local files. Implementations of this extension point must be 
+        derived from #GLocalDirectoryMonitor. GIO uses the implementation
+        with the highest priority that is supported, as determined by the
+        is_supported() vfunc in #GLocalDirectoryMonitorClass.
+      </para>
+      <para>
+        GIO uses this extension point internally, to switch between
+        its fam-based and inotify-based directory monitoring implementations.
+      </para>
+   </formalpara>
+
+   <formalpara>
+      <title>G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME</title>
+
+      <para>
+        Unix-only. Allows to provide a way to associate default handlers
+        with URI schemes. Implementations of this extension point must 
+        implement the #GDesktopAppInfoLookup interface. GIO uses the 
+        implementation with the highest priority.
+      </para>
+      <para>
+        gvfs contains a GConf-based implementation that uses the 
+        same GConf keys as gnome-vfs.
+      </para>
+   </formalpara>
+  </chapter>
 </part>