Index: modules/cck/content.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/cck/content.module,v
retrieving revision 1.61
diff -u -r1.61 content.module
--- modules/cck/content.module	16 May 2006 19:48:38 -0000	1.61
+++ modules/cck/content.module	19 May 2006 01:17:12 -0000
@@ -841,13 +841,22 @@
         );
       }
 
-    $operators = module_invoke($module, 'field_settings', 'filter operators', $field);
-      if (is_array($operators) && count($operators)) {
+      $filters = module_invoke($module, 'field_settings', 'filters', $field);
+      if (is_array($filters) && count($filters)) {
         $table['filters'] = array();
-        $table['filters'][$main_column['column']] = array(
-          'name' => $field_types[$field['type']]['label'] .': '. $field['widget']['label'] .' ('. $field['field_name'] .')',
-          'operator' => $operators,
-        );
+        foreach ($filters as $key => $filter) {
+          if ($key == 'default') {
+            $name = $field_types[$field['type']]['label'] .': '. $field['widget']['label'] .' ('. $field['field_name'] .')';
+          }
+          else {
+            $name = $field_types[$field['type']]['label'] .': '. $field['widget']['label'] .' - '. $key .' ('. $field['field_name'] .')';
+          }
+          $init = array(
+            'name' => $name,
+            'field' => $main_column['column'],
+          );
+          $table['filters'][$main_column['column'] ."_". $key] = array_merge($filter, $init);
+        }
       }
 
       // We don't use $db_info['table'] for the key, since that may change during
Index: modules/cck/number.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/cck/number.module,v
retrieving revision 1.28
diff -u -r1.28 number.module
--- modules/cck/number.module	2 May 2006 13:52:16 -0000	1.28
+++ modules/cck/number.module	19 May 2006 01:18:17 -0000
@@ -77,15 +77,19 @@
         );
       }
 
-    case 'filter operators':
+    case 'filters':
       return array(
-        '=' => t('is equal to'),
-        '!=' => t('is not equal to'),
+        'default' => array(
+          'operator' => array(
+            '=' => t('is equal to'),
+            '!=' => t('is not equal to'),
 // TODO: views.module seems to break anything with > or < in it.
-//        '>' => t('is greater than'),
-//        '<' => t('is less than'),
-//        '>=' => t('is greater than or equal to'),
-//        '<=' => t('is less than or equal to'),
+//         '>' => t('is greater than'),
+//          '<' => t('is less than'),
+//          '>=' => t('is greater than or equal to'),
+//          '<=' => t('is less than or equal to'),
+          ),
+        ),
       );
   }
 }
Index: modules/cck/text.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/cck/text.module,v
retrieving revision 1.33
diff -u -r1.33 text.module
--- modules/cck/text.module	2 May 2006 13:52:16 -0000	1.33
+++ modules/cck/text.module	19 May 2006 01:18:26 -0000
@@ -75,11 +75,15 @@
       }
       return $columns;
 
-    case 'filter operators':
+    case 'filters':
       return array(
-        '=' => t('is equal to'),
-        '!=' => t('is not equal to'),
-        'LIKE' => t('matches the pattern'),
+        'default' => array(
+          'operator' => array(
+            '=' => t('is equal to'),
+            '!=' => t('is not equal to'),
+            'LIKE' => t('matches the pattern'),
+          ),
+        ),
       );
   }
 }
