Index: js/ckeditor-3.0.js
===================================================================
RCS file: /cvs/drupal/contributions/modules/wysiwyg/editors/js/ckeditor-3.0.js,v
retrieving revision 1.2.4.5
diff -u -r1.2.4.5 ckeditor-3.0.js
--- js/ckeditor-3.0.js	17 Nov 2009 15:31:33 -0000	1.2.4.5
+++ js/ckeditor-3.0.js	18 Mar 2010 20:42:10 -0000
@@ -24,7 +24,12 @@
         }
       }
     }
+    // register Font styles
+    var wysiwygSettings = Drupal.settings.wysiwyg.configs.ckeditor[format];
+    CKEDITOR.stylesSet.add(wysiwygSettings.customStylesName, wysiwygSettings.stylesCss);
   }
+  // 
+  
 };
 
 
@@ -110,7 +115,10 @@
       Drupal.wysiwyg.activeId = ev.editor.name;
     }
   };
-
+  
+  // Add the Font styles to this instance
+  if(settings.customStylesName)	CKEDITOR.config.stylesCombo_stylesSet = settings.customStylesName;
+    
   // Attach editor.
   CKEDITOR.replace(params.field, settings);
 };
Index: ckeditor.inc
===================================================================
RCS file: /cvs/drupal/contributions/modules/wysiwyg/editors/ckeditor.inc,v
retrieving revision 1.2.6.5
diff -u -r1.2.6.5 ckeditor.inc
--- ckeditor.inc	14 Feb 2010 00:03:28 -0000	1.2.6.5
+++ ckeditor.inc	18 Mar 2010 20:42:10 -0000
@@ -172,6 +172,12 @@
       }
       elseif ($config['css_setting'] == 'self' && isset($config['css_path'])) {
         $settings['contentsCss'] = explode(',', strtr($config['css_path'], array('%b' => base_path(), '%t' => path_to_theme())));
+        
+        // @todo also parse the css when no classes are defined 
+        if($config['css_classes']) {
+          $settings['customStylesName'] = "custom_styles";
+	       $settings['stylesCss'] = _wysiwyg_ckeditor_get_stylesCss($config['css_classes']);
+        }
       }
     }
   }
@@ -323,3 +329,27 @@
   return $plugins;
 }
 
+
+/**
+ * helper function to parse the css
+ */
+
+function _wysiwyg_ckeditor_get_stylesCss($css_classes) {
+  
+  $lines = explode("\n", $css_classes);
+  foreach ($lines as $line) {
+  	 $l = explode("=", $line);
+  	 $lc = explode(".", $l[1]);
+  	
+    $style['name'] = $l[0];
+    $style['element'] = $lc[0];
+    $style['attributes']['class'] = $lc[1];
+   
+    $css_styles[] = $style;
+  }
+  
+  return $css_styles;     	
+}
\ No newline at end of file
