You are here

function chart_views_plugin_style_chart::options_form in Google Chart Tools: Image Charts 7

Same name and namespace in other branches
  1. 6 chart_views/includes/views/chart_views_plugin_style_chart.inc \chart_views_plugin_style_chart::options_form()

Provide a form to edit options for this plugin.

Overrides views_plugin_style::options_form

File

chart_views/views/chart_views_plugin_style_chart.inc, line 31
Contains the chart display plugin.

Class

chart_views_plugin_style_chart
The plugin that handles the chart style.

Code

function options_form(&$form, &$form_state) {
  parent::options_form($form, $form_state);
  $form['type'] = array(
    '#type' => 'radios',
    '#title' => t('Type'),
    '#description' => t('Chart type, see <a href="http://code.google.com/apis/chart/">Google Chart API documentation</a>.'),
    '#options' => chart_types(),
    '#required' => TRUE,
    '#default_value' => $this->options['type'],
  );
  $form['width'] = array(
    '#type' => 'textfield',
    '#title' => t('Width'),
    '#description' => t('Chart width in pixels'),
    '#size' => 8,
    '#required' => TRUE,
    '#default_value' => $this->options['width'],
  );
  $form['height'] = array(
    '#type' => 'textfield',
    '#title' => t('Height'),
    '#description' => t('Chart height in pixels'),
    '#size' => 8,
    '#required' => TRUE,
    '#default_value' => $this->options['height'],
  );
  $form['color_scheme'] = array(
    '#type' => 'select',
    '#title' => t('Color scheme'),
    '#description' => t('Color scheme, as defined by hook_chart_color_schemes().'),
    '#options' => drupal_map_assoc(array_keys(chart_color_schemes())),
    '#required' => TRUE,
    '#default_value' => $this->options['color_scheme'],
  );
  $form['label_append_value'] = array(
    '#type' => 'checkbox',
    '#title' => t('Append value to label'),
    '#description' => t('If checked, calculated values will be appended in the chart legend.'),
    '#default_value' => $this->options['label_append_value'],
  );
  $form['data_markers'] = array(
    '#type' => 'checkbox',
    '#title' => t('Append Data Value Markers to the Chart'),
    '#description' => t('If checked, calculated data value markers will be appended to specific points on the chart[Bar, Line, Radar, Scatter]'),
    '#default_value' => $this->options['data_markers'],
    '#id' => 'edit-data-value-markers',
  );
  $form['data_markers_number_type'] = array(
    '#type' => 'select',
    '#dependency' => array(
      'edit-data-value-markers' => array(
        1,
      ),
    ),
    '#title' => t('Select type of Data Marker'),
    '#default_value' => $this->options['data_markers_number_type'],
    '#options' => array(
      'f' => t('Floating point format'),
      'p' => t('Percentage format'),
      'e' => t('Scientific notation format'),
    ),
    '#description' => t('The number format, for numeric values.'),
  );
  $form['data_markers_decimal_places'] = array(
    '#type' => 'select',
    '#dependency' => array(
      'edit-data-value-markers' => array(
        1,
      ),
    ),
    '#title' => t('Select number of decimal places'),
    '#default_value' => $this->options['data_markers_decimal_places'],
    '#options' => array(
      '0' => t('0'),
      '1' => t('1'),
      '2' => t('2'),
    ),
    '#description' => t('An integer specifying how many decimal places to show'),
  );
  $form['data_markers_placement'] = array(
    '#type' => 'select',
    '#dependency' => array(
      'edit-data-value-markers' => array(
        1,
      ),
    ),
    '#title' => t('Select where the data markers should be placed'),
    '#default_value' => $this->options['data_markers_placement'],
    '#options' => array(
      'lb' => t('Left-Bottom'),
      'lv' => t('Left-Middle'),
      'lt' => t('Left-Top'),
      'hb' => t('Center-Bottom'),
      'hv' => t('Center-Middle'),
      'ht' => t('Center-Top'),
      'rb' => t('Right-Bottom'),
      'rv' => t('Right-Middle'),
      'rt' => t('Right-Top'),
      's' => t('Bar-Relative-Base'),
      'c' => t('Bar-Relative-Center'),
      'e' => t('Bar-Relative-Top'),
    ),
    '#description' => t('Additional placement details describing where to put this marker, in relation to the data point. Bar-Relative markers are applicable only for Bar charts'),
  );
}