? operations-columns.patch
Index: simpleviews.css
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/simpleviews/simpleviews.css,v
retrieving revision 1.1
diff -u -p -r1.1 simpleviews.css
--- simpleviews.css	25 Sep 2008 22:08:09 -0000	1.1
+++ simpleviews.css	14 Jul 2010 10:06:09 -0000
@@ -26,3 +26,7 @@
 #simpleviews-elements div.form-item select, #simpleviews-form div.form-item input  {
   width: 18em;
 }
+
+#simpleviews-overview-form table .operations {
+  width: 20%;
+}
\ No newline at end of file
Index: simpleviews.pages.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/simpleviews/simpleviews.pages.inc,v
retrieving revision 1.1.2.3
diff -u -p -r1.1.2.3 simpleviews.pages.inc
--- simpleviews.pages.inc	17 Sep 2009 22:05:11 -0000	1.1.2.3
+++ simpleviews.pages.inc	14 Jul 2010 10:06:09 -0000
@@ -49,21 +49,15 @@ function _simpleviews_overview_item_fiel
     '#value' => l($item['path'], $item['path']),
   );
 
-  $path = drupal_get_path('module', 'simpleviews') . '/images/';
-  $links[] = array(
-    'title' => theme('image', $path . 'text-editor.png', t('Edit'), t('Edit')),
-    'href' => 'admin/build/simpleviews/' . $item['svid'] . '/edit',
-    'html' => TRUE,
-  );
-  $links[] = array(
-    'title' => theme('image', $path . 'edit-delete.png', t('Delete'), t('Delete')),
-    'href' => 'admin/build/simpleviews/' . $item['svid'] . '/delete',
-    'html' => TRUE,
-  );
-
-  $form['operations'] = array(
-    '#type' => 'markup',
-    '#value' => theme('links', $links),
+  $form['operations'] array(
+    'edit' => array(
+      '#type' => 'markup',
+      '#value' => l(t('edit'), 'admin/build/simpleviews/' . $item['svid'] . '/edit'),
+    ),
+    'delete' => array(
+      '#type' => 'markup',
+      '#value' => l(t('delete'), 'admin/build/simpleviews/' . $item['svid'] . '/delete'),
+     ),
   );
 
   return $form;
@@ -79,7 +73,10 @@ function _simpleviews_overview_item_fiel
  * @see simpleviews_overview_form()
  */
 function theme_simpleviews_overview_form($form) {
+  drupal_add_css(drupal_get_path('module', 'simpleviews') . '/simpleviews.css');
+
   $rows = array();
+  $column_count = 0;
   foreach (element_children($form['items']) as $key) {
     $row = array();
 
@@ -87,21 +84,25 @@ function theme_simpleviews_overview_form
     // same column of the row.
     $row[] = drupal_render($form['items'][$key]['svid']) . drupal_render($form['items'][$key]['title']);
     $row[] = drupal_render($form['items'][$key]['path']);
-    $row[] = drupal_render($form['items'][$key]['operations']);
+    foreach ($form['items'][$key]['operations'] as $operation) {
+      $row[] = drupal_render($operation);
+    }
     $rows[] = $row;
+    $column_count = max($column_count, count($row));
   }
 
   // If there were no items found, note the fact so users don't get confused
   // by a completely empty table.
   if (count($rows) == 0) {
     $rows[] = array(array('data' => t('No items have been added.'), 'colspan' => 3));
+    $column_count = 3;
   }
 
   // Render a list of header titles, and our array of rows, into a table. Even
   // we've already rendered all of our items, we always call drupal_render()
   // on the form itself after we're done, so hidden security fields and other
   // elements (like buttons) will appear properly at the bottom of the form.
-  $header = array(t('Title'), t('Path'), t('Operations'));
+  $header = array(t('Title'), t('Path'), array('data' => t('Operations'), 'colspan' => $column_count - 2, 'class' => 'operations'));
   $output = theme('table', $header, $rows);
   $output .= drupal_render($form);
 
Index: images/edit-delete.png
===================================================================
RCS file: images/edit-delete.png
diff -N images/edit-delete.png
Binary files /tmp/cvsIinxZt and /dev/null differ
Index: images/text-editor.png
===================================================================
RCS file: images/text-editor.png
diff -N images/text-editor.png
Binary files /tmp/cvspVb8Ki and /dev/null differ
