Orfeo Toolbox
3.16
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
OTB
Code
Wrappers
QtWidget
otbWrapperQtWidgetParameterFactory.cxx
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: ORFEO Toolbox
4
Language: C++
5
Date: $Date$
6
Version: $Revision$
7
8
9
Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
10
See OTBCopyright.txt for details.
11
12
13
This software is distributed WITHOUT ANY WARRANTY; without even
14
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15
PURPOSE. See the above copyright notices for more information.
16
17
=========================================================================*/
18
#include "
otbWrapperQtWidgetParameterFactory.h
"
19
20
#include "
otbWrapperParameter.h
"
21
#include "
otbWrapperQtWidgetModel.h
"
22
23
#include "
otbWrapperQtWidgetParameterBase.h
"
24
25
#include "
otbWrapperQtWidgetEmptyParameter.h
"
26
#include "
otbWrapperQtWidgetIntParameter.h
"
27
#include "
otbWrapperQtWidgetFloatParameter.h
"
28
#include "
otbWrapperQtWidgetStringParameter.h
"
29
#include "
otbWrapperQtWidgetStringListParameter.h
"
30
#include "
otbWrapperQtWidgetChoiceParameter.h
"
31
#include "
otbWrapperQtWidgetListViewParameter.h
"
32
#include "
otbWrapperQtWidgetInputImageParameter.h
"
33
#include "
otbWrapperQtWidgetComplexInputImageParameter.h
"
34
#include "
otbWrapperQtWidgetComplexOutputImageParameter.h
"
35
#include "
otbWrapperQtWidgetInputImageListParameter.h
"
36
#include "
otbWrapperQtWidgetOutputImageParameter.h
"
37
#include "
otbWrapperQtWidgetOutputVectorDataParameter.h
"
38
#include "
otbWrapperQtWidgetInputFilenameParameter.h
"
39
#include "
otbWrapperQtWidgetInputFilenameListParameter.h
"
40
#include "
otbWrapperQtWidgetOutputFilenameParameter.h
"
41
#include "
otbWrapperQtWidgetDirectoryParameter.h
"
42
#include "
otbWrapperQtWidgetParameterGroup.h
"
43
#include "
otbWrapperQtWidgetInputVectorDataListParameter.h
"
44
#include "
otbWrapperQtWidgetInputVectorDataParameter.h
"
45
#include "
otbWrapperQtWidgetRAMParameter.h
"
46
47
namespace
otb
48
{
49
namespace
Wrapper
50
{
51
52
template
<
class
TParameterType,
class
TQtW
id
get>
53
class
QtWidgetParameterGenericFactory
54
{
55
public
:
56
57
static
bool
CanCreate
(
Parameter
* param )
58
{
59
return
dynamic_cast<
TParameterType *
>
(param) != 0;
60
}
61
62
static
QtWidgetParameterBase
*
Create
(
Parameter
* param,
QtWidgetModel
* model )
63
{
64
QtWidgetParameterBase
* widget = 0;
65
TParameterType* specificParam =
dynamic_cast<
TParameterType *
>
(param);
66
67
if
(specificParam)
68
{
69
widget =
new
TQtWidget(specificParam, model);
70
}
71
return
widget;
72
}
73
};
74
75
QtWidgetParameterFactory::QtWidgetParameterFactory
()
76
{
77
}
78
79
QtWidgetParameterFactory::~QtWidgetParameterFactory
()
80
{
81
}
82
83
QtWidgetParameterBase
*
84
QtWidgetParameterFactory::CreateQtWidget
(
Parameter
* param,
QtWidgetModel
* model )
85
{
86
QtWidgetParameterBase
* widget = 0;
87
88
#define CREATEWIDGET( ParameterType, WidgetType ) \
89
else if ( QtWidgetParameterGenericFactory<ParameterType, WidgetType>::CanCreate(param) ) \
90
{ \
91
widget = QtWidgetParameterGenericFactory<ParameterType, WidgetType>::Create(param, model); \
92
}
93
94
if
(0) {}
95
CREATEWIDGET
(
EmptyParameter
,
QtWidgetEmptyParameter
)
96
CREATEWIDGET
(
IntParameter
,
QtWidgetIntParameter
)
97
CREATEWIDGET
(
FloatParameter
,
QtWidgetFloatParameter
)
98
CREATEWIDGET
(
InputFilenameParameter
,
QtWidgetInputFilenameParameter
)
99
CREATEWIDGET
(
OutputFilenameParameter
,
QtWidgetOutputFilenameParameter
)
100
CREATEWIDGET
(
DirectoryParameter
,
QtWidgetDirectoryParameter
)
101
CREATEWIDGET
(
StringParameter
,
QtWidgetStringParameter
)
102
CREATEWIDGET
(
StringListParameter
,
QtWidgetStringListParameter
)
103
CREATEWIDGET
(
ChoiceParameter
,
QtWidgetChoiceParameter
)
104
CREATEWIDGET
(
ListViewParameter
,
QtWidgetListViewParameter
)
105
CREATEWIDGET
(
InputImageParameter
,
QtWidgetInputImageParameter
)
106
CREATEWIDGET
(
ComplexInputImageParameter
,
QtWidgetComplexInputImageParameter
)
107
CREATEWIDGET
(
ComplexOutputImageParameter
,
QtWidgetComplexOutputImageParameter
)
108
CREATEWIDGET
(
InputImageListParameter
,
QtWidgetInputImageListParameter
)
109
CREATEWIDGET
(
InputFilenameListParameter
,
QtWidgetInputFilenameListParameter
)
110
CREATEWIDGET
(
InputVectorDataListParameter
,
QtWidgetInputVectorDataListParameter
)
111
CREATEWIDGET
(
InputVectorDataParameter
,
QtWidgetInputVectorDataParameter
)
112
CREATEWIDGET
(
OutputImageParameter
,
QtWidgetOutputImageParameter
)
113
CREATEWIDGET
(
OutputVectorDataParameter
,
QtWidgetOutputVectorDataParameter
)
114
CREATEWIDGET
(
EmptyParameter
,
QtWidgetEmptyParameter
)
115
CREATEWIDGET
(
ParameterGroup
,
QtWidgetParameterGroup
)
116
CREATEWIDGET
(
RAMParameter
,
QtWidgetRAMParameter
)
117
118
#undef CREATEWIDGET
119
120
if
(widget)
121
{
122
widget->
CreateWidget
();
123
widget->
UpdateGUI
();
124
}
125
126
return
widget;
127
128
129
}
130
131
132
}
133
}
Generated at Sun Jun 16 2013 01:02:32 for
Orfeo Toolbox
with
doxygen 1.8.3.1