From e998857eb8a5ef4d2ebe381a57c19b1b355fe4ef Mon Sep 17 00:00:00 2001 From: Angie Byron Date: Wed, 19 Aug 2009 13:31:14 +0000 Subject: #516138 by yched, KarenS, quicksketch, bangpound, et al.: CC-FREAKING-K IN CORE! OH YEAH! :D --- modules/field_ui/field_ui.api.php | 135 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 modules/field_ui/field_ui.api.php (limited to 'modules/field_ui/field_ui.api.php') diff --git a/modules/field_ui/field_ui.api.php b/modules/field_ui/field_ui.api.php new file mode 100644 index 000000000..4c53faa39 --- /dev/null +++ b/modules/field_ui/field_ui.api.php @@ -0,0 +1,135 @@ + 'textfield', + '#title' => t('Maximum length'), + '#default_value' => $settings['max_length'], + '#required' => FALSE, + '#element_validate' => array('_element_validate_integer_positive'), + '#description' => t('The maximum length of the field in characters. Leave blank for an unlimited size.'), + ); + return $form; +} + +/** + * Instance settings form. + * + * @param $field + * The field structure being configured. + * @param $instance + * The instance structure being configured. + * @return + * The form definition for the field instance settings. + */ +function hook_field_instance_settings_form($field, $instance) { + $settings = $instance['settings']; + + $form['text_processing'] = array( + '#type' => 'radios', + '#title' => t('Text processing'), + '#default_value' => $settings['text_processing'], + '#options' => array( + t('Plain text'), + t('Filtered text (user selects input format)'), + ), + ); + if ($field['type'] == 'text_with_summary') { + $form['display_summary'] = array( + '#type' => 'select', + '#title' => t('Display summary'), + '#options' => array( + t('No'), + t('Yes'), + ), + '#description' => t('Display the summary to allow the user to input a summary value. Hide the summary to automatically fill it with a trimmed portion from the main post. '), + '#default_value' => !empty($settings['display_summary']) ? $settings['display_summary'] : 0, + ); + } + + return $form; +} + +/** + * Widget settings form. + * + * @param $field + * The field structure being configured. + * @param $instance + * The instance structure being configured. + * @return + * The form definition for the widget settings. + */ +function hook_field_widget_settings_form($field, $instance) { + $widget = $instance['widget']; + $settings = $widget['settings']; + $form = array(); + + if ($widget['type'] == 'text_textfield') { + $form['size'] = array( + '#type' => 'textfield', + '#title' => t('Size of textfield'), + '#default_value' => $settings['size'], + '#element_validate' => array('_element_validate_integer_positive'), + '#required' => TRUE, + ); + } + else { + $form['rows'] = array( + '#type' => 'textfield', + '#title' => t('Rows'), + '#default_value' => $settings['rows'], + '#element_validate' => array('_element_validate_integer_positive'), + '#required' => TRUE, + ); + } + + return $form; +} + +/** + * Formatter settings form. + * + * @todo Not implemented yet. The signature below is only prospective, but + * providing $instance is not enough, since one $instance holds several display + * settings. + * + * @param $formatter + * The type of the formatter being configured. + * @param $settings + * The current values of the formatter settings. + * @param $field + * The field structure being configured. + * @param $instance + * The instance structure being configured. + * @return + * The form definition for the formatter settings. + */ +function hook_field_formatter_settings_form($formatter, $settings, $field, $instance) { +} + +/** + * @} End of "ingroup field_ui_field_type" + */ -- cgit v1.2.3