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 
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  */
79 
80  /*!
81  \brief Function used to unregister all raster processing actions.
82 
83  */
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
The base class for C++ plugins.
Definition: CppPlugin.h:47
void startup()
This method will be called by applications to startup some plugin's functionality.
void updateDelegate(const bool &add)
STItemDelegate * m_delegate
Item delegate.
Definition: Plugin.h:99
te::qt::plugins::st::TimeSeriesAction * m_timeSeriesAction
TimeSeries Layer Action.
Definition: Plugin.h:97
void shutdown()
This method will be called by applicatons to shutdown plugin's functionality.
QMenu * m_stMenu
ST Main Menu registered.
Definition: Plugin.h:94
te::qt::plugins::st::TrajectoryAction * m_trajectoryAction
Trajectory Layer Action.
Definition: Plugin.h:98
void triggered(te::qt::af::evt::Event *e)
te::qt::plugins::st::ObservationAction * m_observactionAction
Observation Layer Action.
Definition: Plugin.h:96
Plugin(const te::core::PluginInfo &pluginInfo)
te::qt::plugins::st::TimeSliderWidgetAction * m_sliderAction
Slider Process Action.
Definition: Plugin.h:95
void registerActions()
Function used to register all raster processing actions.
void unRegisterActions()
Function used to unregister all raster processing actions.
This class register the time series action into the St plugin.
This class register the time slider widget action into st Plugin.
This class register the observation action into the St plugin.
TerraLib.
Basic information about a plugin.
Definition: PluginInfo.h:64
A base class for application events.
Definition: Event.h:60
Proxy configuration file for TerraView (see terraview_config.h).