Loading...
Searching...
No Matches
LocalGraphicWidgetFactory.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/se/LocalGraphicWidgetFactory.h
22
23 \brief A concrete factory that builds a graphic widget used to configure a graphic associate with an external graphic element
24 that references a local image. e.g. a SVG file, a PNG file, etc.
25*/
26
27#ifndef __TERRALIB_QT_SE_INTERNAL_LOCALGRAPHICWIDGETFACTORY_H
28#define __TERRALIB_QT_SE_INTERNAL_LOCALGRAPHICWIDGETFACTORY_H
29
30// TerraLib
31#include "../Config.h"
33
34namespace te
35{
36 namespace qt
37 {
38 namespace widgets
39 {
40 /*!
41 \class LocalGraphicWidgetFactory
42
43 \brief A concrete factory that builds a graphic widget used to configure a graphic associate with an external graphic element
44 that references a local image. e.g. a SVG file, a PNG file, etc.
45
46 \sa AbstractGraphicWidgetFactory
47 */
49 {
50 public:
51
52 /** @name Public Initializer
53 * Methods for the control of the factory singleton.
54 */
55 //@{
56
57 /*! \brief It initializes the factory: the singleton instance will be registered in the abstract factory AbstractGraphicWidgetFactory. */
58 static void initialize();
59
60 /*! \brief It finalizes the factory: the singleton instance will be destroyed and will be unregistered from the abstract factory AbstractGraphicWidgetFactory. */
61 static void finalize();
62
63 //@}
64
65 /** @name Public Destructor
66 * Destructor.
67 */
68 //@{
69
70 /*!
71 \brief Destructor.
72
73 \note It will automatically unregister the factory from the dictionary.
74 */
76
77 //@}
78
79 protected:
80
81 /** @name Re-implementation of Pure Virtual Method
82 * Concrete factory methods.
83 */
84 //@{
85
87
88 //@}
89
90 protected:
91
92 /** @name Protected Initializers
93 * Initializers.
94 */
95 //@{
96
97 /*!
98 \brief It creates the factory.
99
100 The key of a LocalGraphicWidgetFactory is a string.
101
102 \param factoryKey The key that identifies the factory.
103 */
105
106 //@}
107
108 private:
109
110 static std::string sm_factoryKey; //!< The factory key.
111 static LocalGraphicWidgetFactory* sm_factory; //!< A pointer to the global factory.
112 };
113
114 } // end namespace widgets
115 } // end namespace qt
116} // end namespace te
117
118#endif // __TERRALIB_QT_SE_INTERNAL_LOCALGRAPHICWIDGETFACTORY_H
The abstract factory of widgets used to configure Symbology Enconding Graphic element.
The abstract factory of widgets used to configure Symbology Enconding Graphic element.
Abstract class that represents a widget that can be used to build a graphic element.
A concrete factory that builds a graphic widget used to configure a graphic associate with an externa...
static LocalGraphicWidgetFactory * sm_factory
A pointer to the global factory.
static void finalize()
It finalizes the factory: the singleton instance will be destroyed and will be unregistered from the ...
AbstractGraphicWidget * build()
Concrete factories (derived from this one) must implement this method in order to create objects.
static std::string sm_factoryKey
The factory key.
static void initialize()
It initializes the factory: the singleton instance will be registered in the abstract factory Abstrac...
LocalGraphicWidgetFactory()
It creates the factory.
TerraLib.
#define TEQTWIDGETSEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:63