27 #include "../../../dataaccess/dataset/DataSet.h" 
   28 #include "../../../dataaccess/dataset/DataSetType.h" 
   29 #include "../../../dataaccess/dataset/DataSetTypeConverter.h" 
   30 #include "../../../dataaccess/datasource/DataSource.h" 
   31 #include "../../../dataaccess/datasource/DataSourceTransactor.h" 
   32 #include "../../../dataaccess/datasource/DataSourceManager.h" 
   35 #include "ui_DataSetAdapterWidgetForm.h" 
   38 #include <QMessageBox> 
   43     m_ui(new Ui::DataSetAdapterWidgetForm),
 
   44     m_sourceDataSetType(0),
 
   52   m_ui->m_addToolButton->setIcon(QIcon::fromTheme(
"list-add"));
 
   53   m_ui->m_removeToolButton->setIcon(QIcon::fromTheme(
"list-remove"));
 
   54   m_ui->m_editToolButton->setIcon(QIcon::fromTheme(
"preferences-system"));
 
   55   m_ui->m_upToolButton->setIcon(QIcon::fromTheme(
"go-up"));
 
   56   m_ui->m_downToolButton->setIcon(QIcon::fromTheme(
"go-down"));
 
   64   connect(
m_ui->m_tableWidget, SIGNAL(cellClicked(
int, 
int)), 
this, SLOT(
onCellClicked(
int, 
int)));
 
   75   m_ui->m_addToolButton->setEnabled(
true);
 
   79   m_sourceDataSetType = sourceDataSetType;
 
   81   m_dataSetConverter = converter;
 
   88   return m_dataSetConverter;
 
   95   w.
set(m_targetDataSource->getId());
 
   96   w.
set(m_sourceDataSetType);
 
   98   if(w.exec() == QDialog::Accepted)
 
  100     w.
adapt(m_dataSetConverter);
 
  108   if(m_ui->m_tableWidget->currentRow() == -1)
 
  111   std::string propName = m_ui->m_tableWidget->item(m_ui->m_tableWidget->currentRow(), 1)->text().toStdString();
 
  113   m_dataSetConverter->remove(propName);
 
  115   m_ui->m_removeToolButton->setEnabled(
false);
 
  134   std::string propName = m_ui->m_tableWidget->item(row, 1)->text().toStdString();
 
  136   std::vector<std::string> nap;
 
  138   m_dataSetConverter->getNonConvertedProperties(nap);
 
  140   for(
size_t t = 0; t < nap.size(); ++t)
 
  142     if(nap[t] == propName)
 
  144       m_ui->m_removeToolButton->setEnabled(
false);
 
  149   m_ui->m_removeToolButton->setEnabled(
true);
 
  156    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::ARRAY_TYPE, tr(
"Array").toStdString()));
 
  157    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::BIT_TYPE, tr(
"Bit").toStdString()));
 
  158    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::BOOLEAN_TYPE, tr(
"Boolean").toStdString()));
 
  159    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::BYTE_ARRAY_TYPE, tr(
"Byte Array").toStdString()));
 
  160    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::CHAR_TYPE, tr(
"Char").toStdString()));
 
  161    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::COMPOSITE_TYPE, tr(
"Composite").toStdString()));
 
  162    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::DATASET_TYPE, tr(
"Data Set").toStdString()));
 
  163    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::DATETIME_TYPE, tr(
"Date and Time").toStdString()));
 
  164    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::DOUBLE_TYPE, tr(
"Double").toStdString()));
 
  165    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::FLOAT_TYPE, tr(
"Float").toStdString()));
 
  166    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::GEOMETRY_TYPE, tr(
"Geometry").toStdString()));
 
  167    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::INT16_TYPE, tr(
"Int 16").toStdString()));
 
  168    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::INT32_TYPE, tr(
"Int 32").toStdString()));
 
  169    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::INT64_TYPE, tr(
"Int 64").toStdString()));
 
  170    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::NUMERIC_TYPE, tr(
"Numeric").toStdString()));
 
  171    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::RASTER_TYPE, tr(
"Raster").toStdString()));
 
  172    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::STRING_TYPE, tr(
"String").toStdString()));
 
  173    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::UCHAR_TYPE, tr(
"U Char").toStdString()));
 
  174    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::UINT16_TYPE, tr(
"U Int 16").toStdString()));
 
  175    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::UINT32_TYPE, tr(
"U Int 32").toStdString()));
 
  176    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::UINT64_TYPE, tr(
"U Int 64").toStdString()));
 
  181   assert(m_dataSetConverter);
 
  185   m_ui->m_tableWidget->setRowCount(0);
 
  188   for(
size_t t = 0; t < dsType->
size(); ++t)
 
  192     int newrow = m_ui->m_tableWidget->rowCount();
 
  193     m_ui->m_tableWidget->insertRow(newrow);
 
  195     QTableWidgetItem* itemCheck = 
new QTableWidgetItem();
 
  196     itemCheck->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
 
  197     itemCheck->setIcon(QIcon::fromTheme(
"check"));
 
  198     m_ui->m_tableWidget->setItem(newrow, 0, itemCheck);
 
  200     QTableWidgetItem* itemName = 
new QTableWidgetItem(QString::fromStdString(propName));
 
  201     itemName->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
 
  202     m_ui->m_tableWidget->setItem(newrow, 1, itemName);
 
  204     QTableWidgetItem* itemType = 
new QTableWidgetItem(m_typeMap[dsType->
getProperty(t)->
getType()].c_str());
 
  205     itemType->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
 
  206     m_ui->m_tableWidget->setItem(newrow, 2, itemType);
 
  210   std::vector<std::string> nonAdaptedProperties;
 
  211   m_dataSetConverter->getNonConvertedProperties(nonAdaptedProperties);
 
  213   for(std::size_t i = 0; i < nonAdaptedProperties.size(); ++i)
 
  215     int newrow = m_ui->m_tableWidget->rowCount();
 
  216     m_ui->m_tableWidget->insertRow(newrow);
 
  218     QTableWidgetItem* itemCheck = 
new QTableWidgetItem();
 
  219     itemCheck->setFlags(Qt::ItemIsEnabled);
 
  220     itemCheck->setIcon(QIcon::fromTheme(
"delete"));
 
  221     m_ui->m_tableWidget->setItem(newrow, 0, itemCheck);
 
  223     QTableWidgetItem* itemName = 
new QTableWidgetItem(QString::fromStdString(nonAdaptedProperties[i]));
 
  224     itemName->setFlags(Qt::ItemIsEnabled);
 
  225     m_ui->m_tableWidget->setItem(newrow, 1, itemName);
 
Property * getProperty(std::size_t i) const 
It returns the i-th property. 
 
A class that models the description of a dataset. 
 
An converter for DataSetType. 
 
static DataSourceManager & getInstance()
It returns a reference to the singleton instance. 
 
std::size_t size() const 
It returns the number of properties of the CompositeProperty. 
 
int getType() const 
It returns the property data type. 
 
A class used to define the PropertyConverterDialog class. 
 
boost::shared_ptr< DataSourceInfo > DataSourceInfoPtr
 
const std::string & getName() const 
It returns the property name.