This is the mail archive of the kawa@sourceware.org mailing list for the Kawa project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Using macros in applets


How do I do that?
Trying the following:

"
(module-name 'testapplet)
(module-extends <java.applet.Applet>)

(define-syntax define-syntax-case
   (syntax-rules ()
     ((define-syntax-case name literals . parts)
      (define-syntax name
        (lambda (form)
	  (syntax-case form literals . parts))))))

(define (paint (g :: <java.awt.Graphics>)) <void>
  (invoke g 'setColor (java.awt.Color:.pink))
  (invoke g 'drawLine 0 0 50 50))

(define (init) <void> (format #t "called init.~%~!"))
(define (start) <void> (format #t "called start.~%~!"))
(define (stop) <void> (format #t "called stop.~%~!"))
(define (destroy) <void> (format #t "called destroy.~%~!"))
"


I get this error when running appletviewer:
java.lang.VerifyError: (class: testapplet$frame, method: <init> signature: ()V) Incompatible type for getting or setting field
        at testapplet.<init>(testapplet.scm)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at java.lang.Class.newInstance0(Class.java:355)
        at java.lang.Class.newInstance(Class.java:308)
        at sun.applet.AppletPanel.createApplet(AppletPanel.java:778)
        at sun.applet.AppletPanel.runLoader(AppletPanel.java:707)
        at sun.applet.AppletPanel.run(AppletPanel.java:361)
        at java.lang.Thread.run(Thread.java:619)






Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]