maglev-database-explorer 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. data/app/controllers/maglev_database_explorer/object_controller.rb +2 -3
  2. data/app/views/maglev_database_explorer/object_explorer/_workspace.html.erb +1 -1
  3. data/app/views/maglev_database_explorer/object_explorer/index.html.erb +2 -3
  4. data/lib/maglev-database-explorer.rb +1 -0
  5. data/lib/maglev-database-explorer/code_evaluation.rb +11 -1
  6. data/lib/maglev-database-explorer/database_views/gsnmethod.rb +2 -1
  7. data/lib/maglev-database-explorer/database_views/object.rb +5 -1
  8. data/lib/maglev-database-explorer/database_views/system.rb +13 -0
  9. data/lib/maglev-database-explorer/debug_storage.rb +10 -0
  10. data/lib/maglev-database-explorer/ruby_workspace.rb +1 -2
  11. data/lib/maglev-database-explorer/version.rb +1 -1
  12. data/public/amber/js/Maglev-Core.deploy.js +35 -1
  13. data/public/amber/js/Maglev-Core.js +50 -1
  14. data/public/amber/js/Maglev-Database-Explorer.deploy.js +60 -10
  15. data/public/amber/js/Maglev-Database-Explorer.js +92 -22
  16. data/public/amber/st/Maglev-Core.st +31 -1
  17. data/public/amber/st/Maglev-Database-Explorer.st +86 -23
  18. data/public/css/bootstrap.css +4 -4
  19. data/public/css/images/animated-overlay.gif +0 -0
  20. data/public/css/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  21. data/public/css/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  22. data/public/css/images/ui-bg_flat_10_000000_40x100.png +0 -0
  23. data/public/css/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  24. data/public/css/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  25. data/public/css/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  26. data/public/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  27. data/public/css/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  28. data/public/css/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  29. data/public/css/images/ui-icons_222222_256x240.png +0 -0
  30. data/public/css/images/ui-icons_228ef1_256x240.png +0 -0
  31. data/public/css/images/ui-icons_ef8c08_256x240.png +0 -0
  32. data/public/css/images/ui-icons_ffd27a_256x240.png +0 -0
  33. data/public/css/images/ui-icons_ffffff_256x240.png +0 -0
  34. data/public/images/bg_tile.png +0 -0
  35. data/public/images/mchammer.gif +0 -0
  36. data/public/libs/codemirror/lib/codemirror.css +1 -1
  37. data/public/themes/geo-bootstrap/README.md +25 -0
  38. data/public/themes/geo-bootstrap/img/flames.gif +0 -0
  39. data/public/themes/geo-bootstrap/img/glyphicons-halflings-white.png +0 -0
  40. data/public/themes/geo-bootstrap/img/glyphicons-halflings.png +0 -0
  41. data/public/themes/geo-bootstrap/img/microfab.gif +0 -0
  42. data/public/themes/geo-bootstrap/img/progress.gif +0 -0
  43. data/public/themes/geo-bootstrap/img/rainbow.gif +0 -0
  44. data/public/themes/geo-bootstrap/img/stars.gif +0 -0
  45. data/public/themes/geo-bootstrap/img/test/7upspot.gif +0 -0
  46. data/public/themes/geo-bootstrap/img/test/americanflag.gif +0 -0
  47. data/public/themes/geo-bootstrap/img/test/community.gif +0 -0
  48. data/public/themes/geo-bootstrap/img/test/computer-01.gif +0 -0
  49. data/public/themes/geo-bootstrap/img/test/computer.gif +0 -0
  50. data/public/themes/geo-bootstrap/img/test/construction.gif +0 -0
  51. data/public/themes/geo-bootstrap/img/test/counter.gif +0 -0
  52. data/public/themes/geo-bootstrap/img/test/counter2.gif +0 -0
  53. data/public/themes/geo-bootstrap/img/test/divider.gif +0 -0
  54. data/public/themes/geo-bootstrap/img/test/divider1.gif +0 -0
  55. data/public/themes/geo-bootstrap/img/test/divider2.gif +0 -0
  56. data/public/themes/geo-bootstrap/img/test/divider3.gif +0 -0
  57. data/public/themes/geo-bootstrap/img/test/divider4.gif +0 -0
  58. data/public/themes/geo-bootstrap/img/test/drudgesiren.gif +0 -0
  59. data/public/themes/geo-bootstrap/img/test/emailme.gif +0 -0
  60. data/public/themes/geo-bootstrap/img/test/funky.gif +0 -0
  61. data/public/themes/geo-bootstrap/img/test/geocities.jpg +0 -0
  62. data/public/themes/geo-bootstrap/img/test/hacker.gif +0 -0
  63. data/public/themes/geo-bootstrap/img/test/heart.gif +0 -0
  64. data/public/themes/geo-bootstrap/img/test/hot.gif +0 -0
  65. data/public/themes/geo-bootstrap/img/test/ie_logo.gif +0 -0
  66. data/public/themes/geo-bootstrap/img/test/mailkitten.gif +0 -0
  67. data/public/themes/geo-bootstrap/img/test/mchammer.gif +0 -0
  68. data/public/themes/geo-bootstrap/img/test/new.gif +0 -0
  69. data/public/themes/geo-bootstrap/img/test/new2.gif +0 -0
  70. data/public/themes/geo-bootstrap/img/test/noframes.gif +0 -0
  71. data/public/themes/geo-bootstrap/img/test/notepad.gif +0 -0
  72. data/public/themes/geo-bootstrap/img/test/ns_logo.gif +0 -0
  73. data/public/themes/geo-bootstrap/img/test/sign-in.gif +0 -0
  74. data/public/themes/geo-bootstrap/img/test/spinningearth.gif +0 -0
  75. data/public/themes/geo-bootstrap/img/test/underconstruction.gif +0 -0
  76. data/public/themes/geo-bootstrap/img/test/wabwalk.gif +0 -0
  77. data/public/themes/geo-bootstrap/img/test/webtrips.gif +0 -0
  78. data/public/themes/geo-bootstrap/img/test/yahooweek.gif +0 -0
  79. data/public/themes/geo-bootstrap/package.json +21 -0
  80. data/public/themes/geo-bootstrap/swatch/bootstrap-responsive.css +1109 -0
  81. data/public/themes/geo-bootstrap/swatch/bootstrap-responsive.min.css +9 -0
  82. data/public/themes/geo-bootstrap/swatch/bootstrap.css +6462 -0
  83. data/public/themes/geo-bootstrap/swatch/bootstrap.min.css +9 -0
  84. metadata +66 -7
  85. data/test/dummy/tmp/cache/assets/D26/980/sprockets%2Fe04a37a0fa7f26c1183a1a4436e2a9c1 +0 -0
  86. data/test/dummy/tmp/cache/assets/D32/4F0/sprockets%2Fbd5441f3593e4ea157222202f3fddad6 +0 -0
  87. data/test/dummy/tmp/pids/server.pid +0 -1
@@ -53,8 +53,7 @@ module MaglevDatabaseExplorer
53
53
  private
54
54
 
55
55
  def store_object(obj)
56
- Maglev::PERSISTENT_ROOT[:debug_storage] ||= {}
57
- Maglev::PERSISTENT_ROOT[:debug_storage][obj.object_id] = obj
58
- end
56
+ MaglevDatabaseExplorer.store_debug_object(obj)
57
+ end
59
58
  end
60
59
  end
@@ -12,7 +12,7 @@
12
12
  }
13
13
 
14
14
  loadAmber({
15
- // deploy: true,
15
+ deploy: true,
16
16
  ready: function() {
17
17
  // smalltalk.Browser._open();
18
18
 
@@ -48,12 +48,11 @@
48
48
  </button>
49
49
  <div class="nav-collapse collapse">
50
50
  <ul class="nav">
51
- <li><a href="/ClassExplorer/index/<%= Class.object_id %>"><b class="icon-list-alt"></b>Class Explorer</a></li>
52
- <li><a href="/ObjectExplorer/graph/<%= Maglev::PERSISTENT_ROOT.object_id %>"><b class="icon-search"></b>PERSISTENT_ROOT</a></li>
53
51
  <li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#"><b class="icon-question-sign"></b>Help<b class="caret"></b></a>
54
52
  <ul class="dropdown-menu">
55
53
  <li><a href="http://maglev.github.io/">MagLev website</a></li>
56
- <li><a href="/LICENSE">License</a></li>
54
+ <li><a href="LICENSE">License</a></li>
55
+ <li><a href="#" onclick="smalltalk.Maglev._swatchDesign();">Switch theme</a></li>
57
56
  </ul>
58
57
  </li>
59
58
  </ul>
@@ -4,6 +4,7 @@ require "maglev-database-explorer/engine_symlinks"
4
4
  require "maglev-database-explorer/ruby_workspace"
5
5
  require "maglev-database-explorer/code_evaluation"
6
6
  require "maglev-database-explorer/debug_server"
7
+ require "maglev-database-explorer/debug_storage"
7
8
  require "maglev-database-explorer/halt"
8
9
 
9
10
  # Workaround for Engines not working correctly on MagLev
@@ -2,7 +2,17 @@ class CodeEvaluation
2
2
  class << self
3
3
  def wait_for_eval_thread(&block)
4
4
  eval_thread = Thread.start do
5
- value_proc = Proc.new(&block)
5
+ value_proc = Proc.new do
6
+ if Maglev::System.__DBEPersistenceMode
7
+ Maglev.persistent do
8
+ block.call
9
+ end
10
+ else
11
+ Maglev.transient do
12
+ block.call
13
+ end
14
+ end
15
+ end
6
16
 
7
17
  value_proc.__call_and_rescue do |eval_result|
8
18
  is_exception = eval_result[0]
@@ -6,7 +6,7 @@ class GsNMethodProxy
6
6
  end
7
7
 
8
8
  def __for_database_explorer
9
- [@method.__source_string, @method.__environment_id, @method.__selector, @method.__file_and_line]
9
+ [@method.__source_string, @method.__environment_id, @method.__selector, @method.__file_and_line, @method.__in_class.to_database_view(1, {}, {:noBehavior => true})]
10
10
  end
11
11
 
12
12
  def method=(val)
@@ -15,6 +15,7 @@ class GsNMethodProxy
15
15
  end
16
16
 
17
17
  class GsNMethod
18
+ primitive '__in_class', 'inClass'
18
19
  primitive '__source_string', 'sourceString'
19
20
  primitive '__environment_id', 'environmentId'
20
21
  primitive '__description_for_stack', '_descrForStack'
@@ -36,7 +36,11 @@ class Object
36
36
  obj[:instVarsSize] = self.instance_variables.size
37
37
 
38
38
  ((range_from - 1)..[range_to - 1, self.instance_variables.size - 1].min).each do |index|
39
- obj[:instVars][index + 1] = [self.instance_variables[index].to_database_view(depth - 1, {}, params), self.instance_variable_get(self.instance_variables[index]).to_database_view(depth - 1, {}, params)]
39
+ begin
40
+ obj[:instVars][index + 1] = [self.instance_variables[index].to_database_view(depth - 1, {}, params), self.instance_variable_get(self.instance_variables[index]).to_database_view(depth - 1, {}, params)]
41
+ rescue Exception => e
42
+ obj[:instVars][index + 1] = [self.instance_variables[index].to_database_view(depth - 1, {}, params), "(error)".to_database_view(1, {}, params)]
43
+ end
40
44
  end
41
45
  end
42
46
  else
@@ -7,6 +7,19 @@ class Maglev::System
7
7
  class_primitive '__continue_transaction', 'continueTransaction'
8
8
 
9
9
  class << self
10
+ def __DBETogglePersistenceMode
11
+ @dbe_persistence_mode = !__DBEPersistenceMode
12
+ @dbe_persistence_mode
13
+ end
14
+
15
+ def __DBEPersistenceMode
16
+ if @dbe_persistence_mode == nil
17
+ @dbe_persistence_mode = false
18
+ end
19
+
20
+ @dbe_persistence_mode
21
+ end
22
+
10
23
  def __DBECommitTransaction
11
24
  DBEBootstrapChanges.undo_all_changes
12
25
  __commit_transaction
@@ -0,0 +1,10 @@
1
+ module MaglevDatabaseExplorer
2
+ def self.debug_storage
3
+ @debug_storage ||= {}
4
+ end
5
+
6
+ def self.store_debug_object(obj)
7
+ debug_storage[obj.object_id] = obj
8
+ end
9
+ end
10
+
@@ -14,8 +14,7 @@ class RubyWorkspace
14
14
  end
15
15
 
16
16
  def store_object(obj)
17
- Maglev::PERSISTENT_ROOT[:debug_storage] ||= {}
18
- Maglev::PERSISTENT_ROOT[:debug_storage][obj.object_id] = obj
17
+ MaglevDatabaseExplorer.store_debug_object(obj)
19
18
  end
20
19
 
21
20
  def initialize
@@ -1,3 +1,3 @@
1
1
  module MaglevDatabaseExplorer
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -156,7 +156,7 @@ return self;}
156
156
  smalltalk.Maglev);
157
157
 
158
158
 
159
- smalltalk.Maglev.klass.iVarNames = ['instance','defaultWorkspaceId','persistentRootId','maglevSystemId','evalObjectId'];
159
+ smalltalk.Maglev.klass.iVarNames = ['instance','defaultWorkspaceId','persistentRootId','maglevSystemId','evalObjectId','swatchDesign'];
160
160
  smalltalk.addMethod(
161
161
  unescape('_defaultWorkspaceId'),
162
162
  smalltalk.method({
@@ -284,6 +284,18 @@ return self;}
284
284
  }),
285
285
  smalltalk.Maglev.klass);
286
286
 
287
+ smalltalk.addMethod(
288
+ unescape('_swatchDesign'),
289
+ smalltalk.method({
290
+ selector: unescape('swatchDesign'),
291
+ fn: function (){
292
+ var self=this;
293
+ (($receiver = self['@swatchDesign']) == nil || $receiver == undefined) ? (function(){var html=nil;
294
+ (html=smalltalk.send((smalltalk.HTMLCanvas || HTMLCanvas), "_onJQuery_", [smalltalk.send("head", "_asJQuery", [])]));return (self['@swatchDesign']=(function($rec){smalltalk.send($rec, "_href_", [unescape("themes/geo-bootstrap/swatch/bootstrap.css")]);return smalltalk.send($rec, "_rel_", ["stylesheet"]);})(smalltalk.send(html, "_link", [])));})() : (function(){smalltalk.send(smalltalk.send(self['@swatchDesign'], "_asJQuery", []), "_remove", []);return (self['@swatchDesign']=nil);})();
295
+ return self;}
296
+ }),
297
+ smalltalk.Maglev.klass);
298
+
287
299
 
288
300
  smalltalk.addClass('MaglevObject', smalltalk.Object, ['oop', 'instVars', 'instVarsSize', 'virtualClassObject', 'classObject', 'inspection', 'isLoaded', 'isException', 'windows', 'customTabs'], 'Maglev-Core');
289
301
  smalltalk.addMethod(
@@ -1920,6 +1932,28 @@ return self;}
1920
1932
  }),
1921
1933
  smalltalk.MaglevModule);
1922
1934
 
1935
+ smalltalk.addMethod(
1936
+ unescape('_compileRubySourceCode_withCallback_'),
1937
+ smalltalk.method({
1938
+ selector: unescape('compileRubySourceCode%3AwithCallback%3A'),
1939
+ fn: function (sourceCode, aBlock){
1940
+ var self=this;
1941
+ smalltalk.send(self, "_evaluateWithoutUpdate_language_with_withCallback_", [sourceCode, "rubyClass", smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []), aBlock]);
1942
+ return self;}
1943
+ }),
1944
+ smalltalk.MaglevModule);
1945
+
1946
+ smalltalk.addMethod(
1947
+ unescape('_compileSmalltalkSourceCode_withCallback_'),
1948
+ smalltalk.method({
1949
+ selector: unescape('compileSmalltalkSourceCode%3AwithCallback%3A'),
1950
+ fn: function (sourceCode, aBlock){
1951
+ var self=this;
1952
+ smalltalk.send(self, "_evaluateWithoutUpdate_language_with_withCallback_", [smalltalk.send(smalltalk.send(unescape("self%20compile%3A%20%27"), "__comma", [smalltalk.send(sourceCode, "_escapedString", [])]), "__comma", [unescape("%27.")]), "smalltalk", smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []), aBlock]);
1953
+ return self;}
1954
+ }),
1955
+ smalltalk.MaglevModule);
1956
+
1923
1957
  smalltalk.addMethod(
1924
1958
  unescape('_constants'),
1925
1959
  smalltalk.method({
@@ -216,7 +216,7 @@ referencedClasses: ["MaglevWaitingWindow"]
216
216
  smalltalk.Maglev);
217
217
 
218
218
 
219
- smalltalk.Maglev.klass.iVarNames = ['instance','defaultWorkspaceId','persistentRootId','maglevSystemId','evalObjectId'];
219
+ smalltalk.Maglev.klass.iVarNames = ['instance','defaultWorkspaceId','persistentRootId','maglevSystemId','evalObjectId','swatchDesign'];
220
220
  smalltalk.addMethod(
221
221
  unescape('_defaultWorkspaceId'),
222
222
  smalltalk.method({
@@ -399,6 +399,23 @@ referencedClasses: ["MaglevObjectSpace", "MaglevHaltedThreadListener", "MaglevWe
399
399
  }),
400
400
  smalltalk.Maglev.klass);
401
401
 
402
+ smalltalk.addMethod(
403
+ unescape('_swatchDesign'),
404
+ smalltalk.method({
405
+ selector: unescape('swatchDesign'),
406
+ category: 'rendering',
407
+ fn: function (){
408
+ var self=this;
409
+ (($receiver = self['@swatchDesign']) == nil || $receiver == undefined) ? (function(){var html=nil;
410
+ (html=smalltalk.send((smalltalk.HTMLCanvas || HTMLCanvas), "_onJQuery_", [smalltalk.send("head", "_asJQuery", [])]));return (self['@swatchDesign']=(function($rec){smalltalk.send($rec, "_href_", [unescape("themes/geo-bootstrap/swatch/bootstrap.css")]);return smalltalk.send($rec, "_rel_", ["stylesheet"]);})(smalltalk.send(html, "_link", [])));})() : (function(){smalltalk.send(smalltalk.send(self['@swatchDesign'], "_asJQuery", []), "_remove", []);return (self['@swatchDesign']=nil);})();
411
+ return self;},
412
+ args: [],
413
+ source: unescape('swatchDesign%0A%09swatchDesign%20%0A%09%09ifNil%3A%20%5B%20%7Chtml%7C%0A%09%09%09html%20%3A%3D%20HTMLCanvas%20onJQuery%3A%20%27head%27%20asJQuery.%0A%09%09%09swatchDesign%20%3A%3D%20html%20link%20%0A%09%09%09%09href%3A%20%27themes/geo-bootstrap/swatch/bootstrap.css%27%3B%0A%09%09%09%09rel%3A%20%27stylesheet%27%5D%0A%09%09ifNotNil%3A%20%5B%0A%09%09%09swatchDesign%20asJQuery%20remove.%0A%09%09%09swatchDesign%20%3A%3D%20nil%5D.'),
414
+ messageSends: ["ifNil:ifNotNil:", "onJQuery:", "asJQuery", "href:", "rel:", "link", "remove"],
415
+ referencedClasses: ["HTMLCanvas"]
416
+ }),
417
+ smalltalk.Maglev.klass);
418
+
402
419
 
403
420
  smalltalk.addClass('MaglevObject', smalltalk.Object, ['oop', 'instVars', 'instVarsSize', 'virtualClassObject', 'classObject', 'inspection', 'isLoaded', 'isException', 'windows', 'customTabs'], 'Maglev-Core');
404
421
  smalltalk.addMethod(
@@ -2715,6 +2732,38 @@ referencedClasses: ["MaglevAjax", "Dictionary"]
2715
2732
  }),
2716
2733
  smalltalk.MaglevModule);
2717
2734
 
2735
+ smalltalk.addMethod(
2736
+ unescape('_compileRubySourceCode_withCallback_'),
2737
+ smalltalk.method({
2738
+ selector: unescape('compileRubySourceCode%3AwithCallback%3A'),
2739
+ category: 'interactions',
2740
+ fn: function (sourceCode, aBlock){
2741
+ var self=this;
2742
+ smalltalk.send(self, "_evaluateWithoutUpdate_language_with_withCallback_", [sourceCode, "rubyClass", smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []), aBlock]);
2743
+ return self;},
2744
+ args: ["sourceCode", "aBlock"],
2745
+ source: unescape('compileRubySourceCode%3A%20sourceCode%20withCallback%3A%20aBlock%0A%09self%20%0A%09%09evaluateWithoutUpdate%3A%20sourceCode%0A%09%09language%3A%20%27rubyClass%27%0A%09%09with%3A%20Dictionary%20new%0A%09%09withCallback%3A%20aBlock.'),
2746
+ messageSends: ["evaluateWithoutUpdate:language:with:withCallback:", "new"],
2747
+ referencedClasses: ["Dictionary"]
2748
+ }),
2749
+ smalltalk.MaglevModule);
2750
+
2751
+ smalltalk.addMethod(
2752
+ unescape('_compileSmalltalkSourceCode_withCallback_'),
2753
+ smalltalk.method({
2754
+ selector: unescape('compileSmalltalkSourceCode%3AwithCallback%3A'),
2755
+ category: 'interactions',
2756
+ fn: function (sourceCode, aBlock){
2757
+ var self=this;
2758
+ smalltalk.send(self, "_evaluateWithoutUpdate_language_with_withCallback_", [smalltalk.send(smalltalk.send(unescape("self%20compile%3A%20%27"), "__comma", [smalltalk.send(sourceCode, "_escapedString", [])]), "__comma", [unescape("%27.")]), "smalltalk", smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []), aBlock]);
2759
+ return self;},
2760
+ args: ["sourceCode", "aBlock"],
2761
+ source: unescape('compileSmalltalkSourceCode%3A%20sourceCode%20withCallback%3A%20aBlock%0A%09self%20%0A%09%09evaluateWithoutUpdate%3A%20%27self%20compile%3A%20%27%27%27%2C%20sourceCode%20escapedString%2C%20%27%27%27.%27%0A%09%09language%3A%20%27smalltalk%27%0A%09%09with%3A%20Dictionary%20new%0A%09%09withCallback%3A%20aBlock.'),
2762
+ messageSends: ["evaluateWithoutUpdate:language:with:withCallback:", unescape("%2C"), "escapedString", "new"],
2763
+ referencedClasses: ["Dictionary"]
2764
+ }),
2765
+ smalltalk.MaglevModule);
2766
+
2718
2767
  smalltalk.addMethod(
2719
2768
  unescape('_constants'),
2720
2769
  smalltalk.method({
@@ -46,7 +46,29 @@ return self;}
46
46
  smalltalk.MaglevDraggableObject.klass);
47
47
 
48
48
 
49
- smalltalk.addClass('MaglevGsNMethodEditor', smalltalk.Widget, ['object', 'editorContainer', 'errorBox', 'rubyIcon', 'stIcon', 'envIdContainer', 'sourceLocationContainer', 'editor', 'editorHeight', 'editorWidth'], 'Maglev-Database-Explorer');
49
+ smalltalk.addClass('MaglevGsNMethodEditor', smalltalk.Widget, ['object', 'editorContainer', 'errorBox', 'rubyIcon', 'stIcon', 'envIdContainer', 'sourceLocationContainer', 'editor', 'editorHeight', 'editorWidth', 'classObject'], 'Maglev-Database-Explorer');
50
+ smalltalk.addMethod(
51
+ unescape('_classObject'),
52
+ smalltalk.method({
53
+ selector: unescape('classObject'),
54
+ fn: function (){
55
+ var self=this;
56
+ return smalltalk.send((smalltalk.MaglevObject || MaglevObject), "_newObjectWithoutUpdate_", [smalltalk.send(smalltalk.send(self, "_methodObject", []), "_at_", [(5)])]);
57
+ return self;}
58
+ }),
59
+ smalltalk.MaglevGsNMethodEditor);
60
+
61
+ smalltalk.addMethod(
62
+ unescape('_classObject_'),
63
+ smalltalk.method({
64
+ selector: unescape('classObject%3A'),
65
+ fn: function (anObject){
66
+ var self=this;
67
+ (self['@classObject']=anObject);
68
+ return self;}
69
+ }),
70
+ smalltalk.MaglevGsNMethodEditor);
71
+
50
72
  smalltalk.addMethod(
51
73
  unescape('_commandSave'),
52
74
  smalltalk.method({
@@ -56,7 +78,7 @@ var self=this;
56
78
  var selectedCategory=nil;
57
79
  smalltalk.send(self['@errorBox'], "_hide", []);
58
80
  smalltalk.send(smalltalk.send(self['@errorBox'], "_asJQuery", []), "_empty", []);
59
- ((($receiver = smalltalk.send(smalltalk.send(self['@object'], "_environmentId", []), "__eq", [(1)])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self['@object'], "_compileRubySourceCode_withCallback_", [smalltalk.send(self['@editor'], "_getValue", []), (function(success, obj){return ((($receiver = smalltalk.send(obj, "_isException", [])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})() : (function(){return smalltalk.send(self, "_signalSuccess", []);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalFailure_", [obj]);}), (function(){return smalltalk.send(self, "_signalSuccess", []);})]));})]);})() : (function(){return smalltalk.send(self['@object'], "_compileSmalltalkSourceCode_withCallback_", [smalltalk.send(self['@editor'], "_getValue", []), (function(success, obj){return ((($receiver = smalltalk.send(obj, "_isException", [])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})() : (function(){return smalltalk.send(self, "_signalSuccess", []);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalFailure_", [obj]);}), (function(){return smalltalk.send(self, "_signalSuccess", []);})]));})]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self['@object'], "_compileRubySourceCode_withCallback_", [smalltalk.send(self['@editor'], "_getValue", []), (function(success, obj){return ((($receiver = smalltalk.send(obj, "_isException", [])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})() : (function(){return smalltalk.send(self, "_signalSuccess", []);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalFailure_", [obj]);}), (function(){return smalltalk.send(self, "_signalSuccess", []);})]));})]);}), (function(){return smalltalk.send(self['@object'], "_compileSmalltalkSourceCode_withCallback_", [smalltalk.send(self['@editor'], "_getValue", []), (function(success, obj){return ((($receiver = smalltalk.send(obj, "_isException", [])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})() : (function(){return smalltalk.send(self, "_signalSuccess", []);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalFailure_", [obj]);}), (function(){return smalltalk.send(self, "_signalSuccess", []);})]));})]);})]));
81
+ ((($receiver = smalltalk.send(smalltalk.send(self, "_envId", []), "__eq", [(1)])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self, "_classObject", []), "_compileRubySourceCode_withCallback_", [smalltalk.send(smalltalk.send(self['@editor'], "_getValue", []), "_replace_with_", [unescape("%u26A1"), ""]), (function(success, obj){return ((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalSuccess", []);})() : (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalSuccess", []);}), (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})]));})]);})() : (function(){return smalltalk.send(smalltalk.send(self, "_classObject", []), "_compileSmalltalkSourceCode_withCallback_", [smalltalk.send(smalltalk.send(self['@editor'], "_getValue", []), "_replace_with_", [unescape("%u26A1"), ""]), (function(success, obj){return ((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalSuccess", []);})() : (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalSuccess", []);}), (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})]));})]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self, "_classObject", []), "_compileRubySourceCode_withCallback_", [smalltalk.send(smalltalk.send(self['@editor'], "_getValue", []), "_replace_with_", [unescape("%u26A1"), ""]), (function(success, obj){return ((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalSuccess", []);})() : (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalSuccess", []);}), (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})]));})]);}), (function(){return smalltalk.send(smalltalk.send(self, "_classObject", []), "_compileSmalltalkSourceCode_withCallback_", [smalltalk.send(smalltalk.send(self['@editor'], "_getValue", []), "_replace_with_", [unescape("%u26A1"), ""]), (function(success, obj){return ((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalSuccess", []);})() : (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalSuccess", []);}), (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})]));})]);})]));
60
82
  return self;}
61
83
  }),
62
84
  smalltalk.MaglevGsNMethodEditor);
@@ -1425,7 +1447,9 @@ selector: unescape('initializeEditor'),
1425
1447
  fn: function (){
1426
1448
  var self=this;
1427
1449
  var params=nil;
1428
- (params=(function($rec){smalltalk.send($rec, "_basicAt_put_", ["mode", unescape("text/x-ruby")]);smalltalk.send($rec, "_basicAt_put_", ["styleActiveLine", true]);smalltalk.send($rec, "_basicAt_put_", ["lineNumbers", true]);smalltalk.send($rec, "_basicAt_put_", ["matchBrackets", true]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send((smalltalk.Object || Object), "_new", [])));
1450
+ var extraKeys=nil;
1451
+ (extraKeys=(function($rec){smalltalk.send($rec, "_basicAt_put_", [unescape("Ctrl-D"), (function(){return smalltalk.send(self, "_evalPrintIt", []);})]);smalltalk.send($rec, "_basicAt_put_", [unescape("Ctrl-P"), (function(){return smalltalk.send(self, "_evalPrintIt", []);})]);smalltalk.send($rec, "_basicAt_put_", [unescape("Ctrl-S"), (function(){return smalltalk.send(self, "_evalPrintIt", []);})]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send((smalltalk.Object || Object), "_new", [])));
1452
+ (params=(function($rec){smalltalk.send($rec, "_basicAt_put_", ["mode", unescape("text/x-ruby")]);smalltalk.send($rec, "_basicAt_put_", ["styleActiveLine", true]);smalltalk.send($rec, "_basicAt_put_", ["lineNumbers", true]);smalltalk.send($rec, "_basicAt_put_", ["matchBrackets", true]);smalltalk.send($rec, "_basicAt_put_", ["extraKeys", extraKeys]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send((smalltalk.Object || Object), "_new", [])));
1429
1453
  (self['@editor']=smalltalk.send((smalltalk.CodeMirror || CodeMirror), "_value_value_", [smalltalk.send(smalltalk.send(self['@editorElement'], "_asJQuery", []), "_at_", [(0)]), params]));
1430
1454
  smalltalk.send(self['@editor'], "_setValue_", [""]);
1431
1455
  return self;}
@@ -1503,9 +1527,7 @@ smalltalk.method({
1503
1527
  selector: unescape('renderButtonsOn%3A'),
1504
1528
  fn: function (html){
1505
1529
  var self=this;
1506
- (function($rec){smalltalk.send($rec, "_class_", [unescape("btn%20btn-primary")]);smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_with_", ["Do it"]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_evalDoIt", []);})]);})(smalltalk.send(html, "_button", []));
1507
- (function($rec){smalltalk.send($rec, "_class_", [unescape("btn%20btn-primary")]);smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_with_", ["Print it"]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_evalPrintIt", []);})]);})(smalltalk.send(html, "_button", []));
1508
- (function($rec){smalltalk.send($rec, "_class_", [unescape("btn%20btn-primary")]);smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_with_", ["Inspect it"]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_evalInspectIt", []);})]);})(smalltalk.send(html, "_button", []));
1530
+ (function($rec){smalltalk.send($rec, "_class_", [unescape("btn%20btn-primary")]);smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_style_", [unescape("margin-right%3A%2010px%3B")]);smalltalk.send($rec, "_with_", ["Print it"]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_evalPrintIt", []);})]);})(smalltalk.send(html, "_button", []));
1509
1531
  (function($rec){smalltalk.send($rec, "_class_", [unescape("btn-group")]);smalltalk.send($rec, "_style_", [unescape("float%3A%20right%3B")]);smalltalk.send($rec, "_data_with_", ["toggle", unescape("buttons-radio")]);return smalltalk.send($rec, "_with_", [(function(){(self['@rubyButton']=(function($rec){smalltalk.send($rec, "_class_", ["btn active"]);smalltalk.send($rec, "_data_with_", ["toggle", unescape("buttons-checkbox")]);smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_languageChanged", []);})]);smalltalk.send($rec, "_type_", ["button"]);return smalltalk.send($rec, "_with_", ["Ruby"]);})(smalltalk.send(html, "_button", [])));return (self['@smalltalkButton']=(function($rec){smalltalk.send($rec, "_class_", ["btn"]);smalltalk.send($rec, "_data_with_", ["toggle", unescape("buttons-checkbox")]);smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_languageChanged", []);})]);smalltalk.send($rec, "_type_", ["button"]);return smalltalk.send($rec, "_with_", ["Smalltalk"]);})(smalltalk.send(html, "_button", [])));})]);})(smalltalk.send(html, "_div", []));
1510
1532
  return self;}
1511
1533
  }),
@@ -3639,7 +3661,10 @@ smalltalk.method({
3639
3661
  selector: unescape('renderMethodObject%3A'),
3640
3662
  fn: function (obj){
3641
3663
  var self=this;
3642
- smalltalk.send(self['@methodContainer'], "_with_", [smalltalk.send((smalltalk.MaglevGsNMethodEditor || MaglevGsNMethodEditor), "_for_", [obj])]);
3664
+ var methodEditor=nil;
3665
+ (methodEditor=smalltalk.send((smalltalk.MaglevGsNMethodEditor || MaglevGsNMethodEditor), "_for_", [obj]));
3666
+ smalltalk.send(methodEditor, "_classObject_", [self['@object']]);
3667
+ smalltalk.send(self['@methodContainer'], "_with_", [methodEditor]);
3643
3668
  smalltalk.send(self['@waitingScreen'], "_hide", []);
3644
3669
  return self;}
3645
3670
  }),
@@ -3812,7 +3837,7 @@ smalltalk.MaglevClassWindow);
3812
3837
 
3813
3838
 
3814
3839
 
3815
- smalltalk.addClass('MaglevSystemClassWindow', smalltalk.MaglevClassWindow, ['transactionResultBox'], 'Maglev-Database-Explorer');
3840
+ smalltalk.addClass('MaglevSystemClassWindow', smalltalk.MaglevClassWindow, ['transactionResultBox', 'persistenceModeButton'], 'Maglev-Database-Explorer');
3816
3841
  smalltalk.addMethod(
3817
3842
  unescape('_abortTransaction'),
3818
3843
  smalltalk.method({
@@ -3882,7 +3907,8 @@ smalltalk.method({
3882
3907
  selector: unescape('renderControlPanelOn%3A'),
3883
3908
  fn: function (html){
3884
3909
  var self=this;
3885
- smalltalk.send(html, "_with_", [(function(){return (function($rec){smalltalk.send($rec, "_class_", ["well"]);return smalltalk.send($rec, "_with_", [(function(){(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Abort Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2032%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_abortTransaction", []);})]);})(smalltalk.send(html, "_input", []));(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Commit Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2032%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_commitTransaction", []);})]);})(smalltalk.send(html, "_input", []));(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Continue Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2033%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_continueTransaction", []);})]);})(smalltalk.send(html, "_input", []));return (self['@transactionResultBox']=(function($rec){smalltalk.send($rec, "_style_", [unescape("margin-top%3A%2010px%3B%20margin-bottom%3A%200px%3B")]);smalltalk.send($rec, "_class_", ["alert"]);return smalltalk.send($rec, "_hide", []);})(smalltalk.send(html, "_div", [])));})]);})(smalltalk.send(html, "_div", []));})]);
3910
+ smalltalk.send(html, "_with_", [(function(){return (function($rec){smalltalk.send($rec, "_class_", ["well"]);return smalltalk.send($rec, "_with_", [(function(){(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Abort Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2025%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_abortTransaction", []);})]);})(smalltalk.send(html, "_input", []));(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Commit Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2025%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_commitTransaction", []);})]);})(smalltalk.send(html, "_input", []));(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Continue Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2025%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_continueTransaction", []);})]);})(smalltalk.send(html, "_input", []));(self['@persistenceModeButton']=(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", ["btn"]);smalltalk.send($rec, "_value_", ["Persistent Mode"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2022%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_togglePersistentMode", []);})]);})(smalltalk.send(html, "_input", [])));return (self['@transactionResultBox']=(function($rec){smalltalk.send($rec, "_style_", [unescape("margin-top%3A%2010px%3B%20margin-bottom%3A%200px%3B")]);smalltalk.send($rec, "_class_", ["alert"]);return smalltalk.send($rec, "_hide", []);})(smalltalk.send(html, "_div", [])));})]);})(smalltalk.send(html, "_div", []));})]);
3911
+ smalltalk.send(self, "_updatePersistentMode", []);
3886
3912
  return self;}
3887
3913
  }),
3888
3914
  smalltalk.MaglevSystemClassWindow);
@@ -3922,6 +3948,30 @@ return self;}
3922
3948
  }),
3923
3949
  smalltalk.MaglevSystemClassWindow);
3924
3950
 
3951
+ smalltalk.addMethod(
3952
+ unescape('_togglePersistentMode'),
3953
+ smalltalk.method({
3954
+ selector: unescape('togglePersistentMode'),
3955
+ fn: function (){
3956
+ var self=this;
3957
+ smalltalk.send(self, "_showTransactionWaitingBox", []);
3958
+ smalltalk.send(self['@object'], "_evaluate_language_withCallback_", ["self.__DBETogglePersistenceMode", "ruby", (function(success, resultObj){smalltalk.send(smalltalk.send(self['@transactionResultBox'], "_asJQuery", []), "_empty", []);smalltalk.send(self['@transactionResultBox'], "_removeClass_", [unescape("alert-info")]);((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-success")]);((($receiver = smalltalk.send(smalltalk.send(resultObj, "_value", []), "__eq", [true])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);})() : (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);}), (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})]));return smalltalk.send(self['@transactionResultBox'], "_hide", []);})() : (function(){return smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-error")]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-success")]);((($receiver = smalltalk.send(smalltalk.send(resultObj, "_value", []), "__eq", [true])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);})() : (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);}), (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})]));return smalltalk.send(self['@transactionResultBox'], "_hide", []);}), (function(){return smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-error")]);})]));return smalltalk.send(self['@transactionResultBox'], "_with_", [smalltalk.send(resultObj, "_inlineViewComponent", [])]);})]);
3959
+ return self;}
3960
+ }),
3961
+ smalltalk.MaglevSystemClassWindow);
3962
+
3963
+ smalltalk.addMethod(
3964
+ unescape('_updatePersistentMode'),
3965
+ smalltalk.method({
3966
+ selector: unescape('updatePersistentMode'),
3967
+ fn: function (){
3968
+ var self=this;
3969
+ smalltalk.send(self, "_showTransactionWaitingBox", []);
3970
+ smalltalk.send(self['@object'], "_evaluate_language_withCallback_", ["self.__DBEPersistenceMode", "ruby", (function(success, resultObj){smalltalk.send(smalltalk.send(self['@transactionResultBox'], "_asJQuery", []), "_empty", []);smalltalk.send(self['@transactionResultBox'], "_removeClass_", [unescape("alert-info")]);((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-success")]);((($receiver = smalltalk.send(smalltalk.send(resultObj, "_value", []), "__eq", [true])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);})() : (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);}), (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})]));return smalltalk.send(self['@transactionResultBox'], "_hide", []);})() : (function(){return smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-error")]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-success")]);((($receiver = smalltalk.send(smalltalk.send(resultObj, "_value", []), "__eq", [true])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);})() : (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);}), (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})]));return smalltalk.send(self['@transactionResultBox'], "_hide", []);}), (function(){return smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-error")]);})]));return smalltalk.send(self['@transactionResultBox'], "_with_", [smalltalk.send(resultObj, "_inlineViewComponent", [])]);})]);
3971
+ return self;}
3972
+ }),
3973
+ smalltalk.MaglevSystemClassWindow);
3974
+
3925
3975
 
3926
3976
 
3927
3977
  smalltalk.addClass('MaglevNilClassWindow', smalltalk.MaglevObjectWindow, [], 'Maglev-Database-Explorer');
@@ -4158,7 +4208,7 @@ selector: unescape('selectStackFrame%3A'),
4158
4208
  fn: function (anInteger){
4159
4209
  var self=this;
4160
4210
  self['@methodSelect']._asJQuery()[0].selectedIndex = anInteger - 1; ;
4161
- smalltalk.send(self, "_renderFrame", []);
4211
+ smalltalk.send(self, "_renderFrame_", [anInteger]);
4162
4212
  return self;}
4163
4213
  }),
4164
4214
  smalltalk.MaglevThreadWindow);
@@ -66,7 +66,39 @@ referencedClasses: []
66
66
  smalltalk.MaglevDraggableObject.klass);
67
67
 
68
68
 
69
- smalltalk.addClass('MaglevGsNMethodEditor', smalltalk.Widget, ['object', 'editorContainer', 'errorBox', 'rubyIcon', 'stIcon', 'envIdContainer', 'sourceLocationContainer', 'editor', 'editorHeight', 'editorWidth'], 'Maglev-Database-Explorer');
69
+ smalltalk.addClass('MaglevGsNMethodEditor', smalltalk.Widget, ['object', 'editorContainer', 'errorBox', 'rubyIcon', 'stIcon', 'envIdContainer', 'sourceLocationContainer', 'editor', 'editorHeight', 'editorWidth', 'classObject'], 'Maglev-Database-Explorer');
70
+ smalltalk.addMethod(
71
+ unescape('_classObject'),
72
+ smalltalk.method({
73
+ selector: unescape('classObject'),
74
+ category: 'accessing',
75
+ fn: function (){
76
+ var self=this;
77
+ return smalltalk.send((smalltalk.MaglevObject || MaglevObject), "_newObjectWithoutUpdate_", [smalltalk.send(smalltalk.send(self, "_methodObject", []), "_at_", [(5)])]);
78
+ return self;},
79
+ args: [],
80
+ source: unescape('classObject%0A%09%5E%20MaglevObject%20newObjectWithoutUpdate%3A%20%28self%20methodObject%20at%3A%205%29'),
81
+ messageSends: ["newObjectWithoutUpdate:", "at:", "methodObject"],
82
+ referencedClasses: ["MaglevObject"]
83
+ }),
84
+ smalltalk.MaglevGsNMethodEditor);
85
+
86
+ smalltalk.addMethod(
87
+ unescape('_classObject_'),
88
+ smalltalk.method({
89
+ selector: unescape('classObject%3A'),
90
+ category: 'accessing',
91
+ fn: function (anObject){
92
+ var self=this;
93
+ (self['@classObject']=anObject);
94
+ return self;},
95
+ args: ["anObject"],
96
+ source: unescape('classObject%3A%20anObject%0A%09classObject%20%3A%3D%20anObject.'),
97
+ messageSends: [],
98
+ referencedClasses: []
99
+ }),
100
+ smalltalk.MaglevGsNMethodEditor);
101
+
70
102
  smalltalk.addMethod(
71
103
  unescape('_commandSave'),
72
104
  smalltalk.method({
@@ -77,11 +109,11 @@ var self=this;
77
109
  var selectedCategory=nil;
78
110
  smalltalk.send(self['@errorBox'], "_hide", []);
79
111
  smalltalk.send(smalltalk.send(self['@errorBox'], "_asJQuery", []), "_empty", []);
80
- ((($receiver = smalltalk.send(smalltalk.send(self['@object'], "_environmentId", []), "__eq", [(1)])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self['@object'], "_compileRubySourceCode_withCallback_", [smalltalk.send(self['@editor'], "_getValue", []), (function(success, obj){return ((($receiver = smalltalk.send(obj, "_isException", [])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})() : (function(){return smalltalk.send(self, "_signalSuccess", []);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalFailure_", [obj]);}), (function(){return smalltalk.send(self, "_signalSuccess", []);})]));})]);})() : (function(){return smalltalk.send(self['@object'], "_compileSmalltalkSourceCode_withCallback_", [smalltalk.send(self['@editor'], "_getValue", []), (function(success, obj){return ((($receiver = smalltalk.send(obj, "_isException", [])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})() : (function(){return smalltalk.send(self, "_signalSuccess", []);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalFailure_", [obj]);}), (function(){return smalltalk.send(self, "_signalSuccess", []);})]));})]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self['@object'], "_compileRubySourceCode_withCallback_", [smalltalk.send(self['@editor'], "_getValue", []), (function(success, obj){return ((($receiver = smalltalk.send(obj, "_isException", [])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})() : (function(){return smalltalk.send(self, "_signalSuccess", []);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalFailure_", [obj]);}), (function(){return smalltalk.send(self, "_signalSuccess", []);})]));})]);}), (function(){return smalltalk.send(self['@object'], "_compileSmalltalkSourceCode_withCallback_", [smalltalk.send(self['@editor'], "_getValue", []), (function(success, obj){return ((($receiver = smalltalk.send(obj, "_isException", [])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})() : (function(){return smalltalk.send(self, "_signalSuccess", []);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalFailure_", [obj]);}), (function(){return smalltalk.send(self, "_signalSuccess", []);})]));})]);})]));
112
+ ((($receiver = smalltalk.send(smalltalk.send(self, "_envId", []), "__eq", [(1)])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self, "_classObject", []), "_compileRubySourceCode_withCallback_", [smalltalk.send(smalltalk.send(self['@editor'], "_getValue", []), "_replace_with_", [unescape("%u26A1"), ""]), (function(success, obj){return ((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalSuccess", []);})() : (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalSuccess", []);}), (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})]));})]);})() : (function(){return smalltalk.send(smalltalk.send(self, "_classObject", []), "_compileSmalltalkSourceCode_withCallback_", [smalltalk.send(smalltalk.send(self['@editor'], "_getValue", []), "_replace_with_", [unescape("%u26A1"), ""]), (function(success, obj){return ((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalSuccess", []);})() : (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalSuccess", []);}), (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})]));})]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self, "_classObject", []), "_compileRubySourceCode_withCallback_", [smalltalk.send(smalltalk.send(self['@editor'], "_getValue", []), "_replace_with_", [unescape("%u26A1"), ""]), (function(success, obj){return ((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalSuccess", []);})() : (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalSuccess", []);}), (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})]));})]);}), (function(){return smalltalk.send(smalltalk.send(self, "_classObject", []), "_compileSmalltalkSourceCode_withCallback_", [smalltalk.send(smalltalk.send(self['@editor'], "_getValue", []), "_replace_with_", [unescape("%u26A1"), ""]), (function(success, obj){return ((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(self, "_signalSuccess", []);})() : (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(self, "_signalSuccess", []);}), (function(){return smalltalk.send(self, "_signalFailure_", [obj]);})]));})]);})]));
81
113
  return self;},
82
114
  args: [],
83
- source: unescape('commandSave%0A%09%7CselectedCategory%7C%0A%09errorBox%20hide.%0A%09errorBox%20asJQuery%20empty.%0A%09object%20environmentId%20%3D%201%0A%09%09ifTrue%3A%20%5Bobject%0A%09%09%09compileRubySourceCode%3A%20editor%20getValue%20%0A%09%09%09withCallback%3A%20%5B%3Asuccess%20%3Aobj%20%7C%0A%09%09%09%09obj%20isException%0A%09%09%09%09%09ifTrue%3A%20%5Bself%20signalFailure%3A%20obj%5D%0A%09%09%09%09%09ifFalse%3A%20%5Bself%20signalSuccess%5D%5D%5D%0A%09%09ifFalse%3A%20%5Bobject%20%0A%09%09%09compileSmalltalkSourceCode%3A%20editor%20getValue%20%0A%09%09%09withCallback%3A%20%5B%3Asuccess%20%3Aobj%20%7C%0A%09%09%09%09obj%20isException%0A%09%09%09%09%09ifTrue%3A%20%5Bself%20signalFailure%3A%20obj%5D%0A%09%09%09%09%09ifFalse%3A%20%5Bself%20signalSuccess%5D%5D%5D.'),
84
- messageSends: ["hide", "empty", "asJQuery", "ifTrue:ifFalse:", unescape("%3D"), "environmentId", "compileRubySourceCode:withCallback:", "getValue", "isException", "signalFailure:", "signalSuccess", "compileSmalltalkSourceCode:withCallback:"],
115
+ source: unescape('commandSave%0A%09%7CselectedCategory%7C%0A%09errorBox%20hide.%0A%09errorBox%20asJQuery%20empty.%0A%09self%20envId%20%3D%201%0A%09%09ifTrue%3A%20%5Bself%20classObject%0A%09%09%09compileRubySourceCode%3A%20%28editor%20getValue%20replace%3A%20%27%u26A1%27%20with%3A%20%27%27%29%0A%09%09%09withCallback%3A%20%5B%3Asuccess%20%3Aobj%20%7C%0A%09%09%09%09success%0A%09%09%09%09%09ifTrue%3A%20%5Bself%20signalSuccess%5D%0A%09%09%09%09%09ifFalse%3A%20%5Bself%20signalFailure%3A%20obj%5D%5D%5D%0A%09%09ifFalse%3A%20%5Bself%20classObject%20%0A%09%09%09compileSmalltalkSourceCode%3A%20%28editor%20getValue%20replace%3A%20%27%u26A1%27%20with%3A%20%27%27%29%0A%09%09%09withCallback%3A%20%5B%3Asuccess%20%3Aobj%20%7C%0A%09%09%09%09success%0A%09%09%09%09%09ifTrue%3A%20%5Bself%20signalSuccess%5D%0A%09%09%09%09%09ifFalse%3A%20%5Bself%20signalFailure%3A%20obj%5D%5D%5D.'),
116
+ messageSends: ["hide", "empty", "asJQuery", "ifTrue:ifFalse:", unescape("%3D"), "envId", "compileRubySourceCode:withCallback:", "classObject", "replace:with:", "getValue", "signalSuccess", "signalFailure:", "compileSmalltalkSourceCode:withCallback:"],
85
117
  referencedClasses: []
86
118
  }),
87
119
  smalltalk.MaglevGsNMethodEditor);
@@ -2012,13 +2044,15 @@ category: 'initializing',
2012
2044
  fn: function (){
2013
2045
  var self=this;
2014
2046
  var params=nil;
2015
- (params=(function($rec){smalltalk.send($rec, "_basicAt_put_", ["mode", unescape("text/x-ruby")]);smalltalk.send($rec, "_basicAt_put_", ["styleActiveLine", true]);smalltalk.send($rec, "_basicAt_put_", ["lineNumbers", true]);smalltalk.send($rec, "_basicAt_put_", ["matchBrackets", true]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send((smalltalk.Object || Object), "_new", [])));
2047
+ var extraKeys=nil;
2048
+ (extraKeys=(function($rec){smalltalk.send($rec, "_basicAt_put_", [unescape("Ctrl-D"), (function(){return smalltalk.send(self, "_evalPrintIt", []);})]);smalltalk.send($rec, "_basicAt_put_", [unescape("Ctrl-P"), (function(){return smalltalk.send(self, "_evalPrintIt", []);})]);smalltalk.send($rec, "_basicAt_put_", [unescape("Ctrl-S"), (function(){return smalltalk.send(self, "_evalPrintIt", []);})]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send((smalltalk.Object || Object), "_new", [])));
2049
+ (params=(function($rec){smalltalk.send($rec, "_basicAt_put_", ["mode", unescape("text/x-ruby")]);smalltalk.send($rec, "_basicAt_put_", ["styleActiveLine", true]);smalltalk.send($rec, "_basicAt_put_", ["lineNumbers", true]);smalltalk.send($rec, "_basicAt_put_", ["matchBrackets", true]);smalltalk.send($rec, "_basicAt_put_", ["extraKeys", extraKeys]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send((smalltalk.Object || Object), "_new", [])));
2016
2050
  (self['@editor']=smalltalk.send((smalltalk.CodeMirror || CodeMirror), "_value_value_", [smalltalk.send(smalltalk.send(self['@editorElement'], "_asJQuery", []), "_at_", [(0)]), params]));
2017
2051
  smalltalk.send(self['@editor'], "_setValue_", [""]);
2018
2052
  return self;},
2019
2053
  args: [],
2020
- source: unescape('initializeEditor%0A%09%7Cparams%7C%0A%09params%20%3A%3D%20Object%20new%0A%09%09basicAt%3A%20%27mode%27%20put%3A%20%27text/x-ruby%27%3B%0A%09%09basicAt%3A%20%27styleActiveLine%27%20put%3A%20true%3B%0A%09%09basicAt%3A%20%27lineNumbers%27%20put%3A%20true%3B%0A%09%09basicAt%3A%20%27matchBrackets%27%20put%3A%20true%3B%0A%09%09yourself.%20%0A%09editor%20%3A%3D%20CodeMirror%20value%3A%20%28editorElement%20asJQuery%20at%3A%200%29%20value%3A%20params.%0A%09editor%20setValue%3A%20%27%27.'),
2021
- messageSends: ["basicAt:put:", "yourself", "new", "value:value:", "at:", "asJQuery", "setValue:"],
2054
+ source: unescape('initializeEditor%0A%09%7Cparams%20extraKeys%7C%0A%09extraKeys%20%3A%3D%20Object%20new%0A%09%09basicAt%3A%20%27Ctrl-D%27%20put%3A%20%5Bself%20evalPrintIt%5D%3B%0A%09%09basicAt%3A%20%27Ctrl-P%27%20put%3A%20%5Bself%20evalPrintIt%5D%3B%0A%09%09basicAt%3A%20%27Ctrl-S%27%20put%3A%20%5Bself%20evalPrintIt%5D%3B%0A%09%09yourself.%0A%09params%20%3A%3D%20Object%20new%0A%09%09basicAt%3A%20%27mode%27%20put%3A%20%27text/x-ruby%27%3B%0A%09%09basicAt%3A%20%27styleActiveLine%27%20put%3A%20true%3B%0A%09%09basicAt%3A%20%27lineNumbers%27%20put%3A%20true%3B%0A%09%09basicAt%3A%20%27matchBrackets%27%20put%3A%20true%3B%0A%09%09basicAt%3A%20%27extraKeys%27%20put%3A%20extraKeys%3B%0A%09%09yourself.%20%0A%09editor%20%3A%3D%20CodeMirror%20value%3A%20%28editorElement%20asJQuery%20at%3A%200%29%20value%3A%20params.%0A%09editor%20setValue%3A%20%27%27.'),
2055
+ messageSends: ["basicAt:put:", "evalPrintIt", "yourself", "new", "value:value:", "at:", "asJQuery", "setValue:"],
2022
2056
  referencedClasses: ["Object", "CodeMirror"]
2023
2057
  }),
2024
2058
  smalltalk.MaglevObjectDropdown);
@@ -2120,14 +2154,12 @@ selector: unescape('renderButtonsOn%3A'),
2120
2154
  category: 'rendering',
2121
2155
  fn: function (html){
2122
2156
  var self=this;
2123
- (function($rec){smalltalk.send($rec, "_class_", [unescape("btn%20btn-primary")]);smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_with_", ["Do it"]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_evalDoIt", []);})]);})(smalltalk.send(html, "_button", []));
2124
- (function($rec){smalltalk.send($rec, "_class_", [unescape("btn%20btn-primary")]);smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_with_", ["Print it"]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_evalPrintIt", []);})]);})(smalltalk.send(html, "_button", []));
2125
- (function($rec){smalltalk.send($rec, "_class_", [unescape("btn%20btn-primary")]);smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_with_", ["Inspect it"]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_evalInspectIt", []);})]);})(smalltalk.send(html, "_button", []));
2157
+ (function($rec){smalltalk.send($rec, "_class_", [unescape("btn%20btn-primary")]);smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_style_", [unescape("margin-right%3A%2010px%3B")]);smalltalk.send($rec, "_with_", ["Print it"]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_evalPrintIt", []);})]);})(smalltalk.send(html, "_button", []));
2126
2158
  (function($rec){smalltalk.send($rec, "_class_", [unescape("btn-group")]);smalltalk.send($rec, "_style_", [unescape("float%3A%20right%3B")]);smalltalk.send($rec, "_data_with_", ["toggle", unescape("buttons-radio")]);return smalltalk.send($rec, "_with_", [(function(){(self['@rubyButton']=(function($rec){smalltalk.send($rec, "_class_", ["btn active"]);smalltalk.send($rec, "_data_with_", ["toggle", unescape("buttons-checkbox")]);smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_languageChanged", []);})]);smalltalk.send($rec, "_type_", ["button"]);return smalltalk.send($rec, "_with_", ["Ruby"]);})(smalltalk.send(html, "_button", [])));return (self['@smalltalkButton']=(function($rec){smalltalk.send($rec, "_class_", ["btn"]);smalltalk.send($rec, "_data_with_", ["toggle", unescape("buttons-checkbox")]);smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_languageChanged", []);})]);smalltalk.send($rec, "_type_", ["button"]);return smalltalk.send($rec, "_with_", ["Smalltalk"]);})(smalltalk.send(html, "_button", [])));})]);})(smalltalk.send(html, "_div", []));
2127
2159
  return self;},
2128
2160
  args: ["html"],
2129
- source: unescape('renderButtonsOn%3A%20html%0A%09html%20button%0A%09%09class%3A%20%27btn%20btn-primary%27%3B%0A%09%09type%3A%20%27button%27%3B%0A%09%09with%3A%20%27Do%20it%27%3B%0A%09%09onClick%3A%20%5Bself%20evalDoIt%5D.%0A%09html%20button%0A%09%09class%3A%20%27btn%20btn-primary%27%3B%0A%09%09type%3A%20%27button%27%3B%0A%09%09with%3A%20%27Print%20it%27%3B%0A%09%09onClick%3A%20%5Bself%20evalPrintIt%5D.%0A%09html%20button%0A%09%09class%3A%20%27btn%20btn-primary%27%3B%0A%09%09type%3A%20%27button%27%3B%0A%09%09with%3A%20%27Inspect%20it%27%3B%0A%09%09onClick%3A%20%5Bself%20evalInspectIt%5D.%0A%09html%20div%0A%09%09class%3A%20%27btn-group%27%3B%0A%09%09style%3A%20%27float%3A%20right%3B%27%3B%0A%09%09data%3A%20%27toggle%27%20with%3A%20%27buttons-radio%27%3B%0A%09%09with%3A%20%5B%0A%09%09%09rubyButton%20%3A%3D%20html%20button%0A%09%09%09%09class%3A%20%27btn%20active%27%3B%0A%09%09%09%09data%3A%20%27toggle%27%20with%3A%20%27buttons-checkbox%27%3B%0A%09%09%09%09onClick%3A%20%5Bself%20languageChanged%5D%3B%0A%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09with%3A%20%27Ruby%27.%0A%09%09%09smalltalkButton%20%3A%3D%20html%20button%0A%09%09%09%09class%3A%20%27btn%27%3B%0A%09%09%09%09data%3A%20%27toggle%27%20with%3A%20%27buttons-checkbox%27%3B%0A%09%09%09%09onClick%3A%20%5Bself%20languageChanged%5D%3B%0A%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09with%3A%20%27Smalltalk%27%5D.'),
2130
- messageSends: ["class:", "type:", "with:", "onClick:", "evalDoIt", "button", "evalPrintIt", "evalInspectIt", "style:", "data:with:", "languageChanged", "div"],
2161
+ source: unescape('renderButtonsOn%3A%20html%0A%09%22html%20button%0A%09%09class%3A%20%27btn%20btn-primary%27%3B%0A%09%09type%3A%20%27button%27%3B%0A%09%09with%3A%20%27Do%20it%27%3B%0A%09%09onClick%3A%20%5Bself%20evalDoIt%5D.%22%0A%09html%20button%0A%09%09class%3A%20%27btn%20btn-primary%27%3B%0A%09%09type%3A%20%27button%27%3B%0A%09%09style%3A%20%27margin-right%3A%2010px%3B%27%3B%0A%09%09with%3A%20%27Print%20it%27%3B%0A%09%09onClick%3A%20%5Bself%20evalPrintIt%5D.%0A%09%22html%20button%0A%09%09class%3A%20%27btn%20btn-primary%27%3B%0A%09%09type%3A%20%27button%27%3B%0A%09%09with%3A%20%27Inspect%20it%27%3B%0A%09%09onClick%3A%20%5Bself%20evalInspectIt%5D.%22%0A%09html%20div%0A%09%09class%3A%20%27btn-group%27%3B%0A%09%09style%3A%20%27float%3A%20right%3B%27%3B%0A%09%09data%3A%20%27toggle%27%20with%3A%20%27buttons-radio%27%3B%0A%09%09with%3A%20%5B%0A%09%09%09rubyButton%20%3A%3D%20html%20button%0A%09%09%09%09class%3A%20%27btn%20active%27%3B%0A%09%09%09%09data%3A%20%27toggle%27%20with%3A%20%27buttons-checkbox%27%3B%0A%09%09%09%09onClick%3A%20%5Bself%20languageChanged%5D%3B%0A%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09with%3A%20%27Ruby%27.%0A%09%09%09smalltalkButton%20%3A%3D%20html%20button%0A%09%09%09%09class%3A%20%27btn%27%3B%0A%09%09%09%09data%3A%20%27toggle%27%20with%3A%20%27buttons-checkbox%27%3B%0A%09%09%09%09onClick%3A%20%5Bself%20languageChanged%5D%3B%0A%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09with%3A%20%27Smalltalk%27%5D.'),
2162
+ messageSends: ["class:", "type:", "style:", "with:", "onClick:", "evalPrintIt", "button", "data:with:", "languageChanged", "div"],
2131
2163
  referencedClasses: []
2132
2164
  }),
2133
2165
  smalltalk.MaglevObjectDropdown);
@@ -5086,12 +5118,15 @@ selector: unescape('renderMethodObject%3A'),
5086
5118
  category: 'rendering',
5087
5119
  fn: function (obj){
5088
5120
  var self=this;
5089
- smalltalk.send(self['@methodContainer'], "_with_", [smalltalk.send((smalltalk.MaglevGsNMethodEditor || MaglevGsNMethodEditor), "_for_", [obj])]);
5121
+ var methodEditor=nil;
5122
+ (methodEditor=smalltalk.send((smalltalk.MaglevGsNMethodEditor || MaglevGsNMethodEditor), "_for_", [obj]));
5123
+ smalltalk.send(methodEditor, "_classObject_", [self['@object']]);
5124
+ smalltalk.send(self['@methodContainer'], "_with_", [methodEditor]);
5090
5125
  smalltalk.send(self['@waitingScreen'], "_hide", []);
5091
5126
  return self;},
5092
5127
  args: ["obj"],
5093
- source: unescape('renderMethodObject%3A%20obj%0A%09methodContainer%20with%3A%20%28MaglevGsNMethodEditor%20for%3A%20obj%29.%0A%09waitingScreen%20hide.'),
5094
- messageSends: ["with:", "for:", "hide"],
5128
+ source: unescape('renderMethodObject%3A%20obj%0A%09%7CmethodEditor%7C%0A%09methodEditor%20%3A%3D%20MaglevGsNMethodEditor%20for%3A%20obj.%0A%09methodEditor%20classObject%3A%20object.%0A%09methodContainer%20with%3A%20methodEditor.%0A%09waitingScreen%20hide.'),
5129
+ messageSends: ["for:", "classObject:", "with:", "hide"],
5095
5130
  referencedClasses: ["MaglevGsNMethodEditor"]
5096
5131
  }),
5097
5132
  smalltalk.MaglevModuleWindow);
@@ -5323,7 +5358,7 @@ smalltalk.MaglevClassWindow);
5323
5358
 
5324
5359
 
5325
5360
 
5326
- smalltalk.addClass('MaglevSystemClassWindow', smalltalk.MaglevClassWindow, ['transactionResultBox'], 'Maglev-Database-Explorer');
5361
+ smalltalk.addClass('MaglevSystemClassWindow', smalltalk.MaglevClassWindow, ['transactionResultBox', 'persistenceModeButton'], 'Maglev-Database-Explorer');
5327
5362
  smalltalk.addMethod(
5328
5363
  unescape('_abortTransaction'),
5329
5364
  smalltalk.method({
@@ -5419,11 +5454,12 @@ selector: unescape('renderControlPanelOn%3A'),
5419
5454
  category: 'rendering',
5420
5455
  fn: function (html){
5421
5456
  var self=this;
5422
- smalltalk.send(html, "_with_", [(function(){return (function($rec){smalltalk.send($rec, "_class_", ["well"]);return smalltalk.send($rec, "_with_", [(function(){(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Abort Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2032%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_abortTransaction", []);})]);})(smalltalk.send(html, "_input", []));(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Commit Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2032%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_commitTransaction", []);})]);})(smalltalk.send(html, "_input", []));(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Continue Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2033%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_continueTransaction", []);})]);})(smalltalk.send(html, "_input", []));return (self['@transactionResultBox']=(function($rec){smalltalk.send($rec, "_style_", [unescape("margin-top%3A%2010px%3B%20margin-bottom%3A%200px%3B")]);smalltalk.send($rec, "_class_", ["alert"]);return smalltalk.send($rec, "_hide", []);})(smalltalk.send(html, "_div", [])));})]);})(smalltalk.send(html, "_div", []));})]);
5457
+ smalltalk.send(html, "_with_", [(function(){return (function($rec){smalltalk.send($rec, "_class_", ["well"]);return smalltalk.send($rec, "_with_", [(function(){(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Abort Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2025%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_abortTransaction", []);})]);})(smalltalk.send(html, "_input", []));(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Commit Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2025%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_commitTransaction", []);})]);})(smalltalk.send(html, "_input", []));(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", [unescape("btn%20btn-warning")]);smalltalk.send($rec, "_value_", ["Continue Transaction"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2025%25%3B%20margin-right%3A%201%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_continueTransaction", []);})]);})(smalltalk.send(html, "_input", []));(self['@persistenceModeButton']=(function($rec){smalltalk.send($rec, "_type_", ["button"]);smalltalk.send($rec, "_class_", ["btn"]);smalltalk.send($rec, "_value_", ["Persistent Mode"]);smalltalk.send($rec, "_style_", [unescape("width%3A%2022%25%3B")]);return smalltalk.send($rec, "_onClick_", [(function(){return smalltalk.send(self, "_togglePersistentMode", []);})]);})(smalltalk.send(html, "_input", [])));return (self['@transactionResultBox']=(function($rec){smalltalk.send($rec, "_style_", [unescape("margin-top%3A%2010px%3B%20margin-bottom%3A%200px%3B")]);smalltalk.send($rec, "_class_", ["alert"]);return smalltalk.send($rec, "_hide", []);})(smalltalk.send(html, "_div", [])));})]);})(smalltalk.send(html, "_div", []));})]);
5458
+ smalltalk.send(self, "_updatePersistentMode", []);
5423
5459
  return self;},
5424
5460
  args: ["html"],
5425
- source: unescape('renderControlPanelOn%3A%20html%0A%09html%20with%3A%09%5B%0A%09%09html%20div%0A%09%09%09class%3A%20%27well%27%3B%0A%09%09%09with%3A%20%5B%0A%09%09%09%09html%20input%0A%09%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09%09class%3A%20%27btn%20btn-warning%27%3B%0A%09%09%09%09%09value%3A%20%27Abort%20Transaction%27%3B%0A%09%09%09%09%09style%3A%20%27width%3A%2032%25%3B%20margin-right%3A%201%25%3B%27%3B%0A%09%09%09%09%09onClick%3A%20%5Bself%20abortTransaction%5D.%0A%09%09%09%09html%20input%0A%09%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09%09class%3A%20%27btn%20btn-warning%27%3B%0A%09%09%09%09%09value%3A%20%27Commit%20Transaction%27%3B%0A%09%09%09%09%09style%3A%20%27width%3A%2032%25%3B%20margin-right%3A%201%25%3B%27%3B%0A%09%09%09%09%09onClick%3A%20%5Bself%20commitTransaction%5D.%0A%09%09%09%09html%20input%0A%09%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09%09class%3A%20%27btn%20btn-warning%27%3B%0A%09%09%09%09%09value%3A%20%27Continue%20Transaction%27%3B%0A%09%09%09%09%09style%3A%20%27width%3A%2033%25%3B%27%3B%0A%09%09%09%09%09onClick%3A%20%5Bself%20continueTransaction%5D.%0A%09%09%09%09transactionResultBox%20%3A%3D%20html%20div%0A%09%09%09%09%09style%3A%20%27margin-top%3A%2010px%3B%20margin-bottom%3A%200px%3B%27%3B%0A%09%09%09%09%09class%3A%20%27alert%27%3B%0A%09%09%09%09%09hide%5D%5D.'),
5426
- messageSends: ["with:", "class:", "type:", "value:", "style:", "onClick:", "abortTransaction", "input", "commitTransaction", "continueTransaction", "hide", "div"],
5461
+ source: unescape('renderControlPanelOn%3A%20html%0A%09html%20with%3A%09%5B%0A%09%09html%20div%0A%09%09%09class%3A%20%27well%27%3B%0A%09%09%09with%3A%20%5B%0A%09%09%09%09html%20input%0A%09%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09%09class%3A%20%27btn%20btn-warning%27%3B%0A%09%09%09%09%09value%3A%20%27Abort%20Transaction%27%3B%0A%09%09%09%09%09style%3A%20%27width%3A%2025%25%3B%20margin-right%3A%201%25%3B%27%3B%0A%09%09%09%09%09onClick%3A%20%5Bself%20abortTransaction%5D.%0A%09%09%09%09html%20input%0A%09%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09%09class%3A%20%27btn%20btn-warning%27%3B%0A%09%09%09%09%09value%3A%20%27Commit%20Transaction%27%3B%0A%09%09%09%09%09style%3A%20%27width%3A%2025%25%3B%20margin-right%3A%201%25%3B%27%3B%0A%09%09%09%09%09onClick%3A%20%5Bself%20commitTransaction%5D.%0A%09%09%09%09html%20input%0A%09%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09%09class%3A%20%27btn%20btn-warning%27%3B%0A%09%09%09%09%09value%3A%20%27Continue%20Transaction%27%3B%0A%09%09%09%09%09style%3A%20%27width%3A%2025%25%3B%20margin-right%3A%201%25%3B%27%3B%0A%09%09%09%09%09onClick%3A%20%5Bself%20continueTransaction%5D.%0A%09%09%09%09persistenceModeButton%20%3A%3D%20html%20input%0A%09%09%09%09%09type%3A%20%27button%27%3B%0A%09%09%09%09%09class%3A%20%27btn%27%3B%0A%09%09%09%09%09value%3A%20%27Persistent%20Mode%27%3B%0A%09%09%09%09%09style%3A%20%27width%3A%2022%25%3B%27%3B%0A%09%09%09%09%09onClick%3A%20%5Bself%20togglePersistentMode%5D.%0A%09%09%09%09transactionResultBox%20%3A%3D%20html%20div%0A%09%09%09%09%09style%3A%20%27margin-top%3A%2010px%3B%20margin-bottom%3A%200px%3B%27%3B%0A%09%09%09%09%09class%3A%20%27alert%27%3B%0A%09%09%09%09%09hide%5D%5D.%0A%09self%20updatePersistentMode.'),
5462
+ messageSends: ["with:", "class:", "type:", "value:", "style:", "onClick:", "abortTransaction", "input", "commitTransaction", "continueTransaction", "togglePersistentMode", "hide", "div", "updatePersistentMode"],
5427
5463
  referencedClasses: []
5428
5464
  }),
5429
5465
  smalltalk.MaglevSystemClassWindow);
@@ -5478,6 +5514,40 @@ referencedClasses: ["MaglevIcon"]
5478
5514
  }),
5479
5515
  smalltalk.MaglevSystemClassWindow);
5480
5516
 
5517
+ smalltalk.addMethod(
5518
+ unescape('_togglePersistentMode'),
5519
+ smalltalk.method({
5520
+ selector: unescape('togglePersistentMode'),
5521
+ category: 'interactions',
5522
+ fn: function (){
5523
+ var self=this;
5524
+ smalltalk.send(self, "_showTransactionWaitingBox", []);
5525
+ smalltalk.send(self['@object'], "_evaluate_language_withCallback_", ["self.__DBETogglePersistenceMode", "ruby", (function(success, resultObj){smalltalk.send(smalltalk.send(self['@transactionResultBox'], "_asJQuery", []), "_empty", []);smalltalk.send(self['@transactionResultBox'], "_removeClass_", [unescape("alert-info")]);((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-success")]);((($receiver = smalltalk.send(smalltalk.send(resultObj, "_value", []), "__eq", [true])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);})() : (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);}), (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})]));return smalltalk.send(self['@transactionResultBox'], "_hide", []);})() : (function(){return smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-error")]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-success")]);((($receiver = smalltalk.send(smalltalk.send(resultObj, "_value", []), "__eq", [true])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);})() : (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);}), (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})]));return smalltalk.send(self['@transactionResultBox'], "_hide", []);}), (function(){return smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-error")]);})]));return smalltalk.send(self['@transactionResultBox'], "_with_", [smalltalk.send(resultObj, "_inlineViewComponent", [])]);})]);
5526
+ return self;},
5527
+ args: [],
5528
+ source: unescape('togglePersistentMode%0A%09self%20showTransactionWaitingBox.%0A%09object%20%0A%09%09evaluate%3A%20%27self.__DBETogglePersistenceMode%27%0A%09%09language%3A%20%27ruby%27%0A%09%09withCallback%3A%20%5B%3Asuccess%20%3AresultObj%20%7C%0A%09%09%09transactionResultBox%20asJQuery%20empty.%0A%09%09%09transactionResultBox%20removeClass%3A%20%27alert-info%27.%0A%09%09%09success%0A%09%09%09%09ifTrue%3A%20%5B%0A%09%09%09%09%09transactionResultBox%20addClass%3A%20%27alert-success%27.%0A%09%09%09%09%09resultObj%20value%20%3D%20true%0A%09%09%09%09%09%09ifTrue%3A%20%5BpersistenceModeButton%20asJQuery%20addClass%3A%20%27active%27%5D%0A%09%09%09%09%09%09ifFalse%3A%20%5BpersistenceModeButton%20asJQuery%20removeClass%3A%20%27active%27%5D.%0A%09%09%09%09%09transactionResultBox%20hide%5D%0A%09%09%09%09ifFalse%3A%20%5BtransactionResultBox%20addClass%3A%20%27alert-error%27%5D.%0A%09%09%09transactionResultBox%20with%3A%20resultObj%20inlineViewComponent%5D.'),
5529
+ messageSends: ["showTransactionWaitingBox", "evaluate:language:withCallback:", "empty", "asJQuery", "removeClass:", "ifTrue:ifFalse:", "addClass:", unescape("%3D"), "value", "hide", "with:", "inlineViewComponent"],
5530
+ referencedClasses: []
5531
+ }),
5532
+ smalltalk.MaglevSystemClassWindow);
5533
+
5534
+ smalltalk.addMethod(
5535
+ unescape('_updatePersistentMode'),
5536
+ smalltalk.method({
5537
+ selector: unescape('updatePersistentMode'),
5538
+ category: 'interactions',
5539
+ fn: function (){
5540
+ var self=this;
5541
+ smalltalk.send(self, "_showTransactionWaitingBox", []);
5542
+ smalltalk.send(self['@object'], "_evaluate_language_withCallback_", ["self.__DBEPersistenceMode", "ruby", (function(success, resultObj){smalltalk.send(smalltalk.send(self['@transactionResultBox'], "_asJQuery", []), "_empty", []);smalltalk.send(self['@transactionResultBox'], "_removeClass_", [unescape("alert-info")]);((($receiver = success).klass === smalltalk.Boolean) ? ($receiver ? (function(){smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-success")]);((($receiver = smalltalk.send(smalltalk.send(resultObj, "_value", []), "__eq", [true])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);})() : (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);}), (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})]));return smalltalk.send(self['@transactionResultBox'], "_hide", []);})() : (function(){return smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-error")]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-success")]);((($receiver = smalltalk.send(smalltalk.send(resultObj, "_value", []), "__eq", [true])).klass === smalltalk.Boolean) ? ($receiver ? (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);})() : (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_addClass_", ["active"]);}), (function(){return smalltalk.send(smalltalk.send(self['@persistenceModeButton'], "_asJQuery", []), "_removeClass_", ["active"]);})]));return smalltalk.send(self['@transactionResultBox'], "_hide", []);}), (function(){return smalltalk.send(self['@transactionResultBox'], "_addClass_", [unescape("alert-error")]);})]));return smalltalk.send(self['@transactionResultBox'], "_with_", [smalltalk.send(resultObj, "_inlineViewComponent", [])]);})]);
5543
+ return self;},
5544
+ args: [],
5545
+ source: unescape('updatePersistentMode%0A%09self%20showTransactionWaitingBox.%0A%09object%20%0A%09%09evaluate%3A%20%27self.__DBEPersistenceMode%27%0A%09%09language%3A%20%27ruby%27%0A%09%09withCallback%3A%20%5B%3Asuccess%20%3AresultObj%20%7C%0A%09%09%09transactionResultBox%20asJQuery%20empty.%0A%09%09%09transactionResultBox%20removeClass%3A%20%27alert-info%27.%0A%09%09%09success%0A%09%09%09%09ifTrue%3A%20%5B%0A%09%09%09%09%09transactionResultBox%20addClass%3A%20%27alert-success%27.%0A%09%09%09%09%09resultObj%20value%20%3D%20true%0A%09%09%09%09%09%09ifTrue%3A%20%5BpersistenceModeButton%20asJQuery%20addClass%3A%20%27active%27%5D%0A%09%09%09%09%09%09ifFalse%3A%20%5BpersistenceModeButton%20asJQuery%20removeClass%3A%20%27active%27%5D.%0A%09%09%09%09%09transactionResultBox%20hide%5D%0A%09%09%09%09ifFalse%3A%20%5BtransactionResultBox%20addClass%3A%20%27alert-error%27%5D.%0A%09%09%09transactionResultBox%20with%3A%20resultObj%20inlineViewComponent%5D.'),
5546
+ messageSends: ["showTransactionWaitingBox", "evaluate:language:withCallback:", "empty", "asJQuery", "removeClass:", "ifTrue:ifFalse:", "addClass:", unescape("%3D"), "value", "hide", "with:", "inlineViewComponent"],
5547
+ referencedClasses: []
5548
+ }),
5549
+ smalltalk.MaglevSystemClassWindow);
5550
+
5481
5551
 
5482
5552
 
5483
5553
  smalltalk.addClass('MaglevNilClassWindow', smalltalk.MaglevObjectWindow, [], 'Maglev-Database-Explorer');
@@ -5795,11 +5865,11 @@ category: 'interactions',
5795
5865
  fn: function (anInteger){
5796
5866
  var self=this;
5797
5867
  self['@methodSelect']._asJQuery()[0].selectedIndex = anInteger - 1; ;
5798
- smalltalk.send(self, "_renderFrame", []);
5868
+ smalltalk.send(self, "_renderFrame_", [anInteger]);
5799
5869
  return self;},
5800
5870
  args: ["anInteger"],
5801
- source: unescape('selectStackFrame%3A%20anInteger%0A%09%3C%20self%5B%27@methodSelect%27%5D._asJQuery%28%29%5B0%5D.selectedIndex%20%3D%20anInteger%20-%201%3B%20%3E.%0A%09self%20renderFrame.'),
5802
- messageSends: ["renderFrame"],
5871
+ source: unescape('selectStackFrame%3A%20anInteger%0A%09%3C%20self%5B%27@methodSelect%27%5D._asJQuery%28%29%5B0%5D.selectedIndex%20%3D%20anInteger%20-%201%3B%20%3E.%0A%09self%20renderFrame%3A%20anInteger.'),
5872
+ messageSends: ["renderFrame:"],
5803
5873
  referencedClasses: []
5804
5874
  }),
5805
5875
  smalltalk.MaglevThreadWindow);