Looks like this is probably the same probable affecting me in qtruby.   I'll work on a patch.<br>Ryan<br><br><div class="gmail_quote">On Thu, Sep 2, 2010 at 8:49 PM, Chris Michael Burel <span dir="ltr"><<a href="mailto:chrisburel@gmail.com">chrisburel@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">SVN commit 1171223 by burel:<br>
<br>
When calling a method in QGlobalSpace, don't stop when you find the first smoke module that provides the method you're looking for.  Look through all smoke modules.  This was breaking when calling operator<< on a QPixmap, because that method was defined by the QtGui module.  The code would find the methods from QtCore and stop there.<br>

<br>
I think the other bindings may want this too.  I checked Ruby, and it looked incorrect to me.<br>
<br>
CCMAIL: <a href="mailto:kde-bindings@kde.org">kde-bindings@kde.org</a><br>
<br>
 M  +7 -4      QtCore4.xs<br>
<br>
<br>
--- trunk/KDE/kdebindings/perl/qtcore/src/QtCore4.xs #1171222:1171223<br>
@@ -48,21 +48,23 @@<br>
         char* classname<br>
         char* methodname<br>
     PPCODE:<br>
-        Smoke::ModuleIndex mi;<br>
+        QList<Smoke::ModuleIndex> milist;<br>
         if ( strcmp( classname, "QGlobalSpace" ) == 0 ) {<br>
             // All modules put their global functions in "QGlobalSpace".  So we<br>
             // have to use each smoke object to look for this method.<br>
             for (int i = 0; i < smokeList.size(); ++i) {<br>
-                mi = smokeList.at(i)->findMethod(classname, methodname);<br>
+                Smoke::ModuleIndex mi = smokeList.at(i)->findMethod(classname, methodname);<br>
                 if( mi.smoke ) {<br>
-                    break;<br>
+                    // Found a result, add it to the return<br>
+                    milist.append(mi);<br>
                 }<br>
             }<br>
         }<br>
         else {<br>
             // qtcore_Smoke will be able to find any method not in QGlobalSpace<br>
-            mi = qtcore_Smoke->findMethod(classname, methodname);<br>
+            milist.append( qtcore_Smoke->findMethod(classname, methodname) );<br>
         }<br>
+        foreach (Smoke::ModuleIndex mi, milist) {<br>
         if ( !mi.index ) {<br>
             // empty list<br>
         }<br>
@@ -95,6 +97,7 @@<br>
                 }<br>
             }<br>
         }<br>
+        }<br>
<br>
 #// Args: none<br>
 #// Returns: an array of all classes that qtcore_Smoke knows about<br>
_______________________________________________<br>
Kde-bindings mailing list<br>
<a href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/kde-bindings" target="_blank">https://mail.kde.org/mailman/listinfo/kde-bindings</a><br>
</blockquote></div><br>