27 #include "../../../../common/Translator.h"
28 #include "../../../../dataaccess/Enums.h"
29 #include "../../../../dataaccess/dataset/DataSetType.h"
30 #include "../../../../dataaccess/datasource/DataSource.h"
31 #include "../../../../dataaccess/datasource/DataSourceCatalog.h"
32 #include "../../../../dataaccess/utils/Utils.h"
33 #include "../../datasource/explorer/DataSetGroupItem.h"
34 #include "../../Exception.h"
50 m_geomPropertyName(geomPropertyName),
54 if(ds == 0 && dt->getCatalog())
69 if(role == Qt::DecorationRole)
72 return QVariant(QIcon::fromTheme(
"dataset-geotable"));
74 return QVariant(QIcon::fromTheme(
"dataset-table"));
76 return QVariant(QIcon::fromTheme(
"dataset-geoview"));
78 return QVariant(QIcon::fromTheme(
"dataset-view"));
80 return QVariant(QIcon::fromTheme(
"dataset-geofile"));
82 return QVariant(QIcon::fromTheme(
"dataset-file"));
84 return QVariant(QIcon::fromTheme(
"dataset"));
87 if(role == Qt::DisplayRole)
89 if(!m_dataset->getTitle().empty())
90 return QVariant((m_dataset->getTitle() +
" (" + m_geomPropertyName+
")").c_str());
92 return QVariant((m_dataset->getName() +
" (" + m_geomPropertyName+
")").c_str());
95 if(role == Qt::CheckStateRole)
96 return QVariant(m_checked ? Qt::Checked : Qt::Unchecked);
103 QMenu* m =
new QMenu(parent);
105 QAction* aOpenDataSet = m->addAction(tr(
"&Open dataset"));
107 connect(aOpenDataSet, SIGNAL(triggered()),
this, SLOT(openDataSet()));
114 if(!children().empty())
117 return hasChildren();
122 return Qt::ItemIsUserCheckable;
127 if(m_dataset.get() == 0)
133 if(m_dataset->size() != 0)
136 if((!m_dataset->getNumberOfCheckConstraints() != 0) ||
137 (!m_dataset->getNumberOfUniqueKeys() != 0) ||
138 (!m_dataset->getPrimaryKey() != 0))
141 if(m_dataset->getNumberOfIndexes() != 0)
147 if(m_dataset.get() == 0)
150 if(m_dataset->size() != 0)
153 if(m_datasource == 0)
161 if(role == Qt::CheckStateRole)
163 m_checked = value.toBool();
182 return m_geomPropertyName;
boost::shared_ptr< DataSetType > DataSetTypePtr
An abstract class for data providers like a DBMS, Web Services or a regular file. ...
A class used to group a set of indexes from a dataset in a TreeModel.
A class used to group the set of constraints of a dataset in a TreeModel.