[gnome-color-manager] Remove the Enum suffix from the enum types to be more in the GObject style



commit 4a3810eb5268f03c1e756797857a030884eb03a1
Author: Richard Hughes <richard hughsie com>
Date:   Wed Mar 24 16:10:25 2010 +0000

    Remove the Enum suffix from the enum types to be more in the GObject style

 src/gcm-calibrate-argyll.c    |   30 ++--
 src/gcm-calibrate.c           |   66 ++++----
 src/gcm-client.c              |   34 ++--
 src/gcm-dbus.c                |   30 ++--
 src/gcm-device-cups.c         |    8 +-
 src/gcm-device-sane.c         |    4 +-
 src/gcm-device-udev.c         |    8 +-
 src/gcm-device-virtual.c      |    6 +-
 src/gcm-device-virtual.h      |    4 +-
 src/gcm-device-xrandr.c       |   19 ++-
 src/gcm-device-xrandr.h       |    1 +
 src/gcm-device.c              |  142 +++++++++---------
 src/gcm-device.h              |    8 +-
 src/gcm-dump-profile.c        |    8 +-
 src/gcm-enum.c                |   98 ++++++------
 src/gcm-enum.h                |   88 ++++++------
 src/gcm-import.c              |    4 +-
 src/gcm-inspect.c             |    6 +-
 src/gcm-install-system-wide.c |    4 +-
 src/gcm-prefs.c               |  323 +++++++++++++++++++----------------------
 src/gcm-profile-lcms1.c       |   50 +++---
 src/gcm-profile.c             |   74 +++++-----
 src/gcm-utils.c               |   58 ++++----
 src/gcm-utils.h               |    4 +-
 24 files changed, 530 insertions(+), 547 deletions(-)
---
diff --git a/src/gcm-calibrate-argyll.c b/src/gcm-calibrate-argyll.c
index 3bec8af..b0d6dcd 100644
--- a/src/gcm-calibrate-argyll.c
+++ b/src/gcm-calibrate-argyll.c
@@ -151,7 +151,7 @@ gcm_calibrate_argyll_printer_get_patches (GcmCalibrateArgyll *calibrate_argyll)
 	GcmColorimeterKind colorimeter_kind;
 	GcmCalibratePrecision precision;
 
-	/* we care about the type */
+	/* we care about the kind */
 	g_object_get (calibrate_argyll,
 		      "colorimeter-kind", &colorimeter_kind,
 		      "precision", &precision,
@@ -272,15 +272,15 @@ out:
 }
 
 /**
- * gcm_calibrate_argyll_get_display_type:
+ * gcm_calibrate_argyll_get_display_kind:
  **/
 static gchar
-gcm_calibrate_argyll_get_display_type (GcmCalibrateArgyll *calibrate_argyll)
+gcm_calibrate_argyll_get_display_kind (GcmCalibrateArgyll *calibrate_argyll)
 {
 	GcmCalibrateDeviceKind device_kind;
 
 	g_object_get (calibrate_argyll,
-		      "device-kind", &device_kind,
+		      "calibrate-device-kind", &device_kind,
 		      NULL);
 
 	if (device_kind == GCM_CALIBRATE_DEVICE_KIND_LCD)
@@ -352,7 +352,7 @@ gcm_calibrate_argyll_display_neutralise (GcmCalibrateArgyll *calibrate_argyll, G
 {
 	gboolean ret = TRUE;
 	GcmCalibrateArgyllPrivate *priv = calibrate_argyll->priv;
-	gchar type;
+	gchar kind;
 	gchar *command = NULL;
 	gchar **argv = NULL;
 	GnomeRROutput *output;
@@ -392,7 +392,7 @@ gcm_calibrate_argyll_display_neutralise (GcmCalibrateArgyll *calibrate_argyll, G
 	}
 
 	/* get l-cd or c-rt */
-	type = gcm_calibrate_argyll_get_display_type (calibrate_argyll);
+	kind = gcm_calibrate_argyll_get_display_kind (calibrate_argyll);
 
 	/* TRANSLATORS: title, default paramters needed to calibrate_argyll */
 	title = _("Getting default parameters");
@@ -413,7 +413,7 @@ gcm_calibrate_argyll_display_neutralise (GcmCalibrateArgyll *calibrate_argyll, G
 	g_ptr_array_add (array, g_strdup ("-ql"));
 	g_ptr_array_add (array, g_strdup ("-m"));
 	g_ptr_array_add (array, g_strdup_printf ("-d%i", priv->display));
-	g_ptr_array_add (array, g_strdup_printf ("-y%c", type));
+	g_ptr_array_add (array, g_strdup_printf ("-y%c", kind));
 //	g_ptr_array_add (array, g_strdup ("-p 0.8,0.5,1.0"));
 	g_ptr_array_add (array, g_strdup (basename));
 	argv = gcm_utils_ptr_array_to_strv (array);
@@ -560,13 +560,13 @@ gcm_calibrate_argyll_display_generate_patches (GcmCalibrateArgyll *calibrate_arg
 	gchar *working_path = NULL;
 	const gchar *title;
 	const gchar *message;
-	GcmDeviceTypeEnum device_type;
+	GcmDeviceKind device_kind;
 
 	/* get shared data */
 	g_object_get (calibrate_argyll,
 		      "basename", &basename,
 		      "working-path", &working_path,
-		      "device-type", &device_type,
+		      "device-kind", &device_kind,
 		      NULL);
 
 	/* get correct name of the command */
@@ -591,7 +591,7 @@ gcm_calibrate_argyll_display_generate_patches (GcmCalibrateArgyll *calibrate_arg
 
 	/* setup the command */
 	g_ptr_array_add (array, g_strdup ("-v9"));
-	if (device_type == GCM_DEVICE_TYPE_ENUM_PRINTER) {
+	if (device_kind == GCM_DEVICE_KIND_PRINTER) {
 		/* print RGB */
 		g_ptr_array_add (array, g_strdup ("-d2"));
 
@@ -603,9 +603,9 @@ gcm_calibrate_argyll_display_generate_patches (GcmCalibrateArgyll *calibrate_arg
 	}
 
 	/* get number of patches */
-	if (device_type == GCM_DEVICE_TYPE_ENUM_DISPLAY)
+	if (device_kind == GCM_DEVICE_KIND_DISPLAY)
 		g_ptr_array_add (array, g_strdup_printf ("-f%i", gcm_calibrate_argyll_display_get_patches (calibrate_argyll)));
-	else if (device_type == GCM_DEVICE_TYPE_ENUM_PRINTER)
+	else if (device_kind == GCM_DEVICE_KIND_PRINTER)
 		g_ptr_array_add (array, g_strdup_printf ("-f%i", gcm_calibrate_argyll_printer_get_patches (calibrate_argyll)));
 
 	g_ptr_array_add (array, g_strdup (basename));
@@ -658,7 +658,7 @@ gcm_calibrate_argyll_display_draw_and_measure (GcmCalibrateArgyll *calibrate_arg
 {
 	gboolean ret = TRUE;
 	GcmCalibrateArgyllPrivate *priv = calibrate_argyll->priv;
-	gchar type;
+	gchar kind;
 	gchar *command = NULL;
 	gchar **argv = NULL;
 	GPtrArray *array = NULL;
@@ -681,7 +681,7 @@ gcm_calibrate_argyll_display_draw_and_measure (GcmCalibrateArgyll *calibrate_arg
 	}
 
 	/* get l-cd or c-rt */
-	type = gcm_calibrate_argyll_get_display_type (calibrate_argyll);
+	kind = gcm_calibrate_argyll_get_display_kind (calibrate_argyll);
 
 	/* TRANSLATORS: title, drawing means painting to the screen */
 	title = _("Drawing the patches");
@@ -699,7 +699,7 @@ gcm_calibrate_argyll_display_draw_and_measure (GcmCalibrateArgyll *calibrate_arg
 	/* setup the command */
 	g_ptr_array_add (array, g_strdup ("-v9"));
 	g_ptr_array_add (array, g_strdup_printf ("-d%i", priv->display));
-	g_ptr_array_add (array, g_strdup_printf ("-y%c", type));
+	g_ptr_array_add (array, g_strdup_printf ("-y%c", kind));
 	g_ptr_array_add (array, g_strdup ("-k"));
 	g_ptr_array_add (array, g_strdup_printf ("%s.cal", basename));
 	g_ptr_array_add (array, g_strdup (basename));
diff --git a/src/gcm-calibrate.c b/src/gcm-calibrate.c
index e1ec201..8ca0104 100644
--- a/src/gcm-calibrate.c
+++ b/src/gcm-calibrate.c
@@ -56,12 +56,12 @@ struct _GcmCalibratePrivate
 {
 	GcmColorimeter			*colorimeter;
 	GcmCalibrateReferenceKind	 reference_kind;
-	GcmCalibrateDeviceKind		 device_kind;
+	GcmCalibrateDeviceKind		 calibrate_device_kind;
 	GcmCalibratePrintKind		 print_kind;
 	GcmCalibratePrecision		 precision;
 	GcmColorimeterKind		 colorimeter_kind;
 	GcmCalibrateDialog		*calibrate_dialog;
-	GcmDeviceTypeEnum		 device_type;
+	GcmDeviceKind			 device_kind;
 	gchar				*output_name;
 	gchar				*filename_source;
 	gchar				*filename_reference;
@@ -85,9 +85,9 @@ enum {
 	PROP_DEVICE,
 	PROP_MANUFACTURER,
 	PROP_REFERENCE_KIND,
-	PROP_DEVICE_KIND,
+	PROP_CALIBRATE_DEVICE_KIND,
 	PROP_PRINT_KIND,
-	PROP_DEVICE_TYPE,
+	PROP_DEVICE_KIND,
 	PROP_COLORIMETER_KIND,
 	PROP_OUTPUT_NAME,
 	PROP_FILENAME_SOURCE,
@@ -254,10 +254,10 @@ gcm_calibrate_set_from_device (GcmCalibrate *calibrate, GcmDevice *device, GErro
 	const gchar *model = NULL;
 	const gchar *description = NULL;
 	const gchar *serial = NULL;
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 
 	/* get the device */
-	type = gcm_device_get_kind (device);
+	kind = gcm_device_get_kind (device);
 	serial = gcm_device_get_serial (device);
 	model = gcm_device_get_model (device);
 	description = gcm_device_get_title (device);
@@ -265,7 +265,7 @@ gcm_calibrate_set_from_device (GcmCalibrate *calibrate, GcmDevice *device, GErro
 
 	/* set the proper values */
 	g_object_set (calibrate,
-		      "device-type", type,
+		      "device-kind", kind,
 		      "model", model,
 		      "description", description,
 		      "manufacturer", manufacturer,
@@ -276,7 +276,7 @@ gcm_calibrate_set_from_device (GcmCalibrate *calibrate, GcmDevice *device, GErro
 	gcm_calibrate_set_basename (calibrate);
 
 	/* display specific properties */
-	if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY) {
+	if (kind == GCM_DEVICE_KIND_DISPLAY) {
 		native_device = gcm_device_xrandr_get_native_device (GCM_DEVICE_XRANDR (device));
 		if (native_device == NULL) {
 			g_set_error (error,
@@ -344,10 +344,10 @@ out:
 }
 
 /**
- * gcm_calibrate_get_display_type:
+ * gcm_calibrate_get_display_kind:
  **/
 static gboolean
-gcm_calibrate_get_display_type (GcmCalibrate *calibrate, GtkWindow *window, GError **error)
+gcm_calibrate_get_display_kind (GcmCalibrate *calibrate, GtkWindow *window, GError **error)
 {
 	gboolean ret = TRUE;
 	const gchar *title;
@@ -378,10 +378,10 @@ gcm_calibrate_get_display_type (GcmCalibrate *calibrate, GtkWindow *window, GErr
 	}
 
 	/* copy */
-	g_object_get (priv->calibrate_dialog, "device-kind", &priv->device_kind, NULL);
+	g_object_get (priv->calibrate_dialog, "device-kind", &priv->calibrate_device_kind, NULL);
 
 	/* can this device support projectors? */
-	if (priv->device_kind == GCM_CALIBRATE_DEVICE_KIND_PROJECTOR &&
+	if (priv->calibrate_device_kind == GCM_CALIBRATE_DEVICE_KIND_PROJECTOR &&
 	    !gcm_colorimeter_supports_projector (priv->colorimeter)) {
 		/* TRANSLATORS: title, the hardware calibration device does not support projectors */
 		title = _("Could not calibrate and profile using this color measuring instrument");
@@ -460,13 +460,13 @@ gcm_calibrate_get_precision (GcmCalibrate *calibrate, GError **error)
 	g_string_append_printf (string, "\n%s", _("High precision profiles provide higher accuracy in color matching. Correspondingly, low precision profiles result in lower quality."));
 
 	/* printer specific options */
-	if (priv->device_type == GCM_DEVICE_TYPE_ENUM_PRINTER) {
+	if (priv->device_kind == GCM_DEVICE_KIND_PRINTER) {
 		/* TRANSLATORS: dialog message, preface */
 		g_string_append_printf (string, "\n%s", _("The high precision profiles also require more paper and time for reading the color swatches."));
 	}
 
 	/* display specific options */
-	if (priv->device_type == GCM_DEVICE_TYPE_ENUM_DISPLAY) {
+	if (priv->device_kind == GCM_DEVICE_KIND_DISPLAY) {
 		/* TRANSLATORS: dialog message, preface */
 		g_string_append_printf (string, "\n%s", _("The high precision profiles also require more time for reading the color swatches."));
 	}
@@ -551,8 +551,8 @@ gcm_calibrate_display (GcmCalibrate *calibrate, GtkWindow *window, GError **erro
 		      NULL);
 
 	/* this wasn't previously set */
-	if (priv->device_kind == GCM_CALIBRATE_DEVICE_KIND_UNKNOWN) {
-		ret = gcm_calibrate_get_display_type (calibrate, window, error);
+	if (priv->calibrate_device_kind == GCM_CALIBRATE_DEVICE_KIND_UNKNOWN) {
+		ret = gcm_calibrate_get_display_kind (calibrate, window, error);
 		if (!ret)
 			goto out;
 	}
@@ -1003,7 +1003,7 @@ gcm_calibrate_device (GcmCalibrate *calibrate, GtkWindow *window, GError **error
 	g_string_append_printf (string, "%s\n", _("Before profiling the device, you have to manually capture an image of a calibrated target and save it as a TIFF image file."));
 
 	/* scanner specific options */
-	if (priv->device_type == GCM_DEVICE_TYPE_ENUM_SCANNER) {
+	if (priv->device_kind == GCM_DEVICE_KIND_SCANNER) {
 		/* TRANSLATORS: dialog message, preface */
 		g_string_append_printf (string, "%s\n", _("Ensure that the contrast and brightness are not changed and color correction profiles are not applied."));
 
@@ -1012,7 +1012,7 @@ gcm_calibrate_device (GcmCalibrate *calibrate, GtkWindow *window, GError **error
 	}
 
 	/* camera specific options */
-	if (priv->device_type == GCM_DEVICE_TYPE_ENUM_CAMERA) {
+	if (priv->device_kind == GCM_DEVICE_KIND_CAMERA) {
 		/* TRANSLATORS: dialog message, preface */
 		g_string_append_printf (string, "%s\n", _("Ensure that the white-balance has not been modified by the camera and that the lens is clean."));
 	}
@@ -1140,8 +1140,8 @@ gcm_calibrate_get_property (GObject *object, guint prop_id, GValue *value, GPara
 	case PROP_PRINT_KIND:
 		g_value_set_uint (value, priv->print_kind);
 		break;
-	case PROP_DEVICE_TYPE:
-		g_value_set_uint (value, priv->device_type);
+	case PROP_CALIBRATE_DEVICE_KIND:
+		g_value_set_uint (value, priv->calibrate_device_kind);
 		break;
 	case PROP_COLORIMETER_KIND:
 		g_value_set_uint (value, priv->colorimeter_kind);
@@ -1189,10 +1189,10 @@ gcm_calibrate_get_property (GObject *object, guint prop_id, GValue *value, GPara
 }
 
 /**
- * gcm_calibrate_guess_type:
+ * gcm_calibrate_guess_kind:
  **/
 static void
-gcm_calibrate_guess_type (GcmCalibrate *calibrate)
+gcm_calibrate_guess_kind (GcmCalibrate *calibrate)
 {
 	gboolean ret;
 	GcmCalibratePrivate *priv = calibrate->priv;
@@ -1200,7 +1200,7 @@ gcm_calibrate_guess_type (GcmCalibrate *calibrate)
 	/* guess based on the output name */
 	ret = gcm_utils_output_is_lcd_internal (priv->output_name);
 	if (ret)
-		priv->device_kind = GCM_CALIBRATE_DEVICE_KIND_LCD;
+		priv->calibrate_device_kind = GCM_CALIBRATE_DEVICE_KIND_LCD;
 }
 
 /**
@@ -1226,7 +1226,7 @@ gcm_calibrate_set_property (GObject *object, guint prop_id, const GValue *value,
 	case PROP_OUTPUT_NAME:
 		g_free (priv->output_name);
 		priv->output_name = g_strdup (g_value_get_string (value));
-		gcm_calibrate_guess_type (calibrate);
+		gcm_calibrate_guess_kind (calibrate);
 		break;
 	case PROP_FILENAME_SOURCE:
 		g_free (priv->filename_source);
@@ -1265,8 +1265,8 @@ gcm_calibrate_set_property (GObject *object, guint prop_id, const GValue *value,
 		g_free (priv->manufacturer);
 		priv->manufacturer = g_strdup (g_value_get_string (value));
 		break;
-	case PROP_DEVICE_TYPE:
-		priv->device_type = g_value_get_uint (value);
+	case PROP_DEVICE_KIND:
+		priv->device_kind = g_value_get_uint (value);
 		break;
 	case PROP_WORKING_PATH:
 		g_free (priv->working_path);
@@ -1299,12 +1299,12 @@ gcm_calibrate_class_init (GcmCalibrateClass *klass)
 	g_object_class_install_property (object_class, PROP_REFERENCE_KIND, pspec);
 
 	/**
-	 * GcmCalibrate:device-kind:
+	 * GcmCalibrate:calibrate-device-kind:
 	 */
-	pspec = g_param_spec_uint ("device-kind", NULL, NULL,
+	pspec = g_param_spec_uint ("calibrate-device-kind", NULL, NULL,
 				   0, G_MAXUINT, 0,
 				   G_PARAM_READABLE);
-	g_object_class_install_property (object_class, PROP_DEVICE_KIND, pspec);
+	g_object_class_install_property (object_class, PROP_CALIBRATE_DEVICE_KIND, pspec);
 
 	/**
 	 * GcmCalibrate:print-kind:
@@ -1315,12 +1315,12 @@ gcm_calibrate_class_init (GcmCalibrateClass *klass)
 	g_object_class_install_property (object_class, PROP_PRINT_KIND, pspec);
 
 	/**
-	 * GcmCalibrate:device-type:
+	 * GcmCalibrate:device-kind:
 	 */
-	pspec = g_param_spec_uint ("device-type", NULL, NULL,
+	pspec = g_param_spec_uint ("device-kind", NULL, NULL,
 				   0, G_MAXUINT, 0,
 				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_DEVICE_TYPE, pspec);
+	g_object_class_install_property (object_class, PROP_DEVICE_KIND, pspec);
 
 	/**
 	 * GcmCalibrate:colorimeter-kind:
@@ -1447,7 +1447,7 @@ gcm_calibrate_init (GcmCalibrate *calibrate)
 	calibrate->priv->device = NULL;
 	calibrate->priv->serial = NULL;
 	calibrate->priv->working_path = NULL;
-	calibrate->priv->device_kind = GCM_CALIBRATE_DEVICE_KIND_UNKNOWN;
+	calibrate->priv->calibrate_device_kind = GCM_CALIBRATE_DEVICE_KIND_UNKNOWN;
 	calibrate->priv->print_kind = GCM_CALIBRATE_PRINT_KIND_UNKNOWN;
 	calibrate->priv->reference_kind = GCM_CALIBRATE_REFERENCE_KIND_UNKNOWN;
 	calibrate->priv->precision = GCM_CALIBRATE_PRECISION_UNKNOWN;
diff --git a/src/gcm-client.c b/src/gcm-client.c
index 4d62d87..8313488 100644
--- a/src/gcm-client.c
+++ b/src/gcm-client.c
@@ -362,7 +362,7 @@ gcm_client_uevent_cb (GUdevClient *gudev_client, const gchar *action, GUdevDevic
 			/* set all scanners as disconnected */
 			for (i=0; i<priv->array->len; i++) {
 				device_tmp = g_ptr_array_index (priv->array, i);
-				if (gcm_device_get_kind (device_tmp) == GCM_DEVICE_TYPE_ENUM_SCANNER)
+				if (gcm_device_get_kind (device_tmp) == GCM_DEVICE_KIND_SCANNER)
 					gcm_device_set_connected (device_tmp, FALSE);
 			}
 
@@ -816,10 +816,10 @@ static void
 gcm_client_add_unconnected_device (GcmClient *client, GKeyFile *keyfile, const gchar *id)
 {
 	gchar *title;
-	gchar *type_text = NULL;
+	gchar *kind_text = NULL;
 	gchar *colorspace_text = NULL;
-	GcmColorspaceEnum colorspace;
-	GcmDeviceTypeEnum type;
+	GcmColorspace colorspace;
+	GcmDeviceKind kind;
 	GcmDevice *device = NULL;
 	gboolean ret;
 	gboolean virtual;
@@ -831,40 +831,40 @@ gcm_client_add_unconnected_device (GcmClient *client, GKeyFile *keyfile, const g
 	if (title == NULL)
 		goto out;
 	virtual = g_key_file_get_boolean (keyfile, id, "virtual", NULL);
-	type_text = g_key_file_get_string (keyfile, id, "type", NULL);
-	type = gcm_device_type_enum_from_string (type_text);
-	if (type == GCM_DEVICE_TYPE_ENUM_UNKNOWN)
+	kind_text = g_key_file_get_string (keyfile, id, "type", NULL);
+	kind = gcm_device_kind_from_string (kind_text);
+	if (kind == GCM_DEVICE_KIND_UNKNOWN)
 		goto out;
 
 	/* get colorspace */
 	colorspace_text = g_key_file_get_string (keyfile, id, "colorspace", NULL);
 	if (colorspace_text == NULL) {
 		egg_warning ("legacy device %s, falling back to RGB", id);
-		colorspace = GCM_COLORSPACE_ENUM_RGB;
+		colorspace = GCM_COLORSPACE_RGB;
 	} else {
-		colorspace = gcm_colorspace_enum_from_string (colorspace_text);
+		colorspace = gcm_colorspace_from_string (colorspace_text);
 	}
 
-	/* create device or specified type */
+	/* create device of specified type */
 	if (virtual) {
 		device = gcm_device_virtual_new ();
-	} else if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY) {
+	} else if (kind == GCM_DEVICE_KIND_DISPLAY) {
 		device = gcm_device_xrandr_new ();
-	} else if (type == GCM_DEVICE_TYPE_ENUM_PRINTER) {
+	} else if (kind == GCM_DEVICE_KIND_PRINTER) {
 		device = gcm_device_cups_new ();
-	} else if (type == GCM_DEVICE_TYPE_ENUM_CAMERA) {
+	} else if (kind == GCM_DEVICE_KIND_CAMERA) {
 		/* FIXME: use GPhoto? */
 		device = gcm_device_udev_new ();
-	} else if (type == GCM_DEVICE_TYPE_ENUM_SCANNER) {
+	} else if (kind == GCM_DEVICE_KIND_SCANNER) {
 		device = gcm_device_sane_new ();
 	} else {
-		egg_warning ("device type internal error");
+		egg_warning ("device kind internal error");
 		goto out;
 	}
 
 	/* create device */
 	g_object_set (device,
-		      "type", type,
+		      "kind", kind,
 		      "id", id,
 		      "connected", FALSE,
 		      "title", title,
@@ -893,7 +893,7 @@ gcm_client_add_unconnected_device (GcmClient *client, GKeyFile *keyfile, const g
 out:
 	if (device != NULL)
 		g_object_unref (device);
-	g_free (type_text);
+	g_free (kind_text);
 	g_free (colorspace_text);
 	g_free (title);
 }
diff --git a/src/gcm-dbus.c b/src/gcm-dbus.c
index 947fc7d..c648719 100644
--- a/src/gcm-dbus.c
+++ b/src/gcm-dbus.c
@@ -207,7 +207,7 @@ gcm_dbus_get_profiles_for_device_internal (GcmDbus *dbus, const gchar *device_id
 			device_id_tmp = gcm_device_get_id (device);
 		}
 
-		/* wrong type of device */
+		/* wrong kind of device */
 		if (device_id_tmp == NULL)
 			continue;
 
@@ -245,23 +245,23 @@ gcm_dbus_get_profiles_for_device_internal (GcmDbus *dbus, const gchar *device_id
 }
 
 /**
- * gcm_dbus_get_profiles_for_type_internal:
+ * gcm_dbus_get_profiles_for_kind_internal:
  **/
 static GPtrArray *
-gcm_dbus_get_profiles_for_type_internal (GcmDbus *dbus, GcmDeviceTypeEnum type)
+gcm_dbus_get_profiles_for_kind_internal (GcmDbus *dbus, GcmDeviceKind kind)
 {
 	guint i;
 	GcmProfile *profile;
-	GcmProfileTypeEnum profile_type;
-	GcmProfileTypeEnum type_tmp;
+	GcmProfileKind profile_kind;
+	GcmProfileKind kind_tmp;
 	GPtrArray *array;
 	GPtrArray *profile_array;
 
 	/* create a temp array */
 	array = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
 
-	/* get the correct profile type for the device type */
-	profile_type = gcm_utils_device_type_to_profile_type (type);
+	/* get the correct profile kind for the device kind */
+	profile_kind = gcm_utils_device_kind_to_profile_kind (kind);
 
 	/* get list */
 	profile_array = gcm_profile_store_get_array (dbus->priv->profile_store);
@@ -270,12 +270,12 @@ gcm_dbus_get_profiles_for_type_internal (GcmDbus *dbus, GcmDeviceTypeEnum type)
 
 		/* get the native path of this device */
 		g_object_get (profile,
-			      "type", &type_tmp,
+			      "kind", &kind_tmp,
 			      NULL);
 
 		/* compare what we have against what we were given */
-		egg_debug ("comparing %i with %i", type_tmp, profile_type);
-		if (type_tmp == profile_type)
+		egg_debug ("comparing %i with %i", kind_tmp, profile_kind);
+		if (kind_tmp == profile_kind)
 			g_ptr_array_add (array, g_object_ref (profile));
 	}
 
@@ -369,7 +369,7 @@ gcm_dbus_get_profiles_for_device (GcmDbus *dbus, const gchar *device_id, const g
  * gcm_dbus_get_profiles_for_type:
  **/
 void
-gcm_dbus_get_profiles_for_type (GcmDbus *dbus, const gchar *type, const gchar *options, DBusGMethodInvocation *context)
+gcm_dbus_get_profiles_for_type (GcmDbus *dbus, const gchar *kind, const gchar *options, DBusGMethodInvocation *context)
 {
 	GPtrArray *array_profiles;
 	GcmProfile *profile;
@@ -378,13 +378,13 @@ gcm_dbus_get_profiles_for_type (GcmDbus *dbus, const gchar *type, const gchar *o
 	guint i;
 	GPtrArray *array_structs;
 	GValue *value;
-	GcmDeviceTypeEnum type_enum;
+	GcmDeviceKind kind_enum;
 
-	egg_debug ("getting profiles for %s", type);
+	egg_debug ("getting profiles for %s", kind);
 
 	/* get array of profile filenames */
-	type_enum = gcm_device_type_enum_from_string (type);
-	array_profiles = gcm_dbus_get_profiles_for_type_internal (dbus, type_enum);
+	kind_enum = gcm_device_kind_from_string (kind);
+	array_profiles = gcm_dbus_get_profiles_for_kind_internal (dbus, kind_enum);
 
 	/* copy data to dbus struct */
 	array_structs = g_ptr_array_sized_new (array_profiles->len);
diff --git a/src/gcm-device-cups.c b/src/gcm-device-cups.c
index 561ac21..db04d13 100644
--- a/src/gcm-device-cups.c
+++ b/src/gcm-device-cups.c
@@ -70,7 +70,7 @@ gcm_device_cups_set_from_dest (GcmDevice *device, http_t *http, cups_dest_t dest
 	gchar *manufacturer = NULL;
 	gchar *model = NULL;
 	gchar *profile_filename = NULL;
-	GcmColorspaceEnum colorspace = GCM_COLORSPACE_ENUM_UNKNOWN;
+	GcmColorspace colorspace = GCM_COLORSPACE_UNKNOWN;
 
 	egg_debug ("name: %s", dest.name);
 	egg_debug ("instance: %s", dest.instance);
@@ -128,9 +128,9 @@ gcm_device_cups_set_from_dest (GcmDevice *device, http_t *http, cups_dest_t dest
 			device_id = g_strdup (value);
 		} else if (g_strcmp0 (keyword, "DefaultColorSpace") == 0) {
 			if (g_strcmp0 (value, "RGB") == 0)
-				colorspace = GCM_COLORSPACE_ENUM_RGB;
+				colorspace = GCM_COLORSPACE_RGB;
 			else if (g_strcmp0 (value, "CMYK") == 0)
-				colorspace = GCM_COLORSPACE_ENUM_CMYK;
+				colorspace = GCM_COLORSPACE_CMYK;
 			else
 				egg_warning ("colorspace not recognized: %s", value);
 		} else if (g_strcmp0 (keyword, "cupsICCProfile") == 0) {
@@ -147,7 +147,7 @@ gcm_device_cups_set_from_dest (GcmDevice *device, http_t *http, cups_dest_t dest
 	gcm_utils_alphanum_lcase (id);
 
 	g_object_set (device,
-		      "type", GCM_DEVICE_TYPE_ENUM_PRINTER,
+		      "kind", GCM_DEVICE_KIND_PRINTER,
 		      "colorspace", colorspace,
 		      "id", id,
 // FIXME: find out from CUPS if the printer is connected
diff --git a/src/gcm-device-sane.c b/src/gcm-device-sane.c
index 11a8d72..35e036e 100644
--- a/src/gcm-device-sane.c
+++ b/src/gcm-device-sane.c
@@ -188,8 +188,8 @@ gcm_device_sane_set_from_device (GcmDevice *device, const SANE_Device *sane_devi
 
 	/* set properties on device */
 	g_object_set (device,
-		      "type", GCM_DEVICE_TYPE_ENUM_SCANNER,
-		      "colorspace", GCM_COLORSPACE_ENUM_RGB,
+		      "kind", GCM_DEVICE_KIND_SCANNER,
+		      "colorspace", GCM_COLORSPACE_RGB,
 		      "id", id,
 		      "connected", TRUE,
 //		      "serial", serial,
diff --git a/src/gcm-device-udev.c b/src/gcm-device-udev.c
index 71617e3..f857e30 100644
--- a/src/gcm-device-udev.c
+++ b/src/gcm-device-udev.c
@@ -79,13 +79,13 @@ gcm_device_udev_set_from_device (GcmDevice *device, GUdevDevice *udev_device, GE
 	gchar *serial = NULL;
 	gchar *manufacturer = NULL;
 	gchar *model = NULL;
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 	const gchar *value;
 	const gchar *sysfs_path;
 
 	/* matches our udev rules, which we can change without recompiling */
 	value = g_udev_device_get_property (udev_device, "GCM_TYPE");
-	type = gcm_device_type_enum_from_string (value);
+	kind = gcm_device_kind_from_string (value);
 
 	/* add new device */
 	id = gcm_device_udev_get_id_for_udev_device (udev_device);
@@ -119,8 +119,8 @@ gcm_device_udev_set_from_device (GcmDevice *device, GUdevDevice *udev_device, GE
 	}
 
 	g_object_set (device,
-		      "type", type,
-		      "colorspace", GCM_COLORSPACE_ENUM_RGB,
+		      "kind", kind,
+		      "colorspace", GCM_COLORSPACE_RGB,
 		      "id", id,
 		      "connected", TRUE,
 		      "serial", serial,
diff --git a/src/gcm-device-virtual.c b/src/gcm-device-virtual.c
index 71051b3..0179fd7 100644
--- a/src/gcm-device-virtual.c
+++ b/src/gcm-device-virtual.c
@@ -38,10 +38,10 @@ G_DEFINE_TYPE (GcmDeviceVirtual, gcm_device_virtual, GCM_TYPE_DEVICE)
  **/
 gboolean
 gcm_device_virtual_create_from_params (GcmDeviceVirtual *device_virtual,
-				       GcmDeviceTypeEnum device_type,
+				       GcmDeviceKind	 device_kind,
 				       const gchar      *model,
 				       const gchar      *manufacturer,
-				       GcmColorspaceEnum colorspace)
+				       GcmColorspace	 colorspace)
 {
 	gchar *id;
 	gchar *title;
@@ -55,7 +55,7 @@ gcm_device_virtual_create_from_params (GcmDeviceVirtual *device_virtual,
 	egg_debug ("adding %s '%s'", id, title);
 	g_object_set (device_virtual,
 		      "connected", FALSE,
-		      "type", device_type,
+		      "kind", device_kind,
 		      "id", id,
 		      "manufacturer", manufacturer,
 		      "model", model,
diff --git a/src/gcm-device-virtual.h b/src/gcm-device-virtual.h
index 8f8d39c..237f250 100644
--- a/src/gcm-device-virtual.h
+++ b/src/gcm-device-virtual.h
@@ -49,10 +49,10 @@ struct _GcmDeviceVirtualClass
 GType		 gcm_device_virtual_get_type		  	(void);
 GcmDevice	*gcm_device_virtual_new				(void);
 gboolean	 gcm_device_virtual_create_from_params		(GcmDeviceVirtual	*device_virtual,
-								 GcmDeviceTypeEnum	 device_type,
+								 GcmDeviceKind	 device_kind,
 								 const gchar		*model,
 								 const gchar		*manufacturer,
-								 GcmColorspaceEnum	 colorspace);
+								 GcmColorspace	 colorspace);
 
 G_END_DECLS
 
diff --git a/src/gcm-device-xrandr.c b/src/gcm-device-xrandr.c
index 846b65f..96e15d0 100644
--- a/src/gcm-device-xrandr.c
+++ b/src/gcm-device-xrandr.c
@@ -82,6 +82,15 @@ gcm_device_xrandr_get_native_device (GcmDeviceXrandr *device_xrandr)
 }
 
 /**
+ * gcm_device_xrandr_get_native_device:
+ **/
+gboolean
+gcm_device_xrandr_get_fallback (GcmDeviceXrandr *device_xrandr)
+{
+	return device_xrandr->priv->xrandr_fallback;
+}
+
+/**
  * gcm_device_xrandr_get_output_name:
  *
  * Return value: the output name, free with g_free().
@@ -274,8 +283,8 @@ gcm_device_xrandr_set_from_output (GcmDevice *device, GnomeRROutput *output, GEr
 	/* add new device */
 	title = gcm_device_xrandr_get_output_name (GCM_DEVICE_XRANDR(device), output);
 	g_object_set (device,
-		      "type", GCM_DEVICE_TYPE_ENUM_DISPLAY,
-		      "colorspace", GCM_COLORSPACE_ENUM_RGB,
+		      "kind", GCM_DEVICE_KIND_DISPLAY,
+		      "colorspace", GCM_COLORSPACE_RGB,
 		      "id", id,
 		      "connected", TRUE,
 		      "serial", serial,
@@ -465,14 +474,14 @@ gcm_device_xrandr_apply (GcmDevice *device, GError **error)
 	gboolean use_atom;
 	gboolean leftmost_screen = FALSE;
 	GFile *file = NULL;
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 	GcmDeviceXrandr *device_xrandr = GCM_DEVICE_XRANDR (device);
 	GcmDeviceXrandrPrivate *priv = device_xrandr->priv;
 
 	/* do no set the gamma for non-display types */
 	id = gcm_device_get_id (device);
-	type = gcm_device_get_kind (device);
-	if (type != GCM_DEVICE_TYPE_ENUM_DISPLAY) {
+	kind = gcm_device_get_kind (device);
+	if (kind != GCM_DEVICE_KIND_DISPLAY) {
 		g_set_error (error, 1, 0, "not a display: %s", id);
 		goto out;
 	}
diff --git a/src/gcm-device-xrandr.h b/src/gcm-device-xrandr.h
index b1f535a..785e10e 100644
--- a/src/gcm-device-xrandr.h
+++ b/src/gcm-device-xrandr.h
@@ -54,6 +54,7 @@ gboolean	 gcm_device_xrandr_set_from_output	(GcmDevice		*device,
 							 GnomeRROutput		*output,
 							 GError			**error);
 const gchar	*gcm_device_xrandr_get_native_device	(GcmDeviceXrandr	*device_xrandr);
+gboolean	 gcm_device_xrandr_get_fallback		(GcmDeviceXrandr	*device_xrandr);
 
 G_END_DECLS
 
diff --git a/src/gcm-device.c b/src/gcm-device.c
index 6558c45..3b9a4ff 100644
--- a/src/gcm-device.c
+++ b/src/gcm-device.c
@@ -48,27 +48,27 @@ static void     gcm_device_finalize	(GObject     *object);
  **/
 struct _GcmDevicePrivate
 {
-	gboolean			 connected;
-	gboolean			 virtual;
-	gboolean			 saved;
-	gfloat				 gamma;
-	gfloat				 brightness;
-	gfloat				 contrast;
-	GcmDeviceTypeEnum		 type;
-	gchar				*id;
-	gchar				*serial;
-	gchar				*manufacturer;
-	gchar				*model;
-	gchar				*profile_filename;
-	gchar				*title;
-	GConfClient			*gconf_client;
-	GcmColorspaceEnum		 colorspace;
-	guint				 changed_id;
+	gboolean		 connected;
+	gboolean		 virtual;
+	gboolean		 saved;
+	gfloat			 gamma;
+	gfloat			 brightness;
+	gfloat			 contrast;
+	GcmDeviceKind		 kind;
+	gchar			*id;
+	gchar			*serial;
+	gchar			*manufacturer;
+	gchar			*model;
+	gchar			*profile_filename;
+	gchar			*title;
+	GConfClient		*gconf_client;
+	GcmColorspace		 colorspace;
+	guint			 changed_id;
 };
 
 enum {
 	PROP_0,
-	PROP_TYPE,
+	PROP_KIND,
 	PROP_ID,
 	PROP_CONNECTED,
 	PROP_VIRTUAL,
@@ -136,35 +136,35 @@ out:
 }
 
 /**
- * gcm_device_type_enum_from_string:
+ * gcm_device_kind_from_string:
  **/
-GcmDeviceTypeEnum
-gcm_device_type_enum_from_string (const gchar *type)
+GcmDeviceKind
+gcm_device_kind_from_string (const gchar *kind)
 {
-	if (g_strcmp0 (type, "display") == 0)
-		return GCM_DEVICE_TYPE_ENUM_DISPLAY;
-	if (g_strcmp0 (type, "scanner") == 0)
-		return GCM_DEVICE_TYPE_ENUM_SCANNER;
-	if (g_strcmp0 (type, "printer") == 0)
-		return GCM_DEVICE_TYPE_ENUM_PRINTER;
-	if (g_strcmp0 (type, "camera") == 0)
-		return GCM_DEVICE_TYPE_ENUM_CAMERA;
-	return GCM_DEVICE_TYPE_ENUM_UNKNOWN;
+	if (g_strcmp0 (kind, "display") == 0)
+		return GCM_DEVICE_KIND_DISPLAY;
+	if (g_strcmp0 (kind, "scanner") == 0)
+		return GCM_DEVICE_KIND_SCANNER;
+	if (g_strcmp0 (kind, "printer") == 0)
+		return GCM_DEVICE_KIND_PRINTER;
+	if (g_strcmp0 (kind, "camera") == 0)
+		return GCM_DEVICE_KIND_CAMERA;
+	return GCM_DEVICE_KIND_UNKNOWN;
 }
 
 /**
- * gcm_device_type_enum_to_string:
+ * gcm_device_kind_to_string:
  **/
 const gchar *
-gcm_device_type_enum_to_string (GcmDeviceTypeEnum type)
+gcm_device_kind_to_string (GcmDeviceKind kind)
 {
-	if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY)
+	if (kind == GCM_DEVICE_KIND_DISPLAY)
 		return "display";
-	if (type == GCM_DEVICE_TYPE_ENUM_SCANNER)
+	if (kind == GCM_DEVICE_KIND_SCANNER)
 		return "scanner";
-	if (type == GCM_DEVICE_TYPE_ENUM_PRINTER)
+	if (kind == GCM_DEVICE_KIND_PRINTER)
 		return "printer";
-	if (type == GCM_DEVICE_TYPE_ENUM_CAMERA)
+	if (kind == GCM_DEVICE_KIND_CAMERA)
 		return "camera";
 	return "unknown";
 }
@@ -202,22 +202,22 @@ out:
 /**
  * gcm_device_get_kind:
  **/
-GcmDeviceTypeEnum
+GcmDeviceKind
 gcm_device_get_kind (GcmDevice *device)
 {
-	g_return_val_if_fail (GCM_IS_DEVICE (device), GCM_DEVICE_TYPE_ENUM_UNKNOWN);
-	return device->priv->type;
+	g_return_val_if_fail (GCM_IS_DEVICE (device), GCM_DEVICE_KIND_UNKNOWN);
+	return device->priv->kind;
 }
 
 /**
  * gcm_device_set_kind:
  **/
 void
-gcm_device_set_kind (GcmDevice *device, GcmDeviceTypeEnum kind)
+gcm_device_set_kind (GcmDevice *device, GcmDeviceKind kind)
 {
 	g_return_if_fail (GCM_IS_DEVICE (device));
-	if (device->priv->type != kind) {
-		device->priv->type = kind;
+	if (device->priv->kind != kind) {
+		device->priv->kind = kind;
 		gcm_device_changed (device);
 	}
 }
@@ -353,10 +353,10 @@ gcm_device_set_contrast (GcmDevice *device, gfloat contrast)
 /**
  * gcm_device_get_colorspace:
  **/
-GcmColorspaceEnum
+GcmColorspace
 gcm_device_get_colorspace (GcmDevice *device)
 {
-	g_return_val_if_fail (GCM_IS_DEVICE (device), GCM_COLORSPACE_ENUM_UNKNOWN);
+	g_return_val_if_fail (GCM_IS_DEVICE (device), GCM_COLORSPACE_UNKNOWN);
 	return device->priv->colorspace;
 }
 
@@ -364,7 +364,7 @@ gcm_device_get_colorspace (GcmDevice *device)
  * gcm_device_set_colorspace:
  **/
 void
-gcm_device_set_colorspace (GcmDevice *device, GcmColorspaceEnum colorspace)
+gcm_device_set_colorspace (GcmDevice *device, GcmColorspace colorspace)
 {
 	g_return_if_fail (GCM_IS_DEVICE (device));
 	device->priv->colorspace = colorspace;
@@ -698,10 +698,10 @@ gcm_device_save (GcmDevice *device, GError **error)
 	/* save other properties we'll need if we add this device offline */
 	if (device->priv->title != NULL)
 		g_key_file_set_string (keyfile, device->priv->id, "title", device->priv->title);
-	g_key_file_set_string (keyfile, device->priv->id, "type", gcm_device_type_enum_to_string (device->priv->type));
+	g_key_file_set_string (keyfile, device->priv->id, "type", gcm_device_kind_to_string (device->priv->kind));
 
 	/* add colorspace */
-	g_key_file_set_string (keyfile, device->priv->id, "colorspace", gcm_colorspace_enum_to_string (device->priv->colorspace));
+	g_key_file_set_string (keyfile, device->priv->id, "colorspace", gcm_colorspace_to_string (device->priv->colorspace));
 
 	/* add virtual */
 	if (device->priv->virtual)
@@ -768,8 +768,8 @@ gcm_device_get_property (GObject *object, guint prop_id, GValue *value, GParamSp
 	GcmDevicePrivate *priv = device->priv;
 
 	switch (prop_id) {
-	case PROP_TYPE:
-		g_value_set_uint (value, priv->type);
+	case PROP_KIND:
+		g_value_set_uint (value, priv->kind);
 		break;
 	case PROP_ID:
 		g_value_set_string (value, priv->id);
@@ -825,7 +825,7 @@ gcm_device_set_property (GObject *object, guint prop_id, const GValue *value, GP
 	GcmDevice *device = GCM_DEVICE (object);
 
 	switch (prop_id) {
-	case PROP_TYPE:
+	case PROP_KIND:
 		gcm_device_set_kind (device, g_value_get_uint (value));
 		break;
 	case PROP_ID:
@@ -886,12 +886,12 @@ gcm_device_class_init (GcmDeviceClass *klass)
 	object_class->set_property = gcm_device_set_property;
 
 	/**
-	 * GcmDevice:type:
+	 * GcmDevice:kind:
 	 */
-	pspec = g_param_spec_uint ("type", NULL, NULL,
+	pspec = g_param_spec_uint ("kind", NULL, NULL,
 				   0, G_MAXUINT, 0,
 				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_TYPE, pspec);
+	g_object_class_install_property (object_class, PROP_KIND, pspec);
 
 	/**
 	 * GcmDevice:id:
@@ -993,7 +993,7 @@ gcm_device_class_init (GcmDeviceClass *klass)
 	 * GcmDevice:colorspace:
 	 */
 	pspec = g_param_spec_uint ("colorspace", NULL, NULL,
-				   0, GCM_COLORSPACE_ENUM_LAST, GCM_COLORSPACE_ENUM_UNKNOWN,
+				   0, GCM_COLORSPACE_LAST, GCM_COLORSPACE_UNKNOWN,
 				   G_PARAM_READWRITE);
 	g_object_class_install_property (object_class, PROP_COLORSPACE, pspec);
 
@@ -1037,7 +1037,7 @@ gcm_device_init (GcmDevice *device)
 		device->priv->gamma = 1.0f;
 	device->priv->brightness = 0.0f;
 	device->priv->contrast = 100.f;
-	device->priv->colorspace = GCM_COLORSPACE_ENUM_UNKNOWN;
+	device->priv->colorspace = GCM_COLORSPACE_UNKNOWN;
 }
 
 /**
@@ -1092,8 +1092,8 @@ gcm_device_test (EggTest *test)
 	const gchar *filename;
 	const gchar *profile;
 	gchar *data;
-	const gchar *type;
-	GcmDeviceTypeEnum type_enum;
+	const gchar *kind;
+	GcmDeviceKind kind_enum;
 
 	if (!egg_test_start (test, "GcmDevice"))
 		return;
@@ -1115,38 +1115,38 @@ gcm_device_test (EggTest *test)
 
 	/************************************************************/
 	egg_test_title (test, "convert to recognized enum");
-	type_enum = gcm_device_type_enum_from_string ("scanner");
-	egg_test_assert (test, (type_enum == GCM_DEVICE_TYPE_ENUM_SCANNER));
+	kind_enum = gcm_device_kind_from_string ("scanner");
+	egg_test_assert (test, (kind_enum == GCM_DEVICE_KIND_SCANNER));
 
 	/************************************************************/
 	egg_test_title (test, "convert to unrecognized enum");
-	type_enum = gcm_device_type_enum_from_string ("xxx");
-	egg_test_assert (test, (type_enum == GCM_DEVICE_TYPE_ENUM_UNKNOWN));
+	kind_enum = gcm_device_kind_from_string ("xxx");
+	egg_test_assert (test, (kind_enum == GCM_DEVICE_KIND_UNKNOWN));
 
 	/************************************************************/
 	egg_test_title (test, "convert from recognized enum");
-	type = gcm_device_type_enum_to_string (GCM_DEVICE_TYPE_ENUM_SCANNER);
-	if (g_strcmp0 (type, "scanner") == 0)
+	kind = gcm_device_kind_to_string (GCM_DEVICE_KIND_SCANNER);
+	if (g_strcmp0 (kind, "scanner") == 0)
 		egg_test_success (test, NULL);
 	else
-		egg_test_failed (test, "invalid value: %s", type);
+		egg_test_failed (test, "invalid value: %s", kind);
 
 	/************************************************************/
 	egg_test_title (test, "convert from unrecognized enum");
-	type = gcm_device_type_enum_to_string (GCM_DEVICE_TYPE_ENUM_UNKNOWN);
-	if (g_strcmp0 (type, "unknown") == 0)
+	kind = gcm_device_kind_to_string (GCM_DEVICE_KIND_UNKNOWN);
+	if (g_strcmp0 (kind, "unknown") == 0)
 		egg_test_success (test, NULL);
 	else
-		egg_test_failed (test, "invalid value: %s", type);
+		egg_test_failed (test, "invalid value: %s", kind);
 
 	/* set some properties */
 	g_object_set (device,
-		      "type", GCM_DEVICE_TYPE_ENUM_SCANNER,
+		      "kind", GCM_DEVICE_KIND_SCANNER,
 		      "id", "sysfs_dummy_device",
 		      "connected", FALSE,
 		      "virtual", FALSE,
 		      "serial", "0123456789",
-		      "colorspace", GCM_COLORSPACE_ENUM_RGB,
+		      "colorspace", GCM_COLORSPACE_RGB,
 		      NULL);
 
 	/************************************************************/
@@ -1174,11 +1174,11 @@ gcm_device_test (EggTest *test)
 
 	/************************************************************/
 	egg_test_title (test, "get id");
-	type = gcm_device_get_id (device);
-	if (g_strcmp0 (type, "sysfs_dummy_device") == 0)
+	kind = gcm_device_get_id (device);
+	if (g_strcmp0 (kind, "sysfs_dummy_device") == 0)
 		egg_test_success (test, NULL);
 	else
-		egg_test_failed (test, "invalid id: %s", type);
+		egg_test_failed (test, "invalid id: %s", kind);
 
 	/* ensure the file is nuked */
 	filename = gcm_utils_get_default_config_location ();
diff --git a/src/gcm-device.h b/src/gcm-device.h
index bf1dabc..2e80edf 100644
--- a/src/gcm-device.h
+++ b/src/gcm-device.h
@@ -68,9 +68,9 @@ gboolean		 gcm_device_apply			(GcmDevice	*device,
 								 GError		**error);
 
 /* accessors */
-GcmDeviceTypeEnum	 gcm_device_get_kind			(GcmDevice	*device);
+GcmDeviceKind	 gcm_device_get_kind			(GcmDevice	*device);
 void			 gcm_device_set_kind			(GcmDevice	*device,
-								 GcmDeviceTypeEnum kind);
+								 GcmDeviceKind kind);
 gboolean		 gcm_device_get_connected		(GcmDevice	*device);
 void			 gcm_device_set_connected		(GcmDevice	*device,
 								 gboolean	 connected);
@@ -89,9 +89,9 @@ void			 gcm_device_set_brightness		(GcmDevice	*device,
 gfloat			 gcm_device_get_contrast		(GcmDevice	*device);
 void			 gcm_device_set_contrast		(GcmDevice	*device,
 								 gfloat		 contrast);
-GcmColorspaceEnum	 gcm_device_get_colorspace		(GcmDevice	*device);
+GcmColorspace	 gcm_device_get_colorspace		(GcmDevice	*device);
 void			 gcm_device_set_colorspace		(GcmDevice	*device,
-								 GcmColorspaceEnum colorspace);
+								 GcmColorspace colorspace);
 const gchar		*gcm_device_get_id			(GcmDevice	*device);
 void			 gcm_device_set_id			(GcmDevice	*device,
 								 const gchar 	*id);
diff --git a/src/gcm-dump-profile.c b/src/gcm-dump-profile.c
index 7ddaec8..e674a11 100644
--- a/src/gcm-dump-profile.c
+++ b/src/gcm-dump-profile.c
@@ -39,7 +39,7 @@ gcm_dump_profile_filename (const gchar *filename)
 	gboolean ret;
 	GError *error = NULL;
 	GcmProfile *profile;
-	guint profile_type;
+	guint profile_kind;
 	guint colorspace;
 	guint size;
 	gboolean has_vcgt;
@@ -62,7 +62,7 @@ gcm_dump_profile_filename (const gchar *filename)
 
 	/* get data */
 	g_object_get (profile,
-		      "type", &profile_type,
+		      "kind", &profile_kind,
 		      "colorspace", &colorspace,
 		      "size", &size,
 		      "has-vcgt", &has_vcgt,
@@ -74,8 +74,8 @@ gcm_dump_profile_filename (const gchar *filename)
 		      NULL);
 
 	/* print what we know */
-	g_print ("Type:\t%s\n", gcm_profile_type_enum_to_string (profile_type));
-	g_print ("Colorspace:\t%s\n", gcm_colorspace_enum_to_string (colorspace));
+	g_print ("Kind:\t%s\n", gcm_profile_kind_to_string (profile_kind));
+	g_print ("Colorspace:\t%s\n", gcm_colorspace_to_string (colorspace));
 	g_print ("Size:\t%i bytes\n", size);
 	g_print ("Has VCGT:\t%s\n", has_vcgt ? "Yes" : "No");
 	if (description != NULL)
diff --git a/src/gcm-enum.c b/src/gcm-enum.c
index d3b9eb6..4d655ac 100644
--- a/src/gcm-enum.c
+++ b/src/gcm-enum.c
@@ -26,117 +26,117 @@
 #include "gcm-enum.h"
 
 /**
- * gcm_intent_enum_to_string:
+ * gcm_intent_to_string:
  **/
 const gchar *
-gcm_intent_enum_to_string (GcmIntentEnum intent)
+gcm_intent_to_string (GcmIntent intent)
 {
-	if (intent == GCM_INTENT_ENUM_PERCEPTUAL)
+	if (intent == GCM_INTENT_PERCEPTUAL)
 		return "perceptual";
-	if (intent == GCM_INTENT_ENUM_RELATIVE_COLORMETRIC)
+	if (intent == GCM_INTENT_RELATIVE_COLORMETRIC)
 		return "relative-colormetric";
-	if (intent == GCM_INTENT_ENUM_SATURATION)
+	if (intent == GCM_INTENT_SATURATION)
 		return "saturation";
-	if (intent == GCM_INTENT_ENUM_ABSOLUTE_COLORMETRIC)
+	if (intent == GCM_INTENT_ABSOLUTE_COLORMETRIC)
 		return "absolute-colormetric";
 	return "unknown";
 }
 
 /**
- * gcm_intent_enum_from_string:
+ * gcm_intent_from_string:
  **/
-GcmIntentEnum
-gcm_intent_enum_from_string (const gchar *intent)
+GcmIntent
+gcm_intent_from_string (const gchar *intent)
 {
 	if (g_strcmp0 (intent, "perceptual") == 0)
-		return GCM_INTENT_ENUM_PERCEPTUAL;
+		return GCM_INTENT_PERCEPTUAL;
 	if (g_strcmp0 (intent, "relative-colormetric") == 0)
-		return GCM_INTENT_ENUM_RELATIVE_COLORMETRIC;
+		return GCM_INTENT_RELATIVE_COLORMETRIC;
 	if (g_strcmp0 (intent, "saturation") == 0)
-		return GCM_INTENT_ENUM_SATURATION;
+		return GCM_INTENT_SATURATION;
 	if (g_strcmp0 (intent, "absolute-colormetric") == 0)
-		return GCM_INTENT_ENUM_ABSOLUTE_COLORMETRIC;
-	return GCM_INTENT_ENUM_UNKNOWN;
+		return GCM_INTENT_ABSOLUTE_COLORMETRIC;
+	return GCM_INTENT_UNKNOWN;
 }
 
 /**
- * gcm_profile_type_enum_to_string:
+ * gcm_profile_kind_to_string:
  **/
 const gchar *
-gcm_profile_type_enum_to_string (GcmProfileTypeEnum type)
+gcm_profile_kind_to_string (GcmProfileKind kind)
 {
-	if (type == GCM_PROFILE_TYPE_ENUM_INPUT_DEVICE)
+	if (kind == GCM_PROFILE_KIND_INPUT_DEVICE)
 		return "input-device";
-	if (type == GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE)
+	if (kind == GCM_PROFILE_KIND_DISPLAY_DEVICE)
 		return "display-device";
-	if (type == GCM_PROFILE_TYPE_ENUM_OUTPUT_DEVICE)
+	if (kind == GCM_PROFILE_KIND_OUTPUT_DEVICE)
 		return "output-device";
-	if (type == GCM_PROFILE_TYPE_ENUM_DEVICELINK)
+	if (kind == GCM_PROFILE_KIND_DEVICELINK)
 		return "devicelink";
-	if (type == GCM_PROFILE_TYPE_ENUM_COLORSPACE_CONVERSION)
+	if (kind == GCM_PROFILE_KIND_COLORSPACE_CONVERSION)
 		return "colorspace-conversion";
-	if (type == GCM_PROFILE_TYPE_ENUM_ABSTRACT)
+	if (kind == GCM_PROFILE_KIND_ABSTRACT)
 		return "abstract";
-	if (type == GCM_PROFILE_TYPE_ENUM_NAMED_COLOR)
+	if (kind == GCM_PROFILE_KIND_NAMED_COLOR)
 		return "named-color";
 	return "unknown";
 }
 
 /**
- * gcm_colorspace_enum_to_string:
+ * gcm_colorspace_to_string:
  **/
 const gchar *
-gcm_colorspace_enum_to_string (GcmColorspaceEnum type)
+gcm_colorspace_to_string (GcmColorspace colorspace)
 {
-	if (type == GCM_COLORSPACE_ENUM_XYZ)
+	if (colorspace == GCM_COLORSPACE_XYZ)
 		return "xyz";
-	if (type == GCM_COLORSPACE_ENUM_LAB)
+	if (colorspace == GCM_COLORSPACE_LAB)
 		return "lab";
-	if (type == GCM_COLORSPACE_ENUM_LUV)
+	if (colorspace == GCM_COLORSPACE_LUV)
 		return "luv";
-	if (type == GCM_COLORSPACE_ENUM_YCBCR)
+	if (colorspace == GCM_COLORSPACE_YCBCR)
 		return "ycbcr";
-	if (type == GCM_COLORSPACE_ENUM_YXY)
+	if (colorspace == GCM_COLORSPACE_YXY)
 		return "yxy";
-	if (type == GCM_COLORSPACE_ENUM_RGB)
+	if (colorspace == GCM_COLORSPACE_RGB)
 		return "rgb";
-	if (type == GCM_COLORSPACE_ENUM_GRAY)
+	if (colorspace == GCM_COLORSPACE_GRAY)
 		return "gray";
-	if (type == GCM_COLORSPACE_ENUM_HSV)
+	if (colorspace == GCM_COLORSPACE_HSV)
 		return "hsv";
-	if (type == GCM_COLORSPACE_ENUM_CMYK)
+	if (colorspace == GCM_COLORSPACE_CMYK)
 		return "cmyk";
-	if (type == GCM_COLORSPACE_ENUM_CMY)
+	if (colorspace == GCM_COLORSPACE_CMY)
 		return "cmy";
 	return "unknown";
 }
 
 /**
- * gcm_colorspace_enum_from_string:
+ * gcm_colorspace_from_string:
  **/
-GcmColorspaceEnum
-gcm_colorspace_enum_from_string (const gchar *colorspace)
+GcmColorspace
+gcm_colorspace_from_string (const gchar *colorspace)
 {
 	if (g_strcmp0 (colorspace, "xyz") == 0)
-		return GCM_COLORSPACE_ENUM_XYZ;
+		return GCM_COLORSPACE_XYZ;
 	if (g_strcmp0 (colorspace, "lab") == 0)
-		return GCM_COLORSPACE_ENUM_LAB;
+		return GCM_COLORSPACE_LAB;
 	if (g_strcmp0 (colorspace, "luv") == 0)
-		return GCM_COLORSPACE_ENUM_LUV;
+		return GCM_COLORSPACE_LUV;
 	if (g_strcmp0 (colorspace, "ycbcr") == 0)
-		return GCM_COLORSPACE_ENUM_YCBCR;
+		return GCM_COLORSPACE_YCBCR;
 	if (g_strcmp0 (colorspace, "yxy") == 0)
-		return GCM_COLORSPACE_ENUM_YXY;
+		return GCM_COLORSPACE_YXY;
 	if (g_strcmp0 (colorspace, "rgb") == 0)
-		return GCM_COLORSPACE_ENUM_RGB;
+		return GCM_COLORSPACE_RGB;
 	if (g_strcmp0 (colorspace, "gray") == 0)
-		return GCM_COLORSPACE_ENUM_GRAY;
+		return GCM_COLORSPACE_GRAY;
 	if (g_strcmp0 (colorspace, "hsv") == 0)
-		return GCM_COLORSPACE_ENUM_HSV;
+		return GCM_COLORSPACE_HSV;
 	if (g_strcmp0 (colorspace, "cmyk") == 0)
-		return GCM_COLORSPACE_ENUM_CMYK;
+		return GCM_COLORSPACE_CMYK;
 	if (g_strcmp0 (colorspace, "cmy") == 0)
-		return GCM_COLORSPACE_ENUM_CMY;
-	return GCM_COLORSPACE_ENUM_UNKNOWN;
+		return GCM_COLORSPACE_CMY;
+	return GCM_COLORSPACE_UNKNOWN;
 }
 
diff --git a/src/gcm-enum.h b/src/gcm-enum.h
index 76700b4..cd58064 100644
--- a/src/gcm-enum.h
+++ b/src/gcm-enum.h
@@ -25,57 +25,57 @@
 #include <glib/gi18n.h>
 
 typedef enum {
-	GCM_INTENT_ENUM_UNKNOWN,
-	GCM_INTENT_ENUM_PERCEPTUAL,
-	GCM_INTENT_ENUM_RELATIVE_COLORMETRIC,
-	GCM_INTENT_ENUM_SATURATION,
-	GCM_INTENT_ENUM_ABSOLUTE_COLORMETRIC,
-	GCM_INTENT_ENUM_LAST
-} GcmIntentEnum;
+	GCM_INTENT_UNKNOWN,
+	GCM_INTENT_PERCEPTUAL,
+	GCM_INTENT_RELATIVE_COLORMETRIC,
+	GCM_INTENT_SATURATION,
+	GCM_INTENT_ABSOLUTE_COLORMETRIC,
+	GCM_INTENT_LAST
+} GcmIntent;
 
 typedef enum {
-	GCM_PROFILE_TYPE_ENUM_UNKNOWN,
-	GCM_PROFILE_TYPE_ENUM_INPUT_DEVICE,
-	GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE,
-	GCM_PROFILE_TYPE_ENUM_OUTPUT_DEVICE,
-	GCM_PROFILE_TYPE_ENUM_DEVICELINK,
-	GCM_PROFILE_TYPE_ENUM_COLORSPACE_CONVERSION,
-	GCM_PROFILE_TYPE_ENUM_ABSTRACT,
-	GCM_PROFILE_TYPE_ENUM_NAMED_COLOR,
-	GCM_PROFILE_TYPE_ENUM_LAST
-} GcmProfileTypeEnum;
+	GCM_PROFILE_KIND_UNKNOWN,
+	GCM_PROFILE_KIND_INPUT_DEVICE,
+	GCM_PROFILE_KIND_DISPLAY_DEVICE,
+	GCM_PROFILE_KIND_OUTPUT_DEVICE,
+	GCM_PROFILE_KIND_DEVICELINK,
+	GCM_PROFILE_KIND_COLORSPACE_CONVERSION,
+	GCM_PROFILE_KIND_ABSTRACT,
+	GCM_PROFILE_KIND_NAMED_COLOR,
+	GCM_PROFILE_KIND_LAST
+} GcmProfileKind;
 
 typedef enum {
-	GCM_COLORSPACE_ENUM_UNKNOWN,
-	GCM_COLORSPACE_ENUM_XYZ,
-	GCM_COLORSPACE_ENUM_LAB,
-	GCM_COLORSPACE_ENUM_LUV,
-	GCM_COLORSPACE_ENUM_YCBCR,
-	GCM_COLORSPACE_ENUM_YXY,
-	GCM_COLORSPACE_ENUM_RGB,
-	GCM_COLORSPACE_ENUM_GRAY,
-	GCM_COLORSPACE_ENUM_HSV,
-	GCM_COLORSPACE_ENUM_CMYK,
-	GCM_COLORSPACE_ENUM_CMY,
-	GCM_COLORSPACE_ENUM_LAST
-} GcmColorspaceEnum;
+	GCM_COLORSPACE_UNKNOWN,
+	GCM_COLORSPACE_XYZ,
+	GCM_COLORSPACE_LAB,
+	GCM_COLORSPACE_LUV,
+	GCM_COLORSPACE_YCBCR,
+	GCM_COLORSPACE_YXY,
+	GCM_COLORSPACE_RGB,
+	GCM_COLORSPACE_GRAY,
+	GCM_COLORSPACE_HSV,
+	GCM_COLORSPACE_CMYK,
+	GCM_COLORSPACE_CMY,
+	GCM_COLORSPACE_LAST
+} GcmColorspace;
 
 typedef enum {
-	GCM_DEVICE_TYPE_ENUM_UNKNOWN,
-	GCM_DEVICE_TYPE_ENUM_DISPLAY,
-	GCM_DEVICE_TYPE_ENUM_SCANNER,
-	GCM_DEVICE_TYPE_ENUM_PRINTER,
-	GCM_DEVICE_TYPE_ENUM_CAMERA,
-	GCM_DEVICE_TYPE_ENUM_LAST
-} GcmDeviceTypeEnum;
+	GCM_DEVICE_KIND_UNKNOWN,
+	GCM_DEVICE_KIND_DISPLAY,
+	GCM_DEVICE_KIND_SCANNER,
+	GCM_DEVICE_KIND_PRINTER,
+	GCM_DEVICE_KIND_CAMERA,
+	GCM_DEVICE_KIND_LAST
+} GcmDeviceKind;
 
-GcmIntentEnum		 gcm_intent_enum_from_string		(const gchar		*intent);
-const gchar		*gcm_intent_enum_to_string		(GcmIntentEnum		 intent);
-const gchar		*gcm_profile_type_enum_to_string	(GcmProfileTypeEnum	 profile_type);
-const gchar		*gcm_colorspace_enum_to_string		(GcmColorspaceEnum	 colorspace);
-GcmColorspaceEnum	 gcm_colorspace_enum_from_string	(const gchar		*colorspace);
-GcmDeviceTypeEnum	 gcm_device_type_enum_from_string	(const gchar		*type);
-const gchar		*gcm_device_type_enum_to_string		(GcmDeviceTypeEnum	 type);
+GcmIntent	 gcm_intent_from_string			(const gchar		*intent);
+const gchar	*gcm_intent_to_string			(GcmIntent		 intent);
+const gchar	*gcm_profile_kind_to_string		(GcmProfileKind		 profile_kind);
+const gchar	*gcm_colorspace_to_string		(GcmColorspace		 colorspace);
+GcmColorspace	 gcm_colorspace_from_string		(const gchar		*colorspace);
+GcmDeviceKind	 gcm_device_kind_from_string		(const gchar		*kind);
+const gchar	*gcm_device_kind_to_string		(GcmDeviceKind		 kind);
 
 #endif /* __GCM_ENUM_H */
 
diff --git a/src/gcm-import.c b/src/gcm-import.c
index bf60932..8d15919 100644
--- a/src/gcm-import.c
+++ b/src/gcm-import.c
@@ -65,7 +65,7 @@ main (int argc, char **argv)
 	gchar **files = NULL;
 	guint retval = 1;
 	GcmProfile *profile = NULL;
-	GcmColorspaceEnum colorspace;
+	GcmColorspace colorspace;
 	GError *error = NULL;
 	GOptionContext *context;
 	GString *string = NULL;
@@ -191,7 +191,7 @@ main (int argc, char **argv)
 	gcm_import_add_cie_widget (GTK_DIALOG(dialog), cie_widget);
 
 	/* only show the cie widget if we have RGB data */
-	if (colorspace != GCM_COLORSPACE_ENUM_RGB)
+	if (colorspace != GCM_COLORSPACE_RGB)
 		gtk_widget_hide (cie_widget);
 
 	gtk_window_set_resizable (GTK_WINDOW (dialog), TRUE);
diff --git a/src/gcm-inspect.c b/src/gcm-inspect.c
index e6e8044..5562ed0 100644
--- a/src/gcm-inspect.c
+++ b/src/gcm-inspect.c
@@ -506,7 +506,7 @@ main (int argc, char **argv)
 	guint xid = 0;
 	gchar *device_id = NULL;
 	gchar *type = NULL;
-	GcmDeviceTypeEnum type_enum;
+	GcmDeviceKind kind_enum;
 	guint retval = 0;
 	GOptionContext *context;
 
@@ -552,8 +552,8 @@ main (int argc, char **argv)
 	if (xid != 0)
 		gcm_inspect_show_profile_for_window (xid);
 	if (type != NULL) {
-		type_enum = gcm_device_type_enum_from_string (type);
-		if (type_enum == GCM_DEVICE_TYPE_ENUM_UNKNOWN) {
+		kind_enum = gcm_device_kind_from_string (type);
+		if (kind_enum == GCM_DEVICE_KIND_UNKNOWN) {
 			/* TRANSLATORS: this is when the user does --type=mickeymouse */
 			g_print ("%s\n", _("Device type not recognized"));
 		} else {
diff --git a/src/gcm-install-system-wide.c b/src/gcm-install-system-wide.c
index 58d71ca..85be7eb 100644
--- a/src/gcm-install-system-wide.c
+++ b/src/gcm-install-system-wide.c
@@ -29,10 +29,10 @@
 #include <locale.h>
 
 #define GCM_INSTALL_SYSTEM_WIDE_EXIT_CODE_SUCCESS		0
-#define GCM_INSTALL_SYSTEM_WIDE_EXIT_CODE_FAILED			1
+#define GCM_INSTALL_SYSTEM_WIDE_EXIT_CODE_FAILED		1
 #define GCM_INSTALL_SYSTEM_WIDE_EXIT_CODE_ARGUMENTS_INVALID	3
 #define GCM_INSTALL_SYSTEM_WIDE_EXIT_CODE_CONTENT_TYPE_INVALID	4
-#define GCM_INSTALL_SYSTEM_WIDE_EXIT_CODE_FAILED_TO_COPY		5
+#define GCM_INSTALL_SYSTEM_WIDE_EXIT_CODE_FAILED_TO_COPY	5
 #define GCM_INSTALL_SYSTEM_WIDE_EXIT_CODE_INVALID_USER		6
 
 /**
diff --git a/src/gcm-prefs.c b/src/gcm-prefs.c
index fed6637..a5293b0 100644
--- a/src/gcm-prefs.c
+++ b/src/gcm-prefs.c
@@ -211,7 +211,7 @@ gcm_prefs_default_cb (GtkWidget *widget, gpointer data)
 {
 	GPtrArray *array = NULL;
 	GcmDevice *device;
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 	gboolean ret;
 	guint i;
 
@@ -221,8 +221,8 @@ gcm_prefs_default_cb (GtkWidget *widget, gpointer data)
 		device = g_ptr_array_index (array, i);
 
 		/* not a xrandr panel */
-		type = gcm_device_get_kind (device);
-		if (type != GCM_DEVICE_TYPE_ENUM_DISPLAY)
+		kind = gcm_device_get_kind (device);
+		if (kind != GCM_DEVICE_KIND_DISPLAY)
 			continue;
 
 		/* set for this device */
@@ -365,18 +365,18 @@ out:
 }
 
 /**
- * gcm_prefs_profile_type_to_icon_name:
+ * gcm_prefs_profile_kind_to_icon_name:
  **/
 static const gchar *
-gcm_prefs_profile_type_to_icon_name (GcmProfileTypeEnum type)
+gcm_prefs_profile_kind_to_icon_name (GcmProfileKind kind)
 {
-	if (type == GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE)
+	if (kind == GCM_PROFILE_KIND_DISPLAY_DEVICE)
 		return "video-display";
-	if (type == GCM_PROFILE_TYPE_ENUM_INPUT_DEVICE)
+	if (kind == GCM_PROFILE_KIND_INPUT_DEVICE)
 		return "scanner";
-	if (type == GCM_PROFILE_TYPE_ENUM_OUTPUT_DEVICE)
+	if (kind == GCM_PROFILE_KIND_OUTPUT_DEVICE)
 		return "printer";
-	if (type == GCM_PROFILE_TYPE_ENUM_COLORSPACE_CONVERSION)
+	if (kind == GCM_PROFILE_KIND_COLORSPACE_CONVERSION)
 		return "view-refresh";
 	return "image-missing";
 }
@@ -385,13 +385,13 @@ gcm_prefs_profile_type_to_icon_name (GcmProfileTypeEnum type)
  * gcm_prefs_profile_get_sort_string:
  **/
 static const gchar *
-gcm_prefs_profile_get_sort_string (GcmProfileTypeEnum type)
+gcm_prefs_profile_get_sort_string (GcmProfileKind kind)
 {
-	if (type == GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE)
+	if (kind == GCM_PROFILE_KIND_DISPLAY_DEVICE)
 		return "1";
-	if (type == GCM_PROFILE_TYPE_ENUM_INPUT_DEVICE)
+	if (kind == GCM_PROFILE_KIND_INPUT_DEVICE)
 		return "2";
-	if (type == GCM_PROFILE_TYPE_ENUM_OUTPUT_DEVICE)
+	if (kind == GCM_PROFILE_KIND_OUTPUT_DEVICE)
 		return "3";
 	return "4";
 }
@@ -405,7 +405,7 @@ gcm_prefs_update_profile_list (void)
 	GtkTreeIter iter;
 	gchar *description;
 	const gchar *icon_name;
-	GcmProfileTypeEnum profile_type = GCM_PROFILE_TYPE_ENUM_UNKNOWN;
+	GcmProfileKind profile_kind = GCM_PROFILE_KIND_UNKNOWN;
 	GcmProfile *profile;
 	guint i;
 	gchar *filename = NULL;
@@ -425,15 +425,15 @@ gcm_prefs_update_profile_list (void)
 		profile = g_ptr_array_index (profile_array, i);
 		g_object_get (profile,
 			      "description", &description,
-			      "type", &profile_type,
+			      "kind", &profile_kind,
 			      "filename", &filename,
 			      NULL);
 
 		egg_debug ("add %s to profiles list", filename);
-		icon_name = gcm_prefs_profile_type_to_icon_name (profile_type);
+		icon_name = gcm_prefs_profile_kind_to_icon_name (profile_kind);
 		gtk_list_store_append (list_store_profiles, &iter);
 		sort = g_strdup_printf ("%s%s",
-					gcm_prefs_profile_get_sort_string (profile_type),
+					gcm_prefs_profile_get_sort_string (profile_kind),
 					description);
 		gtk_list_store_set (list_store_profiles, &iter,
 				    GCM_PROFILES_COLUMN_ID, filename,
@@ -733,7 +733,7 @@ static void
 gcm_prefs_calibrate_cb (GtkWidget *widget, gpointer data)
 {
 	GcmCalibrate *calibrate = NULL;
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 	gboolean ret;
 	GError *error = NULL;
 	gchar *filename = NULL;
@@ -750,24 +750,20 @@ gcm_prefs_calibrate_cb (GtkWidget *widget, gpointer data)
 	if (!ret)
 		goto out;
 
-	/* get the type */
-	g_object_get (current_device,
-		      "type", &type,
-		      NULL);
-
 	/* create new calibration object */
 	calibrate = GCM_CALIBRATE(gcm_calibrate_argyll_new ());
 
-	/* choose the correct type of calibration */
-	switch (type) {
-	case GCM_DEVICE_TYPE_ENUM_DISPLAY:
+	/* choose the correct kind of calibration */
+	kind = gcm_device_get_kind (current_device);
+	switch (kind) {
+	case GCM_DEVICE_KIND_DISPLAY:
 		ret = gcm_prefs_calibrate_display (calibrate);
 		break;
-	case GCM_DEVICE_TYPE_ENUM_SCANNER:
-	case GCM_DEVICE_TYPE_ENUM_CAMERA:
+	case GCM_DEVICE_KIND_SCANNER:
+	case GCM_DEVICE_KIND_CAMERA:
 		ret = gcm_prefs_calibrate_device (calibrate);
 		break;
-	case GCM_DEVICE_TYPE_ENUM_PRINTER:
+	case GCM_DEVICE_KIND_PRINTER:
 		ret = gcm_prefs_calibrate_printer (calibrate);
 		break;
 	default:
@@ -880,7 +876,7 @@ gcm_prefs_device_add_cb (GtkWidget *widget, gpointer data)
 static void
 gcm_prefs_button_virtual_add_cb (GtkWidget *widget, gpointer data)
 {
-	GcmDeviceTypeEnum device_type;
+	GcmDeviceKind device_kind;
 	GcmDevice *device;
 	const gchar *model;
 	const gchar *manufacturer;
@@ -889,7 +885,7 @@ gcm_prefs_button_virtual_add_cb (GtkWidget *widget, gpointer data)
 
 	/* get device details */
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "combobox_virtual_type"));
-	device_type = gtk_combo_box_get_active (GTK_COMBO_BOX(widget)) + 2;
+	device_kind = gtk_combo_box_get_active (GTK_COMBO_BOX(widget)) + 2;
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "entry_virtual_model"));
 	model = gtk_entry_get_text (GTK_ENTRY (widget));
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "entry_virtual_manufacturer"));
@@ -897,7 +893,7 @@ gcm_prefs_button_virtual_add_cb (GtkWidget *widget, gpointer data)
 
 	/* create device */
 	device = gcm_device_virtual_new	();
-	ret = gcm_device_virtual_create_from_params (GCM_DEVICE_VIRTUAL (device), device_type, model, manufacturer, GCM_COLORSPACE_ENUM_RGB);
+	ret = gcm_device_virtual_create_from_params (GCM_DEVICE_VIRTUAL (device), device_kind, model, manufacturer, GCM_COLORSPACE_RGB);
 	if (!ret) {
 		/* TRANSLATORS: could not add virtual device */
 		gcm_prefs_error_dialog (_("Failed to create virtual device"), NULL);
@@ -1087,7 +1083,7 @@ gcm_prefs_set_calibrate_button_sensitivity (void)
 	gboolean ret = FALSE;
 	GtkWidget *widget;
 	const gchar *tooltip;
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 	gboolean connected;
 	gboolean xrandr_fallback;
 
@@ -1101,16 +1097,12 @@ gcm_prefs_set_calibrate_button_sensitivity (void)
 		goto out;
 	}
 
-	/* get current device properties */
-	g_object_get (current_device,
-		      "type", &type,
-		      "connected", &connected,
-		      NULL);
-
 	/* are we a display */
-	if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY) {
+	kind = gcm_device_get_kind (current_device);
+	if (kind == GCM_DEVICE_KIND_DISPLAY) {
 
 		/* are we disconnected */
+		connected = gcm_device_get_connected (current_device);
 		if (!connected) {
 			/* TRANSLATORS: this is when the button is insensitive */
 			tooltip = _("Cannot calibrate: The device is not connected");
@@ -1118,9 +1110,7 @@ gcm_prefs_set_calibrate_button_sensitivity (void)
 		}
 
 		/* are we not XRandR 1.3 compat */
-		g_object_get (current_device,
-			      "xrandr_fallback", &xrandr_fallback,
-			      NULL);
+		xrandr_fallback = gcm_device_xrandr_get_fallback (GCM_DEVICE_XRANDR (current_device));
 		if (xrandr_fallback) {
 			/* TRANSLATORS: this is when the button is insensitive */
 			tooltip = _("Cannot calibrate: The display driver does not support XRandR 1.3");
@@ -1134,13 +1124,13 @@ gcm_prefs_set_calibrate_button_sensitivity (void)
 			tooltip = _("Cannot calibrate: The measuring instrument is not plugged in");
 			goto out;
 		}
-	} else if (type == GCM_DEVICE_TYPE_ENUM_SCANNER ||
-		   type == GCM_DEVICE_TYPE_ENUM_CAMERA) {
+	} else if (kind == GCM_DEVICE_KIND_SCANNER ||
+		   kind == GCM_DEVICE_KIND_CAMERA) {
 
 		/* TODO: find out if we can scan using gnome-scan */
 		ret = TRUE;
 
-	} else if (type == GCM_DEVICE_TYPE_ENUM_PRINTER) {
+	} else if (kind == GCM_DEVICE_KIND_PRINTER) {
 
 		/* find whether we have hardware installed */
 		ret = gcm_colorimeter_get_present (colorimeter);
@@ -1176,16 +1166,16 @@ out:
 static gboolean
 gcm_prefs_is_profile_suitable_for_device (GcmProfile *profile, GcmDevice *device)
 {
-	GcmProfileTypeEnum profile_type_tmp;
-	GcmProfileTypeEnum profile_type;
-	GcmColorspaceEnum profile_colorspace;
-	GcmColorspaceEnum device_colorspace;
+	GcmProfileKind profile_kind_tmp;
+	GcmProfileKind profile_kind;
+	GcmColorspace profile_colorspace;
+	GcmColorspace device_colorspace;
 	gboolean ret = FALSE;
-	GcmDeviceTypeEnum device_type;
+	GcmDeviceKind device_kind;
 
 	/* get properties */
 	g_object_get (profile,
-		      "type", &profile_type_tmp,
+		      "kind", &profile_kind_tmp,
 		      "colorspace", &profile_colorspace,
 		      NULL);
 
@@ -1194,10 +1184,10 @@ gcm_prefs_is_profile_suitable_for_device (GcmProfile *profile, GcmDevice *device
 	if (device_colorspace != profile_colorspace)
 		goto out;
 
-	/* not the correct type */
-	device_type = gcm_device_get_kind (device);
-	profile_type = gcm_utils_device_type_to_profile_type (device_type);
-	if (profile_type_tmp != profile_type)
+	/* not the correct kind */
+	device_kind = gcm_device_get_kind (device);
+	profile_kind = gcm_utils_device_kind_to_profile_kind (device_kind);
+	if (profile_kind_tmp != profile_kind)
 		goto out;
 
 	/* success */
@@ -1231,7 +1221,7 @@ gcm_prefs_add_profiles_suitable_for_devices (GtkWidget *widget, const gchar *pro
 	/* get new list */
 	profile_array = gcm_profile_store_get_array (profile_store);
 
-	/* add profiles of the right type */
+	/* add profiles of the right kind */
 	for (i=0; i<profile_array->len; i++) {
 		profile = g_ptr_array_index (profile_array, i);
 
@@ -1275,7 +1265,7 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 {
 	GtkTreeModel *model;
 	GtkTreeIter iter;
-	gchar *profile_filename = NULL;
+	const gchar *profile_filename = NULL;
 	GtkWidget *widget;
 	gfloat localgamma;
 	gfloat brightness;
@@ -1283,10 +1273,10 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 	gboolean connected;
 	gchar *id = NULL;
 	gboolean ret;
-	GcmDeviceTypeEnum type;
-	gchar *device_serial = NULL;
-	gchar *device_model = NULL;
-	gchar *device_manufacturer = NULL;
+	GcmDeviceKind kind;
+	const gchar *device_serial = NULL;
+	const gchar *device_model = NULL;
+	const gchar *device_manufacturer = NULL;
 
 	/* This will only work in single or browse selection mode! */
 	if (!gtk_tree_selection_get_selected (selection, &model, &iter)) {
@@ -1308,12 +1298,10 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 	current_device = gcm_client_get_device_by_id (gcm_client, id);
 	if (current_device == NULL)
 		goto out;
-	g_object_get (current_device,
-		      "type", &type,
-		      NULL);
 
 	/* not a xrandr device */
-	if (type != GCM_DEVICE_TYPE_ENUM_DISPLAY) {
+	kind = gcm_device_get_kind (current_device);
+	if (kind != GCM_DEVICE_KIND_DISPLAY) {
 		widget = GTK_WIDGET (gtk_builder_get_object (builder, "expander_fine_tuning"));
 		gtk_widget_set_sensitive (widget, FALSE);
 		widget = GTK_WIDGET (gtk_builder_get_object (builder, "button_reset"));
@@ -1328,10 +1316,8 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 
 	/* show broken devices */
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_problems"));
-	if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY) {
-		g_object_get (current_device,
-			      "xrandr-fallback", &ret,
-			      NULL);
+	if (kind == GCM_DEVICE_KIND_DISPLAY) {
+		ret = gcm_device_xrandr_get_fallback (GCM_DEVICE_XRANDR (current_device));
 		if (ret) {
 			/* TRANSLATORS: Some shitty binary drivers do not support per-head gamma controls.
 			 * Whilst this does not matter if you only have one monitor attached, it means you
@@ -1345,19 +1331,9 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 		gtk_widget_hide (widget);
 	}
 
-	g_object_get (current_device,
-		      "profile-filename", &profile_filename,
-		      "gamma", &localgamma,
-		      "brightness", &brightness,
-		      "contrast", &contrast,
-		      "connected", &connected,
-		      "serial", &device_serial,
-		      "model", &device_model,
-		      "manufacturer", &device_manufacturer,
-		      NULL);
-
 	/* set device labels */
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hbox_serial"));
+	device_serial = gcm_device_get_serial (current_device);
 	if (device_serial != NULL) {
 		gtk_widget_show (widget);
 		widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_serial"));
@@ -1366,6 +1342,7 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 		gtk_widget_hide (widget);
 	}
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hbox_model"));
+	device_model = gcm_device_get_model (current_device);
 	if (device_model != NULL) {
 		gtk_widget_show (widget);
 		widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_model"));
@@ -1374,6 +1351,7 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 		gtk_widget_hide (widget);
 	}
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hbox_manufacturer"));
+	device_manufacturer = gcm_device_get_manufacturer (current_device);
 	if (device_manufacturer != NULL) {
 		gtk_widget_show (widget);
 		widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_manufacturer"));
@@ -1386,16 +1364,20 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 
 	/* set adjustments */
 	setting_up_device = TRUE;
+	localgamma = gcm_device_get_gamma (current_device);
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hscale_gamma"));
 	gtk_range_set_value (GTK_RANGE (widget), localgamma);
+	brightness = gcm_device_get_brightness (current_device);
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hscale_brightness"));
 	gtk_range_set_value (GTK_RANGE (widget), brightness);
+	contrast = gcm_device_get_contrast (current_device);
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hscale_contrast"));
 	gtk_range_set_value (GTK_RANGE (widget), contrast);
 	setting_up_device = FALSE;
 
-	/* add profiles of the right type */
+	/* add profiles of the right kind */
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "combobox_profile"));
+	profile_filename = gcm_device_get_profile_filename (current_device);
 	gcm_prefs_add_profiles_suitable_for_devices (widget, profile_filename);
 
 	/* make sure selectable */
@@ -1408,49 +1390,46 @@ gcm_prefs_devices_treeview_clicked_cb (GtkTreeSelection *selection, gpointer use
 
 	/* can we delete this device? */
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "button_delete"));
+	connected = gcm_device_get_connected (current_device);
 	gtk_widget_set_sensitive (widget, !connected);
 
 	/* can this device calibrate */
 	gcm_prefs_set_calibrate_button_sensitivity ();
 out:
-	g_free (device_serial);
-	g_free (device_model);
-	g_free (device_manufacturer);
 	g_free (id);
-	g_free (profile_filename);
 }
 
 /**
- * gcm_prefs_profile_type_to_string:
+ * gcm_prefs_profile_kind_to_string:
  **/
 static gchar *
-gcm_prefs_profile_type_to_string (GcmProfileTypeEnum type)
+gcm_prefs_profile_kind_to_string (GcmProfileKind kind)
 {
-	if (type == GCM_PROFILE_TYPE_ENUM_INPUT_DEVICE) {
+	if (kind == GCM_PROFILE_KIND_INPUT_DEVICE) {
 		/* TRANSLATORS: this the ICC profile type */
 		return _("Input device");
 	}
-	if (type == GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE) {
+	if (kind == GCM_PROFILE_KIND_DISPLAY_DEVICE) {
 		/* TRANSLATORS: this the ICC profile type */
 		return _("Display device");
 	}
-	if (type == GCM_PROFILE_TYPE_ENUM_OUTPUT_DEVICE) {
+	if (kind == GCM_PROFILE_KIND_OUTPUT_DEVICE) {
 		/* TRANSLATORS: this the ICC profile type */
 		return _("Output device");
 	}
-	if (type == GCM_PROFILE_TYPE_ENUM_DEVICELINK) {
+	if (kind == GCM_PROFILE_KIND_DEVICELINK) {
 		/* TRANSLATORS: this the ICC profile type */
 		return _("Devicelink");
 	}
-	if (type == GCM_PROFILE_TYPE_ENUM_COLORSPACE_CONVERSION) {
+	if (kind == GCM_PROFILE_KIND_COLORSPACE_CONVERSION) {
 		/* TRANSLATORS: this the ICC profile type */
 		return _("Colorspace conversion");
 	}
-	if (type == GCM_PROFILE_TYPE_ENUM_ABSTRACT) {
-		/* TRANSLATORS: this the ICC profile type */
+	if (kind == GCM_PROFILE_KIND_ABSTRACT) {
+		/* TRANSLATORS: this the ICC profile kind */
 		return _("Abstract");
 	}
-	if (type == GCM_PROFILE_TYPE_ENUM_NAMED_COLOR) {
+	if (kind == GCM_PROFILE_KIND_NAMED_COLOR) {
 		/* TRANSLATORS: this the ICC profile type */
 		return _("Named color");
 	}
@@ -1462,45 +1441,45 @@ gcm_prefs_profile_type_to_string (GcmProfileTypeEnum type)
  * gcm_prefs_profile_colorspace_to_string:
  **/
 static gchar *
-gcm_prefs_profile_colorspace_to_string (GcmColorspaceEnum type)
+gcm_prefs_profile_colorspace_to_string (GcmColorspace colorspace)
 {
-	if (type == GCM_COLORSPACE_ENUM_XYZ) {
+	if (colorspace == GCM_COLORSPACE_XYZ) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("XYZ");
 	}
-	if (type == GCM_COLORSPACE_ENUM_LAB) {
+	if (colorspace == GCM_COLORSPACE_LAB) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("LAB");
 	}
-	if (type == GCM_COLORSPACE_ENUM_LUV) {
+	if (colorspace == GCM_COLORSPACE_LUV) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("LUV");
 	}
-	if (type == GCM_COLORSPACE_ENUM_YCBCR) {
+	if (colorspace == GCM_COLORSPACE_YCBCR) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("YCbCr");
 	}
-	if (type == GCM_COLORSPACE_ENUM_YXY) {
+	if (colorspace == GCM_COLORSPACE_YXY) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("Yxy");
 	}
-	if (type == GCM_COLORSPACE_ENUM_RGB) {
+	if (colorspace == GCM_COLORSPACE_RGB) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("RGB");
 	}
-	if (type == GCM_COLORSPACE_ENUM_GRAY) {
+	if (colorspace == GCM_COLORSPACE_GRAY) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("Gray");
 	}
-	if (type == GCM_COLORSPACE_ENUM_HSV) {
+	if (colorspace == GCM_COLORSPACE_HSV) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("HSV");
 	}
-	if (type == GCM_COLORSPACE_ENUM_CMYK) {
+	if (colorspace == GCM_COLORSPACE_CMYK) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("CMYK");
 	}
-	if (type == GCM_COLORSPACE_ENUM_CMY) {
+	if (colorspace == GCM_COLORSPACE_CMY) {
 		/* TRANSLATORS: this the ICC colorspace type */
 		return _("CMY");
 	}
@@ -1531,9 +1510,9 @@ gcm_prefs_profiles_treeview_clicked_cb (GtkTreeSelection *selection, gpointer us
 	gchar *filename = NULL;
 	gchar *basename = NULL;
 	gchar *size_text = NULL;
-	GcmProfileTypeEnum profile_type;
-	GcmColorspaceEnum profile_colorspace;
-	const gchar *profile_type_text;
+	GcmProfileKind profile_kind;
+	GcmColorspace profile_colorspace;
+	const gchar *profile_kind_text;
 	const gchar *profile_colorspace_text;
 	gboolean ret;
 	gboolean has_vcgt;
@@ -1562,7 +1541,7 @@ gcm_prefs_profiles_treeview_clicked_cb (GtkTreeSelection *selection, gpointer us
 		      "manufacturer", &profile_manufacturer,
 		      "model", &profile_model,
 		      "datetime", &profile_datetime,
-		      "type", &profile_type,
+		      "kind", &profile_kind,
 		      "colorspace", &profile_colorspace,
 		      "white", &white,
 		      "red", &red,
@@ -1606,20 +1585,20 @@ gcm_prefs_profiles_treeview_clicked_cb (GtkTreeSelection *selection, gpointer us
 		gtk_widget_hide (trc_widget);
 	}
 
-	/* set type */
+	/* set kind */
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hbox_type"));
-	if (profile_type == GCM_PROFILE_TYPE_ENUM_UNKNOWN) {
+	if (profile_kind == GCM_PROFILE_KIND_UNKNOWN) {
 		gtk_widget_hide (widget);
 	} else {
 		gtk_widget_show (widget);
 		widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_type"));
-		profile_type_text = gcm_prefs_profile_type_to_string (profile_type);
-		gtk_label_set_label (GTK_LABEL (widget), profile_type_text);
+		profile_kind_text = gcm_prefs_profile_kind_to_string (profile_kind);
+		gtk_label_set_label (GTK_LABEL (widget), profile_kind_text);
 	}
 
 	/* set colorspace */
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hbox_colorspace"));
-	if (profile_colorspace == GCM_COLORSPACE_ENUM_UNKNOWN) {
+	if (profile_colorspace == GCM_COLORSPACE_UNKNOWN) {
 		gtk_widget_hide (widget);
 	} else {
 		gtk_widget_show (widget);
@@ -1630,7 +1609,7 @@ gcm_prefs_profiles_treeview_clicked_cb (GtkTreeSelection *selection, gpointer us
 
 	/* set vcgt */
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "hbox_vcgt"));
-	gtk_widget_set_visible (widget, (profile_type == GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE));
+	gtk_widget_set_visible (widget, (profile_kind == GCM_PROFILE_KIND_DISPLAY_DEVICE));
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_vcgt"));
 	if (has_vcgt) {
 		/* TRANSLATORS: if the device has a VCGT profile */
@@ -1728,18 +1707,18 @@ gcm_prefs_profiles_treeview_clicked_cb (GtkTreeSelection *selection, gpointer us
 }
 
 /**
- * gcm_device_type_enum_to_string:
+ * gcm_device_kind_to_string:
  **/
 static const gchar *
-gcm_prefs_device_type_to_string (GcmDeviceTypeEnum type)
+gcm_prefs_device_kind_to_string (GcmDeviceKind kind)
 {
-	if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY)
+	if (kind == GCM_DEVICE_KIND_DISPLAY)
 		return "1";
-	if (type == GCM_DEVICE_TYPE_ENUM_SCANNER)
+	if (kind == GCM_DEVICE_KIND_SCANNER)
 		return "2";
-	if (type == GCM_DEVICE_TYPE_ENUM_CAMERA)
+	if (kind == GCM_DEVICE_KIND_CAMERA)
 		return "3";
-	if (type == GCM_DEVICE_TYPE_ENUM_PRINTER)
+	if (kind == GCM_DEVICE_KIND_PRINTER)
 		return "4";
 	return "5";
 }
@@ -1790,7 +1769,7 @@ gcm_prefs_add_device_xrandr (GcmDevice *device)
 
 	/* create sort order */
 	sort = g_strdup_printf ("%s%s",
-				gcm_prefs_device_type_to_string (GCM_DEVICE_TYPE_ENUM_DISPLAY),
+				gcm_prefs_device_kind_to_string (GCM_DEVICE_KIND_DISPLAY),
 				title);
 
 	/* add to list */
@@ -1839,7 +1818,7 @@ gcm_prefs_set_combo_simple_text (GtkWidget *combo_box)
 static void
 gcm_prefs_profile_combo_changed_cb (GtkWidget *widget, gpointer data)
 {
-	gchar *profile_old = NULL;
+	const gchar *profile_old;
 	GFile *file = NULL;
 	GFile *dest = NULL;
 	gboolean ret;
@@ -1847,7 +1826,7 @@ gcm_prefs_profile_combo_changed_cb (GtkWidget *widget, gpointer data)
 	GcmProfile *profile = NULL;
 	GcmProfile *profile_tmp = NULL;
 	gboolean changed;
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 	GtkTreeIter iter;
 	GtkTreeModel *model;
 	GcmPrefsEntryType entry_type;
@@ -1919,10 +1898,8 @@ gcm_prefs_profile_combo_changed_cb (GtkWidget *widget, gpointer data)
 		filename = g_file_get_path (dest);
 	}
 
-	/* get the device type */
-	g_object_get (current_device,
-		      "type", &type,
-		      NULL);
+	/* get the device kind */
+	kind = gcm_device_get_kind (current_device);
 
 	/* get profile filename */
 	if (entry_type == GCM_PREFS_ENTRY_TYPE_PROFILE) {
@@ -1932,7 +1909,7 @@ gcm_prefs_profile_combo_changed_cb (GtkWidget *widget, gpointer data)
 			      NULL);
 
 		/* show a warning if the profile is crap */
-		if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY && !has_vcgt && filename != NULL) {
+		if (kind == GCM_DEVICE_KIND_DISPLAY && !has_vcgt && filename != NULL) {
 			gtk_widget_show (info_bar_vcgt);
 		} else {
 			gtk_widget_hide (info_bar_vcgt);
@@ -1942,10 +1919,7 @@ gcm_prefs_profile_combo_changed_cb (GtkWidget *widget, gpointer data)
 	}
 
 	/* see if it's changed */
-	g_object_get (current_device,
-		      "profile-filename", &profile_old,
-		      "type", &type,
-		      NULL);
+	profile_old = gcm_device_get_profile_filename (current_device);
 	egg_debug ("old: %s, new:%s", profile_old, filename);
 	changed = ((g_strcmp0 (profile_old, filename) != 0));
 
@@ -1978,7 +1952,6 @@ out:
 		g_object_unref (dest);
 	if (profile_tmp != NULL)
 		g_object_unref (profile_tmp);
-	g_free (profile_old);
 	g_free (filename);
 }
 
@@ -2065,41 +2038,41 @@ gcm_prefs_colorimeter_changed_cb (GcmColorimeter *_colorimeter, gpointer user_da
 }
 
 /**
- * gcm_prefs_device_type_to_icon_name:
+ * gcm_prefs_device_kind_to_icon_name:
  **/
 static const gchar *
-gcm_prefs_device_type_to_icon_name (GcmDeviceTypeEnum type)
+gcm_prefs_device_kind_to_icon_name (GcmDeviceKind kind)
 {
-	if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY)
+	if (kind == GCM_DEVICE_KIND_DISPLAY)
 		return "video-display";
-	if (type == GCM_DEVICE_TYPE_ENUM_SCANNER)
+	if (kind == GCM_DEVICE_KIND_SCANNER)
 		return "scanner";
-	if (type == GCM_DEVICE_TYPE_ENUM_PRINTER)
+	if (kind == GCM_DEVICE_KIND_PRINTER)
 		return "printer";
-	if (type == GCM_DEVICE_TYPE_ENUM_CAMERA)
+	if (kind == GCM_DEVICE_KIND_CAMERA)
 		return "camera-photo";
 	return "image-missing";
 }
 
 /**
- * gcm_prefs_add_device_type:
+ * gcm_prefs_add_device_kind:
  **/
 static void
-gcm_prefs_add_device_type (GcmDevice *device)
+gcm_prefs_add_device_kind (GcmDevice *device)
 {
 	GtkTreeIter iter;
 	const gchar *title;
 	GString *string;
 	const gchar *id;
 	gchar *sort = NULL;
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 	const gchar *icon_name;
 	gboolean connected;
 	gboolean virtual;
 
 	/* get icon */
-	type = gcm_device_get_kind (device);
-	icon_name = gcm_prefs_device_type_to_icon_name (type);
+	kind = gcm_device_get_kind (device);
+	icon_name = gcm_prefs_device_kind_to_icon_name (kind);
 
 	/* create a title for the device */
 	title = gcm_device_get_title (device);
@@ -2115,7 +2088,7 @@ gcm_prefs_add_device_type (GcmDevice *device)
 
 	/* create sort order */
 	sort = g_strdup_printf ("%s%s",
-				gcm_prefs_device_type_to_string (type),
+				gcm_prefs_device_kind_to_string (kind),
 				string->str);
 
 	/* add to list */
@@ -2174,7 +2147,7 @@ gcm_prefs_remove_device (GcmDevice *gcm_device)
 static gboolean
 gcm_prefs_added_idle_cb (GcmDevice *device)
 {
-	GcmDeviceTypeEnum type;
+	GcmDeviceKind kind;
 	egg_debug ("added: %s (connected: %i)",
 		   gcm_device_get_id (device),
 		   gcm_device_get_connected (device));
@@ -2183,11 +2156,11 @@ gcm_prefs_added_idle_cb (GcmDevice *device)
 	gcm_prefs_remove_device (device);
 
 	/* add the device */
-	type = gcm_device_get_kind (device);
-	if (type == GCM_DEVICE_TYPE_ENUM_DISPLAY)
+	kind = gcm_device_get_kind (device);
+	if (kind == GCM_DEVICE_KIND_DISPLAY)
 		gcm_prefs_add_device_xrandr (device);
 	else
-		gcm_prefs_add_device_type (device);
+		gcm_prefs_add_device_kind (device);
 
 	/* unref the instance */
 	g_object_unref (device);
@@ -2275,13 +2248,13 @@ gcm_prefs_startup_phase2_idle_cb (gpointer user_data)
  * gcm_prefs_colorspace_to_localised_string:
  **/
 static const gchar *
-gcm_prefs_colorspace_to_localised_string (GcmColorspaceEnum colorspace)
+gcm_prefs_colorspace_to_localised_string (GcmColorspace colorspace)
 {
-	if (colorspace == GCM_COLORSPACE_ENUM_RGB) {
+	if (colorspace == GCM_COLORSPACE_RGB) {
 		/* TRANSLATORS: this is the colorspace, e.g. red, green, blue */
 		return _("RGB");
 	}
-	if (colorspace == GCM_COLORSPACE_ENUM_CMYK) {
+	if (colorspace == GCM_COLORSPACE_CMYK) {
 		/* TRANSLATORS: this is the colorspace, e.g. cyan, magenta, yellow, black */
 		return _("CMYK");
 	}
@@ -2292,13 +2265,13 @@ gcm_prefs_colorspace_to_localised_string (GcmColorspaceEnum colorspace)
  * gcm_prefs_setup_space_combobox:
  **/
 static void
-gcm_prefs_setup_space_combobox (GtkWidget *widget, GcmColorspaceEnum colorspace, const gchar *profile_filename)
+gcm_prefs_setup_space_combobox (GtkWidget *widget, GcmColorspace colorspace, const gchar *profile_filename)
 {
 	GcmProfile *profile;
 	guint i;
 	gchar *filename;
 	gchar *description;
-	GcmColorspaceEnum colorspace_tmp;
+	GcmColorspace colorspace_tmp;
 	gboolean has_profile = FALSE;
 	gboolean has_vcgt;
 	gchar *text = NULL;
@@ -2307,7 +2280,7 @@ gcm_prefs_setup_space_combobox (GtkWidget *widget, GcmColorspaceEnum colorspace,
 	GtkTreeIter iter;
 
 	/* search is a way to reduce to number of profiles */
-	if (colorspace == GCM_COLORSPACE_ENUM_CMYK)
+	if (colorspace == GCM_COLORSPACE_CMYK)
 		search = "CMYK";
 
 	/* get new list */
@@ -2323,10 +2296,10 @@ gcm_prefs_setup_space_combobox (GtkWidget *widget, GcmColorspaceEnum colorspace,
 			      "colorspace", &colorspace_tmp,
 			      NULL);
 
-		/* only for correct type */
+		/* only for correct kind */
 		if (!has_vcgt &&
 		    colorspace == colorspace_tmp &&
-		    (colorspace == GCM_COLORSPACE_ENUM_CMYK ||
+		    (colorspace == GCM_COLORSPACE_CMYK ||
 		     g_strstr_len (description, -1, search) != NULL)) {
 			gcm_prefs_combobox_add_profile (widget, profile, GCM_PREFS_ENTRY_TYPE_PROFILE, &iter);
 
@@ -2411,7 +2384,7 @@ gcm_prefs_renderer_combo_changed_cb (GtkWidget *widget, gpointer data)
 		gconf_key = GCM_SETTINGS_RENDERING_INTENT_SOFTPROOF;
 
 	/* save to GConf */
-	value = gcm_intent_enum_to_string (active+1);
+	value = gcm_intent_to_string (active+1);
 	egg_debug ("changed rendering intent to %s", value);
 	gconf_client_set_string (gconf_client, gconf_key, value, NULL);
 }
@@ -2426,10 +2399,10 @@ gcm_prefs_setup_rendering_combobox (GtkWidget *widget, const gchar *intent)
 	gboolean ret = FALSE;
 	const gchar *text;
 
-	for (i=1; i<GCM_INTENT_ENUM_LAST; i++) {
-		text = gcm_intent_enum_to_localized_text (i);
+	for (i=1; i<GCM_INTENT_LAST; i++) {
+		text = gcm_intent_to_localized_text (i);
 		gtk_combo_box_append_text (GTK_COMBO_BOX (widget), text);
-		text = gcm_intent_enum_to_string (i);
+		text = gcm_intent_to_string (i);
 		if (g_strcmp0 (text, intent) == 0) {
 			ret = TRUE;
 			gtk_combo_box_set_active (GTK_COMBO_BOX (widget), i-1);
@@ -2467,7 +2440,7 @@ gcm_prefs_startup_phase1_idle_cb (gpointer user_data)
 		g_clear_error (&error);
 	}
 	gcm_prefs_set_combo_simple_text (widget);
-	gcm_prefs_setup_space_combobox (widget, GCM_COLORSPACE_ENUM_RGB, colorspace_rgb);
+	gcm_prefs_setup_space_combobox (widget, GCM_COLORSPACE_RGB, colorspace_rgb);
 	g_signal_connect (G_OBJECT (widget), "changed",
 			  G_CALLBACK (gcm_prefs_space_combo_changed_cb), NULL);
 
@@ -2479,7 +2452,7 @@ gcm_prefs_startup_phase1_idle_cb (gpointer user_data)
 		g_clear_error (&error);
 	}
 	gcm_prefs_set_combo_simple_text (widget);
-	gcm_prefs_setup_space_combobox (widget, GCM_COLORSPACE_ENUM_CMYK, colorspace_cmyk);
+	gcm_prefs_setup_space_combobox (widget, GCM_COLORSPACE_CMYK, colorspace_cmyk);
 	g_signal_connect (G_OBJECT (widget), "changed",
 			  G_CALLBACK (gcm_prefs_space_combo_changed_cb), (gpointer) "cmyk");
 
@@ -2693,24 +2666,24 @@ gcm_prefs_info_bar_response_cb (GtkDialog *dialog, GtkResponseType response, gpo
 }
 
 /**
- * gcm_device_type_enum_to_localised_string:
+ * gcm_device_kind_to_localised_string:
  **/
 static const gchar *
-gcm_device_type_enum_to_localised_string (GcmDeviceTypeEnum device_type)
+gcm_device_kind_to_localised_string (GcmDeviceKind device_kind)
 {
-	if (device_type == GCM_DEVICE_TYPE_ENUM_DISPLAY) {
+	if (device_kind == GCM_DEVICE_KIND_DISPLAY) {
 		/* TRANSLATORS: device type */
 		return _("Display");
 	}
-	if (device_type == GCM_DEVICE_TYPE_ENUM_SCANNER) {
+	if (device_kind == GCM_DEVICE_KIND_SCANNER) {
 		/* TRANSLATORS: device type */
 		return _("Scanner");
 	}
-	if (device_type == GCM_DEVICE_TYPE_ENUM_PRINTER) {
+	if (device_kind == GCM_DEVICE_KIND_PRINTER) {
 		/* TRANSLATORS: device type */
 		return _("Printer");
 	}
-	if (device_type == GCM_DEVICE_TYPE_ENUM_CAMERA) {
+	if (device_kind == GCM_DEVICE_KIND_CAMERA) {
 		/* TRANSLATORS: device type */
 		return _("Camera");
 	}
@@ -2726,11 +2699,11 @@ gcm_prefs_setup_virtual_combobox (GtkWidget *widget)
 	guint i;
 	const gchar *text;
 
-	for (i=GCM_DEVICE_TYPE_ENUM_SCANNER; i<GCM_DEVICE_TYPE_ENUM_LAST; i++) {
-		text = gcm_device_type_enum_to_localised_string (i);
+	for (i=GCM_DEVICE_KIND_SCANNER; i<GCM_DEVICE_KIND_LAST; i++) {
+		text = gcm_device_kind_to_localised_string (i);
 		gtk_combo_box_append_text (GTK_COMBO_BOX(widget), text);
 	}
-	gtk_combo_box_set_active (GTK_COMBO_BOX (widget), GCM_DEVICE_TYPE_ENUM_PRINTER - 2);
+	gtk_combo_box_set_active (GTK_COMBO_BOX (widget), GCM_DEVICE_KIND_PRINTER - 2);
 }
 
 /**
diff --git a/src/gcm-profile-lcms1.c b/src/gcm-profile-lcms1.c
index 6b890d9..69b5b33 100644
--- a/src/gcm-profile-lcms1.c
+++ b/src/gcm-profile-lcms1.c
@@ -435,8 +435,8 @@ gcm_profile_lcms1_parse_data (GcmProfile *profile, const guint8 *data, gsize len
 	guint tag_offset;
 	icProfileClassSignature profile_class;
 	icColorSpaceSignature color_space;
-	GcmColorspaceEnum colorspace;
-	GcmProfileTypeEnum profile_type;
+	GcmColorspace colorspace;
+	GcmProfileKind profile_kind;
 	cmsCIEXYZ cie_xyz;
 	cmsCIEXYZTRIPLE cie_illum;
 	struct tm created;
@@ -494,72 +494,72 @@ gcm_profile_lcms1_parse_data (GcmProfile *profile, const guint8 *data, gsize len
 		egg_warning ("failed to get black point");
 	}
 
-	/* get the profile_lcms1 type */
+	/* get the profile kind */
 	profile_class = cmsGetDeviceClass (priv->lcms_profile);
 	switch (profile_class) {
 	case icSigInputClass:
-		profile_type = GCM_PROFILE_TYPE_ENUM_INPUT_DEVICE;
+		profile_kind = GCM_PROFILE_KIND_INPUT_DEVICE;
 		break;
 	case icSigDisplayClass:
-		profile_type = GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE;
+		profile_kind = GCM_PROFILE_KIND_DISPLAY_DEVICE;
 		break;
 	case icSigOutputClass:
-		profile_type = GCM_PROFILE_TYPE_ENUM_OUTPUT_DEVICE;
+		profile_kind = GCM_PROFILE_KIND_OUTPUT_DEVICE;
 		break;
 	case icSigLinkClass:
-		profile_type = GCM_PROFILE_TYPE_ENUM_DEVICELINK;
+		profile_kind = GCM_PROFILE_KIND_DEVICELINK;
 		break;
 	case icSigColorSpaceClass:
-		profile_type = GCM_PROFILE_TYPE_ENUM_COLORSPACE_CONVERSION;
+		profile_kind = GCM_PROFILE_KIND_COLORSPACE_CONVERSION;
 		break;
 	case icSigAbstractClass:
-		profile_type = GCM_PROFILE_TYPE_ENUM_ABSTRACT;
+		profile_kind = GCM_PROFILE_KIND_ABSTRACT;
 		break;
 	case icSigNamedColorClass:
-		profile_type = GCM_PROFILE_TYPE_ENUM_NAMED_COLOR;
+		profile_kind = GCM_PROFILE_KIND_NAMED_COLOR;
 		break;
 	default:
-		profile_type = GCM_PROFILE_TYPE_ENUM_UNKNOWN;
+		profile_kind = GCM_PROFILE_KIND_UNKNOWN;
 	}
 	g_object_set (profile,
-		      "type", profile_type,
+		      "kind", profile_kind,
 		      NULL);
 
 	/* get colorspace */
 	color_space = cmsGetColorSpace (priv->lcms_profile);
 	switch (color_space) {
 	case icSigXYZData:
-		colorspace = GCM_COLORSPACE_ENUM_XYZ;
+		colorspace = GCM_COLORSPACE_XYZ;
 		break;
 	case icSigLabData:
-		colorspace = GCM_COLORSPACE_ENUM_LAB;
+		colorspace = GCM_COLORSPACE_LAB;
 		break;
 	case icSigLuvData:
-		colorspace = GCM_COLORSPACE_ENUM_LUV;
+		colorspace = GCM_COLORSPACE_LUV;
 		break;
 	case icSigYCbCrData:
-		colorspace = GCM_COLORSPACE_ENUM_YCBCR;
+		colorspace = GCM_COLORSPACE_YCBCR;
 		break;
 	case icSigYxyData:
-		colorspace = GCM_COLORSPACE_ENUM_YXY;
+		colorspace = GCM_COLORSPACE_YXY;
 		break;
 	case icSigRgbData:
-		colorspace = GCM_COLORSPACE_ENUM_RGB;
+		colorspace = GCM_COLORSPACE_RGB;
 		break;
 	case icSigGrayData:
-		colorspace = GCM_COLORSPACE_ENUM_GRAY;
+		colorspace = GCM_COLORSPACE_GRAY;
 		break;
 	case icSigHsvData:
-		colorspace = GCM_COLORSPACE_ENUM_HSV;
+		colorspace = GCM_COLORSPACE_HSV;
 		break;
 	case icSigCmykData:
-		colorspace = GCM_COLORSPACE_ENUM_CMYK;
+		colorspace = GCM_COLORSPACE_CMYK;
 		break;
 	case icSigCmyData:
-		colorspace = GCM_COLORSPACE_ENUM_CMY;
+		colorspace = GCM_COLORSPACE_CMY;
 		break;
 	default:
-		colorspace = GCM_COLORSPACE_ENUM_UNKNOWN;
+		colorspace = GCM_COLORSPACE_UNKNOWN;
 	}
 	g_object_set (profile,
 		      "colorspace", colorspace,
@@ -870,7 +870,7 @@ gcm_profile_lcms1_generate_curve (GcmProfile *profile, guint size)
 	cmsHPROFILE srgb_profile_lcms1 = NULL;
 	cmsHTRANSFORM transform = NULL;
 	guint type;
-	GcmColorspaceEnum colorspace;
+	GcmColorspace colorspace;
 	GcmProfileLcms1 *profile_lcms1 = GCM_PROFILE_LCMS1 (profile);
 	GcmProfileLcms1Private *priv = profile_lcms1->priv;
 
@@ -880,7 +880,7 @@ gcm_profile_lcms1_generate_curve (GcmProfile *profile, guint size)
 		      NULL);
 
 	/* run through the profile_lcms1 */
-	if (colorspace == GCM_COLORSPACE_ENUM_RGB) {
+	if (colorspace == GCM_COLORSPACE_RGB) {
 
 		/* RGB */
 		component_width = 3;
diff --git a/src/gcm-profile.c b/src/gcm-profile.c
index 57ff454..62af0dd 100644
--- a/src/gcm-profile.c
+++ b/src/gcm-profile.c
@@ -51,22 +51,22 @@ static void     gcm_profile_finalize	(GObject     *object);
  **/
 struct _GcmProfilePrivate
 {
-	GcmProfileTypeEnum		 profile_type;
-	GcmColorspaceEnum		 colorspace;
-	guint				 size;
-	gboolean			 has_vcgt;
-	gchar				*description;
-	gchar				*filename;
-	GFileMonitor			*monitor;
-	gchar				*copyright;
-	gchar				*manufacturer;
-	gchar				*model;
-	gchar				*datetime;
-	GcmXyz				*white;
-	GcmXyz				*black;
-	GcmXyz				*red;
-	GcmXyz				*green;
-	GcmXyz				*blue;
+	GcmProfileKind		 profile_kind;
+	GcmColorspace		 colorspace;
+	guint			 size;
+	gboolean		 has_vcgt;
+	gchar			*description;
+	gchar			*filename;
+	GFileMonitor		*monitor;
+	gchar			*copyright;
+	gchar			*manufacturer;
+	gchar			*model;
+	gchar			*datetime;
+	GcmXyz			*white;
+	GcmXyz			*black;
+	GcmXyz			*red;
+	GcmXyz			*green;
+	GcmXyz			*blue;
 };
 
 enum {
@@ -77,7 +77,7 @@ enum {
 	PROP_DATETIME,
 	PROP_DESCRIPTION,
 	PROP_FILENAME,
-	PROP_TYPE,
+	PROP_KIND,
 	PROP_COLORSPACE,
 	PROP_SIZE,
 	PROP_HAS_VCGT,
@@ -274,8 +274,8 @@ gcm_profile_get_property (GObject *object, guint prop_id, GValue *value, GParamS
 	case PROP_FILENAME:
 		g_value_set_string (value, priv->filename);
 		break;
-	case PROP_TYPE:
-		g_value_set_uint (value, priv->profile_type);
+	case PROP_KIND:
+		g_value_set_uint (value, priv->profile_kind);
 		break;
 	case PROP_COLORSPACE:
 		g_value_set_uint (value, priv->colorspace);
@@ -376,8 +376,8 @@ gcm_profile_set_property (GObject *object, guint prop_id, const GValue *value, G
 			g_object_unref (file);
 		}
 		break;
-	case PROP_TYPE:
-		priv->profile_type = g_value_get_uint (value);
+	case PROP_KIND:
+		priv->profile_kind = g_value_get_uint (value);
 		break;
 	case PROP_COLORSPACE:
 		priv->colorspace = g_value_get_uint (value);
@@ -470,12 +470,12 @@ gcm_profile_class_init (GcmProfileClass *klass)
 	g_object_class_install_property (object_class, PROP_FILENAME, pspec);
 
 	/**
-	 * GcmProfile:type:
+	 * GcmProfile:kind:
 	 */
-	pspec = g_param_spec_uint ("type", NULL, NULL,
+	pspec = g_param_spec_uint ("kind", NULL, NULL,
 				   0, G_MAXUINT, 0,
 				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_TYPE, pspec);
+	g_object_class_install_property (object_class, PROP_KIND, pspec);
 
 	/**
 	 * GcmProfile:colorspace:
@@ -552,8 +552,8 @@ gcm_profile_init (GcmProfile *profile)
 {
 	profile->priv = GCM_PROFILE_GET_PRIVATE (profile);
 	profile->priv->monitor = NULL;
-	profile->priv->profile_type = GCM_PROFILE_TYPE_ENUM_UNKNOWN;
-	profile->priv->colorspace = GCM_COLORSPACE_ENUM_UNKNOWN;
+	profile->priv->profile_kind = GCM_PROFILE_KIND_UNKNOWN;
+	profile->priv->colorspace = GCM_COLORSPACE_UNKNOWN;
 	profile->priv->white = gcm_xyz_new ();
 	profile->priv->black = gcm_xyz_new ();
 	profile->priv->red = gcm_xyz_new ();
@@ -628,8 +628,8 @@ typedef struct {
 	const gchar *model;
 	const gchar *datetime;
 	const gchar *description;
-	GcmProfileTypeEnum type;
-	GcmColorspaceEnum colorspace;
+	GcmProfileKind kind;
+	GcmColorspace colorspace;
 	gfloat luminance;
 } GcmProfileTestData;
 
@@ -647,7 +647,7 @@ gcm_profile_test_parse_file (EggTest *test, const guint8 *datafile, GcmProfileTe
 	gchar *pnp_id;
 	gchar *data;
 	guint width;
-	guint type;
+	guint kind;
 	guint colorspace;
 	gfloat gamma;
 	gboolean ret;
@@ -685,7 +685,7 @@ gcm_profile_test_parse_file (EggTest *test, const guint8 *datafile, GcmProfileTe
 		      "datetime", &datetime,
 		      "description", &description,
 		      "filename", &filename_tmp,
-		      "type", &type,
+		      "kind", &kind,
 		      "colorspace", &colorspace,
 		      NULL);
 
@@ -725,11 +725,11 @@ gcm_profile_test_parse_file (EggTest *test, const guint8 *datafile, GcmProfileTe
 		egg_test_failed (test, "invalid value: %s, expecting: %s", description, test_data->description);
 
 	/************************************************************/
-	egg_test_title (test, "check type for %s", datafile);
-	if (type == test_data->type)
+	egg_test_title (test, "check kind for %s", datafile);
+	if (kind == test_data->kind)
 		egg_test_success (test, NULL);
 	else
-		egg_test_failed (test, "invalid value: %i, expecting: %i", type, test_data->type);
+		egg_test_failed (test, "invalid value: %i, expecting: %i", kind, test_data->kind);
 
 	/************************************************************/
 	egg_test_title (test, "check colorspace for %s", datafile);
@@ -774,8 +774,8 @@ gcm_profile_test (EggTest *test)
 	test_data.manufacturer = "IEC http://www.iec.ch";;
 	test_data.model = "IEC 61966-2.1 Default RGB colour space - sRGB";
 	test_data.description = "Blueish Test";
-	test_data.type = GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE;
-	test_data.colorspace = GCM_COLORSPACE_ENUM_RGB;
+	test_data.kind = GCM_PROFILE_KIND_DISPLAY_DEVICE;
+	test_data.colorspace = GCM_COLORSPACE_RGB;
 	test_data.luminance = 0.648454;
 	test_data.datetime = "February  9 1998, 06:49:00 AM";
 	gcm_profile_test_parse_file (test, "bluish.icc", &test_data);
@@ -785,8 +785,8 @@ gcm_profile_test (EggTest *test)
 	test_data.manufacturer = "IEC http://www.iec.ch";;
 	test_data.model = "IEC 61966-2.1 Default RGB colour space - sRGB";
 	test_data.description = "ADOBEGAMMA-Test";
-	test_data.type = GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE;
-	test_data.colorspace = GCM_COLORSPACE_ENUM_RGB;
+	test_data.kind = GCM_PROFILE_KIND_DISPLAY_DEVICE;
+	test_data.colorspace = GCM_COLORSPACE_RGB;
 	test_data.luminance = 0.648446;
 	test_data.datetime = "August 16 2005, 09:49:54 PM";
 	gcm_profile_test_parse_file (test, "AdobeGammaTest.icm", &test_data);
diff --git a/src/gcm-utils.c b/src/gcm-utils.c
index d10851e..8a4919e 100644
--- a/src/gcm-utils.c
+++ b/src/gcm-utils.c
@@ -478,28 +478,28 @@ gcm_utils_get_default_config_location (void)
 }
 
 /**
- * gcm_utils_device_type_to_profile_type:
+ * gcm_utils_device_kind_to_profile_kind:
  **/
-GcmProfileTypeEnum
-gcm_utils_device_type_to_profile_type (GcmDeviceTypeEnum type)
+GcmProfileKind
+gcm_utils_device_kind_to_profile_kind (GcmDeviceKind kind)
 {
-	GcmProfileTypeEnum profile_type;
-	switch (type) {
-	case GCM_DEVICE_TYPE_ENUM_DISPLAY:
-		profile_type = GCM_PROFILE_TYPE_ENUM_DISPLAY_DEVICE;
+	GcmProfileKind profile_kind;
+	switch (kind) {
+	case GCM_DEVICE_KIND_DISPLAY:
+		profile_kind = GCM_PROFILE_KIND_DISPLAY_DEVICE;
 		break;
-	case GCM_DEVICE_TYPE_ENUM_CAMERA:
-	case GCM_DEVICE_TYPE_ENUM_SCANNER:
-		profile_type = GCM_PROFILE_TYPE_ENUM_INPUT_DEVICE;
+	case GCM_DEVICE_KIND_CAMERA:
+	case GCM_DEVICE_KIND_SCANNER:
+		profile_kind = GCM_PROFILE_KIND_INPUT_DEVICE;
 		break;
-	case GCM_DEVICE_TYPE_ENUM_PRINTER:
-		profile_type = GCM_PROFILE_TYPE_ENUM_OUTPUT_DEVICE;
+	case GCM_DEVICE_KIND_PRINTER:
+		profile_kind = GCM_PROFILE_KIND_OUTPUT_DEVICE;
 		break;
 	default:
-		egg_warning ("unknown type: %i", type);
-		profile_type = GCM_PROFILE_TYPE_ENUM_UNKNOWN;
+		egg_warning ("unknown kind: %i", kind);
+		profile_kind = GCM_PROFILE_KIND_UNKNOWN;
 	}
-	return profile_type;
+	return profile_kind;
 }
 
 /**
@@ -517,24 +517,24 @@ gcm_utils_format_date_time (const struct tm *created)
 }
 
 /**
- * gcm_intent_enum_to_localized_text:
+ * gcm_intent_to_localized_text:
  **/
 const gchar *
-gcm_intent_enum_to_localized_text (GcmIntentEnum intent)
+gcm_intent_to_localized_text (GcmIntent intent)
 {
-	if (intent == GCM_INTENT_ENUM_PERCEPTUAL) {
+	if (intent == GCM_INTENT_PERCEPTUAL) {
 		/* TRANSLATORS: rendering intent: you probably want to google this */
 		return _("Perceptual");
 	}
-	if (intent == GCM_INTENT_ENUM_RELATIVE_COLORMETRIC) {
+	if (intent == GCM_INTENT_RELATIVE_COLORMETRIC) {
 		/* TRANSLATORS: rendering intent: you probably want to google this */
 		return _("Relative colormetric");
 	}
-	if (intent == GCM_INTENT_ENUM_SATURATION) {
+	if (intent == GCM_INTENT_SATURATION) {
 		/* TRANSLATORS: rendering intent: you probably want to google this */
 		return _("Saturation");
 	}
-	if (intent == GCM_INTENT_ENUM_ABSOLUTE_COLORMETRIC) {
+	if (intent == GCM_INTENT_ABSOLUTE_COLORMETRIC) {
 		/* TRANSLATORS: rendering intent: you probably want to google this */
 		return _("Absolute colormetric");
 	}
@@ -555,8 +555,8 @@ gcm_utils_test (EggTest *test)
 	GPtrArray *array;
 	gchar *text;
 	gchar *filename;
-	GcmProfileTypeEnum profile_type;
-	GcmDeviceTypeEnum device_type;
+	GcmProfileKind profile_kind;
+	GcmDeviceKind device_kind;
 	GFile *file;
 	GFile *dest;
 
@@ -656,14 +656,14 @@ gcm_utils_test (EggTest *test)
 	g_free (filename);
 
 	/************************************************************/
-	egg_test_title (test, "convert valid device type to profile type");
-	profile_type = gcm_utils_device_type_to_profile_type (GCM_DEVICE_TYPE_ENUM_SCANNER);
-	egg_test_assert (test, (profile_type == GCM_PROFILE_TYPE_ENUM_INPUT_DEVICE));
+	egg_test_title (test, "convert valid device kind to profile kind");
+	profile_kind = gcm_utils_device_kind_to_profile_kind (GCM_DEVICE_KIND_SCANNER);
+	egg_test_assert (test, (profile_kind == GCM_PROFILE_KIND_INPUT_DEVICE));
 
 	/************************************************************/
-	egg_test_title (test, "convert invalid device type to profile type");
-	profile_type = gcm_utils_device_type_to_profile_type (GCM_DEVICE_TYPE_ENUM_UNKNOWN);
-	egg_test_assert (test, (profile_type == GCM_PROFILE_TYPE_ENUM_UNKNOWN));
+	egg_test_title (test, "convert invalid device kind to profile kind");
+	profile_kind = gcm_utils_device_kind_to_profile_kind (GCM_DEVICE_KIND_UNKNOWN);
+	egg_test_assert (test, (profile_kind == GCM_PROFILE_KIND_UNKNOWN));
 
 	egg_test_end (test);
 }
diff --git a/src/gcm-utils.h b/src/gcm-utils.h
index 0cef661..549c3de 100644
--- a/src/gcm-utils.h
+++ b/src/gcm-utils.h
@@ -63,14 +63,14 @@ gboolean	 gcm_utils_output_is_lcd		(const gchar		*output_name);
 void		 gcm_utils_alphanum_lcase		(gchar			*string);
 void		 gcm_utils_ensure_sensible_filename	(gchar			*string);
 gchar		*gcm_utils_get_default_config_location	(void);
-GcmProfileTypeEnum  gcm_utils_device_type_to_profile_type (GcmDeviceTypeEnum	 type);
+GcmProfileKind	 gcm_utils_device_kind_to_profile_kind	(GcmDeviceKind		 kind);
 gchar		*gcm_utils_format_date_time		(const struct tm	*created);
 gboolean	 gcm_utils_install_package		(const gchar		*package_name,
 							 GtkWindow		*window);
 void		 gcm_utils_ensure_printable		(gchar			*text);
 gboolean	 gcm_utils_is_icc_profile		(GFile			*file);
 gchar		*gcm_utils_linkify			(const gchar		*text);
-const gchar	*gcm_intent_enum_to_localized_text	(GcmIntentEnum	 intent);
+const gchar	*gcm_intent_to_localized_text	(GcmIntent	 intent);
 
 #endif /* __GCM_UTILS_H */
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]