[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdebindings/kalyptus
From:       Richard Dale <Richard_Dale () tipitina ! demon ! co ! uk>
Date:       2004-09-10 22:07:57
Message-ID: 20040910220757.ED60D1773 () office ! kde ! org
[Download RAW message or body]

CVS commit by rdale: 


* Fixed Smoke library generation for KDE 3.1 


  M +4 -0      ChangeLog   1.58
  M +35 -3     kalyptusCxxToSmoke.pm   1.103


--- kdebindings/kalyptus/ChangeLog  #1.57:1.58
@@ -1,2 +1,6 @@
+2004-09-10  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>
+
+ * Fixed Smoke library generation for KDE 3.1
+
 2004-09-05  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>
 

--- kdebindings/kalyptus/kalyptusCxxToSmoke.pm  #1.102:1.103
@@ -351,4 +351,7 @@
         my $hasPrivateCopyConstructor = 0;
         # Note: no need for hasPureVirtuals. $classNode{Pure} has that.
+        
+        # Hack to fix up KLed constructors in KDE 3.1
+        my $kledAmbiguousConstructor = undef;
 
         my $doPrivate = $main::doPrivate;
@@ -505,4 +508,17 @@
                 }
 
+                # Hack for fixing up KDE 3.1 KLed where the no arg constructor was \
ambiguous +                if ($classNode->{astNodeName} eq 'KLed' and $name eq \
'KLed' && $#{$m->{ParamList}} > 0) { +                        if \
($m->{ParamList}[0]->{ArgType} =~ /QColor/ && defined \
$m->{ParamList}[0]->{DefaultValue}) { +                                \
$m->{ParamList}[0]->{DefaultValue} = undef; +                                if \
(defined $kledAmbiguousConstructor) { +                                        \
$kledAmbiguousConstructor->{ParamList}[0]->{DefaultValue} = undef; +                  \
$kledAmbiguousConstructor->{FirstDefaultParam} = 1; +                                \
} +                        } else {
+                                $kledAmbiguousConstructor = $m;
+                        }
+                }
+                
             my $argId = 0;
             my $firstDefaultParam;
@@ -697,7 +713,4 @@
         print $fh "#include <${libname}_smoke.h>\n";
         
-        # Hack - some Qt headers need qregexp, but don't include it
-        print $fh "#include <qregexp.h>\n";
-
         my @code;
         for my $node ( @$nodelist )
@@ -708,4 +721,23 @@
         map { for my $incl (keys %{$_->[2]}){ $includes{$incl}++ } } @code;
 
+        # Hack - some Qt/KDE headers need other headers included, but omit suitable \
#includes +        if (defined $includes{"qregexp.h"}) {
+            print $fh "#include <qregexp.h>\n";
+                delete $includes{"qregexp.h"};
+        }
+        if (defined $includes{"kshortcut.h"}) {
+            print $fh "#include <kshortcut.h>\n";
+                delete $includes{"kshortcut.h"};
+        } 
+        if (defined $includes{"kshortcutlist.h"}) {
+            print $fh "#include <kconfigbase.h>\n";
+            print $fh "#include <kshortcutlist.h>\n";
+                delete $includes{"kconfigbase.h"};
+                delete $includes{"kshortcutlist.h"};
+        }
+        if (defined $includes{"kaction.h"}) {
+            print $fh "#include <kaction.h>\n";
+                delete $includes{"kaction.h"};
+        }
         foreach my $incl (keys %includes) {
             die if $incl eq '';


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic