Presentation.deploy.js 134 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287
  1. smalltalk.addPackage('Presentation');
  2. smalltalk.addClass('Presentation', smalltalk.Widget, ['currentSlide', 'slides'], 'Presentation');
  3. smalltalk.addMethod(
  4. smalltalk.method({
  5. selector: "author",
  6. fn: function (){
  7. var self=this;
  8. return smalltalk.withContext(function($ctx1) {
  9. return "John Smith";
  10. }, function($ctx1) {$ctx1.fill(self,"author",{},smalltalk.Presentation)})},
  11. messageSends: []}),
  12. smalltalk.Presentation);
  13. smalltalk.addMethod(
  14. smalltalk.method({
  15. selector: "currentSlide",
  16. fn: function (){
  17. var self=this;
  18. return smalltalk.withContext(function($ctx1) {
  19. var $1;
  20. $1=self["@currentSlide"];
  21. return $1;
  22. }, function($ctx1) {$ctx1.fill(self,"currentSlide",{},smalltalk.Presentation)})},
  23. messageSends: []}),
  24. smalltalk.Presentation);
  25. smalltalk.addMethod(
  26. smalltalk.method({
  27. selector: "currentSlide:",
  28. fn: function (aSlide){
  29. var self=this;
  30. return smalltalk.withContext(function($ctx1) {
  31. self["@currentSlide"]=aSlide;
  32. return self}, function($ctx1) {$ctx1.fill(self,"currentSlide:",{aSlide:aSlide},smalltalk.Presentation)})},
  33. messageSends: []}),
  34. smalltalk.Presentation);
  35. smalltalk.addMethod(
  36. smalltalk.method({
  37. selector: "currentSlideIndex",
  38. fn: function (){
  39. var self=this;
  40. return smalltalk.withContext(function($ctx1) {
  41. var $1;
  42. $1=_st(self._slides())._indexOf_ifAbsent_(self._currentSlide(),(function(){
  43. return smalltalk.withContext(function($ctx2) {
  44. return (1);
  45. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  46. return $1;
  47. }, function($ctx1) {$ctx1.fill(self,"currentSlideIndex",{},smalltalk.Presentation)})},
  48. messageSends: ["indexOf:ifAbsent:", "currentSlide", "slides"]}),
  49. smalltalk.Presentation);
  50. smalltalk.addMethod(
  51. smalltalk.method({
  52. selector: "description",
  53. fn: function (){
  54. var self=this;
  55. return smalltalk.withContext(function($ctx1) {
  56. return "A presentation written in Jtalk";
  57. }, function($ctx1) {$ctx1.fill(self,"description",{},smalltalk.Presentation)})},
  58. messageSends: []}),
  59. smalltalk.Presentation);
  60. smalltalk.addMethod(
  61. smalltalk.method({
  62. selector: "email",
  63. fn: function (){
  64. var self=this;
  65. return smalltalk.withContext(function($ctx1) {
  66. return "john@smith.com";
  67. }, function($ctx1) {$ctx1.fill(self,"email",{},smalltalk.Presentation)})},
  68. messageSends: []}),
  69. smalltalk.Presentation);
  70. smalltalk.addMethod(
  71. smalltalk.method({
  72. selector: "initSlides",
  73. fn: function (){
  74. var self=this;
  75. return smalltalk.withContext(function($ctx1) {
  76. self["@slides"]=_st(self._slideClasses())._collect_((function(each){
  77. return smalltalk.withContext(function($ctx2) {
  78. return _st(each)._on_(self);
  79. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  80. return self}, function($ctx1) {$ctx1.fill(self,"initSlides",{},smalltalk.Presentation)})},
  81. messageSends: ["collect:", "on:", "slideClasses"]}),
  82. smalltalk.Presentation);
  83. smalltalk.addMethod(
  84. smalltalk.method({
  85. selector: "moveAt:",
  86. fn: function (anInteger){
  87. var self=this;
  88. var next;
  89. return smalltalk.withContext(function($ctx1) {
  90. var $1;
  91. next=_st(self._slides())._at_ifAbsent_(anInteger,(function(){
  92. return smalltalk.withContext(function($ctx2) {
  93. return nil;
  94. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  95. $1=next;
  96. if(($receiver = $1) == nil || $receiver == undefined){
  97. $1;
  98. } else {
  99. self["@currentSlide"]=next;
  100. self["@currentSlide"];
  101. _st(next)._show();
  102. };
  103. return self}, function($ctx1) {$ctx1.fill(self,"moveAt:",{anInteger:anInteger,next:next},smalltalk.Presentation)})},
  104. messageSends: ["at:ifAbsent:", "slides", "ifNotNil:", "show"]}),
  105. smalltalk.Presentation);
  106. smalltalk.addMethod(
  107. smalltalk.method({
  108. selector: "nextSlide",
  109. fn: function (){
  110. var self=this;
  111. var next;
  112. return smalltalk.withContext(function($ctx1) {
  113. var $1,$2;
  114. $1=self._currentSlide();
  115. if(($receiver = $1) == nil || $receiver == undefined){
  116. $1;
  117. } else {
  118. next=_st(self._slides())._at_ifAbsent_(_st(self._currentSlideIndex()).__plus((1)),(function(){
  119. return smalltalk.withContext(function($ctx2) {
  120. return nil;
  121. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  122. next;
  123. $2=next;
  124. if(($receiver = $2) == nil || $receiver == undefined){
  125. $2;
  126. } else {
  127. self["@currentSlide"]=next;
  128. self["@currentSlide"];
  129. _st(next)._show();
  130. };
  131. };
  132. return self}, function($ctx1) {$ctx1.fill(self,"nextSlide",{next:next},smalltalk.Presentation)})},
  133. messageSends: ["ifNotNil:", "at:ifAbsent:", "+", "currentSlideIndex", "slides", "show", "currentSlide"]}),
  134. smalltalk.Presentation);
  135. smalltalk.addMethod(
  136. smalltalk.method({
  137. selector: "previousSlide",
  138. fn: function (){
  139. var self=this;
  140. var next;
  141. return smalltalk.withContext(function($ctx1) {
  142. var $1,$2;
  143. $1=self._currentSlide();
  144. if(($receiver = $1) == nil || $receiver == undefined){
  145. $1;
  146. } else {
  147. next=_st(self._slides())._at_ifAbsent_(_st(self._currentSlideIndex()).__minus((1)),(function(){
  148. return smalltalk.withContext(function($ctx2) {
  149. return nil;
  150. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  151. next;
  152. $2=next;
  153. if(($receiver = $2) == nil || $receiver == undefined){
  154. $2;
  155. } else {
  156. self["@currentSlide"]=next;
  157. self["@currentSlide"];
  158. _st(next)._show();
  159. };
  160. };
  161. return self}, function($ctx1) {$ctx1.fill(self,"previousSlide",{next:next},smalltalk.Presentation)})},
  162. messageSends: ["ifNotNil:", "at:ifAbsent:", "-", "currentSlideIndex", "slides", "show", "currentSlide"]}),
  163. smalltalk.Presentation);
  164. smalltalk.addMethod(
  165. smalltalk.method({
  166. selector: "renderOn:",
  167. fn: function (html){
  168. var self=this;
  169. return smalltalk.withContext(function($ctx1) {
  170. var $1,$2,$3,$4;
  171. $1=_st(html)._style();
  172. _st($1)._type_("text/css");
  173. $2=_st($1)._with_(self._style());
  174. $3=_st(html)._div();
  175. _st($3)._id_("slides");
  176. $4=_st($3)._with_((function(){
  177. return smalltalk.withContext(function($ctx2) {
  178. return self._renderSlidesOn_(html);
  179. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  180. return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.Presentation)})},
  181. messageSends: ["type:", "style", "with:", "id:", "div", "renderSlidesOn:"]}),
  182. smalltalk.Presentation);
  183. smalltalk.addMethod(
  184. smalltalk.method({
  185. selector: "renderSlidesOn:",
  186. fn: function (html){
  187. var self=this;
  188. return smalltalk.withContext(function($ctx1) {
  189. var $1;
  190. _st(self._slides())._do_((function(each){
  191. return smalltalk.withContext(function($ctx2) {
  192. return _st(each)._renderOn_(html);
  193. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  194. $1=self["@currentSlide"];
  195. if(($receiver = $1) == nil || $receiver == undefined){
  196. self["@currentSlide"]=_st(self._slides())._first();
  197. self["@currentSlide"];
  198. } else {
  199. $1;
  200. };
  201. self._showCurrentSlide();
  202. return self}, function($ctx1) {$ctx1.fill(self,"renderSlidesOn:",{html:html},smalltalk.Presentation)})},
  203. messageSends: ["do:", "renderOn:", "slides", "ifNil:", "first", "showCurrentSlide"]}),
  204. smalltalk.Presentation);
  205. smalltalk.addMethod(
  206. smalltalk.method({
  207. selector: "showCurrentSlide",
  208. fn: function (){
  209. var self=this;
  210. return smalltalk.withContext(function($ctx1) {
  211. var $1;
  212. $1=self._currentSlide();
  213. if(($receiver = $1) == nil || $receiver == undefined){
  214. $1;
  215. } else {
  216. _st(".slide"._asJQuery())._hide();
  217. _st(_st("#".__comma(_st(self._currentSlide())._id()))._asJQuery())._show();
  218. _st("title"._asJQuery())._text_(_st(_st(self._title()).__comma(" - ")).__comma(_st(self._currentSlide())._id()));
  219. };
  220. return self}, function($ctx1) {$ctx1.fill(self,"showCurrentSlide",{},smalltalk.Presentation)})},
  221. messageSends: ["ifNotNil:", "hide", "asJQuery", "show", ",", "id", "currentSlide", "text:", "title"]}),
  222. smalltalk.Presentation);
  223. smalltalk.addMethod(
  224. smalltalk.method({
  225. selector: "slideClasses",
  226. fn: function (){
  227. var self=this;
  228. return smalltalk.withContext(function($ctx1) {
  229. var $1;
  230. $1=self._subclassResponsibility();
  231. return $1;
  232. }, function($ctx1) {$ctx1.fill(self,"slideClasses",{},smalltalk.Presentation)})},
  233. messageSends: ["subclassResponsibility"]}),
  234. smalltalk.Presentation);
  235. smalltalk.addMethod(
  236. smalltalk.method({
  237. selector: "slideTransition",
  238. fn: function (){
  239. var self=this;
  240. return smalltalk.withContext(function($ctx1) {
  241. return "fade";
  242. }, function($ctx1) {$ctx1.fill(self,"slideTransition",{},smalltalk.Presentation)})},
  243. messageSends: []}),
  244. smalltalk.Presentation);
  245. smalltalk.addMethod(
  246. smalltalk.method({
  247. selector: "slides",
  248. fn: function (){
  249. var self=this;
  250. return smalltalk.withContext(function($ctx1) {
  251. var $1,$2;
  252. $1=self["@slides"];
  253. if(($receiver = $1) == nil || $receiver == undefined){
  254. self._initSlides();
  255. } else {
  256. $1;
  257. };
  258. $2=self["@slides"];
  259. return $2;
  260. }, function($ctx1) {$ctx1.fill(self,"slides",{},smalltalk.Presentation)})},
  261. messageSends: ["ifNil:", "initSlides"]}),
  262. smalltalk.Presentation);
  263. smalltalk.addMethod(
  264. smalltalk.method({
  265. selector: "slidesDo:",
  266. fn: function (aBlockWithArg){
  267. var self=this;
  268. return smalltalk.withContext(function($ctx1) {
  269. _st(self._slides())._do_((function(aSlide){
  270. return smalltalk.withContext(function($ctx2) {
  271. return _st(aBlockWithArg)._value_(aSlide);
  272. }, function($ctx2) {$ctx2.fillBlock({aSlide:aSlide},$ctx1)})}));
  273. return self}, function($ctx1) {$ctx1.fill(self,"slidesDo:",{aBlockWithArg:aBlockWithArg},smalltalk.Presentation)})},
  274. messageSends: ["do:", "value:", "slides"]}),
  275. smalltalk.Presentation);
  276. smalltalk.addMethod(
  277. smalltalk.method({
  278. selector: "style",
  279. fn: function (){
  280. var self=this;
  281. return smalltalk.withContext(function($ctx1) {
  282. return "";
  283. }, function($ctx1) {$ctx1.fill(self,"style",{},smalltalk.Presentation)})},
  284. messageSends: []}),
  285. smalltalk.Presentation);
  286. smalltalk.addMethod(
  287. smalltalk.method({
  288. selector: "title",
  289. fn: function (){
  290. var self=this;
  291. return smalltalk.withContext(function($ctx1) {
  292. var $1;
  293. $1=_st(self._class())._title();
  294. return $1;
  295. }, function($ctx1) {$ctx1.fill(self,"title",{},smalltalk.Presentation)})},
  296. messageSends: ["title", "class"]}),
  297. smalltalk.Presentation);
  298. smalltalk.addMethod(
  299. smalltalk.method({
  300. selector: "url",
  301. fn: function (){
  302. var self=this;
  303. return smalltalk.withContext(function($ctx1) {
  304. return "http://jtalk-project.org";
  305. }, function($ctx1) {$ctx1.fill(self,"url",{},smalltalk.Presentation)})},
  306. messageSends: []}),
  307. smalltalk.Presentation);
  308. smalltalk.Presentation.klass.iVarNames = ['current'];
  309. smalltalk.addMethod(
  310. smalltalk.method({
  311. selector: "concretePresentations",
  312. fn: function (){
  313. var self=this;
  314. return smalltalk.withContext(function($ctx1) {
  315. var $1;
  316. $1=_st(self._allSubclasses())._select_((function(aPresentationClass){
  317. return smalltalk.withContext(function($ctx2) {
  318. return _st(aPresentationClass)._isConcrete();
  319. }, function($ctx2) {$ctx2.fillBlock({aPresentationClass:aPresentationClass},$ctx1)})}));
  320. return $1;
  321. }, function($ctx1) {$ctx1.fill(self,"concretePresentations",{},smalltalk.Presentation.klass)})},
  322. messageSends: ["select:", "isConcrete", "allSubclasses"]}),
  323. smalltalk.Presentation.klass);
  324. smalltalk.addMethod(
  325. smalltalk.method({
  326. selector: "concretePresentationsDo:",
  327. fn: function (aBlockWithArg){
  328. var self=this;
  329. return smalltalk.withContext(function($ctx1) {
  330. _st(self._concretePresentations())._do_(aBlockWithArg);
  331. return self}, function($ctx1) {$ctx1.fill(self,"concretePresentationsDo:",{aBlockWithArg:aBlockWithArg},smalltalk.Presentation.klass)})},
  332. messageSends: ["do:", "concretePresentations"]}),
  333. smalltalk.Presentation.klass);
  334. smalltalk.addMethod(
  335. smalltalk.method({
  336. selector: "isConcrete",
  337. fn: function (){
  338. var self=this;
  339. return smalltalk.withContext(function($ctx1) {
  340. return false;
  341. }, function($ctx1) {$ctx1.fill(self,"isConcrete",{},smalltalk.Presentation.klass)})},
  342. messageSends: []}),
  343. smalltalk.Presentation.klass);
  344. smalltalk.addMethod(
  345. smalltalk.method({
  346. selector: "title",
  347. fn: function (){
  348. var self=this;
  349. return smalltalk.withContext(function($ctx1) {
  350. return "Slides";
  351. }, function($ctx1) {$ctx1.fill(self,"title",{},smalltalk.Presentation.klass)})},
  352. messageSends: []}),
  353. smalltalk.Presentation.klass);
  354. smalltalk.addClass('ESUG2011Presentation', smalltalk.Presentation, [], 'Presentation');
  355. smalltalk.addMethod(
  356. smalltalk.method({
  357. selector: "author",
  358. fn: function (){
  359. var self=this;
  360. return smalltalk.withContext(function($ctx1) {
  361. return "Nicolas Petton";
  362. }, function($ctx1) {$ctx1.fill(self,"author",{},smalltalk.ESUG2011Presentation)})},
  363. messageSends: []}),
  364. smalltalk.ESUG2011Presentation);
  365. smalltalk.addMethod(
  366. smalltalk.method({
  367. selector: "description",
  368. fn: function (){
  369. var self=this;
  370. return smalltalk.withContext(function($ctx1) {
  371. return "ESUG 2011, Edinburgh";
  372. }, function($ctx1) {$ctx1.fill(self,"description",{},smalltalk.ESUG2011Presentation)})},
  373. messageSends: []}),
  374. smalltalk.ESUG2011Presentation);
  375. smalltalk.addMethod(
  376. smalltalk.method({
  377. selector: "email",
  378. fn: function (){
  379. var self=this;
  380. return smalltalk.withContext(function($ctx1) {
  381. return "nico@objectfusion.fr";
  382. }, function($ctx1) {$ctx1.fill(self,"email",{},smalltalk.ESUG2011Presentation)})},
  383. messageSends: []}),
  384. smalltalk.ESUG2011Presentation);
  385. smalltalk.addMethod(
  386. smalltalk.method({
  387. selector: "slideClasses",
  388. fn: function (){
  389. var self=this;
  390. function $IntroSlide(){return smalltalk.IntroSlide||(typeof IntroSlide=="undefined"?nil:IntroSlide)}
  391. function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
  392. function $AboutSlide(){return smalltalk.AboutSlide||(typeof AboutSlide=="undefined"?nil:AboutSlide)}
  393. function $WhatIsJtalkSlide(){return smalltalk.WhatIsJtalkSlide||(typeof WhatIsJtalkSlide=="undefined"?nil:WhatIsJtalkSlide)}
  394. function $JtalkFeaturesSlide(){return smalltalk.JtalkFeaturesSlide||(typeof JtalkFeaturesSlide=="undefined"?nil:JtalkFeaturesSlide)}
  395. function $WorkspaceSlide(){return smalltalk.WorkspaceSlide||(typeof WorkspaceSlide=="undefined"?nil:WorkspaceSlide)}
  396. function $IDESlide(){return smalltalk.IDESlide||(typeof IDESlide=="undefined"?nil:IDESlide)}
  397. function $CountersSlide(){return smalltalk.CountersSlide||(typeof CountersSlide=="undefined"?nil:CountersSlide)}
  398. function $JtalkAndJavascriptSlide(){return smalltalk.JtalkAndJavascriptSlide||(typeof JtalkAndJavascriptSlide=="undefined"?nil:JtalkAndJavascriptSlide)}
  399. function $JtalkAndJavascriptSlide2(){return smalltalk.JtalkAndJavascriptSlide2||(typeof JtalkAndJavascriptSlide2=="undefined"?nil:JtalkAndJavascriptSlide2)}
  400. function $JtalkAndJavascriptSlide3(){return smalltalk.JtalkAndJavascriptSlide3||(typeof JtalkAndJavascriptSlide3=="undefined"?nil:JtalkAndJavascriptSlide3)}
  401. function $JtalkAndJavascriptSlide4(){return smalltalk.JtalkAndJavascriptSlide4||(typeof JtalkAndJavascriptSlide4=="undefined"?nil:JtalkAndJavascriptSlide4)}
  402. function $JtalkAndCLI(){return smalltalk.JtalkAndCLI||(typeof JtalkAndCLI=="undefined"?nil:JtalkAndCLI)}
  403. function $JtalkAndNode(){return smalltalk.JtalkAndNode||(typeof JtalkAndNode=="undefined"?nil:JtalkAndNode)}
  404. function $JtalkAndNode2(){return smalltalk.JtalkAndNode2||(typeof JtalkAndNode2=="undefined"?nil:JtalkAndNode2)}
  405. function $JtalkAndNode3(){return smalltalk.JtalkAndNode3||(typeof JtalkAndNode3=="undefined"?nil:JtalkAndNode3)}
  406. function $JtalkAndWebOS(){return smalltalk.JtalkAndWebOS||(typeof JtalkAndWebOS=="undefined"?nil:JtalkAndWebOS)}
  407. function $JtalkAndEnyo(){return smalltalk.JtalkAndEnyo||(typeof JtalkAndEnyo=="undefined"?nil:JtalkAndEnyo)}
  408. function $ContributionsSlide(){return smalltalk.ContributionsSlide||(typeof ContributionsSlide=="undefined"?nil:ContributionsSlide)}
  409. return smalltalk.withContext(function($ctx1) {
  410. var $2,$3,$1;
  411. $2=_st($Array())._new();
  412. _st($2)._add_($IntroSlide());
  413. _st($2)._add_($AboutSlide());
  414. _st($2)._add_($WhatIsJtalkSlide());
  415. _st($2)._add_($JtalkFeaturesSlide());
  416. _st($2)._add_($WorkspaceSlide());
  417. _st($2)._add_($IDESlide());
  418. _st($2)._add_($CountersSlide());
  419. _st($2)._add_($JtalkAndJavascriptSlide());
  420. _st($2)._add_($JtalkAndJavascriptSlide2());
  421. _st($2)._add_($JtalkAndJavascriptSlide3());
  422. _st($2)._add_($JtalkAndJavascriptSlide4());
  423. _st($2)._add_($JtalkAndCLI());
  424. _st($2)._add_($JtalkAndNode());
  425. _st($2)._add_($JtalkAndNode2());
  426. _st($2)._add_($JtalkAndNode3());
  427. _st($2)._add_($JtalkAndWebOS());
  428. _st($2)._add_($JtalkAndEnyo());
  429. _st($2)._add_($ContributionsSlide());
  430. $3=_st($2)._yourself();
  431. $1=$3;
  432. return $1;
  433. }, function($ctx1) {$ctx1.fill(self,"slideClasses",{},smalltalk.ESUG2011Presentation)})},
  434. messageSends: ["add:", "new", "yourself"]}),
  435. smalltalk.ESUG2011Presentation);
  436. smalltalk.addMethod(
  437. smalltalk.method({
  438. selector: "style",
  439. fn: function (){
  440. var self=this;
  441. return smalltalk.withContext(function($ctx1) {
  442. return "\x0abody {\x0a font-family: Helvetica,Arial,sans;\x0a}\x0a\x0a#slides {\x0a width: 100%;\x0a height: 100%;\x0a overflow: hidden;\x0a position: absolute;\x0a top: 0;\x0a bottom: 0;\x0a left: 0;\x0a right: 0;\x0a background: #555;\x0a}\x0a\x0a.slide {\x0a background: #fff;\x0a color: #444;\x0a text-align: left;\x0a font-size: 20px;\x0a line-height: 1.8em;\x0a height: 500px;\x0a width: 700px;\x0a padding: 60px;\x0a position: absolute;\x0a left: 50%;\x0a top: 50%;\x0a margin-left: -420px;\x0a margin-top: -320px;\x0a box-shadow: 0 0 20px #111;\x0a -moz-box-shadow: 0 0 20px #111;\x0a -webkit-box-shadow: 0 0 20px #111;\x0a}\x0a\x0a.slide.transparent {\x0a background: transparent;\x0a box-shadow: 0 0 0 none;\x0a -moz-box-shadow: 0 0 0 transparent;\x0a -webkit-box-shadow: 0 0 0 transparent;\x0a color: #fff !important;\x0a}\x0a\x0a.slide.black {\x0a background: black;\x0a background-image: -webkit-gradient(\x0a\x09linear,\x0a\x09left bottom,\x0a\x09left top,\x0a\x09color-stop(0.38, rgb(79,79,79)),\x0a\x09color-stop(0.69, rgb(33,33,33)),\x0a\x09color-stop(0.86, rgb(4,4,4))\x0a );\x0a background-image: -moz-linear-gradient(\x0a\x09center bottom,\x0a\x09rgb(79,79,79) 38%,\x0a\x09rgb(33,33,33) 69%,\x0a\x09rgb(4,4,4) 86%\x0a );\x0a color: #fff !important;\x0a}\x0a\x0a.slide.black h1, .slide.black h2, .slide.black h3,\x0a.slide.transparent h1, .slide.transparent h2, .slide.transparent h3 {\x0a color: #fff;\x0a text-shadow: 0 1px 4px #aaa;\x0a}\x0a\x0a.slide.black a, .slide.transparent a {\x0a color: #ccc;\x0a}\x0a\x0a.slide.white {\x0a color: #333 !important;\x0a}\x0a\x0a.slide.white h1, .slide.white h2, .slide.white h3 {\x0a color: #333;\x0a}\x0a\x0a.slide.white a {\x0a color: #333;\x0a}\x0a\x0a\x0a.slide h1, .slide h2, .slide h3 {\x0a color: #333;\x0a /* text-align: center; */\x0a}\x0a\x0a.slide h1 {\x0a font-family: \x22Droid Sans\x22;\x0a font-size: 36px;\x0a text-shadow: 0 1px 4px #aaa;\x0a margin-top: 30px;\x0a margin-bottom: 50px;\x0a}\x0a\x0a/* .slide ul, .slide li { */\x0a/* padding: 0; */\x0a/* margin: 0; */\x0a/* } */\x0a\x0a.slide button {\x0a font-size: 18px;\x0a}\x0a\x0a.slide a {\x0a color: #555;\x0a text-decoration: none;\x0a cursor: pointer;\x0a}\x0a\x0a.slide a:hover {\x0a color: #fff;\x0a background: #555;\x0a}\x0a\x0a.slide .right {\x0a text-align: right;\x0a}\x0a\x0a.slide .section.center {\x0a text-align: center;\x0a display: table-cell;\x0a vertical-align: middle;\x0a width: 700px;\x0a height: 500px;\x0a}\x0a\x0a.slide code {\x0a font-family: \x22Droid Sans Mono\x22;\x0a color: #444;\x0a border: 1px solid #ddd;\x0a background: #eee;\x0a border-radius: 4px;\x0a padding: 2px;\x0a font-size: 16px;\x0a}\x0a\x0a.slide .code2 {\x0a font-family: \x22Droid Sans Mono\x22;\x0a line-height: 1.2em;\x0a color: #444;\x0a padding: 2px;\x0a font-size: 16px;\x0a}\x0a\x0a\x0a.slide .CodeMirror {\x0a width: 500px;\x0a height: 300px;\x0a text-align: left;\x0a}\x0a\x0a.slide .CodeMirror-scroll {\x0a text-align: left;\x0a}\x0a\x0a.slide .fancy {\x0a margin-top: 30px;\x0a -webkit-transform: rotate(-10deg);\x0a -moz-transform: rotate(-10deg);\x0a transform: rotate(-10deg);\x0a color: red;\x0a}\x0a\x0a.slide .comment {\x0a opacity: 0.6;\x0a font-weight: normal;\x0a}\x0a\x0a.slide .red {\x0a color: red;\x0a}\x0a\x0a.slide .blue {\x0a color: blue;\x0a}\x0a\x0a.slide#WhatIsJtalk {\x0a background: white url(\x22esug2011/images/balloon.jpg\x22) 650px 50px no-repeat;\x0a}\x0a\x0a.slide#ide {\x0a background: black url(\x22esug2011/images/ide_star_wars.png\x22) center center no-repeat;\x0a}\x0a\x0a.slide#JtalkAndCLI {\x0a background: white url(\x22esug2011/images/terminal.png\x22) 620px 20px no-repeat;\x0a}\x0a\x0a.slide#JtalkAndNode {\x0a background: white url(\x22esug2011/images/nodejs.png\x22) 580px 40px no-repeat;\x0a}\x0a.slide#JtalkAndNode2 {\x0a background: white url(\x22esug2011/images/nodejs.png\x22) 580px 40px no-repeat;\x0a}\x0a\x0a.slide#JtalkAndNode3 {\x0a background: white url(\x22esug2011/images/nodejs.png\x22) 580px 40px no-repeat;\x0a}\x0a\x0a.slide#JtalkAndWebOS {\x0a background: white url(\x22esug2011/images/devices.jpg\x22) 380px 280px no-repeat;\x0a}\x0a\x0a.slide#JtalkAndEnyo {\x0a background: white url(\x22esug2011/images/enyo.png\x22) 130px 150px no-repeat;\x0a}\x0a\x0a.slide#links {\x0a background: white url(\x22esug2011/images/asterix.png\x22) 30px 130px no-repeat;\x0a}\x0a\x0a.slide#links .section {\x0a margin-left: 250px;\x0a margin-top: 200px;\x0a font-family: \x22Droid Sans\x22;\x0a font-size: 26px;\x0a font-weight: bold;\x0a}\x0a\x0a\x0a#meta {\x0a position: absolute;\x0a font-size: 12px;\x0a opacity: 0.6;\x0a bottom: 0;\x0a right: 0;\x0a z-index: 2;\x0a background: #333;\x0a text-align: right;\x0a padding: 0 10px;\x0a line-height: 1.8em;\x0a color: #eee;\x0a border-top-left-radius: 5px;\x0a}\x0a\x0a#meta:hover {\x0a opacity: 0.8;\x0a}\x0a\x0a#meta p {\x0a display: inline;\x0a padding: 0 5px;\x0a}\x0a\x0a#meta a {\x0a //background: #ccc;\x0a color: #ccc;\x0a text-decoration: none;\x0a padding: 0 5px;\x0a}\x0a\x0a.slide {\x0a \x0a}\x0a";
  443. }, function($ctx1) {$ctx1.fill(self,"style",{},smalltalk.ESUG2011Presentation)})},
  444. messageSends: []}),
  445. smalltalk.ESUG2011Presentation);
  446. smalltalk.addMethod(
  447. smalltalk.method({
  448. selector: "url",
  449. fn: function (){
  450. var self=this;
  451. return smalltalk.withContext(function($ctx1) {
  452. return "http://jtalk-project.org";
  453. }, function($ctx1) {$ctx1.fill(self,"url",{},smalltalk.ESUG2011Presentation)})},
  454. messageSends: []}),
  455. smalltalk.ESUG2011Presentation);
  456. smalltalk.ESUG2011Presentation.klass.iVarNames = ['current'];
  457. smalltalk.addMethod(
  458. smalltalk.method({
  459. selector: "isConcrete",
  460. fn: function (){
  461. var self=this;
  462. return smalltalk.withContext(function($ctx1) {
  463. return true;
  464. }, function($ctx1) {$ctx1.fill(self,"isConcrete",{},smalltalk.ESUG2011Presentation.klass)})},
  465. messageSends: []}),
  466. smalltalk.ESUG2011Presentation.klass);
  467. smalltalk.addMethod(
  468. smalltalk.method({
  469. selector: "title",
  470. fn: function (){
  471. var self=this;
  472. return smalltalk.withContext(function($ctx1) {
  473. return "Jtalk";
  474. }, function($ctx1) {$ctx1.fill(self,"title",{},smalltalk.ESUG2011Presentation.klass)})},
  475. messageSends: []}),
  476. smalltalk.ESUG2011Presentation.klass);
  477. smalltalk.addClass('FOSDEM2012Presentation', smalltalk.Presentation, [], 'Presentation');
  478. smalltalk.addMethod(
  479. smalltalk.method({
  480. selector: "author",
  481. fn: function (){
  482. var self=this;
  483. return smalltalk.withContext(function($ctx1) {
  484. return "Laurent Laffont, Johnny Thornton";
  485. }, function($ctx1) {$ctx1.fill(self,"author",{},smalltalk.FOSDEM2012Presentation)})},
  486. messageSends: []}),
  487. smalltalk.FOSDEM2012Presentation);
  488. smalltalk.addMethod(
  489. smalltalk.method({
  490. selector: "description",
  491. fn: function (){
  492. var self=this;
  493. return smalltalk.withContext(function($ctx1) {
  494. return "FOSDEM 2012, Brussels";
  495. }, function($ctx1) {$ctx1.fill(self,"description",{},smalltalk.FOSDEM2012Presentation)})},
  496. messageSends: []}),
  497. smalltalk.FOSDEM2012Presentation);
  498. smalltalk.addMethod(
  499. smalltalk.method({
  500. selector: "email",
  501. fn: function (){
  502. var self=this;
  503. return smalltalk.withContext(function($ctx1) {
  504. return "laurent.laffont@gmail.com, johnnyt@xan.do";
  505. }, function($ctx1) {$ctx1.fill(self,"email",{},smalltalk.FOSDEM2012Presentation)})},
  506. messageSends: []}),
  507. smalltalk.FOSDEM2012Presentation);
  508. smalltalk.addMethod(
  509. smalltalk.method({
  510. selector: "slideClasses",
  511. fn: function (){
  512. var self=this;
  513. function $FOSDEMIntroSlide(){return smalltalk.FOSDEMIntroSlide||(typeof FOSDEMIntroSlide=="undefined"?nil:FOSDEMIntroSlide)}
  514. function $FOSDEMAmberZeroNine(){return smalltalk.FOSDEMAmberZeroNine||(typeof FOSDEMAmberZeroNine=="undefined"?nil:FOSDEMAmberZeroNine)}
  515. function $CountersSlide(){return smalltalk.CountersSlide||(typeof CountersSlide=="undefined"?nil:CountersSlide)}
  516. function $IDESlide(){return smalltalk.IDESlide||(typeof IDESlide=="undefined"?nil:IDESlide)}
  517. function $JtalkAndJavascriptSlide(){return smalltalk.JtalkAndJavascriptSlide||(typeof JtalkAndJavascriptSlide=="undefined"?nil:JtalkAndJavascriptSlide)}
  518. function $FOSDEMJSPlayGroundSlide(){return smalltalk.FOSDEMJSPlayGroundSlide||(typeof FOSDEMJSPlayGroundSlide=="undefined"?nil:FOSDEMJSPlayGroundSlide)}
  519. function $FOSDEMJSToSmalltalk(){return smalltalk.FOSDEMJSToSmalltalk||(typeof FOSDEMJSToSmalltalk=="undefined"?nil:FOSDEMJSToSmalltalk)}
  520. function $FOSDEMBookletSlide(){return smalltalk.FOSDEMBookletSlide||(typeof FOSDEMBookletSlide=="undefined"?nil:FOSDEMBookletSlide)}
  521. function $FOSDEMTwitter(){return smalltalk.FOSDEMTwitter||(typeof FOSDEMTwitter=="undefined"?nil:FOSDEMTwitter)}
  522. function $FOSDEMCanvasSlide(){return smalltalk.FOSDEMCanvasSlide||(typeof FOSDEMCanvasSlide=="undefined"?nil:FOSDEMCanvasSlide)}
  523. function $FOSDEMAmberBackend(){return smalltalk.FOSDEMAmberBackend||(typeof FOSDEMAmberBackend=="undefined"?nil:FOSDEMAmberBackend)}
  524. function $FOSDEMREPLSlide(){return smalltalk.FOSDEMREPLSlide||(typeof FOSDEMREPLSlide=="undefined"?nil:FOSDEMREPLSlide)}
  525. function $FOSDEMCLISlide(){return smalltalk.FOSDEMCLISlide||(typeof FOSDEMCLISlide=="undefined"?nil:FOSDEMCLISlide)}
  526. function $FOSDEMContributionsSlide(){return smalltalk.FOSDEMContributionsSlide||(typeof FOSDEMContributionsSlide=="undefined"?nil:FOSDEMContributionsSlide)}
  527. return smalltalk.withContext(function($ctx1) {
  528. var $1;
  529. $1=[$FOSDEMIntroSlide(),$FOSDEMAmberZeroNine(),$CountersSlide(),$IDESlide(),$JtalkAndJavascriptSlide(),$FOSDEMJSPlayGroundSlide(),$FOSDEMJSToSmalltalk(),$FOSDEMBookletSlide(),$FOSDEMTwitter(),$FOSDEMCanvasSlide(),$FOSDEMAmberBackend(),$FOSDEMREPLSlide(),$FOSDEMCLISlide(),$FOSDEMContributionsSlide()];
  530. return $1;
  531. }, function($ctx1) {$ctx1.fill(self,"slideClasses",{},smalltalk.FOSDEM2012Presentation)})},
  532. messageSends: []}),
  533. smalltalk.FOSDEM2012Presentation);
  534. smalltalk.addMethod(
  535. smalltalk.method({
  536. selector: "style",
  537. fn: function (){
  538. var self=this;
  539. return smalltalk.withContext(function($ctx1) {
  540. return "\x0abody {\x0a font-family: Helvetica,Arial,sans;\x0a}\x0a\x0a#slides {\x0a width: 100%;\x0a height: 100%;\x0a overflow: hidden;\x0a position: absolute;\x0a top: 0;\x0a bottom: 0;\x0a left: 0;\x0a right: 0;\x0a background: #555;\x0a}\x0a\x0a.slide {\x0a background: #fff;\x0a color: #444;\x0a text-align: left;\x0a font-size: 20px;\x0a line-height: 1.8em;\x0a height: 500px;\x0a width: 700px;\x0a padding: 60px;\x0a position: absolute;\x0a left: 50%;\x0a top: 50%;\x0a margin-left: -420px;\x0a margin-top: -320px;\x0a box-shadow: 0 0 20px #111;\x0a -moz-box-shadow: 0 0 20px #111;\x0a -webkit-box-shadow: 0 0 20px #111;\x0a}\x0a\x0a.slide.transparent {\x0a background: transparent;\x0a box-shadow: 0 0 0 none;\x0a -moz-box-shadow: 0 0 0 transparent;\x0a -webkit-box-shadow: 0 0 0 transparent;\x0a color: #fff !important;\x0a}\x0a\x0a.slide.black {\x0a background: black;\x0a background-image: -webkit-gradient(\x0a\x09linear,\x0a\x09left bottom,\x0a\x09left top,\x0a\x09color-stop(0.38, rgb(79,79,79)),\x0a\x09color-stop(0.69, rgb(33,33,33)),\x0a\x09color-stop(0.86, rgb(4,4,4))\x0a );\x0a background-image: -moz-linear-gradient(\x0a\x09center bottom,\x0a\x09rgb(79,79,79) 38%,\x0a\x09rgb(33,33,33) 69%,\x0a\x09rgb(4,4,4) 86%\x0a );\x0a color: #fff !important;\x0a}\x0a\x0a.slide.black h1, .slide.black h2, .slide.black h3,\x0a.slide.transparent h1, .slide.transparent h2, .slide.transparent h3 {\x0a color: #fff;\x0a text-shadow: 0 1px 4px #aaa;\x0a}\x0a\x0a.slide.black a, .slide.transparent a {\x0a color: #ccc;\x0a}\x0a\x0a.slide.white {\x0a color: #333 !important;\x0a}\x0a\x0a.slide.white h1, .slide.white h2, .slide.white h3 {\x0a color: #333;\x0a}\x0a\x0a.slide.white a {\x0a color: #333;\x0a}\x0a\x0a\x0a.slide h1, .slide h2, .slide h3 {\x0a color: #333;\x0a /* text-align: center; */\x0a}\x0a\x0a.slide h1 {\x0a font-family: \x22Droid Sans\x22;\x0a font-size: 36px;\x0a text-shadow: 0 1px 4px #aaa;\x0a margin-top: 30px;\x0a margin-bottom: 50px;\x0a}\x0a\x0a.slide button {\x0a font-size: 18px;\x0a}\x0a\x0a.slide a {\x0a color: #555;\x0a text-decoration: none;\x0a cursor: pointer;\x0a}\x0a\x0a.slide a:hover {\x0a color: #fff;\x0a background: #555;\x0a}\x0a\x0a.slide .right {\x0a text-align: right;\x0a}\x0a\x0a.slide .section.center {\x0a text-align: center;\x0a display: table-cell;\x0a vertical-align: middle;\x0a width: 700px;\x0a height: 500px;\x0a}\x0a\x0a.slide code {\x0a font-family: \x22Droid Sans Mono\x22;\x0a color: #444;\x0a border: 1px solid #ddd;\x0a background: #eee;\x0a border-radius: 4px;\x0a padding: 2px;\x0a font-size: 16px;\x0a}\x0a\x0a.slide .code2 {\x0a font-family: \x22Droid Sans Mono\x22;\x0a line-height: 1.2em;\x0a color: #444;\x0a padding: 2px;\x0a font-size: 16px;\x0a}\x0a\x0a\x0a.slide .CodeMirror {\x0a width: 700px;\x0a height: 300px;\x0a text-align: left;\x0a}\x0a\x0a.slide .CodeMirror-scroll {\x0a text-align: left;\x0a}\x0a\x0a.slide .fancy {\x0a margin-top: 30px;\x0a -webkit-transform: rotate(-10deg);\x0a -moz-transform: rotate(-10deg);\x0a transform: rotate(-10deg);\x0a color: red;\x0a}\x0a\x0a.slide .comment {\x0a opacity: 0.6;\x0a font-weight: normal;\x0a}\x0a\x0a.slide .red {\x0a color: red;\x0a}\x0a\x0a.slide .blue {\x0a color: blue;\x0a}\x0a\x0a#meta {\x0a position: absolute;\x0a font-size: 12px;\x0a opacity: 0.6;\x0a bottom: 0;\x0a right: 0;\x0a z-index: 2;\x0a background: #333;\x0a text-align: right;\x0a padding: 0 10px;\x0a line-height: 1.8em;\x0a color: #eee;\x0a border-top-left-radius: 5px;\x0a}\x0a\x0a#meta:hover {\x0a opacity: 0.8;\x0a}\x0a\x0a#meta p {\x0a display: inline;\x0a padding: 0 5px;\x0a}\x0a\x0a#meta a {\x0a //background: #ccc;\x0a color: #ccc;\x0a text-decoration: none;\x0a padding: 0 5px;\x0a}\x0a\x0a.slide {\x0a \x0a}\x0a\x0a.slide.blue3d {\x0a background: #feffff;\x0a background: -moz-linear-gradient(top, #feffff 0%, #d2ebf9 100%);\x0a background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#feffff), color-stop(100%,#d2ebf9));\x0a background: -webkit-linear-gradient(top, #feffff 0%,#d2ebf9 100%);\x0a background: -o-linear-gradient(top, #feffff 0%,#d2ebf9 100%);\x0a background: -ms-linear-gradient(top, #feffff 0%,#d2ebf9 100%);\x0a filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\x22#feffff\x22, endColorstr=\x22#d2ebf9\x22,GradientType=0 );\x0a background: linear-gradient(top, #feffff 0%,#d2ebf9 100%);\x0a}\x0a\x0a\x0a.slide.red3d {\x0a background: #febbbb;\x0a background: -moz-linear-gradient(top, #febbbb 0%, #fe9090 71%, #ff5c5c 95%);\x0a background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#febbbb), color-stop(71%,#fe9090), color-stop(95%,#ff5c5c));\x0a background: -webkit-linear-gradient(top, #febbbb 0%,#fe9090 71%,#ff5c5c 95%);\x0a background: -o-linear-gradient(top, #febbbb 0%,#fe9090 71%,#ff5c5c 95%);\x0a background: -ms-linear-gradient(top, #febbbb 0%,#fe9090 71%,#ff5c5c 95%);\x0a filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\x22#febbbb\x22, endColorstr=\x22#ff5c5c\x22,GradientType=0 );\x0a background: linear-gradient(top, #febbbb 0%,#fe9090 71%,#ff5c5c 95%);\x0a}\x0a\x0a\x0a.slide.green3d {\x0a background: #cdeb8e;\x0a background: -moz-linear-gradient(top, #cdeb8e 0%, #a5c956 100%);\x0a background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#cdeb8e), color-stop(100%,#a5c956));\x0a background: -webkit-linear-gradient(top, #cdeb8e 0%,#a5c956 100%);\x0a background: -o-linear-gradient(top, #cdeb8e 0%,#a5c956 100%);\x0a background: -ms-linear-gradient(top, #cdeb8e 0%,#a5c956 100%);\x0a filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\x22#cdeb8e\x22, endColorstr=\x22#a5c956\x22,GradientType=0 );\x0a background: linear-gradient(top, #cdeb8e 0%,#a5c956 100%);\x0a}\x0a\x0a@-webkit-keyframes rotate-horizontal {\x0a\x090% { -webkit-transform: perspective(1000px) rotateY(-10deg);}\x0a\x09100% { -webkit-transform: perspective(1000px) rotateY(10deg);}\x0a}\x0a\x0a.animate p{\x0a-webkit-animation: rotate-horizontal 2s infinite alternate ease-in-out;\x0a}\x0a\x0a#FOSDEMAmberBackend img {\x0a\x09margin: 5px;\x0a\x09-webkit-animation: rotate-horizontal 2s infinite alternate ease-in-out;\x0a}\x0a\x0a.slide#FOSDEMContributionsSlide {\x0a background: white url(\x22esug2011/images/asterix.png\x22) 30px 130px no-repeat;\x0a}\x0a\x0a.slide#FOSDEMContributionsSlide .section {\x0a margin-left: 250px;\x0a margin-top: 200px;\x0a font-family: \x22Droid Sans\x22;\x0a font-size: 26px;\x0a font-weight: bold;\x0a}\x0a\x0a\x0a.slide#ide {\x0a background: black url(\x22esug2011/images/ide_star_wars.png\x22) center center no-repeat;\x0a}\x0a\x0a\x0a.tweet {\x0a\x09background-color: #aaa;\x0a\x09color: black;\x0a\x09padding: 10px;\x0a\x09border-radius: 10px;\x0a\x09border: 5px solid #eee;\x0a\x09margin: 10px;\x0a}\x0a\x0a.tweet img {\x0a\x09vertical-align: top;\x0a\x09margin-right: 10px;\x0a}\x0a\x0a.tweet span:first-child {\x0a\x09float: right;\x0a}\x0a";
  541. }, function($ctx1) {$ctx1.fill(self,"style",{},smalltalk.FOSDEM2012Presentation)})},
  542. messageSends: []}),
  543. smalltalk.FOSDEM2012Presentation);
  544. smalltalk.addMethod(
  545. smalltalk.method({
  546. selector: "url",
  547. fn: function (){
  548. var self=this;
  549. return smalltalk.withContext(function($ctx1) {
  550. return "http://amber-lang.net";
  551. }, function($ctx1) {$ctx1.fill(self,"url",{},smalltalk.FOSDEM2012Presentation)})},
  552. messageSends: []}),
  553. smalltalk.FOSDEM2012Presentation);
  554. smalltalk.addMethod(
  555. smalltalk.method({
  556. selector: "isConcrete",
  557. fn: function (){
  558. var self=this;
  559. return smalltalk.withContext(function($ctx1) {
  560. return true;
  561. }, function($ctx1) {$ctx1.fill(self,"isConcrete",{},smalltalk.FOSDEM2012Presentation.klass)})},
  562. messageSends: []}),
  563. smalltalk.FOSDEM2012Presentation.klass);
  564. smalltalk.addMethod(
  565. smalltalk.method({
  566. selector: "title",
  567. fn: function (){
  568. var self=this;
  569. return smalltalk.withContext(function($ctx1) {
  570. return "Amber";
  571. }, function($ctx1) {$ctx1.fill(self,"title",{},smalltalk.FOSDEM2012Presentation.klass)})},
  572. messageSends: []}),
  573. smalltalk.FOSDEM2012Presentation.klass);
  574. smalltalk.addClass('SweSUG2012Presentation', smalltalk.Presentation, [], 'Presentation');
  575. smalltalk.addMethod(
  576. smalltalk.method({
  577. selector: "author",
  578. fn: function (){
  579. var self=this;
  580. return smalltalk.withContext(function($ctx1) {
  581. return "Göran Krampe";
  582. }, function($ctx1) {$ctx1.fill(self,"author",{},smalltalk.SweSUG2012Presentation)})},
  583. messageSends: []}),
  584. smalltalk.SweSUG2012Presentation);
  585. smalltalk.addMethod(
  586. smalltalk.method({
  587. selector: "description",
  588. fn: function (){
  589. var self=this;
  590. return smalltalk.withContext(function($ctx1) {
  591. return "SweSUG 2012, Stockholm";
  592. }, function($ctx1) {$ctx1.fill(self,"description",{},smalltalk.SweSUG2012Presentation)})},
  593. messageSends: []}),
  594. smalltalk.SweSUG2012Presentation);
  595. smalltalk.addMethod(
  596. smalltalk.method({
  597. selector: "email",
  598. fn: function (){
  599. var self=this;
  600. return smalltalk.withContext(function($ctx1) {
  601. return "goran@krampe.se";
  602. }, function($ctx1) {$ctx1.fill(self,"email",{},smalltalk.SweSUG2012Presentation)})},
  603. messageSends: []}),
  604. smalltalk.SweSUG2012Presentation);
  605. smalltalk.addMethod(
  606. smalltalk.method({
  607. selector: "slideClasses",
  608. fn: function (){
  609. var self=this;
  610. function $SweSUGIntroSlide(){return smalltalk.SweSUGIntroSlide||(typeof SweSUGIntroSlide=="undefined"?nil:SweSUGIntroSlide)}
  611. function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
  612. function $SweSUGAboutSlide(){return smalltalk.SweSUGAboutSlide||(typeof SweSUGAboutSlide=="undefined"?nil:SweSUGAboutSlide)}
  613. function $SweSUGWhatIsAmberSlide(){return smalltalk.SweSUGWhatIsAmberSlide||(typeof SweSUGWhatIsAmberSlide=="undefined"?nil:SweSUGWhatIsAmberSlide)}
  614. function $SweSUGAmberFeaturesSlide(){return smalltalk.SweSUGAmberFeaturesSlide||(typeof SweSUGAmberFeaturesSlide=="undefined"?nil:SweSUGAmberFeaturesSlide)}
  615. function $SweSUGWorkspaceSlide(){return smalltalk.SweSUGWorkspaceSlide||(typeof SweSUGWorkspaceSlide=="undefined"?nil:SweSUGWorkspaceSlide)}
  616. function $IDESlide(){return smalltalk.IDESlide||(typeof IDESlide=="undefined"?nil:IDESlide)}
  617. function $CountersSlide(){return smalltalk.CountersSlide||(typeof CountersSlide=="undefined"?nil:CountersSlide)}
  618. function $JtalkAndJavascriptSlide(){return smalltalk.JtalkAndJavascriptSlide||(typeof JtalkAndJavascriptSlide=="undefined"?nil:JtalkAndJavascriptSlide)}
  619. function $JtalkAndJavascriptSlide2(){return smalltalk.JtalkAndJavascriptSlide2||(typeof JtalkAndJavascriptSlide2=="undefined"?nil:JtalkAndJavascriptSlide2)}
  620. function $JtalkAndJavascriptSlide3(){return smalltalk.JtalkAndJavascriptSlide3||(typeof JtalkAndJavascriptSlide3=="undefined"?nil:JtalkAndJavascriptSlide3)}
  621. function $JtalkAndJavascriptSlide4(){return smalltalk.JtalkAndJavascriptSlide4||(typeof JtalkAndJavascriptSlide4=="undefined"?nil:JtalkAndJavascriptSlide4)}
  622. function $JtalkAndCLI(){return smalltalk.JtalkAndCLI||(typeof JtalkAndCLI=="undefined"?nil:JtalkAndCLI)}
  623. function $JtalkAndNode(){return smalltalk.JtalkAndNode||(typeof JtalkAndNode=="undefined"?nil:JtalkAndNode)}
  624. function $JtalkAndNode2(){return smalltalk.JtalkAndNode2||(typeof JtalkAndNode2=="undefined"?nil:JtalkAndNode2)}
  625. function $JtalkAndNode3(){return smalltalk.JtalkAndNode3||(typeof JtalkAndNode3=="undefined"?nil:JtalkAndNode3)}
  626. function $JtalkAndWebOS(){return smalltalk.JtalkAndWebOS||(typeof JtalkAndWebOS=="undefined"?nil:JtalkAndWebOS)}
  627. function $JtalkAndEnyo(){return smalltalk.JtalkAndEnyo||(typeof JtalkAndEnyo=="undefined"?nil:JtalkAndEnyo)}
  628. function $ContributionsSlide(){return smalltalk.ContributionsSlide||(typeof ContributionsSlide=="undefined"?nil:ContributionsSlide)}
  629. return smalltalk.withContext(function($ctx1) {
  630. var $2,$3,$1;
  631. $2=_st($Array())._new();
  632. _st($2)._add_($SweSUGIntroSlide());
  633. _st($2)._add_($SweSUGAboutSlide());
  634. _st($2)._add_($SweSUGWhatIsAmberSlide());
  635. _st($2)._add_($SweSUGAmberFeaturesSlide());
  636. _st($2)._add_($SweSUGWorkspaceSlide());
  637. _st($2)._add_($IDESlide());
  638. _st($2)._add_($CountersSlide());
  639. _st($2)._add_($JtalkAndJavascriptSlide());
  640. _st($2)._add_($JtalkAndJavascriptSlide2());
  641. _st($2)._add_($JtalkAndJavascriptSlide3());
  642. _st($2)._add_($JtalkAndJavascriptSlide4());
  643. _st($2)._add_($JtalkAndCLI());
  644. _st($2)._add_($JtalkAndNode());
  645. _st($2)._add_($JtalkAndNode2());
  646. _st($2)._add_($JtalkAndNode3());
  647. _st($2)._add_($JtalkAndWebOS());
  648. _st($2)._add_($JtalkAndEnyo());
  649. _st($2)._add_($ContributionsSlide());
  650. $3=_st($2)._yourself();
  651. $1=$3;
  652. return $1;
  653. }, function($ctx1) {$ctx1.fill(self,"slideClasses",{},smalltalk.SweSUG2012Presentation)})},
  654. messageSends: ["add:", "new", "yourself"]}),
  655. smalltalk.SweSUG2012Presentation);
  656. smalltalk.addMethod(
  657. smalltalk.method({
  658. selector: "style",
  659. fn: function (){
  660. var self=this;
  661. return smalltalk.withContext(function($ctx1) {
  662. return "\x0abody {\x0a font-family: Helvetica,Arial,sans;\x0a}\x0a\x0a#slides {\x0a width: 100%;\x0a height: 100%;\x0a overflow: hidden;\x0a position: absolute;\x0a top: 0;\x0a bottom: 0;\x0a left: 0;\x0a right: 0;\x0a background: #555;\x0a}\x0a\x0a.slide {\x0a background: #fff;\x0a color: #444;\x0a text-align: left;\x0a font-size: 20px;\x0a line-height: 1.8em;\x0a height: 500px;\x0a width: 700px;\x0a padding: 60px;\x0a position: absolute;\x0a left: 50%;\x0a top: 50%;\x0a margin-left: -420px;\x0a margin-top: -320px;\x0a box-shadow: 0 0 20px #111;\x0a -moz-box-shadow: 0 0 20px #111;\x0a -webkit-box-shadow: 0 0 20px #111;\x0a}\x0a\x0a.slide.transparent {\x0a background: transparent;\x0a box-shadow: 0 0 0 none;\x0a -moz-box-shadow: 0 0 0 transparent;\x0a -webkit-box-shadow: 0 0 0 transparent;\x0a color: #fff !important;\x0a}\x0a\x0a.slide.black {\x0a background: black;\x0a background-image: -webkit-gradient(\x0a\x09linear,\x0a\x09left bottom,\x0a\x09left top,\x0a\x09color-stop(0.38, rgb(79,79,79)),\x0a\x09color-stop(0.69, rgb(33,33,33)),\x0a\x09color-stop(0.86, rgb(4,4,4))\x0a );\x0a background-image: -moz-linear-gradient(\x0a\x09center bottom,\x0a\x09rgb(79,79,79) 38%,\x0a\x09rgb(33,33,33) 69%,\x0a\x09rgb(4,4,4) 86%\x0a );\x0a color: #fff !important;\x0a}\x0a\x0a.slide.black h1, .slide.black h2, .slide.black h3,\x0a.slide.transparent h1, .slide.transparent h2, .slide.transparent h3 {\x0a color: #fff;\x0a text-shadow: 0 1px 4px #aaa;\x0a}\x0a\x0a.slide.black a, .slide.transparent a {\x0a color: #ccc;\x0a}\x0a\x0a.slide.white {\x0a color: #333 !important;\x0a}\x0a\x0a.slide.white h1, .slide.white h2, .slide.white h3 {\x0a color: #333;\x0a}\x0a\x0a.slide.white a {\x0a color: #333;\x0a}\x0a\x0a\x0a.slide h1, .slide h2, .slide h3 {\x0a color: #333;\x0a /* text-align: center; */\x0a}\x0a\x0a.slide h1 {\x0a font-family: \x22Droid Sans\x22;\x0a font-size: 36px;\x0a text-shadow: 0 1px 4px #aaa;\x0a margin-top: 30px;\x0a margin-bottom: 50px;\x0a}\x0a\x0a/* .slide ul, .slide li { */\x0a/* padding: 0; */\x0a/* margin: 0; */\x0a/* } */\x0a\x0a.slide button {\x0a font-size: 18px;\x0a}\x0a\x0a.slide a {\x0a color: #555;\x0a text-decoration: none;\x0a cursor: pointer;\x0a}\x0a\x0a.slide a:hover {\x0a color: #fff;\x0a background: #555;\x0a}\x0a\x0a.slide .right {\x0a text-align: right;\x0a}\x0a\x0a.slide .section.center {\x0a text-align: center;\x0a display: table-cell;\x0a vertical-align: middle;\x0a width: 700px;\x0a height: 500px;\x0a}\x0a\x0a.slide code {\x0a font-family: \x22Droid Sans Mono\x22;\x0a color: #444;\x0a border: 1px solid #ddd;\x0a background: #eee;\x0a border-radius: 4px;\x0a padding: 2px;\x0a font-size: 16px;\x0a}\x0a\x0a.slide .code2 {\x0a font-family: \x22Droid Sans Mono\x22;\x0a line-height: 1.2em;\x0a color: #444;\x0a padding: 2px;\x0a font-size: 16px;\x0a}\x0a\x0a\x0a.slide .CodeMirror {\x0a width: 500px;\x0a height: 300px;\x0a text-align: left;\x0a}\x0a\x0a.slide .CodeMirror-scroll {\x0a text-align: left;\x0a}\x0a\x0a.slide .fancy {\x0a margin-top: 30px;\x0a -webkit-transform: rotate(-10deg);\x0a -moz-transform: rotate(-10deg);\x0a transform: rotate(-10deg);\x0a color: red;\x0a}\x0a\x0a.slide .comment {\x0a opacity: 0.6;\x0a font-weight: normal;\x0a}\x0a\x0a.slide .red {\x0a color: red;\x0a}\x0a\x0a.slide .blue {\x0a color: blue;\x0a}\x0a\x0a.slide#WhatIsJtalk {\x0a background: white url(\x22esug2011/images/balloon.jpg\x22) 650px 50px no-repeat;\x0a}\x0a\x0a.slide#ide {\x0a background: black url(\x22esug2011/images/ide_star_wars.png\x22) center center no-repeat;\x0a}\x0a\x0a.slide#JtalkAndCLI {\x0a background: white url(\x22esug2011/images/terminal.png\x22) 620px 20px no-repeat;\x0a}\x0a\x0a.slide#JtalkAndNode {\x0a background: white url(\x22esug2011/images/nodejs.png\x22) 580px 40px no-repeat;\x0a}\x0a.slide#JtalkAndNode2 {\x0a background: white url(\x22esug2011/images/nodejs.png\x22) 580px 40px no-repeat;\x0a}\x0a\x0a.slide#JtalkAndNode3 {\x0a background: white url(\x22esug2011/images/nodejs.png\x22) 580px 40px no-repeat;\x0a}\x0a\x0a.slide#JtalkAndWebOS {\x0a background: white url(\x22esug2011/images/devices.jpg\x22) 380px 280px no-repeat;\x0a}\x0a\x0a.slide#JtalkAndEnyo {\x0a background: white url(\x22esug2011/images/enyo.png\x22) 130px 150px no-repeat;\x0a}\x0a\x0a.slide#links {\x0a background: white url(\x22esug2011/images/asterix.png\x22) 30px 130px no-repeat;\x0a}\x0a\x0a.slide#links .section {\x0a margin-left: 250px;\x0a margin-top: 200px;\x0a font-family: \x22Droid Sans\x22;\x0a font-size: 26px;\x0a font-weight: bold;\x0a}\x0a\x0a\x0a#meta {\x0a position: absolute;\x0a font-size: 12px;\x0a opacity: 0.6;\x0a bottom: 0;\x0a right: 0;\x0a z-index: 2;\x0a background: #333;\x0a text-align: right;\x0a padding: 0 10px;\x0a line-height: 1.8em;\x0a color: #eee;\x0a border-top-left-radius: 5px;\x0a}\x0a\x0a#meta:hover {\x0a opacity: 0.8;\x0a}\x0a\x0a#meta p {\x0a display: inline;\x0a padding: 0 5px;\x0a}\x0a\x0a#meta a {\x0a //background: #ccc;\x0a color: #ccc;\x0a text-decoration: none;\x0a padding: 0 5px;\x0a}\x0a\x0a.slide {\x0a \x0a}\x0a";
  663. }, function($ctx1) {$ctx1.fill(self,"style",{},smalltalk.SweSUG2012Presentation)})},
  664. messageSends: []}),
  665. smalltalk.SweSUG2012Presentation);
  666. smalltalk.addMethod(
  667. smalltalk.method({
  668. selector: "url",
  669. fn: function (){
  670. var self=this;
  671. return smalltalk.withContext(function($ctx1) {
  672. return "http://www.amber-lang.net";
  673. }, function($ctx1) {$ctx1.fill(self,"url",{},smalltalk.SweSUG2012Presentation)})},
  674. messageSends: []}),
  675. smalltalk.SweSUG2012Presentation);
  676. smalltalk.addMethod(
  677. smalltalk.method({
  678. selector: "isConcrete",
  679. fn: function (){
  680. var self=this;
  681. return smalltalk.withContext(function($ctx1) {
  682. return true;
  683. }, function($ctx1) {$ctx1.fill(self,"isConcrete",{},smalltalk.SweSUG2012Presentation.klass)})},
  684. messageSends: []}),
  685. smalltalk.SweSUG2012Presentation.klass);
  686. smalltalk.addMethod(
  687. smalltalk.method({
  688. selector: "title",
  689. fn: function (){
  690. var self=this;
  691. return smalltalk.withContext(function($ctx1) {
  692. return "Amber rocks!";
  693. }, function($ctx1) {$ctx1.fill(self,"title",{},smalltalk.SweSUG2012Presentation.klass)})},
  694. messageSends: []}),
  695. smalltalk.SweSUG2012Presentation.klass);
  696. smalltalk.addClass('PresentationNavigator', smalltalk.Widget, ['presentationBrush', 'currentPresentation', 'slideSelect'], 'Presentation');
  697. smalltalk.addMethod(
  698. smalltalk.method({
  699. selector: "checkHash",
  700. fn: function (){
  701. var self=this;
  702. var hash,presentation;
  703. function $Presentation(){return smalltalk.Presentation||(typeof Presentation=="undefined"?nil:Presentation)}
  704. return smalltalk.withContext(function($ctx1) {
  705. var $1,$2;
  706. var $early={};
  707. try {
  708. hash=_st(_st(_st(_st(document)._location())._hash())._replace_with_("^#",""))._tokenize_("-");
  709. presentation=_st(_st($Presentation())._concretePresentations())._detect_ifNone_((function(aPresentationClass){
  710. return smalltalk.withContext(function($ctx2) {
  711. return _st(_st(aPresentationClass)._name()).__eq_eq(_st(hash)._first());
  712. }, function($ctx2) {$ctx2.fillBlock({aPresentationClass:aPresentationClass},$ctx1)})}),(function(){
  713. return smalltalk.withContext(function($ctx2) {
  714. $1=self;
  715. throw $early=[$1];
  716. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  717. $2=_st(presentation).__eq_eq(_st(self._currentPresentation())._class());
  718. if(! smalltalk.assert($2)){
  719. self._selectPresentationNamed_(presentation);
  720. self._selectSlideAt_(_st(hash)._last());
  721. };
  722. return self}
  723. catch(e) {if(e===$early)return e[0]; throw e}
  724. }, function($ctx1) {$ctx1.fill(self,"checkHash",{hash:hash,presentation:presentation},smalltalk.PresentationNavigator)})},
  725. messageSends: ["tokenize:", "replace:with:", "hash", "location", "detect:ifNone:", "==", "first", "name", "concretePresentations", "ifFalse:", "selectPresentationNamed:", "selectSlideAt:", "last", "class", "currentPresentation"]}),
  726. smalltalk.PresentationNavigator);
  727. smalltalk.addMethod(
  728. smalltalk.method({
  729. selector: "checkHashChange",
  730. fn: function (){
  731. var self=this;
  732. return smalltalk.withContext(function($ctx1) {
  733. _st(_st(window)._jQuery_(window))._bind_do_("hashchange",(function(){
  734. return smalltalk.withContext(function($ctx2) {
  735. return self._checkHash();
  736. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  737. return self}, function($ctx1) {$ctx1.fill(self,"checkHashChange",{},smalltalk.PresentationNavigator)})},
  738. messageSends: ["bind:do:", "checkHash", "jQuery:"]}),
  739. smalltalk.PresentationNavigator);
  740. smalltalk.addMethod(
  741. smalltalk.method({
  742. selector: "currentPresentation",
  743. fn: function (){
  744. var self=this;
  745. function $Presentation(){return smalltalk.Presentation||(typeof Presentation=="undefined"?nil:Presentation)}
  746. return smalltalk.withContext(function($ctx1) {
  747. var $2,$1;
  748. $2=self["@currentPresentation"];
  749. if(($receiver = $2) == nil || $receiver == undefined){
  750. self["@currentPresentation"]=_st(_st(_st($Presentation())._concretePresentations())._first())._new();
  751. $1=self["@currentPresentation"];
  752. } else {
  753. $1=$2;
  754. };
  755. return $1;
  756. }, function($ctx1) {$ctx1.fill(self,"currentPresentation",{},smalltalk.PresentationNavigator)})},
  757. messageSends: ["ifNil:", "new", "first", "concretePresentations"]}),
  758. smalltalk.PresentationNavigator);
  759. smalltalk.addMethod(
  760. smalltalk.method({
  761. selector: "currentPresentation:",
  762. fn: function (aPresentation){
  763. var self=this;
  764. return smalltalk.withContext(function($ctx1) {
  765. self["@currentPresentation"]=aPresentation;
  766. return self}, function($ctx1) {$ctx1.fill(self,"currentPresentation:",{aPresentation:aPresentation},smalltalk.PresentationNavigator)})},
  767. messageSends: []}),
  768. smalltalk.PresentationNavigator);
  769. smalltalk.addMethod(
  770. smalltalk.method({
  771. selector: "nextSlide",
  772. fn: function (){
  773. var self=this;
  774. return smalltalk.withContext(function($ctx1) {
  775. _st(self._currentPresentation())._nextSlide();
  776. self._updateHash();
  777. return self}, function($ctx1) {$ctx1.fill(self,"nextSlide",{},smalltalk.PresentationNavigator)})},
  778. messageSends: ["nextSlide", "currentPresentation", "updateHash"]}),
  779. smalltalk.PresentationNavigator);
  780. smalltalk.addMethod(
  781. smalltalk.method({
  782. selector: "open",
  783. fn: function (){
  784. var self=this;
  785. return smalltalk.withContext(function($ctx1) {
  786. var $1,$2;
  787. _st(_st(window)._jQuery_(document))._ready_((function(){
  788. return smalltalk.withContext(function($ctx2) {
  789. $1=self;
  790. _st($1)._appendToJQuery_("body"._asJQuery());
  791. _st($1)._setKeybindings();
  792. $2=_st($1)._checkHashChange();
  793. return $2;
  794. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  795. return self}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.PresentationNavigator)})},
  796. messageSends: ["ready:", "appendToJQuery:", "asJQuery", "setKeybindings", "checkHashChange", "jQuery:"]}),
  797. smalltalk.PresentationNavigator);
  798. smalltalk.addMethod(
  799. smalltalk.method({
  800. selector: "previousSlide",
  801. fn: function (){
  802. var self=this;
  803. return smalltalk.withContext(function($ctx1) {
  804. _st(self._currentPresentation())._previousSlide();
  805. self._updateHash();
  806. return self}, function($ctx1) {$ctx1.fill(self,"previousSlide",{},smalltalk.PresentationNavigator)})},
  807. messageSends: ["previousSlide", "currentPresentation", "updateHash"]}),
  808. smalltalk.PresentationNavigator);
  809. smalltalk.addMethod(
  810. smalltalk.method({
  811. selector: "reload",
  812. fn: function (){
  813. var self=this;
  814. var slideIndex;
  815. return smalltalk.withContext(function($ctx1) {
  816. slideIndex=_st(self._currentPresentation())._currentSlideIndex();
  817. self._currentPresentation_(_st(_st(self._currentPresentation())._class())._new());
  818. self._renderCurrentPresentation();
  819. self._selectSlideAt_(slideIndex);
  820. return self}, function($ctx1) {$ctx1.fill(self,"reload",{slideIndex:slideIndex},smalltalk.PresentationNavigator)})},
  821. messageSends: ["currentSlideIndex", "currentPresentation", "currentPresentation:", "new", "class", "renderCurrentPresentation", "selectSlideAt:"]}),
  822. smalltalk.PresentationNavigator);
  823. smalltalk.addMethod(
  824. smalltalk.method({
  825. selector: "renderCurrentPresentation",
  826. fn: function (){
  827. var self=this;
  828. return smalltalk.withContext(function($ctx1) {
  829. _st(self["@presentationBrush"])._contents_((function(html){
  830. return smalltalk.withContext(function($ctx2) {
  831. return _st(self._currentPresentation())._renderOn_(html);
  832. }, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
  833. self._updateSlideSelect();
  834. return self}, function($ctx1) {$ctx1.fill(self,"renderCurrentPresentation",{},smalltalk.PresentationNavigator)})},
  835. messageSends: ["contents:", "renderOn:", "currentPresentation", "updateSlideSelect"]}),
  836. smalltalk.PresentationNavigator);
  837. smalltalk.addMethod(
  838. smalltalk.method({
  839. selector: "renderOn:",
  840. fn: function (html){
  841. var self=this;
  842. return smalltalk.withContext(function($ctx1) {
  843. var $1,$2,$3,$5,$6,$4,$7,$8;
  844. $1=_st(html)._style();
  845. _st($1)._type_("text/css");
  846. $2=_st($1)._with_(self._style());
  847. $3=_st(html)._div();
  848. _st($3)._id_("navigator");
  849. $4=_st($3)._with_((function(){
  850. return smalltalk.withContext(function($ctx2) {
  851. $5=self;
  852. _st($5)._renderToolsOn_(html);
  853. _st($5)._renderPresentationSelectOn_(html);
  854. $6=_st($5)._renderSlideSelectOn_(html);
  855. return $6;
  856. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  857. $7=_st(html)._div();
  858. _st($7)._id_("presentation");
  859. $8=_st($7)._yourself();
  860. self["@presentationBrush"]=$8;
  861. self._checkHash();
  862. self._renderCurrentPresentation();
  863. return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.PresentationNavigator)})},
  864. messageSends: ["type:", "style", "with:", "id:", "div", "renderToolsOn:", "renderPresentationSelectOn:", "renderSlideSelectOn:", "yourself", "checkHash", "renderCurrentPresentation"]}),
  865. smalltalk.PresentationNavigator);
  866. smalltalk.addMethod(
  867. smalltalk.method({
  868. selector: "renderPresentationSelectOn:",
  869. fn: function (html){
  870. var self=this;
  871. var presentationSelect;
  872. function $Presentation(){return smalltalk.Presentation||(typeof Presentation=="undefined"?nil:Presentation)}
  873. return smalltalk.withContext(function($ctx1) {
  874. var $1,$3,$4,$2;
  875. presentationSelect=_st(html)._select();
  876. $1=presentationSelect;
  877. _st($1)._onChange_((function(){
  878. return smalltalk.withContext(function($ctx2) {
  879. return self._selectPresentationNamed_(_st(_st(presentationSelect)._asJQuery())._val());
  880. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  881. $2=_st($1)._with_((function(){
  882. return smalltalk.withContext(function($ctx2) {
  883. return _st($Presentation())._concretePresentationsDo_((function(aPresentationClass){
  884. return smalltalk.withContext(function($ctx3) {
  885. $3=_st(html)._option();
  886. _st($3)._value_(_st(aPresentationClass)._name());
  887. $4=_st($3)._with_(_st(aPresentationClass)._title());
  888. return $4;
  889. }, function($ctx3) {$ctx3.fillBlock({aPresentationClass:aPresentationClass},$ctx2)})}));
  890. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  891. return self}, function($ctx1) {$ctx1.fill(self,"renderPresentationSelectOn:",{html:html,presentationSelect:presentationSelect},smalltalk.PresentationNavigator)})},
  892. messageSends: ["select", "onChange:", "selectPresentationNamed:", "val", "asJQuery", "with:", "concretePresentationsDo:", "value:", "name", "option", "title"]}),
  893. smalltalk.PresentationNavigator);
  894. smalltalk.addMethod(
  895. smalltalk.method({
  896. selector: "renderSlideSelectOn:",
  897. fn: function (html){
  898. var self=this;
  899. return smalltalk.withContext(function($ctx1) {
  900. self["@slideSelect"]=_st(html)._select();
  901. _st(self["@slideSelect"])._onChange_((function(){
  902. return smalltalk.withContext(function($ctx2) {
  903. return self._selectSlideAt_(_st(_st(self["@slideSelect"])._asJQuery())._val());
  904. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  905. self._updateSlideSelect();
  906. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideSelectOn:",{html:html},smalltalk.PresentationNavigator)})},
  907. messageSends: ["select", "onChange:", "selectSlideAt:", "val", "asJQuery", "updateSlideSelect"]}),
  908. smalltalk.PresentationNavigator);
  909. smalltalk.addMethod(
  910. smalltalk.method({
  911. selector: "renderToolsOn:",
  912. fn: function (html){
  913. var self=this;
  914. function $TabManager(){return smalltalk.TabManager||(typeof TabManager=="undefined"?nil:TabManager)}
  915. return smalltalk.withContext(function($ctx1) {
  916. var $1,$2,$3,$4,$5,$6,$7,$8;
  917. $1=_st(html)._a();
  918. _st($1)._with_("IDE");
  919. $2=_st($1)._onClick_((function(){
  920. return smalltalk.withContext(function($ctx2) {
  921. return _st(_st($TabManager())._current())._open();
  922. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  923. $3=_st(html)._a();
  924. _st($3)._with_("Reload");
  925. $4=_st($3)._onClick_((function(){
  926. return smalltalk.withContext(function($ctx2) {
  927. return self._reload();
  928. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  929. $5=_st(html)._a();
  930. _st($5)._with_("←");
  931. $6=_st($5)._onClick_((function(){
  932. return smalltalk.withContext(function($ctx2) {
  933. return self._previousSlide();
  934. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  935. $7=_st(html)._a();
  936. _st($7)._with_("→");
  937. $8=_st($7)._onClick_((function(){
  938. return smalltalk.withContext(function($ctx2) {
  939. return self._nextSlide();
  940. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  941. return self}, function($ctx1) {$ctx1.fill(self,"renderToolsOn:",{html:html},smalltalk.PresentationNavigator)})},
  942. messageSends: ["with:", "a", "onClick:", "open", "current", "reload", "previousSlide", "nextSlide"]}),
  943. smalltalk.PresentationNavigator);
  944. smalltalk.addMethod(
  945. smalltalk.method({
  946. selector: "selectPresentation:",
  947. fn: function (aPresentationClass){
  948. var self=this;
  949. return smalltalk.withContext(function($ctx1) {
  950. self._currentPresentation_(_st(aPresentationClass)._new());
  951. self._renderCurrentPresentation();
  952. return self}, function($ctx1) {$ctx1.fill(self,"selectPresentation:",{aPresentationClass:aPresentationClass},smalltalk.PresentationNavigator)})},
  953. messageSends: ["currentPresentation:", "new", "renderCurrentPresentation"]}),
  954. smalltalk.PresentationNavigator);
  955. smalltalk.addMethod(
  956. smalltalk.method({
  957. selector: "selectPresentationNamed:",
  958. fn: function (aString){
  959. var self=this;
  960. var presentationClass;
  961. function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
  962. return smalltalk.withContext(function($ctx1) {
  963. var $1;
  964. presentationClass=_st(_st($Smalltalk())._current())._at_(aString);
  965. $1=presentationClass;
  966. if(($receiver = $1) == nil || $receiver == undefined){
  967. $1;
  968. } else {
  969. self._selectPresentation_(presentationClass);
  970. };
  971. return self}, function($ctx1) {$ctx1.fill(self,"selectPresentationNamed:",{aString:aString,presentationClass:presentationClass},smalltalk.PresentationNavigator)})},
  972. messageSends: ["at:", "current", "ifNotNil:", "selectPresentation:"]}),
  973. smalltalk.PresentationNavigator);
  974. smalltalk.addMethod(
  975. smalltalk.method({
  976. selector: "selectSlideAt:",
  977. fn: function (anInteger){
  978. var self=this;
  979. return smalltalk.withContext(function($ctx1) {
  980. _st(self._currentPresentation())._moveAt_(anInteger);
  981. self._updateHash();
  982. return self}, function($ctx1) {$ctx1.fill(self,"selectSlideAt:",{anInteger:anInteger},smalltalk.PresentationNavigator)})},
  983. messageSends: ["moveAt:", "currentPresentation", "updateHash"]}),
  984. smalltalk.PresentationNavigator);
  985. smalltalk.addMethod(
  986. smalltalk.method({
  987. selector: "setKeybindings",
  988. fn: function (){
  989. var self=this;
  990. return smalltalk.withContext(function($ctx1) {
  991. var $1,$2,$3;
  992. _st(_st(window)._jQuery_(document))._keyup_((function(e){
  993. var node;
  994. return smalltalk.withContext(function($ctx2) {
  995. node=_st(_st(_st(e)._target())._nodeName())._asLowercase();
  996. node;
  997. $1=_st(_st(node).__eq("textarea"))._or_((function(){
  998. return smalltalk.withContext(function($ctx3) {
  999. return _st(node).__eq("input");
  1000. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1001. if(! smalltalk.assert($1)){
  1002. $2=_st(_st(e)._keyCode()).__eq((39));
  1003. if(smalltalk.assert($2)){
  1004. self._nextSlide();
  1005. };
  1006. $3=_st(_st(e)._keyCode()).__eq((37));
  1007. if(smalltalk.assert($3)){
  1008. return self._previousSlide();
  1009. };
  1010. };
  1011. }, function($ctx2) {$ctx2.fillBlock({e:e,node:node},$ctx1)})}));
  1012. return self}, function($ctx1) {$ctx1.fill(self,"setKeybindings",{},smalltalk.PresentationNavigator)})},
  1013. messageSends: ["keyup:", "asLowercase", "nodeName", "target", "ifFalse:", "ifTrue:", "nextSlide", "=", "keyCode", "previousSlide", "or:", "jQuery:"]}),
  1014. smalltalk.PresentationNavigator);
  1015. smalltalk.addMethod(
  1016. smalltalk.method({
  1017. selector: "style",
  1018. fn: function (){
  1019. var self=this;
  1020. return smalltalk.withContext(function($ctx1) {
  1021. return "\x0a#navigator {\x0a z-index: 1;\x0a position: fixed;\x0a top: 0;\x0a left: 50%;\x0a margin-left: -150px;\x0a padding: 5px;\x0a border-radius: 5px;\x0a -moz-border-radius: 5px;\x0a -webkit-border-radius: 5px;\x0a background: #333;\x0a opacity: 0.3;\x0a color: #eee;\x0a}\x0a\x0a#navigator a {\x0a font-weight: bold;\x0a color: #eee;\x0a text-decoration: none;\x0a cursor: pointer;\x0a padding: 0 2px;\x0a font-size: 14px;\x0a}\x0a\x0a#navigator:hover {\x0a opacity: 0.8;\x0a}\x0a";
  1022. }, function($ctx1) {$ctx1.fill(self,"style",{},smalltalk.PresentationNavigator)})},
  1023. messageSends: []}),
  1024. smalltalk.PresentationNavigator);
  1025. smalltalk.addMethod(
  1026. smalltalk.method({
  1027. selector: "updateHash",
  1028. fn: function (){
  1029. var self=this;
  1030. return smalltalk.withContext(function($ctx1) {
  1031. _st(_st(document)._location())._hash_(_st(_st(_st(_st(self._currentPresentation())._class())._name()).__comma("-")).__comma(_st(self._currentPresentation())._currentSlideIndex()));
  1032. return self}, function($ctx1) {$ctx1.fill(self,"updateHash",{},smalltalk.PresentationNavigator)})},
  1033. messageSends: ["hash:", ",", "currentSlideIndex", "currentPresentation", "name", "class", "location"]}),
  1034. smalltalk.PresentationNavigator);
  1035. smalltalk.addMethod(
  1036. smalltalk.method({
  1037. selector: "updateSlideSelect",
  1038. fn: function (){
  1039. var self=this;
  1040. return smalltalk.withContext(function($ctx1) {
  1041. var $1,$2;
  1042. _st(self["@slideSelect"])._contents_((function(html){
  1043. var index;
  1044. return smalltalk.withContext(function($ctx2) {
  1045. index=(0);
  1046. index;
  1047. return _st(self._currentPresentation())._slidesDo_((function(aSlide){
  1048. return smalltalk.withContext(function($ctx3) {
  1049. index=_st(index).__plus((1));
  1050. index;
  1051. $1=_st(html)._option();
  1052. _st($1)._value_(index);
  1053. $2=_st($1)._with_(_st(aSlide)._title());
  1054. return $2;
  1055. }, function($ctx3) {$ctx3.fillBlock({aSlide:aSlide},$ctx2)})}));
  1056. }, function($ctx2) {$ctx2.fillBlock({html:html,index:index},$ctx1)})}));
  1057. return self}, function($ctx1) {$ctx1.fill(self,"updateSlideSelect",{},smalltalk.PresentationNavigator)})},
  1058. messageSends: ["contents:", "slidesDo:", "+", "value:", "option", "with:", "title", "currentPresentation"]}),
  1059. smalltalk.PresentationNavigator);
  1060. smalltalk.addMethod(
  1061. smalltalk.method({
  1062. selector: "initialize",
  1063. fn: function (){
  1064. var self=this;
  1065. return smalltalk.withContext(function($ctx1) {
  1066. var $1;
  1067. $1=self._open();
  1068. return $1;
  1069. }, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.PresentationNavigator.klass)})},
  1070. messageSends: ["open"]}),
  1071. smalltalk.PresentationNavigator.klass);
  1072. smalltalk.addMethod(
  1073. smalltalk.method({
  1074. selector: "open",
  1075. fn: function (){
  1076. var self=this;
  1077. return smalltalk.withContext(function($ctx1) {
  1078. var $1;
  1079. $1=_st(self._new())._open();
  1080. return $1;
  1081. }, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.PresentationNavigator.klass)})},
  1082. messageSends: ["open", "new"]}),
  1083. smalltalk.PresentationNavigator.klass);
  1084. smalltalk.addClass('Slide', smalltalk.Widget, ['presentation'], 'Presentation');
  1085. smalltalk.addMethod(
  1086. smalltalk.method({
  1087. selector: "backgroundColor",
  1088. fn: function (){
  1089. var self=this;
  1090. return smalltalk.withContext(function($ctx1) {
  1091. return "#555";
  1092. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.Slide)})},
  1093. messageSends: []}),
  1094. smalltalk.Slide);
  1095. smalltalk.addMethod(
  1096. smalltalk.method({
  1097. selector: "cssClass",
  1098. fn: function (){
  1099. var self=this;
  1100. return smalltalk.withContext(function($ctx1) {
  1101. return "slide";
  1102. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.Slide)})},
  1103. messageSends: []}),
  1104. smalltalk.Slide);
  1105. smalltalk.addMethod(
  1106. smalltalk.method({
  1107. selector: "id",
  1108. fn: function (){
  1109. var self=this;
  1110. return smalltalk.withContext(function($ctx1) {
  1111. var $1;
  1112. $1=_st(self._class())._name();
  1113. return $1;
  1114. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.Slide)})},
  1115. messageSends: ["name", "class"]}),
  1116. smalltalk.Slide);
  1117. smalltalk.addMethod(
  1118. smalltalk.method({
  1119. selector: "presentation",
  1120. fn: function (){
  1121. var self=this;
  1122. return smalltalk.withContext(function($ctx1) {
  1123. var $1;
  1124. $1=self["@presentation"];
  1125. return $1;
  1126. }, function($ctx1) {$ctx1.fill(self,"presentation",{},smalltalk.Slide)})},
  1127. messageSends: []}),
  1128. smalltalk.Slide);
  1129. smalltalk.addMethod(
  1130. smalltalk.method({
  1131. selector: "presentation:",
  1132. fn: function (aPresentation){
  1133. var self=this;
  1134. return smalltalk.withContext(function($ctx1) {
  1135. self["@presentation"]=aPresentation;
  1136. return self}, function($ctx1) {$ctx1.fill(self,"presentation:",{aPresentation:aPresentation},smalltalk.Slide)})},
  1137. messageSends: []}),
  1138. smalltalk.Slide);
  1139. smalltalk.addMethod(
  1140. smalltalk.method({
  1141. selector: "renderMetaOn:",
  1142. fn: function (html){
  1143. var self=this;
  1144. return smalltalk.withContext(function($ctx1) {
  1145. var $1,$3,$4,$5,$6,$7,$8,$9,$10,$2;
  1146. $1=_st(html)._div();
  1147. _st($1)._id_("meta");
  1148. $2=_st($1)._with_((function(){
  1149. return smalltalk.withContext(function($ctx2) {
  1150. $3=_st(html)._p();
  1151. _st($3)._class_("title");
  1152. $4=_st($3)._with_(_st(self._presentation())._title());
  1153. $4;
  1154. $5=_st(html)._p();
  1155. _st($5)._class_("description");
  1156. $6=_st($5)._with_(_st(self._presentation())._description());
  1157. $6;
  1158. $7=_st(html)._a();
  1159. _st($7)._class_("author");
  1160. _st($7)._with_(_st(self._presentation())._author());
  1161. $8=_st($7)._href_("mailto:".__comma(_st(self._presentation())._email()));
  1162. $8;
  1163. $9=_st(html)._a();
  1164. _st($9)._class_("url");
  1165. _st($9)._with_(_st(self._presentation())._url());
  1166. $10=_st($9)._href_(_st(self._presentation())._url());
  1167. return $10;
  1168. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1169. return self}, function($ctx1) {$ctx1.fill(self,"renderMetaOn:",{html:html},smalltalk.Slide)})},
  1170. messageSends: ["id:", "div", "with:", "class:", "p", "title", "presentation", "description", "a", "author", "href:", ",", "email", "url"]}),
  1171. smalltalk.Slide);
  1172. smalltalk.addMethod(
  1173. smalltalk.method({
  1174. selector: "renderOn:",
  1175. fn: function (html){
  1176. var self=this;
  1177. return smalltalk.withContext(function($ctx1) {
  1178. var $1,$2;
  1179. $1=_st(html)._div();
  1180. _st($1)._class_(self._cssClass());
  1181. _st($1)._id_(self._id());
  1182. $2=_st($1)._with_((function(){
  1183. return smalltalk.withContext(function($ctx2) {
  1184. self._renderSlideOn_(html);
  1185. return self._renderMetaOn_(html);
  1186. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1187. return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.Slide)})},
  1188. messageSends: ["class:", "cssClass", "div", "id:", "id", "with:", "renderSlideOn:", "renderMetaOn:"]}),
  1189. smalltalk.Slide);
  1190. smalltalk.addMethod(
  1191. smalltalk.method({
  1192. selector: "renderSlideOn:",
  1193. fn: function (html){
  1194. var self=this;
  1195. return smalltalk.withContext(function($ctx1) {
  1196. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.Slide)})},
  1197. messageSends: []}),
  1198. smalltalk.Slide);
  1199. smalltalk.addMethod(
  1200. smalltalk.method({
  1201. selector: "show",
  1202. fn: function (){
  1203. var self=this;
  1204. return smalltalk.withContext(function($ctx1) {
  1205. var $1;
  1206. $1=self._backgroundColor();
  1207. if(($receiver = $1) == nil || $receiver == undefined){
  1208. $1;
  1209. } else {
  1210. _st(_st(window)._jQuery_("#slides"))._css_color_("background",self._backgroundColor());
  1211. };
  1212. _st(_st(window)._jQuery_(".slide"))._hide_options_duration_(_st(self._presentation())._slideTransition(),[],(300));
  1213. _st(_st(window)._jQuery_("#".__comma(self._id())))._show_options_duration_(_st(self._presentation())._slideTransition(),[],(300));
  1214. return self}, function($ctx1) {$ctx1.fill(self,"show",{},smalltalk.Slide)})},
  1215. messageSends: ["ifNotNil:", "css:color:", "backgroundColor", "jQuery:", "hide:options:duration:", "slideTransition", "presentation", "show:options:duration:", ",", "id"]}),
  1216. smalltalk.Slide);
  1217. smalltalk.addMethod(
  1218. smalltalk.method({
  1219. selector: "title",
  1220. fn: function (){
  1221. var self=this;
  1222. return smalltalk.withContext(function($ctx1) {
  1223. var $1;
  1224. $1=self._id();
  1225. return $1;
  1226. }, function($ctx1) {$ctx1.fill(self,"title",{},smalltalk.Slide)})},
  1227. messageSends: ["id"]}),
  1228. smalltalk.Slide);
  1229. smalltalk.addMethod(
  1230. smalltalk.method({
  1231. selector: "on:",
  1232. fn: function (aPresentation){
  1233. var self=this;
  1234. return smalltalk.withContext(function($ctx1) {
  1235. var $2,$3,$1;
  1236. $2=self._new();
  1237. _st($2)._presentation_(aPresentation);
  1238. $3=_st($2)._yourself();
  1239. $1=$3;
  1240. return $1;
  1241. }, function($ctx1) {$ctx1.fill(self,"on:",{aPresentation:aPresentation},smalltalk.Slide.klass)})},
  1242. messageSends: ["presentation:", "new", "yourself"]}),
  1243. smalltalk.Slide.klass);
  1244. smalltalk.addClass('AboutSlide', smalltalk.Slide, [], 'Presentation');
  1245. smalltalk.addMethod(
  1246. smalltalk.method({
  1247. selector: "backgroundColor",
  1248. fn: function (){
  1249. var self=this;
  1250. return smalltalk.withContext(function($ctx1) {
  1251. return "white";
  1252. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.AboutSlide)})},
  1253. messageSends: []}),
  1254. smalltalk.AboutSlide);
  1255. smalltalk.addMethod(
  1256. smalltalk.method({
  1257. selector: "cssClass",
  1258. fn: function (){
  1259. var self=this;
  1260. return smalltalk.withContext(function($ctx1) {
  1261. return "slide transparent white";
  1262. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.AboutSlide)})},
  1263. messageSends: []}),
  1264. smalltalk.AboutSlide);
  1265. smalltalk.addMethod(
  1266. smalltalk.method({
  1267. selector: "id",
  1268. fn: function (){
  1269. var self=this;
  1270. return smalltalk.withContext(function($ctx1) {
  1271. return "about";
  1272. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.AboutSlide)})},
  1273. messageSends: []}),
  1274. smalltalk.AboutSlide);
  1275. smalltalk.addMethod(
  1276. smalltalk.method({
  1277. selector: "renderSlideOn:",
  1278. fn: function (html){
  1279. var self=this;
  1280. function $Presentation(){return smalltalk.Presentation||(typeof Presentation=="undefined"?nil:Presentation)}
  1281. function $Browser(){return smalltalk.Browser||(typeof Browser=="undefined"?nil:Browser)}
  1282. return smalltalk.withContext(function($ctx1) {
  1283. var $1,$3,$4,$2;
  1284. $1=_st(html)._div();
  1285. _st($1)._class_("section center");
  1286. $2=_st($1)._with_((function(){
  1287. return smalltalk.withContext(function($ctx2) {
  1288. _st(_st(html)._h1())._with_("About this presentation");
  1289. _st(_st(html)._p())._with_("This presentation is entirely written in Jtalk and is licensed under CC BY-SA.");
  1290. _st(_st(html)._p())._with_((function(){
  1291. return smalltalk.withContext(function($ctx3) {
  1292. _st(html)._with_("Press ");
  1293. _st(_st(html)._code())._with_("←");
  1294. _st(html)._with_(" to move backward and ");
  1295. _st(_st(html)._code())._with_(" →");
  1296. return _st(html)._with_(" to move forward.");
  1297. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1298. return _st(_st(html)._p())._with_((function(){
  1299. return smalltalk.withContext(function($ctx3) {
  1300. _st(html)._with_("Open a ");
  1301. $3=_st(html)._button();
  1302. _st($3)._with_("browser");
  1303. $4=_st($3)._onClick_((function(){
  1304. return smalltalk.withContext(function($ctx4) {
  1305. return _st($Browser())._openOn_($Presentation());
  1306. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  1307. $4;
  1308. return _st(html)._with_(" to edit the source code.");
  1309. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1310. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1311. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.AboutSlide)})},
  1312. messageSends: ["class:", "div", "with:", "h1", "p", "code", "button", "onClick:", "openOn:"]}),
  1313. smalltalk.AboutSlide);
  1314. smalltalk.addClass('ContributionsSlide', smalltalk.Slide, [], 'Presentation');
  1315. smalltalk.addMethod(
  1316. smalltalk.method({
  1317. selector: "id",
  1318. fn: function (){
  1319. var self=this;
  1320. return smalltalk.withContext(function($ctx1) {
  1321. return "links";
  1322. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.ContributionsSlide)})},
  1323. messageSends: []}),
  1324. smalltalk.ContributionsSlide);
  1325. smalltalk.addMethod(
  1326. smalltalk.method({
  1327. selector: "renderSlideOn:",
  1328. fn: function (html){
  1329. var self=this;
  1330. return smalltalk.withContext(function($ctx1) {
  1331. var $1,$3,$4,$5,$6,$7,$8,$2;
  1332. $1=_st(html)._div();
  1333. _st($1)._class_("section");
  1334. $2=_st($1)._with_((function(){
  1335. return smalltalk.withContext(function($ctx2) {
  1336. _st(_st(html)._p())._with_((function(){
  1337. return smalltalk.withContext(function($ctx3) {
  1338. $3=_st(html)._a();
  1339. _st($3)._href_("http://jtalk-project.org");
  1340. $4=_st($3)._with_("jtalk-project.org");
  1341. return $4;
  1342. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1343. _st(_st(html)._p())._with_((function(){
  1344. return smalltalk.withContext(function($ctx3) {
  1345. $5=_st(html)._a();
  1346. _st($5)._href_("https://github.com/NicolasPetton/jtalk");
  1347. $6=_st($5)._with_("github.com/NicolasPetton/jtalk");
  1348. return $6;
  1349. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1350. return _st(_st(html)._p())._with_((function(){
  1351. return smalltalk.withContext(function($ctx3) {
  1352. $7=_st(html)._a();
  1353. _st($7)._href_("http://http://groups.google.com/group/jtalk-project");
  1354. $8=_st($7)._with_("groups.google.com/group/jtalk-project");
  1355. return $8;
  1356. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1357. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1358. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.ContributionsSlide)})},
  1359. messageSends: ["class:", "div", "with:", "href:", "a", "p"]}),
  1360. smalltalk.ContributionsSlide);
  1361. smalltalk.addClass('CountersSlide', smalltalk.Slide, [], 'Presentation');
  1362. smalltalk.addMethod(
  1363. smalltalk.method({
  1364. selector: "backgroundColor",
  1365. fn: function (){
  1366. var self=this;
  1367. return smalltalk.withContext(function($ctx1) {
  1368. return "#18bd7d";
  1369. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.CountersSlide)})},
  1370. messageSends: []}),
  1371. smalltalk.CountersSlide);
  1372. smalltalk.addMethod(
  1373. smalltalk.method({
  1374. selector: "id",
  1375. fn: function (){
  1376. var self=this;
  1377. return smalltalk.withContext(function($ctx1) {
  1378. return "counters";
  1379. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.CountersSlide)})},
  1380. messageSends: []}),
  1381. smalltalk.CountersSlide);
  1382. smalltalk.addMethod(
  1383. smalltalk.method({
  1384. selector: "renderSlideOn:",
  1385. fn: function (html){
  1386. var self=this;
  1387. function $Counter(){return smalltalk.Counter||(typeof Counter=="undefined"?nil:Counter)}
  1388. return smalltalk.withContext(function($ctx1) {
  1389. var $1,$2;
  1390. $1=_st(html)._div();
  1391. _st($1)._class_("section center");
  1392. $2=_st($1)._with_((function(){
  1393. return smalltalk.withContext(function($ctx2) {
  1394. _st(_st(html)._h1())._with_("The counter example");
  1395. return _st(_st(html)._div())._with_((function(){
  1396. return smalltalk.withContext(function($ctx3) {
  1397. return (2)._timesRepeat_((function(){
  1398. return smalltalk.withContext(function($ctx4) {
  1399. return _st(_st($Counter())._new())._renderOn_(html);
  1400. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  1401. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1402. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1403. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.CountersSlide)})},
  1404. messageSends: ["class:", "div", "with:", "h1", "timesRepeat:", "renderOn:", "new"]}),
  1405. smalltalk.CountersSlide);
  1406. smalltalk.addClass('FOSDEMSlide', smalltalk.Slide, [], 'Presentation');
  1407. smalltalk.addMethod(
  1408. smalltalk.method({
  1409. selector: "codeSnippet",
  1410. fn: function (){
  1411. var self=this;
  1412. return smalltalk.withContext(function($ctx1) {
  1413. self._subclassResponsibility();
  1414. return self}, function($ctx1) {$ctx1.fill(self,"codeSnippet",{},smalltalk.FOSDEMSlide)})},
  1415. messageSends: ["subclassResponsibility"]}),
  1416. smalltalk.FOSDEMSlide);
  1417. smalltalk.addMethod(
  1418. smalltalk.method({
  1419. selector: "renderCodeSnippetOn:",
  1420. fn: function (html){
  1421. var self=this;
  1422. function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
  1423. return smalltalk.withContext(function($ctx1) {
  1424. var $1,$2;
  1425. $1=_st($SourceArea())._new();
  1426. _st($1)._renderOn_(html);
  1427. $2=_st($1)._editor();
  1428. _st($2)._setValue_(self._codeSnippet());
  1429. return self}, function($ctx1) {$ctx1.fill(self,"renderCodeSnippetOn:",{html:html},smalltalk.FOSDEMSlide)})},
  1430. messageSends: ["setValue:", "codeSnippet", "renderOn:", "new", "editor"]}),
  1431. smalltalk.FOSDEMSlide);
  1432. smalltalk.addMethod(
  1433. smalltalk.method({
  1434. selector: "renderSnippet:on:",
  1435. fn: function (aString,html){
  1436. var self=this;
  1437. function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
  1438. return smalltalk.withContext(function($ctx1) {
  1439. var $1,$2;
  1440. $1=_st($SourceArea())._new();
  1441. _st($1)._renderOn_(html);
  1442. $2=_st($1)._editor();
  1443. _st($2)._setValue_(aString);
  1444. return self}, function($ctx1) {$ctx1.fill(self,"renderSnippet:on:",{aString:aString,html:html},smalltalk.FOSDEMSlide)})},
  1445. messageSends: ["setValue:", "renderOn:", "new", "editor"]}),
  1446. smalltalk.FOSDEMSlide);
  1447. smalltalk.addClass('FOSDEMAmberBackend', smalltalk.FOSDEMSlide, [], 'Presentation');
  1448. smalltalk.addMethod(
  1449. smalltalk.method({
  1450. selector: "cssClass",
  1451. fn: function (){
  1452. var self=this;
  1453. return smalltalk.withContext(function($ctx1) {
  1454. return "slide green3d";
  1455. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.FOSDEMAmberBackend)})},
  1456. messageSends: []}),
  1457. smalltalk.FOSDEMAmberBackend);
  1458. smalltalk.addMethod(
  1459. smalltalk.method({
  1460. selector: "renderSlideOn:",
  1461. fn: function (html){
  1462. var self=this;
  1463. return smalltalk.withContext(function($ctx1) {
  1464. var $1,$2;
  1465. $1=_st(html)._div();
  1466. _st($1)._class_("section center");
  1467. $2=_st($1)._with_((function(){
  1468. return smalltalk.withContext(function($ctx2) {
  1469. _st(html)._h1_("Need a backend ?");
  1470. return _st(["nodejs.png","php.gif","rails.png","pharo.png","ambrhino.jpg"])._do_((function(aString){
  1471. return smalltalk.withContext(function($ctx3) {
  1472. return _st(html)._img_("fosdem2012/images/".__comma(aString));
  1473. }, function($ctx3) {$ctx3.fillBlock({aString:aString},$ctx2)})}));
  1474. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1475. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMAmberBackend)})},
  1476. messageSends: ["class:", "div", "with:", "h1:", "do:", "img:", ","]}),
  1477. smalltalk.FOSDEMAmberBackend);
  1478. smalltalk.addClass('FOSDEMAmberZeroNine', smalltalk.FOSDEMSlide, [], 'Presentation');
  1479. smalltalk.addMethod(
  1480. smalltalk.method({
  1481. selector: "renderSlideOn:",
  1482. fn: function (html){
  1483. var self=this;
  1484. return smalltalk.withContext(function($ctx1) {
  1485. var $1,$3,$4,$2;
  1486. $1=_st(html)._div();
  1487. _st($1)._class_("section center");
  1488. $2=_st($1)._with_((function(){
  1489. return smalltalk.withContext(function($ctx2) {
  1490. $3=html;
  1491. _st($3)._h1_("Amber 0.9.1 is out !");
  1492. _st($3)._div_((function(){
  1493. return smalltalk.withContext(function($ctx3) {
  1494. return _st(_st(html)._cite())._with_("Now with over 43 forks on github and more than 230 followers the project: http://www.amber-lang.net ...is live and kicking!");
  1495. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1496. $4=_st($3)._div_((function(){
  1497. return smalltalk.withContext(function($ctx3) {
  1498. return _st(_st(html)._cite())._with_("-- Nicolas & Göran");
  1499. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1500. return $4;
  1501. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1502. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMAmberZeroNine)})},
  1503. messageSends: ["class:", "div", "with:", "h1:", "div:", "cite"]}),
  1504. smalltalk.FOSDEMAmberZeroNine);
  1505. smalltalk.addClass('FOSDEMBookletSlide', smalltalk.FOSDEMSlide, [], 'Presentation');
  1506. smalltalk.addMethod(
  1507. smalltalk.method({
  1508. selector: "bookletOptions",
  1509. fn: function (){
  1510. var self=this;
  1511. return smalltalk.withContext(function($ctx1) {
  1512. var $1;
  1513. $1=smalltalk.HashedCollection._from_(["arrows".__minus_gt(true),"keyboard".__minus_gt(false),"pageNumbers".__minus_gt(false),"closed".__minus_gt(true)]);
  1514. return $1;
  1515. }, function($ctx1) {$ctx1.fill(self,"bookletOptions",{},smalltalk.FOSDEMBookletSlide)})},
  1516. messageSends: ["->"]}),
  1517. smalltalk.FOSDEMBookletSlide);
  1518. smalltalk.addMethod(
  1519. smalltalk.method({
  1520. selector: "cssClass",
  1521. fn: function (){
  1522. var self=this;
  1523. return smalltalk.withContext(function($ctx1) {
  1524. return "slide blue3d";
  1525. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.FOSDEMBookletSlide)})},
  1526. messageSends: []}),
  1527. smalltalk.FOSDEMBookletSlide);
  1528. smalltalk.addMethod(
  1529. smalltalk.method({
  1530. selector: "renderBookOn:",
  1531. fn: function (html){
  1532. var self=this;
  1533. function $FOSDEMBookletSlide(){return smalltalk.FOSDEMBookletSlide||(typeof FOSDEMBookletSlide=="undefined"?nil:FOSDEMBookletSlide)}
  1534. function $Browser(){return smalltalk.Browser||(typeof Browser=="undefined"?nil:Browser)}
  1535. return smalltalk.withContext(function($ctx1) {
  1536. var $1,$3,$5,$7,$8,$6,$4,$2;
  1537. $1=_st(html)._div();
  1538. _st($1)._id_("book");
  1539. $2=_st($1)._with_((function(){
  1540. return smalltalk.withContext(function($ctx2) {
  1541. $3=_st(html)._div();
  1542. _st($3)._class_("b-load");
  1543. $4=_st($3)._with_((function(){
  1544. return smalltalk.withContext(function($ctx3) {
  1545. $5=html;
  1546. _st($5)._div_("Amber makes it easy to plug existing javascript libraires");
  1547. _st($5)._div_("Here is an example with the jQuery Booklet plugin");
  1548. _st($5)._div_("Want to see how ?");
  1549. $6=_st($5)._div_((function(){
  1550. return smalltalk.withContext(function($ctx4) {
  1551. $7=_st(html)._button();
  1552. _st($7)._onClick_((function(){
  1553. return smalltalk.withContext(function($ctx5) {
  1554. return _st($Browser())._openOn_($FOSDEMBookletSlide());
  1555. }, function($ctx5) {$ctx5.fillBlock({},$ctx4)})}));
  1556. $8=_st($7)._with_("Just browse the code :)");
  1557. return $8;
  1558. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  1559. return $6;
  1560. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1561. return $4;
  1562. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1563. return self}, function($ctx1) {$ctx1.fill(self,"renderBookOn:",{html:html},smalltalk.FOSDEMBookletSlide)})},
  1564. messageSends: ["id:", "div", "with:", "class:", "div:", "onClick:", "openOn:", "button"]}),
  1565. smalltalk.FOSDEMBookletSlide);
  1566. smalltalk.addMethod(
  1567. smalltalk.method({
  1568. selector: "renderSlideOn:",
  1569. fn: function (html){
  1570. var self=this;
  1571. return smalltalk.withContext(function($ctx1) {
  1572. var $1,$2;
  1573. self._renderBookOn_(html);
  1574. $1=_st(html)._link();
  1575. _st($1)._rel_("stylesheet");
  1576. $2=_st($1)._href_("fosdem2012/lib/booklet/jquery.booklet.1.2.0.css");
  1577. _st(html)._style_(self._style());
  1578. _st(jQuery)._getScript_do_("fosdem2012/lib/booklet/jquery.booklet.1.2.0.min.js",(function(){
  1579. return smalltalk.withContext(function($ctx2) {
  1580. return _st("#book"._asJQuery())._booklet_(self._bookletOptions());
  1581. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1582. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMBookletSlide)})},
  1583. messageSends: ["renderBookOn:", "rel:", "link", "href:", "style:", "style", "getScript:do:", "booklet:", "bookletOptions", "asJQuery"]}),
  1584. smalltalk.FOSDEMBookletSlide);
  1585. smalltalk.addMethod(
  1586. smalltalk.method({
  1587. selector: "style",
  1588. fn: function (){
  1589. var self=this;
  1590. return smalltalk.withContext(function($ctx1) {
  1591. return "\x0a#book { font-size: 1.4em; }\x0a#book .b-load .b-wrap-right { background-color: #DEC3A9;}\x0a#book .b-load .b-wrap-left { background-color: #DDD;} \x0a";
  1592. }, function($ctx1) {$ctx1.fill(self,"style",{},smalltalk.FOSDEMBookletSlide)})},
  1593. messageSends: []}),
  1594. smalltalk.FOSDEMBookletSlide);
  1595. smalltalk.addClass('FOSDEMCLISlide', smalltalk.FOSDEMSlide, [], 'Presentation');
  1596. smalltalk.addMethod(
  1597. smalltalk.method({
  1598. selector: "codeSnippet",
  1599. fn: function (){
  1600. var self=this;
  1601. return smalltalk.withContext(function($ctx1) {
  1602. return "cd examples/nodejs/hello\x0a../../../bin/amberc -m Hello Hello.st Program\x0anode Program.js\x0a\x0aHello world from Amber in Node.js";
  1603. }, function($ctx1) {$ctx1.fill(self,"codeSnippet",{},smalltalk.FOSDEMCLISlide)})},
  1604. messageSends: []}),
  1605. smalltalk.FOSDEMCLISlide);
  1606. smalltalk.addMethod(
  1607. smalltalk.method({
  1608. selector: "renderSlideOn:",
  1609. fn: function (html){
  1610. var self=this;
  1611. return smalltalk.withContext(function($ctx1) {
  1612. _st(html)._h1_("CLI");
  1613. _st(html)._with_("amberc compiles .st files into node programs !");
  1614. self._renderCodeSnippetOn_(html);
  1615. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMCLISlide)})},
  1616. messageSends: ["h1:", "with:", "renderCodeSnippetOn:"]}),
  1617. smalltalk.FOSDEMCLISlide);
  1618. smalltalk.addClass('FOSDEMCanvasSlide', smalltalk.FOSDEMSlide, ['c2d', 'canvas'], 'Presentation');
  1619. smalltalk.addMethod(
  1620. smalltalk.method({
  1621. selector: "cssClass",
  1622. fn: function (){
  1623. var self=this;
  1624. return smalltalk.withContext(function($ctx1) {
  1625. return "slide red3d";
  1626. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.FOSDEMCanvasSlide)})},
  1627. messageSends: []}),
  1628. smalltalk.FOSDEMCanvasSlide);
  1629. smalltalk.addMethod(
  1630. smalltalk.method({
  1631. selector: "drawOnCanvas",
  1632. fn: function (){
  1633. var self=this;
  1634. return smalltalk.withContext(function($ctx1) {
  1635. self["@c2d"]=_st(_st(self["@canvas"])._element())._getContext_("2d");
  1636. _st(self["@c2d"])._clearRect_y_width_height_((0),(0),_st(_st(self["@canvas"])._element())._width(),_st(_st(self["@canvas"])._element())._height());
  1637. _st((40)._atRandom())._timesRepeat_((function(){
  1638. var rgba;
  1639. return smalltalk.withContext(function($ctx2) {
  1640. rgba=","._join_([(255)._atRandom(),(255)._atRandom(),(255)._atRandom(),_st((10)._atRandom()).__slash((10))]);
  1641. rgba;
  1642. _st(self["@c2d"])._at_put_("fillStyle",_st("rgba(".__comma(rgba)).__comma(")"));
  1643. return _st(self["@c2d"])._fillRect_y_width_height_((600)._atRandom(),(300)._atRandom(),(200)._atRandom(),(200)._atRandom());
  1644. }, function($ctx2) {$ctx2.fillBlock({rgba:rgba},$ctx1)})}));
  1645. return self}, function($ctx1) {$ctx1.fill(self,"drawOnCanvas",{},smalltalk.FOSDEMCanvasSlide)})},
  1646. messageSends: ["getContext:", "element", "clearRect:y:width:height:", "width", "height", "timesRepeat:", "join:", "atRandom", "/", "at:put:", ",", "fillRect:y:width:height:"]}),
  1647. smalltalk.FOSDEMCanvasSlide);
  1648. smalltalk.addMethod(
  1649. smalltalk.method({
  1650. selector: "renderSlideOn:",
  1651. fn: function (html){
  1652. var self=this;
  1653. return smalltalk.withContext(function($ctx1) {
  1654. var $1,$2;
  1655. _st(html)._h1_("Playing with canvas");
  1656. $1=_st(html)._canvas();
  1657. _st($1)._width_((700));
  1658. $2=_st($1)._height_((400));
  1659. self["@canvas"]=$2;
  1660. self._updateCanvas();
  1661. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMCanvasSlide)})},
  1662. messageSends: ["h1:", "width:", "canvas", "height:", "updateCanvas"]}),
  1663. smalltalk.FOSDEMCanvasSlide);
  1664. smalltalk.addMethod(
  1665. smalltalk.method({
  1666. selector: "updateCanvas",
  1667. fn: function (){
  1668. var self=this;
  1669. return smalltalk.withContext(function($ctx1) {
  1670. self._drawOnCanvas();
  1671. _st(window)._setTimeout_delay_((function(){
  1672. return smalltalk.withContext(function($ctx2) {
  1673. return self._updateCanvas();
  1674. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(500));
  1675. return self}, function($ctx1) {$ctx1.fill(self,"updateCanvas",{},smalltalk.FOSDEMCanvasSlide)})},
  1676. messageSends: ["drawOnCanvas", "setTimeout:delay:", "updateCanvas"]}),
  1677. smalltalk.FOSDEMCanvasSlide);
  1678. smalltalk.addClass('FOSDEMContributionsSlide', smalltalk.FOSDEMSlide, [], 'Presentation');
  1679. smalltalk.addMethod(
  1680. smalltalk.method({
  1681. selector: "renderSlideOn:",
  1682. fn: function (html){
  1683. var self=this;
  1684. return smalltalk.withContext(function($ctx1) {
  1685. var $1,$3,$4,$5,$6,$7,$8,$9,$10,$2;
  1686. $1=_st(html)._div();
  1687. _st($1)._class_("section");
  1688. $2=_st($1)._with_((function(){
  1689. return smalltalk.withContext(function($ctx2) {
  1690. _st(_st(html)._p())._with_((function(){
  1691. return smalltalk.withContext(function($ctx3) {
  1692. $3=_st(html)._a();
  1693. _st($3)._href_("/documentation.html");
  1694. $4=_st($3)._with_("Documentation");
  1695. return $4;
  1696. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1697. _st(_st(html)._p())._with_((function(){
  1698. return smalltalk.withContext(function($ctx3) {
  1699. $5=_st(html)._a();
  1700. _st($5)._href_("http://amber-lang.net");
  1701. $6=_st($5)._with_("amber-lang.net");
  1702. return $6;
  1703. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1704. _st(_st(html)._p())._with_((function(){
  1705. return smalltalk.withContext(function($ctx3) {
  1706. $7=_st(html)._a();
  1707. _st($7)._href_("https://github.com/amber-smalltalk/amber");
  1708. $8=_st($7)._with_("github.com/amber-smalltalk/amber");
  1709. return $8;
  1710. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1711. return _st(_st(html)._p())._with_((function(){
  1712. return smalltalk.withContext(function($ctx3) {
  1713. $9=_st(html)._a();
  1714. _st($9)._href_("http://groups.google.com/group/amber-lang");
  1715. $10=_st($9)._with_("groups.google.com/group/amber-lang");
  1716. return $10;
  1717. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1718. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1719. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMContributionsSlide)})},
  1720. messageSends: ["class:", "div", "with:", "href:", "a", "p"]}),
  1721. smalltalk.FOSDEMContributionsSlide);
  1722. smalltalk.addClass('FOSDEMIntroSlide', smalltalk.FOSDEMSlide, [], 'Presentation');
  1723. smalltalk.addMethod(
  1724. smalltalk.method({
  1725. selector: "renderSlideOn:",
  1726. fn: function (html){
  1727. var self=this;
  1728. return smalltalk.withContext(function($ctx1) {
  1729. var $1,$2;
  1730. $1=_st(html)._div();
  1731. _st($1)._class_("section center animate");
  1732. $2=_st($1)._with_((function(){
  1733. return smalltalk.withContext(function($ctx2) {
  1734. _st(_st(html)._img())._src_("fosdem2012/images/amber.png");
  1735. _st(html)._p_(_st(self._presentation())._author());
  1736. _st(html)._p_(_st(self._presentation())._description());
  1737. return _st(html)._p_((function(){
  1738. return smalltalk.withContext(function($ctx3) {
  1739. return _st(html)._with_(_st(self._presentation())._email());
  1740. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1741. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1742. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMIntroSlide)})},
  1743. messageSends: ["class:", "div", "with:", "src:", "img", "p:", "author", "presentation", "description", "email"]}),
  1744. smalltalk.FOSDEMIntroSlide);
  1745. smalltalk.addClass('FOSDEMJSPlayGroundSlide', smalltalk.FOSDEMSlide, [], 'Presentation');
  1746. smalltalk.addMethod(
  1747. smalltalk.method({
  1748. selector: "codeSnippet",
  1749. fn: function (){
  1750. var self=this;
  1751. return smalltalk.withContext(function($ctx1) {
  1752. return "|logo|\x0alogo:='img#amberlogo' asJQuery.\x0a\x0alogo\x0a css:'-webkit-transition' put:'all 10s ease-in-out'.\x0a\x0a<logo.css('-webkit-transform', 'rotateY(360deg)');>.\x0a\x0alogo click: [window alert: 'This is cool !'].\x0a\x0alogo inspect";
  1753. }, function($ctx1) {$ctx1.fill(self,"codeSnippet",{},smalltalk.FOSDEMJSPlayGroundSlide)})},
  1754. messageSends: []}),
  1755. smalltalk.FOSDEMJSPlayGroundSlide);
  1756. smalltalk.addMethod(
  1757. smalltalk.method({
  1758. selector: "renderSlideOn:",
  1759. fn: function (html){
  1760. var self=this;
  1761. return smalltalk.withContext(function($ctx1) {
  1762. var $1,$3,$4,$2;
  1763. $1=_st(html)._div();
  1764. _st($1)._class_("section center");
  1765. $2=_st($1)._with_((function(){
  1766. return smalltalk.withContext(function($ctx2) {
  1767. self._renderCodeSnippetOn_(html);
  1768. $3=_st(html)._img();
  1769. _st($3)._id_("amberlogo");
  1770. $4=_st($3)._src_("fosdem2012/images/amber.png");
  1771. return $4;
  1772. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1773. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMJSPlayGroundSlide)})},
  1774. messageSends: ["class:", "div", "with:", "renderCodeSnippetOn:", "id:", "img", "src:"]}),
  1775. smalltalk.FOSDEMJSPlayGroundSlide);
  1776. smalltalk.addClass('FOSDEMJSToSmalltalk', smalltalk.FOSDEMSlide, [], 'Presentation');
  1777. smalltalk.addMethod(
  1778. smalltalk.method({
  1779. selector: "codeSnippet",
  1780. fn: function (){
  1781. var self=this;
  1782. return smalltalk.withContext(function($ctx1) {
  1783. return "var counter = window.smalltalk.Counter._new();\x0acounter._appendToJQuery_($('#jsToSmalltalk'));";
  1784. }, function($ctx1) {$ctx1.fill(self,"codeSnippet",{},smalltalk.FOSDEMJSToSmalltalk)})},
  1785. messageSends: []}),
  1786. smalltalk.FOSDEMJSToSmalltalk);
  1787. smalltalk.addMethod(
  1788. smalltalk.method({
  1789. selector: "cssClass",
  1790. fn: function (){
  1791. var self=this;
  1792. return smalltalk.withContext(function($ctx1) {
  1793. return "slide blue3d";
  1794. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.FOSDEMJSToSmalltalk)})},
  1795. messageSends: []}),
  1796. smalltalk.FOSDEMJSToSmalltalk);
  1797. smalltalk.addMethod(
  1798. smalltalk.method({
  1799. selector: "renderSlideOn:",
  1800. fn: function (html){
  1801. var self=this;
  1802. return smalltalk.withContext(function($ctx1) {
  1803. var $1,$2;
  1804. _st(html)._h1_("Call Smalltalk from Javascript");
  1805. $1=_st(html)._div();
  1806. _st($1)._id_("jsToSmalltalk");
  1807. $2=_st($1)._style_("float: left");
  1808. self._renderCodeSnippetOn_(html);
  1809. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMJSToSmalltalk)})},
  1810. messageSends: ["h1:", "id:", "div", "style:", "renderCodeSnippetOn:"]}),
  1811. smalltalk.FOSDEMJSToSmalltalk);
  1812. smalltalk.addClass('FOSDEMREPLSlide', smalltalk.FOSDEMSlide, [], 'Presentation');
  1813. smalltalk.addMethod(
  1814. smalltalk.method({
  1815. selector: "codeSnippet",
  1816. fn: function (){
  1817. var self=this;
  1818. return smalltalk.withContext(function($ctx1) {
  1819. return "./bin/amber\x0afs := require value: 'fs'.\x0afs readdir: '/tmp' do: [:err :file| console log: file]";
  1820. }, function($ctx1) {$ctx1.fill(self,"codeSnippet",{},smalltalk.FOSDEMREPLSlide)})},
  1821. messageSends: []}),
  1822. smalltalk.FOSDEMREPLSlide);
  1823. smalltalk.addMethod(
  1824. smalltalk.method({
  1825. selector: "renderSlideOn:",
  1826. fn: function (html){
  1827. var self=this;
  1828. return smalltalk.withContext(function($ctx1) {
  1829. _st(html)._h1_("REPL");
  1830. self._renderCodeSnippetOn_(html);
  1831. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMREPLSlide)})},
  1832. messageSends: ["h1:", "renderCodeSnippetOn:"]}),
  1833. smalltalk.FOSDEMREPLSlide);
  1834. smalltalk.addClass('FOSDEMTwitter', smalltalk.FOSDEMSlide, ['twitterDiv'], 'Presentation');
  1835. smalltalk.addMethod(
  1836. smalltalk.method({
  1837. selector: "cssClass",
  1838. fn: function (){
  1839. var self=this;
  1840. return smalltalk.withContext(function($ctx1) {
  1841. return "slide black";
  1842. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.FOSDEMTwitter)})},
  1843. messageSends: []}),
  1844. smalltalk.FOSDEMTwitter);
  1845. smalltalk.addMethod(
  1846. smalltalk.method({
  1847. selector: "loadTweets",
  1848. fn: function (){
  1849. var self=this;
  1850. return smalltalk.withContext(function($ctx1) {
  1851. _st(jQuery)._ajax_options_("http://search.twitter.com/search.json?rpp=3&q=%40AmberSmalltalk",smalltalk.HashedCollection._from_(["type".__minus_gt("GET"),"success".__minus_gt((function(json){
  1852. return smalltalk.withContext(function($ctx2) {
  1853. return self._renderTweets_(_st(json)._results());
  1854. }, function($ctx2) {$ctx2.fillBlock({json:json},$ctx1)})})),"dataType".__minus_gt("jsonp")]));
  1855. return self}, function($ctx1) {$ctx1.fill(self,"loadTweets",{},smalltalk.FOSDEMTwitter)})},
  1856. messageSends: ["ajax:options:", "->", "renderTweets:", "results"]}),
  1857. smalltalk.FOSDEMTwitter);
  1858. smalltalk.addMethod(
  1859. smalltalk.method({
  1860. selector: "renderSlideOn:",
  1861. fn: function (html){
  1862. var self=this;
  1863. return smalltalk.withContext(function($ctx1) {
  1864. var $1,$2;
  1865. $1=_st(html)._button();
  1866. _st($1)._onClick_((function(){
  1867. return smalltalk.withContext(function($ctx2) {
  1868. return self._loadTweets();
  1869. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1870. $2=_st($1)._with_("What about @AmberSmalltalk on Twitter ?");
  1871. self["@twitterDiv"]=_st(html)._div();
  1872. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.FOSDEMTwitter)})},
  1873. messageSends: ["onClick:", "loadTweets", "button", "with:", "div"]}),
  1874. smalltalk.FOSDEMTwitter);
  1875. smalltalk.addMethod(
  1876. smalltalk.method({
  1877. selector: "renderTweet:on:",
  1878. fn: function (tweet,html){
  1879. var self=this;
  1880. return smalltalk.withContext(function($ctx1) {
  1881. var $1,$3,$4,$2;
  1882. $1=_st(html)._div();
  1883. _st($1)._class_("tweet");
  1884. $2=_st($1)._with_((function(){
  1885. return smalltalk.withContext(function($ctx2) {
  1886. $3=html;
  1887. _st($3)._span_(_st(tweet)._at_("created_at"));
  1888. _st($3)._img_(_st(tweet)._at_("profile_image_url"));
  1889. _st($3)._span_(_st(tweet)._at_("from_user"));
  1890. $4=_st($3)._div_(_st(tweet)._at_("text"));
  1891. return $4;
  1892. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  1893. return self}, function($ctx1) {$ctx1.fill(self,"renderTweet:on:",{tweet:tweet,html:html},smalltalk.FOSDEMTwitter)})},
  1894. messageSends: ["class:", "div", "with:", "span:", "at:", "img:", "div:"]}),
  1895. smalltalk.FOSDEMTwitter);
  1896. smalltalk.addMethod(
  1897. smalltalk.method({
  1898. selector: "renderTweets:",
  1899. fn: function (tweets){
  1900. var self=this;
  1901. return smalltalk.withContext(function($ctx1) {
  1902. _st(self["@twitterDiv"])._contents_((function(html){
  1903. return smalltalk.withContext(function($ctx2) {
  1904. return _st(tweets)._do_((function(tweet){
  1905. return smalltalk.withContext(function($ctx3) {
  1906. return self._renderTweet_on_(tweet,html);
  1907. }, function($ctx3) {$ctx3.fillBlock({tweet:tweet},$ctx2)})}));
  1908. }, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
  1909. return self}, function($ctx1) {$ctx1.fill(self,"renderTweets:",{tweets:tweets},smalltalk.FOSDEMTwitter)})},
  1910. messageSends: ["contents:", "do:", "renderTweet:on:"]}),
  1911. smalltalk.FOSDEMTwitter);
  1912. smalltalk.addClass('IDESlide', smalltalk.Slide, [], 'Presentation');
  1913. smalltalk.addMethod(
  1914. smalltalk.method({
  1915. selector: "backgroundColor",
  1916. fn: function (){
  1917. var self=this;
  1918. return smalltalk.withContext(function($ctx1) {
  1919. return "black";
  1920. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.IDESlide)})},
  1921. messageSends: []}),
  1922. smalltalk.IDESlide);
  1923. smalltalk.addMethod(
  1924. smalltalk.method({
  1925. selector: "cssClass",
  1926. fn: function (){
  1927. var self=this;
  1928. return smalltalk.withContext(function($ctx1) {
  1929. return "slide transparent";
  1930. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.IDESlide)})},
  1931. messageSends: []}),
  1932. smalltalk.IDESlide);
  1933. smalltalk.addMethod(
  1934. smalltalk.method({
  1935. selector: "id",
  1936. fn: function (){
  1937. var self=this;
  1938. return smalltalk.withContext(function($ctx1) {
  1939. return "ide";
  1940. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.IDESlide)})},
  1941. messageSends: []}),
  1942. smalltalk.IDESlide);
  1943. smalltalk.addMethod(
  1944. smalltalk.method({
  1945. selector: "renderSlideOn:",
  1946. fn: function (html){
  1947. var self=this;
  1948. return smalltalk.withContext(function($ctx1) {
  1949. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.IDESlide)})},
  1950. messageSends: []}),
  1951. smalltalk.IDESlide);
  1952. smalltalk.addClass('IntroSlide', smalltalk.Slide, [], 'Presentation');
  1953. smalltalk.addMethod(
  1954. smalltalk.method({
  1955. selector: "cssClass",
  1956. fn: function (){
  1957. var self=this;
  1958. return smalltalk.withContext(function($ctx1) {
  1959. return "slide black";
  1960. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.IntroSlide)})},
  1961. messageSends: []}),
  1962. smalltalk.IntroSlide);
  1963. smalltalk.addMethod(
  1964. smalltalk.method({
  1965. selector: "id",
  1966. fn: function (){
  1967. var self=this;
  1968. return smalltalk.withContext(function($ctx1) {
  1969. return "intro";
  1970. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.IntroSlide)})},
  1971. messageSends: []}),
  1972. smalltalk.IntroSlide);
  1973. smalltalk.addMethod(
  1974. smalltalk.method({
  1975. selector: "renderSlideOn:",
  1976. fn: function (html){
  1977. var self=this;
  1978. return smalltalk.withContext(function($ctx1) {
  1979. var $1,$3,$4,$5,$6,$7,$8,$2;
  1980. $1=_st(html)._div();
  1981. _st($1)._class_("section center");
  1982. $2=_st($1)._with_((function(){
  1983. return smalltalk.withContext(function($ctx2) {
  1984. _st(_st(html)._h1())._with_("Jtalk, the Smalltalk for Web developers");
  1985. _st(_st(html)._p())._with_(_st(_st(_st(self._presentation())._author()).__comma(" & Göran Krampe - ")).__comma(_st(self._presentation())._description()));
  1986. _st(_st(html)._p())._with_((function(){
  1987. return smalltalk.withContext(function($ctx3) {
  1988. $3=_st(html)._a();
  1989. _st($3)._with_(_st(self._presentation())._email());
  1990. $4=_st($3)._href_("mailto:".__comma(_st(self._presentation())._email()));
  1991. return $4;
  1992. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  1993. _st(_st(html)._p())._with_((function(){
  1994. return smalltalk.withContext(function($ctx3) {
  1995. $5=_st(html)._a();
  1996. _st($5)._with_("goran@krampe.se");
  1997. $6=_st($5)._href_("mailto:goran@krampe.se");
  1998. return $6;
  1999. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2000. return _st(_st(html)._p())._with_((function(){
  2001. return smalltalk.withContext(function($ctx3) {
  2002. $7=_st(html)._a();
  2003. _st($7)._with_("objectfusion.fr");
  2004. $8=_st($7)._href_("http://www.objectfusion.fr");
  2005. return $8;
  2006. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2007. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2008. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.IntroSlide)})},
  2009. messageSends: ["class:", "div", "with:", "h1", ",", "description", "presentation", "author", "p", "email", "a", "href:"]}),
  2010. smalltalk.IntroSlide);
  2011. smalltalk.addClass('JtalkAndCLI', smalltalk.Slide, [], 'Presentation');
  2012. smalltalk.addMethod(
  2013. smalltalk.method({
  2014. selector: "backgroundColor",
  2015. fn: function (){
  2016. var self=this;
  2017. return smalltalk.withContext(function($ctx1) {
  2018. return "#0A1";
  2019. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndCLI)})},
  2020. messageSends: []}),
  2021. smalltalk.JtalkAndCLI);
  2022. smalltalk.addMethod(
  2023. smalltalk.method({
  2024. selector: "id",
  2025. fn: function (){
  2026. var self=this;
  2027. return smalltalk.withContext(function($ctx1) {
  2028. return "JtalkAndCLI";
  2029. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndCLI)})},
  2030. messageSends: []}),
  2031. smalltalk.JtalkAndCLI);
  2032. smalltalk.addMethod(
  2033. smalltalk.method({
  2034. selector: "renderSlideOn:",
  2035. fn: function (html){
  2036. var self=this;
  2037. return smalltalk.withContext(function($ctx1) {
  2038. var $1,$2;
  2039. _st(_st(html)._h1())._with_((function(){
  2040. return smalltalk.withContext(function($ctx2) {
  2041. _st(html)._with_("Jtalk and ");
  2042. $1=_st(html)._span();
  2043. _st($1)._class_("blue");
  2044. $2=_st($1)._with_("the command line");
  2045. return $2;
  2046. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2047. _st(_st(html)._h2())._with_("jtalkc - a fairly elaborate bash script that:");
  2048. _st(_st(html)._ul())._with_((function(){
  2049. return smalltalk.withContext(function($ctx2) {
  2050. _st(_st(html)._li())._with_("Uses Node.js to run the Jtalk Compiler");
  2051. _st(_st(html)._li())._with_("Compiles .st files to .js");
  2052. _st(_st(html)._li())._with_("Links .js files into a single one");
  2053. _st(_st(html)._li())._with_("Adds class initilization and/or call to main");
  2054. return _st(_st(html)._li())._with_("Optionally runs Google Closure compiler");
  2055. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2056. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndCLI)})},
  2057. messageSends: ["with:", "class:", "span", "h1", "h2", "li", "ul"]}),
  2058. smalltalk.JtalkAndCLI);
  2059. smalltalk.addClass('JtalkAndEnyo', smalltalk.Slide, [], 'Presentation');
  2060. smalltalk.addMethod(
  2061. smalltalk.method({
  2062. selector: "backgroundColor",
  2063. fn: function (){
  2064. var self=this;
  2065. return smalltalk.withContext(function($ctx1) {
  2066. return "#0A1";
  2067. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndEnyo)})},
  2068. messageSends: []}),
  2069. smalltalk.JtalkAndEnyo);
  2070. smalltalk.addMethod(
  2071. smalltalk.method({
  2072. selector: "id",
  2073. fn: function (){
  2074. var self=this;
  2075. return smalltalk.withContext(function($ctx1) {
  2076. return "JtalkAndEnyo";
  2077. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndEnyo)})},
  2078. messageSends: []}),
  2079. smalltalk.JtalkAndEnyo);
  2080. smalltalk.addMethod(
  2081. smalltalk.method({
  2082. selector: "renderSlideOn:",
  2083. fn: function (html){
  2084. var self=this;
  2085. return smalltalk.withContext(function($ctx1) {
  2086. var $1,$2;
  2087. _st(_st(html)._h1())._with_((function(){
  2088. return smalltalk.withContext(function($ctx2) {
  2089. _st(html)._with_("Jtalk and ");
  2090. $1=_st(html)._span();
  2091. _st($1)._class_("blue");
  2092. $2=_st($1)._with_("Enyo");
  2093. return $2;
  2094. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2095. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndEnyo)})},
  2096. messageSends: ["with:", "class:", "span", "h1"]}),
  2097. smalltalk.JtalkAndEnyo);
  2098. smalltalk.addClass('JtalkAndJavascriptSlide', smalltalk.Slide, [], 'Presentation');
  2099. smalltalk.addMethod(
  2100. smalltalk.method({
  2101. selector: "backgroundColor",
  2102. fn: function (){
  2103. var self=this;
  2104. return smalltalk.withContext(function($ctx1) {
  2105. return "#08C";
  2106. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndJavascriptSlide)})},
  2107. messageSends: []}),
  2108. smalltalk.JtalkAndJavascriptSlide);
  2109. smalltalk.addMethod(
  2110. smalltalk.method({
  2111. selector: "cssClass",
  2112. fn: function (){
  2113. var self=this;
  2114. return smalltalk.withContext(function($ctx1) {
  2115. return "slide transparent";
  2116. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.JtalkAndJavascriptSlide)})},
  2117. messageSends: []}),
  2118. smalltalk.JtalkAndJavascriptSlide);
  2119. smalltalk.addMethod(
  2120. smalltalk.method({
  2121. selector: "id",
  2122. fn: function (){
  2123. var self=this;
  2124. return smalltalk.withContext(function($ctx1) {
  2125. return "jtalkAndJs";
  2126. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndJavascriptSlide)})},
  2127. messageSends: []}),
  2128. smalltalk.JtalkAndJavascriptSlide);
  2129. smalltalk.addMethod(
  2130. smalltalk.method({
  2131. selector: "renderSlideOn:",
  2132. fn: function (html){
  2133. var self=this;
  2134. return smalltalk.withContext(function($ctx1) {
  2135. var $1,$3,$4,$2;
  2136. $1=_st(html)._div();
  2137. _st($1)._class_("section center");
  2138. $2=_st($1)._with_((function(){
  2139. return smalltalk.withContext(function($ctx2) {
  2140. return _st(_st(html)._h1())._with_((function(){
  2141. return smalltalk.withContext(function($ctx3) {
  2142. _st(html)._with_("Smalltalk ");
  2143. $3=_st(html)._span();
  2144. _st($3)._class_("red");
  2145. $4=_st($3)._with_("♥");
  2146. $4;
  2147. return _st(html)._with_(" JavaScript");
  2148. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2149. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2150. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndJavascriptSlide)})},
  2151. messageSends: ["class:", "div", "with:", "span", "h1"]}),
  2152. smalltalk.JtalkAndJavascriptSlide);
  2153. smalltalk.addClass('JtalkAndJavascriptSlide2', smalltalk.Slide, [], 'Presentation');
  2154. smalltalk.addMethod(
  2155. smalltalk.method({
  2156. selector: "backgroundColor",
  2157. fn: function (){
  2158. var self=this;
  2159. return smalltalk.withContext(function($ctx1) {
  2160. return "#08C";
  2161. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndJavascriptSlide2)})},
  2162. messageSends: []}),
  2163. smalltalk.JtalkAndJavascriptSlide2);
  2164. smalltalk.addMethod(
  2165. smalltalk.method({
  2166. selector: "id",
  2167. fn: function (){
  2168. var self=this;
  2169. return smalltalk.withContext(function($ctx1) {
  2170. return "jtalkAndJs2";
  2171. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndJavascriptSlide2)})},
  2172. messageSends: []}),
  2173. smalltalk.JtalkAndJavascriptSlide2);
  2174. smalltalk.addMethod(
  2175. smalltalk.method({
  2176. selector: "renderSlideOn:",
  2177. fn: function (html){
  2178. var self=this;
  2179. return smalltalk.withContext(function($ctx1) {
  2180. var $1,$2;
  2181. _st(_st(html)._h1())._with_((function(){
  2182. return smalltalk.withContext(function($ctx2) {
  2183. _st(html)._with_("Smalltalk ");
  2184. $1=_st(html)._span();
  2185. _st($1)._class_("red");
  2186. $2=_st($1)._with_("♥");
  2187. $2;
  2188. return _st(html)._with_(" JavaScript");
  2189. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2190. _st(_st(html)._h2())._with_("Jtalk maps one to one with the JavaScript equivalent:");
  2191. _st(_st(html)._ul())._with_((function(){
  2192. return smalltalk.withContext(function($ctx2) {
  2193. _st(_st(html)._li())._with_("String ⇔ String");
  2194. _st(_st(html)._li())._with_("Number ⇔ Number");
  2195. _st(_st(html)._li())._with_("BlockClosure ⇔ function");
  2196. _st(_st(html)._li())._with_("Dictionary ⇔ Object");
  2197. _st(_st(html)._li())._with_("Error ⇔ Error");
  2198. return _st(_st(html)._li())._with_("etc.");
  2199. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2200. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndJavascriptSlide2)})},
  2201. messageSends: ["with:", "class:", "span", "h1", "h2", "li", "ul"]}),
  2202. smalltalk.JtalkAndJavascriptSlide2);
  2203. smalltalk.addClass('JtalkAndJavascriptSlide3', smalltalk.Slide, [], 'Presentation');
  2204. smalltalk.addMethod(
  2205. smalltalk.method({
  2206. selector: "backgroundColor",
  2207. fn: function (){
  2208. var self=this;
  2209. return smalltalk.withContext(function($ctx1) {
  2210. return "#08C";
  2211. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndJavascriptSlide3)})},
  2212. messageSends: []}),
  2213. smalltalk.JtalkAndJavascriptSlide3);
  2214. smalltalk.addMethod(
  2215. smalltalk.method({
  2216. selector: "id",
  2217. fn: function (){
  2218. var self=this;
  2219. return smalltalk.withContext(function($ctx1) {
  2220. return "jtalkAndJs3";
  2221. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndJavascriptSlide3)})},
  2222. messageSends: []}),
  2223. smalltalk.JtalkAndJavascriptSlide3);
  2224. smalltalk.addMethod(
  2225. smalltalk.method({
  2226. selector: "renderSlideOn:",
  2227. fn: function (html){
  2228. var self=this;
  2229. return smalltalk.withContext(function($ctx1) {
  2230. var $1,$2,$3,$4,$5,$6,$7,$8;
  2231. _st(_st(html)._h1())._with_((function(){
  2232. return smalltalk.withContext(function($ctx2) {
  2233. _st(html)._with_("Smalltalk ");
  2234. $1=_st(html)._span();
  2235. _st($1)._class_("red");
  2236. $2=_st($1)._with_("♥");
  2237. $2;
  2238. return _st(html)._with_(" JavaScript");
  2239. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2240. _st(_st(html)._h2())._with_("Smalltalk ⇒ JavaScript");
  2241. _st(_st(html)._ol())._with_((function(){
  2242. return smalltalk.withContext(function($ctx2) {
  2243. $3=_st(html)._li();
  2244. _st($3)._with_("Unary messages begin with an underscore: ");
  2245. _st($3)._with_((function(){
  2246. return smalltalk.withContext(function($ctx3) {
  2247. return _st(_st(html)._code())._with_("yourself");
  2248. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2249. _st($3)._with_(" becomes ");
  2250. $4=_st($3)._with_((function(){
  2251. return smalltalk.withContext(function($ctx3) {
  2252. return _st(_st(html)._code())._with_("_yourself()");
  2253. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2254. $4;
  2255. $5=_st(html)._li();
  2256. _st($5)._with_("Binary messages are prefixed with 2 underscores: ");
  2257. _st($5)._with_((function(){
  2258. return smalltalk.withContext(function($ctx3) {
  2259. return _st(_st(html)._code())._with_("3@4");
  2260. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2261. _st($5)._with_(" becomes ");
  2262. $6=_st($5)._with_((function(){
  2263. return smalltalk.withContext(function($ctx3) {
  2264. return _st(_st(html)._code())._with_("(3).__at(4)");
  2265. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2266. $6;
  2267. $7=_st(html)._li();
  2268. _st($7)._with_("Keyword message follow the same rules as unary messages, with a final underscore: ");
  2269. _st($7)._with_((function(){
  2270. return smalltalk.withContext(function($ctx3) {
  2271. return _st(_st(html)._code())._with_("aDictionary at: 3 put: 4");
  2272. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2273. _st($7)._with_(" becomes ");
  2274. $8=_st($7)._with_((function(){
  2275. return smalltalk.withContext(function($ctx3) {
  2276. return _st(_st(html)._code())._with_("aDictionary._at_put_(3, 4)");
  2277. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2278. return $8;
  2279. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2280. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndJavascriptSlide3)})},
  2281. messageSends: ["with:", "class:", "span", "h1", "h2", "li", "code", "ol"]}),
  2282. smalltalk.JtalkAndJavascriptSlide3);
  2283. smalltalk.addClass('JtalkAndJavascriptSlide4', smalltalk.Slide, [], 'Presentation');
  2284. smalltalk.addMethod(
  2285. smalltalk.method({
  2286. selector: "backgroundColor",
  2287. fn: function (){
  2288. var self=this;
  2289. return smalltalk.withContext(function($ctx1) {
  2290. return "#08C";
  2291. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndJavascriptSlide4)})},
  2292. messageSends: []}),
  2293. smalltalk.JtalkAndJavascriptSlide4);
  2294. smalltalk.addMethod(
  2295. smalltalk.method({
  2296. selector: "id",
  2297. fn: function (){
  2298. var self=this;
  2299. return smalltalk.withContext(function($ctx1) {
  2300. return "jtalkAndJs4";
  2301. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndJavascriptSlide4)})},
  2302. messageSends: []}),
  2303. smalltalk.JtalkAndJavascriptSlide4);
  2304. smalltalk.addMethod(
  2305. smalltalk.method({
  2306. selector: "renderSlideOn:",
  2307. fn: function (html){
  2308. var self=this;
  2309. return smalltalk.withContext(function($ctx1) {
  2310. var $1,$2,$3,$5,$6,$4,$7,$8,$9,$10,$11,$12,$13,$14;
  2311. _st(_st(html)._h1())._with_((function(){
  2312. return smalltalk.withContext(function($ctx2) {
  2313. _st(html)._with_("JavaScript ");
  2314. $1=_st(html)._span();
  2315. _st($1)._class_("red");
  2316. $2=_st($1)._with_("♥");
  2317. $2;
  2318. $3=html;
  2319. _st($3)._with_(" Smalltalk too! ");
  2320. $4=_st($3)._with_((function(){
  2321. return smalltalk.withContext(function($ctx3) {
  2322. $5=_st(html)._span();
  2323. _st($5)._class_("comment");
  2324. $6=_st($5)._with_("(how cute)");
  2325. return $6;
  2326. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2327. return $4;
  2328. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2329. _st(_st(html)._h2())._with_("JavaScript ⇒ Smalltalk");
  2330. _st(_st(html)._ol())._with_((function(){
  2331. return smalltalk.withContext(function($ctx2) {
  2332. $7=_st(html)._li();
  2333. _st($7)._with_((function(){
  2334. return smalltalk.withContext(function($ctx3) {
  2335. return _st(_st(html)._code())._with_("someUser.name");
  2336. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2337. _st($7)._with_(" becomes ");
  2338. $8=_st($7)._with_((function(){
  2339. return smalltalk.withContext(function($ctx3) {
  2340. return _st(_st(html)._code())._with_("someUser name");
  2341. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2342. $8;
  2343. $9=_st(html)._li();
  2344. _st($9)._with_((function(){
  2345. return smalltalk.withContext(function($ctx3) {
  2346. return _st(_st(html)._code())._with_("someUser name = \x22John\x22");
  2347. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2348. _st($9)._with_(" becomes ");
  2349. $10=_st($9)._with_((function(){
  2350. return smalltalk.withContext(function($ctx3) {
  2351. return _st(_st(html)._code())._with_("someUser name: 'John'");
  2352. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2353. $10;
  2354. $11=_st(html)._li();
  2355. _st($11)._with_((function(){
  2356. return smalltalk.withContext(function($ctx3) {
  2357. return _st(_st(html)._code())._with_("console.log('hello world')");
  2358. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2359. _st($11)._with_(" becomes ");
  2360. $12=_st($11)._with_((function(){
  2361. return smalltalk.withContext(function($ctx3) {
  2362. return _st(_st(html)._code())._with_("console log: 'hello world'");
  2363. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2364. $12;
  2365. $13=_st(html)._li();
  2366. _st($13)._with_((function(){
  2367. return smalltalk.withContext(function($ctx3) {
  2368. return _st(_st(html)._code())._with_("window.jQuery('foo').css('background', 'red')");
  2369. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2370. _st($13)._with_(" becomes ");
  2371. _st($13)._with_((function(){
  2372. return smalltalk.withContext(function($ctx3) {
  2373. return _st(html)._br();
  2374. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2375. $14=_st($13)._with_((function(){
  2376. return smalltalk.withContext(function($ctx3) {
  2377. return _st(_st(html)._code())._with_("(window jQuery: 'foo') css: 'background' color: 'red'");
  2378. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2379. return $14;
  2380. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2381. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndJavascriptSlide4)})},
  2382. messageSends: ["with:", "class:", "span", "h1", "h2", "code", "li", "br", "ol"]}),
  2383. smalltalk.JtalkAndJavascriptSlide4);
  2384. smalltalk.addClass('JtalkAndNode', smalltalk.Slide, [], 'Presentation');
  2385. smalltalk.addMethod(
  2386. smalltalk.method({
  2387. selector: "backgroundColor",
  2388. fn: function (){
  2389. var self=this;
  2390. return smalltalk.withContext(function($ctx1) {
  2391. return "#0A1";
  2392. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndNode)})},
  2393. messageSends: []}),
  2394. smalltalk.JtalkAndNode);
  2395. smalltalk.addMethod(
  2396. smalltalk.method({
  2397. selector: "id",
  2398. fn: function (){
  2399. var self=this;
  2400. return smalltalk.withContext(function($ctx1) {
  2401. return "JtalkAndNode";
  2402. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndNode)})},
  2403. messageSends: []}),
  2404. smalltalk.JtalkAndNode);
  2405. smalltalk.addMethod(
  2406. smalltalk.method({
  2407. selector: "renderSlideOn:",
  2408. fn: function (html){
  2409. var self=this;
  2410. return smalltalk.withContext(function($ctx1) {
  2411. var $1,$2,$3,$4;
  2412. _st(_st(html)._h1())._with_((function(){
  2413. return smalltalk.withContext(function($ctx2) {
  2414. _st(html)._with_("Jtalk and ");
  2415. $1=_st(html)._span();
  2416. _st($1)._class_("blue");
  2417. $2=_st($1)._with_("Node.js");
  2418. return $2;
  2419. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2420. _st(_st(html)._h2())._with_("Hello.st:");
  2421. _st(_st(html)._pre())._with_((function(){
  2422. return smalltalk.withContext(function($ctx2) {
  2423. $3=_st(html)._div();
  2424. _st($3)._class_("code2");
  2425. $4=_st($3)._with_("Object subclass: #Hello\x0a instanceVariableNames: ''\x0a category: 'Hello'!\x0a\x0a!Hello class methodsFor: 'main'!\x0amain\x0a\x09console log: 'Hello world from JTalk in Node.js'\x0a! !");
  2426. return $4;
  2427. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2428. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndNode)})},
  2429. messageSends: ["with:", "class:", "span", "h1", "h2", "div", "pre"]}),
  2430. smalltalk.JtalkAndNode);
  2431. smalltalk.addClass('JtalkAndNode2', smalltalk.Slide, [], 'Presentation');
  2432. smalltalk.addMethod(
  2433. smalltalk.method({
  2434. selector: "backgroundColor",
  2435. fn: function (){
  2436. var self=this;
  2437. return smalltalk.withContext(function($ctx1) {
  2438. return "#0A1";
  2439. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndNode2)})},
  2440. messageSends: []}),
  2441. smalltalk.JtalkAndNode2);
  2442. smalltalk.addMethod(
  2443. smalltalk.method({
  2444. selector: "id",
  2445. fn: function (){
  2446. var self=this;
  2447. return smalltalk.withContext(function($ctx1) {
  2448. return "JtalkAndNode2";
  2449. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndNode2)})},
  2450. messageSends: []}),
  2451. smalltalk.JtalkAndNode2);
  2452. smalltalk.addMethod(
  2453. smalltalk.method({
  2454. selector: "renderSlideOn:",
  2455. fn: function (html){
  2456. var self=this;
  2457. return smalltalk.withContext(function($ctx1) {
  2458. var $1,$2,$3,$4,$5,$6;
  2459. _st(_st(html)._h1())._with_((function(){
  2460. return smalltalk.withContext(function($ctx2) {
  2461. _st(html)._with_("Jtalk and ");
  2462. $1=_st(html)._span();
  2463. _st($1)._class_("blue");
  2464. $2=_st($1)._with_("Node.js");
  2465. return $2;
  2466. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2467. _st(_st(html)._h2())._with_("Makefile:");
  2468. _st(_st(html)._pre())._with_((function(){
  2469. return smalltalk.withContext(function($ctx2) {
  2470. $3=_st(html)._div();
  2471. _st($3)._class_("code2");
  2472. $4=_st($3)._with_("Program.js: Hello.st\x0a\x09../../bin/jtalkc -N -m Hello Hello.st Program\x0a\x0arun: Program.js\x0a\x09./hello\x0a\x0aclean:\x0a\x09rm -f Program.js Hello.js\x0a");
  2473. return $4;
  2474. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2475. _st(_st(html)._h2())._with_("hello:");
  2476. _st(_st(html)._pre())._with_((function(){
  2477. return smalltalk.withContext(function($ctx2) {
  2478. $5=_st(html)._div();
  2479. _st($5)._class_("code2");
  2480. $6=_st($5)._with_("node Program.js $@");
  2481. return $6;
  2482. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2483. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndNode2)})},
  2484. messageSends: ["with:", "class:", "span", "h1", "h2", "div", "pre"]}),
  2485. smalltalk.JtalkAndNode2);
  2486. smalltalk.addClass('JtalkAndNode3', smalltalk.Slide, [], 'Presentation');
  2487. smalltalk.addMethod(
  2488. smalltalk.method({
  2489. selector: "backgroundColor",
  2490. fn: function (){
  2491. var self=this;
  2492. return smalltalk.withContext(function($ctx1) {
  2493. return "#0A1";
  2494. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndNode3)})},
  2495. messageSends: []}),
  2496. smalltalk.JtalkAndNode3);
  2497. smalltalk.addMethod(
  2498. smalltalk.method({
  2499. selector: "id",
  2500. fn: function (){
  2501. var self=this;
  2502. return smalltalk.withContext(function($ctx1) {
  2503. return "JtalkAndNode3";
  2504. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndNode3)})},
  2505. messageSends: []}),
  2506. smalltalk.JtalkAndNode3);
  2507. smalltalk.addMethod(
  2508. smalltalk.method({
  2509. selector: "renderSlideOn:",
  2510. fn: function (html){
  2511. var self=this;
  2512. return smalltalk.withContext(function($ctx1) {
  2513. var $1,$2,$3,$4,$5,$6;
  2514. _st(_st(html)._h1())._with_((function(){
  2515. return smalltalk.withContext(function($ctx2) {
  2516. _st(html)._with_("Jtalk and ");
  2517. $1=_st(html)._span();
  2518. _st($1)._class_("blue");
  2519. $2=_st($1)._with_("Node.js");
  2520. return $2;
  2521. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2522. _st(_st(html)._h2())._with_("make clean && make run:");
  2523. _st(_st(html)._pre())._with_((function(){
  2524. return smalltalk.withContext(function($ctx2) {
  2525. $3=_st(html)._div();
  2526. _st($3)._class_("code2");
  2527. $4=_st($3)._with_("rm -f Program.js Hello.js\x0a../../bin/jtalkc -N -m Hello Hello.st Program\x0aLoading libraries /home/gokr/jtalk/js/boot.js /home/gokr/jtalk/js/Kernel.js\x0a/home/gokr/jtalk/js/Parser.js /home/gokr/jtalk/js/Compiler.js\x0a/home/gokr/jtalk/js/init.js /home/gokr/jtalk/nodejs/nodecompile.js\x0aand compiling ...\x0aCompiling in debugMode: false\x0aReading file Hello.st\x0aExporting category Hello as Hello.js\x0aAdding libraries /home/gokr/jtalk/js/boot.js /home/gokr/jtalk/js/Kernel.js ...\x0aAdding Jtalk code Hello.js ...\x0aAdding initializer /home/gokr/jtalk/js/init.js ...\x0aAdding call to Hello class >> main ...\x0aWriting Program.js ...\x0aDone.\x0a./hello");
  2528. $4;
  2529. $5=_st(html)._span();
  2530. _st($5)._class_("blue");
  2531. $6=_st($5)._with_("Hello world from JTalk in Node.js");
  2532. return $6;
  2533. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2534. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndNode3)})},
  2535. messageSends: ["with:", "class:", "span", "h1", "h2", "div", "pre"]}),
  2536. smalltalk.JtalkAndNode3);
  2537. smalltalk.addClass('JtalkAndWebOS', smalltalk.Slide, [], 'Presentation');
  2538. smalltalk.addMethod(
  2539. smalltalk.method({
  2540. selector: "backgroundColor",
  2541. fn: function (){
  2542. var self=this;
  2543. return smalltalk.withContext(function($ctx1) {
  2544. return "#0A1";
  2545. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.JtalkAndWebOS)})},
  2546. messageSends: []}),
  2547. smalltalk.JtalkAndWebOS);
  2548. smalltalk.addMethod(
  2549. smalltalk.method({
  2550. selector: "id",
  2551. fn: function (){
  2552. var self=this;
  2553. return smalltalk.withContext(function($ctx1) {
  2554. return "JtalkAndWebOS";
  2555. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkAndWebOS)})},
  2556. messageSends: []}),
  2557. smalltalk.JtalkAndWebOS);
  2558. smalltalk.addMethod(
  2559. smalltalk.method({
  2560. selector: "renderSlideOn:",
  2561. fn: function (html){
  2562. var self=this;
  2563. return smalltalk.withContext(function($ctx1) {
  2564. var $1,$2;
  2565. _st(_st(html)._h1())._with_((function(){
  2566. return smalltalk.withContext(function($ctx2) {
  2567. _st(html)._with_("Jtalk and ");
  2568. $1=_st(html)._span();
  2569. _st($1)._class_("blue");
  2570. $2=_st($1)._with_("webOS");
  2571. return $2;
  2572. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2573. _st(_st(html)._h2())._with_("A really cool mobile OS based on Linux:");
  2574. _st(_st(html)._ul())._with_((function(){
  2575. return smalltalk.withContext(function($ctx2) {
  2576. _st(_st(html)._li())._with_("The primary language in webOS is Javascript");
  2577. _st(_st(html)._li())._with_("The new UI framework for webOS 3.0 is called Enyo");
  2578. _st(_st(html)._li())._with_("Regular apps run in V8 + Webkit");
  2579. return _st(_st(html)._li())._with_("Background services run in Node.js");
  2580. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2581. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkAndWebOS)})},
  2582. messageSends: ["with:", "class:", "span", "h1", "h2", "li", "ul"]}),
  2583. smalltalk.JtalkAndWebOS);
  2584. smalltalk.addClass('JtalkFeaturesSlide', smalltalk.Slide, [], 'Presentation');
  2585. smalltalk.addMethod(
  2586. smalltalk.method({
  2587. selector: "id",
  2588. fn: function (){
  2589. var self=this;
  2590. return smalltalk.withContext(function($ctx1) {
  2591. return "features";
  2592. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.JtalkFeaturesSlide)})},
  2593. messageSends: []}),
  2594. smalltalk.JtalkFeaturesSlide);
  2595. smalltalk.addMethod(
  2596. smalltalk.method({
  2597. selector: "renderSlideOn:",
  2598. fn: function (html){
  2599. var self=this;
  2600. return smalltalk.withContext(function($ctx1) {
  2601. _st(_st(html)._h1())._with_("Jtalk features");
  2602. _st(_st(html)._ul())._with_((function(){
  2603. return smalltalk.withContext(function($ctx2) {
  2604. _st(_st(html)._li())._with_("Jtalk is (mostly) written in itself, including the parser & compiler");
  2605. _st(_st(html)._li())._with_("Full Smalltalk object system, including classes & metaclasses, etc");
  2606. _st(_st(html)._li())._with_("Core libraries (streams, collections, RegExp, etc)");
  2607. _st(_st(html)._li())._with_("Web related libraries: HTML Canvas, DOM manipulation");
  2608. _st(_st(html)._li())._with_("Full featured IDE");
  2609. return _st(_st(html)._li())._with_((function(){
  2610. return smalltalk.withContext(function($ctx3) {
  2611. _st(html)._with_("Advanced Smalltalk features, including ");
  2612. _st(_st(html)._code())._with_("#doesNotUnderstand:");
  2613. _st(html)._with_(" support and ");
  2614. return _st(_st(html)._code())._with_("thisContext");
  2615. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2616. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2617. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.JtalkFeaturesSlide)})},
  2618. messageSends: ["with:", "h1", "li", "code", "ul"]}),
  2619. smalltalk.JtalkFeaturesSlide);
  2620. smalltalk.addClass('SweSUGSlide', smalltalk.Slide, [], 'Presentation');
  2621. smalltalk.addMethod(
  2622. smalltalk.method({
  2623. selector: "backgroundColor",
  2624. fn: function (){
  2625. var self=this;
  2626. return smalltalk.withContext(function($ctx1) {
  2627. return "#555";
  2628. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.SweSUGSlide)})},
  2629. messageSends: []}),
  2630. smalltalk.SweSUGSlide);
  2631. smalltalk.addMethod(
  2632. smalltalk.method({
  2633. selector: "codeSnippet",
  2634. fn: function (){
  2635. var self=this;
  2636. return smalltalk.withContext(function($ctx1) {
  2637. self._subclassResponsibility();
  2638. return self}, function($ctx1) {$ctx1.fill(self,"codeSnippet",{},smalltalk.SweSUGSlide)})},
  2639. messageSends: ["subclassResponsibility"]}),
  2640. smalltalk.SweSUGSlide);
  2641. smalltalk.addMethod(
  2642. smalltalk.method({
  2643. selector: "cssClass",
  2644. fn: function (){
  2645. var self=this;
  2646. return smalltalk.withContext(function($ctx1) {
  2647. return "slide blue3d";
  2648. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.SweSUGSlide)})},
  2649. messageSends: []}),
  2650. smalltalk.SweSUGSlide);
  2651. smalltalk.addMethod(
  2652. smalltalk.method({
  2653. selector: "renderCodeSnippetOn:",
  2654. fn: function (html){
  2655. var self=this;
  2656. function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
  2657. return smalltalk.withContext(function($ctx1) {
  2658. var $1,$2;
  2659. $1=_st($SourceArea())._new();
  2660. _st($1)._renderOn_(html);
  2661. $2=_st($1)._editor();
  2662. _st($2)._setValue_(self._codeSnippet());
  2663. return self}, function($ctx1) {$ctx1.fill(self,"renderCodeSnippetOn:",{html:html},smalltalk.SweSUGSlide)})},
  2664. messageSends: ["setValue:", "codeSnippet", "renderOn:", "new", "editor"]}),
  2665. smalltalk.SweSUGSlide);
  2666. smalltalk.addMethod(
  2667. smalltalk.method({
  2668. selector: "renderSnippet:on:",
  2669. fn: function (aString,html){
  2670. var self=this;
  2671. function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
  2672. return smalltalk.withContext(function($ctx1) {
  2673. var $1,$2;
  2674. $1=_st($SourceArea())._new();
  2675. _st($1)._renderOn_(html);
  2676. $2=_st($1)._editor();
  2677. _st($2)._setValue_(aString);
  2678. return self}, function($ctx1) {$ctx1.fill(self,"renderSnippet:on:",{aString:aString,html:html},smalltalk.SweSUGSlide)})},
  2679. messageSends: ["setValue:", "renderOn:", "new", "editor"]}),
  2680. smalltalk.SweSUGSlide);
  2681. smalltalk.addClass('SweSUGAboutSlide', smalltalk.SweSUGSlide, [], 'Presentation');
  2682. smalltalk.addMethod(
  2683. smalltalk.method({
  2684. selector: "backgroundColor",
  2685. fn: function (){
  2686. var self=this;
  2687. return smalltalk.withContext(function($ctx1) {
  2688. return "#555";
  2689. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.SweSUGAboutSlide)})},
  2690. messageSends: []}),
  2691. smalltalk.SweSUGAboutSlide);
  2692. smalltalk.addMethod(
  2693. smalltalk.method({
  2694. selector: "cssClass",
  2695. fn: function (){
  2696. var self=this;
  2697. return smalltalk.withContext(function($ctx1) {
  2698. return "slide blue3d";
  2699. }, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.SweSUGAboutSlide)})},
  2700. messageSends: []}),
  2701. smalltalk.SweSUGAboutSlide);
  2702. smalltalk.addMethod(
  2703. smalltalk.method({
  2704. selector: "id",
  2705. fn: function (){
  2706. var self=this;
  2707. return smalltalk.withContext(function($ctx1) {
  2708. return "About";
  2709. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.SweSUGAboutSlide)})},
  2710. messageSends: []}),
  2711. smalltalk.SweSUGAboutSlide);
  2712. smalltalk.addMethod(
  2713. smalltalk.method({
  2714. selector: "renderSlideOn:",
  2715. fn: function (html){
  2716. var self=this;
  2717. function $Presentation(){return smalltalk.Presentation||(typeof Presentation=="undefined"?nil:Presentation)}
  2718. function $Browser(){return smalltalk.Browser||(typeof Browser=="undefined"?nil:Browser)}
  2719. return smalltalk.withContext(function($ctx1) {
  2720. var $1,$3,$4,$2;
  2721. $1=_st(html)._div();
  2722. _st($1)._class_("section center");
  2723. $2=_st($1)._with_((function(){
  2724. return smalltalk.withContext(function($ctx2) {
  2725. _st(_st(html)._h1())._with_("About this presentation");
  2726. _st(_st(html)._p())._with_("This presentation is entirely written in Amber. Lots of stuff was heavily copied from the two earlier presentations from ESUG and FOSDEM.");
  2727. _st(_st(html)._p())._with_((function(){
  2728. return smalltalk.withContext(function($ctx3) {
  2729. _st(html)._with_("Press ");
  2730. _st(_st(html)._code())._with_("←");
  2731. _st(html)._with_(" to move backward and ");
  2732. _st(_st(html)._code())._with_(" →");
  2733. return _st(html)._with_(" to move forward.");
  2734. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2735. return _st(_st(html)._p())._with_((function(){
  2736. return smalltalk.withContext(function($ctx3) {
  2737. _st(html)._with_("Open a ");
  2738. $3=_st(html)._button();
  2739. _st($3)._with_("browser");
  2740. $4=_st($3)._onClick_((function(){
  2741. return smalltalk.withContext(function($ctx4) {
  2742. return _st($Browser())._openOn_($Presentation());
  2743. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  2744. $4;
  2745. return _st(html)._with_(" to edit the source code.");
  2746. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2747. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2748. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.SweSUGAboutSlide)})},
  2749. messageSends: ["class:", "div", "with:", "h1", "p", "code", "button", "onClick:", "openOn:"]}),
  2750. smalltalk.SweSUGAboutSlide);
  2751. smalltalk.addClass('SweSUGAmberFeaturesSlide', smalltalk.SweSUGSlide, [], 'Presentation');
  2752. smalltalk.addMethod(
  2753. smalltalk.method({
  2754. selector: "id",
  2755. fn: function (){
  2756. var self=this;
  2757. return smalltalk.withContext(function($ctx1) {
  2758. return "features";
  2759. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.SweSUGAmberFeaturesSlide)})},
  2760. messageSends: []}),
  2761. smalltalk.SweSUGAmberFeaturesSlide);
  2762. smalltalk.addMethod(
  2763. smalltalk.method({
  2764. selector: "renderSlideOn:",
  2765. fn: function (html){
  2766. var self=this;
  2767. return smalltalk.withContext(function($ctx1) {
  2768. _st(_st(html)._h1())._with_("Amber features");
  2769. _st(_st(html)._ul())._with_((function(){
  2770. return smalltalk.withContext(function($ctx2) {
  2771. _st(_st(html)._li())._with_("Amber is (mostly) written in itself, including the compiler");
  2772. _st(_st(html)._li())._with_("Full Smalltalk object system, including classes & metaclasses, etc");
  2773. _st(_st(html)._li())._with_("Core libraries (streams, collections, RegExp, etc)");
  2774. _st(_st(html)._li())._with_("Web related libraries: HTML Canvas, DOM manipulation");
  2775. _st(_st(html)._li())._with_("Very good javascript integration, both ways");
  2776. _st(_st(html)._li())._with_("Full featured IDE!");
  2777. return _st(_st(html)._li())._with_((function(){
  2778. return smalltalk.withContext(function($ctx3) {
  2779. _st(html)._with_("Advanced features, including ");
  2780. _st(_st(html)._code())._with_("#doesNotUnderstand:");
  2781. _st(html)._with_(" support and ");
  2782. return _st(_st(html)._code())._with_("thisContext");
  2783. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2784. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2785. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.SweSUGAmberFeaturesSlide)})},
  2786. messageSends: ["with:", "h1", "li", "code", "ul"]}),
  2787. smalltalk.SweSUGAmberFeaturesSlide);
  2788. smalltalk.addClass('SweSUGIntroSlide', smalltalk.SweSUGSlide, [], 'Presentation');
  2789. smalltalk.addMethod(
  2790. smalltalk.method({
  2791. selector: "id",
  2792. fn: function (){
  2793. var self=this;
  2794. return smalltalk.withContext(function($ctx1) {
  2795. return "Intro";
  2796. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.SweSUGIntroSlide)})},
  2797. messageSends: []}),
  2798. smalltalk.SweSUGIntroSlide);
  2799. smalltalk.addMethod(
  2800. smalltalk.method({
  2801. selector: "renderSlideOn:",
  2802. fn: function (html){
  2803. var self=this;
  2804. return smalltalk.withContext(function($ctx1) {
  2805. var $1,$2;
  2806. $1=_st(html)._div();
  2807. _st($1)._class_("section center animate");
  2808. $2=_st($1)._with_((function(){
  2809. return smalltalk.withContext(function($ctx2) {
  2810. _st(_st(html)._img())._src_("fosdem2012/images/amber.png");
  2811. _st(html)._p_(_st(self._presentation())._author());
  2812. _st(html)._p_(_st(self._presentation())._description());
  2813. return _st(html)._p_((function(){
  2814. return smalltalk.withContext(function($ctx3) {
  2815. return _st(html)._with_(_st(self._presentation())._email());
  2816. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2817. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2818. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.SweSUGIntroSlide)})},
  2819. messageSends: ["class:", "div", "with:", "src:", "img", "p:", "author", "presentation", "description", "email"]}),
  2820. smalltalk.SweSUGIntroSlide);
  2821. smalltalk.addClass('SweSUGWhatIsAmberSlide', smalltalk.SweSUGSlide, [], 'Presentation');
  2822. smalltalk.addMethod(
  2823. smalltalk.method({
  2824. selector: "id",
  2825. fn: function (){
  2826. var self=this;
  2827. return smalltalk.withContext(function($ctx1) {
  2828. return "WhatIsAmber";
  2829. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.SweSUGWhatIsAmberSlide)})},
  2830. messageSends: []}),
  2831. smalltalk.SweSUGWhatIsAmberSlide);
  2832. smalltalk.addMethod(
  2833. smalltalk.method({
  2834. selector: "renderSlideOn:",
  2835. fn: function (html){
  2836. var self=this;
  2837. return smalltalk.withContext(function($ctx1) {
  2838. var $1,$3,$4,$2;
  2839. $1=_st(html)._div();
  2840. _st($1)._class_("section center");
  2841. $2=_st($1)._with_((function(){
  2842. return smalltalk.withContext(function($ctx2) {
  2843. _st(html)._img_("esug2011/images/balloon.jpg");
  2844. _st(_st(html)._h1())._with_("Amber in a nutshell");
  2845. _st(_st(html)._h2())._with_("Amber is a true Smalltalk");
  2846. _st(_st(html)._h2())._with_("It compiles to and runs on/in JavaScript");
  2847. _st(_st(html)._h2())._with_("MIT license");
  2848. $3=_st(html)._h2();
  2849. _st($3)._class_("fancy");
  2850. $4=_st($3)._with_("Amber is way cool!");
  2851. return $4;
  2852. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2853. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.SweSUGWhatIsAmberSlide)})},
  2854. messageSends: ["class:", "div", "with:", "img:", "h1", "h2"]}),
  2855. smalltalk.SweSUGWhatIsAmberSlide);
  2856. smalltalk.addClass('SweSUGWorkspaceSlide', smalltalk.SweSUGSlide, [], 'Presentation');
  2857. smalltalk.addMethod(
  2858. smalltalk.method({
  2859. selector: "backgroundColor",
  2860. fn: function (){
  2861. var self=this;
  2862. return smalltalk.withContext(function($ctx1) {
  2863. return "#18bd7d";
  2864. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.SweSUGWorkspaceSlide)})},
  2865. messageSends: []}),
  2866. smalltalk.SweSUGWorkspaceSlide);
  2867. smalltalk.addMethod(
  2868. smalltalk.method({
  2869. selector: "id",
  2870. fn: function (){
  2871. var self=this;
  2872. return smalltalk.withContext(function($ctx1) {
  2873. return "workspace";
  2874. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.SweSUGWorkspaceSlide)})},
  2875. messageSends: []}),
  2876. smalltalk.SweSUGWorkspaceSlide);
  2877. smalltalk.addMethod(
  2878. smalltalk.method({
  2879. selector: "renderSlideOn:",
  2880. fn: function (html){
  2881. var self=this;
  2882. var workspace;
  2883. function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
  2884. return smalltalk.withContext(function($ctx1) {
  2885. var $1,$3,$4,$5,$6,$7,$8,$2;
  2886. workspace=_st($SourceArea())._new();
  2887. $1=_st(html)._div();
  2888. _st($1)._class_("section center");
  2889. $2=_st($1)._with_((function(){
  2890. return smalltalk.withContext(function($ctx2) {
  2891. _st(_st(html)._h1())._with_("Give Amber a try!");
  2892. _st(workspace)._renderOn_(html);
  2893. return _st(_st(html)._div())._with_((function(){
  2894. return smalltalk.withContext(function($ctx3) {
  2895. $3=_st(html)._button();
  2896. _st($3)._with_("DoIt");
  2897. $4=_st($3)._onClick_((function(){
  2898. return smalltalk.withContext(function($ctx4) {
  2899. return _st(workspace)._doIt();
  2900. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  2901. $4;
  2902. $5=_st(html)._button();
  2903. _st($5)._with_("PrintIt");
  2904. $6=_st($5)._onClick_((function(){
  2905. return smalltalk.withContext(function($ctx4) {
  2906. return _st(workspace)._printIt();
  2907. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  2908. $6;
  2909. $7=_st(html)._button();
  2910. _st($7)._with_("InspectIt");
  2911. $8=_st($7)._onClick_((function(){
  2912. return smalltalk.withContext(function($ctx4) {
  2913. return _st(workspace)._inspectIt();
  2914. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  2915. return $8;
  2916. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  2917. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2918. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html,workspace:workspace},smalltalk.SweSUGWorkspaceSlide)})},
  2919. messageSends: ["new", "class:", "div", "with:", "h1", "renderOn:", "button", "onClick:", "doIt", "printIt", "inspectIt"]}),
  2920. smalltalk.SweSUGWorkspaceSlide);
  2921. smalltalk.addClass('WhatIsJtalkSlide', smalltalk.Slide, [], 'Presentation');
  2922. smalltalk.addMethod(
  2923. smalltalk.method({
  2924. selector: "id",
  2925. fn: function (){
  2926. var self=this;
  2927. return smalltalk.withContext(function($ctx1) {
  2928. return "WhatIsJtalk";
  2929. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.WhatIsJtalkSlide)})},
  2930. messageSends: []}),
  2931. smalltalk.WhatIsJtalkSlide);
  2932. smalltalk.addMethod(
  2933. smalltalk.method({
  2934. selector: "renderSlideOn:",
  2935. fn: function (html){
  2936. var self=this;
  2937. return smalltalk.withContext(function($ctx1) {
  2938. var $1,$3,$4,$2;
  2939. $1=_st(html)._div();
  2940. _st($1)._class_("section center");
  2941. $2=_st($1)._with_((function(){
  2942. return smalltalk.withContext(function($ctx2) {
  2943. _st(_st(html)._h1())._with_("Jtalk in a nutshell");
  2944. _st(_st(html)._h2())._with_("Jtalk is an implementation of Smalltalk");
  2945. _st(_st(html)._h2())._with_("Jtalk runs on top of the JavaScript runtime");
  2946. _st(_st(html)._h2())._with_("Jtalk is an opensource project (MIT)");
  2947. $3=_st(html)._h2();
  2948. _st($3)._class_("fancy");
  2949. $4=_st($3)._with_("Jtalk is cool!");
  2950. return $4;
  2951. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  2952. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html},smalltalk.WhatIsJtalkSlide)})},
  2953. messageSends: ["class:", "div", "with:", "h1", "h2"]}),
  2954. smalltalk.WhatIsJtalkSlide);
  2955. smalltalk.addClass('WorkspaceSlide', smalltalk.Slide, [], 'Presentation');
  2956. smalltalk.addMethod(
  2957. smalltalk.method({
  2958. selector: "backgroundColor",
  2959. fn: function (){
  2960. var self=this;
  2961. return smalltalk.withContext(function($ctx1) {
  2962. return "#18bd7d";
  2963. }, function($ctx1) {$ctx1.fill(self,"backgroundColor",{},smalltalk.WorkspaceSlide)})},
  2964. messageSends: []}),
  2965. smalltalk.WorkspaceSlide);
  2966. smalltalk.addMethod(
  2967. smalltalk.method({
  2968. selector: "id",
  2969. fn: function (){
  2970. var self=this;
  2971. return smalltalk.withContext(function($ctx1) {
  2972. return "workspace";
  2973. }, function($ctx1) {$ctx1.fill(self,"id",{},smalltalk.WorkspaceSlide)})},
  2974. messageSends: []}),
  2975. smalltalk.WorkspaceSlide);
  2976. smalltalk.addMethod(
  2977. smalltalk.method({
  2978. selector: "renderSlideOn:",
  2979. fn: function (html){
  2980. var self=this;
  2981. var workspace;
  2982. function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
  2983. return smalltalk.withContext(function($ctx1) {
  2984. var $1,$3,$4,$5,$6,$7,$8,$2;
  2985. workspace=_st($SourceArea())._new();
  2986. $1=_st(html)._div();
  2987. _st($1)._class_("section center");
  2988. $2=_st($1)._with_((function(){
  2989. return smalltalk.withContext(function($ctx2) {
  2990. _st(_st(html)._h1())._with_("Give Jtalk a try!");
  2991. _st(workspace)._renderOn_(html);
  2992. return _st(_st(html)._div())._with_((function(){
  2993. return smalltalk.withContext(function($ctx3) {
  2994. $3=_st(html)._button();
  2995. _st($3)._with_("DoIt");
  2996. $4=_st($3)._onClick_((function(){
  2997. return smalltalk.withContext(function($ctx4) {
  2998. return _st(workspace)._doIt();
  2999. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  3000. $4;
  3001. $5=_st(html)._button();
  3002. _st($5)._with_("PrintIt");
  3003. $6=_st($5)._onClick_((function(){
  3004. return smalltalk.withContext(function($ctx4) {
  3005. return _st(workspace)._printIt();
  3006. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  3007. $6;
  3008. $7=_st(html)._button();
  3009. _st($7)._with_("InspectIt");
  3010. $8=_st($7)._onClick_((function(){
  3011. return smalltalk.withContext(function($ctx4) {
  3012. return _st(workspace)._inspectIt();
  3013. }, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
  3014. return $8;
  3015. }, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
  3016. }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
  3017. return self}, function($ctx1) {$ctx1.fill(self,"renderSlideOn:",{html:html,workspace:workspace},smalltalk.WorkspaceSlide)})},
  3018. messageSends: ["new", "class:", "div", "with:", "h1", "renderOn:", "button", "onClick:", "doIt", "printIt", "inspectIt"]}),
  3019. smalltalk.WorkspaceSlide);