29 #include <QtWidgets/QWidget>
40 class QDesignerFormEditorInterface;
41 class QXmlStreamWriter;
42 class DtScriptedTaskDialog;
46 class DtScriptedTaskVariableLayoutConverter;
51 Q_PROPERTY(qreal top READ top WRITE setTop)
52 Q_PROPERTY(qreal bottom READ bottom WRITE setBottom)
55 DtRange() : myBottom(-100000.), myTop(100000) {};
56 DtRange(
const DtRange& orig) : myBottom(orig.myBottom), myTop(orig.myTop) {};
59 qreal
top()
const {
return myTop; };
60 qreal
bottom()
const {
return myBottom; };
85 virtual bool isValid()
91 virtual void setReadOnly(
bool) = 0;
108 NormalMode = 0x00000000,
109 QtDesignerMode = 0x00000001
119 virtual void setLabel(
const std::string&) = 0;
120 virtual void setLabel(
const QString&) = 0;
123 virtual void setToolTip(
const QString&) = 0;
126 virtual void setTopLineVisible(
bool)
130 virtual bool topLineVisible()
const
136 virtual bool isValid()
const = 0;
142 virtual void setRange(
double bottom,
double top) = 0;
145 virtual void setDefaultValue(
const std::string&) = 0;
149 virtual void setVariableData(
const std::string&) = 0;
152 virtual void setupFrom(
const std::vector<makVrv::DtSimEntry*>& data) = 0;
155 virtual DtReaderWriter* createBoundVariable(
const std::string& variableName) = 0;
158 virtual void setupFromBoundVariable(
const DtReaderWriter* variableName) = 0;
167 virtual bool guiElementOnly()
const
173 virtual void setIndent(
int) = 0;
179 static void initializeForQtDesignerExtension(
makVrv::DtDe& de, QDesignerFormEditorInterface* core)
183 static bool includeInQtDesigner()
190 virtual std::string scriptedTaskVariableName()
const = 0;
203 Q_PROPERTY(QString label READ label WRITE setLabel)
204 Q_PROPERTY(
bool isInternal READ isInternal WRITE setIsInternal)
205 Q_PROPERTY(
int indent READ indent WRITE setIndent)
206 Q_PROPERTY(QString variableData READ variableData WRITE setVariableData DESIGNABLE false)
215 virtual
void setToolTip(const QString&);
219 virtual
void setLabel(const std::
string&);
222 virtual
void setLabel(const QString&);
225 virtual
void setVariableData(const std::
string&);
228 virtual
void setVariableData(const QString&);
229 virtual QString variableData() const;
231 virtual QString label() const;
234 virtual
void setupFrom(const std::vector<makVrv::DtSimEntry*>& data);
237 virtual
void setIsInternal(
bool);
238 virtual
bool isInternal() const;
241 virtual
void setTopLineVisible(
bool);
242 virtual
bool topLineVisible() const;
245 virtual
void createTopLine();
249 virtual
void setIndent(
int);
250 virtual
int indent() const;
253 virtual
bool isValid() const;
256 virtual
void setTopLabelChecked(
bool);
257 virtual
bool topLabelChecked() const;
260 virtual
void setRange(
double,
double)
264 virtual void setRange(
const DtRange&);
265 virtual void setRangeTop(
double);
266 virtual void setRangeTop(
int);
267 virtual double rangeTop()
const;
269 virtual void setRangeBottom(
double);
270 virtual void setRangeBottom(
int);
271 virtual double rangeBottom()
const;
273 virtual const DtRange& getRange()
const;
277 virtual void setTopLabelIsCheckable(
bool);
278 virtual bool topLabelIsCheckable()
const;
279 virtual void getDefaultSpecificTitles(QString& defaultTitle, QString& specificTitle)
const;
280 virtual void setDefaultSpecificTitles(
const QString& defaultTitle,
const QString& specificTitle);
283 virtual void setupDefaultSpecificFromVariableData(
const DtString& var);
287 static bool includeInQtDesigner()
294 virtual std::string scriptedTaskVariableName()
const;
300 void validityUpdated();
303 virtual void topLabelCheckStateChanged();
345 virtual std::string className()
const = 0;
351 virtual std::string designerIcon()
const
353 return "../data/images/icons/Simulate_FrontEnd_Icon.ico";
357 virtual std::string designerGroup()
const = 0;
360 virtual std::string headerFile()
const = 0;
363 virtual std::string variableName()
const = 0;
366 virtual bool includeInDesigner()
const = 0;
370 virtual void initializeForQtDesignerExtension(
makVrv::DtDe& de, QDesignerFormEditorInterface* core) = 0;
375 template <
typename _Class>
388 return new _Class(de, parent, flags, cflags);
398 return _Class::staticMetaObject.className();
418 return _Class::includeInQtDesigner();