2010-11-10 20:31:15 +01:00
|
|
|
/* See LICENSE file for license and copyright information */
|
2010-11-10 20:47:53 +01:00
|
|
|
|
|
|
|
#ifndef CALLBACKS_H
|
|
|
|
#define CALLBACKS_H
|
|
|
|
|
2010-11-12 13:48:18 +01:00
|
|
|
#include <gtk/gtk.h>
|
2011-10-23 17:01:15 +02:00
|
|
|
#include <girara/types.h>
|
2011-12-09 14:50:35 +01:00
|
|
|
#include <girara/macros.h>
|
2011-09-29 17:05:54 +02:00
|
|
|
|
2012-03-27 13:34:23 +02:00
|
|
|
#include "internal.h"
|
2012-02-07 19:25:47 +01:00
|
|
|
#include "document.h"
|
2012-03-07 01:11:18 +01:00
|
|
|
#include "zathura.h"
|
2012-02-07 19:25:47 +01:00
|
|
|
|
2011-02-01 15:48:16 +01:00
|
|
|
/**
|
|
|
|
* Quits the current zathura session
|
|
|
|
*
|
|
|
|
* @param widget The gtk window of zathura
|
2012-03-07 01:11:18 +01:00
|
|
|
* @param zathura Correspondending zathura session
|
2012-02-08 15:30:13 +01:00
|
|
|
* @return true if no error occured and the event has been handled
|
2011-02-01 15:48:16 +01:00
|
|
|
*/
|
2012-03-07 01:11:18 +01:00
|
|
|
gboolean cb_destroy(GtkWidget* widget, zathura_t* zathura);
|
2011-02-01 15:48:16 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* This function gets called when the buffer of girara changes
|
|
|
|
*
|
|
|
|
* @param session The girara session
|
|
|
|
*/
|
2012-02-08 15:19:51 +01:00
|
|
|
void cb_buffer_changed(girara_session_t* session);
|
2011-02-01 15:48:16 +01:00
|
|
|
|
|
|
|
/**
|
2011-07-21 14:47:24 +02:00
|
|
|
* This function gets called when the value of the vertical scrollbars
|
2011-02-01 15:48:16 +01:00
|
|
|
* changes (e.g.: by scrolling, moving to another page)
|
|
|
|
*
|
|
|
|
* @param adjustment The vadjustment of the page view
|
|
|
|
* @param data NULL
|
|
|
|
*/
|
2010-12-29 11:46:13 +01:00
|
|
|
void cb_view_vadjustment_value_changed(GtkAdjustment *adjustment, gpointer data);
|
2013-03-23 15:59:27 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* This function gets called when the bounds or the page_size of the horizontal
|
|
|
|
* scrollbar change (e.g. when the zoom level is changed).
|
|
|
|
*
|
|
|
|
* It adjusts the value of the horizontal scrollbar, possibly based on its
|
|
|
|
* previous adjustment, stored in the tracking adjustment
|
|
|
|
* zathura->ui.hadjustment.
|
|
|
|
*
|
|
|
|
* @param adjustment The horizontal adjustment of a gtkScrolledWindow
|
|
|
|
* @param data The zathura instance
|
|
|
|
*/
|
|
|
|
void cb_view_hadjustment_changed(GtkAdjustment *adjustment, gpointer data);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* This function gets called when the bounds or the page_size of the vertical
|
|
|
|
* scrollbar change (e.g. when the zoom level is changed).
|
|
|
|
*
|
|
|
|
* It adjusts the value of the vertical scrollbar based on its previous
|
|
|
|
* adjustment, stored in the tracking adjustment zathura->ui.hadjustment.
|
|
|
|
*
|
|
|
|
* @param adjustment The vertical adjustment of a gtkScrolledWindow
|
|
|
|
* @param data The zathura instance
|
|
|
|
*/
|
|
|
|
void cb_view_vadjustment_changed(GtkAdjustment *adjustment, gpointer data);
|
|
|
|
|
|
|
|
/* This function gets called when the value of the adjustment changes.
|
|
|
|
*
|
|
|
|
* It updates the value of the tracking adjustment, only if the bounds of the
|
|
|
|
* adjustment have not changed (if they did change,
|
|
|
|
* cb_adjustment_track_bounds() will take care of updating everything).
|
|
|
|
*
|
|
|
|
* @param adjustment The adjustment instance
|
|
|
|
* @param data The tracking adjustment instance
|
|
|
|
*/
|
|
|
|
void cb_adjustment_track_value(GtkAdjustment* adjustment, gpointer data);
|
|
|
|
|
|
|
|
/* This function gets called when the bounds or the page_size of the adjustment
|
|
|
|
* change.
|
|
|
|
*
|
|
|
|
* It updates the value, bounds and page_size of the tracking adjustment.
|
|
|
|
*
|
|
|
|
* @param adjustment The adjustment instance
|
|
|
|
* @param data The tracking adjustment instance
|
|
|
|
*/
|
|
|
|
void cb_adjustment_track_bounds(GtkAdjustment* adjustment, gpointer data);
|
|
|
|
|
2011-07-21 14:47:24 +02:00
|
|
|
/**
|
|
|
|
* This function gets called when the value of the "pages-per-row"
|
|
|
|
* variable changes
|
|
|
|
*
|
|
|
|
* @param session The current girara session
|
2012-02-08 15:30:13 +01:00
|
|
|
* @param name The name of the row
|
|
|
|
* @param type The settings type
|
|
|
|
* @param value The value
|
|
|
|
* @param data Custom data
|
2011-07-21 14:47:24 +02:00
|
|
|
*/
|
2013-10-20 16:20:08 +02:00
|
|
|
void cb_page_layout_value_changed(girara_session_t* session, const char* name,
|
2012-06-27 22:34:16 +02:00
|
|
|
girara_setting_type_t type, void* value, void* data);
|
2010-11-12 13:48:18 +01:00
|
|
|
|
2011-09-29 17:05:54 +02:00
|
|
|
/**
|
|
|
|
* Called when an index element is activated (e.g.: double click)
|
|
|
|
*
|
|
|
|
* @param tree_view Tree view
|
|
|
|
* @param path Path
|
|
|
|
* @param column Column
|
|
|
|
* @param zathura Zathura session
|
|
|
|
*/
|
2011-09-29 18:17:03 +02:00
|
|
|
void cb_index_row_activated(GtkTreeView* tree_view, GtkTreePath* path,
|
2011-12-09 14:50:35 +01:00
|
|
|
GtkTreeViewColumn* column, void* zathura);
|
2011-09-29 17:05:54 +02:00
|
|
|
|
2012-02-07 17:31:47 +01:00
|
|
|
/**
|
|
|
|
* Called when input has been passed to the sc_follow dialog
|
|
|
|
*
|
|
|
|
* @param entry The dialog inputbar
|
|
|
|
* @param session The girara session
|
2012-02-08 15:30:13 +01:00
|
|
|
* @return true if no error occured and the event has been handled
|
2012-02-07 17:31:47 +01:00
|
|
|
*/
|
|
|
|
bool cb_sc_follow(GtkEntry* entry, girara_session_t* session);
|
|
|
|
|
2012-12-07 16:03:43 +01:00
|
|
|
/**
|
|
|
|
* Called when input has been passed to the sc_display_link dialog
|
|
|
|
*
|
|
|
|
* @param entry The dialog inputbar
|
|
|
|
* @param session The girara session
|
|
|
|
* @return true if no error occured and the event has been handled
|
|
|
|
*/
|
|
|
|
bool cb_sc_display_link(GtkEntry* entry, girara_session_t* session);
|
|
|
|
|
2012-02-07 19:25:47 +01:00
|
|
|
/**
|
|
|
|
* Emitted when file has been changed
|
|
|
|
*
|
|
|
|
* @param monitor The file monitor
|
|
|
|
* @param file The file
|
|
|
|
* @param other_file A file or NULL
|
|
|
|
* @param event The monitor event
|
|
|
|
* @param session The girara session
|
|
|
|
*/
|
2012-02-08 15:30:13 +01:00
|
|
|
void cb_file_monitor(GFileMonitor* monitor, GFile* file, GFile* other_file,
|
|
|
|
GFileMonitorEvent event, girara_session_t* session);
|
2012-02-07 19:25:47 +01:00
|
|
|
|
2012-02-08 23:21:27 +01:00
|
|
|
/**
|
|
|
|
* Callback to read new password for file that should be opened
|
|
|
|
*
|
|
|
|
* @param entry The password entry
|
|
|
|
* @param dialog The dialog information
|
|
|
|
* @return true if input has been handled
|
|
|
|
*/
|
|
|
|
bool cb_password_dialog(GtkEntry* entry, zathura_password_dialog_info_t* dialog);
|
|
|
|
|
2012-02-09 01:46:51 +01:00
|
|
|
/**
|
|
|
|
* Emitted when the view has been resized
|
|
|
|
*
|
|
|
|
* @param widget View
|
|
|
|
* @param allocation Allocation
|
|
|
|
* @param zathura Zathura session
|
|
|
|
* @return true if signal has been handled successfully
|
|
|
|
*/
|
|
|
|
bool cb_view_resized(GtkWidget* widget, GtkAllocation* allocation, zathura_t* zathura);
|
|
|
|
|
2012-03-14 17:33:35 +01:00
|
|
|
/**
|
|
|
|
* Emitted when the 'recolor' setting is changed
|
|
|
|
*
|
|
|
|
* @param session Girara session
|
|
|
|
* @param name Name of the setting ("recolor")
|
|
|
|
* @param type Type of the setting (BOOLEAN)
|
|
|
|
* @param value New value
|
|
|
|
* @param data Custom data
|
|
|
|
*/
|
|
|
|
void cb_setting_recolor_change(girara_session_t* session, const char* name,
|
|
|
|
girara_setting_type_t type, void* value, void* data);
|
|
|
|
|
2012-07-31 16:43:20 +02:00
|
|
|
/**
|
|
|
|
* Emitted when the 'recolor-keephue' setting is changed
|
|
|
|
*
|
|
|
|
* @param session Girara session
|
|
|
|
* @param name Name of the setting ("recolor")
|
|
|
|
* @param type Type of the setting (BOOLEAN)
|
|
|
|
* @param value New value
|
|
|
|
* @param data Custom data
|
|
|
|
*/
|
|
|
|
void cb_setting_recolor_keep_hue_change(girara_session_t* session, const char* name,
|
|
|
|
girara_setting_type_t type, void* value, void* data);
|
|
|
|
|
|
|
|
|
2012-05-01 19:09:33 +02:00
|
|
|
/**
|
|
|
|
* Unknown command handler which is used to handle the strict numeric goto
|
|
|
|
* command
|
|
|
|
*
|
|
|
|
* @param session The girara session
|
|
|
|
* @param input The command input
|
|
|
|
* @return true if the input has been handled
|
|
|
|
*/
|
|
|
|
bool cb_unknown_command(girara_session_t* session, const char* input);
|
|
|
|
|
2013-08-31 13:12:41 +02:00
|
|
|
/**
|
|
|
|
* Emitted when text has been selected in the page widget
|
|
|
|
*
|
|
|
|
* @param widget page view widget
|
|
|
|
* @param text selected text
|
|
|
|
* @param data user data
|
|
|
|
*/
|
|
|
|
void cb_page_widget_text_selected(ZathuraPage* page, const char* text,
|
|
|
|
void* data);
|
|
|
|
|
|
|
|
void cb_page_widget_image_selected(ZathuraPage* page, GdkPixbuf* pixbuf,
|
|
|
|
void* data);
|
|
|
|
|
2010-11-10 20:47:53 +01:00
|
|
|
#endif // CALLBACKS_H
|