<?php
/**
 * @file content_menu_special_item.module
 *
 *
 */

/**
 * Menu add item operation handler for a new nolink item.
 */
function content_menu_menu_form_handler_nolink($form, $form_state, $item) {
  drupal_set_message(t('A new menu item has been created.'));
  $item['link_path'] = '<nolink>';
  content_menu_link_save($item);
}

/**
 * Menu add item operation handler for a new separator menu item.
 */
function content_menu_menu_form_handler_separator($form, $form_state, $item) {
  drupal_set_message(t('A new menu item has been created.'));
  $item['link_path'] = '<separator>';
  content_menu_link_save($item);
}

/**
 *  implements hook_menu_item_target_types_alter();
 */
function content_menu_special_item_menu_item_target_types_alter(&$target_types, &$context) {
  $target_types['nolink'] = array(
    'label' => t('No Link'),
    'handler' => 'content_menu_menu_form_handler_nolink',
    'clean_menu_save_message' => TRUE
  );
    $target_types['separator'] = array(
    'label' => t('Separator'),
    'handler' => 'content_menu_menu_form_handler_separator',
    'clean_menu_save_message' => TRUE
  );

}