/* * Copyright 2021 Vincent Sanders * * This file is part of NetSurf, http://www.netsurf-browser.org/ * * NetSurf is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; version 2 of the License. * * NetSurf is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ /** * \file * Implementation of netsurf bitmap for fltk. */ #include extern "C" { #include "utils/errors.h" #include "netsurf/bitmap.h" } #include "fltk/bitmap.h" /** * Create a new bitmap. * * \param width width of image in pixels * \param height width of image in pixels * \param state The state to create the bitmap in. * \return A bitmap structure or NULL on error. */ static void *nsfltk_bitmap_create(int width, int height, unsigned int state) { return NULL; } /** * Destroy a bitmap. * * \param bitmap The bitmap to destroy. */ static void nsfltk_bitmap_destroy(void *bitmap) { } /** * Set the opacity of a bitmap. * * \param bitmap The bitmap to set opacity on. * \param opaque The bitmap opacity to set. */ static void nsfltk_bitmap_set_opaque(void *bitmap, bool opaque) { } /** * Get the opacity of a bitmap. * * \param bitmap The bitmap to examine. * \return The bitmap opacity. */ static bool nsfltk_bitmap_get_opaque(void *bitmap) { return false; } /** * Test if a bitmap is opaque. * * \param bitmap The bitmap to examine. * \return The bitmap opacity. */ static bool nsfltk_bitmap_test_opaque(void *bitmap) { return false; } /** * Get the image buffer from a bitmap * * \param bitmap The bitmap to get the buffer from. * \return The image buffer or NULL if there is none. */ static unsigned char *nsfltk_bitmap_get_buffer(void *bitmap) { return NULL; } /** * Get the number of bytes per row of the image * * \param bitmap The bitmap * \return The number of bytes for a row of the bitmap. */ static size_t nsfltk_bitmap_get_rowstride(void *bitmap) { return 0; } /** * Get the bitmap width * * \param bitmap The bitmap * \return The bitmap width in pixels. */ static int nsfltk_bitmap_get_width(void *bitmap) { return 0; } /** * Get the bitmap height * * \param bitmap The bitmap * \return The bitmap height in pixels. */ static int nsfltk_bitmap_get_height(void *bitmap) { return 0; } /** * Get the *bytes* per pixel. * * \param bitmap The bitmap */ static size_t nsfltk_bitmap_get_bpp(void *bitmap) { return 4; } /** * Save a bitmap to disc. * * \param bitmap The bitmap to save * \param path The path to save the bitmap to. * \param flags Flags affecting the save. */ static bool nsfltk_bitmap_save(void *bitmap, const char *path, unsigned flags) { return false; } /** * Marks a bitmap as modified. * * \param bitmap The bitmap set as modified. */ static void nsfltk_bitmap_modified(void *bitmap) { } /** * Render content into a bitmap. * * \param bitmap The bitmap to render into. * \param content The content to render. */ static nserror nsfltk_bitmap_render(struct bitmap *bitmap, struct hlcache_handle *content) { return NSERROR_OK; } static struct gui_bitmap_table bitmap_table = { .create = nsfltk_bitmap_create, .destroy = nsfltk_bitmap_destroy, .set_opaque = nsfltk_bitmap_set_opaque, .get_opaque = nsfltk_bitmap_get_opaque, .test_opaque = nsfltk_bitmap_test_opaque, .get_buffer = nsfltk_bitmap_get_buffer, .get_rowstride = nsfltk_bitmap_get_rowstride, .get_width = nsfltk_bitmap_get_width, .get_height = nsfltk_bitmap_get_height, .get_bpp = nsfltk_bitmap_get_bpp, .save = nsfltk_bitmap_save, .modified = nsfltk_bitmap_modified, .render = nsfltk_bitmap_render, }; struct gui_bitmap_table *nsfltk_bitmap_table = &bitmap_table;