summaryrefslogtreecommitdiff
path: root/libnautilus-extension
diff options
context:
space:
mode:
Diffstat (limited to 'libnautilus-extension')
-rw-r--r--libnautilus-extension/nautilus-column-provider.c10
-rw-r--r--libnautilus-extension/nautilus-column-provider.h8
-rw-r--r--libnautilus-extension/nautilus-column.c13
-rw-r--r--libnautilus-extension/nautilus-extension-types.h31
-rw-r--r--libnautilus-extension/nautilus-file-info.c10
-rw-r--r--libnautilus-extension/nautilus-file-info.h46
-rw-r--r--libnautilus-extension/nautilus-info-provider.c12
-rw-r--r--libnautilus-extension/nautilus-info-provider.h11
-rw-r--r--libnautilus-extension/nautilus-location-widget-provider.c10
-rw-r--r--libnautilus-extension/nautilus-location-widget-provider.h8
-rw-r--r--libnautilus-extension/nautilus-menu-item.c14
-rw-r--r--libnautilus-extension/nautilus-menu-provider.c10
-rw-r--r--libnautilus-extension/nautilus-menu-provider.h10
-rw-r--r--libnautilus-extension/nautilus-menu.c11
-rw-r--r--libnautilus-extension/nautilus-property-page-provider.c10
-rw-r--r--libnautilus-extension/nautilus-property-page-provider.h12
-rw-r--r--libnautilus-extension/nautilus-property-page.c13
17 files changed, 231 insertions, 8 deletions
diff --git a/libnautilus-extension/nautilus-column-provider.c b/libnautilus-extension/nautilus-column-provider.c
index 230575b19..7732592da 100644
--- a/libnautilus-extension/nautilus-column-provider.c
+++ b/libnautilus-extension/nautilus-column-provider.c
@@ -26,6 +26,16 @@
#include <glib-object.h>
+/**
+ * SECTION:nautilus-column-provider
+ * @title: NautilusColumnProvider
+ * @short_description: Interface to provide additional list view columns
+ * @include: libnautilus-extension/nautilus-column-provider.h
+ *
+ * #NautilusColumnProvider allows extension to provide additional columns
+ * in the file manager list view.
+ */
+
static void
nautilus_column_provider_base_init (gpointer g_class)
{
diff --git a/libnautilus-extension/nautilus-column-provider.h b/libnautilus-extension/nautilus-column-provider.h
index 1ab6b7052..dd6c8e1f0 100644
--- a/libnautilus-extension/nautilus-column-provider.h
+++ b/libnautilus-extension/nautilus-column-provider.h
@@ -44,6 +44,14 @@ G_BEGIN_DECLS
typedef struct _NautilusColumnProvider NautilusColumnProvider;
typedef struct _NautilusColumnProviderIface NautilusColumnProviderIface;
+/**
+ * NautilusColumnProviderIface:
+ * @g_iface: The parent interface.
+ * @get_columns: Returns a #GList of #NautilusColumn.
+ * See nautilus_column_provider_get_columns() for details.
+ *
+ * Interface for extensions to provide additional list view columns.
+ */
struct _NautilusColumnProviderIface {
GTypeInterface g_iface;
diff --git a/libnautilus-extension/nautilus-column.c b/libnautilus-extension/nautilus-column.c
index 824792528..29e6149cd 100644
--- a/libnautilus-extension/nautilus-column.c
+++ b/libnautilus-extension/nautilus-column.c
@@ -50,6 +50,19 @@ struct _NautilusColumnDetails {
G_DEFINE_TYPE (NautilusColumn, nautilus_column, G_TYPE_OBJECT);
/**
+ * SECTION:nautilus-column
+ * @title: NautilusColumn
+ * @short_description: List view column descriptor object
+ * @include: libnautilus-extension/nautilus-column.h
+ *
+ * #NautilusColumn is an object that describes a column in the file manager
+ * list view. Extensions can provide #NautilusColumn by registering a
+ * #NautilusColumnProvider and returning them from
+ * nautilus_column_provider_get_columns(), which will be called by the main
+ * application when creating a view.
+ */
+
+/**
* nautilus_column_new:
* @name: identifier of the column
* @attribute: the file attribute to be displayed in the column
diff --git a/libnautilus-extension/nautilus-extension-types.h b/libnautilus-extension/nautilus-extension-types.h
index 3e51c8291..ca7ec7fe5 100644
--- a/libnautilus-extension/nautilus-extension-types.h
+++ b/libnautilus-extension/nautilus-extension-types.h
@@ -34,11 +34,27 @@ G_BEGIN_DECLS
#define NAUTILUS_TYPE_OPERATION_RESULT (nautilus_operation_result_get_type ())
-/* Handle for asynchronous interfaces. These are opaque handles that must
- * be unique within an extension object. These are returned by operations
- * that return NAUTILUS_OPERATION_IN_PROGRESS */
+/**
+ * NautilusOperationHandle:
+ *
+ * Handle for asynchronous interfaces. These are opaque handles that must
+ * be unique within an extension object. These are returned by operations
+ * that return #NAUTILUS_OPERATION_IN_PROGRESS.
+ */
typedef struct _NautilusOperationHandle NautilusOperationHandle;
+/**
+ * NautilusOperationResult:
+ * @NAUTILUS_OPERATION_COMPLETE: the operation succeeded, and the extension
+ * is done with the request.
+ * @NAUTILUS_OPERATION_FAILED: the operation failed.
+ * @NAUTILUS_OPERATION_IN_PROGRESS: the extension has begin an async operation.
+ * When this value is returned, the extension must set the handle parameter
+ * and call the callback closure when the operation is complete.
+ *
+ * Return values for asynchronous operations performed by the extension.
+ * See nautilus_info_provider_update_file_info().
+ */
typedef enum {
/* Returned if the call succeeded, and the extension is done
* with the request */
@@ -56,6 +72,15 @@ typedef enum {
GType nautilus_operation_result_get_type (void);
+/**
+ * SECTION:nautilus-extension-types
+ * @title: NautilusModule
+ * @short_description: Initialize an extension
+ * @include: libnautilus-extension/nautilus-extension-types.h
+ *
+ * Methods that each extension implements.
+ */
+
void nautilus_module_initialize (GTypeModule *module);
void nautilus_module_shutdown (void);
void nautilus_module_list_types (const GType **types,
diff --git a/libnautilus-extension/nautilus-file-info.c b/libnautilus-extension/nautilus-file-info.c
index 3d2fb083e..329d5e5cb 100644
--- a/libnautilus-extension/nautilus-file-info.c
+++ b/libnautilus-extension/nautilus-file-info.c
@@ -25,6 +25,16 @@
NautilusFileInfo *(*nautilus_file_info_getter) (GFile *location, gboolean create);
/**
+ * SECTION:nautilus-file-info
+ * @title: NautilusFileInfo
+ * @short_description: File interface for nautilus extensions
+ * @include: libnautilus-extension/nautilus-file-info.h
+ *
+ * #NautilusFileInfo provides methods to get and modify information
+ * about file objects in the file manager.
+ */
+
+/**
* nautilus_file_info_list_copy:
* @files: (element-type NautilusFileInfo): the files to copy
*
diff --git a/libnautilus-extension/nautilus-file-info.h b/libnautilus-extension/nautilus-file-info.h
index 32ae541ad..4660ad7c2 100644
--- a/libnautilus-extension/nautilus-file-info.h
+++ b/libnautilus-extension/nautilus-file-info.h
@@ -35,7 +35,6 @@ G_BEGIN_DECLS
#define NAUTILUS_IS_FILE_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_FILE_INFO))
#define NAUTILUS_FILE_INFO_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), NAUTILUS_TYPE_FILE_INFO, NautilusFileInfoIface))
-
#ifndef NAUTILUS_FILE_DEFINED
#define NAUTILUS_FILE_DEFINED
/* Using NautilusFile for the vtable to make implementing this in
@@ -46,7 +45,50 @@ typedef struct NautilusFile NautilusFile;
typedef NautilusFile NautilusFileInfo;
typedef struct _NautilusFileInfoIface NautilusFileInfoIface;
-
+/**
+ * NautilusFileInfoIface:
+ * @g_iface: The parent interface.
+ * @is_gone: Returns whether the file info is gone.
+ * See nautilus_file_info_is_gone() for details.
+ * @get_name: Returns the file name as a string.
+ * See nautilus_file_info_get_name() for details.
+ * @get_uri: Returns the file URI as a string.
+ * See nautilus_file_info_get_uri() for details.
+ * @get_parent_uri: Returns the file parent URI as a string.
+ * See nautilus_file_info_get_parent_uri() for details.
+ * @get_uri_scheme: Returns the file URI scheme as a string.
+ * See nautilus_file_info_get_uri_scheme() for details.
+ * @get_mime_type: Returns the file mime type as a string.
+ * See nautilus_file_info_get_mime_type() for details.
+ * @is_mime_type: Returns whether the file is the given mime type.
+ * See nautilus_file_info_is_mime_type() for details.
+ * @is_directory: Returns whether the file is a directory.
+ * See nautilus_file_info_is_directory() for details.
+ * @add_emblem: Adds an emblem to this file.
+ * See nautilus_file_info_add_emblem() for details.
+ * @get_string_attribute: Returns the specified file attribute as a string.
+ * See nautilus_file_info_get_string_attribute() for details.
+ * @add_string_attribute: Sets the specified string file attribute value.
+ * See nautilus_file_info_add_string_attribute() for details.
+ * @invalidate_extension_info: Invalidates information of the file provided by extensions.
+ * See nautilus_file_info_invalidate_extension_info() for details.
+ * @get_activation_uri: Returns the file activation URI as a string.
+ * See nautilus_file_info_get_activation_uri() for details.
+ * @get_file_type: Returns the file type.
+ * See nautilus_file_info_get_file_type() for details.
+ * @get_location: Returns the file location as a #GFile.
+ * See nautilus_file_info_get_location() for details.
+ * @get_parent_location: Returns the file parent location as a #GFile.
+ * See nautilus_file_info_get_parent_location() for details.
+ * @get_parent_info: Returns the file parent #NautilusFileInfo.
+ * See nautilus_file_info_get_parent_info() for details.
+ * @get_mount: Returns the file mount as a #GMount.
+ * See nautilus_file_info_get_mount() for details.
+ * @can_write: Returns whether the file is writable.
+ * See nautilus_file_info_can_write() for details.
+ *
+ * Interface for extensions to provide additional menu items.
+ */
struct _NautilusFileInfoIface
{
GTypeInterface g_iface;
diff --git a/libnautilus-extension/nautilus-info-provider.c b/libnautilus-extension/nautilus-info-provider.c
index 7adad2fea..b2cbbbac0 100644
--- a/libnautilus-extension/nautilus-info-provider.c
+++ b/libnautilus-extension/nautilus-info-provider.c
@@ -26,6 +26,18 @@
#include <glib-object.h>
+/**
+ * SECTION:nautilus-info-provider
+ * @title: NautilusInfoProvider
+ * @short_description: Interface to provide additional information about files
+ * @include: libnautilus-extension/nautilus-column-provider.h
+ *
+ * #NautilusInfoProvider allows extension to provide additional information about
+ * files. When nautilus_info_provider_update_file_info() is called by the application,
+ * extensions will know that it's time to add extra information to the provided
+ * #NautilusFileInfo.
+ */
+
static void
nautilus_info_provider_base_init (gpointer g_class)
{
diff --git a/libnautilus-extension/nautilus-info-provider.h b/libnautilus-extension/nautilus-info-provider.h
index 09cc19ec5..6d70887e9 100644
--- a/libnautilus-extension/nautilus-info-provider.h
+++ b/libnautilus-extension/nautilus-info-provider.h
@@ -47,7 +47,16 @@ typedef void (*NautilusInfoProviderUpdateComplete) (NautilusInfoProvider *pro
NautilusOperationHandle *handle,
NautilusOperationResult result,
gpointer user_data);
-
+/**
+ * NautilusInfoProviderIface:
+ * @g_iface: The parent interface.
+ * @update_file_info: Returns a #NautilusOperationResult.
+ * See nautilus_info_provider_update_file_info() for details.
+ * @cancel_update: Cancels a previous call to nautilus_info_provider_update_file_info().
+ * See nautilus_info_provider_cancel_update() for details.
+ *
+ * Interface for extensions to provide additional information about files.
+ */
struct _NautilusInfoProviderIface {
GTypeInterface g_iface;
diff --git a/libnautilus-extension/nautilus-location-widget-provider.c b/libnautilus-extension/nautilus-location-widget-provider.c
index 7865bf449..12d28ddeb 100644
--- a/libnautilus-extension/nautilus-location-widget-provider.c
+++ b/libnautilus-extension/nautilus-location-widget-provider.c
@@ -26,6 +26,16 @@
#include <glib-object.h>
+/**
+ * SECTION:nautilus-location-widget-provider
+ * @title: NautilusLocationWidgetProvider
+ * @short_description: Interface to provide additional location widgets
+ * @include: libnautilus-extension/nautilus-location-widget-provider.h
+ *
+ * #NautilusLocationWidgetProvider allows extension to provide additional location
+ * widgets in the file manager views.
+ */
+
static void
nautilus_location_widget_provider_base_init (gpointer g_class)
{
diff --git a/libnautilus-extension/nautilus-location-widget-provider.h b/libnautilus-extension/nautilus-location-widget-provider.h
index df874cfda..8000b2c19 100644
--- a/libnautilus-extension/nautilus-location-widget-provider.h
+++ b/libnautilus-extension/nautilus-location-widget-provider.h
@@ -45,6 +45,14 @@ G_BEGIN_DECLS
typedef struct _NautilusLocationWidgetProvider NautilusLocationWidgetProvider;
typedef struct _NautilusLocationWidgetProviderIface NautilusLocationWidgetProviderIface;
+/**
+ * NautilusLocationWidgetProviderIface:
+ * @g_iface: The parent interface.
+ * @get_widget: Returns a #GtkWidget.
+ * See nautilus_location_widget_provider_get_widget() for details.
+ *
+ * Interface for extensions to provide additional location widgets.
+ */
struct _NautilusLocationWidgetProviderIface {
GTypeInterface g_iface;
diff --git a/libnautilus-extension/nautilus-menu-item.c b/libnautilus-extension/nautilus-menu-item.c
index f0c5fed48..ee582dcde 100644
--- a/libnautilus-extension/nautilus-menu-item.c
+++ b/libnautilus-extension/nautilus-menu-item.c
@@ -57,6 +57,20 @@ static guint signals[LAST_SIGNAL];
static GObjectClass *parent_class = NULL;
/**
+ * SECTION:nautilus-menu-item
+ * @title: NautilusMenuItem
+ * @short_description: Menu item descriptor object
+ * @include: libnautilus-extension/nautilus-menu-item.h
+ *
+ * #NautilusMenuItem is an object that describes an item in a file manager
+ * menu. Extensions can provide #NautilusMenuItem objects by registering a
+ * #NautilusMenuProvider and returning them from
+ * nautilus_menu_provider_get_file_items(), or
+ * nautilus_menu_provider_get_background_items(), which will be called by the
+ * main application when creating menus.
+ */
+
+/**
* nautilus_menu_item_new:
* @name: the identifier for the menu item
* @label: the user-visible label of the menu item
diff --git a/libnautilus-extension/nautilus-menu-provider.c b/libnautilus-extension/nautilus-menu-provider.c
index a81b721a3..0fb709469 100644
--- a/libnautilus-extension/nautilus-menu-provider.c
+++ b/libnautilus-extension/nautilus-menu-provider.c
@@ -27,6 +27,16 @@
#include <glib-object.h>
+/**
+ * SECTION:nautilus-menu-provider
+ * @title: NautilusMenuProvider
+ * @short_description: Interface to provide additional menu items
+ * @include: libnautilus-extension/nautilus-menu-provider.h
+ *
+ * #NautilusMenuProvider allows extension to provide additional menu items
+ * in the file manager menus.
+ */
+
static void
nautilus_menu_provider_base_init (gpointer g_class)
{
diff --git a/libnautilus-extension/nautilus-menu-provider.h b/libnautilus-extension/nautilus-menu-provider.h
index 297eaa263..23ff537be 100644
--- a/libnautilus-extension/nautilus-menu-provider.h
+++ b/libnautilus-extension/nautilus-menu-provider.h
@@ -45,6 +45,16 @@ G_BEGIN_DECLS
typedef struct _NautilusMenuProvider NautilusMenuProvider;
typedef struct _NautilusMenuProviderIface NautilusMenuProviderIface;
+/**
+ * NautilusMenuProviderIface:
+ * @g_iface: The parent interface.
+ * @get_file_items: Returns a #GList of #NautilusMenuItem.
+ * See nautilus_menu_provider_get_file_items() for details.
+ * @get_background_items: Returns a #GList of #NautilusMenuItem.
+ * See nautilus_menu_provider_get_background_items() for details.
+ *
+ * Interface for extensions to provide additional menu items.
+ */
struct _NautilusMenuProviderIface {
GTypeInterface g_iface;
diff --git a/libnautilus-extension/nautilus-menu.c b/libnautilus-extension/nautilus-menu.c
index e274af853..ee7b2b2a8 100644
--- a/libnautilus-extension/nautilus-menu.c
+++ b/libnautilus-extension/nautilus-menu.c
@@ -26,6 +26,17 @@
#include <glib.h>
#include <glib/gi18n-lib.h>
+/**
+ * SECTION:nautilus-menu
+ * @title: NautilusMenu
+ * @short_description: Menu descriptor object
+ * @include: libnautilus-extension/nautilus-menu.h
+ *
+ * #NautilusMenu is an object that describes a submenu in a file manager
+ * menu. Extensions can provide #NautilusMenu objects by attaching them to
+ * #NautilusMenuItem objects, using nautilus_menu_item_set_submenu().
+ */
+
#define NAUTILUS_MENU_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NAUTILUS_TYPE_MENU, NautilusMenuPrivate))
G_DEFINE_TYPE (NautilusMenu, nautilus_menu, G_TYPE_OBJECT);
diff --git a/libnautilus-extension/nautilus-property-page-provider.c b/libnautilus-extension/nautilus-property-page-provider.c
index 89211f34e..04a7f1f0f 100644
--- a/libnautilus-extension/nautilus-property-page-provider.c
+++ b/libnautilus-extension/nautilus-property-page-provider.c
@@ -27,6 +27,16 @@
#include <glib-object.h>
+/**
+ * SECTION:nautilus-property-page-provider
+ * @title: NautilusPropertyPageProvider
+ * @short_description: Interface to provide additional property pages
+ * @include: libnautilus-extension/nautilus-property-page-provider.h
+ *
+ * #NautilusPropertyPageProvider allows extension to provide additional pages
+ * for the file properties dialog.
+ */
+
static void
nautilus_property_page_provider_base_init (gpointer g_class)
{
diff --git a/libnautilus-extension/nautilus-property-page-provider.h b/libnautilus-extension/nautilus-property-page-provider.h
index 9bf932d10..1a3b36058 100644
--- a/libnautilus-extension/nautilus-property-page-provider.h
+++ b/libnautilus-extension/nautilus-property-page-provider.h
@@ -45,11 +45,19 @@ G_BEGIN_DECLS
typedef struct _NautilusPropertyPageProvider NautilusPropertyPageProvider;
typedef struct _NautilusPropertyPageProviderIface NautilusPropertyPageProviderIface;
+/**
+ * NautilusPropertyPageProviderIface:
+ * @g_iface: The parent interface.
+ * @get_pages: Returns a #GList of #NautilusPropertyPage.
+ * See nautilus_property_page_provider_get_pages() for details.
+ *
+ * Interface for extensions to provide additional property pages.
+ */
struct _NautilusPropertyPageProviderIface {
GTypeInterface g_iface;
- GList *(*get_pages) (NautilusPropertyPageProvider *provider,
- GList *files);
+ GList *(*get_pages) (NautilusPropertyPageProvider *provider,
+ GList *files);
};
/* Interface Functions */
diff --git a/libnautilus-extension/nautilus-property-page.c b/libnautilus-extension/nautilus-property-page.c
index 115194cb1..545f2999f 100644
--- a/libnautilus-extension/nautilus-property-page.c
+++ b/libnautilus-extension/nautilus-property-page.c
@@ -43,6 +43,19 @@ struct _NautilusPropertyPageDetails {
static GObjectClass *parent_class = NULL;
/**
+ * SECTION:nautilus-property-page
+ * @title: NautilusPropertyPage
+ * @short_description: Property page descriptor object
+ * @include: libnautilus-extension/nautilus-property-page.h
+ *
+ * #NautilusPropertyPage is an object that describes a page in the file
+ * properties dialog. Extensions can provide #NautilusPropertyPage objects
+ * by registering a #NautilusPropertyPageProvider and returning them from
+ * nautilus_property_page_provider_get_pages(), which will be called by the
+ * main application when creating file properties dialogs.
+ */
+
+/**
* nautilus_property_page_new:
* @name: the identifier for the property page
* @label: the user-visible label of the property page