totem r5950 - in trunk: . docs/reference src src/plugins



Author: pwithnall
Date: Sat Feb  7 18:21:31 2009
New Revision: 5950
URL: http://svn.gnome.org/viewvc/totem?rev=5950&view=rev

Log:
2009-02-07  Philip Withnall  <philip tecnocode co uk>

	* configure.in:
	* docs/reference/Makefile.am:
	* docs/reference/totem-docs.sgml:
	* docs/reference/totem-docs.xml:
	* docs/reference/totem-sections.txt:
	* src/plugins/totem-plugin.c:
	* src/plugins/totem-plugin.h:
	* src/totem-cell-renderer-video.c
	(totem_cell_renderer_video_class_init):
	* src/totem-cell-renderer-video.h:
	* src/totem-interface.c:
	* src/totem-object.c (totem_object_class_init):
	* src/totem-video-list.c (totem_video_list_class_init):
	* src/totem-video-list.h:
	* src/totem.h: Documentation updates and fixes: all documented and
	plugin-visible API is now listed in the documentation, and the
	section titles/descriptions have all been updated. The documentation
	layout has been tidied up, and recent gtk-doc features have been
	taken advantage of
	(http://live.gnome.org/DocumentationProject/GtkDocGnomeGoal).



Added:
   trunk/docs/reference/totem-docs.xml   (contents, props changed)
      - copied, changed from r5949, /trunk/docs/reference/totem-docs.sgml
Removed:
   trunk/docs/reference/totem-docs.sgml
Modified:
   trunk/ChangeLog
   trunk/configure.in
   trunk/docs/reference/Makefile.am
   trunk/docs/reference/totem-sections.txt
   trunk/src/plugins/totem-plugin.c
   trunk/src/plugins/totem-plugin.h
   trunk/src/totem-cell-renderer-video.c
   trunk/src/totem-cell-renderer-video.h
   trunk/src/totem-interface.c
   trunk/src/totem-object.c
   trunk/src/totem-video-list.c
   trunk/src/totem-video-list.h
   trunk/src/totem.h

Modified: trunk/configure.in
==============================================================================
--- trunk/configure.in	(original)
+++ trunk/configure.in	Sat Feb  7 18:21:31 2009
@@ -786,7 +786,7 @@
 GNOME_COMPILE_WARNINGS([maximum])
 GNOME_CXX_WARNINGS
 GNOME_MAINTAINER_MODE_DEFINES
-GTK_DOC_CHECK(1.0)
+GTK_DOC_CHECK(1.11)
 
 # This macro expands DIR and assigns it to RET.
 # If DIR is NONE, then it's replaced by DEFAULT.

Modified: trunk/docs/reference/Makefile.am
==============================================================================
--- trunk/docs/reference/Makefile.am	(original)
+++ trunk/docs/reference/Makefile.am	Sat Feb  7 18:21:31 2009
@@ -12,7 +12,7 @@
 DOC_MODULE=totem
 
 # The top-level SGML file. You can change this if you want to.
-DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
 
 # The directory containing the source code. Relative to $(srcdir).
 # gtk-doc will search all .c & .h files beneath here for inline comments
@@ -29,7 +29,7 @@
 
 # Extra options to supply to gtkdoc-mkdb.
 # e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml
-MKDB_OPTIONS=--sgml-mode --output-format=xml
+MKDB_OPTIONS=--sgml-mode --output-format=xml --name-space=totem
 
 # Extra options to supply to gtkdoc-mktmpl
 # e.g. MKTMPL_OPTIONS=--only-section-tmpl
@@ -48,6 +48,7 @@
 # Header files to ignore when scanning.
 # e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h
 IGNORE_HFILES = \
+	totem-private.h		\
 	ev-sidebar.h		\
 	eggdesktopfile.h	\
 	eggfileformatchooser.h	\
@@ -87,3 +88,5 @@
 # Other files to distribute
 # e.g. EXTRA_DIST += version.xml.in
 EXTRA_DIST += version.xml.in
+
+TESTS = $(GTKDOC_CHECK)

Copied: trunk/docs/reference/totem-docs.xml (from r5949, /trunk/docs/reference/totem-docs.sgml)
==============================================================================
--- /trunk/docs/reference/totem-docs.sgml	(original)
+++ trunk/docs/reference/totem-docs.xml	Sat Feb  7 18:21:31 2009
@@ -1,18 +1,36 @@
 <?xml version="1.0"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"; [
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"; [
+	<!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
 	<!ENTITY version SYSTEM "version.xml">
 	<!ENTITY slash "/">
 ]>
 <book id="index" xmlns:xi="http://www.w3.org/2003/XInclude";>
 	<bookinfo>
 		<title>Totem Reference Manual</title>
-		<releaseinfo>for Totem &version;</releaseinfo>
+		<releaseinfo>
+			for Totem &version;. The latest version of this documentation can be found online at
+			<ulink role="online-location" url="http://library.gnome.org/devel/totem/";>http://library.gnome.org/devel/totem/</ulink>.
+		</releaseinfo>
 	</bookinfo>
-	<chapter>
-		<title>API Reference</title>
+
+	<chapter id="core-api">
+		<title>Core API</title>
 		<xi:include href="xml/totem-object.xml"/>
+		<xi:include href="xml/totem-interface.xml"/>
 		<xi:include href="xml/totem-plugin.xml"/>
+	</chapter>
+	<chapter id="widget-api">
+		<title>Widgets</title>
 		<xi:include href="xml/totem-video-list.xml"/>
 		<xi:include href="xml/totem-cell-renderer-video.xml"/>
 	</chapter>
+
+	<index id="api-index-full">
+		<title>Index of all symbols</title>
+		<xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
+	</index>
+	<index id="api-index-deprecated" role="deprecated">
+		<title>Index of deprecated symbols</title>
+		<xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
+	</index>
 </book>

Modified: trunk/docs/reference/totem-sections.txt
==============================================================================
--- trunk/docs/reference/totem-sections.txt	(original)
+++ trunk/docs/reference/totem-sections.txt	Sat Feb  7 18:21:31 2009
@@ -1,7 +1,48 @@
 <SECTION>
 <FILE>totem-object</FILE>
+<TITLE>TotemObject</TITLE>
 TotemObject
 TotemObjectClass
+TotemRemoteCommand
+totem_object_plugins_init
+totem_object_plugins_shutdown
+totem_file_opened
+totem_file_closed
+totem_metadata_updated
+totem_action_error
+totem_action_exit
+totem_add_to_playlist_and_play
+totem_action_play
+totem_action_play_media
+totem_action_play_media_device
+totem_action_play_pause
+totem_action_pause
+totem_action_stop
+totem_action_fullscreen
+totem_action_fullscreen_toggle
+totem_action_next
+totem_action_previous
+totem_action_seek_time
+totem_action_seek_relative
+totem_action_volume_relative
+totem_action_toggle_aspect_ratio
+totem_action_get_aspect_ratio
+totem_action_set_aspect_ratio
+totem_action_toggle_controls
+totem_action_set_scale_ratio
+totem_action_remote
+totem_is_fullscreen
+totem_is_playing
+totem_is_seekable
+totem_get_main_window
+totem_get_ui_manager
+totem_get_video_widget
+totem_get_video_widget_backend_name
+totem_get_current_mrl
+totem_get_current_time
+totem_set_current_subtitle
+totem_add_sidebar_page
+totem_remove_sidebar_page
 <SUBSECTION Standard>
 TOTEM_OBJECT
 TOTEM_IS_OBJECT
@@ -12,14 +53,29 @@
 </SECTION>
 
 <SECTION>
+<FILE>totem-interface</FILE>
+<TITLE>Interface</TITLE>
+totem_interface_error_with_link
+</SECTION>
+
+<SECTION>
 <FILE>totem-plugin</FILE>
+<TITLE>TotemPlugin</TITLE>
 TotemPlugin
 TotemPluginClass
+TotemPluginError
+totem_plugin_activate
+totem_plugin_deactivate
+totem_plugin_create_configure_dialog
+totem_plugin_is_configurable
+totem_plugin_load_interface
+totem_plugin_find_file
 <SUBSECTION Standard>
 TOTEM_PLUGIN
 TOTEM_IS_PLUGIN
 TOTEM_TYPE_PLUGIN
 totem_plugin_get_type
+TOTEM_PLUGIN_GET_CLASS
 TOTEM_PLUGIN_CLASS
 TOTEM_IS_PLUGIN_CLASS
 <SUBSECTION Private>
@@ -28,13 +84,17 @@
 
 <SECTION>
 <FILE>totem-video-list</FILE>
+<TITLE>TotemVideoList</TITLE>
 TotemVideoList
 TotemVideoListClass
+totem_video_list_new
+totem_video_list_get_ui_manager
 <SUBSECTION Standard>
 TOTEM_VIDEO_LIST
 TOTEM_IS_VIDEO_LIST
 TOTEM_TYPE_VIDEO_LIST
 totem_video_list_get_type
+TOTEM_VIDEO_LIST_GET_CLASS
 TOTEM_VIDEO_LIST_CLASS
 TOTEM_IS_VIDEO_LIST_CLASS
 <SUBSECTION Private>
@@ -43,13 +103,16 @@
 
 <SECTION>
 <FILE>totem-cell-renderer-video</FILE>
+<TITLE>TotemCellRendererVideo</TITLE>
 TotemCellRendererVideo
 TotemCellRendererVideoClass
+totem_cell_renderer_video_new
 <SUBSECTION Standard>
 TOTEM_CELL_RENDERER_VIDEO
 TOTEM_IS_CELL_RENDERER_VIDEO
 TOTEM_TYPE_CELL_RENDERER_VIDEO
 totem_cell_renderer_video_get_type
+TOTEM_CELL_RENDERER_VIDEO_GET_CLASS
 TOTEM_CELL_RENDERER_VIDEO_CLASS
 TOTEM_IS_CELL_RENDERER_VIDEO_CLASS
 <SUBSECTION Private>

Modified: trunk/src/plugins/totem-plugin.c
==============================================================================
--- trunk/src/plugins/totem-plugin.c	(original)
+++ trunk/src/plugins/totem-plugin.c	Sat Feb  7 18:21:31 2009
@@ -27,7 +27,7 @@
 
 /**
  * SECTION:totem-plugin
- * @short_description: plugin
+ * @short_description: base plugin class and loading/unloading functions
  * @stability: Unstable
  * @include: totem-plugin.h
  *

Modified: trunk/src/plugins/totem-plugin.h
==============================================================================
--- trunk/src/plugins/totem-plugin.h	(original)
+++ trunk/src/plugins/totem-plugin.h	Sat Feb  7 18:21:31 2009
@@ -46,9 +46,11 @@
 #define TOTEM_IS_PLUGIN_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE ((klass), TOTEM_TYPE_PLUGIN))
 #define TOTEM_PLUGIN_GET_CLASS(obj)    (G_TYPE_INSTANCE_GET_CLASS((obj), TOTEM_TYPE_PLUGIN, TotemPluginClass))
 
-/*
- * Main object structure
- */
+/**
+ * TotemPlugin:
+ *
+ * All the fields in the #TotemPlugin structure are private and should never be accessed directly.
+ **/
 typedef struct {
 	GObject parent;
 } TotemPlugin;
@@ -59,9 +61,20 @@
 typedef GtkWidget *	(*TotemPluginWidgetFunc)		(TotemPlugin *plugin);
 typedef gboolean	(*TotemPluginBooleanFunc)		(TotemPlugin *plugin);
 
-/*
- * Class definition
- */
+/**
+ * TotemPluginClass:
+ * @parent_class: the parent class
+ * @activate: function called when activating a plugin using totem_plugin_activate().
+ * It must be set by inheriting classes, and should return %TRUE if it successfully created/got handles to
+ * the resources needed by the plugin. If it returns %FALSE, loading the plugin is abandoned.
+ * @deactivate: function called when deactivating a plugin using totem_plugin_deactivate();
+ * It must be set by inheriting classes, and should free/unref any resources the plugin used.
+ * @create_configure_dialog: function called when configuring a plugin using totem_plugin_create_configure_dialog().
+ * If non-%NULL, it should create and return the plugin's configuration dialog. If %NULL, the plugin is not
+ * configurable.
+ *
+ * The class structure for the #TotemPlParser type.
+ **/
 typedef struct {
 	GObjectClass parent_class;
 
@@ -71,6 +84,7 @@
 	TotemPluginDeactivationFunc	deactivate;
 	TotemPluginWidgetFunc		create_configure_dialog;
 
+	/*< private >*/
 	/* Plugins should not override this, it's handled automatically by
 	   the TotemPluginClass */
 	TotemPluginBooleanFunc		is_configurable;

Modified: trunk/src/totem-cell-renderer-video.c
==============================================================================
--- trunk/src/totem-cell-renderer-video.c	(original)
+++ trunk/src/totem-cell-renderer-video.c	Sat Feb  7 18:21:31 2009
@@ -28,9 +28,10 @@
 
 /**
  * SECTION:totem-cell-renderer-video
- * @short_description: video cell renderer
+ * @short_description: a #GtkCellRenderer widget for listing videos
  * @stability: Unstable
  * @include: totem-cell-renderer-video.h
+ * @see_also: #TotemVideoList
  *
  * #TotemCellRendererVideo is a #GtkCellRenderer for rendering video thumbnails, typically in a #TotemVideoList.
  * It supports drawing a video thumbnail, and the video's title underneath.
@@ -75,7 +76,7 @@
  * totem_cell_renderer_video_new:
  * @use_placeholder: if %TRUE, use a placeholder thumbnail
  *
- * Creates a new #TotemCellRendererVideo with its :use-placeholder
+ * Creates a new #TotemCellRendererVideo with its #TotemCellRendererVideo:use-placeholder
  * property set to @use_placeholder. If @use_placeholder is %TRUE,
  * the renderer will display a generic placeholder thumbnail if a
  * proper one is not available.
@@ -117,7 +118,7 @@
 	/**
 	 * TotemCellRendererVideo:title:
 	 *
-	 * The title of the video, as it should be displayed. The default title is "Unknown video".
+	 * The title of the video, as it should be displayed.
 	 **/
 	g_object_class_install_property (object_class, PROP_TITLE,
 				g_param_spec_string ("title", NULL, NULL,
@@ -126,7 +127,7 @@
 	/**
 	 * TotemCellRendererVideo:alignment:
 	 *
-	 * A #PangoAlignment giving the text alignment for the video title. The default is %PANGO_ALIGN_CENTER.
+	 * A #PangoAlignment giving the text alignment for the video title.
 	 **/
 	g_object_class_install_property (object_class, PROP_ALIGNMENT,
 				g_param_spec_enum ("alignment", NULL, NULL,
@@ -137,7 +138,7 @@
 	/**
 	 * TotemCellRendererVideo:use-placeholder:
 	 *
-	 * If %TRUE, a placeholder image should be used for the video thumbnail if a :thumbnail isn't provided.
+	 * If %TRUE, a placeholder image should be used for the video thumbnail if a #TotemCellRendererVideo:thumbnail isn't provided.
 	 **/
 	g_object_class_install_property (object_class, PROP_USE_PLACEHOLDER,
 				g_param_spec_boolean ("use-placeholder", NULL, NULL,

Modified: trunk/src/totem-cell-renderer-video.h
==============================================================================
--- trunk/src/totem-cell-renderer-video.h	(original)
+++ trunk/src/totem-cell-renderer-video.h	Sat Feb  7 18:21:31 2009
@@ -43,11 +43,22 @@
 
 typedef struct _TotemCellRendererVideoPrivate	TotemCellRendererVideoPrivate;
 
+/**
+ * TotemCellRendererVideo:
+ *
+ * All the fields in the #TotemCellRendererVideo structure are private and should never be accessed directly.
+ **/
 typedef struct {
 	GtkCellRenderer parent;
 	TotemCellRendererVideoPrivate *priv;
 } TotemCellRendererVideo;
 
+/**
+ * TotemCellRendererVideoClass:
+ * @parent: the parent class
+ *
+ * The class structure for the #TotemCellRendererVideo type.
+ **/
 typedef struct {
 	GtkCellRendererClass parent;
 } TotemCellRendererVideoClass;

Modified: trunk/src/totem-interface.c
==============================================================================
--- trunk/src/totem-interface.c	(original)
+++ trunk/src/totem-interface.c	Sat Feb  7 18:21:31 2009
@@ -29,6 +29,15 @@
  *
  */
 
+/**
+ * SECTION:totem-interface
+ * @short_description: interface utility/loading/error functions
+ * @stability: Unstable
+ * @include: totem-interface.h
+ *
+ * A collection of interface utility functions, for loading interfaces and displaying errors.
+ **/
+
 #include "config.h"
 
 #include <glib.h>

Modified: trunk/src/totem-object.c
==============================================================================
--- trunk/src/totem-object.c	(original)
+++ trunk/src/totem-object.c	Sat Feb  7 18:21:31 2009
@@ -28,7 +28,7 @@
 
 /**
  * SECTION:totem-object
- * @short_description: main object
+ * @short_description: main Totem object
  * @stability: Unstable
  * @include: totem.h
  *
@@ -225,7 +225,7 @@
 	 * @totem: the #TotemObject which received the signal
 	 * @mrl: the MRL of the opened stream
 	 *
-	 * The ::file-opened signal is emitted when a new stream is opened by Totem.
+	 * The #TotemObject::file-opened signal is emitted when a new stream is opened by Totem.
 	 */
 	totem_table_signals[FILE_OPENED] =
 		g_signal_new ("file-opened",
@@ -240,7 +240,7 @@
 	 * TotemObject::file-closed:
 	 * @totem: the #TotemObject which received the signal
 	 *
-	 * The ::file-closed signal is emitted when Totem closes a stream.
+	 * The #TotemObject::file-closed signal is emitted when Totem closes a stream.
 	 */
 	totem_table_signals[FILE_CLOSED] =
 		g_signal_new ("file-closed",
@@ -259,7 +259,7 @@
 	 * @album: the name of the stream's album, or %NULL
 	 * @track_number: the stream's track number
 	 *
-	 * The ::metadata-updated signal is emitted when the metadata of a stream is updated, typically
+	 * The #TotemObject::metadata-updated signal is emitted when the metadata of a stream is updated, typically
 	 * when it's being loaded.
 	 */
 	totem_table_signals[METADATA_UPDATED] =
@@ -411,9 +411,9 @@
  * @totem: a #TotemObject
  *
  * Gets the name string of the backend video widget, typically the video library's
- * version string (e.g. what's returned by gst_version_string()).
+ * version string (e.g. what's returned by gst_version_string()). Free with g_free().
  *
- * Return value: the name string of the backend video widget
+ * Return value: a newly-allocated string of the name of the backend video widget
  **/
 char *
 totem_get_video_widget_backend_name (Totem *totem)
@@ -481,8 +481,9 @@
  * @totem: a #TotemObject
  *
  * Get the MRL of the current stream, or %NULL if nothing's playing.
+ * Free with g_free().
  *
- * Return value: the MRL of the current stream
+ * Return value: a newly-allocated string containing the MRL of the current stream
  **/
 char *
 totem_get_current_mrl (Totem *totem)
@@ -579,7 +580,7 @@
  * @totem: a #TotemObject
  * @mrl: the MRL opened
  *
- * Emits the ::file-opened signal on @totem, with the
+ * Emits the #TotemObject::file-opened signal on @totem, with the
  * specified @mrl.
  **/
 void
@@ -595,7 +596,7 @@
  * totem_file_closed:
  * @totem: a #TotemObject
  *
- * Emits the ::file-closed signal on @totem.
+ * Emits the #TotemObject::file-closed signal on @totem.
  **/
 void
 totem_file_closed (TotemObject *totem)
@@ -609,11 +610,12 @@
 /**
  * totem_metadata_updated:
  * @totem: a #TotemObject
- * @artist: the stream's artist
- * @title: the stream's title
- * @album: the stream's album
+ * @artist: the stream's artist, or %NULL
+ * @title: the stream's title, or %NULL
+ * @album: the stream's album, or %NULL
+ * @track_num: the track number of the stream
  *
- * Emits the ::metadata-updated signal on @totem,
+ * Emits the #TotemObject::metadata-updated signal on @totem,
  * with the specified stream data.
  **/
 void

Modified: trunk/src/totem-video-list.c
==============================================================================
--- trunk/src/totem-video-list.c	(original)
+++ trunk/src/totem-video-list.c	Sat Feb  7 18:21:31 2009
@@ -28,9 +28,10 @@
 
 /**
  * SECTION:totem-video-list
- * @short_description: video list
+ * @short_description: a #GtkTreeView widget for listing videos
  * @stability: Unstable
  * @include: totem-video-list.h
+ * @see_also: #TotemCellRendererVideo
  *
  * #TotemVideoList is a #GtkTreeView designed for listing videos by their thumbnails using #TotemCellRendererVideo.
  * It supports tooltips, loading the videos by activating tree view rows, and #GtkUIManager actions in the popup menu.
@@ -157,7 +158,7 @@
 	 * @video_list: the #TotemVideoList which received the signal
 	 * @tree_path: the #GtkTreePath of the video row about to be played
 	 *
-	 * The ::starting-video signal is emitted when a video row is activated, just before the video is
+	 * The #TotemVideoList::starting-video signal is emitted when a video row is activated, just before the video is
 	 * added to the playlist. It allows for the video's MRL in the #GtkTreeModel to be modified, for example.
 	 *
 	 * If this returns %TRUE, the video will be played; otherwise, it will not.

Modified: trunk/src/totem-video-list.h
==============================================================================
--- trunk/src/totem-video-list.h	(original)
+++ trunk/src/totem-video-list.h	Sat Feb  7 18:21:31 2009
@@ -43,11 +43,24 @@
 
 typedef struct _TotemVideoListPrivate	TotemVideoListPrivate;
 
+/**
+ * TotemVideoList:
+ *
+ * All the fields in the #TotemVideoList structure are private and should never be accessed directly.
+ **/
 typedef struct {
 	GtkTreeView parent;
 	TotemVideoListPrivate *priv;
 } TotemVideoList;
 
+/**
+ * TotemVideoListClass:
+ * @parent: the parent class
+ * @starting_video: the generic signal handler for the #TotemVideoList::starting-video signal,
+ * which can be overridden by inheriting classes
+ *
+ * The class structure for the #TotemVideoList type.
+ **/
 typedef struct {
 	GtkTreeViewClass parent;
 	gboolean (*starting_video) (TotemVideoList *video_list, GtkTreePath *path);

Modified: trunk/src/totem.h
==============================================================================
--- trunk/src/totem.h	(original)
+++ trunk/src/totem.h	Sat Feb  7 18:21:31 2009
@@ -130,9 +130,26 @@
 #define TOTEM_IS_OBJECT(obj)           (G_TYPE_CHECK_INSTANCE_TYPE (obj, totem_object_get_type ()))
 #define TOTEM_IS_OBJECT_CLASS(klass)   (G_CHECK_INSTANCE_GET_CLASS ((klass), totem_object_get_type ()))
 
+/**
+ * TotemObject:
+ *
+ * All the fields in the #TotemObject structure are private and should never be accessed directly.
+ **/
 typedef struct TotemObject Totem;
 typedef struct TotemObject TotemObject;
 
+/**
+ * TotemObjectClass:
+ * @parent_class: the parent class
+ * @file_opened: the generic signal handler for the #TotemObject::file-opened signal,
+ * which can be overridden by inheriting classes
+ * @file_closed: the generic signal handler for the #TotemObject::file-closed signal,
+ * which can be overridden by inheriting classes
+ * @metadata_updated: the generic signal handler for the #TotemObject::metadata-updated signal,
+ * which can be overridden by inheriting classes
+ *
+ * The class structure for the #TotemPlParser type.
+ **/
 typedef struct {
 	GObjectClass parent_class;
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]