itom  3.0.0
paramEditorFactory.h
1 /* ********************************************************************
2 itom measurement system
3 URL: http://www.uni-stuttgart.de/ito
4 Copyright (C) 2017, Institut fuer Technische Optik (ITO),
5 Universitaet Stuttgart, Germany
6 
7 This file is part of itom.
8 
9 itom is free software: you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation, either version 3 of the License, or
12 (at your option) any later version.
13 
14 itom is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU General Public License
20 along with itom. If not, see <http://www.gnu.org/licenses/>.
21 *********************************************************************** */
22 
23 #ifndef PARAMEDITORFACTORY_H
24 #define PARAMEDITORFACTORY_H
25 
26 #include "qglobal.h"
27 #if QT_VERSION < 0x050500 //hex-code must be used since Qt4 moc process does not understand QT_VERSION_CHECK(5,5,0)
28 #include <QtDesigner/QDesignerCustomWidgetInterface>
29 #else
30 #include <QtUiPlugin/QDesignerCustomWidgetInterface>
31 #endif
32 
33 class ParamEditorFactory : public QObject, public QDesignerCustomWidgetInterface
34 {
35  Q_OBJECT
36  Q_INTERFACES(QDesignerCustomWidgetInterface)
37 
38 public:
39  ParamEditorFactory(QObject *parent = 0);
40 
41  bool isContainer() const;
42  bool isInitialized() const { return initialized; }
43  QIcon icon() const;
44  QString domXml() const;
45  QString group() const;
46  QString includeFile() const;
47  QString name() const;
48  QString toolTip() const;
49  QString whatsThis() const;
50  QWidget *createWidget(QWidget *parent);
51  void initialize(QDesignerFormEditorInterface *core);
52 
53 private:
54  bool initialized;
55 };
56 
57 #endif
Definition: paramEditorFactory.h:33