1 /* 2 * This file is part of GNOME LaTeX. 3 * 4 * Copyright (C) 2020 - Sébastien Wilmet <swilmet@gnome.org> 5 * 6 * GNOME LaTeX is free software: you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation, either version 3 of the License, or 9 * (at your option) any later version. 10 * 11 * GNOME LaTeX 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 14 * GNU General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with GNOME LaTeX. If not, see <http://www.gnu.org/licenses/>. 18 */ 19 20 #ifndef LATEXILA_SETTINGS_H 21 #define LATEXILA_SETTINGS_H 22 23 #include <gio/gio.h> 24 25 G_BEGIN_DECLS 26 27 #define LATEXILA_TYPE_SETTINGS (latexila_settings_get_type ()) 28 #define LATEXILA_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LATEXILA_TYPE_SETTINGS, LatexilaSettings)) 29 #define LATEXILA_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LATEXILA_TYPE_SETTINGS, LatexilaSettingsClass)) 30 #define LATEXILA_IS_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LATEXILA_TYPE_SETTINGS)) 31 #define LATEXILA_IS_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LATEXILA_TYPE_SETTINGS)) 32 #define LATEXILA_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LATEXILA_TYPE_SETTINGS, LatexilaSettingsClass)) 33 34 typedef struct _LatexilaSettings LatexilaSettings; 35 typedef struct _LatexilaSettingsClass LatexilaSettingsClass; 36 typedef struct _LatexilaSettingsPrivate LatexilaSettingsPrivate; 37 38 struct _LatexilaSettings 39 { 40 GObject parent; 41 42 LatexilaSettingsPrivate *priv; 43 }; 44 45 struct _LatexilaSettingsClass 46 { 47 GObjectClass parent_class; 48 }; 49 50 GType latexila_settings_get_type (void); 51 52 LatexilaSettings * 53 latexila_settings_get_singleton (void); 54 55 void _latexila_settings_unref_singleton (void); 56 57 GSettings * latexila_settings_peek_editor_settings (LatexilaSettings *self); 58 59 G_END_DECLS 60 61 #endif /* LATEXILA_SETTINGS_H */ 62