Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Marco Bubke
flatpak-qt-creator
Commits
7870769a
Commit
7870769a
authored
Feb 05, 2011
by
Alessandro Portale
Browse files
Html5 app wizard. First steps.
Task-Number: QTCREATORBUG-3284
parent
cb9cc8dc
Changes
14
Hide whitespace changes
Inline
Side-by-side
src/plugins/qt4projectmanager/qt4projectmanager.pro
View file @
7870769a
...
...
@@ -38,6 +38,9 @@ HEADERS += \
wizards
/
targetsetuppage
.
h
\
wizards
/
qmlstandaloneappwizard
.
h
\
wizards
/
qmlstandaloneappwizardpages
.
h
\
wizards
/
html5app
.
h
\
wizards
/
html5appwizard
.
h
\
wizards
/
html5appwizardpages
.
h
\
wizards
/
abstractmobileapp
.
h
\
wizards
/
qmlstandaloneapp
.
h
\
wizards
/
abstractmobileappwizard
.
h
\
...
...
@@ -101,6 +104,9 @@ SOURCES += qt4projectmanagerplugin.cpp \
wizards
/
targetsetuppage
.
cpp
\
wizards
/
qmlstandaloneappwizard
.
cpp
\
wizards
/
qmlstandaloneappwizardpages
.
cpp
\
wizards
/
html5app
.
cpp
\
wizards
/
html5appwizard
.
cpp
\
wizards
/
html5appwizardpages
.
cpp
\
wizards
/
abstractmobileapp
.
cpp
\
wizards
/
qmlstandaloneapp
.
cpp
\
wizards
/
abstractmobileappwizard
.
cpp
\
...
...
@@ -138,6 +144,7 @@ FORMS += makestep.ui \
wizards
/
testwizardpage
.
ui
\
wizards
/
targetsetuppage
.
ui
\
wizards
/
qmlstandaloneappwizardsourcespage
.
ui
\
wizards
/
html5appwizardsourcespage
.
ui
\
wizards
/
mobilelibrarywizardoptionpage
.
ui
\
wizards
/
mobileappwizardgenericoptionspage
.
ui
\
wizards
/
mobileappwizardsymbianoptionspage
.
ui
\
...
...
src/plugins/qt4projectmanager/qt4projectmanagerconstants.h
View file @
7870769a
...
...
@@ -107,6 +107,12 @@ const char * const QML_WIZARD_TR_SCOPE = "QmlProjectManager";
const
char
*
const
QML_WIZARD_TR_CATEGORY
=
QT_TRANSLATE_NOOP
(
"QmlProjectManager"
,
"Qt Quick Project"
);
const
char
*
const
QML_WIZARD_ICON
=
":/qmlproject/images/qml_wizard.png"
;
// Html5 wizard categories
const
char
*
const
HTML5_WIZARD_CATEGORY
=
"I.Projects"
;
// (after Qt)
const
char
*
const
HTML5_WIZARD_TR_SCOPE
=
QT_APP_WIZARD_TR_SCOPE
;
const
char
*
const
HTML5_WIZARD_TR_CATEGORY
=
QT_TRANSLATE_NOOP
(
"ProjectExplorer"
,
"Other Project"
);
const
char
*
const
HTML5_WIZARD_ICON
=
":/qmlproject/images/qml_wizard.png"
;
// Tasks
const
char
*
const
PROFILE_EVALUATE
=
"Qt4ProjectManager.ProFileEvaluate"
;
...
...
src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp
View file @
7870769a
...
...
@@ -44,6 +44,7 @@
#include "wizards/emptyprojectwizard.h"
#include "wizards/subdirsprojectwizard.h"
#include "wizards/qmlstandaloneappwizard.h"
#include "wizards/html5appwizard.h"
#include "customwidgetwizard/customwidgetwizard.h"
#include "profileeditorfactory.h"
#include "qt4projectmanagerconstants.h"
...
...
@@ -145,6 +146,7 @@ bool Qt4ProjectManagerPlugin::initialize(const QStringList &arguments, QString *
addAutoReleasedObject
(
new
ConsoleAppWizard
);
addAutoReleasedObject
(
new
MobileAppWizard
);
addAutoReleasedObject
(
new
QmlStandaloneAppWizard
());
addAutoReleasedObject
(
new
Html5AppWizard
);
addAutoReleasedObject
(
new
LibraryWizard
);
addAutoReleasedObject
(
new
TestWizard
);
addAutoReleasedObject
(
new
CustomWidgetWizard
);
...
...
src/plugins/qt4projectmanager/wizards/abstractmobileapp.h
View file @
7870769a
...
...
@@ -48,7 +48,6 @@ namespace Internal {
struct
AbstractGeneratedFileInfo
{
enum
FileType
{
MainQmlFile
,
MainCppFile
,
AppProFile
,
DeploymentPriFile
,
...
...
src/plugins/qt4projectmanager/wizards/html5app.cpp
0 → 100644
View file @
7870769a
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** No Commercial Usage
**
** This file contains pre-release code and may not be distributed.
** You may use this file in accordance with the terms and conditions
** contained in the Technology Preview License Agreement accompanying
** this package.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
**
**************************************************************************/
#include "html5app.h"
#include <QtCore/QDir>
#include <QtCore/QFile>
#include <QtCore/QRegExp>
#include <QtCore/QTextStream>
#include <QtCore/QCoreApplication>
#ifndef CREATORLESSTEST
#include <coreplugin/icore.h>
#endif // CREATORLESSTEST
namespace
Qt4ProjectManager
{
namespace
Internal
{
const
QString
appViewerBaseName
(
QLatin1String
(
"html5applicationviewer"
));
const
QString
appViewerPriFileName
(
appViewerBaseName
+
QLatin1String
(
".pri"
));
const
QString
appViewerCppFileName
(
appViewerBaseName
+
QLatin1String
(
".cpp"
));
const
QString
appViewerHFileName
(
appViewerBaseName
+
QLatin1String
(
".h"
));
const
QString
appViewerOriginsSubDir
(
appViewerBaseName
+
QLatin1Char
(
'/'
));
Html5App
::
Html5App
()
:
AbstractMobileApp
()
{
}
Html5App
::~
Html5App
()
{
}
void
Html5App
::
setIndexHtmlFile
(
const
QString
&
qmlFile
)
{
m_indexHtmlFile
.
setFile
(
qmlFile
);
}
QString
Html5App
::
indexHtmlFile
()
const
{
return
path
(
IndexHtml
);
}
QString
Html5App
::
pathExtended
(
int
fileType
)
const
{
const
QString
htmlSubDir
=
QLatin1String
(
"html/"
);
const
QString
appViewerTargetSubDir
=
appViewerOriginsSubDir
;
const
QString
indexHtml
=
QLatin1String
(
"index.html"
);
const
QString
pathBase
=
outputPathBase
();
const
QDir
appProFilePath
(
pathBase
);
switch
(
fileType
)
{
case
IndexHtml
:
return
useExistingIndexHtml
()
?
m_indexHtmlFile
.
canonicalFilePath
()
:
pathBase
+
htmlSubDir
+
indexHtml
;
case
IndexHtmlDeployed
:
return
useExistingIndexHtml
()
?
htmlSubDir
+
m_indexHtmlFile
.
fileName
()
:
QString
(
htmlSubDir
+
indexHtml
);
case
IndexHtmlOrigin
:
return
originsRoot
()
+
QLatin1String
(
"html/"
)
+
indexHtml
;
case
AppViewerPri
:
return
pathBase
+
appViewerTargetSubDir
+
appViewerPriFileName
;
case
AppViewerPriOrigin
:
return
originsRoot
()
+
appViewerOriginsSubDir
+
appViewerPriFileName
;
case
AppViewerCpp
:
return
pathBase
+
appViewerTargetSubDir
+
appViewerCppFileName
;
case
AppViewerCppOrigin
:
return
originsRoot
()
+
appViewerOriginsSubDir
+
appViewerCppFileName
;
case
AppViewerH
:
return
pathBase
+
appViewerTargetSubDir
+
appViewerHFileName
;
case
AppViewerHOrigin
:
return
originsRoot
()
+
appViewerOriginsSubDir
+
appViewerHFileName
;
case
HtmlDir
:
return
pathBase
+
htmlSubDir
;
case
HtmlDirProFileRelative
:
return
useExistingIndexHtml
()
?
appProFilePath
.
relativeFilePath
(
m_indexHtmlFile
.
canonicalPath
())
:
QString
(
htmlSubDir
).
remove
(
htmlSubDir
.
length
()
-
1
,
1
);
default:
qFatal
(
"Html5App::pathExtended() needs more work"
);
}
return
QString
();
}
QString
Html5App
::
originsRoot
()
const
{
return
templatesRoot
()
+
QLatin1String
(
"html5app/"
);
}
QString
Html5App
::
mainWindowClassName
()
const
{
return
QLatin1String
(
"Html5ApplicationViewer"
);
}
bool
Html5App
::
adaptCurrentMainCppTemplateLine
(
QString
&
line
)
const
{
const
QLatin1Char
quote
(
'"'
);
bool
adaptLine
=
true
;
if
(
line
.
contains
(
QLatin1String
(
"// MAINHTML"
)))
{
insertParameter
(
line
,
quote
+
path
(
IndexHtmlDeployed
)
+
quote
);
}
return
adaptLine
;
}
void
Html5App
::
handleCurrentProFileTemplateLine
(
const
QString
&
line
,
QTextStream
&
proFileTemplate
,
QTextStream
&
proFile
,
bool
&
uncommentNextLine
)
const
{
if
(
line
.
contains
(
QLatin1String
(
"# DEPLOYMENTFOLDERS"
)))
{
// Eat lines
QString
nextLine
;
while
(
!
(
nextLine
=
proFileTemplate
.
readLine
()).
isNull
()
&&
!
nextLine
.
contains
(
QLatin1String
(
"# DEPLOYMENTFOLDERS_END"
)))
{
}
if
(
nextLine
.
isNull
())
return
;
QStringList
folders
;
proFile
<<
"folder_01.source = "
<<
path
(
HtmlDirProFileRelative
)
<<
endl
;
proFile
<<
"folder_01.target = ."
<<
endl
;
folders
.
append
(
QLatin1String
(
"folder_01"
));
proFile
<<
"DEPLOYMENTFOLDERS = "
<<
folders
.
join
(
QLatin1String
(
" "
))
<<
endl
;
}
else
if
(
line
.
contains
(
QLatin1String
(
"# INCLUDE_DEPLOYMENT_PRI"
)))
{
proFileTemplate
.
readLine
();
// eats 'include(deployment.pri)'
}
}
#ifndef CREATORLESSTEST
Core
::
GeneratedFiles
Html5App
::
generateFiles
(
QString
*
errorMessage
)
const
{
Core
::
GeneratedFiles
files
=
AbstractMobileApp
::
generateFiles
(
errorMessage
);
// if (!useExistingMainQml()) {
files
.
append
(
file
(
generateFile
(
Html5AppGeneratedFileInfo
::
IndexHtmlFile
,
errorMessage
),
path
(
IndexHtml
)));
files
.
last
().
setAttributes
(
Core
::
GeneratedFile
::
OpenEditorAttribute
);
// }
files
.
append
(
file
(
generateFile
(
Html5AppGeneratedFileInfo
::
AppViewerPriFile
,
errorMessage
),
path
(
AppViewerPri
)));
files
.
append
(
file
(
generateFile
(
Html5AppGeneratedFileInfo
::
AppViewerCppFile
,
errorMessage
),
path
(
AppViewerCpp
)));
files
.
append
(
file
(
generateFile
(
Html5AppGeneratedFileInfo
::
AppViewerHFile
,
errorMessage
),
path
(
AppViewerH
)));
return
files
;
}
#endif // CREATORLESSTEST
bool
Html5App
::
useExistingIndexHtml
()
const
{
return
!
m_indexHtmlFile
.
filePath
().
isEmpty
();
}
QByteArray
Html5App
::
generateFileExtended
(
int
fileType
,
bool
*
versionAndCheckSum
,
QString
*
comment
,
QString
*
errorMessage
)
const
{
QByteArray
data
;
switch
(
fileType
)
{
case
Html5AppGeneratedFileInfo
::
IndexHtmlFile
:
data
=
readBlob
(
path
(
IndexHtmlOrigin
),
errorMessage
);
break
;
case
Html5AppGeneratedFileInfo
::
AppViewerPriFile
:
data
=
readBlob
(
path
(
AppViewerPriOrigin
),
errorMessage
);
data
.
append
(
readBlob
(
path
(
DeploymentPriOrigin
),
errorMessage
));
*
comment
=
ProFileComment
;
*
versionAndCheckSum
=
true
;
break
;
case
Html5AppGeneratedFileInfo
::
AppViewerCppFile
:
data
=
readBlob
(
path
(
AppViewerCppOrigin
),
errorMessage
);
*
versionAndCheckSum
=
true
;
break
;
case
Html5AppGeneratedFileInfo
::
AppViewerHFile
:
default:
data
=
readBlob
(
path
(
AppViewerHOrigin
),
errorMessage
);
*
versionAndCheckSum
=
true
;
break
;
}
return
data
;
}
int
Html5App
::
stubVersionMinor
()
const
{
return
StubVersion
;
}
QList
<
AbstractGeneratedFileInfo
>
Html5App
::
updateableFiles
(
const
QString
&
mainProFile
)
const
{
QList
<
AbstractGeneratedFileInfo
>
result
;
static
const
struct
{
int
fileType
;
QString
fileName
;
}
files
[]
=
{
{
Html5AppGeneratedFileInfo
::
AppViewerPriFile
,
appViewerPriFileName
},
{
Html5AppGeneratedFileInfo
::
AppViewerHFile
,
appViewerHFileName
},
{
Html5AppGeneratedFileInfo
::
AppViewerCppFile
,
appViewerCppFileName
}
};
const
QFileInfo
mainProFileInfo
(
mainProFile
);
const
int
size
=
sizeof
(
files
)
/
sizeof
(
files
[
0
]);
for
(
int
i
=
0
;
i
<
size
;
++
i
)
{
const
QString
fileName
=
mainProFileInfo
.
dir
().
absolutePath
()
+
QLatin1Char
(
'/'
)
+
appViewerOriginsSubDir
+
files
[
i
].
fileName
;
if
(
!
QFile
::
exists
(
fileName
))
continue
;
Html5AppGeneratedFileInfo
file
;
file
.
fileType
=
files
[
i
].
fileType
;
file
.
fileInfo
=
QFileInfo
(
fileName
);
file
.
currentVersion
=
AbstractMobileApp
::
makeStubVersion
(
Html5App
::
StubVersion
);
result
.
append
(
file
);
}
if
(
result
.
count
()
!=
size
)
result
.
clear
();
// All files must be found. No wrong/partial updates, please.
return
result
;
}
const
int
Html5App
::
StubVersion
=
10
;
}
// namespace Internal
}
// namespace Qt4ProjectManager
src/plugins/qt4projectmanager/wizards/html5app.h
0 → 100644
View file @
7870769a
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** No Commercial Usage
**
** This file contains pre-release code and may not be distributed.
** You may use this file in accordance with the terms and conditions
** contained in the Technology Preview License Agreement accompanying
** this package.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
**
**************************************************************************/
#ifndef HTML5APP_H
#define HTML5APP_H
#include "abstractmobileapp.h"
#include <QtCore/QHash>
#include <QtCore/QStringList>
namespace
Qt4ProjectManager
{
namespace
Internal
{
struct
Html5AppGeneratedFileInfo
:
public
AbstractGeneratedFileInfo
{
enum
ExtendedFileType
{
IndexHtmlFile
=
ExtendedFile
,
AppViewerPriFile
,
AppViewerCppFile
,
AppViewerHFile
};
Html5AppGeneratedFileInfo
()
:
AbstractGeneratedFileInfo
()
{
}
};
class
Html5App
:
public
AbstractMobileApp
{
public:
enum
ExtendedFileType
{
IndexHtml
=
ExtendedFile
,
IndexHtmlDeployed
,
IndexHtmlOrigin
,
AppViewerPri
,
AppViewerPriOrigin
,
AppViewerCpp
,
AppViewerCppOrigin
,
AppViewerH
,
AppViewerHOrigin
,
HtmlDir
,
HtmlDirProFileRelative
,
ModulesDir
};
Html5App
();
virtual
~
Html5App
();
void
setIndexHtmlFile
(
const
QString
&
qmlFile
);
QString
indexHtmlFile
()
const
;
#ifndef CREATORLESSTEST
virtual
Core
::
GeneratedFiles
generateFiles
(
QString
*
errorMessage
)
const
;
#else
bool
generateFiles
(
QString
*
errorMessage
)
const
;
#endif // CREATORLESSTEST
bool
useExistingIndexHtml
()
const
;
static
const
int
StubVersion
;
private:
virtual
QByteArray
generateFileExtended
(
int
fileType
,
bool
*
versionAndCheckSum
,
QString
*
comment
,
QString
*
errorMessage
)
const
;
virtual
QString
pathExtended
(
int
fileType
)
const
;
virtual
QString
originsRoot
()
const
;
virtual
QString
mainWindowClassName
()
const
;
virtual
int
stubVersionMinor
()
const
;
virtual
bool
adaptCurrentMainCppTemplateLine
(
QString
&
line
)
const
;
virtual
void
handleCurrentProFileTemplateLine
(
const
QString
&
line
,
QTextStream
&
proFileTemplate
,
QTextStream
&
proFile
,
bool
&
uncommentNextLine
)
const
;
QList
<
AbstractGeneratedFileInfo
>
updateableFiles
(
const
QString
&
mainProFile
)
const
;
QFileInfo
m_indexHtmlFile
;
};
}
// namespace Internal
}
// namespace Qt4ProjectManager
#endif // HTML5APP_H
src/plugins/qt4projectmanager/wizards/html5appwizard.cpp
0 → 100644
View file @
7870769a
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** No Commercial Usage
**
** This file contains pre-release code and may not be distributed.
** You may use this file in accordance with the terms and conditions
** contained in the Technology Preview License Agreement accompanying
** this package.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
**
**************************************************************************/
#include "mobileappwizardpages.h"
#include "html5app.h"
#include "html5appwizard.h"
#include "html5appwizardpages.h"
#include "targetsetuppage.h"
#include "qt4projectmanagerconstants.h"
#include <projectexplorer/baseprojectwizarddialog.h>
#include <projectexplorer/customwizard/customwizard.h>
#include <projectexplorer/projectexplorer.h>
#include <coreplugin/editormanager/editormanager.h>
#include <QtCore/QCoreApplication>
#include <QtGui/QIcon>
namespace
Qt4ProjectManager
{
namespace
Internal
{
class
Html5AppWizardDialog
:
public
AbstractMobileAppWizardDialog
{
Q_OBJECT
public:
explicit
Html5AppWizardDialog
(
QWidget
*
parent
=
0
);
private:
class
Html5AppWizardSourcesPage
*
m_htmlSourcesPage
;
friend
class
Html5AppWizard
;
};
Html5AppWizardDialog
::
Html5AppWizardDialog
(
QWidget
*
parent
)
:
AbstractMobileAppWizardDialog
(
parent
)
,
m_htmlSourcesPage
(
0
)
{
setWindowTitle
(
tr
(
"New Html5 Application"
));
setIntroDescription
(
tr
(
"This wizard generates a Html5 application project."
));
m_htmlSourcesPage
=
new
Html5AppWizardSourcesPage
;
addPageWithTitle
(
m_htmlSourcesPage
,
tr
(
"Html Sources"
));
}
class
Html5AppWizardPrivate
{
class
Html5App
*
app
;
class
Html5AppWizardDialog
*
wizardDialog
;
friend
class
Html5AppWizard
;
};
Html5AppWizard
::
Html5AppWizard
()
:
AbstractMobileAppWizard
(
parameters
())
,
m_d
(
new
Html5AppWizardPrivate
)
{
m_d
->
app
=
new
Html5App
;
m_d
->
wizardDialog
=
0
;
}
Html5AppWizard
::~
Html5AppWizard
()
{
delete
m_d
->
app
;
delete
m_d
;
}
Core
::
BaseFileWizardParameters
Html5AppWizard
::
parameters
()
{
Core
::
BaseFileWizardParameters
parameters
(
ProjectWizard
);
parameters
.
setIcon
(
QIcon
(
QLatin1String
(
Constants
::
ICON_QML_STANDALONE
)));
parameters
.
setDisplayName
(
tr
(
"Html5 Application"
));
parameters
.
setId
(
QLatin1String
(
"QA.HTML5A Application"
));
parameters
.
setDescription
(
tr
(
"Creates an Html5 application project that can contain "
"both Html5 and C++ code and includes a Webkit view.
\n\n
"
"You can build the application and deploy it on desktop and "
"mobile target platforms. For example, you can create signed "
"Symbian Installation System (SIS) packages for this type of "
"projects."
));
parameters
.
setCategory
(
QLatin1String
(
Constants
::
HTML5_WIZARD_CATEGORY
));
parameters
.
setDisplayCategory
(
QCoreApplication
::
translate
(
Constants
::
HTML5_WIZARD_TR_SCOPE
,
Constants
::
HTML5_WIZARD_TR_CATEGORY
));
return
parameters
;
}
AbstractMobileAppWizardDialog
*
Html5AppWizard
::
createWizardDialogInternal
(
QWidget
*
parent
)
const
{
m_d
->
wizardDialog
=
new
Html5AppWizardDialog
(
parent
);
return
m_d
->
wizardDialog
;
}
void
Html5AppWizard
::
projectPathChanged
(
const
QString
&
path
)
const
{
m_d
->
wizardDialog
->
m_targetsPage
->
setImportInfos
(
TargetSetupPage
::
importInfosForKnownQtVersions
(
path
));
}
void
Html5AppWizard
::
prepareGenerateFiles
(
const
QWizard
*
w
,
QString
*
errorMessage
)
const
{
Q_UNUSED
(
errorMessage
)
const
Html5AppWizardDialog
*
wizard
=
qobject_cast
<
const
Html5AppWizardDialog
*>
(
w
);
const
QString
mainQmlFile
=
wizard
->
m_htmlSourcesPage
->
mainHtmlFile
();
m_d
->
app
->
setIndexHtmlFile
(
mainQmlFile
);
}
bool
Html5AppWizard
::
postGenerateFilesInternal
(
const
Core
::
GeneratedFiles
&
l
,
QString
*
errorMessage
)
{
const
bool
success
=
ProjectExplorer
::
CustomProjectWizard
::
postGenerateOpen
(
l
,
errorMessage
);
if
(
success
&&
!
m_d
->
app
->
indexHtmlFile
().
isEmpty
())
{
ProjectExplorer
::
ProjectExplorerPlugin
::
instance
()
->
setCurrentFile
(
0
,
m_d
->
app
->
indexHtmlFile
());
Core
::
EditorManager
::
instance
()
->
openEditor
(
m_d
->
app
->
indexHtmlFile
(),
QString
(),
Core
::
EditorManager
::
ModeSwitch
);
}
return
success
;
}
AbstractMobileApp
*
Html5AppWizard
::
app
()
const
{
return
m_d
->
app
;
}
AbstractMobileAppWizardDialog
*
Html5AppWizard
::
wizardDialog
()
const
{
return
m_d
->
wizardDialog
;
}
}
// namespace Internal
}
// namespace Qt4ProjectManager
#include "html5appwizard.moc"
src/plugins/qt4projectmanager/wizards/html5appwizard.h
0 → 100644
View file @
7870769a
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** No Commercial Usage
**
** This file contains pre-release code and may not be distributed.
** You may use this file in accordance with the terms and conditions
** contained in the Technology Preview License Agreement accompanying
** this package.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to