Code

gtk-tpdfv.h: Documented behavior of navigation functions.
[tpdfview.git] / src / gtk-tpdfv.h
index c4e0599416b8043f75e4ac2b81abc095a1e2143a..dc54e4c60cdd7a244e4f277fa499395fed254f01 100644 (file)
@@ -65,10 +65,27 @@ typedef struct {
 GtkWidget *
 gtk_tpdfv_new(const char *filename);
 
+/*
+ * gtk_tpdfv_reload:
+ * Reload the previously opened PDF file.
+ */
+void
+gtk_tpdfv_reload(GtkWidget *widget);
+
+/*
+ * gtk_tpdfv_get_n_pages, gtk_tpdfv_get_current_page:
+ * Get the total number of pages or the current page number.
+ */
+int
+gtk_tpdfv_get_n_pages(GtkWidget *widget);
+int
+gtk_tpdfv_get_current_page(GtkWidget *widget);
+
 /*
  * gtk_tpdfv_page_up, gtk_tpdfv_page_down,
- * gtk_tpdfv_first_page, gtk_tpdfv_last_page:
- * Navigation.
+ * gtk_tpdfv_first_page, gtk_tpdfv_last_page,
+ * gtk_tpdfv_goto_page:
+ * Navigation (none of these functions will go beyond the first or last page).
  */
 void
 gtk_tpdfv_page_up(GtkWidget *widget);
@@ -78,6 +95,8 @@ void
 gtk_tpdfv_first_page(GtkWidget *widget);
 void
 gtk_tpdfv_last_page(GtkWidget *widget);
+void
+gtk_tpdfv_goto_page(GtkWidget *widget, int page);
 
 /*
  * gtk_tpdfv_zoom_in, gtk_tpdfv_zoom_out,
@@ -90,6 +109,12 @@ void
 gtk_tpdfv_zoom_out(GtkWidget *widget);
 void
 gtk_tpdfv_zoom_1(GtkWidget *widget);
+void
+gtk_tpdfv_zoom_width(GtkWidget *widget);
+void
+gtk_tpdfv_zoom_height(GtkWidget *widget);
+void
+gtk_tpdfv_zoom_fit(GtkWidget *widget);
 
 /*
  * gtk_tpdfv_scroll_up, gtk_tpdfv_scroll_down,
@@ -105,6 +130,40 @@ gtk_tpdfv_scroll_left(GtkWidget *widget);
 void
 gtk_tpdfv_scroll_right(GtkWidget *widget);
 
+/*
+ * Screen handling.
+ */
+
+struct gtk_tpdfv_screens;
+typedef struct gtk_tpdfv_screens gtk_tpdfv_screens_t;
+
+/*
+ * gtk_tpdfv_get_screens:
+ * Get a list of available screens.
+ */
+gtk_tpdfv_screens_t *
+gtk_tpdfv_screens_init(const gchar *display_name);
+void
+gtk_tpdfv_screens_destroy(gtk_tpdfv_screens_t *screens);
+
+/*
+ * gtk_tpdfv_screens_number:
+ * Get the number of screens.
+ */
+gint
+gtk_tpdfv_screens_number(const gtk_tpdfv_screens_t *screens);
+
+/*
+ * gtk_tpdfv_screens_window_set, gtk_tpdfv_screens_window_get:
+ * Set or get the screen of a window.
+ */
+void
+gtk_tpdfv_screens_window_set(const gtk_tpdfv_screens_t *screens,
+               GtkWindow *window, gint screen);
+gint
+gtk_tpdfv_screens_window_get(const gtk_tpdfv_screens_t *screens,
+               GtkWindow *window);
+
 #ifdef __cplusplus
 } /* extern "C" */
 #endif