anastasis-gtk_attributes.h (1614B)
1 /* 2 This file is part of anastasis-gtk. 3 Copyright (C) 2020 Anastasis SARL 4 5 Anastasis is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published 7 by the Free Software Foundation; either version 3, or (at your 8 option) any later version. 9 10 Anastasis is distributed in the hope that it will be useful, but 11 WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with Anastasis; see the file COPYING. If not, write to the 17 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 18 Boston, MA 02110-1301, USA. 19 */ 20 /** 21 * @file src/anastasis/anastasis-gtk_attributes.h 22 * @brief 23 * @author Christian Grothoff 24 * @author Dennis Neufeld 25 */ 26 #ifndef ANASTASIS_GTK_ATTRIBUTES_H 27 #define ANASTASIS_GTK_ATTRIBUTES_H 28 29 #include <jansson.h> 30 #include <gtk/gtk.h> 31 32 /** 33 * Tries to compile the user's attributes into a JSON object. 34 * 35 * @param partial is partial collection OK? 36 * @return NULL on failure 37 */ 38 json_t * 39 AG_collect_attributes (bool partial); 40 41 42 /** 43 * Set widget @a w value from a the @a value. 44 * 45 * @param w a widget to initialize 46 * @param type the attribute type of the widget and the value 47 * @param value the value to restore to the widget @a w 48 */ 49 void 50 AG_import_attribute_data (GtkWidget *w, 51 const char *type, 52 const json_t *value); 53 54 55 #endif