? 710908-style_handler-41.patch
? 710908-style_plugin-47.patch
? 820982-behavior-ui-improvements-3.patch
? behavior-ui-improvements-01.patch
? includes/layer_types/vector.inc
? modules/openlayers_views/views/openlayers-views-data.tpl.php
Index: modules/openlayers_ui/openlayers_ui.css
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/openlayers/modules/openlayers_ui/Attic/openlayers_ui.css,v
retrieving revision 1.1.2.4
diff -u -p -r1.1.2.4 openlayers_ui.css
--- modules/openlayers_ui/openlayers_ui.css	18 May 2010 19:25:57 -0000	1.1.2.4
+++ modules/openlayers_ui/openlayers_ui.css	27 Jun 2010 22:46:23 -0000
@@ -88,3 +88,21 @@ div.openlayers-panel {
   }
 
   div.openlayers-panel-active { display:block; }
+  
+/**
+ * Behaviors table
+ */
+ /*
+.openlayers-form-behaviors-table .openlayers-form-behaviors-enable {
+  width: 15%;
+}
+.openlayers-form-behaviors-table .openlayers-form-behaviors-title {
+  width: 35%;
+}
+.openlayers-form-behaviors-table .openlayers-form-behaviors-options {
+  width: 50%;
+}
+*/
+div.openlayers-column-right .openlayers-form-behaviors-table .openlayers-form-behaviors-options input.form-text {
+  width: 200px;
+}
Index: modules/openlayers_ui/openlayers_ui.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/openlayers/modules/openlayers_ui/Attic/openlayers_ui.module,v
retrieving revision 1.1.2.37
diff -u -p -r1.1.2.37 openlayers_ui.module
--- modules/openlayers_ui/openlayers_ui.module	21 Jun 2010 20:29:36 -0000	1.1.2.37
+++ modules/openlayers_ui/openlayers_ui.module	27 Jun 2010 22:46:23 -0000
@@ -356,6 +356,10 @@ function openlayers_ui_theme($existing, 
       'arguments' => array('form' => array()),
       'file' => 'includes/openlayers_ui.theme.inc',
     ),
+    'openlayers_ui_presets_form_behaviors' => array(
+      'arguments' => array('form' => array()),
+      'file' => 'includes/openlayers_ui.theme.inc',
+    ),
   );
 }
 
Index: modules/openlayers_ui/includes/openlayers_ui.presets.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/openlayers/modules/openlayers_ui/includes/Attic/openlayers_ui.presets.inc,v
retrieving revision 1.1.2.23
diff -u -p -r1.1.2.23 openlayers_ui.presets.inc
--- modules/openlayers_ui/includes/openlayers_ui.presets.inc	7 Jun 2010 20:41:40 -0000	1.1.2.23
+++ modules/openlayers_ui/includes/openlayers_ui.presets.inc	27 Jun 2010 22:46:23 -0000
@@ -195,6 +195,7 @@ function openlayers_ui_presets_form(&$fo
   $form['behaviors'] = array(
     '#title' => t('Behaviors'),
     '#description' => t('Configure interactive map behaviors.'),
+    '#theme' => 'openlayers_ui_presets_form_behaviors',
     '#tree' => TRUE,
   );
   $form['behaviors'] = $form['behaviors'] + openlayers_ui_get_behavior_options('map', $defaults);
@@ -556,9 +557,8 @@ function openlayers_ui_presets_form_proc
         $processed['behaviors'] = array();
         foreach ($values['behaviors'] as $behavior => $settings) {
           if ($settings['enabled']) {
-            $processed['behaviors'][$behavior] = isset($settings['options']) ?
-              $settings['options'] :
-              array();
+            $processed['behaviors'][$behavior] = isset($settings['options_set']['options']) ?
+              $settings['options_set']['options'] : array();
           }
         }
         break;
@@ -613,26 +613,43 @@ function openlayers_ui_get_behavior_opti
       $behavior = new $class($options, $defaults);
 
       if (!isset($plugin['ui_visibility']) || $plugin['ui_visibility']) {
-
+        // Create basic form structure for behavior
         $form[$key] = array(
-          '#tree' => TRUE,
-          '#type' => 'fieldset',
-          '#title' => $plugin['title'],
-          '#description' => $plugin['description'],
           'enabled' => array(
             '#type' => 'checkbox',
-            '#title' => t('Enabled'),
+            '#title' => $plugin['title'],
+            '#description' => $plugin['description'],
             '#default_value' => isset($defaults['behaviors'][$key]),
+            '#id' => $key . '-enabled',
           ),
           'dependencies' => openlayers_dependency_widget(
-            $behavior->js_dependency())
+            $behavior->js_dependency()),
+          'options' => array(),
         );
 
-        $form[$key]['options'] = $behavior->options_form($options);
+        // Create options items
+        $options = $behavior->options_form($options);
+        if (!empty($options)) {
+          // HACK.  In order to use ctools form dependencies, we have to use a hidden
+          // field as it supports processing and IDs.
+          $form[$key]['options_set'][$key . '-prefix'] = array(
+            '#type' => 'hidden',
+            '#id' => $key . '-options',
+            '#prefix' => '<div><fieldset id="' . $key . '-options' .
+              '" class="collapsible">',
+            '#process' => array('ctools_dependent_process'),
+            '#dependency' => array($key . '-enabled' => array(1)),
+            '#weight' => -1000,
+          );
+          $form[$key]['options_set']['options'] = $options;
+          $form[$key]['options_set'][$key . '-suffix'] = array(
+            '#value' => '</fieldset></div>',
+            '#weight' => 1000,
+          );
+        }
       }
     }
   }
-
   return $form;
 }
 
Index: modules/openlayers_ui/includes/openlayers_ui.theme.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/openlayers/modules/openlayers_ui/includes/Attic/openlayers_ui.theme.inc,v
retrieving revision 1.1.2.8
diff -u -p -r1.1.2.8 openlayers_ui.theme.inc
--- modules/openlayers_ui/includes/openlayers_ui.theme.inc	22 Mar 2010 23:55:10 -0000	1.1.2.8
+++ modules/openlayers_ui/includes/openlayers_ui.theme.inc	27 Jun 2010 22:46:23 -0000
@@ -108,3 +108,21 @@ function theme_openlayers_ui_presets_for
   return $output;
 }
 
+/**
+ * Drupal theme implementation for Behaviors in the Preset form
+ */
+function theme_openlayers_ui_presets_form_behaviors($form) {
+  $output = '';
+  $rows = array();
+  foreach (element_children($form) as $key) {
+    $row = array();
+    $row[] = drupal_render($form[$key]['enabled']) . 
+      drupal_render($form[$key]['options_set']) . 
+      drupal_render($form[$key]['dependencies']);
+    $rows[] = $row;
+  }
+  
+  // Create table
+  $output .= theme('table', array(t('Behaviors')), $rows);
+  return $output;
+}
