Folks,

Hearkening back to my NextStep days, I took a dive into Cappuccino today.
Yep... Obj-J is just like Obj-C and Cappuccino faithfully captures AppKit
goodness.

I've integrated Lift with Cappuccino.  The integration points are as
follows:

   1. A Lift application serves the Cappuccino application.  This means that
   one could mix a "web style" Lift based app with a could of "app style"
   Cappuccino-based application pages.
   2. Cappuccino can initiate calls to Lift via Ajax.  The call from Cap
   looks like: performAjaxCall([input stringValue]); where there's been a
   binding a Lift JSON message handler to the performAjaxCall function.  The
   binding looks like:
   Script(
       Function("performAjaxCall", List("param"), JsonVar.is._1("hello",
   JsVar("param"))) &
       JsonVar.is._2)
   3. Lift can initiate calls into a Cappuccino app via Lift's Comet
   support.  Here's the Lift code that's necessary to create a clock that ticks
   every 3 seconds in the Cap app:
     override def highPriority = {
       case 'Ping =>
         partialUpdate(currentTime)
         ActorPing.schedule(this, 'Ping , 3 seconds)
     }

     def currentTime: JsCmd = JsRaw("clockCallback("+(""+now).encJs+");")
   Plus the following line that must appear in the page that contains the
   Cap app:
   <lift:comet type="Clock"/>

A running version of the Lift/Cappuccino integrated app can be found at
http://frothy.liftweb.net/

The source can be found at http://github.com/dpp/Frothy/tree/master  (please
don't laugh at/vomit on my ObjJ code... it's been 15 years since I did
ObjC).

Thanks,

David

-- 
Lift, the simply functional web framework http://liftweb.net
Beginning Scala http://www.apress.com/book/view/1430219890
Follow me: http://twitter.com/dpp
Git some: http://github.com/dpp

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to