mirror of
https://git.pwmt.org/pwmt/zathura.git
synced 2025-02-11 15:14:56 +01:00
Implement zathura_page_get_annotations
This commit is contained in:
parent
e70a07e0cd
commit
e2c32a07fd
3 changed files with 48 additions and 1 deletions
29
page.c
29
page.c
|
@ -308,7 +308,8 @@ zathura_page_image_get_cairo(zathura_page_t* page, zathura_image_t* image, zathu
|
||||||
return plugin->functions.page_image_get_cairo(page, page->data, image, error);
|
return plugin->functions.page_image_get_cairo(page, page->data, image, error);
|
||||||
}
|
}
|
||||||
|
|
||||||
char* zathura_page_get_text(zathura_page_t* page, zathura_rectangle_t rectangle, zathura_error_t* error)
|
char*
|
||||||
|
zathura_page_get_text(zathura_page_t* page, zathura_rectangle_t rectangle, zathura_error_t* error)
|
||||||
{
|
{
|
||||||
if (page == NULL || page->document == NULL ) {
|
if (page == NULL || page->document == NULL ) {
|
||||||
if (error) {
|
if (error) {
|
||||||
|
@ -328,6 +329,32 @@ char* zathura_page_get_text(zathura_page_t* page, zathura_rectangle_t rectangle,
|
||||||
return plugin->functions.page_get_text(page, page->data, rectangle, error);
|
return plugin->functions.page_get_text(page, page->data, rectangle, error);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
girara_list_t*
|
||||||
|
zathura_page_get_annotations(zathura_page_t* page, zathura_error_t* error)
|
||||||
|
{
|
||||||
|
if (page == NULL || page->document == NULL ) {
|
||||||
|
if (error) {
|
||||||
|
*error = ZATHURA_ERROR_INVALID_ARGUMENTS;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
|
||||||
|
if (plugin->functions.page_get_annotations == NULL) {
|
||||||
|
if (error) {
|
||||||
|
*error = ZATHURA_ERROR_NOT_IMPLEMENTED;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
girara_list_t* result = plugin->functions.page_get_annotations(page, page->data, error);
|
||||||
|
if (result != NULL) {
|
||||||
|
girara_list_set_free_function(result, (girara_free_function_t) zathura_annotation_free);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
zathura_error_t
|
zathura_error_t
|
||||||
zathura_page_render(zathura_page_t* page, cairo_t* cairo, bool printing)
|
zathura_page_render(zathura_page_t* page, cairo_t* cairo, bool printing)
|
||||||
{
|
{
|
||||||
|
|
10
page.h
10
page.h
|
@ -192,6 +192,16 @@ cairo_surface_t* zathura_page_image_get_cairo(zathura_page_t* page, zathura_imag
|
||||||
*/
|
*/
|
||||||
char* zathura_page_get_text(zathura_page_t* page, zathura_rectangle_t rectangle, zathura_error_t* error);
|
char* zathura_page_get_text(zathura_page_t* page, zathura_rectangle_t rectangle, zathura_error_t* error);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a list of annotations (see \ref zathura_annotation_t)
|
||||||
|
*
|
||||||
|
* @param page Page
|
||||||
|
* @param error Set to an error value (see \ref zathura_error_t) if an
|
||||||
|
* error occured
|
||||||
|
* @return List of annotations or NULL if an error occured
|
||||||
|
*/
|
||||||
|
girara_list_t* zathura_page_get_annotations(zathura_page_t* page, zathura_error_t* error);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Render page
|
* Render page
|
||||||
*
|
*
|
||||||
|
|
10
plugin-api.h
10
plugin-api.h
|
@ -141,6 +141,11 @@ typedef cairo_surface_t* (*zathura_plugin_page_image_get_cairo_t)(zathura_page_t
|
||||||
*/
|
*/
|
||||||
typedef char* (*zathura_plugin_page_get_text_t)(zathura_page_t* page, void* data, zathura_rectangle_t rectangle, zathura_error_t* error);
|
typedef char* (*zathura_plugin_page_get_text_t)(zathura_page_t* page, void* data, zathura_rectangle_t rectangle, zathura_error_t* error);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get list of annotations
|
||||||
|
*/
|
||||||
|
typedef girara_list_t* (*zathura_plugin_page_get_annotations_t)(zathura_page_t* page, void* data, zathura_error_t* error);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Renders the page
|
* Renders the page
|
||||||
*/
|
*/
|
||||||
|
@ -229,6 +234,11 @@ struct zathura_plugin_functions_s
|
||||||
*/
|
*/
|
||||||
zathura_plugin_page_get_text_t page_get_text;
|
zathura_plugin_page_get_text_t page_get_text;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get list of annotations
|
||||||
|
*/
|
||||||
|
zathura_plugin_page_get_annotations_t page_get_annotations;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Renders the page
|
* Renders the page
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in a new issue