|  | @@ -231,12 +231,9 @@ selector: "commitPackage",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._withHelperLabelled_do_(_st(_st("Committing package ").__comma(_st(_st(self)._selectedPackage())._name())).__comma("..."),(function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(_st(self)._environment())._commitPackage_(_st(self)._selectedPackage());
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +_st(_st(self)._environment())._commitPackage_(_st(self)._selectedPackage());
 | 
	
		
			
				|  |  |  return self}, function($ctx1) {$ctx1.fill(self,"commitPackage",{},smalltalk.HLToolModel)})},
 | 
	
		
			
				|  |  | -messageSends: ["withHelperLabelled:do:", ",", "name", "selectedPackage", "commitPackage:", "environment"]}),
 | 
	
		
			
				|  |  | +messageSends: ["commitPackage:", "selectedPackage", "environment"]}),
 | 
	
		
			
				|  |  |  smalltalk.HLToolModel);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
	
		
			
				|  | @@ -859,6 +856,27 @@ messageSends: ["environment:", "new", "yourself"]}),
 | 
	
		
			
				|  |  |  smalltalk.HLToolModel.klass);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLProgressHandler', smalltalk.ProgressHandler, [], 'Helios-Core');
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "do:on:displaying:",
 | 
	
		
			
				|  |  | +fn: function (aBlock,aCollection,aString){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +function $HLProgress(){return smalltalk.HLProgress||(typeof HLProgress=="undefined"?nil:HLProgress)}
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +$1=_st($HLProgress())._new();
 | 
	
		
			
				|  |  | +_st($1)._label_(aString);
 | 
	
		
			
				|  |  | +_st($1)._workBlock_(aBlock);
 | 
	
		
			
				|  |  | +_st($1)._collection_(aCollection);
 | 
	
		
			
				|  |  | +_st($1)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | +$2=_st($1)._start();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"do:on:displaying:",{aBlock:aBlock,aCollection:aCollection,aString:aString},smalltalk.HLProgressHandler)})},
 | 
	
		
			
				|  |  | +messageSends: ["label:", "new", "workBlock:", "collection:", "appendToJQuery:", "asJQuery", "start"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgressHandler);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  smalltalk.addClass('HLTab', smalltalk.Widget, ['widget', 'label', 'root'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
	
		
			
				|  | @@ -1384,1838 +1402,2055 @@ messageSends: []}),
 | 
	
		
			
				|  |  |  smalltalk.HLWidget.klass);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.addClass('HLConfirmation', smalltalk.HLWidget, ['confirmationString', 'actionBlock', 'cancelBlock'], 'Helios-Core');
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLFocusableWidget', smalltalk.HLWidget, [], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "actionBlock",
 | 
	
		
			
				|  |  | +selector: "blur",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@actionBlock"];
 | 
	
		
			
				|  |  | -if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$1=(function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$1=$2;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"actionBlock",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +_st(_st(_st(self)._wrapper())._asJQuery())._blur();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"blur",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["blur", "asJQuery", "wrapper"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "actionBlock:",
 | 
	
		
			
				|  |  | -fn: function (aBlock){
 | 
	
		
			
				|  |  | +selector: "canHaveFocus",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@actionBlock"]=aBlock;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"actionBlock:",{aBlock:aBlock},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +return true;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "cancel",
 | 
	
		
			
				|  |  | +selector: "focus",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._cancelBlock())._value();
 | 
	
		
			
				|  |  | -_st(self)._remove();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"cancel",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["value", "cancelBlock", "remove"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +_st(_st(_st(self)._wrapper())._asJQuery())._focus();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["focus", "asJQuery", "wrapper"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "cancelBlock",
 | 
	
		
			
				|  |  | +selector: "focusClass",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@cancelBlock"];
 | 
	
		
			
				|  |  | -if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$1=(function(){
 | 
	
		
			
				|  |  | +return "focused";
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"focusClass",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "hasFocus",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=_st(_st(_st(self)._wrapper())._notNil())._and_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$1=$2;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | +return _st(_st(_st(self)._wrapper())._asJQuery())._is_(":focus");
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"cancelBlock",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"hasFocus",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["and:", "is:", "asJQuery", "wrapper", "notNil"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "cancelBlock:",
 | 
	
		
			
				|  |  | -fn: function (aBlock){
 | 
	
		
			
				|  |  | +selector: "renderContentOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@cancelBlock"]=aBlock;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"cancelBlock:",{aBlock:aBlock},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "confirm",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "renderOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._actionBlock())._value();
 | 
	
		
			
				|  |  | -_st(self)._remove();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"confirm",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["value", "actionBlock", "remove"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +var $1,$2,$3,$4;
 | 
	
		
			
				|  |  | +$1=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($1)._class_("hl_widget");
 | 
	
		
			
				|  |  | +$2=_st($1)._yourself();
 | 
	
		
			
				|  |  | +self["@wrapper"]=$2;
 | 
	
		
			
				|  |  | +_st(self["@wrapper"])._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(self)._renderContentOn_(html);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +$3=self["@wrapper"];
 | 
	
		
			
				|  |  | +_st($3)._at_put_("tabindex","0");
 | 
	
		
			
				|  |  | +_st($3)._onBlur_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(_st(_st(self)._wrapper())._asJQuery())._removeClass_(_st(self)._focusClass());
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +$4=_st($3)._onFocus_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(_st(_st(self)._wrapper())._asJQuery())._addClass_(_st(self)._focusClass());
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["class:", "div", "yourself", "with:", "renderContentOn:", "at:put:", "onBlur:", "removeClass:", "focusClass", "asJQuery", "wrapper", "onFocus:", "addClass:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLListWidget', smalltalk.HLFocusableWidget, ['items', 'selectedItem', 'mapping'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "confirmationString",
 | 
	
		
			
				|  |  | +selector: "activateFirstListItem",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@confirmationString"];
 | 
	
		
			
				|  |  | -if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$1="Confirm";
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$1=$2;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"confirmationString",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +_st(self)._activateListItem_(_st(window)._jQuery_(_st(_st(_st(self["@wrapper"])._asJQuery())._find_("li.inactive"))._get_((0))));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"activateFirstListItem",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["activateListItem:", "jQuery:", "get:", "find:", "asJQuery"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "confirmationString:",
 | 
	
		
			
				|  |  | -fn: function (aString){
 | 
	
		
			
				|  |  | +selector: "activateItem:",
 | 
	
		
			
				|  |  | +fn: function (anObject){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@confirmationString"]=aString;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"confirmationString:",{aString:aString},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +var $early={};
 | 
	
		
			
				|  |  | +try {
 | 
	
		
			
				|  |  | +_st(self)._activateListItem_(_st(_st(self["@mapping"])._at_ifAbsent_(anObject,(function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$1=self;
 | 
	
		
			
				|  |  | +throw $early=[$1];
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._asJQuery());
 | 
	
		
			
				|  |  | +return self}
 | 
	
		
			
				|  |  | +catch(e) {if(e===$early)return e[0]; throw e}
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"activateItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["activateListItem:", "asJQuery", "at:ifAbsent:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "cssClass",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "activateListItem:",
 | 
	
		
			
				|  |  | +fn: function (aListItem){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +var item;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return "";
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +var $1,$2,$3;
 | 
	
		
			
				|  |  | +$1=_st(aListItem)._get_((0));
 | 
	
		
			
				|  |  | +if(($receiver = $1) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +$2=self;
 | 
	
		
			
				|  |  | +return $2;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$1;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +_st(_st(_st(aListItem)._parent())._children())._removeClass_("active");
 | 
	
		
			
				|  |  | +_st(aListItem)._addClass_("active");
 | 
	
		
			
				|  |  | +_st(self)._ensureVisible_(aListItem);
 | 
	
		
			
				|  |  | +item=_st(_st(self)._items())._at_(_st(_st(aListItem)._attr_("list-data"))._asNumber());
 | 
	
		
			
				|  |  | +$3=_st(_st(self)._selectedItem()).__eq_eq(item);
 | 
	
		
			
				|  |  | +if(! smalltalk.assert($3)){
 | 
	
		
			
				|  |  | +_st(self)._selectItem_(item);
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"activateListItem:",{aListItem:aListItem,item:item},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:", "get:", "removeClass:", "children", "parent", "addClass:", "ensureVisible:", "at:", "asNumber", "attr:", "items", "ifFalse:", "selectItem:", "==", "selectedItem"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "remove",
 | 
	
		
			
				|  |  | +selector: "activateNextListItem",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(window)._jQuery_(".dialog"))._removeClass_("active");
 | 
	
		
			
				|  |  | -_st((function(){
 | 
	
		
			
				|  |  | +_st(self)._activateListItem_(_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_("li.active"))._next());
 | 
	
		
			
				|  |  | +_st(_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_(" .active"))._get())._ifEmpty_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -_st(_st(window)._jQuery_("#overlay"))._remove();
 | 
	
		
			
				|  |  | -return _st(_st(window)._jQuery_(".dialog"))._remove();
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["removeClass:", "jQuery:", "valueWithTimeout:", "remove"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +return _st(self)._activateFirstListItem();
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"activateNextListItem",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["activateListItem:", "next", "find:", "asJQuery", "wrapper", "ifEmpty:", "activateFirstListItem", "get"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderButtonsOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "activatePreviousListItem",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -var confirmButton;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$3,$4,$5,$6,$2;
 | 
	
		
			
				|  |  | -$1=_st(html)._div();
 | 
	
		
			
				|  |  | -_st($1)._class_("buttons");
 | 
	
		
			
				|  |  | -$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$3=_st(html)._button();
 | 
	
		
			
				|  |  | -_st($3)._class_("button");
 | 
	
		
			
				|  |  | -_st($3)._with_("Cancel");
 | 
	
		
			
				|  |  | -$4=_st($3)._onClick_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(self)._cancel();
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$4;
 | 
	
		
			
				|  |  | -$5=_st(html)._button();
 | 
	
		
			
				|  |  | -_st($5)._class_("button default");
 | 
	
		
			
				|  |  | -_st($5)._with_("Confirm");
 | 
	
		
			
				|  |  | -$6=_st($5)._onClick_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(self)._confirm();
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -confirmButton=$6;
 | 
	
		
			
				|  |  | -return confirmButton;
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -_st(_st(confirmButton)._asJQuery())._focus();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html,confirmButton:confirmButton},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["class:", "div", "with:", "button", "onClick:", "cancel", "confirm", "focus", "asJQuery"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +_st(self)._activateListItem_(_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_("li.active"))._prev());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"activatePreviousListItem",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["activateListItem:", "prev", "find:", "asJQuery", "wrapper"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderContentOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "cssClassForItem:",
 | 
	
		
			
				|  |  | +fn: function (anObject){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -var confirmButton;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$3,$4,$2;
 | 
	
		
			
				|  |  | -_st(_st(html)._div())._id_("overlay");
 | 
	
		
			
				|  |  | -$1=_st(html)._div();
 | 
	
		
			
				|  |  | -_st($1)._class_(_st("dialog ").__comma(_st(self)._cssClass()));
 | 
	
		
			
				|  |  | -$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$3=self;
 | 
	
		
			
				|  |  | -_st($3)._renderMainOn_(html);
 | 
	
		
			
				|  |  | -$4=_st($3)._renderButtonsOn_(html);
 | 
	
		
			
				|  |  | -return $4;
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -_st(_st(window)._jQuery_(".dialog"))._addClass_("active");
 | 
	
		
			
				|  |  | -_st(self)._setupKeyBindings();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html,confirmButton:confirmButton},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["id:", "div", "class:", ",", "cssClass", "with:", "renderMainOn:", "renderButtonsOn:", "addClass:", "jQuery:", "setupKeyBindings"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +return "";
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"cssClassForItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderMainOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "defaultItems",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(html)._span())._with_(_st(self)._confirmationString());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["with:", "confirmationString", "span"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=[];
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"defaultItems",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "setupKeyBindings",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "ensureVisible:",
 | 
	
		
			
				|  |  | +fn: function (aListItem){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +var perent,position;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -_st(_st(window)._jQuery_(".dialog"))._keyup_((function(e){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$1=_st(_st(e)._keyCode()).__eq((27));
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +position=_st(self)._positionOf_(aListItem);
 | 
	
		
			
				|  |  | +parent=_st(aListItem)._parent();
 | 
	
		
			
				|  |  | +$1=_st(_st(_st(aListItem)._position())._top()).__lt((0));
 | 
	
		
			
				|  |  |  if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -return _st(self)._cancel();
 | 
	
		
			
				|  |  | +_st(_st(parent)._get_((0)))._scrollTop_(_st(_st(_st(_st(parent)._get_((0)))._scrollTop()).__plus(_st(_st(aListItem)._position())._top())).__minus((10)));
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | -messageSends: ["keyup:", "ifTrue:", "cancel", "=", "keyCode", "jQuery:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +$2=_st(_st(_st(_st(aListItem)._position())._top()).__plus(_st(aListItem)._height())).__gt(_st(parent)._height());
 | 
	
		
			
				|  |  | +if(smalltalk.assert($2)){
 | 
	
		
			
				|  |  | +_st(_st(parent)._get_((0)))._scrollTop_(_st(_st(_st(_st(_st(parent)._get_((0)))._scrollTop()).__plus(_st(aListItem)._height())).__minus(_st(_st(parent)._height()).__minus(_st(_st(aListItem)._position())._top()))).__plus((10)));
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"ensureVisible:",{aListItem:aListItem,perent:perent,position:position},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["positionOf:", "parent", "ifTrue:", "scrollTop:", "-", "+", "top", "position", "scrollTop", "get:", "<", "height", ">"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.addClass('HLRequest', smalltalk.HLConfirmation, ['input', 'value'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "confirm",
 | 
	
		
			
				|  |  | +selector: "focus",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._actionBlock())._value_(_st(_st(self["@input"])._asJQuery())._val());
 | 
	
		
			
				|  |  | -_st(self)._remove();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"confirm",{},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | -messageSends: ["value:", "val", "asJQuery", "actionBlock", "remove"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLRequest);
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget.fn.prototype._focus.apply(_st(self), []);
 | 
	
		
			
				|  |  | +$1=_st(_st(self)._items())._isEmpty();
 | 
	
		
			
				|  |  | +if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +$2=_st(self)._selectedItem();
 | 
	
		
			
				|  |  | +if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +_st(self)._activateFirstListItem();
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["focus", "ifFalse:", "ifNil:", "activateFirstListItem", "selectedItem", "isEmpty", "items"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "cssClass",
 | 
	
		
			
				|  |  | +selector: "initialize",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return "large";
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLRequest);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -smalltalk.addMethod(
 | 
	
		
			
				|  |  | -smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderMainOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | -var self=this;
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -smalltalk.HLConfirmation.fn.prototype._renderMainOn_.apply(_st(self), [html]);
 | 
	
		
			
				|  |  | -self["@input"]=_st(html)._textarea();
 | 
	
		
			
				|  |  | -_st(_st(self["@input"])._asJQuery())._val_(_st(self)._value());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | -messageSends: ["renderMainOn:", "textarea", "val:", "value", "asJQuery"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLRequest);
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget.fn.prototype._initialize.apply(_st(self), []);
 | 
	
		
			
				|  |  | +self["@mapping"]=_st($Dictionary())._new();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["initialize", "new"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "value",
 | 
	
		
			
				|  |  | +selector: "items",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@value"];
 | 
	
		
			
				|  |  | +$2=self["@items"];
 | 
	
		
			
				|  |  |  if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$1="";
 | 
	
		
			
				|  |  | +self["@items"]=_st(self)._defaultItems();
 | 
	
		
			
				|  |  | +$1=self["@items"];
 | 
	
		
			
				|  |  |  } else {
 | 
	
		
			
				|  |  |  $1=$2;
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLRequest);
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"items",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:", "defaultItems"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "value:",
 | 
	
		
			
				|  |  | -fn: function (aString){
 | 
	
		
			
				|  |  | +selector: "items:",
 | 
	
		
			
				|  |  | +fn: function (aCollection){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@value"]=aString;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"value:",{aString:aString},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | +self["@items"]=aCollection;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"items:",{aCollection:aCollection},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLRequest);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.addClass('HLFocusableWidget', smalltalk.HLWidget, [], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "blur",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "listCssClassForItem:",
 | 
	
		
			
				|  |  | +fn: function (anObject){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(_st(self)._wrapper())._asJQuery())._blur();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"blur",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["blur", "asJQuery", "wrapper"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  | +var $2,$1;
 | 
	
		
			
				|  |  | +$2=_st(_st(self)._selectedItem()).__eq(anObject);
 | 
	
		
			
				|  |  | +if(smalltalk.assert($2)){
 | 
	
		
			
				|  |  | +$1="active";
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$1="inactive";
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"listCssClassForItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifTrue:ifFalse:", "=", "selectedItem"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "canHaveFocus",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "positionOf:",
 | 
	
		
			
				|  |  | +fn: function (aListItem){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return true;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.addMethod(
 | 
	
		
			
				|  |  | -smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "focus",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | -var self=this;
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(_st(self)._wrapper())._asJQuery())._focus();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["focus", "asJQuery", "wrapper"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  | +    	return aListItem.parent().children().get().indexOf(aListItem.get(0)) + 1
 | 
	
		
			
				|  |  | +	;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"positionOf:",{aListItem:aListItem},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "focusClass",
 | 
	
		
			
				|  |  | +selector: "refresh",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return "focused";
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"focusClass",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +var $early={};
 | 
	
		
			
				|  |  | +try {
 | 
	
		
			
				|  |  | +smalltalk.HLFocusableWidget.fn.prototype._refresh.apply(_st(self), []);
 | 
	
		
			
				|  |  | +_st(self)._ensureVisible_(_st(_st(self["@mapping"])._at_ifAbsent_(_st(self)._selectedItem(),(function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$1=self;
 | 
	
		
			
				|  |  | +throw $early=[$1];
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._asJQuery());
 | 
	
		
			
				|  |  | +return self}
 | 
	
		
			
				|  |  | +catch(e) {if(e===$early)return e[0]; throw e}
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["refresh", "ensureVisible:", "asJQuery", "at:ifAbsent:", "selectedItem"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "hasFocus",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "registerMappingFrom:to:",
 | 
	
		
			
				|  |  | +fn: function (anObject,aTag){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -$1=_st(_st(_st(self)._wrapper())._notNil())._and_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(_st(_st(self)._wrapper())._asJQuery())._is_(":focus");
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"hasFocus",{},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["and:", "is:", "asJQuery", "wrapper", "notNil"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  | +_st(self["@mapping"])._at_put_(anObject,aTag);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"registerMappingFrom:to:",{anObject:anObject,aTag:aTag},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["at:put:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderContentOn:",
 | 
	
		
			
				|  |  | +selector: "renderButtonsOn:",
 | 
	
		
			
				|  |  |  fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderOn:",
 | 
	
		
			
				|  |  | +selector: "renderContentOn:",
 | 
	
		
			
				|  |  |  fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $1,$2,$3,$4;
 | 
	
		
			
				|  |  | -$1=_st(html)._div();
 | 
	
		
			
				|  |  | -_st($1)._class_("hl_widget");
 | 
	
		
			
				|  |  | -$2=_st($1)._yourself();
 | 
	
		
			
				|  |  | -self["@wrapper"]=$2;
 | 
	
		
			
				|  |  | -_st(self["@wrapper"])._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(self)._renderContentOn_(html);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$3=self["@wrapper"];
 | 
	
		
			
				|  |  | -_st($3)._at_put_("tabindex","0");
 | 
	
		
			
				|  |  | -_st($3)._onBlur_((function(){
 | 
	
		
			
				|  |  | +$1=_st(html)._ul();
 | 
	
		
			
				|  |  | +_st($1)._class_("nav nav-pills nav-stacked");
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(_st(_st(self)._wrapper())._asJQuery())._removeClass_(_st(self)._focusClass());
 | 
	
		
			
				|  |  | +return _st(self)._renderListOn_(html);
 | 
	
		
			
				|  |  |  }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$4=_st($3)._onFocus_((function(){
 | 
	
		
			
				|  |  | +$3=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($3)._class_("pane_actions form-actions");
 | 
	
		
			
				|  |  | +$4=_st($3)._with_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(_st(_st(self)._wrapper())._asJQuery())._addClass_(_st(self)._focusClass());
 | 
	
		
			
				|  |  | +return _st(self)._renderButtonsOn_(html);
 | 
	
		
			
				|  |  |  }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLFocusableWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["class:", "div", "yourself", "with:", "renderContentOn:", "at:put:", "onBlur:", "removeClass:", "focusClass", "asJQuery", "wrapper", "onFocus:", "addClass:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +_st(self)._setupKeyBindings();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["class:", "ul", "with:", "renderListOn:", "div", "renderButtonsOn:", "setupKeyBindings"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.addClass('HLListWidget', smalltalk.HLFocusableWidget, ['items', 'selectedItem', 'mapping'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activateFirstListItem",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "renderItem:on:",
 | 
	
		
			
				|  |  | +fn: function (anObject,html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +var li;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._activateListItem_(_st(window)._jQuery_(_st(_st(_st(self["@wrapper"])._asJQuery())._find_("li.inactive"))._get_((0))));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"activateFirstListItem",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["activateListItem:", "jQuery:", "get:", "find:", "asJQuery"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -smalltalk.addMethod(
 | 
	
		
			
				|  |  | -smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activateItem:",
 | 
	
		
			
				|  |  | -fn: function (anObject){
 | 
	
		
			
				|  |  | -var self=this;
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -var $early={};
 | 
	
		
			
				|  |  | -try {
 | 
	
		
			
				|  |  | -_st(self)._activateListItem_(_st(_st(self["@mapping"])._at_ifAbsent_(anObject,(function(){
 | 
	
		
			
				|  |  | +var $1,$3,$4,$2;
 | 
	
		
			
				|  |  | +li=_st(html)._li();
 | 
	
		
			
				|  |  | +_st(self)._registerMappingFrom_to_(anObject,li);
 | 
	
		
			
				|  |  | +$1=li;
 | 
	
		
			
				|  |  | +_st($1)._at_put_("list-data",_st(_st(_st(self)._items())._indexOf_(anObject))._asString());
 | 
	
		
			
				|  |  | +_st($1)._class_(_st(self)._listCssClassForItem_(anObject));
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$1=self;
 | 
	
		
			
				|  |  | -throw $early=[$1];
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._asJQuery());
 | 
	
		
			
				|  |  | -return self}
 | 
	
		
			
				|  |  | -catch(e) {if(e===$early)return e[0]; throw e}
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"activateItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["activateListItem:", "asJQuery", "at:ifAbsent:"]}),
 | 
	
		
			
				|  |  | +$3=_st(html)._a();
 | 
	
		
			
				|  |  | +_st($3)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +_st(_st(html)._tag_("i"))._class_(_st(self)._cssClassForItem_(anObject));
 | 
	
		
			
				|  |  | +return _st(self)._renderItemLabel_on_(anObject,html);
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +$4=_st($3)._onClick_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +return _st(self)._activateListItem_(_st(li)._asJQuery());
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return $4;
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderItem:on:",{anObject:anObject,html:html,li:li},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["li", "registerMappingFrom:to:", "at:put:", "asString", "indexOf:", "items", "class:", "listCssClassForItem:", "with:", "cssClassForItem:", "tag:", "renderItemLabel:on:", "a", "onClick:", "activateListItem:", "asJQuery"]}),
 | 
	
		
			
				|  |  |  smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activateListItem:",
 | 
	
		
			
				|  |  | -fn: function (aListItem){
 | 
	
		
			
				|  |  | +selector: "renderItemLabel:on:",
 | 
	
		
			
				|  |  | +fn: function (anObject,html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -var item;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2,$3;
 | 
	
		
			
				|  |  | -$1=_st(aListItem)._get_((0));
 | 
	
		
			
				|  |  | -if(($receiver = $1) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$2=self;
 | 
	
		
			
				|  |  | -return $2;
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$1;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -_st(_st(_st(aListItem)._parent())._children())._removeClass_("active");
 | 
	
		
			
				|  |  | -_st(aListItem)._addClass_("active");
 | 
	
		
			
				|  |  | -_st(self)._ensureVisible_(aListItem);
 | 
	
		
			
				|  |  | -item=_st(_st(self)._items())._at_(_st(_st(aListItem)._attr_("list-data"))._asNumber());
 | 
	
		
			
				|  |  | -$3=_st(_st(self)._selectedItem()).__eq_eq(item);
 | 
	
		
			
				|  |  | -if(! smalltalk.assert($3)){
 | 
	
		
			
				|  |  | -_st(self)._selectItem_(item);
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"activateListItem:",{aListItem:aListItem,item:item},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:", "get:", "removeClass:", "children", "parent", "addClass:", "ensureVisible:", "at:", "asNumber", "attr:", "items", "ifFalse:", "selectItem:", "==", "selectedItem"]}),
 | 
	
		
			
				|  |  | +_st(html)._with_(_st(anObject)._asString());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{anObject:anObject,html:html},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["with:", "asString"]}),
 | 
	
		
			
				|  |  |  smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activateNextListItem",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "renderListOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._activateListItem_(_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_("li.active"))._next());
 | 
	
		
			
				|  |  | -_st(_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_(" .active"))._get())._ifEmpty_((function(){
 | 
	
		
			
				|  |  | +self["@mapping"]=_st($Dictionary())._new();
 | 
	
		
			
				|  |  | +_st(_st(self)._items())._do_((function(each){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(self)._activateFirstListItem();
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"activateNextListItem",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["activateListItem:", "next", "find:", "asJQuery", "wrapper", "ifEmpty:", "activateFirstListItem", "get"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -smalltalk.addMethod(
 | 
	
		
			
				|  |  | -smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activatePreviousListItem",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | -var self=this;
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._activateListItem_(_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_("li.active"))._prev());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"activatePreviousListItem",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["activateListItem:", "prev", "find:", "asJQuery", "wrapper"]}),
 | 
	
		
			
				|  |  | +return _st(self)._renderItem_on_(each,html);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderListOn:",{html:html},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["new", "do:", "renderItem:on:", "items"]}),
 | 
	
		
			
				|  |  |  smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "cssClassForItem:",
 | 
	
		
			
				|  |  | +selector: "selectItem:",
 | 
	
		
			
				|  |  |  fn: function (anObject){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return "";
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"cssClassForItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | +_st(self)._selectedItem_(anObject);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["selectedItem:"]}),
 | 
	
		
			
				|  |  |  smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "defaultItems",
 | 
	
		
			
				|  |  | +selector: "selectedItem",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $1;
 | 
	
		
			
				|  |  | -$1=[];
 | 
	
		
			
				|  |  | +$1=self["@selectedItem"];
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"defaultItems",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"selectedItem",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  |  smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "ensureVisible:",
 | 
	
		
			
				|  |  | -fn: function (aListItem){
 | 
	
		
			
				|  |  | +selector: "selectedItem:",
 | 
	
		
			
				|  |  | +fn: function (anObject){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -var perent,position;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -position=_st(self)._positionOf_(aListItem);
 | 
	
		
			
				|  |  | -parent=_st(aListItem)._parent();
 | 
	
		
			
				|  |  | -$1=_st(_st(_st(aListItem)._position())._top()).__lt((0));
 | 
	
		
			
				|  |  | -if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -_st(_st(parent)._get_((0)))._scrollTop_(_st(_st(_st(_st(parent)._get_((0)))._scrollTop()).__plus(_st(_st(aListItem)._position())._top())).__minus((10)));
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -$2=_st(_st(_st(_st(aListItem)._position())._top()).__plus(_st(aListItem)._height())).__gt(_st(parent)._height());
 | 
	
		
			
				|  |  | -if(smalltalk.assert($2)){
 | 
	
		
			
				|  |  | -_st(_st(parent)._get_((0)))._scrollTop_(_st(_st(_st(_st(_st(parent)._get_((0)))._scrollTop()).__plus(_st(aListItem)._height())).__minus(_st(_st(parent)._height()).__minus(_st(_st(aListItem)._position())._top()))).__plus((10)));
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"ensureVisible:",{aListItem:aListItem,perent:perent,position:position},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["positionOf:", "parent", "ifTrue:", "scrollTop:", "-", "+", "top", "position", "scrollTop", "get:", "<", "height", ">"]}),
 | 
	
		
			
				|  |  | +self["@selectedItem"]=anObject;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"selectedItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  |  smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "focus",
 | 
	
		
			
				|  |  | +selector: "setupKeyBindings",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +var active,interval,delay,repeatInterval;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget.fn.prototype._focus.apply(_st(self), []);
 | 
	
		
			
				|  |  | -$1=_st(_st(self)._items())._isEmpty();
 | 
	
		
			
				|  |  | -if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -$2=_st(self)._selectedItem();
 | 
	
		
			
				|  |  | -if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -_st(self)._activateFirstListItem();
 | 
	
		
			
				|  |  | +var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11;
 | 
	
		
			
				|  |  | +active=false;
 | 
	
		
			
				|  |  | +repeatInterval=(70);
 | 
	
		
			
				|  |  | +_st(_st(_st(self)._wrapper())._asJQuery())._unbind_("keydown");
 | 
	
		
			
				|  |  | +_st(_st(_st(self)._wrapper())._asJQuery())._keydown_((function(e){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$1=_st(_st(_st(e)._which()).__eq((38)))._and_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +return _st(active).__eq(false);
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +active=true;
 | 
	
		
			
				|  |  | +active;
 | 
	
		
			
				|  |  | +_st(self)._activatePreviousListItem();
 | 
	
		
			
				|  |  | +delay=_st((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +interval=_st((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | +$2=_st(_st(_st(self)._wrapper())._asJQuery())._hasClass_(_st(self)._focusClass());
 | 
	
		
			
				|  |  | +if(smalltalk.assert($2)){
 | 
	
		
			
				|  |  | +return _st(self)._activatePreviousListItem();
 | 
	
		
			
				|  |  |  } else {
 | 
	
		
			
				|  |  | -$2;
 | 
	
		
			
				|  |  | +active=false;
 | 
	
		
			
				|  |  | +active;
 | 
	
		
			
				|  |  | +$3=interval;
 | 
	
		
			
				|  |  | +if(($receiver = $3) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +$3;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +_st(interval)._clearInterval();
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +$4=delay;
 | 
	
		
			
				|  |  | +if(($receiver = $4) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +return $4;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +return _st(delay)._clearTimeout();
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["focus", "ifFalse:", "ifNil:", "activateFirstListItem", "selectedItem", "isEmpty", "items"]}),
 | 
	
		
			
				|  |  | +}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}))._valueWithInterval_(repeatInterval);
 | 
	
		
			
				|  |  | +return interval;
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
 | 
	
		
			
				|  |  | +delay;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +$5=_st(_st(_st(e)._which()).__eq((40)))._and_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +return _st(active).__eq(false);
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +if(smalltalk.assert($5)){
 | 
	
		
			
				|  |  | +active=true;
 | 
	
		
			
				|  |  | +active;
 | 
	
		
			
				|  |  | +_st(self)._activateNextListItem();
 | 
	
		
			
				|  |  | +delay=_st((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +interval=_st((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | +$6=_st(_st(_st(self)._wrapper())._asJQuery())._hasClass_(_st(self)._focusClass());
 | 
	
		
			
				|  |  | +if(smalltalk.assert($6)){
 | 
	
		
			
				|  |  | +return _st(self)._activateNextListItem();
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +active=false;
 | 
	
		
			
				|  |  | +active;
 | 
	
		
			
				|  |  | +$7=interval;
 | 
	
		
			
				|  |  | +if(($receiver = $7) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +$7;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +_st(interval)._clearInterval();
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +$8=delay;
 | 
	
		
			
				|  |  | +if(($receiver = $8) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +return $8;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +return _st(delay)._clearTimeout();
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}))._valueWithInterval_(repeatInterval);
 | 
	
		
			
				|  |  | +return interval;
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
 | 
	
		
			
				|  |  | +return delay;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
 | 
	
		
			
				|  |  | +_st(_st(_st(self)._wrapper())._asJQuery())._keyup_((function(e){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$9=active;
 | 
	
		
			
				|  |  | +if(smalltalk.assert($9)){
 | 
	
		
			
				|  |  | +active=false;
 | 
	
		
			
				|  |  | +active;
 | 
	
		
			
				|  |  | +$10=interval;
 | 
	
		
			
				|  |  | +if(($receiver = $10) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +$10;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +_st(interval)._clearInterval();
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +$11=delay;
 | 
	
		
			
				|  |  | +if(($receiver = $11) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +return $11;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +return _st(delay)._clearTimeout();
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{active:active,interval:interval,delay:delay,repeatInterval:repeatInterval},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["unbind:", "asJQuery", "wrapper", "keydown:", "ifTrue:", "activatePreviousListItem", "valueWithTimeout:", "valueWithInterval:", "ifTrue:ifFalse:", "ifNotNil:", "clearInterval", "clearTimeout", "hasClass:", "focusClass", "and:", "=", "which", "activateNextListItem", "keyup:"]}),
 | 
	
		
			
				|  |  |  smalltalk.HLListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLNavigationListWidget', smalltalk.HLListWidget, ['previous', 'next'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "initialize",
 | 
	
		
			
				|  |  | +selector: "next",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget.fn.prototype._initialize.apply(_st(self), []);
 | 
	
		
			
				|  |  | -self["@mapping"]=_st($Dictionary())._new();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["initialize", "new"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=self["@next"];
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"next",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "items",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | -var self=this;
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@items"];
 | 
	
		
			
				|  |  | -if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -self["@items"]=_st(self)._defaultItems();
 | 
	
		
			
				|  |  | -$1=self["@items"];
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$1=$2;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"items",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:", "defaultItems"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -smalltalk.addMethod(
 | 
	
		
			
				|  |  | -smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "items:",
 | 
	
		
			
				|  |  | -fn: function (aCollection){
 | 
	
		
			
				|  |  | +selector: "next:",
 | 
	
		
			
				|  |  | +fn: function (aWidget){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@items"]=aCollection;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"items:",{aCollection:aCollection},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +self["@next"]=aWidget;
 | 
	
		
			
				|  |  | +$1=_st(_st(aWidget)._previous()).__eq(self);
 | 
	
		
			
				|  |  | +if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +_st(aWidget)._previous_(self);
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"next:",{aWidget:aWidget},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifFalse:", "previous:", "=", "previous"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "listCssClassForItem:",
 | 
	
		
			
				|  |  | -fn: function (anObject){
 | 
	
		
			
				|  |  | +selector: "nextFocus",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $2,$1;
 | 
	
		
			
				|  |  | -$2=_st(_st(self)._selectedItem()).__eq(anObject);
 | 
	
		
			
				|  |  | -if(smalltalk.assert($2)){
 | 
	
		
			
				|  |  | -$1="active";
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=_st(self)._next();
 | 
	
		
			
				|  |  | +if(($receiver = $1) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +$1;
 | 
	
		
			
				|  |  |  } else {
 | 
	
		
			
				|  |  | -$1="inactive";
 | 
	
		
			
				|  |  | +_st(_st(self)._next())._focus();
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"listCssClassForItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifTrue:ifFalse:", "=", "selectedItem"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"nextFocus",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNotNil:", "focus", "next"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "positionOf:",
 | 
	
		
			
				|  |  | -fn: function (aListItem){
 | 
	
		
			
				|  |  | +selector: "previous",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    	return aListItem.parent().children().get().indexOf(aListItem.get(0)) + 1
 | 
	
		
			
				|  |  | -	;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"positionOf:",{aListItem:aListItem},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=self["@previous"];
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"previous",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "refresh",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "previous:",
 | 
	
		
			
				|  |  | +fn: function (aWidget){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $1;
 | 
	
		
			
				|  |  | -var $early={};
 | 
	
		
			
				|  |  | -try {
 | 
	
		
			
				|  |  | -smalltalk.HLFocusableWidget.fn.prototype._refresh.apply(_st(self), []);
 | 
	
		
			
				|  |  | -_st(self)._ensureVisible_(_st(_st(self["@mapping"])._at_ifAbsent_(_st(self)._selectedItem(),(function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$1=self;
 | 
	
		
			
				|  |  | -throw $early=[$1];
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._asJQuery());
 | 
	
		
			
				|  |  | -return self}
 | 
	
		
			
				|  |  | -catch(e) {if(e===$early)return e[0]; throw e}
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["refresh", "ensureVisible:", "asJQuery", "at:ifAbsent:", "selectedItem"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +self["@previous"]=aWidget;
 | 
	
		
			
				|  |  | +$1=_st(_st(aWidget)._next()).__eq(self);
 | 
	
		
			
				|  |  | +if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +_st(aWidget)._next_(self);
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"previous:",{aWidget:aWidget},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifFalse:", "next:", "=", "next"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "registerMappingFrom:to:",
 | 
	
		
			
				|  |  | -fn: function (anObject,aTag){
 | 
	
		
			
				|  |  | +selector: "previousFocus",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self["@mapping"])._at_put_(anObject,aTag);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"registerMappingFrom:to:",{anObject:anObject,aTag:aTag},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["at:put:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=_st(self)._previous();
 | 
	
		
			
				|  |  | +if(($receiver = $1) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +$1;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +_st(_st(self)._previous())._focus();
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"previousFocus",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNotNil:", "focus", "previous"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderButtonsOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "setupKeyBindings",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +smalltalk.HLListWidget.fn.prototype._setupKeyBindings.apply(_st(self), []);
 | 
	
		
			
				|  |  | +_st(_st(_st(self)._wrapper())._asJQuery())._keydown_((function(e){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$1=_st(_st(e)._which()).__eq((39));
 | 
	
		
			
				|  |  | +if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +_st(self)._nextFocus();
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +$2=_st(_st(e)._which()).__eq((37));
 | 
	
		
			
				|  |  | +if(smalltalk.assert($2)){
 | 
	
		
			
				|  |  | +return _st(self)._previousFocus();
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["setupKeyBindings", "keydown:", "ifTrue:", "nextFocus", "=", "which", "previousFocus", "asJQuery", "wrapper"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLToolListWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderContentOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "activateListItem:",
 | 
	
		
			
				|  |  | +fn: function (anItem){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2,$3,$4;
 | 
	
		
			
				|  |  | -$1=_st(html)._ul();
 | 
	
		
			
				|  |  | -_st($1)._class_("nav nav-pills nav-stacked");
 | 
	
		
			
				|  |  | -$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(self)._renderListOn_(html);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$3=_st(html)._div();
 | 
	
		
			
				|  |  | -_st($3)._class_("pane_actions form-actions");
 | 
	
		
			
				|  |  | -$4=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | +_st(_st(self)._model())._withChangesDo_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(self)._renderButtonsOn_(html);
 | 
	
		
			
				|  |  | +return smalltalk.HLNavigationListWidget.fn.prototype._activateListItem_.apply(_st(self), [anItem]);
 | 
	
		
			
				|  |  |  }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -_st(self)._setupKeyBindings();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["class:", "ul", "with:", "renderListOn:", "div", "renderButtonsOn:", "setupKeyBindings"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"activateListItem:",{anItem:anItem},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["withChangesDo:", "activateListItem:", "model"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderItem:on:",
 | 
	
		
			
				|  |  | -fn: function (anObject,html){
 | 
	
		
			
				|  |  | +selector: "activateNextListItem",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -var li;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$3,$4,$2;
 | 
	
		
			
				|  |  | -li=_st(html)._li();
 | 
	
		
			
				|  |  | -_st(self)._registerMappingFrom_to_(anObject,li);
 | 
	
		
			
				|  |  | -$1=li;
 | 
	
		
			
				|  |  | -_st($1)._at_put_("list-data",_st(_st(_st(self)._items())._indexOf_(anObject))._asString());
 | 
	
		
			
				|  |  | -_st($1)._class_(_st(self)._listCssClassForItem_(anObject));
 | 
	
		
			
				|  |  | -$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | +_st(_st(self)._model())._withChangesDo_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$3=_st(html)._a();
 | 
	
		
			
				|  |  | -_st($3)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -_st(_st(html)._tag_("i"))._class_(_st(self)._cssClassForItem_(anObject));
 | 
	
		
			
				|  |  | -return _st(self)._renderItemLabel_on_(anObject,html);
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$4=_st($3)._onClick_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(self)._activateListItem_(_st(li)._asJQuery());
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $4;
 | 
	
		
			
				|  |  | +return smalltalk.HLNavigationListWidget.fn.prototype._activateNextListItem.apply(_st(self), []);
 | 
	
		
			
				|  |  |  }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderItem:on:",{anObject:anObject,html:html,li:li},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["li", "registerMappingFrom:to:", "at:put:", "asString", "indexOf:", "items", "class:", "listCssClassForItem:", "with:", "cssClassForItem:", "tag:", "renderItemLabel:on:", "a", "onClick:", "activateListItem:", "asJQuery"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -smalltalk.addMethod(
 | 
	
		
			
				|  |  | -smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderItemLabel:on:",
 | 
	
		
			
				|  |  | -fn: function (anObject,html){
 | 
	
		
			
				|  |  | -var self=this;
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(html)._with_(_st(anObject)._asString());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{anObject:anObject,html:html},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["with:", "asString"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"activateNextListItem",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["withChangesDo:", "activateNextListItem", "model"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderListOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "activatePreviousListItem",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@mapping"]=_st($Dictionary())._new();
 | 
	
		
			
				|  |  | -_st(_st(self)._items())._do_((function(each){
 | 
	
		
			
				|  |  | +_st(_st(self)._model())._withChangesDo_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(self)._renderItem_on_(each,html);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderListOn:",{html:html},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["new", "do:", "renderItem:on:", "items"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -smalltalk.addMethod(
 | 
	
		
			
				|  |  | -smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "selectItem:",
 | 
	
		
			
				|  |  | -fn: function (anObject){
 | 
	
		
			
				|  |  | -var self=this;
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._selectedItem_(anObject);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["selectedItem:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +return smalltalk.HLNavigationListWidget.fn.prototype._activatePreviousListItem.apply(_st(self), []);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"activatePreviousListItem",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["withChangesDo:", "activatePreviousListItem", "model"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "selectedItem",
 | 
	
		
			
				|  |  | +selector: "commandCategory",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $1;
 | 
	
		
			
				|  |  | -$1=self["@selectedItem"];
 | 
	
		
			
				|  |  | +$1=_st(self)._label();
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"selectedItem",{},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"commandCategory",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["label"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "selectedItem:",
 | 
	
		
			
				|  |  | -fn: function (anObject){
 | 
	
		
			
				|  |  | +selector: "label",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@selectedItem"]=anObject;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"selectedItem:",{anObject:anObject},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | +return "List";
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "setupKeyBindings",
 | 
	
		
			
				|  |  | +selector: "menuCommands",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -var active,interval,delay,repeatInterval;
 | 
	
		
			
				|  |  | +function $HLToolCommand(){return smalltalk.HLToolCommand||(typeof HLToolCommand=="undefined"?nil:HLToolCommand)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11;
 | 
	
		
			
				|  |  | -active=false;
 | 
	
		
			
				|  |  | -repeatInterval=(70);
 | 
	
		
			
				|  |  | -_st(_st(_st(self)._wrapper())._asJQuery())._unbind_("keydown");
 | 
	
		
			
				|  |  | -_st(_st(_st(self)._wrapper())._asJQuery())._keydown_((function(e){
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=_st(_st(_st(_st($HLToolCommand())._concreteClasses())._select_((function(each){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$1=_st(_st(_st(e)._which()).__eq((38)))._and_((function(){
 | 
	
		
			
				|  |  | +return _st(each)._isValidFor_(_st(self)._model());
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(each)._for_(_st(self)._model());
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._select_((function(each){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(_st(_st(each)._category()).__eq(_st(self)._commandCategory()))._and_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(active).__eq(false);
 | 
	
		
			
				|  |  | +return _st(_st(each)._isAction())._and_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | +return _st(each)._isActive();
 | 
	
		
			
				|  |  | +}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  |  }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"menuCommands",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["select:", "and:", "isActive", "isAction", "=", "commandCategory", "category", "collect:", "for:", "model", "isValidFor:", "concreteClasses"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "model",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=self["@model"];
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "model:",
 | 
	
		
			
				|  |  | +fn: function (aBrowserModel){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +self["@model"]=aBrowserModel;
 | 
	
		
			
				|  |  | +$1=self;
 | 
	
		
			
				|  |  | +_st($1)._observeSystem();
 | 
	
		
			
				|  |  | +$2=_st($1)._observeModel();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"model:",{aBrowserModel:aBrowserModel},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["observeSystem", "observeModel"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "observeModel",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "observeSystem",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "renderContentOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +_st(self)._renderHeadOn_(html);
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["renderHeadOn:", "renderContentOn:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "renderHeadOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +$1=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($1)._class_("list-label");
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +_st(html)._with_(_st(self)._label());
 | 
	
		
			
				|  |  | +return _st(self)._renderMenuOn_(html);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderHeadOn:",{html:html},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["class:", "div", "with:", "label", "renderMenuOn:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "renderMenuOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +var commands;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1,$2,$3,$5,$6,$7,$9,$10,$8,$4;
 | 
	
		
			
				|  |  | +commands=_st(self)._menuCommands();
 | 
	
		
			
				|  |  | +$1=_st(commands)._isEmpty();
 | 
	
		
			
				|  |  |  if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -active=true;
 | 
	
		
			
				|  |  | -active;
 | 
	
		
			
				|  |  | -_st(self)._activatePreviousListItem();
 | 
	
		
			
				|  |  | -delay=_st((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -interval=_st((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | -$2=_st(_st(_st(self)._wrapper())._asJQuery())._hasClass_(_st(self)._focusClass());
 | 
	
		
			
				|  |  | -if(smalltalk.assert($2)){
 | 
	
		
			
				|  |  | -return _st(self)._activatePreviousListItem();
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -active=false;
 | 
	
		
			
				|  |  | -active;
 | 
	
		
			
				|  |  | -$3=interval;
 | 
	
		
			
				|  |  | -if(($receiver = $3) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$3;
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -_st(interval)._clearInterval();
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -$4=delay;
 | 
	
		
			
				|  |  | -if(($receiver = $4) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -return $4;
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -return _st(delay)._clearTimeout();
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}))._valueWithInterval_(repeatInterval);
 | 
	
		
			
				|  |  | -return interval;
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
 | 
	
		
			
				|  |  | -delay;
 | 
	
		
			
				|  |  | +$2=self;
 | 
	
		
			
				|  |  | +return $2;
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  | -$5=_st(_st(_st(e)._which()).__eq((40)))._and_((function(){
 | 
	
		
			
				|  |  | +$3=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($3)._class_("btn-group cog");
 | 
	
		
			
				|  |  | +$4=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$5=_st(html)._a();
 | 
	
		
			
				|  |  | +_st($5)._class_("btn dropdown-toggle");
 | 
	
		
			
				|  |  | +_st($5)._at_put_("data-toggle","dropdown");
 | 
	
		
			
				|  |  | +$6=_st($5)._with_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(active).__eq(false);
 | 
	
		
			
				|  |  | +return _st(_st(html)._tag_("i"))._class_("icon-cog");
 | 
	
		
			
				|  |  |  }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -if(smalltalk.assert($5)){
 | 
	
		
			
				|  |  | -active=true;
 | 
	
		
			
				|  |  | -active;
 | 
	
		
			
				|  |  | -_st(self)._activateNextListItem();
 | 
	
		
			
				|  |  | -delay=_st((function(){
 | 
	
		
			
				|  |  | +$6;
 | 
	
		
			
				|  |  | +$7=_st(html)._ul();
 | 
	
		
			
				|  |  | +_st($7)._class_("dropdown-menu pull-right");
 | 
	
		
			
				|  |  | +$8=_st($7)._with_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -interval=_st((function(){
 | 
	
		
			
				|  |  | +return _st(_st(self)._menuCommands())._do_((function(each){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | -$6=_st(_st(_st(self)._wrapper())._asJQuery())._hasClass_(_st(self)._focusClass());
 | 
	
		
			
				|  |  | -if(smalltalk.assert($6)){
 | 
	
		
			
				|  |  | -return _st(self)._activateNextListItem();
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -active=false;
 | 
	
		
			
				|  |  | -active;
 | 
	
		
			
				|  |  | -$7=interval;
 | 
	
		
			
				|  |  | -if(($receiver = $7) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$7;
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -_st(interval)._clearInterval();
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -$8=delay;
 | 
	
		
			
				|  |  | -if(($receiver = $8) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +return _st(_st(html)._li())._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx5) {
 | 
	
		
			
				|  |  | +$9=_st(html)._a();
 | 
	
		
			
				|  |  | +_st($9)._with_(_st(each)._menuLabel());
 | 
	
		
			
				|  |  | +$10=_st($9)._onClick_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx6) {
 | 
	
		
			
				|  |  | +return _st(self)._execute_(each);
 | 
	
		
			
				|  |  | +}, function($ctx6) {$ctx6.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return $10;
 | 
	
		
			
				|  |  | +}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  |  return $8;
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -return _st(delay)._clearTimeout();
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}))._valueWithInterval_(repeatInterval);
 | 
	
		
			
				|  |  | -return interval;
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
 | 
	
		
			
				|  |  | -return delay;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
 | 
	
		
			
				|  |  | -_st(_st(_st(self)._wrapper())._asJQuery())._keyup_((function(e){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$9=active;
 | 
	
		
			
				|  |  | -if(smalltalk.assert($9)){
 | 
	
		
			
				|  |  | -active=false;
 | 
	
		
			
				|  |  | -active;
 | 
	
		
			
				|  |  | -$10=interval;
 | 
	
		
			
				|  |  | -if(($receiver = $10) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$10;
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -_st(interval)._clearInterval();
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -$11=delay;
 | 
	
		
			
				|  |  | -if(($receiver = $11) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -return $11;
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -return _st(delay)._clearTimeout();
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{active:active,interval:interval,delay:delay,repeatInterval:repeatInterval},smalltalk.HLListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["unbind:", "asJQuery", "wrapper", "keydown:", "ifTrue:", "activatePreviousListItem", "valueWithTimeout:", "valueWithInterval:", "ifTrue:ifFalse:", "ifNotNil:", "clearInterval", "clearTimeout", "hasClass:", "focusClass", "and:", "=", "which", "activateNextListItem", "keyup:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderMenuOn:",{html:html,commands:commands},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["menuCommands", "ifTrue:", "isEmpty", "class:", "div", "with:", "a", "at:put:", "tag:", "ul", "do:", "menuLabel", "onClick:", "execute:", "li"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "selectedItem:",
 | 
	
		
			
				|  |  | +fn: function (anItem){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget.fn.prototype._selectedItem_.apply(_st(self), [anItem]);
 | 
	
		
			
				|  |  | +_st(self)._updateMenu();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"selectedItem:",{anItem:anItem},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["selectedItem:", "updateMenu"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "unregister",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +smalltalk.HLNavigationListWidget.fn.prototype._unregister.apply(_st(self), []);
 | 
	
		
			
				|  |  | +_st(_st(_st(self)._model())._announcer())._unsubscribe_(self);
 | 
	
		
			
				|  |  | +_st(_st(_st(self)._model())._systemAnnouncer())._unsubscribe_(self);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["unregister", "unsubscribe:", "announcer", "model", "systemAnnouncer"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "updateMenu",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_(".cog"))._remove();
 | 
	
		
			
				|  |  | +_st((function(html){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(self)._renderMenuOn_(html);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_(_st(_st(_st(self)._wrapper())._asJQuery())._find_(".list-label"));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"updateMenu",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | +messageSends: ["remove", "find:", "asJQuery", "wrapper", "appendToJQuery:", "renderMenuOn:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "on:",
 | 
	
		
			
				|  |  | +fn: function (aModel){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $2,$3,$1;
 | 
	
		
			
				|  |  | +$2=_st(self)._new();
 | 
	
		
			
				|  |  | +_st($2)._model_(aModel);
 | 
	
		
			
				|  |  | +$3=_st($2)._yourself();
 | 
	
		
			
				|  |  | +$1=$3;
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"on:",{aModel:aModel},smalltalk.HLToolListWidget.klass)})},
 | 
	
		
			
				|  |  | +messageSends: ["model:", "new", "yourself"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLToolListWidget.klass);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.addClass('HLNavigationListWidget', smalltalk.HLListWidget, ['previous', 'next'], 'Helios-Core');
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLManager', smalltalk.HLWidget, ['tabs', 'activeTab', 'keyBinder', 'environment', 'history'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "next",
 | 
	
		
			
				|  |  | +selector: "activate:",
 | 
	
		
			
				|  |  | +fn: function (aTab){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +_st(_st(self)._keyBinder())._flushBindings();
 | 
	
		
			
				|  |  | +_st(aTab)._registerBindings();
 | 
	
		
			
				|  |  | +self["@activeTab"]=aTab;
 | 
	
		
			
				|  |  | +$1=self;
 | 
	
		
			
				|  |  | +_st($1)._refresh();
 | 
	
		
			
				|  |  | +_st($1)._addToHistory_(aTab);
 | 
	
		
			
				|  |  | +$2=_st($1)._show_(aTab);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"activate:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["flushBindings", "keyBinder", "registerBindings", "refresh", "addToHistory:", "show:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "activeTab",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $1;
 | 
	
		
			
				|  |  | -$1=self["@next"];
 | 
	
		
			
				|  |  | +$1=self["@activeTab"];
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"next",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"activeTab",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "next:",
 | 
	
		
			
				|  |  | -fn: function (aWidget){
 | 
	
		
			
				|  |  | +selector: "addTab:",
 | 
	
		
			
				|  |  | +fn: function (aTab){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -self["@next"]=aWidget;
 | 
	
		
			
				|  |  | -$1=_st(_st(aWidget)._previous()).__eq(self);
 | 
	
		
			
				|  |  | -if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -_st(aWidget)._previous_(self);
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"next:",{aWidget:aWidget},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifFalse:", "previous:", "=", "previous"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  | +_st(_st(self)._tabs())._add_(aTab);
 | 
	
		
			
				|  |  | +_st(self)._activate_(aTab);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"addTab:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["add:", "tabs", "activate:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "nextFocus",
 | 
	
		
			
				|  |  | +selector: "addToHistory:",
 | 
	
		
			
				|  |  | +fn: function (aTab){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +_st(self)._removeFromHistory_(aTab);
 | 
	
		
			
				|  |  | +_st(_st(self)._history())._add_(aTab);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"addToHistory:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["removeFromHistory:", "add:", "history"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "confirm:ifFalse:",
 | 
	
		
			
				|  |  | +fn: function (aString,aBlock){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +function $HLConfirmation(){return smalltalk.HLConfirmation||(typeof HLConfirmation=="undefined"?nil:HLConfirmation)}
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +$1=_st($HLConfirmation())._new();
 | 
	
		
			
				|  |  | +_st($1)._confirmationString_(aString);
 | 
	
		
			
				|  |  | +_st($1)._cancelBlock_(aBlock);
 | 
	
		
			
				|  |  | +$2=_st($1)._yourself();
 | 
	
		
			
				|  |  | +_st($2)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"confirm:ifFalse:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["appendToJQuery:", "asJQuery", "confirmationString:", "new", "cancelBlock:", "yourself"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "confirm:ifTrue:",
 | 
	
		
			
				|  |  | +fn: function (aString,aBlock){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +function $HLConfirmation(){return smalltalk.HLConfirmation||(typeof HLConfirmation=="undefined"?nil:HLConfirmation)}
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +$1=_st($HLConfirmation())._new();
 | 
	
		
			
				|  |  | +_st($1)._confirmationString_(aString);
 | 
	
		
			
				|  |  | +_st($1)._actionBlock_(aBlock);
 | 
	
		
			
				|  |  | +$2=_st($1)._yourself();
 | 
	
		
			
				|  |  | +_st($2)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"confirm:ifTrue:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["appendToJQuery:", "asJQuery", "confirmationString:", "new", "actionBlock:", "yourself"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "defaultEnvironment",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +var parent;
 | 
	
		
			
				|  |  | +function $Environment(){return smalltalk.Environment||(typeof Environment=="undefined"?nil:Environment)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -$1=_st(self)._next();
 | 
	
		
			
				|  |  | +var $1,$2,$3,$4;
 | 
	
		
			
				|  |  | +$1=_st(window)._opener();
 | 
	
		
			
				|  |  |  if(($receiver = $1) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$1;
 | 
	
		
			
				|  |  | +parent=_st(window)._parent();
 | 
	
		
			
				|  |  |  } else {
 | 
	
		
			
				|  |  | -_st(_st(self)._next())._focus();
 | 
	
		
			
				|  |  | +parent=$1;
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"nextFocus",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNotNil:", "focus", "next"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  | +$2=parent;
 | 
	
		
			
				|  |  | +if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +$3=_st($Environment())._new();
 | 
	
		
			
				|  |  | +return $3;
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +$4=_st(_st(_st(parent)._at_("smalltalk"))._at_("Environment"))._new();
 | 
	
		
			
				|  |  | +return $4;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"defaultEnvironment",{parent:parent},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:", "parent", "opener", "new", "at:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "previous",
 | 
	
		
			
				|  |  | +selector: "environment",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -$1=self["@previous"];
 | 
	
		
			
				|  |  | +var $2,$1;
 | 
	
		
			
				|  |  | +$2=self["@environment"];
 | 
	
		
			
				|  |  | +if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +self["@environment"]=_st(self)._defaultEnvironment();
 | 
	
		
			
				|  |  | +$1=self["@environment"];
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$1=$2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"previous",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"environment",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:", "defaultEnvironment"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "previous:",
 | 
	
		
			
				|  |  | -fn: function (aWidget){
 | 
	
		
			
				|  |  | +selector: "environment:",
 | 
	
		
			
				|  |  | +fn: function (anEnvironment){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -self["@previous"]=aWidget;
 | 
	
		
			
				|  |  | -$1=_st(_st(aWidget)._next()).__eq(self);
 | 
	
		
			
				|  |  | -if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -_st(aWidget)._next_(self);
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"previous:",{aWidget:aWidget},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifFalse:", "next:", "=", "next"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  | +self["@environment"]=anEnvironment;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"environment:",{anEnvironment:anEnvironment},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "previousFocus",
 | 
	
		
			
				|  |  | +selector: "history",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -$1=_st(self)._previous();
 | 
	
		
			
				|  |  | -if(($receiver = $1) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$1;
 | 
	
		
			
				|  |  | +var $2,$1;
 | 
	
		
			
				|  |  | +$2=self["@history"];
 | 
	
		
			
				|  |  | +if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +self["@history"]=_st($OrderedCollection())._new();
 | 
	
		
			
				|  |  | +$1=self["@history"];
 | 
	
		
			
				|  |  |  } else {
 | 
	
		
			
				|  |  | -_st(_st(self)._previous())._focus();
 | 
	
		
			
				|  |  | +$1=$2;
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"previousFocus",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNotNil:", "focus", "previous"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"history",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:", "new"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "setupKeyBindings",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "history:",
 | 
	
		
			
				|  |  | +fn: function (aCollection){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -smalltalk.HLListWidget.fn.prototype._setupKeyBindings.apply(_st(self), []);
 | 
	
		
			
				|  |  | -_st(_st(_st(self)._wrapper())._asJQuery())._keydown_((function(e){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$1=_st(_st(e)._which()).__eq((39));
 | 
	
		
			
				|  |  | -if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -_st(self)._nextFocus();
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -$2=_st(_st(e)._which()).__eq((37));
 | 
	
		
			
				|  |  | -if(smalltalk.assert($2)){
 | 
	
		
			
				|  |  | -return _st(self)._previousFocus();
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{},smalltalk.HLNavigationListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["setupKeyBindings", "keydown:", "ifTrue:", "nextFocus", "=", "which", "previousFocus", "asJQuery", "wrapper"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +self["@history"]=aCollection;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"history:",{aCollection:aCollection},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "initialize",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +function $HLInspector(){return smalltalk.HLInspector||(typeof HLInspector=="undefined"?nil:HLInspector)}
 | 
	
		
			
				|  |  | +function $ErrorHandler(){return smalltalk.ErrorHandler||(typeof ErrorHandler=="undefined"?nil:ErrorHandler)}
 | 
	
		
			
				|  |  | +function $ProgressHandler(){return smalltalk.ProgressHandler||(typeof ProgressHandler=="undefined"?nil:ProgressHandler)}
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +smalltalk.HLWidget.fn.prototype._initialize.apply(_st(self), []);
 | 
	
		
			
				|  |  | +_st(self)._registerInspector_($HLInspector());
 | 
	
		
			
				|  |  | +_st(self)._registerErrorHandler_(_st($ErrorHandler())._current());
 | 
	
		
			
				|  |  | +_st(self)._registerProgressHandler_(_st($ProgressHandler())._current());
 | 
	
		
			
				|  |  | +_st(_st(self)._keyBinder())._setupEvents();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["initialize", "registerInspector:", "registerErrorHandler:", "current", "registerProgressHandler:", "setupEvents", "keyBinder"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.addClass('HLToolListWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activateListItem:",
 | 
	
		
			
				|  |  | -fn: function (anItem){
 | 
	
		
			
				|  |  | +selector: "keyBinder",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +function $HLKeyBinder(){return smalltalk.HLKeyBinder||(typeof HLKeyBinder=="undefined"?nil:HLKeyBinder)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._model())._withChangesDo_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return smalltalk.HLNavigationListWidget.fn.prototype._activateListItem_.apply(_st(self), [anItem]);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"activateListItem:",{anItem:anItem},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["withChangesDo:", "activateListItem:", "model"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +var $2,$1;
 | 
	
		
			
				|  |  | +$2=self["@keyBinder"];
 | 
	
		
			
				|  |  | +if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +self["@keyBinder"]=_st($HLKeyBinder())._new();
 | 
	
		
			
				|  |  | +$1=self["@keyBinder"];
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$1=$2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"keyBinder",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:", "new"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activateNextListItem",
 | 
	
		
			
				|  |  | +selector: "refresh",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._model())._withChangesDo_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return smalltalk.HLNavigationListWidget.fn.prototype._activateNextListItem.apply(_st(self), []);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"activateNextListItem",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["withChangesDo:", "activateNextListItem", "model"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +_st(_st(window)._jQuery_(".navbar"))._remove();
 | 
	
		
			
				|  |  | +_st(self)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["remove", "jQuery:", "appendToJQuery:", "asJQuery"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activatePreviousListItem",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "registerErrorHandler:",
 | 
	
		
			
				|  |  | +fn: function (anErrorHandler){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._model())._withChangesDo_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return smalltalk.HLNavigationListWidget.fn.prototype._activatePreviousListItem.apply(_st(self), []);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"activatePreviousListItem",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["withChangesDo:", "activatePreviousListItem", "model"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +_st(_st(self)._environment())._registerErrorHandler_(anErrorHandler);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"registerErrorHandler:",{anErrorHandler:anErrorHandler},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["registerErrorHandler:", "environment"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "commandCategory",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "registerInspector:",
 | 
	
		
			
				|  |  | +fn: function (anInspector){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -$1=_st(self)._label();
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"commandCategory",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["label"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +_st(_st(self)._environment())._registerInspector_(anInspector);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"registerInspector:",{anInspector:anInspector},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["registerInspector:", "environment"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "label",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "registerProgressHandler:",
 | 
	
		
			
				|  |  | +fn: function (aProgressHandler){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return "List";
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +_st(_st(self)._environment())._registerProgressHandler_(aProgressHandler);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"registerProgressHandler:",{aProgressHandler:aProgressHandler},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["registerProgressHandler:", "environment"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "menuCommands",
 | 
	
		
			
				|  |  | +selector: "removeActiveTab",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $HLToolCommand(){return smalltalk.HLToolCommand||(typeof HLToolCommand=="undefined"?nil:HLToolCommand)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -$1=_st(_st(_st(_st($HLToolCommand())._concreteClasses())._select_((function(each){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(each)._isValidFor_(_st(self)._model());
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(each)._for_(_st(self)._model());
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._select_((function(each){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(_st(_st(each)._category()).__eq(_st(self)._commandCategory()))._and_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(_st(each)._isAction())._and_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | -return _st(each)._isActive();
 | 
	
		
			
				|  |  | -}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"menuCommands",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["select:", "and:", "isActive", "isAction", "=", "commandCategory", "category", "collect:", "for:", "model", "isValidFor:", "concreteClasses"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +_st(self)._removeTab_(_st(self)._activeTab());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"removeActiveTab",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["removeTab:", "activeTab"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "model",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "removeFromHistory:",
 | 
	
		
			
				|  |  | +fn: function (aTab){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -$1=self["@model"];
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +_st(self)._history_(_st(_st(self)._history())._reject_((function(each){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(each).__eq_eq(aTab);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"removeFromHistory:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["history:", "reject:", "==", "history"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "model:",
 | 
	
		
			
				|  |  | -fn: function (aBrowserModel){
 | 
	
		
			
				|  |  | +selector: "removeTab:",
 | 
	
		
			
				|  |  | +fn: function (aTab){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $1,$2;
 | 
	
		
			
				|  |  | -self["@model"]=aBrowserModel;
 | 
	
		
			
				|  |  | -$1=self;
 | 
	
		
			
				|  |  | -_st($1)._observeSystem();
 | 
	
		
			
				|  |  | -$2=_st($1)._observeModel();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"model:",{aBrowserModel:aBrowserModel},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["observeSystem", "observeModel"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +$1=_st(_st(self)._tabs())._includes_(aTab);
 | 
	
		
			
				|  |  | +if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +$2=self;
 | 
	
		
			
				|  |  | +return $2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +_st(self)._removeFromHistory_(aTab);
 | 
	
		
			
				|  |  | +_st(_st(self)._tabs())._remove_(aTab);
 | 
	
		
			
				|  |  | +_st(_st(self)._keyBinder())._flushBindings();
 | 
	
		
			
				|  |  | +_st(aTab)._remove();
 | 
	
		
			
				|  |  | +_st(self)._refresh();
 | 
	
		
			
				|  |  | +_st(_st(self)._history())._ifNotEmpty_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(_st(_st(self)._history())._last())._activate();
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"removeTab:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifFalse:", "includes:", "tabs", "removeFromHistory:", "remove:", "flushBindings", "keyBinder", "remove", "refresh", "ifNotEmpty:", "activate", "last", "history"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "observeModel",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "renderAddOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +function $HLWidget(){return smalltalk.HLWidget||(typeof HLWidget=="undefined"?nil:HLWidget)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +var $1,$3,$4,$5,$7,$8,$6,$2;
 | 
	
		
			
				|  |  | +$1=_st(html)._li();
 | 
	
		
			
				|  |  | +_st($1)._class_("dropdown");
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$3=_st(html)._a();
 | 
	
		
			
				|  |  | +_st($3)._class_("dropdown-toggle");
 | 
	
		
			
				|  |  | +_st($3)._at_put_("data-toggle","dropdown");
 | 
	
		
			
				|  |  | +$4=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +_st(html)._with_("Open...");
 | 
	
		
			
				|  |  | +return _st(_st(html)._tag_("b"))._class_("caret");
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +$4;
 | 
	
		
			
				|  |  | +$5=_st(html)._ul();
 | 
	
		
			
				|  |  | +_st($5)._class_("dropdown-menu");
 | 
	
		
			
				|  |  | +$6=_st($5)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +return _st(_st(_st(_st($HLWidget())._withAllSubclasses())._select_((function(each){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | +return _st(each)._canBeOpenAsTab();
 | 
	
		
			
				|  |  | +}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx1)})})))._sorted_((function(a,b){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | +return _st(_st(a)._tabPriority()).__lt(_st(b)._tabPriority());
 | 
	
		
			
				|  |  | +}, function($ctx4) {$ctx4.fillBlock({a:a,b:b},$ctx1)})})))._do_((function(each){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | +return _st(_st(html)._li())._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx5) {
 | 
	
		
			
				|  |  | +$7=_st(html)._a();
 | 
	
		
			
				|  |  | +_st($7)._with_(_st(each)._tabLabel());
 | 
	
		
			
				|  |  | +$8=_st($7)._onClick_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx6) {
 | 
	
		
			
				|  |  | +return _st(each)._openAsTab();
 | 
	
		
			
				|  |  | +}, function($ctx6) {$ctx6.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return $8;
 | 
	
		
			
				|  |  | +}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return $6;
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderAddOn:",{html:html},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["class:", "li", "with:", "a", "at:put:", "tag:", "ul", "do:", "tabLabel", "onClick:", "openAsTab", "sorted:", "<", "tabPriority", "select:", "canBeOpenAsTab", "withAllSubclasses"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "observeSystem",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "renderContentOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +var $1,$3,$4,$2;
 | 
	
		
			
				|  |  | +$1=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($1)._class_("navbar navbar-fixed-top");
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$3=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($3)._class_("navbar-inner");
 | 
	
		
			
				|  |  | +$4=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +return _st(self)._renderTabsOn_(html);
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return $4;
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["class:", "div", "with:", "renderTabsOn:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderContentOn:",
 | 
	
		
			
				|  |  | +selector: "renderTabsOn:",
 | 
	
		
			
				|  |  |  fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._renderHeadOn_(html);
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget.fn.prototype._renderContentOn_.apply(_st(self), [html]);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["renderHeadOn:", "renderContentOn:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +var $1,$3,$4,$6,$5,$8,$9,$10,$11,$7,$2;
 | 
	
		
			
				|  |  | +$1=_st(html)._ul();
 | 
	
		
			
				|  |  | +_st($1)._class_("nav");
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +_st(_st(self)._tabs())._do_((function(each){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +$3=_st(html)._li();
 | 
	
		
			
				|  |  | +$4=$3;
 | 
	
		
			
				|  |  | +$6=_st(each)._isActive();
 | 
	
		
			
				|  |  | +if(smalltalk.assert($6)){
 | 
	
		
			
				|  |  | +$5="active";
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$5="inactive";
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +_st($4)._class_($5);
 | 
	
		
			
				|  |  | +$7=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | +$8=_st(html)._a();
 | 
	
		
			
				|  |  | +_st($8)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx5) {
 | 
	
		
			
				|  |  | +_st(_st(_st(html)._tag_("i"))._class_("close"))._onClick_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx6) {
 | 
	
		
			
				|  |  | +return _st(self)._removeTab_(each);
 | 
	
		
			
				|  |  | +}, function($ctx6) {$ctx6.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +$9=_st(html)._span();
 | 
	
		
			
				|  |  | +_st($9)._class_(_st(each)._cssClass());
 | 
	
		
			
				|  |  | +$10=_st($9)._with_(_st(each)._displayLabel());
 | 
	
		
			
				|  |  | +return $10;
 | 
	
		
			
				|  |  | +}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +$11=_st($8)._onClick_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx5) {
 | 
	
		
			
				|  |  | +return _st(each)._activate();
 | 
	
		
			
				|  |  | +}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return $11;
 | 
	
		
			
				|  |  | +}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return $7;
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | +return _st(self)._renderAddOn_(html);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderTabsOn:",{html:html},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["class:", "ul", "with:", "do:", "ifTrue:ifFalse:", "isActive", "li", "onClick:", "removeTab:", "tag:", "cssClass", "span", "displayLabel", "a", "activate", "tabs", "renderAddOn:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "request:do:",
 | 
	
		
			
				|  |  | +fn: function (aString,aBlock){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +_st(self)._request_value_do_(aString,"",aBlock);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"request:do:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["request:value:do:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderHeadOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "request:value:do:",
 | 
	
		
			
				|  |  | +fn: function (aString,valueString,aBlock){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +function $HLRequest(){return smalltalk.HLRequest||(typeof HLRequest=="undefined"?nil:HLRequest)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $1,$2;
 | 
	
		
			
				|  |  | -$1=_st(html)._div();
 | 
	
		
			
				|  |  | -_st($1)._class_("list-label");
 | 
	
		
			
				|  |  | -$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -_st(html)._with_(_st(self)._label());
 | 
	
		
			
				|  |  | -return _st(self)._renderMenuOn_(html);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderHeadOn:",{html:html},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["class:", "div", "with:", "label", "renderMenuOn:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +$1=_st($HLRequest())._new();
 | 
	
		
			
				|  |  | +_st($1)._confirmationString_(aString);
 | 
	
		
			
				|  |  | +_st($1)._actionBlock_(aBlock);
 | 
	
		
			
				|  |  | +_st($1)._value_(valueString);
 | 
	
		
			
				|  |  | +$2=_st($1)._yourself();
 | 
	
		
			
				|  |  | +_st($2)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"request:value:do:",{aString:aString,valueString:valueString,aBlock:aBlock},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["appendToJQuery:", "asJQuery", "confirmationString:", "new", "actionBlock:", "value:", "yourself"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderMenuOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "show:",
 | 
	
		
			
				|  |  | +fn: function (aTab){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -var commands;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2,$3,$5,$6,$7,$9,$10,$8,$4;
 | 
	
		
			
				|  |  | -commands=_st(self)._menuCommands();
 | 
	
		
			
				|  |  | -$1=_st(commands)._isEmpty();
 | 
	
		
			
				|  |  | -if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -$2=self;
 | 
	
		
			
				|  |  | -return $2;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -$3=_st(html)._div();
 | 
	
		
			
				|  |  | -_st($3)._class_("btn-group cog");
 | 
	
		
			
				|  |  | -$4=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | +var $1,$2;
 | 
	
		
			
				|  |  | +_st(_st(self)._tabs())._do_((function(each){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$5=_st(html)._a();
 | 
	
		
			
				|  |  | -_st($5)._class_("btn dropdown-toggle");
 | 
	
		
			
				|  |  | -_st($5)._at_put_("data-toggle","dropdown");
 | 
	
		
			
				|  |  | -$6=_st($5)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(_st(html)._tag_("i"))._class_("icon-cog");
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$6;
 | 
	
		
			
				|  |  | -$7=_st(html)._ul();
 | 
	
		
			
				|  |  | -_st($7)._class_("dropdown-menu pull-right");
 | 
	
		
			
				|  |  | -$8=_st($7)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(_st(self)._menuCommands())._do_((function(each){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | -return _st(_st(html)._li())._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx5) {
 | 
	
		
			
				|  |  | -$9=_st(html)._a();
 | 
	
		
			
				|  |  | -_st($9)._with_(_st(each)._menuLabel());
 | 
	
		
			
				|  |  | -$10=_st($9)._onClick_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx6) {
 | 
	
		
			
				|  |  | -return _st(self)._execute_(each);
 | 
	
		
			
				|  |  | -}, function($ctx6) {$ctx6.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $10;
 | 
	
		
			
				|  |  | -}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $8;
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderMenuOn:",{html:html,commands:commands},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["menuCommands", "ifTrue:", "isEmpty", "class:", "div", "with:", "a", "at:put:", "tag:", "ul", "do:", "menuLabel", "onClick:", "execute:", "li"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +return _st(each)._hide();
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | +$1=aTab;
 | 
	
		
			
				|  |  | +_st($1)._show();
 | 
	
		
			
				|  |  | +$2=_st($1)._focus();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"show:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["do:", "hide", "tabs", "show", "focus"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "selectedItem:",
 | 
	
		
			
				|  |  | -fn: function (anItem){
 | 
	
		
			
				|  |  | +selector: "tabs",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget.fn.prototype._selectedItem_.apply(_st(self), [anItem]);
 | 
	
		
			
				|  |  | -_st(self)._updateMenu();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"selectedItem:",{anItem:anItem},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["selectedItem:", "updateMenu"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +var $2,$1;
 | 
	
		
			
				|  |  | +$2=self["@tabs"];
 | 
	
		
			
				|  |  | +if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +self["@tabs"]=_st($OrderedCollection())._new();
 | 
	
		
			
				|  |  | +$1=self["@tabs"];
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$1=$2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"tabs",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:", "new"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.HLManager.klass.iVarNames = ['current'];
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "unregister",
 | 
	
		
			
				|  |  | +selector: "current",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -smalltalk.HLNavigationListWidget.fn.prototype._unregister.apply(_st(self), []);
 | 
	
		
			
				|  |  | -_st(_st(_st(self)._model())._announcer())._unsubscribe_(self);
 | 
	
		
			
				|  |  | -_st(_st(_st(self)._model())._systemAnnouncer())._unsubscribe_(self);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["unregister", "unsubscribe:", "announcer", "model", "systemAnnouncer"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | +var $2,$1;
 | 
	
		
			
				|  |  | +$2=self["@current"];
 | 
	
		
			
				|  |  | +if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +self["@current"]=_st(_st(self)._basicNew())._initialize();
 | 
	
		
			
				|  |  | +$1=self["@current"];
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$1=$2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.HLManager.klass)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:", "initialize", "basicNew"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager.klass);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "updateMenu",
 | 
	
		
			
				|  |  | +selector: "initialize",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(_st(_st(self)._wrapper())._asJQuery())._find_(".cog"))._remove();
 | 
	
		
			
				|  |  | -_st((function(html){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(self)._renderMenuOn_(html);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_(_st(_st(_st(self)._wrapper())._asJQuery())._find_(".list-label"));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"updateMenu",{},smalltalk.HLToolListWidget)})},
 | 
	
		
			
				|  |  | -messageSends: ["remove", "find:", "asJQuery", "wrapper", "appendToJQuery:", "renderMenuOn:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +_st(_st(self)._current())._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLManager.klass)})},
 | 
	
		
			
				|  |  | +messageSends: ["appendToJQuery:", "asJQuery", "current"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager.klass);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "on:",
 | 
	
		
			
				|  |  | -fn: function (aModel){
 | 
	
		
			
				|  |  | +selector: "new",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $2,$3,$1;
 | 
	
		
			
				|  |  | -$2=_st(self)._new();
 | 
	
		
			
				|  |  | -_st($2)._model_(aModel);
 | 
	
		
			
				|  |  | -$3=_st($2)._yourself();
 | 
	
		
			
				|  |  | -$1=$3;
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"on:",{aModel:aModel},smalltalk.HLToolListWidget.klass)})},
 | 
	
		
			
				|  |  | -messageSends: ["model:", "new", "yourself"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLToolListWidget.klass);
 | 
	
		
			
				|  |  | +_st(self)._shouldNotImplement();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.HLManager.klass)})},
 | 
	
		
			
				|  |  | +messageSends: ["shouldNotImplement"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLManager.klass);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.addClass('HLManager', smalltalk.HLWidget, ['tabs', 'activeTab', 'keyBinder', 'environment', 'history'], 'Helios-Core');
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLModal', smalltalk.HLWidget, [], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activate:",
 | 
	
		
			
				|  |  | -fn: function (aTab){
 | 
	
		
			
				|  |  | +selector: "cancel",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -_st(_st(self)._keyBinder())._flushBindings();
 | 
	
		
			
				|  |  | -_st(aTab)._registerBindings();
 | 
	
		
			
				|  |  | -self["@activeTab"]=aTab;
 | 
	
		
			
				|  |  | -$1=self;
 | 
	
		
			
				|  |  | -_st($1)._refresh();
 | 
	
		
			
				|  |  | -_st($1)._addToHistory_(aTab);
 | 
	
		
			
				|  |  | -$2=_st($1)._show_(aTab);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"activate:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["flushBindings", "keyBinder", "registerBindings", "refresh", "addToHistory:", "show:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +_st(self)._remove();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"cancel",{},smalltalk.HLModal)})},
 | 
	
		
			
				|  |  | +messageSends: ["remove"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLModal);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "activeTab",
 | 
	
		
			
				|  |  | +selector: "cssClass",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1;
 | 
	
		
			
				|  |  | -$1=self["@activeTab"];
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"activeTab",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +return "";
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLModal)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +smalltalk.HLModal);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "addTab:",
 | 
	
		
			
				|  |  | -fn: function (aTab){
 | 
	
		
			
				|  |  | +selector: "remove",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._tabs())._add_(aTab);
 | 
	
		
			
				|  |  | -_st(self)._activate_(aTab);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"addTab:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["add:", "tabs", "activate:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +_st(_st(window)._jQuery_(".dialog"))._removeClass_("active");
 | 
	
		
			
				|  |  | +_st((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +_st(_st(window)._jQuery_("#overlay"))._remove();
 | 
	
		
			
				|  |  | +return _st(_st(window)._jQuery_(".dialog"))._remove();
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.HLModal)})},
 | 
	
		
			
				|  |  | +messageSends: ["removeClass:", "jQuery:", "valueWithTimeout:", "remove"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLModal);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "addToHistory:",
 | 
	
		
			
				|  |  | -fn: function (aTab){
 | 
	
		
			
				|  |  | +selector: "renderButtonsOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._removeFromHistory_(aTab);
 | 
	
		
			
				|  |  | -_st(_st(self)._history())._add_(aTab);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"addToHistory:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["removeFromHistory:", "add:", "history"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.HLModal)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLModal);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "confirm:ifFalse:",
 | 
	
		
			
				|  |  | -fn: function (aString,aBlock){
 | 
	
		
			
				|  |  | +selector: "renderContentOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $HLConfirmation(){return smalltalk.HLConfirmation||(typeof HLConfirmation=="undefined"?nil:HLConfirmation)}
 | 
	
		
			
				|  |  | +var confirmButton;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -$1=_st($HLConfirmation())._new();
 | 
	
		
			
				|  |  | -_st($1)._confirmationString_(aString);
 | 
	
		
			
				|  |  | -_st($1)._cancelBlock_(aBlock);
 | 
	
		
			
				|  |  | -$2=_st($1)._yourself();
 | 
	
		
			
				|  |  | -_st($2)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"confirm:ifFalse:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["appendToJQuery:", "asJQuery", "confirmationString:", "new", "cancelBlock:", "yourself"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +var $1,$3,$4,$2;
 | 
	
		
			
				|  |  | +_st(_st(html)._div())._id_("overlay");
 | 
	
		
			
				|  |  | +$1=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($1)._class_(_st("dialog ").__comma(_st(self)._cssClass()));
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$3=self;
 | 
	
		
			
				|  |  | +_st($3)._renderMainOn_(html);
 | 
	
		
			
				|  |  | +$4=_st($3)._renderButtonsOn_(html);
 | 
	
		
			
				|  |  | +return $4;
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +_st(_st(window)._jQuery_(".dialog"))._addClass_("active");
 | 
	
		
			
				|  |  | +_st(self)._setupKeyBindings();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html,confirmButton:confirmButton},smalltalk.HLModal)})},
 | 
	
		
			
				|  |  | +messageSends: ["id:", "div", "class:", ",", "cssClass", "with:", "renderMainOn:", "renderButtonsOn:", "addClass:", "jQuery:", "setupKeyBindings"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLModal);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "confirm:ifTrue:",
 | 
	
		
			
				|  |  | -fn: function (aString,aBlock){
 | 
	
		
			
				|  |  | -var self=this;
 | 
	
		
			
				|  |  | -function $HLConfirmation(){return smalltalk.HLConfirmation||(typeof HLConfirmation=="undefined"?nil:HLConfirmation)}
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -$1=_st($HLConfirmation())._new();
 | 
	
		
			
				|  |  | -_st($1)._confirmationString_(aString);
 | 
	
		
			
				|  |  | -_st($1)._actionBlock_(aBlock);
 | 
	
		
			
				|  |  | -$2=_st($1)._yourself();
 | 
	
		
			
				|  |  | -_st($2)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"confirm:ifTrue:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["appendToJQuery:", "asJQuery", "confirmationString:", "new", "actionBlock:", "yourself"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +selector: "renderMainOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLModal)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLModal);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "defaultEnvironment",
 | 
	
		
			
				|  |  | +selector: "setupKeyBindings",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -var parent;
 | 
	
		
			
				|  |  | -function $Environment(){return smalltalk.Environment||(typeof Environment=="undefined"?nil:Environment)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2,$3,$4;
 | 
	
		
			
				|  |  | -$1=_st(window)._opener();
 | 
	
		
			
				|  |  | -if(($receiver = $1) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -parent=_st(window)._parent();
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -parent=$1;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -$2=parent;
 | 
	
		
			
				|  |  | -if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -$3=_st($Environment())._new();
 | 
	
		
			
				|  |  | -return $3;
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$2;
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +_st(_st(window)._jQuery_(".dialog"))._keyup_((function(e){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$1=_st(_st(e)._keyCode()).__eq((27));
 | 
	
		
			
				|  |  | +if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +return _st(self)._cancel();
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  | -$4=_st(_st(_st(parent)._at_("smalltalk"))._at_("Environment"))._new();
 | 
	
		
			
				|  |  | -return $4;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"defaultEnvironment",{parent:parent},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:", "parent", "opener", "new", "at:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{},smalltalk.HLModal)})},
 | 
	
		
			
				|  |  | +messageSends: ["keyup:", "ifTrue:", "cancel", "=", "keyCode", "jQuery:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLModal);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLConfirmation', smalltalk.HLModal, ['confirmationString', 'actionBlock', 'cancelBlock'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "environment",
 | 
	
		
			
				|  |  | +selector: "actionBlock",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@environment"];
 | 
	
		
			
				|  |  | +$2=self["@actionBlock"];
 | 
	
		
			
				|  |  |  if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -self["@environment"]=_st(self)._defaultEnvironment();
 | 
	
		
			
				|  |  | -$1=self["@environment"];
 | 
	
		
			
				|  |  | +$1=(function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
 | 
	
		
			
				|  |  |  } else {
 | 
	
		
			
				|  |  |  $1=$2;
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"environment",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:", "defaultEnvironment"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"actionBlock",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "environment:",
 | 
	
		
			
				|  |  | -fn: function (anEnvironment){
 | 
	
		
			
				|  |  | +selector: "actionBlock:",
 | 
	
		
			
				|  |  | +fn: function (aBlock){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@environment"]=anEnvironment;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"environment:",{anEnvironment:anEnvironment},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +self["@actionBlock"]=aBlock;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"actionBlock:",{aBlock:aBlock},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "history",
 | 
	
		
			
				|  |  | +selector: "cancel",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +_st(_st(self)._cancelBlock())._value();
 | 
	
		
			
				|  |  | +_st(self)._remove();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"cancel",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: ["value", "cancelBlock", "remove"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "cancelBlock",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@history"];
 | 
	
		
			
				|  |  | +$2=self["@cancelBlock"];
 | 
	
		
			
				|  |  |  if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -self["@history"]=_st($OrderedCollection())._new();
 | 
	
		
			
				|  |  | -$1=self["@history"];
 | 
	
		
			
				|  |  | +$1=(function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
 | 
	
		
			
				|  |  |  } else {
 | 
	
		
			
				|  |  |  $1=$2;
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"history",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:", "new"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"cancelBlock",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "history:",
 | 
	
		
			
				|  |  | -fn: function (aCollection){
 | 
	
		
			
				|  |  | +selector: "cancelBlock:",
 | 
	
		
			
				|  |  | +fn: function (aBlock){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -self["@history"]=aCollection;
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"history:",{aCollection:aCollection},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | +self["@cancelBlock"]=aBlock;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"cancelBlock:",{aBlock:aBlock},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  |  messageSends: []}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "initialize",
 | 
	
		
			
				|  |  | +selector: "confirm",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $HLInspector(){return smalltalk.HLInspector||(typeof HLInspector=="undefined"?nil:HLInspector)}
 | 
	
		
			
				|  |  | -function $HLErrorHandler(){return smalltalk.HLErrorHandler||(typeof HLErrorHandler=="undefined"?nil:HLErrorHandler)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -smalltalk.HLWidget.fn.prototype._initialize.apply(_st(self), []);
 | 
	
		
			
				|  |  | -_st(self)._registerInspector_($HLInspector());
 | 
	
		
			
				|  |  | -_st(self)._registerErrorHandler_($HLErrorHandler());
 | 
	
		
			
				|  |  | -_st(_st(self)._keyBinder())._setupEvents();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["initialize", "registerInspector:", "registerErrorHandler:", "setupEvents", "keyBinder"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +_st(_st(self)._actionBlock())._value();
 | 
	
		
			
				|  |  | +_st(self)._remove();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"confirm",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: ["value", "actionBlock", "remove"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "keyBinder",
 | 
	
		
			
				|  |  | +selector: "confirmationString",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $HLKeyBinder(){return smalltalk.HLKeyBinder||(typeof HLKeyBinder=="undefined"?nil:HLKeyBinder)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  |  var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@keyBinder"];
 | 
	
		
			
				|  |  | +$2=self["@confirmationString"];
 | 
	
		
			
				|  |  |  if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -self["@keyBinder"]=_st($HLKeyBinder())._new();
 | 
	
		
			
				|  |  | -$1=self["@keyBinder"];
 | 
	
		
			
				|  |  | +$1="Confirm";
 | 
	
		
			
				|  |  |  } else {
 | 
	
		
			
				|  |  |  $1=$2;
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"keyBinder",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:", "new"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"confirmationString",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "refresh",
 | 
	
		
			
				|  |  | +selector: "confirmationString:",
 | 
	
		
			
				|  |  | +fn: function (aString){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +self["@confirmationString"]=aString;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"confirmationString:",{aString:aString},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "remove",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(window)._jQuery_(".navbar"))._remove();
 | 
	
		
			
				|  |  | -_st(self)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["remove", "jQuery:", "appendToJQuery:", "asJQuery"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +_st(_st(window)._jQuery_(".dialog"))._removeClass_("active");
 | 
	
		
			
				|  |  | +_st((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +_st(_st(window)._jQuery_("#overlay"))._remove();
 | 
	
		
			
				|  |  | +return _st(_st(window)._jQuery_(".dialog"))._remove();
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: ["removeClass:", "jQuery:", "valueWithTimeout:", "remove"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "registerErrorHandler:",
 | 
	
		
			
				|  |  | -fn: function (anErrorHandler){
 | 
	
		
			
				|  |  | +selector: "renderButtonsOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | +var confirmButton;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._environment())._registerErrorHandler_(anErrorHandler);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"registerErrorHandler:",{anErrorHandler:anErrorHandler},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["registerErrorHandler:", "environment"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +var $1,$3,$4,$5,$6,$2;
 | 
	
		
			
				|  |  | +$1=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($1)._class_("buttons");
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +$3=_st(html)._button();
 | 
	
		
			
				|  |  | +_st($3)._class_("button");
 | 
	
		
			
				|  |  | +_st($3)._with_("Cancel");
 | 
	
		
			
				|  |  | +$4=_st($3)._onClick_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +return _st(self)._cancel();
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
 | 
	
		
			
				|  |  | +$4;
 | 
	
		
			
				|  |  | +$5=_st(html)._button();
 | 
	
		
			
				|  |  | +_st($5)._class_("button default");
 | 
	
		
			
				|  |  | +_st($5)._with_("Confirm");
 | 
	
		
			
				|  |  | +$6=_st($5)._onClick_((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | +return _st(self)._confirm();
 | 
	
		
			
				|  |  | +}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
 | 
	
		
			
				|  |  | +confirmButton=$6;
 | 
	
		
			
				|  |  | +return confirmButton;
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +_st(_st(confirmButton)._asJQuery())._focus();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html,confirmButton:confirmButton},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: ["class:", "div", "with:", "button", "onClick:", "cancel", "confirm", "focus", "asJQuery"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "registerInspector:",
 | 
	
		
			
				|  |  | -fn: function (anInspector){
 | 
	
		
			
				|  |  | +selector: "renderMainOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._environment())._registerInspector_(anInspector);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"registerInspector:",{anInspector:anInspector},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["registerInspector:", "environment"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +_st(_st(html)._span())._with_(_st(self)._confirmationString());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLConfirmation)})},
 | 
	
		
			
				|  |  | +messageSends: ["with:", "confirmationString", "span"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLRequest', smalltalk.HLConfirmation, ['input', 'value'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "removeActiveTab",
 | 
	
		
			
				|  |  | +selector: "confirm",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._removeTab_(_st(self)._activeTab());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"removeActiveTab",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["removeTab:", "activeTab"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +_st(_st(self)._actionBlock())._value_(_st(_st(self["@input"])._asJQuery())._val());
 | 
	
		
			
				|  |  | +_st(self)._remove();
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"confirm",{},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | +messageSends: ["value:", "val", "asJQuery", "actionBlock", "remove"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLRequest);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "cssClass",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +return "large";
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLRequest);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "renderMainOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +smalltalk.HLConfirmation.fn.prototype._renderMainOn_.apply(_st(self), [html]);
 | 
	
		
			
				|  |  | +self["@input"]=_st(html)._textarea();
 | 
	
		
			
				|  |  | +_st(_st(self["@input"])._asJQuery())._val_(_st(self)._value());
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | +messageSends: ["renderMainOn:", "textarea", "val:", "value", "asJQuery"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLRequest);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addMethod(
 | 
	
		
			
				|  |  | +smalltalk.method({
 | 
	
		
			
				|  |  | +selector: "value",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  | +var self=this;
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | +var $2,$1;
 | 
	
		
			
				|  |  | +$2=self["@value"];
 | 
	
		
			
				|  |  | +if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | +$1="";
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +$1=$2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | +messageSends: ["ifNil:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLRequest);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "removeFromHistory:",
 | 
	
		
			
				|  |  | -fn: function (aTab){
 | 
	
		
			
				|  |  | +selector: "value:",
 | 
	
		
			
				|  |  | +fn: function (aString){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._history_(_st(_st(self)._history())._reject_((function(each){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(each).__eq_eq(aTab);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"removeFromHistory:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["history:", "reject:", "==", "history"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +self["@value"]=aString;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"value:",{aString:aString},smalltalk.HLRequest)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLRequest);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +smalltalk.addClass('HLProgress', smalltalk.HLModal, ['label', 'workBlock', 'collection', 'progressBar'], 'Helios-Core');
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "removeTab:",
 | 
	
		
			
				|  |  | -fn: function (aTab){
 | 
	
		
			
				|  |  | +selector: "collection",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -$1=_st(_st(self)._tabs())._includes_(aTab);
 | 
	
		
			
				|  |  | -if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | -$2=self;
 | 
	
		
			
				|  |  | -return $2;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -_st(self)._removeFromHistory_(aTab);
 | 
	
		
			
				|  |  | -_st(_st(self)._tabs())._remove_(aTab);
 | 
	
		
			
				|  |  | -_st(_st(self)._keyBinder())._flushBindings();
 | 
	
		
			
				|  |  | -_st(aTab)._remove();
 | 
	
		
			
				|  |  | -_st(self)._refresh();
 | 
	
		
			
				|  |  | -_st(_st(self)._history())._ifNotEmpty_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(_st(_st(self)._history())._last())._activate();
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"removeTab:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifFalse:", "includes:", "tabs", "removeFromHistory:", "remove:", "flushBindings", "keyBinder", "remove", "refresh", "ifNotEmpty:", "activate", "last", "history"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=self["@collection"];
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"collection",{},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderAddOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "collection:",
 | 
	
		
			
				|  |  | +fn: function (aCollection){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $HLWidget(){return smalltalk.HLWidget||(typeof HLWidget=="undefined"?nil:HLWidget)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$3,$4,$5,$7,$8,$6,$2;
 | 
	
		
			
				|  |  | -$1=_st(html)._li();
 | 
	
		
			
				|  |  | -_st($1)._class_("dropdown");
 | 
	
		
			
				|  |  | -$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$3=_st(html)._a();
 | 
	
		
			
				|  |  | -_st($3)._class_("dropdown-toggle");
 | 
	
		
			
				|  |  | -_st($3)._at_put_("data-toggle","dropdown");
 | 
	
		
			
				|  |  | -$4=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -_st(html)._with_("Open...");
 | 
	
		
			
				|  |  | -return _st(_st(html)._tag_("b"))._class_("caret");
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$4;
 | 
	
		
			
				|  |  | -$5=_st(html)._ul();
 | 
	
		
			
				|  |  | -_st($5)._class_("dropdown-menu");
 | 
	
		
			
				|  |  | -$6=_st($5)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(_st(_st(_st($HLWidget())._withAllSubclasses())._select_((function(each){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | -return _st(each)._canBeOpenAsTab();
 | 
	
		
			
				|  |  | -}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx1)})})))._sorted_((function(a,b){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | -return _st(_st(a)._tabPriority()).__lt(_st(b)._tabPriority());
 | 
	
		
			
				|  |  | -}, function($ctx4) {$ctx4.fillBlock({a:a,b:b},$ctx1)})})))._do_((function(each){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | -return _st(_st(html)._li())._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx5) {
 | 
	
		
			
				|  |  | -$7=_st(html)._a();
 | 
	
		
			
				|  |  | -_st($7)._with_(_st(each)._tabLabel());
 | 
	
		
			
				|  |  | -$8=_st($7)._onClick_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx6) {
 | 
	
		
			
				|  |  | -return _st(each)._openAsTab();
 | 
	
		
			
				|  |  | -}, function($ctx6) {$ctx6.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $8;
 | 
	
		
			
				|  |  | -}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $6;
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderAddOn:",{html:html},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["class:", "li", "with:", "a", "at:put:", "tag:", "ul", "do:", "tabLabel", "onClick:", "openAsTab", "sorted:", "<", "tabPriority", "select:", "canBeOpenAsTab", "withAllSubclasses"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +self["@collection"]=aCollection;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"collection:",{aCollection:aCollection},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderContentOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "evaluateAt:",
 | 
	
		
			
				|  |  | +fn: function (anInteger){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$3,$4,$2;
 | 
	
		
			
				|  |  | -$1=_st(html)._div();
 | 
	
		
			
				|  |  | -_st($1)._class_("navbar navbar-fixed-top");
 | 
	
		
			
				|  |  | -$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +_st(self)._updateProgress_(_st(_st(anInteger).__slash(_st(_st(self)._collection())._size())).__star((100)));
 | 
	
		
			
				|  |  | +$1=_st(_st(_st(self)._collection())._size()).__gt(anInteger);
 | 
	
		
			
				|  |  | +if(smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +_st((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$3=_st(html)._div();
 | 
	
		
			
				|  |  | -_st($3)._class_("navbar-inner");
 | 
	
		
			
				|  |  | -$4=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -return _st(self)._renderTabsOn_(html);
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $4;
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["class:", "div", "with:", "renderTabsOn:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +_st(_st(self)._workBlock())._value_(_st(_st(self)._collection())._at_(anInteger));
 | 
	
		
			
				|  |  | +return _st(self)._evaluateAt_(_st(anInteger).__plus((1)));
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((10));
 | 
	
		
			
				|  |  | +} else {
 | 
	
		
			
				|  |  | +_st((function(){
 | 
	
		
			
				|  |  | +return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | +return _st(self)._remove();
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((500));
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"evaluateAt:",{anInteger:anInteger},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: ["updateProgress:", "*", "/", "size", "collection", "ifTrue:ifFalse:", "valueWithTimeout:", "value:", "at:", "workBlock", "evaluateAt:", "+", "remove", ">"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "renderTabsOn:",
 | 
	
		
			
				|  |  | -fn: function (html){
 | 
	
		
			
				|  |  | +selector: "label",
 | 
	
		
			
				|  |  | +fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$3,$4,$6,$5,$8,$9,$10,$11,$7,$2;
 | 
	
		
			
				|  |  | -$1=_st(html)._ul();
 | 
	
		
			
				|  |  | -_st($1)._class_("nav");
 | 
	
		
			
				|  |  | -$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -_st(_st(self)._tabs())._do_((function(each){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx3) {
 | 
	
		
			
				|  |  | -$3=_st(html)._li();
 | 
	
		
			
				|  |  | -$4=$3;
 | 
	
		
			
				|  |  | -$6=_st(each)._isActive();
 | 
	
		
			
				|  |  | -if(smalltalk.assert($6)){
 | 
	
		
			
				|  |  | -$5="active";
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$5="inactive";
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -_st($4)._class_($5);
 | 
	
		
			
				|  |  | -$7=_st($3)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx4) {
 | 
	
		
			
				|  |  | -$8=_st(html)._a();
 | 
	
		
			
				|  |  | -_st($8)._with_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx5) {
 | 
	
		
			
				|  |  | -_st(_st(_st(html)._tag_("i"))._class_("close"))._onClick_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx6) {
 | 
	
		
			
				|  |  | -return _st(self)._removeTab_(each);
 | 
	
		
			
				|  |  | -}, function($ctx6) {$ctx6.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$9=_st(html)._span();
 | 
	
		
			
				|  |  | -_st($9)._class_(_st(each)._cssClass());
 | 
	
		
			
				|  |  | -$10=_st($9)._with_(_st(each)._displayLabel());
 | 
	
		
			
				|  |  | -return $10;
 | 
	
		
			
				|  |  | -}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -$11=_st($8)._onClick_((function(){
 | 
	
		
			
				|  |  | -return smalltalk.withContext(function($ctx5) {
 | 
	
		
			
				|  |  | -return _st(each)._activate();
 | 
	
		
			
				|  |  | -}, function($ctx5) {$ctx5.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $11;
 | 
	
		
			
				|  |  | -}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return $7;
 | 
	
		
			
				|  |  | -}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | -return _st(self)._renderAddOn_(html);
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"renderTabsOn:",{html:html},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["class:", "ul", "with:", "do:", "ifTrue:ifFalse:", "isActive", "li", "onClick:", "removeTab:", "tag:", "cssClass", "span", "displayLabel", "a", "activate", "tabs", "renderAddOn:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=self["@label"];
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "request:do:",
 | 
	
		
			
				|  |  | -fn: function (aString,aBlock){
 | 
	
		
			
				|  |  | +selector: "label:",
 | 
	
		
			
				|  |  | +fn: function (aString){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._request_value_do_(aString,"",aBlock);
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"request:do:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["request:value:do:"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +self["@label"]=aString;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"label:",{aString:aString},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "request:value:do:",
 | 
	
		
			
				|  |  | -fn: function (aString,valueString,aBlock){
 | 
	
		
			
				|  |  | +selector: "renderButtonsOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $HLRequest(){return smalltalk.HLRequest||(typeof HLRequest=="undefined"?nil:HLRequest)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -$1=_st($HLRequest())._new();
 | 
	
		
			
				|  |  | -_st($1)._confirmationString_(aString);
 | 
	
		
			
				|  |  | -_st($1)._actionBlock_(aBlock);
 | 
	
		
			
				|  |  | -_st($1)._value_(valueString);
 | 
	
		
			
				|  |  | -$2=_st($1)._yourself();
 | 
	
		
			
				|  |  | -_st($2)._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"request:value:do:",{aString:aString,valueString:valueString,aBlock:aBlock},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["appendToJQuery:", "asJQuery", "confirmationString:", "new", "actionBlock:", "value:", "yourself"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "show:",
 | 
	
		
			
				|  |  | -fn: function (aTab){
 | 
	
		
			
				|  |  | +selector: "renderMainOn:",
 | 
	
		
			
				|  |  | +fn: function (html){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $1,$2;
 | 
	
		
			
				|  |  | -_st(_st(self)._tabs())._do_((function(each){
 | 
	
		
			
				|  |  | +var $1,$3,$4,$2;
 | 
	
		
			
				|  |  | +_st(_st(html)._span())._with_(_st(self)._label());
 | 
	
		
			
				|  |  | +$1=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($1)._class_("progress");
 | 
	
		
			
				|  |  | +$2=_st($1)._with_((function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -return _st(each)._hide();
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
 | 
	
		
			
				|  |  | -$1=aTab;
 | 
	
		
			
				|  |  | -_st($1)._show();
 | 
	
		
			
				|  |  | -$2=_st($1)._focus();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"show:",{aTab:aTab},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["do:", "hide", "tabs", "show", "focus"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | +$3=_st(html)._div();
 | 
	
		
			
				|  |  | +_st($3)._class_("bar");
 | 
	
		
			
				|  |  | +$4=_st($3)._style_("width: 0%");
 | 
	
		
			
				|  |  | +self["@progressBar"]=$4;
 | 
	
		
			
				|  |  | +return self["@progressBar"];
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: ["with:", "label", "span", "class:", "div", "style:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "tabs",
 | 
	
		
			
				|  |  | +selector: "start",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  | -function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@tabs"];
 | 
	
		
			
				|  |  | -if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -self["@tabs"]=_st($OrderedCollection())._new();
 | 
	
		
			
				|  |  | -$1=self["@tabs"];
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$1=$2;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"tabs",{},smalltalk.HLManager)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:", "new"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +_st(self)._evaluateAt_((1));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"start",{},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: ["evaluateAt:"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -smalltalk.HLManager.klass.iVarNames = ['current'];
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "current",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "updateProgress:",
 | 
	
		
			
				|  |  | +fn: function (anInteger){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $2,$1;
 | 
	
		
			
				|  |  | -$2=self["@current"];
 | 
	
		
			
				|  |  | -if(($receiver = $2) == nil || $receiver == undefined){
 | 
	
		
			
				|  |  | -self["@current"]=_st(_st(self)._basicNew())._initialize();
 | 
	
		
			
				|  |  | -$1=self["@current"];
 | 
	
		
			
				|  |  | -} else {
 | 
	
		
			
				|  |  | -$1=$2;
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | -return $1;
 | 
	
		
			
				|  |  | -}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.HLManager.klass)})},
 | 
	
		
			
				|  |  | -messageSends: ["ifNil:", "initialize", "basicNew"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager.klass);
 | 
	
		
			
				|  |  | +_st(_st(self["@progressBar"])._asJQuery())._css_put_("width",_st(_st(anInteger)._asString()).__comma("%"));
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"updateProgress:",{anInteger:anInteger},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: ["css:put:", ",", "asString", "asJQuery"]}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "initialize",
 | 
	
		
			
				|  |  | +selector: "workBlock",
 | 
	
		
			
				|  |  |  fn: function (){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(_st(self)._current())._appendToJQuery_(_st("body")._asJQuery());
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLManager.klass)})},
 | 
	
		
			
				|  |  | -messageSends: ["appendToJQuery:", "asJQuery", "current"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager.klass);
 | 
	
		
			
				|  |  | +var $1;
 | 
	
		
			
				|  |  | +$1=self["@workBlock"];
 | 
	
		
			
				|  |  | +return $1;
 | 
	
		
			
				|  |  | +}, function($ctx1) {$ctx1.fill(self,"workBlock",{},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addMethod(
 | 
	
		
			
				|  |  |  smalltalk.method({
 | 
	
		
			
				|  |  | -selector: "new",
 | 
	
		
			
				|  |  | -fn: function (){
 | 
	
		
			
				|  |  | +selector: "workBlock:",
 | 
	
		
			
				|  |  | +fn: function (aBlock){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -_st(self)._shouldNotImplement();
 | 
	
		
			
				|  |  | -return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.HLManager.klass)})},
 | 
	
		
			
				|  |  | -messageSends: ["shouldNotImplement"]}),
 | 
	
		
			
				|  |  | -smalltalk.HLManager.klass);
 | 
	
		
			
				|  |  | +self["@workBlock"]=aBlock;
 | 
	
		
			
				|  |  | +return self}, function($ctx1) {$ctx1.fill(self,"workBlock:",{aBlock:aBlock},smalltalk.HLProgress)})},
 | 
	
		
			
				|  |  | +messageSends: []}),
 | 
	
		
			
				|  |  | +smalltalk.HLProgress);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  smalltalk.addClass('HLSUnit', smalltalk.HLWidget, [], 'Helios-Core');
 |