/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ /* * Copyright © 2011 – 2017 Red Hat, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, see . */ #if !defined (__GOA_BACKEND_INSIDE_GOA_BACKEND_H__) && !defined (GOA_BACKEND_COMPILATION) #error "Only can be included directly." #endif #ifndef __GOA_PROVIDER_H__ #define __GOA_PROVIDER_H__ #include #include #include G_BEGIN_DECLS #define GOA_TYPE_PROVIDER (goa_provider_get_type ()) G_DECLARE_DERIVABLE_TYPE (GoaProvider, goa_provider, GOA, PROVIDER, GObject); typedef struct _GoaProviderPrivate GoaProviderPrivate; const gchar *goa_provider_get_provider_type (GoaProvider *self); gchar *goa_provider_get_provider_name (GoaProvider *self, GoaObject *object); GIcon *goa_provider_get_provider_icon (GoaProvider *self, GoaObject *object); G_DEPRECATED_FOR(goa_provider_get_provider_features) GoaProviderGroup goa_provider_get_provider_group (GoaProvider *self); GoaProviderFeatures goa_provider_get_provider_features (GoaProvider *self); G_DEPRECATED void goa_provider_set_preseed_data (GoaProvider *self, GVariant *preseed_data); G_DEPRECATED GVariant *goa_provider_get_preseed_data (GoaProvider *self); GoaObject *goa_provider_add_account (GoaProvider *self, GoaClient *client, GtkDialog *dialog, GtkBox *vbox, GError **error); gboolean goa_provider_refresh_account (GoaProvider *self, GoaClient *client, GoaObject *object, GtkWindow *parent, GError **error); void goa_provider_show_account (GoaProvider *self, GoaClient *client, GoaObject *object, GtkBox *vbox, GtkGrid *dummy1, GtkGrid *dummy2); guint goa_provider_get_credentials_generation (GoaProvider *self); void goa_provider_get_all (GAsyncReadyCallback callback, gpointer user_data); gboolean goa_provider_get_all_finish (GList **out_providers, GAsyncResult *result, GError **error); GoaProvider *goa_provider_get_for_provider_type (const gchar *provider_type); /* ---------------------------------------------------------------------------------------------------- */ GtkWidget *goa_util_add_row_widget (GtkGrid *grid, gint row, const gchar *label_text, GtkWidget *widget); gchar * goa_util_lookup_keyfile_string (GoaObject *object, const gchar *key); gboolean goa_util_lookup_keyfile_boolean (GoaObject *object, const gchar *key); void goa_util_account_notify_property_cb (GObject *object, GParamSpec *pspec, gpointer user_data); GtkWidget *goa_util_add_row_switch_from_keyfile_with_blurb (GtkGrid *grid, gint row, GoaObject *object, const gchar *label_text, const gchar *key, const gchar *blurb); G_END_DECLS #endif /* __GOA_PROVIDER_H__ */