Thanks Ben.

Funny.  Would it be too geeky to say no?

I just did it to see how it might turn out and to see what other people
would build with it.

Hear hear for open source.


2010/1/12 Ben Bederson <beder...@gmail.com>

> Wow!  That is amazing.  Very cool!  Do you have a specific project in
> mind that you are building this out for?
>
>  - Ben
>
> On Jan 10, 7:31 pm, allain <allain.lalo...@gmail.com> wrote:
> > As for now, no documentation exists. It is the first checkin on that
> > branch after all :).
> >
> > Since there's no fancy JavaScript going on, I don't see why you
> > couldn't invoke it directly from GWT. I haven't really considered
> > packaging it for GWT, but now that you say it, it makes perfect sense.
> >
> > It has not yet been optimized at all, so if you do plan on making use
> > of it, you may want to take that into account.
> >
> > Good luck,
> > Allain
> >
> > On Jan 10, 7:20 pm, Ben Suter <ben.su...@gmail.com> wrote:
> >
> > > Hi Allain,
> > > I'm glad someone has tackled this - it's been a few years since I used
> > > (the Java version of) Piccolo, but back then I was curious how long
> > > until it would be ported to JS. I've embedded Piccolo ZUI's in the
> > > browser as applets, but would love to go the plugin-free route. I
> > > checked out your examples. Do you have any documentation on how to get
> > > started using your library? In particular, do you think it would work
> > > well with GWT / do you think you might package it as a library for
> > > GWT?
> >
> > > Thanks,
> > > Ben.
> >
> > > On Jan 4, 12:16 pm, piccol...@googlecode.com wrote:
> >
> > > > Revision: 922
> > > > Author: allain.lalonde
> > > > Date: Mon Jan  4 10:15:57 2010
> > > > Log: Initial Piccolo2d port to Javascript.
> >
> > > > It makes use of the canvas tag, which limits it to Chrome, Safari and
>
> > > > Firefox for the time being, but there exist wrappers for IE
> (excanvas) and
> > > > there's talk about supporting the HTML5 canvas tag in the next
> version.
> >
> > > > It currently supports the core functionality:
> > > > - scene construction
> > > > - activities.html
> > > > - events (mouseup, mousedown, click, mousemove)
> >
> > > > I have tried (by using some John Resig code) to retain the basic
> "feel" of
> > > > Piccolo2d even though JavaScript doesn't quite support object
> inheritance
> > > > in the way most OO languages do.
> >
> > > > If you want to see it in action, take a look at
> http://www.machete.ca/piccolo2d.js/andbrowseto the examples.css
> >
> > > > There are still definitely some things missing so far, but I think
> this is
> > > > a good start.
> >
> > > >http://code.google.com/p/piccolo2d/source/detail?r=922
> >
> > > > Added:
> > > >   /piccolo2d.js
> > > >   /piccolo2d.js/branches
> > > >   /piccolo2d.js/tags
> > > >   /piccolo2d.js/trunk
> > > >   /piccolo2d.js/trunk/examples
> > > >   /piccolo2d.js/trunk/examples/activities.html
> > > >   /piccolo2d.js/trunk/examples/calendar.html
> > > >   /piccolo2d.js/trunk/examples/events.html
> > > >   /piccolo2d.js/trunk/examples/examples.css
> > > >   /piccolo2d.js/trunk/examples/hierarchy.html
> > > >   /piccolo2d.js/trunk/examples/sticky-nodes.html
> > > >   /piccolo2d.js/trunk/extends.js
> > > >   /piccolo2d.js/trunk/lib
> > > >   /piccolo2d.js/trunk/lib/javascript-1.6.js
> > > >   /piccolo2d.js/trunk/lib/jquery-1.3.2.min.js
> > > >   /piccolo2d.js/trunk/lib/qunit.css
> > > >   /piccolo2d.js/trunk/lib/qunit.js
> > > >   /piccolo2d.js/trunk/license-piccolo.txt
> > > >   /piccolo2d.js/trunk/piccolo2d.js
> > > >   /piccolo2d.js/trunk/test.html
> >
> > > > =======================================
> > > > --- /dev/null
> > > > +++ /piccolo2d.js/trunk/examples/activities.html        Mon Jan  4
> 10:15:57 2010
> > > > @@ -0,0 +1,97 @@
> > > > +<!--
> > > > +Copyright (c) 2008-2009, Piccolo2D project,http://piccolo2d.org
> > > > +Copyright (c) 1998-2008, University of Maryland
> > > > +All rights reserved.
> > > > +
> > > > +Redistribution and use in source and binary forms, with or without
> > > > modification, are permitted provided
> > > > +that the following conditions are met:
> > > > +
> > > > +Redistributions of source code must retain the above copyright
> notice,
> > > > this list of conditions
> > > > +and the following disclaimer.
> > > > +
> > > > +Redistributions in binary form must reproduce the above copyright
> notice,
> > > > this list of conditions
> > > > +and the following disclaimer in the documentation and/or other
> materials
> > > > provided with the
> > > > +distribution.
> > > > +
> > > > +None of the name of the University of Maryland, the name of the
> Piccolo2D
> > > > project, or the names of its
> > > > +contributors may be used to endorse or promote products derived from
> this
> > > > software without specific
> > > > +prior written permission.
> > > > +
> > > > +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
> "AS
> > > > IS" AND ANY EXPRESS OR IMPLIED
> > > > +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
>
> > > > MERCHANTABILITY AND FITNESS FOR A
> > > > +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
> OWNER
> > > > OR CONTRIBUTORS BE LIABLE FOR
> > > > +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> CONSEQUENTIAL
> > > > DAMAGES (INCLUDING, BUT NOT
> > > > +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> USE,
> > > > DATA, OR PROFITS; OR BUSINESS
> > > > +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
> IN
> > > > CONTRACT, STRICT LIABILITY, OR
> > > > +TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE USE
> > > > OF THIS SOFTWARE, EVEN IF
> > > > +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> > > > +-->
> > > > +<html>
> > > > +  <head>
> > > > +    <title>Activities Example - Piccolo2d.js</title>
> > > > +    <link rel="stylesheet" href="examples.css" />
> > > > +  </head>
> > > > +  <body>
> > > > +  <canvas id="canvas" width="400" height="400">
> > > > +    <p>No Canvas Support in this browser.</p>
> > > > +  </canvas>
> > > > +  <script type="text/javascript"
> src="../lib/javascript-1.6.js"></script>
> > > > +  <script type="text/javascript"
> src="../lib/jquery-1.3.2.min.js"></script>
> > > > +  <script type="text/javascript" src="../extends.js"></script>
> > > > +  <script type="text/javascript" src="../piccolo2d.js"></script>
> > > > +  <script type="text/javascript">
> > > > +    // To deal with the case where firebug's console is not
> available'
> > > > +    if (typeof console == "undefined")
> > > > +      console = {log: function() {}};
> > > > +
> > > > +    // Example usage
> > > > +    var pCanvas = new PCanvas(document.getElementById('canvas'));
> > > > +
> > > > +    with ({
> > > > +      camera: pCanvas.camera,
> > > > +      layer : pCanvas.camera.layers[0],
> > > > +      scheduler: pCanvas.camera.getRoot().scheduler
> > > > +    }) {
> > > > +      var squareContainer = new PNode({
> > > > +        fillStyle: "rgb(200, 200, 200)",
> > > > +        bounds: new PBounds(0, 0, 400, 400)
> > > > +      })
> > > > +
> > > > +      for (var i=0; i<100; i++) {
> > > > +        var randomColor = "rgb("+(Math.round(Math.random()*254)) +
> ","
> > > > +(Math.round(Math.random()*254)) + ","
> +(Math.round(Math.random()*254))
> > > > +")";
> > > > +        squareContainer.addChild(new PNode({
> > > > +          fillStyle: randomColor,
> > > > +          bounds: new PBounds(0, 0, 10, 10)
> > > > +        }));
> > > > +      }
> > > > +      layer.addChild(squareContainer);
> > > > +
> > > > +      var step = 0;
> > > > +      scheduler.schedule(new PActivity({
> > > > +        init: function() {
> > > > +          this.lastCalled = 0;
> > > > +        },
> > > > +
> > > > +        step: function() {
> > > > +          if (scheduler.globalTime - this.lastCalled > 1500) {
> > > > +            for (var i=0; i<squareContainer.children.length; i++) {
> > > > +              var x = Math.round(Math.random()* 380) + 10;
> > > > +              var y = Math.round(Math.random()* 380) + 10;
> > > > +              squareContainer.children[i].animateToTransform(new
> > > > PTransform().translate(x, y), 1000);
> > > > +            }
> > > > +
> > > > +            this.lastCalled = scheduler.globalTime;
> > > > +          }
> > > > +
> > > > +          return true;
> > > > +        }
> > > > +      }));
> > > > +    }
> > > > +  </script>
> > > > +  <h1>Activity Example</h1>
> > > > +  <p>This example contains:</p>
> > > > +  <ul>
> > > > +    <li>100 Rectangles being scheduled every 1.5 seconds for 1
> second.</li>
> > > > +  </ul>
> > > > +</body>
> > > > +</html>
> > > > =======================================
> > > > --- /dev/null
> > > > +++ /piccolo2d.js/trunk/examples/calendar.html  Mon Jan  4 10:15:57
> 2010
> > > > @@ -0,0 +1,183 @@
> > > > +<!--
> > > > +Copyright (c) 2008-2009, Piccolo2D project,http://piccolo2d.org
> > > > +Copyright (c) 1998-2008, University of Maryland
> > > > +All rights reserved.
> > > > +
> > > > +Redistribution and use in source and binary forms, with or without
> > > > modification, are permitted provided
> > > > +that the following conditions are met:
> > > > +
> > > > +Redistributions of source code must retain the above copyright
> notice,
> > > > this list of conditions
> > > > +and the following disclaimer.
> > > > +
> > > > +Redistributions in binary form must reproduce the above copyright
> notice,
> > > > this list of conditions
> > > > +and the following disclaimer in the documentation and/or other
> materials
> > > > provided with the
> > > > +distribution.
> > > > +
> > > > +None of the name of the University of Maryland, the name of the
> Piccolo2D
> > > > project, or the names of its
> > > > +contributors may be used to endorse or promote products derived from
> this
> > > > software without specific
> > > > +prior written permission.
> > > > +
> > > > +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
> "AS
> > > > IS" AND ANY EXPRESS OR IMPLIED
> > > > +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
>
> > > > MERCHANTABILITY AND FITNESS FOR A
> > > > +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
> OWNER
> > > > OR CONTRIBUTORS BE LIABLE FOR
> > > > +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> CONSEQUENTIAL
> > > > DAMAGES (INCLUDING, BUT NOT
> > > > +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> USE,
> > > > DATA, OR PROFITS; OR BUSINESS
> > > > +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
> IN
> > > > CONTRACT, STRICT LIABILITY, OR
> > > > +TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE USE
> > > > OF THIS SOFTWARE, EVEN IF
> > > > +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> > > > +--><html>
> > > > +    <head>
> > > > +        <title>Calendar Example - Piccolo2d.js</title>
> > > > +        <link rel="stylesheet" href="examples.css" />
> > > > +    </head>
> > > > +    <body>
> > > > +    <canvas id="canvas" width="800" height="600">
> > > > +        <p>No Canvas
> >
> > ...
> >
> > read more ยป
>
> --
> Piccolo2D Developers Group:
> http://groups.google.com/group/piccolo2d-dev?hl=en
>
-- 
Piccolo2D Developers Group: http://groups.google.com/group/piccolo2d-dev?hl=en

Reply via email to