Index: wysiwyg.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/wysiwyg/wysiwyg.install,v
retrieving revision 1.13
diff -u -p -r1.13 wysiwyg.install
--- wysiwyg.install	23 Jan 2011 01:58:34 -0000	1.13
+++ wysiwyg.install	1 Feb 2011 17:33:37 -0000
@@ -31,6 +31,22 @@ function wysiwyg_schema() {
         'description' => 'Configuration settings for the editor.',
         'type' => 'text',
         'size' => 'normal',
+        'serialize' => TRUE,
+      ),
+      'status' => array(
+        'type' => 'int',
+        'not null' => TRUE,
+        // Hard code the value of ENTITY_CUSTOM in case entity.module is not present.
+        'default' => 0x01,
+        'size' => 'tiny',
+        'description' => 'The exportable status of the entity.',
+      ),
+      'module' => array(
+        'description' => 'The name of the providing module if the entity has been defined in code.',
+        'type' => 'varchar',
+        'length' => 255,
+        'default' => '',
+        'not null' => FALSE,
       ),
     ),
     'primary key' => array('format'),
@@ -311,3 +327,26 @@ function wysiwyg_update_7200() {
     ));
   }
 }
+
+/**
+ * Add fields used for Entity API module exportables.
+ */
+function wysiwyg_update_7201() {
+  // Create a created column.
+  db_add_field('wysiwyg', 'status', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    // Hard code the value of ENTITY_CUSTOM in case entity.module is not present.
+    'default' => 0x01,
+    'size' => 'tiny',
+    'description' => 'The exportable status of the entity.',
+  ));
+
+  db_add_field('wysiwyg', 'module', array(
+    'description' => 'The name of the providing module if the entity has been defined in code.',
+    'type' => 'varchar',
+    'length' => 255,
+    'default' => '',
+    'not null' => FALSE,
+  ));
+}
Index: wysiwyg.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/wysiwyg/wysiwyg.module,v
retrieving revision 1.54
diff -u -p -r1.54 wysiwyg.module
--- wysiwyg.module	30 Jan 2011 04:06:47 -0000	1.54
+++ wysiwyg.module	1 Feb 2011 17:33:38 -0000
@@ -13,14 +13,19 @@ function wysiwyg_entity_info() {
   $types['wysiwyg_profile'] = array(
     'label' => t('Wysiwyg profile'),
     'base table' => 'wysiwyg',
-    'controller class' => 'WysiwygProfileController',
+    'controller class' => module_exists('entity') ? 'EntityAPIController' : 'WysiwygProfileController',
     'fieldable' => FALSE,
     // When loading all entities, DrupalDefaultEntityController::load() ignores
     // its static cache. Therefore, wysiwyg_profile_load_all() implements a
     // custom static cache.
     'static cache' => FALSE,
+    // Make exportable if the Entity API module is enabled.
+    'exportable' => TRUE,
+    'module' => 'wysiwyg',
     'entity keys' => array(
       'id' => 'format',
+      // Provides the label in e.g. features export.
+      'label' => 'format',
     ),
   );
   return $types;
