27 #include "../../../dataaccess/dataset/AttributeConverterManager.h" 
   28 #include "../../../dataaccess/dataset/DataSetAdapter.h" 
   29 #include "../../../dataaccess/dataset/DataSetType.h" 
   30 #include "../../../dataaccess/dataset/DataSetTypeConverter.h" 
   31 #include "../../../dataaccess/datasource/DataSource.h" 
   32 #include "../../../dataaccess/datasource/DataSourceCatalog.h" 
   35 #include "ui_NewPropertyWidgetForm.h" 
   36 #include "ui_PropertyConverterDialogForm.h" 
   39 #include <QMessageBox> 
   40 #include <QGridLayout> 
   45     m_ui(new Ui::PropertyConverterDialogForm),
 
   56   QGridLayout* layout = 
new QGridLayout(
m_ui->m_widget);
 
   64   std::vector<std::string> converters;
 
   67   for(std::size_t t = 0; t < converters.size(); ++t)
 
   69     m_ui->m_comboBox->addItem(converters[t].c_str());
 
   72   m_ui->m_helpPushButton->setPageReference(
"widgets/property/property_converter.html");
 
   87   for(
size_t t = 0; t < m_dsType->size(); ++t)
 
   91     int newrow = m_ui->m_tableWidget->rowCount();
 
   92     m_ui->m_tableWidget->insertRow(newrow);
 
   94     QTableWidgetItem* itemCheck = 
new QTableWidgetItem();
 
   95     itemCheck->setFlags(Qt::ItemIsUserCheckable|Qt::ItemIsEnabled);
 
   96     itemCheck->setCheckState(Qt::Unchecked);
 
   97     m_ui->m_tableWidget->setItem(newrow, 0, itemCheck);
 
   99     QTableWidgetItem* itemName = 
new QTableWidgetItem(QString::fromStdString(propName));
 
  100     itemName->setFlags(Qt::ItemIsEnabled);
 
  101     m_ui->m_tableWidget->setItem(newrow, 1, itemName);
 
  103     QTableWidgetItem* itemType = 
new QTableWidgetItem(m_typeMap[m_dsType->getProperty(t)->getType()].c_str());
 
  104     itemType->setFlags(Qt::ItemIsEnabled);
 
  105     m_ui->m_tableWidget->setItem(newrow, 2, itemType);
 
  108   m_ui->m_tableWidget->resizeColumnsToContents();
 
  113   m_propWidget->setDataSourceId(dataSourceId);
 
  119   std::vector<std::string> names;
 
  120   std::string converterName = m_ui->m_comboBox->currentText().toStdString();
 
  123   int row = m_ui->m_tableWidget->rowCount();
 
  125   for(
int i = 0; i < row; ++i)
 
  127     QTableWidgetItem* item = m_ui->m_tableWidget->item(i, 0);
 
  129     if(item && item->checkState() == Qt::Checked)
 
  131       names.push_back(m_ui->m_tableWidget->item(i, 1)->text().toStdString());
 
  141   if(m_propWidget->buildProperty() == 
false)
 
  153    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::ARRAY_TYPE, tr(
"Array").toStdString()));
 
  154    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::BIT_TYPE, tr(
"Bit").toStdString()));
 
  155    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::BOOLEAN_TYPE, tr(
"Boolean").toStdString()));
 
  156    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::BYTE_ARRAY_TYPE, tr(
"Byte Array").toStdString()));
 
  157    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::CHAR_TYPE, tr(
"Char").toStdString()));
 
  158    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::COMPOSITE_TYPE, tr(
"Composite").toStdString()));
 
  159    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::DATASET_TYPE, tr(
"Data Set").toStdString()));
 
  160    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::DATETIME_TYPE, tr(
"Date and Time").toStdString()));
 
  161    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::DOUBLE_TYPE, tr(
"Double").toStdString()));
 
  162    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::FLOAT_TYPE, tr(
"Float").toStdString()));
 
  163    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::GEOMETRY_TYPE, tr(
"Geometry").toStdString()));
 
  164    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::INT16_TYPE, tr(
"Int 16").toStdString()));
 
  165    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::INT32_TYPE, tr(
"Int 32").toStdString()));
 
  166    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::INT64_TYPE, tr(
"Int 64").toStdString()));
 
  167    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::NUMERIC_TYPE, tr(
"Numeric").toStdString()));
 
  168    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::RASTER_TYPE, tr(
"Raster").toStdString()));
 
  169    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::STRING_TYPE, tr(
"String").toStdString()));
 
  170    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::UCHAR_TYPE, tr(
"U Char").toStdString()));
 
  171    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::UINT16_TYPE, tr(
"U Int 16").toStdString()));
 
  172    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::UINT32_TYPE, tr(
"U Int 32").toStdString()));
 
  173    m_typeMap.insert(std::map<int, std::string>::value_type(
te::dt::UINT64_TYPE, tr(
"U Int 64").toStdString()));
 
Property * getProperty(std::size_t i) const 
It returns the i-th property. 
 
An atomic property like an integer or double. 
 
A class that models the description of a dataset. 
 
It models a property definition. 
 
An converter for DataSetType. 
 
static AttributeConverterManager & getInstance()
It returns a reference to the singleton instance. 
 
void add(const std::string &propertyName, te::dt::Property *p, const std::string &attributeConverterName="GenericAttributeConverter")
It adds a conversions to the given property of the input data set type. 
 
A class used to define the PropertyConverterDialog class. 
 
const std::string & getName() const 
It returns the property name.