All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
TimeSeriesPropertiesWidget.cpp
Go to the documentation of this file.
1 /* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2 
3  This file is part of the TerraLib - a Framework for building GIS enabled applications.
4 
5  TerraLib is free software: you can redistribute it and/or modify
6  it under the terms of the GNU Lesser General Public License as published by
7  the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  TerraLib is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public License
16  along with TerraLib. See COPYING. If not, write to
17  TerraLib Team at <terralib-team@terralib.org>.
18  */
19 
20 /*!
21  \file terralib/qt/widgets/st/TimePropertiesWidget.cpp
22 
23  \brief A widget used to adjust a TimeSeries layer's properties
24 */
25 
26 //Terralib
27 #include "../../../dataaccess.h"
28 #include "../../../datatype/Property.h"
30 #include "ui_TimeSeriesPropertiesWidgetForm.h"
31 
32 //QT
33 #include <QWidget>
34 
36 : QWidget(parent, f),
37  m_ui(new Ui::TimeSeriesPropertiesWidgetForm)
38 {
39  m_ui->setupUi(this);
40  QString item;
41 }
42 
44 {
45 }
46 
47 Ui::TimeSeriesPropertiesWidgetForm* te::qt::widgets::TimeSeriesPropertiesWidget::getForm()
48 {
49  return m_ui.get();
50 }
51 
53 {
54  return m_ui->m_idComboBox->currentText().toStdString();
55 }
56 
58 {
59  if(m_dataType)
60  return m_dataType->getPropertyPosition(m_ui->m_idComboBox->currentText().toStdString());
61  else
62  return -1;
63 }
64 
66 {
67  return m_ui->m_valueComboBox->currentText().toStdString();
68 }
69 
71 {
72  if(m_dataType)
73  return m_dataType->getPropertyPosition(m_ui->m_valueComboBox->currentText().toStdString());
74  else
75  return -1;
76 }
77 
79 {
80  return m_ui->m_locationComboBox->currentText().toStdString();
81 }
82 
84 {
85  if(m_dataType)
86  return m_dataType->getPropertyPosition(m_ui->m_locationComboBox->currentText().toStdString());
87  else
88  return -1;
89 }
90 
92 {
93  QString item;
94  m_dataType = dataType;
95 
96  const std::vector<te::dt::Property*>& properties = dataType->getProperties();
97 
98  for (std::size_t i = 0; i < properties.size(); i++)
99  {
100  if(properties.at(i)->getType() == te::dt::GEOMETRY_TYPE)
101  {
102  item = QString::fromStdString(properties.at(i)->getName());
103  m_ui->m_locationComboBox->addItem(item);
104  }
105  else if(properties.at(i)->getType() != te::dt::DATETIME_TYPE)
106  {
107  item = QString::fromStdString(properties.at(i)->getName());
108  m_ui->m_idComboBox->addItem(item);
109  m_ui->m_valueComboBox->addItem(item);
110  }
111  }
112 }
113 
115 {
116 
117 }
TimeSeriesPropertiesWidget(QWidget *parent=0, Qt::WindowFlags f=0)
Constructor.
boost::shared_ptr< DataSetType > DataSetTypePtr
Definition: DataSetType.h:653
std::string getIdPropName()
Returns the name of the property that holds the ID of each timeSeries in the dataset.
std::string getGeometryPropName()
Returns the name of the property that holds the geometry.
Ui::TimeSeriesPropertiesWidgetForm * getForm()
Returns a pointer to the widget's form.
int getValueIndex()
Returns the index of the attribute values associated to each time series in the dataset.
int getGeometryId()
Returns the index of the temporal property geometry.
void setUp(const te::da::DataSetTypePtr dataType)
Adjusts the widget's components based on the given datasettype.
A widget used to adjust a time series layer's properties.
std::auto_ptr< Ui::TimeSeriesPropertiesWidgetForm > m_ui
The widget's form.
std::string getValuePropName()
Returns the name of the property that holds the attribute values associated to each time series in th...
int getIdIndex()
Returns the index of the ID of each timeSeries in the dataset.