1
0

Helios-Commands-Core.js 24 KB

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