diff options
author | Shaun McCance <shaunm@src.gnome.org> | 2004-01-03 14:23:49 +0000 |
---|---|---|
committer | Shaun McCance <shaunm@src.gnome.org> | 2004-01-03 14:23:49 +0000 |
commit | 57ee114c1520206215f9f34d9272f15ab0975adc (patch) | |
tree | 5561af84cedf5780d16a25729168e0433b55c5e3 | |
parent | 4a5873ad38ad3669c54e765edef6e2149bbc7595 (diff) | |
download | yelp-57ee114c1520206215f9f34d9272f15ab0975adc.tar.gz |
- Make test-pager work again.
* src/Makefile.am:
* src/test-pager.c:
- Make test-pager work again.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | src/Makefile.am | 14 | ||||
-rw-r--r-- | src/test-pager.c | 99 |
3 files changed, 96 insertions, 23 deletions
@@ -1,3 +1,9 @@ +2003-01-03 Shaun McCance <shaunm@gnome.org> + + * src/Makefile.am: + * src/test-pager.c: + - Make test-pager work again. + 2004-01-03 Robert Sedak <robert.sedak@sk.htnet.hr> * configure.in: Added "hr" in ALL_LINGUAS. diff --git a/src/Makefile.am b/src/Makefile.am index c767efd0..02792fb6 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -16,6 +16,7 @@ INCLUDES = \ -DBINDIR=\""$(bindir)"\" bin_PROGRAMS = yelp +noinst_PROGRAMS = test-pager install-exec-local: rm -f $(DESTDIR)$(bindir)/gnome-help @@ -35,6 +36,19 @@ yelp-marshal.c: yelp-marshal.h yelp-marshal-main.c: yelp-marshal.c +test_pager_SOURCES = \ + yelp-db-pager.c yelp-db-pager.h \ + yelp-error.c yelp-error.h \ + yelp-pager.c yelp-pager.h \ + yelp-theme.c yelp-theme.h \ + yelp-toc-pager.c yelp-toc-pager.h \ + yelp-uri.c yelp-uri.h \ + yelp-marshal-main.c test-pager.c + +test_pager_LDADD = \ + @YELP_LIBS@ \ + $(POPT_LIBS) + yelp_SOURCES = \ $(gnome_yelp_idl_sources) \ yelp-base.c yelp-base.h \ diff --git a/src/test-pager.c b/src/test-pager.c index 2fb00335..b52019b9 100644 --- a/src/test-pager.c +++ b/src/test-pager.c @@ -22,38 +22,58 @@ #include <gtk/gtk.h> #include <stdio.h> +#include <libgnomeui/gnome-ui-init.h> +#include <string.h> + +#include "config.h" #include "yelp-pager.h" #include "yelp-db-pager.h" +#include "yelp-theme.h" +#include "yelp-toc-pager.h" +#include "yelp-uri.h" -void list_sections (YelpPager *pager); -void save_chunk (YelpPager *pager, - gchar *chunk_id); +static void pager_contents_cb (YelpPager *pager); +static void pager_page_cb (YelpPager *pager, + gchar *page_id); +static void pager_finish_cb (YelpPager *pager); +static void pager_cancel_cb (YelpPager *pager); +static void pager_error_cb (YelpPager *pager); gint main (gint argc, gchar **argv) { - YelpURI *uri; - YelpPager *pager; + GnomeVFSURI *uri; + YelpPager *pager; if (argc < 2) { return 1; } - g_type_init (); - g_thread_init (NULL); + gnome_program_init (PACKAGE, VERSION, + LIBGNOMEUI_MODULE, argc, argv, + GNOME_PROGRAM_STANDARD_PROPERTIES, + NULL); + gnome_vfs_init (); + + yelp_theme_init (); + yelp_toc_pager_init (); uri = yelp_uri_new (argv[1]); - pager = yelp_db_pager_new (uri); - g_signal_connect (pager, - "sections", - G_CALLBACK (list_sections), - NULL); + switch (yelp_uri_get_resource_type (uri)) { + case YELP_URI_TYPE_DOCBOOK_XML: + pager = yelp_db_pager_new (uri); + break; + default: + printf ("No pager type exists for this URI."); + return 1; + } - g_signal_connect (pager, - "chunk", - G_CALLBACK (save_chunk), - NULL); + g_signal_connect (pager, "contents", G_CALLBACK (pager_contents_cb), NULL); + g_signal_connect (pager, "page", G_CALLBACK (pager_page_cb), NULL); + g_signal_connect (pager, "finish", G_CALLBACK (pager_finish_cb), NULL); + g_signal_connect (pager, "cancel", G_CALLBACK (pager_cancel_cb), NULL); + g_signal_connect (pager, "error", G_CALLBACK (pager_error_cb), NULL); yelp_pager_start (pager); @@ -62,17 +82,50 @@ main (gint argc, gchar **argv) return 0; } -void save_chunk (YelpPager *pager, gchar *chunk_id) +static void +pager_contents_cb (YelpPager *pager) +{ + printf ("pager_contents_cb\n"); +} + +static void +pager_page_cb (YelpPager *pager, + gchar *page_id) +{ + const YelpPage *page = yelp_pager_get_page (pager, page_id); + + printf ("pager_page_cb:\n" + " id: %s\n" + " title: %s\n" + " strlen: %d\n", + page->id, + page->title, + strlen (page->chunk)); +} + +static void +pager_finish_cb (YelpPager *pager) +{ + printf ("pager_finish_cb\n"); + gtk_main_quit (); +} + +static void +pager_cancel_cb (YelpPager *pager) { - printf("save_chunk: %s\n", chunk_id); + printf ("pager_cancel_cb\n"); + gtk_main_quit (); } -void -list_sections (YelpPager *pager) +static void +pager_error_cb (YelpPager *pager) { - const GtkTreeModel *sections; + GError *error = yelp_pager_get_error (pager); - sections = yelp_pager_get_sections (pager); + if (!error) + printf ("pager_error_cb: NO ERROR\n"); + else + printf ("pager_error_cb: %s\n", error->message); - printf ("%i\n", gtk_tree_model_get_n_columns (sections)); + gtk_main_quit (); } |