Gideon patch to compile with the Qt/KDE-3.0.5
Michael W. Hall
mwhall at hiwaay.net
Wed Jul 30 02:07:03 UTC 2003
How do you apply this patch? Do you apply it to the tar file or to the
uncompressed tar file?
Thanks,
Michael
On Mon, 2003-07-28 at 09:47, Iztok Kobal wrote:
> With this patch Gideon compiles with the gcc-3.2, Qt-3.0.5, kdelibs-3.0.5
>
> I hope Alexander will look into it, check that it functions, and decide
> to include it into his sources - to be compliant with the
> www.KDevelop.org build information.
>
> Regards !
>
> Iztok
> ----
>
> Index: lib/project/envvartools.cpp
> ===================================================================
> RCS file: /home/kde/kdevelop/lib/project/envvartools.cpp,v
> retrieving revision 1.1
> diff -u -r1.1 envvartools.cpp
> --- lib/project/envvartools.cpp 25 Jul 2003 19:54:20 -0000 1.1
> +++ lib/project/envvartools.cpp 28 Jul 2003 14:33:29 -0000
> @@ -10,11 +10,12 @@
> ***************************************************************************/
>
> #include "envvartools.h"
> +#include <qregexp.h>
>
> QString EnvVarTools::quote( const QString & arg )
> {
> QString res = arg;
> - res.replace(QString::fromLatin1("'"), QString::fromLatin1("'\\''"));
> + res.replace(QRegExp(QString::fromLatin1("'")), QString::fromLatin1("'\\''"));
> res.prepend("\"");
> res.append("\"");
> return res;
> Index: parts/cppsupport/cppnewclassdlg.cpp
> ===================================================================
> RCS file: /home/kde/kdevelop/parts/cppsupport/cppnewclassdlg.cpp,v
> retrieving revision 1.46
> diff -u -r1.46 cppnewclassdlg.cpp
> --- parts/cppsupport/cppnewclassdlg.cpp 27 Jul 2003 15:03:57 -0000 1.46
> +++ parts/cppsupport/cppnewclassdlg.cpp 28 Jul 2003 14:33:30 -0000
> @@ -48,6 +48,41 @@
> #include "parsedmethod.h"
> #include "classgeneratorconfig.h"
>
> +#if QT_VERSION < 0x030100
> +// copied from qt-3.2/src/tools/qregexp.cpp
> +/*!
> + Returns the string \a str with every regexp special character
> + escaped with a backslash. The special characters are $, (, ), *, +,
> + ., ?, [, \, ], ^, {, | and }.
> +
> + Example:
> + \code
> + s1 = QRegExp::escape( "bingo" ); // s1 == "bingo"
> + s2 = QRegExp::escape( "f(x)" ); // s2 == "f\\(x\\)"
> + \endcode
> +
> + This function is useful to construct regexp patterns dynamically:
> +
> + \code
> + QRegExp rx( "(" + QRegExp::escape(name) +
> + "|" + QRegExp::escape(alias) + ")" );
> + \endcode
> +*/
> +QString QRegExp_escape(const QString& str )
> +{
> + static const char meta[] = "$()*+.?[\\]^{|}";
> + QString quoted = str;
> + int i = 0;
> +
> + while ( i < (int) quoted.length() ) {
> + if ( strchr(meta, quoted[i].latin1()) != 0 )
> + quoted.insert( i++, "\\" );
> + i++;
> + }
> + return quoted;
> +}
> +#endif
> +
> CppNewClassDialog::CppNewClassDialog(KDevPlugin *part, QWidget *parent, const char *name)
> : CppNewClassDialogBase(parent, name)
> {
> @@ -1002,7 +1037,11 @@
> className = dlg.classname_edit->text().simplifyWhiteSpace();
> QString temp = className;
> className.replace(QRegExp("template *<.*> *(class *)?"), "");
> - templateStr = temp.replace(QRegExp(QRegExp::escape(className)), "");
> +#if QT_VERSION < 0x030100
> + templateStr = temp.replace(QRegExp(QRegExp_escape(className)), "");
> +#else
> + templateStr = temp.replace(QRegExp(QRegExp::escape(QRegExp(className))), "");
> +#endif
> templateStr.replace(QRegExp(" *class *$"), "");
>
> templateParams = templateStr;
> @@ -1722,7 +1761,11 @cvs server: Diffing parts/cppsupport/newclass_templates
> @
> QString className = name.simplifyWhiteSpace();
> QString temp = className;
> className.replace(QRegExp("template *<.*> *(class *)?"), "");
> - QString templateStr = temp.replace(QRegExp(QRegExp::escape(className)), "");
> +#if QT_VERSION < 0x030100
> + QString templateStr = temp.replace(QRegExp(QRegExp_escape(className)), "");
> +#else
> + QString templateStr = temp.replace(QRegExp::escape(className), "");
> +#endif
> templateStr.replace(QRegExp(" *class *$"), "");
> return templateStr;
> }
> @@ -1737,7 +1780,11 @@
> QString className = name.simplifyWhiteSpace();
> QString temp = className;
> className.replace(QRegExp("template *<.*> *(class *)?"), "");
> +#if QT_VERSION < 0x030100
> + QString templateStr = temp.replace(QRegExp(QRegExp_escape(className)), "");
> +#else
> QString templateStr = temp.replace(QRegExp(QRegExp::escape(className)), "");
> +#endif
> templateStr.replace(QRegExp(" *class *$"), "");
>
> QString templateParams = templateStr;
> @@ -1753,7 +1800,11 @@
> QString className = name.simplifyWhiteSpace();
> QString temp = className;
> className.replace(QRegExp("<.*> *"), "");
> +#if QT_VERSION < 0x030100
> + QString templateStr = temp.replace(QRegExp(QRegExp_escape(className)), "");
> +#else
> QString templateStr = temp.replace(QRegExp(QRegExp::escape(className)), "");
> +#endif
> return templateStr;
> }
>
> Index: parts/grepview/grepdlg.cpp
> ===================================================================
> RCS file: /home/kde/kdevelop/parts/grepview/grepdlg.cpp,v
> retrieving revision 1.18
> diff -u -r1.18 grepdlg.cpp
> --- parts/grepview/grepdlg.cpp 15 Jul 2003 07:34:19 -0000 1.18
> +++ parts/grepview/grepdlg.cpp 28 Jul 2003 14:33:30 -0000
> @@ -33,6 +33,10 @@
>
> #include "grepviewpart.h"
>
> +#ifndef KDE_IS_VERSION
> +#define KDE_MAKE_VERSION( a,b,c ) (((a) << 16) | ((b) << 8) | (c))
> +#define KDE_IS_VERSION(a,b,c) ( KDE_VERSION >= KDE_MAKE_VERSION(a,b,c) )
> +#endif
>
> const char *template_desc[] = {
> "verbatim",
> @@ -209,6 +213,7 @@
> }
> return list;
> }
> +
>
> GrepDialog::~GrepDialog()
> {
More information about the KDevelop-devel
mailing list