HistogramStyleWidget.h
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/charts/histogramStyleWidget.h
22 
23  \brief A widget used to adjust a histogram's style.
24 */
25 
26 #ifndef __TERRALIB_QT_WIDGETS_INTERNAL_HISTOGRAMSTYLEWIDGET_H
27 #define __TERRALIB_QT_WIDGETS_INTERNAL_HISTOGRAMSTYLEWIDGET_H
28 
29 //TerraLib
30 #include "../Config.h"
31 
32 // Qt
33 #include <QWidget>
34 
35 //STL
36 #include <memory>
37 
38 namespace Ui { class HistogramStyleWidgetForm; }
39 
40 namespace te
41 {
42  namespace qt
43  {
44  namespace widgets
45  {
46 
47  //forward declarations
48  class HistogramStyle;
49 
50  /*!
51  \class HistogramStyleWidget
52 
53  \brief A widget used to adjust a histogram's style.
54  */
55  class TEQTWIDGETSEXPORT HistogramStyleWidget : public QWidget
56  {
57 
58  Q_OBJECT
59 
60  public:
61 
62  /*!
63  \brief Constructor
64 
65  \param initial An initial HistogramStyle element that will be used, it will take ownership of this pointer if it is given. The widget form will be updated based on
66  it's parameters. It can be NULL.
67  \param parent this widget's parent
68  \param f Window flags used to configure this dialog
69  */
70  HistogramStyleWidget(te::qt::widgets::HistogramStyle* initial = 0, QWidget* parent = 0, Qt::WindowFlags f = 0);
71 
72  /*!
73  \brief Destructor.
74  */
76 
77  /*!
78  \brief Returns a pointer to the HistogramStyle being configured
79 
80  \return A HistogramStyle type pointer to the style being configured
81  \note The caller will take ownership of the returned pointer.
82  */
83  te::qt::widgets::HistogramStyle* getHistogramStyle();
84 
85  protected slots:
86 
87  void onFillPushButtonClicked();
88  void onStrokePushButtonClicked();
89 
90  private:
91 
92  std::auto_ptr<Ui::HistogramStyleWidgetForm> m_ui; //!< The widget form.
93  HistogramStyle* m_histogramStyle; //!< The histogram's chart style that will be configured by this widget.
94  };
95  } // end namespace widgets
96  } // end namespace qt
97 } // end namespace te
98 
99 #endif // __TERRALIB_QT_WIDGETS_INTERNAL_HISTOGRAMSTYLEWIDGET_H
HistogramStyle * m_histogramStyle
The histogram's chart style that will be configured by this widget.
A widget used to adjust a histogram's style.
URI C++ Library.
#define TEQTWIDGETSEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:63
std::auto_ptr< Ui::HistogramStyleWidgetForm > m_ui
The widget form.