Ugh, I hate it when I make a fool of myself and realize the answer to a question 1 minute after posting it, even when wrestling with it for an hour beforehand...
The reason the example doesn't work is that the method is of a different arity than the one I'm attempting to call. Still doesn't explain why it's failing with the same error when I try to actually use it on a Swing object, but I'll try to isolate that condition separately... Sorry for the pointless post. Thanks, -Luke On Apr 1, 8:29 pm, levand <luke.vanderh...@gmail.com> wrote: > Isn't this supposed to work? > > (defn create-layout [] > (proxy [java.awt.LayoutManager] [] > (addLayoutComponent [name comp] > (println "Called addLayoutComponent")) > (removeLayoutComponent [comp] > (println "Called removeLayoutComponent")) > (preferredLayoutSize [container] > (println "Called preferredLayoutSize")) > (minimumLayoutSize [container] > (println "Called minimumLayoutSize")) > (layoutContainer [container] > (println "Called layoutContainer")))) > > user> (def layout (create-layout)) > #'user/layout > user> (instance? java.awt.LayoutManager layout) > true > user> (. layout preferredLayoutSize) > ; Evaluation aborted. java.lang.IllegalArgumentException: No matching > field found: preferredLayoutSize for class > clojure.proxy.java.lang.Object$LayoutManager (NO_SOURCE_FILE:0) > [Thrown class clojure.lang.Compiler$CompilerException] > > I get the same thing for all its methods, when I try to call them > manually and also when I hook it up to a Swing container. > > I'd greatly appreciate it if anyone has any insight regarding what is > going on... > > Thanks, > -Luke --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---