work save: auto link
This commit is contained in:
parent
3c4a2ac9d2
commit
f0530d6737
|
@ -334,7 +334,7 @@ QString Compiler::getCppIncludeArguments()
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString Compiler::getLibraryArguments()
|
QString Compiler::getLibraryArguments(FileType fileType)
|
||||||
{
|
{
|
||||||
QString result;
|
QString result;
|
||||||
|
|
||||||
|
@ -344,7 +344,8 @@ QString Compiler::getLibraryArguments()
|
||||||
|
|
||||||
//Add auto links
|
//Add auto links
|
||||||
// is file and auto link enabled
|
// is file and auto link enabled
|
||||||
{
|
if (fileType == FileType::CSource ||
|
||||||
|
fileType == FileType::CppSource){
|
||||||
Editor* editor = pMainWindow->editorList()->getEditor();
|
Editor* editor = pMainWindow->editorList()->getEditor();
|
||||||
if (editor) {
|
if (editor) {
|
||||||
PCppParser parser = editor->parser();
|
PCppParser parser = editor->parser();
|
||||||
|
@ -359,12 +360,12 @@ QString Compiler::getLibraryArguments()
|
||||||
QApplication *app=dynamic_cast<QApplication*>(
|
QApplication *app=dynamic_cast<QApplication*>(
|
||||||
QApplication::instance());
|
QApplication::instance());
|
||||||
app->processEvents();
|
app->processEvents();
|
||||||
QSet<QString> parsedFiles;
|
|
||||||
result += parseFileIncludesForAutolink(
|
|
||||||
editor->filename(),
|
|
||||||
parsedFiles,
|
|
||||||
parser);
|
|
||||||
}
|
}
|
||||||
|
QSet<QString> parsedFiles;
|
||||||
|
result += parseFileIncludesForAutolink(
|
||||||
|
editor->filename(),
|
||||||
|
parsedFiles,
|
||||||
|
parser);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -461,7 +462,7 @@ void Compiler::runCommand(const QString &cmd, const QString &arguments, const Q
|
||||||
if (errorOccurred) {
|
if (errorOccurred) {
|
||||||
switch (process.error()) {
|
switch (process.error()) {
|
||||||
case QProcess::FailedToStart:
|
case QProcess::FailedToStart:
|
||||||
throw CompileError(tr("The compiler process failed to start."));
|
throw CompileError(tr("The compiler process for '%1' failed to start.").arg(mFilename));
|
||||||
break;
|
break;
|
||||||
case QProcess::Crashed:
|
case QProcess::Crashed:
|
||||||
if (!mStop)
|
if (!mStop)
|
||||||
|
|
|
@ -49,7 +49,7 @@ protected:
|
||||||
virtual QString getCppCompileArguments(bool checkSyntax);
|
virtual QString getCppCompileArguments(bool checkSyntax);
|
||||||
virtual QString getCIncludeArguments();
|
virtual QString getCIncludeArguments();
|
||||||
virtual QString getCppIncludeArguments();
|
virtual QString getCppIncludeArguments();
|
||||||
virtual QString getLibraryArguments();
|
virtual QString getLibraryArguments(FileType fileType);
|
||||||
virtual QString parseFileIncludesForAutolink(
|
virtual QString parseFileIncludesForAutolink(
|
||||||
const QString& filename,
|
const QString& filename,
|
||||||
QSet<QString> parsedFiles,
|
QSet<QString> parsedFiles,
|
||||||
|
|
|
@ -61,7 +61,7 @@ bool FileCompiler::prepareForCompile()
|
||||||
default:
|
default:
|
||||||
throw CompileError(tr("Can't find the compiler for file %1").arg(mFilename));
|
throw CompileError(tr("Can't find the compiler for file %1").arg(mFilename));
|
||||||
}
|
}
|
||||||
mArguments += getLibraryArguments();
|
mArguments += getLibraryArguments(fileType);
|
||||||
|
|
||||||
if (!QFile(mCompiler).exists()) {
|
if (!QFile(mCompiler).exists()) {
|
||||||
throw CompileError(tr("The Compiler '%1' doesn't exists!").arg(mCompiler));
|
throw CompileError(tr("The Compiler '%1' doesn't exists!").arg(mCompiler));
|
||||||
|
|
|
@ -50,7 +50,7 @@ bool StdinCompiler::prepareForCompile()
|
||||||
default:
|
default:
|
||||||
throw CompileError(tr("Can't find the compiler for file %1").arg(mFilename));
|
throw CompileError(tr("Can't find the compiler for file %1").arg(mFilename));
|
||||||
}
|
}
|
||||||
mArguments += getLibraryArguments();
|
mArguments += getLibraryArguments(fileType);
|
||||||
|
|
||||||
if (!QFile(mCompiler).exists()) {
|
if (!QFile(mCompiler).exists()) {
|
||||||
throw CompileError(tr("The Compiler '%1' doesn't exists!").arg(mCompiler));
|
throw CompileError(tr("The Compiler '%1' doesn't exists!").arg(mCompiler));
|
||||||
|
|
|
@ -498,6 +498,7 @@ QSet<QString> CppParser::getFileDirectIncludes(const QString &filename)
|
||||||
while (iter != fileIncludes->includeFiles.cend()) {
|
while (iter != fileIncludes->includeFiles.cend()) {
|
||||||
if (iter.value())
|
if (iter.value())
|
||||||
list.insert(iter.key());
|
list.insert(iter.key());
|
||||||
|
iter++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return list;
|
return list;
|
||||||
|
|
|
@ -1242,7 +1242,7 @@ BufferCoord SynEdit::WordEndEx(const BufferCoord &XY)
|
||||||
// valid line?
|
// valid line?
|
||||||
if ((CY >= 1) && (CY <= mLines->count())) {
|
if ((CY >= 1) && (CY <= mLines->count())) {
|
||||||
QString Line = mLines->getString(CY - 1);
|
QString Line = mLines->getString(CY - 1);
|
||||||
if (CX <= Line.length()) {
|
if (CX <= Line.length() && CX-2>=0) {
|
||||||
if (isWordChar(Line[CX - 2]))
|
if (isWordChar(Line[CX - 2]))
|
||||||
CX = StrScanForNonWordChar(Line, CX);
|
CX = StrScanForNonWordChar(Line, CX);
|
||||||
if (CX == 0)
|
if (CX == 0)
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
[{
|
[{
|
||||||
"header": "ege.h",
|
"header": "ege.h",
|
||||||
"links": ["-lgraphics -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus"]
|
"links": "-lgraphics -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"header": "turtle.h",
|
"header": "turtle.h",
|
||||||
"links": ["-lturtle"]
|
"links": "-lturtle"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
Loading…
Reference in New Issue