Helios-Commands-Core.js 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801
  1. smalltalk.addPackage('Helios-Commands-Core');
  2. smalltalk.addClass('HLCommand', smalltalk.Object, ['input', 'errorBlock'], 'Helios-Commands-Core');
  3. smalltalk.addMethod(
  4. "_asActionBinding",
  5. smalltalk.method({
  6. selector: "asActionBinding",
  7. category: 'converting',
  8. fn: function (){
  9. var self=this;
  10. return smalltalk.withContext(function($ctx1) { var $2,$3,$1;
  11. $2=_st((smalltalk.HLBindingAction || HLBindingAction))._on_labelled_(_st(self)._key(),_st(self)._label());
  12. _st($2)._command_(self);
  13. $3=_st($2)._yourself();
  14. $1=$3;
  15. return $1;
  16. }, function($ctx1) {$ctx1.fill(self,"asActionBinding",{},smalltalk.HLCommand)})},
  17. args: [],
  18. source: "asActionBinding\x0a\x09^ (HLBindingAction on: self key labelled: self label)\x0a \x09command: self;\x0a\x09\x09yourself",
  19. messageSends: ["command:", "on:labelled:", "key", "label", "yourself"],
  20. referencedClasses: ["HLBindingAction"]
  21. }),
  22. smalltalk.HLCommand);
  23. smalltalk.addMethod(
  24. "_asBinding",
  25. smalltalk.method({
  26. selector: "asBinding",
  27. category: 'converting',
  28. fn: function (){
  29. var self=this;
  30. return smalltalk.withContext(function($ctx1) { var $2,$1;
  31. $2=_st(self)._isBindingGroup();
  32. if(smalltalk.assert($2)){
  33. $1=_st(self)._asGroupBinding();
  34. } else {
  35. $1=_st(self)._asActionBinding();
  36. };
  37. return $1;
  38. }, function($ctx1) {$ctx1.fill(self,"asBinding",{},smalltalk.HLCommand)})},
  39. args: [],
  40. source: "asBinding\x0a\x09^ self isBindingGroup\x0a\x09\x09ifTrue: [ self asGroupBinding ]\x0a\x09\x09ifFalse: [ self asActionBinding ]",
  41. messageSends: ["ifTrue:ifFalse:", "asGroupBinding", "asActionBinding", "isBindingGroup"],
  42. referencedClasses: []
  43. }),
  44. smalltalk.HLCommand);
  45. smalltalk.addMethod(
  46. "_asGroupBinding",
  47. smalltalk.method({
  48. selector: "asGroupBinding",
  49. category: 'converting',
  50. fn: function (){
  51. var self=this;
  52. return smalltalk.withContext(function($ctx1) { var $1;
  53. $1=_st((smalltalk.HLBindingGroup || HLBindingGroup))._on_labelled_(_st(self)._key(),_st(self)._label());
  54. return $1;
  55. }, function($ctx1) {$ctx1.fill(self,"asGroupBinding",{},smalltalk.HLCommand)})},
  56. args: [],
  57. source: "asGroupBinding\x0a\x09^ HLBindingGroup \x0a\x09\x09on: self key \x0a\x09\x09labelled: self label",
  58. messageSends: ["on:labelled:", "key", "label"],
  59. referencedClasses: ["HLBindingGroup"]
  60. }),
  61. smalltalk.HLCommand);
  62. smalltalk.addMethod(
  63. "_commandError_",
  64. smalltalk.method({
  65. selector: "commandError:",
  66. category: 'error handling',
  67. fn: function (aString){
  68. var self=this;
  69. return smalltalk.withContext(function($ctx1) { _st(self)._error_(aString);
  70. return self}, function($ctx1) {$ctx1.fill(self,"commandError:",{aString:aString},smalltalk.HLCommand)})},
  71. args: ["aString"],
  72. source: "commandError: aString\x0a\x09self error: aString",
  73. messageSends: ["error:"],
  74. referencedClasses: []
  75. }),
  76. smalltalk.HLCommand);
  77. smalltalk.addMethod(
  78. "_documentation",
  79. smalltalk.method({
  80. selector: "documentation",
  81. category: 'accessing',
  82. fn: function (){
  83. var self=this;
  84. return smalltalk.withContext(function($ctx1) { var $1;
  85. $1=_st(_st(self)._class())._documentation();
  86. return $1;
  87. }, function($ctx1) {$ctx1.fill(self,"documentation",{}, smalltalk.HLCommand)})},
  88. args: [],
  89. source: "documentation\x0a\x09^ self class documentation",
  90. messageSends: ["documentation", "class"],
  91. referencedClasses: []
  92. }),
  93. smalltalk.HLCommand);
  94. smalltalk.addMethod(
  95. "_errorBlock",
  96. smalltalk.method({
  97. selector: "errorBlock",
  98. category: 'accessing',
  99. fn: function (){
  100. var self=this;
  101. return smalltalk.withContext(function($ctx1) { var $1;
  102. $1=self["@errorBlock"];
  103. return $1;
  104. }, function($ctx1) {$ctx1.fill(self,"errorBlock",{},smalltalk.HLCommand)})},
  105. args: [],
  106. source: "errorBlock\x0a\x09^ errorBlock",
  107. messageSends: [],
  108. referencedClasses: []
  109. }),
  110. smalltalk.HLCommand);
  111. smalltalk.addMethod(
  112. "_errorBlock_",
  113. smalltalk.method({
  114. selector: "errorBlock:",
  115. category: 'accessing',
  116. fn: function (aBlock){
  117. var self=this;
  118. return smalltalk.withContext(function($ctx1) { self["@errorBlock"]=aBlock;
  119. return self}, function($ctx1) {$ctx1.fill(self,"errorBlock:",{aBlock:aBlock},smalltalk.HLCommand)})},
  120. args: ["aBlock"],
  121. source: "errorBlock: aBlock\x0a\x09errorBlock := aBlock",
  122. messageSends: [],
  123. referencedClasses: []
  124. }),
  125. smalltalk.HLCommand);
  126. smalltalk.addMethod(
  127. "_execute",
  128. smalltalk.method({
  129. selector: "execute",
  130. category: 'executing',
  131. fn: function (){
  132. var self=this;
  133. return smalltalk.withContext(function($ctx1) { return self}, function($ctx1) {$ctx1.fill(self,"execute",{}, smalltalk.HLCommand)})},
  134. args: [],
  135. source: "execute\x0a\x09",
  136. messageSends: [],
  137. referencedClasses: []
  138. }),
  139. smalltalk.HLCommand);
  140. smalltalk.addMethod(
  141. "_input",
  142. smalltalk.method({
  143. selector: "input",
  144. category: 'accessing',
  145. fn: function (){
  146. var self=this;
  147. return smalltalk.withContext(function($ctx1) { var $1;
  148. $1=self["@input"];
  149. return $1;
  150. }, function($ctx1) {$ctx1.fill(self,"input",{},smalltalk.HLCommand)})},
  151. args: [],
  152. source: "input\x0a\x09^ input",
  153. messageSends: [],
  154. referencedClasses: []
  155. }),
  156. smalltalk.HLCommand);
  157. smalltalk.addMethod(
  158. "_input_",
  159. smalltalk.method({
  160. selector: "input:",
  161. category: 'accessing',
  162. fn: function (aString){
  163. var self=this;
  164. return smalltalk.withContext(function($ctx1) { var $1;
  165. self["@input"]=aString;
  166. $1=self["@input"];
  167. return $1;
  168. }, function($ctx1) {$ctx1.fill(self,"input:",{aString:aString},smalltalk.HLCommand)})},
  169. args: ["aString"],
  170. source: "input: aString\x0a\x09^ input := aString",
  171. messageSends: [],
  172. referencedClasses: []
  173. }),
  174. smalltalk.HLCommand);
  175. smalltalk.addMethod(
  176. "_inputCompletion",
  177. smalltalk.method({
  178. selector: "inputCompletion",
  179. category: 'accessing',
  180. fn: function (){
  181. var self=this;
  182. return smalltalk.withContext(function($ctx1) { return [];
  183. }, function($ctx1) {$ctx1.fill(self,"inputCompletion",{},smalltalk.HLCommand)})},
  184. args: [],
  185. source: "inputCompletion\x0a\x09^ #()",
  186. messageSends: [],
  187. referencedClasses: []
  188. }),
  189. smalltalk.HLCommand);
  190. smalltalk.addMethod(
  191. "_inputLabel",
  192. smalltalk.method({
  193. selector: "inputLabel",
  194. category: 'accessing',
  195. fn: function (){
  196. var self=this;
  197. return smalltalk.withContext(function($ctx1) { var $1;
  198. $1=_st(self)._label();
  199. return $1;
  200. }, function($ctx1) {$ctx1.fill(self,"inputLabel",{},smalltalk.HLCommand)})},
  201. args: [],
  202. source: "inputLabel\x0a\x09^ self label",
  203. messageSends: ["label"],
  204. referencedClasses: []
  205. }),
  206. smalltalk.HLCommand);
  207. smalltalk.addMethod(
  208. "_isActive",
  209. smalltalk.method({
  210. selector: "isActive",
  211. category: 'testing',
  212. fn: function (){
  213. var self=this;
  214. return smalltalk.withContext(function($ctx1) { return true;
  215. }, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLCommand)})},
  216. args: [],
  217. source: "isActive\x0a\x09^ true",
  218. messageSends: [],
  219. referencedClasses: []
  220. }),
  221. smalltalk.HLCommand);
  222. smalltalk.addMethod(
  223. "_isBindingGroup",
  224. smalltalk.method({
  225. selector: "isBindingGroup",
  226. category: 'testing',
  227. fn: function (){
  228. var self=this;
  229. return smalltalk.withContext(function($ctx1) { var $1;
  230. $1=_st(_st(_st(_st(self)._class())._methodDictionary())._includesKey_("execute"))._not();
  231. return $1;
  232. }, function($ctx1) {$ctx1.fill(self,"isBindingGroup",{},smalltalk.HLCommand)})},
  233. args: [],
  234. source: "isBindingGroup\x0a\x09^ (self class methodDictionary includesKey: 'execute') not",
  235. messageSends: ["not", "includesKey:", "methodDictionary", "class"],
  236. referencedClasses: []
  237. }),
  238. smalltalk.HLCommand);
  239. smalltalk.addMethod(
  240. "_isInputRequired",
  241. smalltalk.method({
  242. selector: "isInputRequired",
  243. category: 'testing',
  244. fn: function (){
  245. var self=this;
  246. return smalltalk.withContext(function($ctx1) { return false;
  247. }, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLCommand)})},
  248. args: [],
  249. source: "isInputRequired\x0a\x09^ false",
  250. messageSends: [],
  251. referencedClasses: []
  252. }),
  253. smalltalk.HLCommand);
  254. smalltalk.addMethod(
  255. "_key",
  256. smalltalk.method({
  257. selector: "key",
  258. category: 'accessing',
  259. fn: function (){
  260. var self=this;
  261. return smalltalk.withContext(function($ctx1) { var $1;
  262. $1=_st(_st(self)._class())._key();
  263. return $1;
  264. }, function($ctx1) {$ctx1.fill(self,"key",{}, smalltalk.HLCommand)})},
  265. args: [],
  266. source: "key\x0a\x09^ self class key",
  267. messageSends: ["key", "class"],
  268. referencedClasses: []
  269. }),
  270. smalltalk.HLCommand);
  271. smalltalk.addMethod(
  272. "_label",
  273. smalltalk.method({
  274. selector: "label",
  275. category: 'accessing',
  276. fn: function (){
  277. var self=this;
  278. return smalltalk.withContext(function($ctx1) { var $1;
  279. $1=_st(_st(self)._class())._label();
  280. return $1;
  281. }, function($ctx1) {$ctx1.fill(self,"label",{}, smalltalk.HLCommand)})},
  282. args: [],
  283. source: "label\x0a\x09^ self class label",
  284. messageSends: ["label", "class"],
  285. referencedClasses: []
  286. }),
  287. smalltalk.HLCommand);
  288. smalltalk.addMethod(
  289. "_registerOn_",
  290. smalltalk.method({
  291. selector: "registerOn:",
  292. category: 'registration',
  293. fn: function (aBinding){
  294. var self=this;
  295. return smalltalk.withContext(function($ctx1) { var $1;
  296. $1=_st(aBinding)._add_(_st(self)._asBinding());
  297. return $1;
  298. }, function($ctx1) {$ctx1.fill(self,"registerOn:",{aBinding:aBinding},smalltalk.HLCommand)})},
  299. args: ["aBinding"],
  300. source: "registerOn: aBinding\x0a\x09^ aBinding add: self asBinding",
  301. messageSends: ["add:", "asBinding"],
  302. referencedClasses: []
  303. }),
  304. smalltalk.HLCommand);
  305. smalltalk.addMethod(
  306. "_documentation",
  307. smalltalk.method({
  308. selector: "documentation",
  309. category: 'accessing',
  310. fn: function (){
  311. var self=this;
  312. return smalltalk.withContext(function($ctx1) { return "";
  313. }, function($ctx1) {$ctx1.fill(self,"documentation",{}, smalltalk.HLCommand.klass)})},
  314. args: [],
  315. source: "documentation\x0a\x09^ ''",
  316. messageSends: [],
  317. referencedClasses: []
  318. }),
  319. smalltalk.HLCommand.klass);
  320. smalltalk.addMethod(
  321. "_isConcrete",
  322. smalltalk.method({
  323. selector: "isConcrete",
  324. category: 'testing',
  325. fn: function (){
  326. var self=this;
  327. return smalltalk.withContext(function($ctx1) { var $1;
  328. $1=_st(_st(self)._key())._notNil();
  329. return $1;
  330. }, function($ctx1) {$ctx1.fill(self,"isConcrete",{},smalltalk.HLCommand.klass)})},
  331. args: [],
  332. source: "isConcrete\x0a\x09^ self key notNil",
  333. messageSends: ["notNil", "key"],
  334. referencedClasses: []
  335. }),
  336. smalltalk.HLCommand.klass);
  337. smalltalk.addMethod(
  338. "_key",
  339. smalltalk.method({
  340. selector: "key",
  341. category: 'accessing',
  342. fn: function (){
  343. var self=this;
  344. return smalltalk.withContext(function($ctx1) { return nil;
  345. }, function($ctx1) {$ctx1.fill(self,"key",{}, smalltalk.HLCommand.klass)})},
  346. args: [],
  347. source: "key\x0a\x09^ nil",
  348. messageSends: [],
  349. referencedClasses: []
  350. }),
  351. smalltalk.HLCommand.klass);
  352. smalltalk.addMethod(
  353. "_label",
  354. smalltalk.method({
  355. selector: "label",
  356. category: 'accessing',
  357. fn: function (){
  358. var self=this;
  359. return smalltalk.withContext(function($ctx1) { return "";
  360. }, function($ctx1) {$ctx1.fill(self,"label",{}, smalltalk.HLCommand.klass)})},
  361. args: [],
  362. source: "label\x0a\x09^ ''",
  363. messageSends: [],
  364. referencedClasses: []
  365. }),
  366. smalltalk.HLCommand.klass);
  367. smalltalk.addMethod(
  368. "_registerConcreteClassesOn_",
  369. smalltalk.method({
  370. selector: "registerConcreteClassesOn:",
  371. category: 'registration',
  372. fn: function (aBinding){
  373. var self=this;
  374. var newBinding;
  375. return smalltalk.withContext(function($ctx1) { var $1;
  376. $1=_st(self)._isConcrete();
  377. if(smalltalk.assert($1)){
  378. newBinding=_st(self)._registerOn_(aBinding);
  379. newBinding;
  380. } else {
  381. newBinding=aBinding;
  382. newBinding;
  383. };
  384. _st(_st(self)._subclasses())._do_((function(each){
  385. return smalltalk.withContext(function($ctx2) { return _st(each)._registerConcreteClassesOn_(newBinding);
  386. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  387. return self}, function($ctx1) {$ctx1.fill(self,"registerConcreteClassesOn:",{aBinding:aBinding,newBinding:newBinding},smalltalk.HLCommand.klass)})},
  388. args: ["aBinding"],
  389. source: "registerConcreteClassesOn: aBinding\x0a\x09| newBinding |\x0a\x09\x0a\x09self isConcrete\x0a\x09\x09ifTrue: [ newBinding := self registerOn: aBinding ]\x0a\x09\x09ifFalse: [ newBinding := aBinding ].\x0a\x09\x09\x0a\x09self subclasses do: [ :each | each registerConcreteClassesOn: newBinding ]",
  390. messageSends: ["ifTrue:ifFalse:", "registerOn:", "isConcrete", "do:", "registerConcreteClassesOn:", "subclasses"],
  391. referencedClasses: []
  392. }),
  393. smalltalk.HLCommand.klass);
  394. smalltalk.addMethod(
  395. "_registerOn_",
  396. smalltalk.method({
  397. selector: "registerOn:",
  398. category: 'registration',
  399. fn: function (aBinding){
  400. var self=this;
  401. return smalltalk.withContext(function($ctx1) { var $1;
  402. $1=_st(_st(self)._new())._registerOn_(aBinding);
  403. return $1;
  404. }, function($ctx1) {$ctx1.fill(self,"registerOn:",{aBinding:aBinding},smalltalk.HLCommand.klass)})},
  405. args: ["aBinding"],
  406. source: "registerOn: aBinding\x0a\x09^ self new registerOn: aBinding",
  407. messageSends: ["registerOn:", "new"],
  408. referencedClasses: []
  409. }),
  410. smalltalk.HLCommand.klass);
  411. smalltalk.addClass('HLCloseTabCommand', smalltalk.HLCommand, [], 'Helios-Commands-Core');
  412. smalltalk.addMethod(
  413. "_execute",
  414. smalltalk.method({
  415. selector: "execute",
  416. category: 'executing',
  417. fn: function (){
  418. var self=this;
  419. return smalltalk.withContext(function($ctx1) { _st(_st((smalltalk.HLManager || HLManager))._current())._removeActiveTab();
  420. return self}, function($ctx1) {$ctx1.fill(self,"execute",{}, smalltalk.HLCloseTabCommand)})},
  421. args: [],
  422. source: "execute\x0a\x09HLManager current removeActiveTab",
  423. messageSends: ["removeActiveTab", "current"],
  424. referencedClasses: ["HLManager"]
  425. }),
  426. smalltalk.HLCloseTabCommand);
  427. smalltalk.addMethod(
  428. "_key",
  429. smalltalk.method({
  430. selector: "key",
  431. category: 'accessing',
  432. fn: function (){
  433. var self=this;
  434. return smalltalk.withContext(function($ctx1) { return (87);
  435. }, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLCloseTabCommand.klass)})},
  436. args: [],
  437. source: "key\x0a\x09^ 87",
  438. messageSends: [],
  439. referencedClasses: []
  440. }),
  441. smalltalk.HLCloseTabCommand.klass);
  442. smalltalk.addMethod(
  443. "_label",
  444. smalltalk.method({
  445. selector: "label",
  446. category: 'accessing',
  447. fn: function (){
  448. var self=this;
  449. return smalltalk.withContext(function($ctx1) { return "Close tab";
  450. }, function($ctx1) {$ctx1.fill(self,"label",{}, smalltalk.HLCloseTabCommand.klass)})},
  451. args: [],
  452. source: "label\x0a\x09^ 'Close tab'",
  453. messageSends: [],
  454. referencedClasses: []
  455. }),
  456. smalltalk.HLCloseTabCommand.klass);
  457. smalltalk.addClass('HLModelCommand', smalltalk.HLCommand, ['model'], 'Helios-Commands-Core');
  458. smalltalk.addMethod(
  459. "_model",
  460. smalltalk.method({
  461. selector: "model",
  462. category: 'accessing',
  463. fn: function (){
  464. var self=this;
  465. return smalltalk.withContext(function($ctx1) { var $1;
  466. $1=self["@model"];
  467. return $1;
  468. }, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLModelCommand)})},
  469. args: [],
  470. source: "model\x0a\x09^ model",
  471. messageSends: [],
  472. referencedClasses: []
  473. }),
  474. smalltalk.HLModelCommand);
  475. smalltalk.addMethod(
  476. "_model_",
  477. smalltalk.method({
  478. selector: "model:",
  479. category: 'accessing',
  480. fn: function (aModel){
  481. var self=this;
  482. return smalltalk.withContext(function($ctx1) { self["@model"]=aModel;
  483. return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLModelCommand)})},
  484. args: ["aModel"],
  485. source: "model: aModel\x0a\x09model := aModel",
  486. messageSends: [],
  487. referencedClasses: []
  488. }),
  489. smalltalk.HLModelCommand);
  490. smalltalk.addMethod(
  491. "_for_",
  492. smalltalk.method({
  493. selector: "for:",
  494. category: 'instance creation',
  495. fn: function (aModel){
  496. var self=this;
  497. return smalltalk.withContext(function($ctx1) { var $1;
  498. $1=_st(self)._new();
  499. return $1;
  500. }, function($ctx1) {$ctx1.fill(self,"for:",{aModel:aModel},smalltalk.HLModelCommand.klass)})},
  501. args: ["aModel"],
  502. source: "for: aModel\x0a\x09^ self new",
  503. messageSends: ["new"],
  504. referencedClasses: []
  505. }),
  506. smalltalk.HLModelCommand.klass);
  507. smalltalk.addMethod(
  508. "_registerConcreteClassesOn_for_",
  509. smalltalk.method({
  510. selector: "registerConcreteClassesOn:for:",
  511. category: 'registration',
  512. fn: function (aBinding,aModel){
  513. var self=this;
  514. var newBinding;
  515. return smalltalk.withContext(function($ctx1) { var $1;
  516. $1=_st(self)._isConcrete();
  517. if(smalltalk.assert($1)){
  518. newBinding=_st(self)._registerOn_for_(aBinding,aModel);
  519. newBinding;
  520. } else {
  521. newBinding=aBinding;
  522. newBinding;
  523. };
  524. _st(_st(self)._subclasses())._do_((function(each){
  525. return smalltalk.withContext(function($ctx2) { return _st(each)._registerConcreteClassesOn_for_(newBinding,aModel);
  526. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
  527. return self}, function($ctx1) {$ctx1.fill(self,"registerConcreteClassesOn:for:",{aBinding:aBinding,aModel:aModel,newBinding:newBinding},smalltalk.HLModelCommand.klass)})},
  528. args: ["aBinding", "aModel"],
  529. source: "registerConcreteClassesOn: aBinding for: aModel\x0a\x09| newBinding |\x0a\x09\x0a\x09self isConcrete\x0a\x09\x09ifTrue: [ newBinding := self registerOn: aBinding for: aModel ]\x0a\x09\x09ifFalse: [ newBinding := aBinding ].\x0a\x09\x09\x0a\x09self subclasses do: [ :each |\x0a\x09\x09each registerConcreteClassesOn: newBinding for: aModel ]",
  530. messageSends: ["ifTrue:ifFalse:", "registerOn:for:", "isConcrete", "do:", "registerConcreteClassesOn:for:", "subclasses"],
  531. referencedClasses: []
  532. }),
  533. smalltalk.HLModelCommand.klass);
  534. smalltalk.addMethod(
  535. "_registerOn_for_",
  536. smalltalk.method({
  537. selector: "registerOn:for:",
  538. category: 'registration',
  539. fn: function (aBinding,aModel){
  540. var self=this;
  541. return smalltalk.withContext(function($ctx1) { var $1;
  542. $1=_st(_st(self)._for_(aModel))._registerOn_(aBinding);
  543. return $1;
  544. }, function($ctx1) {$ctx1.fill(self,"registerOn:for:",{aBinding:aBinding,aModel:aModel},smalltalk.HLModelCommand.klass)})},
  545. args: ["aBinding", "aModel"],
  546. source: "registerOn: aBinding for: aModel\x0a\x09^ (self for: aModel) registerOn: aBinding",
  547. messageSends: ["registerOn:", "for:"],
  548. referencedClasses: []
  549. }),
  550. smalltalk.HLModelCommand.klass);
  551. smalltalk.addClass('HLOpenCommand', smalltalk.HLCommand, [], 'Helios-Commands-Core');
  552. smalltalk.addMethod(
  553. "_key",
  554. smalltalk.method({
  555. selector: "key",
  556. category: 'accessing',
  557. fn: function (){
  558. var self=this;
  559. return smalltalk.withContext(function($ctx1) { return (79);
  560. }, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLOpenCommand.klass)})},
  561. args: [],
  562. source: "key\x0a\x09^ 79",
  563. messageSends: [],
  564. referencedClasses: []
  565. }),
  566. smalltalk.HLOpenCommand.klass);
  567. smalltalk.addMethod(
  568. "_label",
  569. smalltalk.method({
  570. selector: "label",
  571. category: 'accessing',
  572. fn: function (){
  573. var self=this;
  574. return smalltalk.withContext(function($ctx1) { return "Open";
  575. }, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLOpenCommand.klass)})},
  576. args: [],
  577. source: "label\x0a\x09^ 'Open'",
  578. messageSends: [],
  579. referencedClasses: []
  580. }),
  581. smalltalk.HLOpenCommand.klass);
  582. smalltalk.addClass('HLOpenBrowserCommand', smalltalk.HLOpenCommand, [], 'Helios-Commands-Core');
  583. smalltalk.addMethod(
  584. "_execute",
  585. smalltalk.method({
  586. selector: "execute",
  587. category: 'executing',
  588. fn: function (){
  589. var self=this;
  590. return smalltalk.withContext(function($ctx1) { var $1;
  591. $1=_st((smalltalk.HLBrowser || HLBrowser))._openAsTab();
  592. return $1;
  593. }, function($ctx1) {$ctx1.fill(self,"execute",{}, smalltalk.HLOpenBrowserCommand)})},
  594. args: [],
  595. source: "execute\x0a\x09^ HLBrowser openAsTab",
  596. messageSends: ["openAsTab"],
  597. referencedClasses: ["HLBrowser"]
  598. }),
  599. smalltalk.HLOpenBrowserCommand);
  600. smalltalk.addMethod(
  601. "_key",
  602. smalltalk.method({
  603. selector: "key",
  604. category: 'accessing',
  605. fn: function (){
  606. var self=this;
  607. return smalltalk.withContext(function($ctx1) { return (66);
  608. }, function($ctx1) {$ctx1.fill(self,"key",{}, smalltalk.HLOpenBrowserCommand.klass)})},
  609. args: [],
  610. source: "key\x0a\x09^ 66",
  611. messageSends: [],
  612. referencedClasses: []
  613. }),
  614. smalltalk.HLOpenBrowserCommand.klass);
  615. smalltalk.addMethod(
  616. "_label",
  617. smalltalk.method({
  618. selector: "label",
  619. category: 'accessing',
  620. fn: function (){
  621. var self=this;
  622. return smalltalk.withContext(function($ctx1) { return "Browser";
  623. }, function($ctx1) {$ctx1.fill(self,"label",{}, smalltalk.HLOpenBrowserCommand.klass)})},
  624. args: [],
  625. source: "label\x0a\x09^ 'Browser'",
  626. messageSends: [],
  627. referencedClasses: []
  628. }),
  629. smalltalk.HLOpenBrowserCommand.klass);
  630. smalltalk.addClass('HLOpenTranscriptCommand', smalltalk.HLOpenCommand, [], 'Helios-Commands-Core');
  631. smalltalk.addMethod(
  632. "_execute",
  633. smalltalk.method({
  634. selector: "execute",
  635. category: 'executing',
  636. fn: function (){
  637. var self=this;
  638. return smalltalk.withContext(function($ctx1) { var $1;
  639. $1=_st((smalltalk.HLTranscript || HLTranscript))._openAsTab();
  640. return $1;
  641. }, function($ctx1) {$ctx1.fill(self,"execute",{}, smalltalk.HLOpenTranscriptCommand)})},
  642. args: [],
  643. source: "execute\x0a\x09^ HLTranscript openAsTab",
  644. messageSends: ["openAsTab"],
  645. referencedClasses: ["HLTranscript"]
  646. }),
  647. smalltalk.HLOpenTranscriptCommand);
  648. smalltalk.addMethod(
  649. "_key",
  650. smalltalk.method({
  651. selector: "key",
  652. category: 'accessing',
  653. fn: function (){
  654. var self=this;
  655. return smalltalk.withContext(function($ctx1) { return (84);
  656. }, function($ctx1) {$ctx1.fill(self,"key",{}, smalltalk.HLOpenTranscriptCommand.klass)})},
  657. args: [],
  658. source: "key\x0a\x09^ 84",
  659. messageSends: [],
  660. referencedClasses: []
  661. }),
  662. smalltalk.HLOpenTranscriptCommand.klass);
  663. smalltalk.addMethod(
  664. "_label",
  665. smalltalk.method({
  666. selector: "label",
  667. category: 'accessing',
  668. fn: function (){
  669. var self=this;
  670. return smalltalk.withContext(function($ctx1) { return "Transcript";
  671. }, function($ctx1) {$ctx1.fill(self,"label",{}, smalltalk.HLOpenTranscriptCommand.klass)})},
  672. args: [],
  673. source: "label\x0a\x09^ 'Transcript'",
  674. messageSends: [],
  675. referencedClasses: []
  676. }),
  677. smalltalk.HLOpenTranscriptCommand.klass);
  678. smalltalk.addClass('HLOpenWorkspaceCommand', smalltalk.HLOpenCommand, [], 'Helios-Commands-Core');
  679. smalltalk.addMethod(
  680. "_execute",
  681. smalltalk.method({
  682. selector: "execute",
  683. category: 'executing',
  684. fn: function (){
  685. var self=this;
  686. return smalltalk.withContext(function($ctx1) { var $1;
  687. $1=_st((smalltalk.HLCodeWidget || HLCodeWidget))._openAsTab();
  688. return $1;
  689. }, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLOpenWorkspaceCommand)})},
  690. args: [],
  691. source: "execute\x0a\x09^ HLCodeWidget openAsTab",
  692. messageSends: ["openAsTab"],
  693. referencedClasses: ["HLCodeWidget"]
  694. }),
  695. smalltalk.HLOpenWorkspaceCommand);
  696. smalltalk.addMethod(
  697. "_key",
  698. smalltalk.method({
  699. selector: "key",
  700. category: 'accessing',
  701. fn: function (){
  702. var self=this;
  703. return smalltalk.withContext(function($ctx1) { return (87);
  704. }, function($ctx1) {$ctx1.fill(self,"key",{}, smalltalk.HLOpenWorkspaceCommand.klass)})},
  705. args: [],
  706. source: "key\x0a\x09^ 87",
  707. messageSends: [],
  708. referencedClasses: []
  709. }),
  710. smalltalk.HLOpenWorkspaceCommand.klass);
  711. smalltalk.addMethod(
  712. "_label",
  713. smalltalk.method({
  714. selector: "label",
  715. category: 'accessing',
  716. fn: function (){
  717. var self=this;
  718. return smalltalk.withContext(function($ctx1) { return "Workspace";
  719. }, function($ctx1) {$ctx1.fill(self,"label",{}, smalltalk.HLOpenWorkspaceCommand.klass)})},
  720. args: [],
  721. source: "label\x0a\x09^ 'Workspace'",
  722. messageSends: [],
  723. referencedClasses: []
  724. }),
  725. smalltalk.HLOpenWorkspaceCommand.klass);
  726. smalltalk.addClass('HLViewCommand', smalltalk.HLCommand, [], 'Helios-Commands-Core');
  727. smalltalk.addMethod(
  728. "_label",
  729. smalltalk.method({
  730. selector: "label",
  731. category: 'accessing',
  732. fn: function (){
  733. var self=this;
  734. return smalltalk.withContext(function($ctx1) { return "View";
  735. }, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLViewCommand.klass)})},
  736. args: [],
  737. source: "label\x0a\x09^ 'View'",
  738. messageSends: [],
  739. referencedClasses: []
  740. }),
  741. smalltalk.HLViewCommand.klass);