Branch data Line data Source code
1 : : /* 2 : : * Copyright (C) 2022 James Westman <james@jwestman.net> 3 : : * 4 : : * This library is free software; you can redistribute it and/or 5 : : * modify it under the terms of the GNU Lesser General Public 6 : : * License as published by the Free Software Foundation; either 7 : : * version 2.1 of the License, or (at your option) any later version. 8 : : * 9 : : * This library is distributed in the hope that it will be useful, 10 : : * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 : : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 : : * Lesser General Public License for more details. 13 : : * 14 : : * You should have received a copy of the GNU Lesser General Public 15 : : * License along with this library; if not, see <https://www.gnu.org/licenses/>. 16 : : */ 17 : : 18 : : #pragma once 19 : : 20 : : #include <gdk/gdk.h> 21 : : #include <shumate/shumate-vector-sprite.h> 22 : : 23 : : G_BEGIN_DECLS 24 : : 25 : : #define SHUMATE_TYPE_VECTOR_SPRITE_SHEET (shumate_vector_sprite_sheet_get_type()) 26 [ + - + + : 702 : G_DECLARE_FINAL_TYPE (ShumateVectorSpriteSheet, shumate_vector_sprite_sheet, SHUMATE, VECTOR_SPRITE_SHEET, GObject) + + - + + - - + ] 27 : : 28 : : ShumateVectorSpriteSheet *shumate_vector_sprite_sheet_new (void); 29 : : 30 : : void shumate_vector_sprite_sheet_add_sprite (ShumateVectorSpriteSheet *self, 31 : : const char *name, 32 : : ShumateVectorSprite *sprite); 33 : : gboolean shumate_vector_sprite_sheet_add_page (ShumateVectorSpriteSheet *self, 34 : : GdkTexture *texture, 35 : : const char *json, 36 : : double default_scale, 37 : : GError **error); 38 : : 39 : : ShumateVectorSprite *shumate_vector_sprite_sheet_get_sprite (ShumateVectorSpriteSheet *self, 40 : : const char *name, 41 : : double scale); 42 : : 43 : : typedef ShumateVectorSprite *(ShumateVectorSpriteFallbackFunc) (ShumateVectorSpriteSheet *sprite_sheet, 44 : : const char *name, 45 : : double scale, 46 : : gpointer user_data); 47 : : 48 : : void shumate_vector_sprite_sheet_set_fallback (ShumateVectorSpriteSheet *self, 49 : : ShumateVectorSpriteFallbackFunc fallback, 50 : : gpointer user_data, 51 : : GDestroyNotify notify); 52 : : 53 : : G_END_DECLS