? .cache
? .settings
Index: modules/field_ui/field_ui.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/field_ui/field_ui.admin.inc,v
retrieving revision 1.36
diff -u -p -r1.36 field_ui.admin.inc
--- modules/field_ui/field_ui.admin.inc	13 Jan 2010 05:43:01 -0000	1.36
+++ modules/field_ui/field_ui.admin.inc	20 Jan 2010 20:39:57 -0000
@@ -807,9 +807,9 @@ function field_ui_existing_field_options
 /**
  * Menu callback; presents the field settings edit page.
  */
-function field_ui_field_settings_form($form, &$form_state, $obj_type, $bundle, $instance) {
+function field_ui_field_settings_form($form, &$form_state, $obj_type, $bundle, $field) {
   $bundle = field_extract_bundle($obj_type, $bundle);
-  $field = field_info_field($instance['field_name']);
+  $instance = field_info_instance($obj_type, $field['field_name'], $bundle);
 
   // When a field is first created, we have to get data from the db.
   if (!isset($instance['label'])) {
@@ -895,9 +895,11 @@ function field_ui_field_settings_form_su
 /**
  * Menu callback; select a widget for the field.
  */
-function field_ui_widget_type_form($form, &$form_state, $obj_type, $bundle, $instance) {
+function field_ui_widget_type_form($form, &$form_state, $obj_type, $bundle, $field) {
   $bundle = field_extract_bundle($obj_type, $bundle);
-  $field = field_read_field($instance['field_name']);
+  $instance = field_info_instance($obj_type, $field['field_name'], $bundle);
+
+  drupal_set_title($instance['label']);
 
   $field_type = field_info_field_types($field['type']);
   $widget_type = field_info_widget_types($instance['widget']['type']);
@@ -955,9 +957,9 @@ function field_ui_widget_type_form_submi
 /**
  * Menu callback; present a form for removing a field from a content type.
  */
-function field_ui_field_delete_form($form, &$form_state, $obj_type, $bundle, $instance) {
+function field_ui_field_delete_form($form, &$form_state, $obj_type, $bundle, $field) {
   $bundle = field_extract_bundle($obj_type, $bundle);
-  $field = field_info_field($instance['field_name']);
+  $instance = field_info_instance($obj_type, $field['field_name'], $bundle);
   $admin_path = _field_ui_bundle_admin_path($obj_type, $bundle);
 
   $form['object_type'] = array('#type' => 'value', '#value' => $obj_type);
@@ -1012,10 +1014,10 @@ function field_ui_field_delete_form_subm
 /**
  * Menu callback; presents the field instance edit page.
  */
-function field_ui_field_edit_form($form, &$form_state, $obj_type, $bundle, $instance) {
+function field_ui_field_edit_form($form, &$form_state, $obj_type, $bundle, $field) {
   $bundle = field_extract_bundle($obj_type, $bundle);
+  $instance = field_info_instance($obj_type, $field['field_name'], $bundle);
 
-  $field = field_info_field($instance['field_name']);
   $form['#field'] = $field;
 
   if (!empty($field['locked'])) {
Index: modules/field_ui/field_ui.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/field_ui/field_ui.module,v
retrieving revision 1.22
diff -u -p -r1.22 field_ui.module
--- modules/field_ui/field_ui.module	3 Jan 2010 21:01:04 -0000	1.22
+++ modules/field_ui/field_ui.module	20 Jan 2010 20:40:39 -0000
@@ -56,7 +56,7 @@ function field_ui_menu() {
           $path = $bundle_info['admin']['path'];
           $bundle_arg = isset($bundle_info['admin']['bundle argument']) ? $bundle_info['admin']['bundle argument'] : $bundle_name;
           $access = array_intersect_key($bundle_info['admin'], drupal_map_assoc(array('access callback', 'access arguments')));
-          $instance_position = count(explode('/', $path)) + 1;
+          $field_position = count(explode('/', $path)) + 1;
 
           $items["$path/fields"] = array(
             'title' => 'Manage fields',
@@ -67,43 +67,32 @@ function field_ui_menu() {
             'file' => 'field_ui.admin.inc',
           ) + $access;
           $items["$path/fields/%field_ui_menu"] = array(
-            'title callback' => 'field_ui_menu_label',
-            'title arguments' => array($instance_position),
-            'load arguments' => array($obj_type, $bundle_arg),
             'page callback' => 'drupal_get_form',
-            'page arguments' => array('field_ui_field_edit_form', $obj_type, $bundle_arg, $instance_position),
+            'page arguments' => array('field_ui_field_edit_form', $obj_type, $bundle_arg, $field_position),
             'type' => MENU_LOCAL_TASK,
             'file' => 'field_ui.admin.inc',
           ) + $access;
           $items["$path/fields/%field_ui_menu/edit"] = array(
-            'title' => 'Edit instance settings',
-            'load arguments' => array($obj_type, $bundle_arg),
             'page callback' => 'drupal_get_form',
-            'page arguments' => array('field_ui_field_edit_form', $obj_type, $bundle_arg, $instance_position),
+            'page arguments' => array('field_ui_field_edit_form', $obj_type, $bundle_arg, $field_position),
             'type' => MENU_DEFAULT_LOCAL_TASK,
             'file' => 'field_ui.admin.inc',
           ) + $access;
           $items["$path/fields/%field_ui_menu/field-settings"] = array(
-            'title' => 'Edit field settings',
-            'load arguments' => array($obj_type, $bundle_arg),
             'page callback' => 'drupal_get_form',
-            'page arguments' => array('field_ui_field_settings_form', $obj_type, $bundle_arg, $instance_position),
+            'page arguments' => array('field_ui_field_settings_form', $obj_type, $bundle_arg, $field_position),
             'type' => MENU_LOCAL_TASK,
             'file' => 'field_ui.admin.inc',
           ) + $access;
           $items["$path/fields/%field_ui_menu/widget-type"] = array(
-            'title' => 'Change widget type',
-            'load arguments' => array($obj_type, $bundle_arg),
             'page callback' => 'drupal_get_form',
-            'page arguments' => array('field_ui_widget_type_form', $obj_type, $bundle_arg, $instance_position),
+            'page arguments' => array('field_ui_widget_type_form', $obj_type, $bundle_arg, $field_position),
             'type' => MENU_LOCAL_TASK,
             'file' => 'field_ui.admin.inc',
           ) + $access;
           $items["$path/fields/%field_ui_menu/delete"] = array(
-            'title' => 'Delete instance',
-            'load arguments' => array($obj_type, $bundle_arg),
             'page callback' => 'drupal_get_form',
-            'page arguments' => array('field_ui_field_delete_form', $obj_type, $bundle_arg, $instance_position),
+            'page arguments' => array('field_ui_field_delete_form', $obj_type, $bundle_arg, $field_position),
             'type' => MENU_LOCAL_TASK,
             'file' => 'field_ui.admin.inc',
           ) + $access;
@@ -135,24 +124,16 @@ function field_ui_menu() {
 }
 
 /**
- * Menu loader; Load a field instance based on its name.
+ * Menu loader; Load a field based on its name.
  */
-function field_ui_menu_load($field_name, $obj_type, $bundle_name) {
-  $bundle_name = strtr($bundle_name, array('-' => '_'));
-  if ($instance = field_info_instance($obj_type, $field_name, $bundle_name)) {
-    return $instance;
+function field_ui_menu_load($field_name) {
+  if ($field = field_info_field($field_name)) {
+    return $field;
   }
   return FALSE;
 }
 
 /**
- * Menu title callback; Return a field label based on its instance.
- */
-function field_ui_menu_label($instance) {
-  return t($instance['label']);
-}
-
-/**
  * Implements hook_theme().
  */
 function field_ui_theme() {
