27 #include "../../../common/STLUtils.h" 
   28 #include "../../../se/Symbolizer.h" 
   36 #include "ui_SymbolEditorWidgetForm.h" 
   39 #include <QStackedWidget> 
   46     m_ui(new Ui::SymbolEditorWidgetForm),
 
   56   QGridLayout* previewLayout = 
new QGridLayout(
m_ui->m_previewGroupBox);
 
   61   m_symbolTable->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding);
 
   64   QGridLayout* symbolTableLayout = 
new QGridLayout(
m_ui->m_symbolTableFrame);
 
   65   symbolTableLayout->setContentsMargins(0, 0, 0, 0);
 
   72   QGridLayout* stackedLayout = 
new QGridLayout(
m_ui->m_propertiesGroupBox);
 
   93   createNewSymbolizer();
 
   96   m_ui->m_addToolButton->setIcon(QIcon::fromTheme(
"list-add"));
 
   97   m_ui->m_removeToolButton->setIcon(QIcon::fromTheme(
"list-remove"));
 
   98   m_ui->m_upToolButton->setIcon(QIcon::fromTheme(
"go-up"));
 
   99   m_ui->m_downToolButton->setIcon(QIcon::fromTheme(
"go-down"));
 
  104   m_preview->updatePreview(m_symbol);
 
  105   m_symbolTable->updatePreview(m_symbol);
 
  110   QWidget* symbolizerWidget = 0;
 
  117       symbolizerWidget = pts;
 
  125       symbolizerWidget = ls;
 
  133       symbolizerWidget = ps;
 
  138   m_symbolizersStackedWidget->addWidget(symbolizerWidget);
 
  140   connect(symbolizerWidget, SIGNAL(symbolizerChanged()), SLOT(onSymbolizerChanged()));
 
  142   m_symbolizersStackedWidget->setCurrentIndex(m_symbolizersStackedWidget->count() - 1);
 
  148   m_symbolTable->selectSymbolizer(m_symbol->getSymbolizersCount() - 1);
 
  154   m_symbol->swapSymbolizers(indexFirst, indexSecond);
 
  157   QWidget* firstWidget = m_symbolizersStackedWidget->widget(indexFirst);
 
  158   QWidget* secondWidget = m_symbolizersStackedWidget->widget(indexSecond);
 
  159   m_symbolizersStackedWidget->insertWidget(indexFirst, secondWidget);
 
  160   m_symbolizersStackedWidget->insertWidget(indexSecond, firstWidget);
 
  165   createNewSymbolizer();
 
  170   if(m_symbol->getSymbolizersCount() == 1) 
 
  173   QWidget* w = m_symbolizersStackedWidget->currentWidget();
 
  175   int index  = m_symbolizersStackedWidget->indexOf(w);
 
  176   assert(index >= 0 && index < static_cast<int>(m_symbol->getSymbolizersCount()));
 
  179   m_symbol->removeSymbolizer(index);
 
  182   m_symbolizersStackedWidget->removeWidget(w);
 
  188   m_symbolTable->selectSymbolizer(index - 1);
 
  193   int index  = m_symbolizersStackedWidget->currentIndex();
 
  194   assert(index >= 0 && index < static_cast<int>(m_symbol->getSymbolizersCount()));
 
  200   swapSymbolizers(index, index - 1);
 
  205   m_symbolTable->selectSymbolizer(index - 1);
 
  210   int index  = m_symbolizersStackedWidget->currentIndex();
 
  211   assert(index >= 0 && index < static_cast<int>(m_symbol->getSymbolizersCount()));
 
  213   if(index == m_symbol->getSymbolizersCount() - 1) 
 
  217   swapSymbolizers(index, index + 1);
 
  222   m_symbolTable->selectSymbolizer(index + 1);
 
  238   int index = m_symbolizersStackedWidget->currentIndex();
 
  239   assert(index >= 0 && index < static_cast<int>(m_symbol->getSymbolizersCount()));
 
  241   QWidget* w = m_symbolizersStackedWidget->currentWidget();
 
  245       m_symbol->setSymbolizer(index, static_cast<PointSymbolizerWidget*>(w)->getSymbolizer());
 
  249       m_symbol->setSymbolizer(index, static_cast<LineSymbolizerWidget*>(w)->getSymbolizer());
 
  253       m_symbol->setSymbolizer(index, static_cast<PolygonSymbolizerWidget*>(w)->getSymbolizer());
 
Enumeration that indicates the symbol type. 
 
This class represents a symbol.