[Kde-bindings] KDE/kdebindings/kalyptus

Richard Dale Richard_Dale at tipitina.demon.co.uk
Tue Oct 17 19:47:17 UTC 2006


SVN commit 596521 by rdale:

* A first attempt to get build a Smoke library with the KDE4 headers.

CCMAIL: kde-bindings at kde.org



 M  +13 -3     kalyptus  
 M  +5 -2      kalyptusCxxToSmoke.pm  


--- trunk/KDE/kdebindings/kalyptus/kalyptus #596520:596521
@@ -469,13 +469,14 @@
 		$p =~ s/QT_MOC_COMPAT//;
 		$p =~ s/Q_EXPORT_CODECS_BIG5//;
 		$p =~ s/Q_DECL_DEPRECATED//;
+		$p =~ s/Q_SCRIPTABLE//;
 		$p =~ s/QT_COMPAT / /;
 		$p =~ s/Q_DISABLE_COPY\((\w+)\)/$1(const $1 &);\n$1 &operator=(const $1 &);/;
 		$p =~ s/QWIDGETSIZE_MAX/32767/; # Qt/E uses this #define as an enum value - yuck!
 		$p =~ s/Q_SIGNALS/signals/;
 		$p =~ s/ASYNC/void/;
-		$p =~ s/[A-Z_]*_EXPORT_DEPRECATED//;
-		$p =~ s/[A-Z_]*_EXPORT\s/ /;
+		$p =~ s/[A-Z_0-9]*_EXPORT_DEPRECATED//;
+		$p =~ s/[A-Z_0-9]*_EXPORT\s/ /;
 		$p =~ s/EXPORT_DOCKCLASS//;
 		$p =~ s/DLL_IMP_EXP_KMDICLASS//;
 		$p =~ s/KSVG_GET/KJS::Value get();/;
@@ -709,7 +710,16 @@
 		return $l;
 	}
 	elsif ( $l =~ /Q_PROPERTY/ ) {	# property
-		return $l;
+		do {
+			$decl .= $l;
+	
+			if ( $l =~ /[)]/ ) {
+				$decl =~ s/\n/ /gs;
+				return $decl;
+			}
+			return undef if !defined ($l = readCxxLine());
+	
+		} while ( 1 );
 	}
 
 	do {
--- trunk/KDE/kdebindings/kalyptus/kalyptusCxxToSmoke.pm #596520:596521
@@ -257,7 +257,7 @@
    'ViewItemFeatures' => 'int',
 );
 
-$headerSubdirectories = "kio/|kdevelop/|kinterfacedesigner/|kontact/|kate/|kparts/|dom/|kabc/|ksettings/|kjs/|ktexteditor/|kdeprint/|kdesu/|knewstuff|dbus-1.0/dbus/"
+$headerSubdirectories = "kio/|dnssd/|solid/|solid/ifaces/|phonon/|sonnet/|kdevelop/|kinterfacedesigner/|kontact/|kate/|kparts/|dom/|kabc/|ksettings/|kjs/|ktexteditor/|kdeprint/|kdesu/|knewstuff|dbus-1.0/dbus/"
 
 }
 
@@ -445,6 +445,7 @@
 	    $className eq 'QAccessibleBridgePlugin' || # Qt4
 	    $className eq 'QForeachContainerBase' || # Qt4
 	    $className eq 'QInputMethodEvent::Attribute' || # Qt4
+	    $className eq 'QAbstractUndoItem' || # Qt4
 	    $className eq 'QAbstractTextDocumentLayout::PaintContext' || # Qt4
 	    $className eq 'QAbstractTextDocumentLayout::Selection' || # Qt4
 	    $className eq 'QBrushData' || # Qt4
@@ -458,6 +459,7 @@
 	    $className eq 'QMap::iterator' || # Qt4
 	    $className eq 'QMapData' || # Qt4
 	    $className eq 'QMapData::Node' || # Qt4
+	    $className eq 'QObjectData' || # Qt4
 	    $className eq 'QProxyModel' || # Obsolete Qt4
 	    $className eq 'QSharedData' || # Qt4
 	    $className eq 'QPainterPath::Element' || # Qt4
@@ -723,6 +725,7 @@
 				|| ($classNode->{astNodeName} eq 'QDBusBusService' and $name eq 'RequestName')
 				|| ($classNode->{astNodeName} eq 'QDBusBusService' and $name eq 'requestName')
 				|| ($classNode->{astNodeName} eq 'QGLFormat' and $name eq 'openGLVersionFlags')
+				|| ($classNode->{astNodeName} eq 'QAbstractUndoItem' and $name eq '~QAbstractUndoItem')
 				|| ($name eq 'qDBusMetaTypeId')
 				|| ($m->{ReturnType} =~ /QT3_SUPPORT/) ) )
 
@@ -2624,7 +2627,7 @@
 		die "arglist for $t not found" unless defined $arglist;
 		if ( $m->{Flags} =~ "p" ) {
 		    # Pure virtuals don't have a {case} number, that's normal
-		    die if defined $case;
+		    die "pure virtual $className\::$methName has a case number for sig=$sig" if defined $case;
 		    $case = -1; # This remains -1, not 0 !
 		} else {
 		    die "$className\::$methName has no case number for sig=$sig" unless defined $case;



More information about the Kde-bindings mailing list