Plugin.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/plugins/st/Plugin.h
22 
23  \brief Plugin implementation for the ST Qt Plugin widget.
24 */
25 
26 #ifndef __TE_QT_PLUGINS_ST_INTERNAL_PLUGIN_H
27 #define __TE_QT_PLUGINS_ST_INTERNAL_PLUGIN_H
28 
29 // TerraLib
30 #include "../../../core/plugin/CppPlugin.h"
31 #include "Config.h"
32 
33 // Qt
34 #include <QMenu>
35 
36 namespace te
37 {
38  namespace qt
39  {
40  namespace af
41  {
42  namespace evt
43  { // Forward declarations
44  struct Event;
45  }
46  }
47 
48  namespace plugins
49  {
50  namespace st
51  {
52  class TimeSliderWidgetAction;
53  class ObservationAction;
54  class TimeSeriesAction;
55  class TrajectoryAction;
56  class STItemDelegate;
57 
58  class Plugin : public QObject, public te::core::CppPlugin
59  {
60  Q_OBJECT
61 
62  public:
63 
64  Plugin(const te::core::PluginInfo& pluginInfo);
65 
66  ~Plugin();
67 
68  void startup();
69 
70  void shutdown();
71 
72  protected:
73 
74  /*!
75  \brief Function used to register all raster processing actions.
76 
77  */
78  void registerActions();
79 
80  /*!
81  \brief Function used to unregister all raster processing actions.
82 
83  */
84  void unRegisterActions();
85 
86  Q_SIGNALS:
87 
89 
90  protected:
91 
92  void updateDelegate(const bool& add);
93 
94  QMenu* m_stMenu; //!< ST Main Menu registered.
99  STItemDelegate* m_delegate; //!< Item delegate.
100  };
101 
102  } // end namespace st
103  } // end namespace plugins
104  } // end namespace qt
105 } // end namespace te
106 
107 #endif //__TE_QT_PLUGINS_ST_INTERNAL_PLUGIN_H
te::qt::plugins::st::TimeSeriesAction * m_timeSeriesAction
TimeSeries Layer Action.
Definition: Plugin.h:97
void unRegisterActions()
Function used to unregister all raster processing actions.
te::qt::plugins::st::TrajectoryAction * m_trajectoryAction
Trajectory Layer Action.
Definition: Plugin.h:98
This class register the time series action into the St plugin.
A base class for application events.
Definition: Event.h:59
Basic information about a plugin.
Definition: PluginInfo.h:63
Plugin(const te::core::PluginInfo &pluginInfo)
te::qt::plugins::st::ObservationAction * m_observactionAction
Observation Layer Action.
Definition: Plugin.h:96
void updateDelegate(const bool &add)
te::qt::plugins::st::TimeSliderWidgetAction * m_sliderAction
Slider Process Action.
Definition: Plugin.h:95
void registerActions()
Function used to register all raster processing actions.
The base class for C++ plugins.
Definition: CppPlugin.h:46
URI C++ Library.
This class register the time slider widget action into st Plugin.
QMenu * m_stMenu
ST Main Menu registered.
Definition: Plugin.h:94
void startup()
This method will be called by applications to startup some plugin's functionality.
void shutdown()
This method will be called by applicatons to shutdown plugin's functionality.
This class register the observation action into the St plugin.
void triggered(te::qt::af::evt::Event *e)
Configuration flags for the ST Qt Widget plugin.
STItemDelegate * m_delegate
Item delegate.
Definition: Plugin.h:99