Index: includes/form.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/form.inc,v
retrieving revision 1.368
diff -u -p -r1.368 form.inc
--- includes/form.inc	29 Aug 2009 16:30:14 -0000	1.368
+++ includes/form.inc	1 Sep 2009 14:45:15 -0000
@@ -2196,6 +2196,41 @@ function form_process_tableselect($eleme
 }
 
 /**
+ * Attaches the slider behavior to a checkbox or checkboxes form element.
+ *
+ * @param $element
+ *   An associative array containing the properties and children of the
+ *   checkbox element.
+ * @return
+ *   The processed element.
+ */
+function form_process_slider_checkbox($element) {
+  // Add the slider behavior
+  if ($element['#slider'] !== FALSE && !isset($js_added[$element['#id']])) {
+    $class = array('slider');
+
+    if ($element['#type'] == 'checkboxes') {
+      if (isset($element['#options']) && count($element['#options']) > 0) {
+        foreach (array_keys($element['#options']) as $key) {
+          if (isset($element[$key]['#attributes']['class'])) {
+            $element[$key]['#attributes']['class'][] = 'slider';
+          }
+          else {
+            $element[$key]['#attributes']['class'] = array('slider');
+          }
+        }
+      }
+    }
+    else {
+      _form_set_class($element, $class);
+    }
+    $element['#attached_js'] = array('misc/slider.js');
+  }
+  return $element;
+}
+
+
+/**
  * Adds fieldsets to the specified group or adds group members to this
  * fieldset.
  *
Index: modules/system/system.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.module,v
retrieving revision 1.783
diff -u -p -r1.783 system.module
--- modules/system/system.module	31 Aug 2009 17:06:10 -0000	1.783
+++ modules/system/system.module	1 Sep 2009 14:45:17 -0000
@@ -387,17 +387,19 @@ function system_elements() {
   $type['checkboxes'] = array(
     '#input' => TRUE,
     '#tree' => TRUE,
-    '#process' => array('form_process_checkboxes'),
+    '#process' => array('form_process_checkboxes', 'form_process_slider_checkbox'),
     '#theme_wrappers' => array('checkboxes'),
+    '#slider' => FALSE,
     '#pre_render' => array('form_pre_render_conditional_form_element'),
   );
 
   $type['checkbox'] = array(
     '#input' => TRUE,
     '#return_value' => 1,
-    '#process' => array('ajax_process_form'),
+    '#process' => array('ajax_process_form', 'form_process_slider_checkbox'),
     '#theme' => 'checkbox',
     '#theme_wrappers' => array('form_element'),
+    '#slider' => FALSE,
     '#form_element_skip_title' => TRUE,
   );
 
