Branch data Line data Source code
1 : : /* 2 : : * Copyright (C) 2008 Pierre-Luc Beaudoin <pierre-luc@pierlux.com> 3 : : * Copyright (C) 2011-2013 Jiri Techet <techet@gmail.com> 4 : : * Copyright (C) 2019 Marcus Lundblad <ml@update.uu.se> 5 : : * 6 : : * This library is free software; you can redistribute it and/or 7 : : * modify it under the terms of the GNU Lesser General Public 8 : : * License as published by the Free Software Foundation; either 9 : : * version 2.1 of the License, or (at your option) any later version. 10 : : * 11 : : * This library is distributed in the hope that it will be useful, 12 : : * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 : : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 : : * Lesser General Public License for more details. 15 : : * 16 : : * You should have received a copy of the GNU Lesser General Public 17 : : * License along with this library; if not, write to the Free Software 18 : : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 19 : : */ 20 : : 21 : : #if !defined (__SHUMATE_SHUMATE_H_INSIDE__) && !defined (SHUMATE_COMPILATION) 22 : : #error "Only <shumate/shumate.h> can be included directly." 23 : : #endif 24 : : 25 : : #ifndef SHUMATE_PATH_LAYER_H 26 : : #define SHUMATE_PATH_LAYER_H 27 : : 28 : : #include <shumate/shumate-layer.h> 29 : : #include <shumate/shumate-location.h> 30 : : 31 : : #include <gdk/gdk.h> 32 : : #include <glib-object.h> 33 : : 34 : : G_BEGIN_DECLS 35 : : 36 : : #define SHUMATE_TYPE_PATH_LAYER shumate_path_layer_get_type () 37 [ # # # # : 0 : G_DECLARE_FINAL_TYPE (ShumatePathLayer, shumate_path_layer, SHUMATE, PATH_LAYER, ShumateLayer) # # ] 38 : : 39 : : ShumatePathLayer *shumate_path_layer_new (ShumateViewport *viewport); 40 : : 41 : : void shumate_path_layer_add_node (ShumatePathLayer *self, 42 : : ShumateLocation *location); 43 : : void shumate_path_layer_remove_node (ShumatePathLayer *self, 44 : : ShumateLocation *location); 45 : : void shumate_path_layer_remove_all (ShumatePathLayer *self); 46 : : void shumate_path_layer_insert_node (ShumatePathLayer *self, 47 : : ShumateLocation *location, 48 : : guint position); 49 : : GList *shumate_path_layer_get_nodes (ShumatePathLayer *self); 50 : : 51 : : GdkRGBA *shumate_path_layer_get_fill_color (ShumatePathLayer *self); 52 : : void shumate_path_layer_set_fill_color (ShumatePathLayer *self, 53 : : const GdkRGBA *color); 54 : : 55 : : GdkRGBA *shumate_path_layer_get_stroke_color (ShumatePathLayer *self); 56 : : void shumate_path_layer_set_stroke_color (ShumatePathLayer *self, 57 : : const GdkRGBA *color); 58 : : 59 : : GdkRGBA *shumate_path_layer_get_outline_color (ShumatePathLayer *self); 60 : : void shumate_path_layer_set_outline_color (ShumatePathLayer *self, 61 : : const GdkRGBA *color); 62 : : 63 : : gboolean shumate_path_layer_get_fill (ShumatePathLayer *self); 64 : : void shumate_path_layer_set_fill (ShumatePathLayer *self, 65 : : gboolean value); 66 : : 67 : : gboolean shumate_path_layer_get_stroke (ShumatePathLayer *self); 68 : : void shumate_path_layer_set_stroke (ShumatePathLayer *self, 69 : : gboolean value); 70 : : 71 : : double shumate_path_layer_get_stroke_width (ShumatePathLayer *self); 72 : : void shumate_path_layer_set_stroke_width (ShumatePathLayer *self, 73 : : double value); 74 : : 75 : : double shumate_path_layer_get_outline_width (ShumatePathLayer *self); 76 : : void shumate_path_layer_set_outline_width (ShumatePathLayer *self, 77 : : double value); 78 : : 79 : : gboolean shumate_path_layer_get_closed (ShumatePathLayer *self); 80 : : void shumate_path_layer_set_closed (ShumatePathLayer *self, 81 : : gboolean value); 82 : : 83 : : GList *shumate_path_layer_get_dash (ShumatePathLayer *self); 84 : : void shumate_path_layer_set_dash (ShumatePathLayer *self, 85 : : GList *dash_pattern); 86 : : 87 : : G_END_DECLS 88 : : 89 : : #endif 90 : :