[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-08-19 8:02:12
Message-ID: 20040819080212.0E2019A8E () office ! kde ! org
[Download RAW message or body]

CVS commit by rdale: 


* A namespace such as KIO:: can be spread over several header files, the source 
names are now kept in a property list so that all the includes can be generated. 


  M +15 -10    ChangeLog   1.55
  M +5 -1      kalyptus   1.83
  M +8 -1      kalyptusCxxToSmoke.pm   1.100


--- kdebindings/kalyptus/ChangeLog  #1.54:1.55
@@ -1,17 +1,22 @@
+2004-08-19  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>
+
+ * A namespace such as KIO:: can be spread over several header files, the source
+   names are now kept in a property list so that all the includes can be generated.
+
 2004-07-26  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>
 
-        * QMap and QPair template types such as 'QMap<QCString, DCOPRef>' with an 
-          embedded comma, were not being correctly normalised. A space was left in 
-          the smoke type.
+ * QMap and QPair template types such as 'QMap<QCString, DCOPRef>' with an 
+   embedded comma, were not being correctly normalised. A space was left in 
+   the smoke type.
 
 2004-07-25  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>
 
-        * When the Smoke code for accessing an enum was generated, it was assuming
-          that the enum was in the same source file as the class. This doesn't work
-          for namespaces like KIO:: where enums can be spread over several source
-          files.
-        * The solution is to add a source file property to each enum, and when the
-          accessor code for the enum is generated a suitable include can be added.
-        * Fixes problem reported by Luca Perossa
+ * When the Smoke code for accessing an enum was generated, it was assuming
+   that the enum was in the same source file as the class. This doesn't work
+   for namespaces like KIO:: where enums can be spread over several source
+   files.
+ * The solution is to add a source file property to each enum, and when the
+   accessor code for the enum is generated a suitable include can be added.
+ * Fixes problem reported by Luca Perossa
 
         CCMAIL: kde-bindings@kde.org

--- kdebindings/kalyptus/kalyptus  #1.82:1.83
@@ -1230,4 +1230,8 @@
         $node->AddProp( "Compound", 1 );
         $node->AddProp( "Source", $cSourceNode );
+        
+        if ($cNodeType eq 'namespace') {
+                $node->AddPropList( "Sources", $cSourceNode );
+        }
 
         $node->AddProp( "KidAccess", $access );

--- kdebindings/kalyptus/kalyptusCxxToSmoke.pm  #1.99:1.100
@@ -1391,5 +1391,12 @@
            $switchCode .= "    (void)obj;\n";
             $methodCode .= "public:\n";
-        } elsif(! $classNode->{BindingDerives}) {
+                my $s;
+                for my $sn( @{$classNode->{Sources}} ) {
+                if ( ($s = $sn->{astNodeName}) !~ \
s!.*(kio/|kparts/|dom/|kabc/|ksettings/|kjs/|ktexteditor/|kdeprint/|kdesu/)(.*)!$1$2!m \
) { +                        $s =~ s!.*/(.*)!$1!m;
+                        }
+                        $addInclude{ $s } = 1;
+                }
+         } elsif(! $classNode->{BindingDerives}) {
             $methodCode .= "private:\n";
             $methodCode .= "    $className *xthis;\n";


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

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