Files
qt-creator/share/qtcreator/templates/wizards/classes/cpp/file.h
Christian Kandeler e607c5530e Wizards: Fix "pragma once" check
Obviously, boolean functions return a string that you need to compare to
"true" and "false" explicitly.
Amends 8e75381fce.

Fixes: QTCREATORBUG-29713
Change-Id: I19966555badd67f95f51ea1c1757d8b86e727010
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2023-10-09 15:26:08 +00:00

71 lines
2.5 KiB
C++

%{JS: Cpp.licenseTemplate()}\
@if '%{JS: Cpp.usePragmaOnce()}' === 'true'
#pragma once
@else
#ifndef %{GUARD}
#define %{GUARD}
@endif
%{JS: Cpp.includeStatement('%{Base}', Cpp.cxxHeaderSuffix(), ['QObject', 'QWidget', 'QMainWindow', 'QQuickItem', 'QSharedData'], '%{TargetPath}')}\
%{JS: QtSupport.qtIncludes([ ( '%{IncludeQObject}' ) ? 'QtCore/%{IncludeQObject}' : '',
( '%{IncludeQWidget}' ) ? 'QtGui/%{IncludeQWidget}' : '',
( '%{IncludeQMainWindow}' ) ? 'QtGui/%{IncludeQMainWindow}' : '',
( '%{IncludeQDeclarativeItem}' ) ? 'QtDeclarative/%{IncludeQDeclarativeItem}' : '',
( '%{IncludeQSharedData}' ) ? 'QtCore/QSharedDataPointer' : '' ],
[ ( '%{IncludeQObject}' ) ? 'QtCore/%{IncludeQObject}' : '',
( '%{IncludeQWidget}' ) ? 'QtWidgets/%{IncludeQWidget}' : '',
( '%{IncludeQMainWindow}' ) ? 'QtWidgets/%{IncludeQMainWindow}' : '',
( '%{IncludeQDeclarativeItem}' ) ? 'QtQuick1/%{IncludeQDeclarativeItem}' : '',
( '%{IncludeQQuickItem}' ) ? 'QtDeclarative/%{IncludeQQuickItem}' : '',
( '%{AddQmlElementMacro}' && !'%{IncludeQQuickItem}' ) ? 'QtQml/QQmlEngine' : '',
( '%{IncludeQSharedData}' ) ? 'QtCore/QSharedDataPointer' : '' ])}\
%{JS: Cpp.openNamespaces('%{Class}')}
@if '%{IncludeQSharedData}'
class %{CN}Data;
@endif
@if '%{Base}'
class %{CN} : public %{Base}
@else
class %{CN}
@endif
{
@if '%{AddQObjectMacro}'
Q_OBJECT
@endif
@if '%{AddQmlElementMacro}'
QML_ELEMENT
@endif
public:
@if '%{Base}' === 'QObject' || %{JS: Cpp.hasQObjectParent('%{Base}')}
explicit %{CN}(QObject *parent = nullptr);
@elsif '%{Base}' === 'QWidget' || '%{Base}' === 'QMainWindow'
explicit %{CN}(QWidget *parent = nullptr);
@else
%{CN}();
@endif
@if '%{IncludeQSharedData}'
%{CN}(const %{CN} &);
%{CN} &operator=(const %{CN} &);
~%{CN}();
@endif
@if %{isQObject}
@if %{QtKeywordsEnabled}
signals:
@else
Q_SIGNALS:
@endif
@endif
@if '%{IncludeQSharedData}'
private:
QSharedDataPointer<%{CN}Data> data;
@endif
};
%{JS: Cpp.closeNamespaces('%{Class}')}
@if '%{JS: Cpp.usePragmaOnce()}' === 'false'
#endif // %{GUARD}
@endif