Sfoglia il codice sorgente

TabManager class >> toggleAmberIDE rewrite in Smalltalk

Nicolas Petton 11 anni fa
parent
commit
c3ffbafc97
3 ha cambiato i file con 36 aggiunte e 36 eliminazioni
  1. 14 12
      js/IDE.deploy.js
  2. 16 14
      js/IDE.js
  3. 6 10
      st/IDE.st

+ 14 - 12
js/IDE.deploy.js

@@ -1,4 +1,4 @@
-smalltalk.addPackage('IDE', {});
+smalltalk.addPackage('IDE');
 smalltalk.addClass('ClassesList', smalltalk.Widget, ['browser', 'ul', 'nodes'], 'IDE');
 smalltalk.addMethod(
 "_browser",
@@ -1151,18 +1151,20 @@ smalltalk.method({
 selector: "toggleAmberIDE",
 fn: function (){
 var self=this;
-return smalltalk.withContext(function($ctx1) { 
-		if ($('#amber').length == 0) {
-			smalltalk.Browser._open();
-		} else if ($('#amber').is(':visible')) {
-			smalltalk.TabManager._current()._close();
-		} else {
-			smalltalk.TabManager._current()._open();
-		}
-		return false;
-;
+return smalltalk.withContext(function($ctx1) { 
var $1,$2;
+$1=_st(_st(_st(window)._jQuery_("#amber"))._length()).__eq((0));
+if(smalltalk.assert($1)){
+_st((smalltalk.Browser || Browser))._open();
+} else {
+$2=_st(_st(window)._jQuery_("#amber"))._is_(":visible");
+if(smalltalk.assert($2)){
+_st(_st((smalltalk.TabManager || TabManager))._current())._close();
+} else {
+_st(_st((smalltalk.TabManager || TabManager))._current())._open();
+};
+};
 return self}, function($ctx1) {$ctx1.fill(self,"toggleAmberIDE",{}, smalltalk.TabManager.klass)})},
-messageSends: []}),
+messageSends: ["ifTrue:ifFalse:", "open", "close", "current", "is:", "jQuery:", "=", "length"]}),
 smalltalk.TabManager.klass);
 
 

+ 16 - 14
js/IDE.js

@@ -1,4 +1,4 @@
-smalltalk.addPackage('IDE', {});
+smalltalk.addPackage('IDE');
 smalltalk.addClass('ClassesList', smalltalk.Widget, ['browser', 'ul', 'nodes'], 'IDE');
 smalltalk.addMethod(
 "_browser",
@@ -1497,21 +1497,23 @@ selector: "toggleAmberIDE",
 category: 'actions',
 fn: function (){
 var self=this;
-return smalltalk.withContext(function($ctx1) { 
-		if ($('#amber').length == 0) {
-			smalltalk.Browser._open();
-		} else if ($('#amber').is(':visible')) {
-			smalltalk.TabManager._current()._close();
-		} else {
-			smalltalk.TabManager._current()._open();
-		}
-		return false;
-;
+return smalltalk.withContext(function($ctx1) { 
var $1,$2;
+$1=_st(_st(_st(window)._jQuery_("#amber"))._length()).__eq((0));
+if(smalltalk.assert($1)){
+_st((smalltalk.Browser || Browser))._open();
+} else {
+$2=_st(_st(window)._jQuery_("#amber"))._is_(":visible");
+if(smalltalk.assert($2)){
+_st(_st((smalltalk.TabManager || TabManager))._current())._close();
+} else {
+_st(_st((smalltalk.TabManager || TabManager))._current())._open();
+};
+};
 return self}, function($ctx1) {$ctx1.fill(self,"toggleAmberIDE",{}, smalltalk.TabManager.klass)})},
 args: [],
-source: "toggleAmberIDE\x0a<\x0a\x09\x09if ($('#amber').length == 0) {\x0a\x09\x09\x09smalltalk.Browser._open();\x0a\x09\x09} else if ($('#amber').is(':visible')) {\x0a\x09\x09\x09smalltalk.TabManager._current()._close();\x0a\x09\x09} else {\x0a\x09\x09\x09smalltalk.TabManager._current()._open();\x0a\x09\x09}\x0a\x09\x09return false;\x0a>",
-messageSends: [],
-referencedClasses: []
+source: "toggleAmberIDE\x0a\x09(window jQuery: '#amber') length = 0\x0a\x09\x09ifTrue: [ Browser open ]\x0a      \x09ifFalse: [ \x0a\x09\x09\x09((window jQuery: '#amber') is: ':visible')\x0a\x09\x09\x09\x09ifTrue: [ TabManager current close ] \x0a\x09\x09\x09\x09ifFalse: [ TabManager current open ] ]",
+messageSends: ["ifTrue:ifFalse:", "open", "close", "current", "is:", "jQuery:", "=", "length"],
+referencedClasses: ["Browser", "TabManager"]
 }),
 smalltalk.TabManager.klass);
 

+ 6 - 10
st/IDE.st

@@ -522,16 +522,12 @@ TabManager class instanceVariableNames: 'current'!
 !TabManager class methodsFor: 'actions'!
 
 toggleAmberIDE
-<
-		if ($('#amber').length == 0) {
-			smalltalk.Browser._open();
-		} else if ($('#amber').is(':visible')) {
-			smalltalk.TabManager._current()._close();
-		} else {
-			smalltalk.TabManager._current()._open();
-		}
-		return false;
->
+	(window jQuery: '#amber') length = 0
+		ifTrue: [ Browser open ]
+      	ifFalse: [ 
+			((window jQuery: '#amber') is: ':visible')
+				ifTrue: [ TabManager current close ] 
+				ifFalse: [ TabManager current open ] ]
 ! !
 
 !TabManager class methodsFor: 'instance creation'!