Library wizard: Create export symbol correctly.

...if the directory contains a '-'. Export a function to generate
identifier correctly and use that.

Reviewed-by: con <qtc-committer@nokia.com>
Task-number: QTCREATORBUG-248
This commit is contained in:
Friedemann Kleint
2009-11-09 12:28:22 +01:00
parent 9033749198
commit 901239e1ea
3 changed files with 9 additions and 4 deletions

View File

@@ -35,7 +35,7 @@
namespace Utils {
static QString toAlphaNum(const QString &s)
QTCREATOR_UTILS_EXPORT QString fileNameToCppIdentifier(const QString &s)
{
QString rc;
const int len = s.size();
@@ -55,9 +55,9 @@ static QString toAlphaNum(const QString &s)
QTCREATOR_UTILS_EXPORT QString headerGuard(const QString &file)
{
const QFileInfo fi(file);
QString rc = toAlphaNum(fi.completeBaseName()).toUpper();
QString rc = fileNameToCppIdentifier(fi.completeBaseName()).toUpper();
rc += QLatin1Char('_');
rc += toAlphaNum(fi.suffix()).toUpper();
rc += fileNameToCppIdentifier(fi.suffix()).toUpper();
return rc;
}

View File

@@ -40,6 +40,10 @@ QT_END_NAMESPACE
namespace Utils {
// Convert a file name to a Cpp identifier (stripping invalid characters
// or replacing them by an underscore).
QTCREATOR_UTILS_EXPORT QString fileNameToCppIdentifier(const QString &s);
QTCREATOR_UTILS_EXPORT QString headerGuard(const QString &file);
QTCREATOR_UTILS_EXPORT

View File

@@ -28,6 +28,7 @@
**************************************************************************/
#include "qtprojectparameters.h"
#include <utils/codegeneration.h>
#include <QtCore/QTextStream>
#include <QtCore/QDir>
@@ -108,7 +109,7 @@ QString createMacro(const QString &name, const QString &suffix)
if (extensionPosition != -1)
rc.truncate(extensionPosition);
rc += suffix;
return rc;
return Utils::fileNameToCppIdentifier(rc);
}
QString QtProjectParameters::exportMacro(const QString &projectName)