summaryrefslogtreecommitdiffstats
path: root/pytquic3/parser.cpp
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2023-01-03 00:52:18 +0100
committerSlávek Banko <slavek.banko@axis.cz>2023-01-20 02:10:39 +0100
commit16434e5519f6224e231bc5f7202f0e495eda7bb7 (patch)
treed0a3bc5f18eb65f89c1e6238dcf579e6c9cb80ad /pytquic3/parser.cpp
parent1c362264d328c8886d33061ab992750741f7933a (diff)
downloadpytqt-16434e5519f6224e231bc5f7202f0e495eda7bb7.tar.gz
pytqt-16434e5519f6224e231bc5f7202f0e495eda7bb7.zip
Do rename qt=>tqt on source files, directories and libraries.
Rename pyuic=>pytquic, pylupdate=>pytqlupdate. Do rename qt=>tqt on constants and variables. Do rename QT=>TQT on constants. Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'pytquic3/parser.cpp')
-rw-r--r--pytquic3/parser.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/pytquic3/parser.cpp b/pytquic3/parser.cpp
new file mode 100644
index 0000000..fc6aae4
--- /dev/null
+++ b/pytquic3/parser.cpp
@@ -0,0 +1,66 @@
+/**********************************************************************
+** Copyright (C) 2000 Trolltech AS. All rights reserved.
+**
+** This file is part of TQt Designer.
+**
+** This file may be distributed and/or modified under the terms of the
+** GNU General Public License version 2 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file.
+**
+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+**
+** See http://www.trolltech.com/gpl/ for GPL licensing information.
+**
+** Contact info@trolltech.com if any conditions of this licensing are
+** not clear to you.
+**
+**********************************************************************/
+
+#include "parser.h"
+#include <tqobject.h>
+#include <tqstringlist.h>
+
+class NormalizeObject : public TQObject
+{
+public:
+ NormalizeObject() : TQObject() {}
+ static TQCString normalizeSignalSlot( const char *signalSlot ) { return TQObject::normalizeSignalSlot( signalSlot ); }
+};
+
+TQString Parser::cleanArgs( const TQString &func )
+{
+ TQString slot( func );
+ int begin = slot.find( "(" ) + 1;
+ TQString args = slot.mid( begin );
+ args = args.left( args.find( ")" ) );
+ TQStringList lst = TQStringList::split( ',', args );
+ TQString res = slot.left( begin );
+ for ( TQStringList::Iterator it = lst.begin(); it != lst.end(); ++it ) {
+ if ( it != lst.begin() )
+ res += ",";
+ TQString arg = *it;
+ int pos = 0;
+ if ( ( pos = arg.find( "&" ) ) != -1 ) {
+ arg = arg.left( pos + 1 );
+ } else if ( ( pos = arg.find( "*" ) ) != -1 ) {
+ arg = arg.left( pos + 1 );
+ } else {
+ arg = arg.simplifyWhiteSpace();
+ if ( ( pos = arg.find( ':' ) ) != -1 )
+ arg = arg.left( pos ).simplifyWhiteSpace() + ":" + arg.mid( pos + 1 ).simplifyWhiteSpace();
+ TQStringList l = TQStringList::split( ' ', arg );
+ if ( l.count() == 2 ) {
+ if ( l[ 0 ] != "const" && l[ 0 ] != "unsigned" && l[ 0 ] != "var" )
+ arg = l[ 0 ];
+ } else if ( l.count() == 3 ) {
+ arg = l[ 0 ] + " " + l[ 1 ];
+ }
+ }
+ res += arg;
+ }
+ res += ")";
+
+ return TQString::fromUtf8( NormalizeObject::normalizeSignalSlot( res.utf8() ) );
+}