/**
  * Sets the export Latex properties
  *
  * @return void
  */
 protected function setProperties()
 {
     global $plugin_param;
     $hide_structure = false;
     if ($plugin_param['export_type'] == 'table' && !$plugin_param['single_table']) {
         $hide_structure = true;
     }
     $exportPluginProperties = new ExportPluginProperties();
     $exportPluginProperties->setText('LaTeX');
     $exportPluginProperties->setExtension('tex');
     $exportPluginProperties->setMimeType('application/x-tex');
     $exportPluginProperties->setOptionsText(__('Options'));
     // create the root group that will be the options field for
     // $exportPluginProperties
     // this will be shown as "Format specific options"
     $exportSpecificOptions = new OptionsPropertyRootGroup();
     $exportSpecificOptions->setName("Format Specific Options");
     // general options main group
     $generalOptions = new OptionsPropertyMainGroup();
     $generalOptions->setName("general_opts");
     // create primary items and add them to the group
     $leaf = new BoolPropertyItem();
     $leaf->setName("caption");
     $leaf->setText(__('Include table caption'));
     $generalOptions->addProperty($leaf);
     // add the main group to the root group
     $exportSpecificOptions->addProperty($generalOptions);
     // what to dump (structure/data/both) main group
     $dumpWhat = new OptionsPropertyMainGroup();
     $dumpWhat->setName("dump_what");
     $dumpWhat->setText(__('Dump table'));
     // create primary items and add them to the group
     $leaf = new RadioPropertyItem();
     $leaf->setName("structure_or_data");
     $leaf->setValues(array('structure' => __('structure'), 'data' => __('data'), 'structure_and_data' => __('structure and data')));
     $dumpWhat->addProperty($leaf);
     // add the main group to the root group
     $exportSpecificOptions->addProperty($dumpWhat);
     // structure options main group
     if (!$hide_structure) {
         $structureOptions = new OptionsPropertyMainGroup();
         $structureOptions->setName("structure");
         $structureOptions->setText(__('Object creation options'));
         $structureOptions->setForce('data');
         // create primary items and add them to the group
         $leaf = new TextPropertyItem();
         $leaf->setName("structure_caption");
         $leaf->setText(__('Table caption:'));
         $leaf->setDoc('faq6-27');
         $structureOptions->addProperty($leaf);
         $leaf = new TextPropertyItem();
         $leaf->setName("structure_continued_caption");
         $leaf->setText(__('Table caption (continued):'));
         $leaf->setDoc('faq6-27');
         $structureOptions->addProperty($leaf);
         $leaf = new TextPropertyItem();
         $leaf->setName("structure_label");
         $leaf->setText(__('Label key:'));
         $leaf->setDoc('faq6-27');
         $structureOptions->addProperty($leaf);
         if (!empty($GLOBALS['cfgRelation']['relation'])) {
             $leaf = new BoolPropertyItem();
             $leaf->setName("relation");
             $leaf->setText(__('Display foreign key relationships'));
             $structureOptions->addProperty($leaf);
         }
         $leaf = new BoolPropertyItem();
         $leaf->setName("comments");
         $leaf->setText(__('Display comments'));
         $structureOptions->addProperty($leaf);
         if (!empty($GLOBALS['cfgRelation']['mimework'])) {
             $leaf = new BoolPropertyItem();
             $leaf->setName("mime");
             $leaf->setText(__('Display MIME types'));
             $structureOptions->addProperty($leaf);
         }
         // add the main group to the root group
         $exportSpecificOptions->addProperty($structureOptions);
     }
     // data options main group
     $dataOptions = new OptionsPropertyMainGroup();
     $dataOptions->setName("data");
     $dataOptions->setText(__('Data dump options'));
     $dataOptions->setForce('structure');
     // create primary items and add them to the group
     $leaf = new BoolPropertyItem();
     $leaf->setName("columns");
     $leaf->setText(__('Put columns names in the first row:'));
     $dataOptions->addProperty($leaf);
     $leaf = new TextPropertyItem();
     $leaf->setName("data_caption");
     $leaf->setText(__('Table caption:'));
     $leaf->setDoc('faq6-27');
     $dataOptions->addProperty($leaf);
     $leaf = new TextPropertyItem();
     $leaf->setName("data_continued_caption");
     $leaf->setText(__('Table caption (continued):'));
     $leaf->setDoc('faq6-27');
     $dataOptions->addProperty($leaf);
     $leaf = new TextPropertyItem();
     $leaf->setName("data_label");
     $leaf->setText(__('Label key:'));
     $leaf->setDoc('faq6-27');
     $dataOptions->addProperty($leaf);
     $leaf = new TextPropertyItem();
     $leaf->setName('null');
     $leaf->setText(__('Replace NULL with:'));
     $dataOptions->addProperty($leaf);
     // add the main group to the root group
     $exportSpecificOptions->addProperty($dataOptions);
     // set the options for the export plugin property item
     $exportPluginProperties->setOptions($exportSpecificOptions);
     $this->properties = $exportPluginProperties;
 }