diff options
Diffstat (limited to 'doc/devel')
-rw-r--r-- | doc/devel/ChangeLog | 6 | ||||
-rwxr-xr-x | doc/devel/build-eplugin-manual.pl | 182 | ||||
-rw-r--r-- | doc/devel/evolution-plugin-manual.xml | 516 |
3 files changed, 243 insertions, 461 deletions
diff --git a/doc/devel/ChangeLog b/doc/devel/ChangeLog index 9de1bb25a1..efa2312005 100644 --- a/doc/devel/ChangeLog +++ b/doc/devel/ChangeLog @@ -1,3 +1,9 @@ +2004-10-28 Not Zed <NotZed@Ximian.com> + + * evolution-plugin-manual.xml: setup for more auto-built stuff. + + * build-eplugin-manual.pl: auto-build more stuff. + 2004-10-12 Not Zed <NotZed@Ximian.com> * evolution-plugin-manual.xml: doc updates for new 'check' callback. diff --git a/doc/devel/build-eplugin-manual.pl b/doc/devel/build-eplugin-manual.pl index f7e5569b63..8cb951a516 100755 --- a/doc/devel/build-eplugin-manual.pl +++ b/doc/devel/build-eplugin-manual.pl @@ -51,76 +51,75 @@ foreach $out (keys %byref) { # Event reference # -%events = ( 'em-events.xml' => - { 'files' => [ 'em-folder-view.c', 'em-composer-utils.c', 'mail-folder-cache.c' ], - 'module' => 'mail' }, - ); +# %events = ( 'em-events.xml' => +# { 'files' => [ 'em-folder-view.c', 'em-composer-utils.c', 'mail-folder-cache.c' ], +# 'module' => 'mail' }, +# ); -foreach $out (keys %events) { - print "generating events doc $out\n"; - %data = %{$events{$out}}; - @files = @{$data{'files'}}; - $module = $data{'module'}; - open OUT,">$out"; - foreach $file (@files) { - open IN,"<../../$module/$file"; - while (<IN>) { - if (m/\@Event: (.*)/) { - $title = $1; - $name = $1; - $target = ""; - while (<IN>) { - if (m/\@Title: (.*)/) { - $title = $1; - } elsif (m/\@Target: (.*)/) { - $target = $1; - } elsif (m/\* (.*)/) { - $desc.= $1."\n"; - } - last if (m/\*\//); - } - if ($target eq "") { - print "Warning: No target defined for event $name ($title)\n"; - } - print OUT <<END; - <sect2> - <title>$title</title> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><constant>$name</constant></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="$module-hooks-event-$target">$target</link> - </entry> - </row> - <row> - <entry>Description</entry> - <entry> - <simpara> - $desc - </simpara> - </entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> -END - } - } - close IN; - } - close OUT; - -} +# foreach $out (keys %events) { +# print "generating events doc $out\n"; +# %data = %{$events{$out}}; +# @files = @{$data{'files'}}; +# $module = $data{'module'}; +# open OUT,">$out"; +# foreach $file (@files) { +# open IN,"<../../$module/$file"; +# while (<IN>) { +# if (m/\@Event: (.*)/) { +# $title = $1; +# $name = $1; +# $target = ""; +# while (<IN>) { +# if (m/\@Title: (.*)/) { +# $title = $1; +# } elsif (m/\@Target: (.*)/) { +# $target = $1; +# } elsif (m/\* (.*)/) { +# $desc.= $1."\n"; +# } +# last if (m/\*\//); +# } +# if ($target eq "") { +# print "Warning: No target defined for event $name ($title)\n"; +# } +# print OUT <<END; +# <sect2> +# <title>$title</title> +# <informaltable> +# <tgroup cols="2"> +# <colspec colnum="1" colname="field" colwidth="1*"/> +# <colspec colnum="2" colname="value" colwidth="4*"/> +# <tbody valign="top"> +# <row> +# <entry>Name</entry> +# <entry><constant>$name</constant></entry> +# </row> +# <row> +# <entry>Target</entry> +# <entry> +# <link +# linkend="$module-hooks-event-$target">$target</link> +# </entry> +# </row> +# <row> +# <entry>Description</entry> +# <entry> +# <simpara> +# $desc +# </simpara> +# </entry> +# </row> +# </tbody> +# </tgroup> +# </informaltable> +# </sect2> +# END +# } +# } +# close IN; +# } +# close OUT; +# } # # Generic table builder, still experimental. @@ -131,13 +130,16 @@ sub buildxml { my $out = $_[1]; my %data = %{$_[2]}; my @files, $module; + my $line; print "generating doc $out for $type\n"; @files = @{$data{'files'}}; $module = $data{'module'}; open OUT,">$out"; foreach $file (@files) { - open IN,"<../../$module/$file"; + my $line = 0; + + open IN,"<../../$module/$file" || die ("Cannot open \"$module/$file\""); while (<IN>) { if (m/\/\*\* \@$type: (.*)/) { my $key = ""; @@ -148,6 +150,7 @@ sub buildxml { my @blobs = (); while (<IN>) { + $line++; if (m/\@(.*): (.*)/) { if ($val ne "") { $blob{$key} = $val; @@ -176,6 +179,13 @@ sub buildxml { print OUT<<END; <sect2> <title>$title</title> +END + if ($val ne "") { + $val =~ s/[\n]+$//gos; + $val =~ s/\n\n/\<\/simpara\>\n\<simpara\>/g; + print OUT "<simpara>$val</simpara>\n"; + } + print OUT <<END; <informaltable> <tgroup cols="2"> <colspec colnum="1" colname="field" colwidth="1*"/> @@ -192,17 +202,17 @@ END END } print OUT <<END; + <row> + <entry>Defined</entry> + <entry>$module/$file:$line</entry> + </row> </tbody> </tgroup> </informaltable> + </sect2> END - if ($val ne "") { - $val =~ s/[\n]+$//gos; - $val =~ s/\n\n/\<\/simpara\>\n\<simpara\>/g; - print OUT "<simpara>$val</simpara>\n"; - } - print OUT "</sect2>\n"; } + $line++; } close IN; } @@ -222,6 +232,26 @@ END { 'type' => 'Event', 'files' => [ 'e-shell.c' ], 'module' => 'shell' }, + 'em-events.xml' => + { 'type' => 'Event', + 'files' => [ 'em-folder-view.c', 'em-composer-utils.c', 'mail-folder-cache.c' ], + 'module' => 'mail' }, + 'em-popups.xml' => + { 'type' => 'HookPoint-EMPopup', + 'files' => [ 'em-folder-tree.c', 'em-folder-view.c', 'em-format-html-display.c', '../composer/e-msg-composer-attachment-bar.c' ], + 'module' => 'mail' }, + 'ecal-popups.xml' => + { 'type' => 'HookPoint-ECalPopup', + 'files' => [ 'gui/e-calendar-view.c', 'gui/calendar-component.c', 'gui/e-calendar-view.c', 'gui/tasks-component.c' ], + 'module' => 'calendar' }, + 'em-configs.xml' => + { 'type' => 'HookPoint-EMConfig', + 'files' => [ 'em-mailer-prefs.c', 'em-account-editor.c', 'em-folder-properties.c', 'em-composer-prefs.c' ], + 'module' => 'mail' }, + 'em-menus.xml' => + { 'type' => 'HookPoint-EMMenu', + 'files' => [ 'em-folder-browser.c', 'em-message-browser.c' ], + 'module' => 'mail' }, ); foreach $out (keys %hooks) { diff --git a/doc/devel/evolution-plugin-manual.xml b/doc/devel/evolution-plugin-manual.xml index ad84699172..298944c36b 100644 --- a/doc/devel/evolution-plugin-manual.xml +++ b/doc/devel/evolution-plugin-manual.xml @@ -16,8 +16,13 @@ <!ENTITY em-popup-reference SYSTEM "em-popup.xml"> <!ENTITY em-format-reference SYSTEM "em-format.xml"> +<!ENTITY em-popups SYSTEM "em-popups.xml"> +<!ENTITY em-menus SYSTEM "em-menus.xml"> +<!ENTITY em-configs SYSTEM "em-configs.xml"> <!ENTITY em-events SYSTEM "em-events.xml"> +<!ENTITY ecal-popups SYSTEM "ecal-popups.xml"> + <!ENTITY es-events SYSTEM "es-events.xml"> <!ENTITY es-menus SYSTEM "es-menus.xml"> @@ -1764,7 +1769,7 @@ <colspec colnum="2" colname="value" colwidth="4*"/> <tbody> <row> - <entry>Name</entry> + <entry>Id</entry> <entry>The hook point id.</entry> </row> <row> @@ -1804,149 +1809,14 @@ <para> The mail popup menu class is - <interfacename>com.ximian.evolution.mail.popup:1.0</interfacename>. + <interfacename>org.gnome.evolution.mail.popup:1.0</interfacename>. </para> <para> The plugin callback data will be the target matching the plugin menu itself, and the callback returns no value. </para> - <sect2> - <title>Folder Tree Context Menu</title> - <para> - This is the context menu shown on the folder tree. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.ximian.mail.storageset.popup.select</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="mail-hooks-popup-EMPopupTargetFolder">EMPopupTargetFolder</link> - </entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Message List Context Menu</title> - <para> - This is the context menu shown on the message list. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.ximian.mail.folderview.popup.select</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="mail-hooks-popup-EMPopupTargetSelect">EMPopupTargetSelect</link> - </entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Inline URI Context Menu</title> - <para> - This is the context menu shown when clicking on inline URIs, - including addresses or normal HTML links that are displayed inside - the message view. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.ximian.mail.folderview.popup.uri</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry><link - linkend="mail-hooks-popup-EMPopupTargetURI">EMPopupTargetURI</link></entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Inline Content and Attachment Context Menu</title> - <para> - This context menu is shown when right-clicking on inline images, or - when clicking on the attachment expander button. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.ximian.mail.formathtmldisplay.popup.part</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry><link - linkend="mail-hooks-popup-EMPopupTargetPart">EMPopupTargetPart</link></entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Composer Attachment Bar Context Menu</title> - <para> - This context menu is displayed when the user brings up a context - menu on the attachment bar displayed in the composer. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.composer.attachmentBar</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry><link - linkend="mail-hooks-popup-EMPopupTargetAttachments">EMPopupTargetAttachments</link></entry> - </row> - <row> - <entry>Qualifiers</entry> - <entry> - <simplelist> - <member><constant>one</constant> = <constant>EM_POPUP_ATTACHMENTS_ONE</constant></member> - <member><constant>many</constant> = <constant>EM_POPUP_ATTACHMENTS_MANY</constant></member> - </simplelist> - </entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> + &em-popups; <sect2> <title>Internal popup menus</title> @@ -2182,95 +2052,14 @@ <para> The mail popup menu class is - <interfacename>com.ximian.evolution.mail.bonobomenu:1.0</interfacename>. + <interfacename>org.gnome.evolution.mail.bonobomenu:1.0</interfacename>. </para> <para> The plugin callback data will be the target matching the plugin menu itself, and the callback returns no value. </para> - <sect2> - <title>Main Mail Menu</title> - - <para> - This is the main mail view embedded in the &Evolution; Shell. - </para> - - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.browser</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="mail-hooks-menu-EMMenuTargetSelect">EMMenuTargetSelect</link> - </entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Standalone Message View Menu</title> - - <para> - This is the popup mail-message view. - </para> - - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.messagebrowser</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="mail-hooks-menu-EMMenuTargetSelect">EMMenuTargetSelect</link>, - </entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Composer Menu</title> - <para> - This is the mail message composer. This is currently not implemented. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.composer</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry>Undefined</entry> - </row> - <row> - <entry>Qualifiers</entry> - <entry>Undefined</entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> + &em-menus; <sect2> <title>Mail Menu Targets</title> @@ -2333,168 +2122,10 @@ <para> The mail config class is - <interfacename>com.novell.evolution.mail.config:1.0</interfacename>. + <interfacename>org.gnome.evolution.mail.config:1.0</interfacename>. </para> - <sect2> - <title>Account Editor Druid</title> - <para> - This is the GnomeDruid which is shown when you create a new mail account. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.config.accountDruid</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="mail-hooks-config-EMConfigTargetAccount">EMConfigTargetAccount</link> - </entry> - </row> - <row> - <entry>Items</entry> - <entry>Define some of the items available and where they fit - in the gui</entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Account Editor Window</title> - <para> - This is the editor notebook which is shown when you edit an - existing mail account. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.config.accountEditor</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="API-struct--EMConfigTargetAccount">EMConfigTargetAccount</link>, plugin target is "<constant>account</constant>". - </entry> - </row> - <row> - <entry>Items</entry> - <entry>Define some of the items available and where they fit - in the gui</entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Composer Preferences</title> - <para> - This is the notebook of configuration items for the composer which - are accessed via the main settings window under the Composer tab. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.composerPrefs</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="mail-hooks-config-EMConfigTargetPrefs">EMConfigTargetPrefs</link> - </entry> - </row> - <row> - <entry>Items</entry> - <entry>Define some of the items available and where they fit - in the gui</entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Mail Preferences</title> - <para> - This is the notebook of configuration items for the mailer which - are accessed via the main settings window under the Mail Settings tab. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.prefs</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="mail-hooks-config-EMConfigTargetPrefs">EMConfigTargetPrefs</link> - </entry> - </row> - <row> - <entry>Items</entry> - <entry>Define some of the items available and where they fit - in the gui</entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> - - <sect2> - <title>Folder Properties</title> - <para> - This is the notebook of configuration items for a given mail folder - which is accessed via the Folder Properties item in the main menu item or - folder-tree context menu. - </para> - <informaltable> - <tgroup cols="2"> - <colspec colnum="1" colname="field" colwidth="1*"/> - <colspec colnum="2" colname="value" colwidth="4*"/> - <tbody valign="top"> - <row> - <entry>Name</entry> - <entry><interfacename>com.novell.evolution.mail.folderConfig</interfacename></entry> - </row> - <row> - <entry>Target</entry> - <entry> - <link - linkend="mail-hooks-config-EMConfigTargetFolder">EMConfigTargetFolder</link> - </entry> - </row> - <row> - <entry>Items</entry> - <entry>Define some of the items available and where they fit - in the gui</entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect2> + &em-configs; <sect2> <title>Mail Config Targets</title> @@ -2593,7 +2224,7 @@ <para> The mail event class is - <interfacename>com.ximian.evolution.mail.events:1.0</interfacename>. + <interfacename>org.gnome.evolution.mail.events:1.0</interfacename>. </para> &em-events; @@ -2858,17 +2489,132 @@ Contacts Hooks </title> <para> - None defined. + Hooks available in the the contacts component. </para> + + <sect1 id="contacts-hooks-popup"> + <title>Popup menus</title> + + <para> + The contacts popup menu class is + <interfacename>org.gnome.evolution.addressbook.popup:1.0</interfacename>. + </para> + + <!-- TODO: define the entity once it exists + &eab-popups; --> + + <sect2> + <title>Calendar Popup Targets</title> + <para>TBD</para> + </sect2> + </sect1> + + <sect1 id="contacts-hooks-menu"> + <title>Main menus</title> + + <para> + The addressbook menu class is + <interfacename>org.gnome.evolution.addressbook.bonobomenu:1.0</interfacename>. + </para> + + <!-- TODO: define the entity once it exists + &eab-menus; --> + + <sect2> + <title>Contacts Menu Targets</title> + <para>TBD</para> + </sect2> + </sect1> + + <sect1 id="contacts-hooks-config"> + <title>Config Windows and Druids</title> + <para> + The addressbook config class is + <interfacename>org.gnome.evolution.addressbook.config:1.0</interfacename>. + </para> + + <!-- TODO: define the entity once it exists + &eab-configs; --> + + <sect2> + <title>Contacts Config Targets</title> + <para>TBD</para> + </sect2> + </sect1> + + <sect1 id="contacts-hooks-event"> + <title>Events</title> + + <para> + None defined. + </para> + </sect1> </chapter> <chapter id="calendar-hooks"> <title> - Calendar and Tasks Hooks + Calendar Hooks </title> <para> - None defined. + Hooks available in the the calendar component. </para> + + <sect1 id="calendar-hooks-popup"> + <title>Popup menus</title> + + <para> + The calendar popup menu class is + <interfacename>org.gnome.evolution.calendar.popup:1.0</interfacename>. + </para> + + &ecal-popups; + + <sect2> + <title>Calendar Popup Targets</title> + <para>TBD</para> + </sect2> + </sect1> + + <sect1 id="calendar-hooks-menu"> + <title>Main menus</title> + + <para> + The calendar menu class is + <interfacename>org.gnome.evolution.calendar.bonobomenu:1.0</interfacename>. + </para> + + <!-- TODO: define the entity once it exists + &ecal-menus; --> + + <sect2> + <title>Calendar Menu Targets</title> + <para>TBD</para> + </sect2> + </sect1> + + <sect1 id="calendar-hooks-config"> + <title>Config Windows and Druids</title> + <para> + The calendar config class is + <interfacename>org.gnome.evolution.calendar.config:1.0</interfacename>. + </para> + + <!-- TODO: define the entity once it exists + &ecal-configs; --> + + <sect2> + <title>Calendar Config Targets</title> + <para>TBD</para> + </sect2> + </sect1> + + <sect1 id="calendar-hooks-event"> + <title>Events</title> + + <para> + None defined. + </para> + </sect1> </chapter> <chapter id="shell-hooks"> |