* 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, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __GTK_CSS_PROVIDER_H__
#define __GTK_CSS_PROVIDER_H__
-#include <glib-object.h>
+#include <gio/gio.h>
+#include <gtk/gtkcsssection.h>
G_BEGIN_DECLS
#define GTK_IS_CSS_PROVIDER_CLASS(c) (G_TYPE_CHECK_CLASS_TYPE ((c), GTK_TYPE_CSS_PROVIDER))
#define GTK_CSS_PROVIDER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GTK_TYPE_CSS_PROVIDER, GtkCssProviderClass))
+#define GTK_CSS_PROVIDER_ERROR (gtk_css_provider_error_quark ())
+
+typedef enum
+{
+ GTK_CSS_PROVIDER_ERROR_FAILED,
+ GTK_CSS_PROVIDER_ERROR_SYNTAX,
+ GTK_CSS_PROVIDER_ERROR_IMPORT,
+ GTK_CSS_PROVIDER_ERROR_NAME,
+ GTK_CSS_PROVIDER_ERROR_DEPRECATED,
+ GTK_CSS_PROVIDER_ERROR_UNKNOWN_VALUE
+} GtkCssProviderError;
+
+GQuark gtk_css_provider_error_quark (void);
+
typedef struct _GtkCssProvider GtkCssProvider;
typedef struct _GtkCssProviderClass GtkCssProviderClass;
+typedef struct _GtkCssProviderPrivate GtkCssProviderPrivate;
struct _GtkCssProvider
{
GObject parent_instance;
- gpointer priv;
+ GtkCssProviderPrivate *priv;
};
struct _GtkCssProviderClass
{
GObjectClass parent_class;
+
+ void (* parsing_error) (GtkCssProvider *provider,
+ GtkCssSection *section,
+ const GError * error);
+
+ /* Padding for future expansion */
+ void (*_gtk_reserved2) (void);
+ void (*_gtk_reserved3) (void);
+ void (*_gtk_reserved4) (void);
};
GType gtk_css_provider_get_type (void) G_GNUC_CONST;
GtkCssProvider * gtk_css_provider_new (void);
+GDK_AVAILABLE_IN_3_2
+char * gtk_css_provider_to_string (GtkCssProvider *provider);
+
gboolean gtk_css_provider_load_from_data (GtkCssProvider *css_provider,
const gchar *data,
gssize length,