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
bafe4468
Commit
bafe4468
authored
Jan 29, 2010
by
Kai Koehne
Browse files
Add support for JavaScriptFiles and ImageFiles elements to .qmlproject
parent
269506c9
Changes
6
Hide whitespace changes
Inline
Side-by-side
src/plugins/qmlprojectmanager/fileformat/filefilteritems.cpp
View file @
bafe4468
...
...
@@ -46,8 +46,11 @@ void FileFilterBaseItem::setFilter(const QString &filter)
if
(
filter
==
m_filter
)
return
;
m_filter
=
filter
;
m_regex
.
setPattern
(
m_filter
);
m_regex
.
setPatternSyntax
(
QRegExp
::
Wildcard
);
m_regExpList
.
clear
();
foreach
(
const
QString
&
pattern
,
filter
.
split
(
QLatin1Char
(
';'
)))
{
m_regExpList
<<
QRegExp
(
pattern
,
Qt
::
CaseInsensitive
,
QRegExp
::
Wildcard
);
}
emit
filterChanged
();
updateFileList
();
...
...
@@ -113,7 +116,7 @@ void FileFilterBaseItem::updateFileList()
newFiles
<<
QDir
(
projectDir
).
absoluteFilePath
(
explicitPath
);
}
}
if
(
m_reg
ex
.
isValid
()
&&
m_explicitFiles
.
isEmpty
())
if
(
!
m_reg
ExpList
.
isEmpty
()
&&
m_explicitFiles
.
isEmpty
())
newFiles
+=
filesInSubTree
(
QDir
(
m_defaultDir
),
QDir
(
projectDir
),
&
dirsToBeWatched
);
if
(
newFiles
!=
m_files
)
{
...
...
@@ -149,8 +152,12 @@ QSet<QString> FileFilterBaseItem::filesInSubTree(const QDir &rootDir, const QDir
parsedDirs
->
insert
(
dir
.
absolutePath
());
foreach
(
const
QFileInfo
&
file
,
dir
.
entryInfoList
(
QDir
::
Files
))
{
if
(
m_regex
.
exactMatch
(
file
.
fileName
()))
{
fileSet
.
insert
(
file
.
absoluteFilePath
());
const
QString
fileName
=
file
.
fileName
();
foreach
(
const
QRegExp
&
filter
,
m_regExpList
)
{
if
(
filter
.
exactMatch
(
fileName
))
{
fileSet
.
insert
(
file
.
absoluteFilePath
());
break
;
}
}
}
...
...
src/plugins/qmlprojectmanager/fileformat/filefilteritems.h
View file @
bafe4468
...
...
@@ -58,7 +58,7 @@ private:
QString
m_defaultDir
;
QString
m_filter
;
QRegExp
m_reg
ex
;
QList
<
QRegExp
>
m_reg
ExpList
;
bool
m_recursive
;
QSet
<
QString
>
m_explicitFiles
;
...
...
src/plugins/qmlprojectmanager/qmlnewprojectwizard.cpp
View file @
bafe4468
...
...
@@ -127,11 +127,23 @@ Core::GeneratedFiles QmlNewProjectWizard::generateFiles(const QWizard *w,
QTextStream
out
(
&
projectContents
);
out
//: Comment added to generated .qmlproject file
<<
"// "
<<
tr
(
"File generated by QtCreator"
,
"qmlproject Template"
)
<<
endl
<<
endl
<<
"import QmlProject 1.0"
<<
endl
<<
endl
<<
"Project {"
<<
endl
//: Comment added to generated .qmlproject file
<<
" // "
<<
tr
(
"Scan current directory for .qml, .js, and image files"
,
"qmlproject Template"
)
<<
endl
<<
" QmlFiles {"
<<
endl
<<
" directory:
\"
.
\"
"
<<
endl
<<
" }"
<<
endl
<<
" JavaScriptFiles {"
<<
endl
<<
" directory:
\"
.
\"
"
<<
endl
<<
" }"
<<
endl
<<
" ImageFiles {"
<<
endl
<<
" directory:
\"
.
\"
"
<<
endl
<<
" }"
<<
endl
<<
"}"
<<
endl
;
}
Core
::
GeneratedFile
generatedCreatorFile
(
creatorFileName
);
...
...
src/plugins/qmlprojectmanager/qmlprojectnodes.cpp
View file @
bafe4468
...
...
@@ -41,7 +41,7 @@ using namespace QmlProjectManager;
using
namespace
QmlProjectManager
::
Internal
;
QmlProjectNode
::
QmlProjectNode
(
QmlProject
*
project
,
Core
::
IFile
*
projectFile
)
:
ProjectExplorer
::
ProjectNode
(
QFileInfo
(
projectFile
->
fileName
()).
absolutePath
()),
:
ProjectExplorer
::
ProjectNode
(
QFileInfo
(
projectFile
->
fileName
()).
absolute
File
Path
()),
m_project
(
project
),
m_projectFile
(
projectFile
)
{
...
...
@@ -145,6 +145,7 @@ ProjectExplorer::FolderNode *QmlProjectNode::findOrCreateFolderByName(const QStr
FolderNode
*
parent
=
findOrCreateFolderByName
(
components
,
end
-
1
);
if
(
!
parent
)
parent
=
this
;
addFolderNodes
(
QList
<
FolderNode
*>
()
<<
folder
,
parent
);
return
folder
;
...
...
src/plugins/qmlprojectmanager/qmlprojectwizard.cpp
View file @
bafe4468
...
...
@@ -133,12 +133,25 @@ Core::GeneratedFiles QmlProjectWizard::generateFiles(const QWizard *w,
QTextStream
out
(
&
projectContents
);
out
//: Comment added to generated .qmlproject file
<<
"// "
<<
tr
(
"File generated by QtCreator"
,
"qmlproject Template"
)
<<
endl
<<
endl
<<
"import QmlProject 1.0"
<<
endl
<<
endl
<<
"Project {"
<<
endl
<<
" // "
<<
tr
(
"Scan current directory and subdirectories for .qml, .js, and image files"
,
"qmlproject Template"
)
<<
endl
<<
" QmlFiles {"
<<
endl
<<
" directory:
\"
.
\"
"
<<
endl
<<
" recursive: true"
<<
endl
<<
" }"
<<
endl
<<
" JavaScriptFiles {"
<<
endl
<<
" directory:
\"
.
\"
"
<<
endl
<<
" recursive: true"
<<
endl
<<
" }"
<<
endl
<<
" ImageFiles {"
<<
endl
<<
" directory:
\"
.
\"
"
<<
endl
<<
" recursive: true"
<<
endl
<<
" }"
<<
endl
<<
"}"
<<
endl
;
}
Core
::
GeneratedFile
generatedCreatorFile
(
creatorFileName
);
...
...
tests/auto/qml/qmlprojectmanager/fileformat/tst_fileformat.cpp
View file @
bafe4468
...
...
@@ -14,7 +14,7 @@ public:
TestProject
();
private
slots
:
void
test
Qml
FileFilter
();
void
testFileFilter
();
};
TestProject
::
TestProject
()
...
...
@@ -24,7 +24,7 @@ TestProject::TestProject()
QString
testDataDir
=
QLatin1String
(
SRCDIR
"/data"
);
void
TestProject
::
test
Qml
FileFilter
()
void
TestProject
::
testFileFilter
()
{
//
// search for qml files in local directory
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment