refactoring sound
authorAnton Epple <toni.epple@eppleton.de>
Tue, 28 May 2013 13:27:34 +0200
branchsound
changeset 116217885c601f91
parent 1161 3a1fb8e1378d
child 1163 ded9a1b4a69c
refactoring
javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5AudioEnvironment.java
javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5SoundEnvironment.java
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5AudioEnvironment.java	Tue May 28 13:27:34 2013 +0200
     1.3 @@ -0,0 +1,75 @@
     1.4 +/*
     1.5 + * To change this template, choose Tools | Templates
     1.6 + * and open the template in the editor.
     1.7 + */
     1.8 +package org.apidesign.bck2brwsr.htmlpage;
     1.9 +
    1.10 +import net.java.html.sound.AudioClip;
    1.11 +import org.apidesign.bck2brwsr.core.JavaScriptBody;
    1.12 +import org.apidesign.html.sound.spi.AudioEnvironment;
    1.13 +
    1.14 +/**
    1.15 + *
    1.16 + * @author antonepple
    1.17 + */
    1.18 +public class HTML5AudioEnvironment implements AudioEnvironment {
    1.19 +
    1.20 +    @Override
    1.21 +    public Object play(AudioClip clip, Object nativeClip) {
    1.22 +        if (nativeClip == null) {
    1.23 +            nativeClip = createNativeCLip(clip.getSource());
    1.24 +        }
    1.25 +        playImpl(nativeClip);
    1.26 +        return nativeClip;
    1.27 +    }
    1.28 +
    1.29 +    @Override
    1.30 +    public Object pause(AudioClip aThis, Object nativeClip) {
    1.31 +        if (nativeClip == null) {
    1.32 +            return null; // only can pause a cached clip
    1.33 +        }
    1.34 +        pauseImpl(nativeClip);
    1.35 +        return nativeClip;
    1.36 +    }
    1.37 +
    1.38 +    @Override
    1.39 +    public Object stop(AudioClip aThis, Object nativeClip) {
    1.40 +        if (nativeClip == null) {
    1.41 +            return null; // only can stop a cached clip
    1.42 +        }
    1.43 +        stopImpl(nativeClip);
    1.44 +        return nativeClip;
    1.45 +    }
    1.46 +
    1.47 +    @Override
    1.48 +    public Object setVolume(AudioClip aThis, int volume, Object cached) {
    1.49 +        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    1.50 +    }
    1.51 +
    1.52 +    @Override
    1.53 +    public Object playFrom(AudioClip clip, int seconds, Object nativeClip) {
    1.54 +        if (nativeClip == null) {
    1.55 +            nativeClip = createNativeCLip(clip.getSource());
    1.56 +        }
    1.57 +        playFromImpl(nativeClip);
    1.58 +        return nativeClip;
    1.59 +    }
    1.60 +
    1.61 +    @JavaScriptBody(args = "nativeClip", body = "nativeClip.play()")
    1.62 +    private native void playImpl(Object nativeClip);
    1.63 +
    1.64 +    @JavaScriptBody(args = "nativeClip", body = "nativeClip.pause(), nativeClip.currentTime=0;")
    1.65 +    private void stopImpl(Object nativeClip) {
    1.66 +    }
    1.67 +
    1.68 +    @JavaScriptBody(args = "nativeClip", body = "nativeClip.pause();")
    1.69 +    private void pauseImpl(Object nativeClip) {
    1.70 +    }
    1.71 +
    1.72 +    @JavaScriptBody(args = "nativeClip", body = "nativeClip.currentTime=0; nativeClip.play();")
    1.73 +    private void playFromImpl(Object nativeClip) {
    1.74 +    }
    1.75 +
    1.76 +    @JavaScriptBody(args = {"src"}, body = "var clip = new Audio();clip.src=src; return clip;")
    1.77 +    private native Object createNativeCLip(String src);
    1.78 +}
     2.1 --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5SoundEnvironment.java	Tue May 28 13:26:37 2013 +0200
     2.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.3 @@ -1,75 +0,0 @@
     2.4 -/*
     2.5 - * To change this template, choose Tools | Templates
     2.6 - * and open the template in the editor.
     2.7 - */
     2.8 -package org.apidesign.bck2brwsr.htmlpage;
     2.9 -
    2.10 -import net.java.html.sound.AudioClip;
    2.11 -import org.apidesign.bck2brwsr.core.JavaScriptBody;
    2.12 -import org.apidesign.html.sound.spi.AudioEnvironment;
    2.13 -
    2.14 -/**
    2.15 - *
    2.16 - * @author antonepple
    2.17 - */
    2.18 -public class HTML5AudioEnvironment implements AudioEnvironment {
    2.19 -
    2.20 -    @Override
    2.21 -    public Object play(AudioClip clip, Object nativeClip) {
    2.22 -        if (nativeClip == null) {
    2.23 -            nativeClip = createNativeCLip(clip.getSource());
    2.24 -        }
    2.25 -        playImpl(nativeClip);
    2.26 -        return nativeClip;
    2.27 -    }
    2.28 -
    2.29 -    @Override
    2.30 -    public Object pause(AudioClip aThis, Object nativeClip) {
    2.31 -        if (nativeClip == null) {
    2.32 -            return null; // only can pause a cached clip
    2.33 -        }
    2.34 -        pauseImpl(nativeClip);
    2.35 -        return nativeClip;
    2.36 -    }
    2.37 -
    2.38 -    @Override
    2.39 -    public Object stop(AudioClip aThis, Object nativeClip) {
    2.40 -        if (nativeClip == null) {
    2.41 -            return null; // only can stop a cached clip
    2.42 -        }
    2.43 -        stopImpl(nativeClip);
    2.44 -        return nativeClip;
    2.45 -    }
    2.46 -
    2.47 -    @Override
    2.48 -    public Object setVolume(AudioClip aThis, int volume, Object cached) {
    2.49 -        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    2.50 -    }
    2.51 -
    2.52 -    @Override
    2.53 -    public Object playFrom(AudioClip clip, int seconds, Object nativeClip) {
    2.54 -        if (nativeClip == null) {
    2.55 -            nativeClip = createNativeCLip(clip.getSource());
    2.56 -        }
    2.57 -        playFromImpl(nativeClip);
    2.58 -        return nativeClip;
    2.59 -    }
    2.60 -
    2.61 -    @JavaScriptBody(args = "nativeClip", body = "nativeClip.play()")
    2.62 -    private native void playImpl(Object nativeClip);
    2.63 -
    2.64 -    @JavaScriptBody(args = "nativeClip", body = "nativeClip.pause(), nativeClip.currentTime=0;")
    2.65 -    private void stopImpl(Object nativeClip) {
    2.66 -    }
    2.67 -
    2.68 -    @JavaScriptBody(args = "nativeClip", body = "nativeClip.pause();")
    2.69 -    private void pauseImpl(Object nativeClip) {
    2.70 -    }
    2.71 -
    2.72 -    @JavaScriptBody(args = "nativeClip", body = "nativeClip.currentTime=0; nativeClip.play();")
    2.73 -    private void playFromImpl(Object nativeClip) {
    2.74 -    }
    2.75 -
    2.76 -    @JavaScriptBody(args = {"src"}, body = "var clip = new Audio();clip.src=src; return clip;")
    2.77 -    private native Object createNativeCLip(String src);
    2.78 -}