{"id":0,"registry":{"0":{"submorphs":[],"scripts":[],"id":"35E1F725-0955-44D3-8743-EE7BF76E4C9C","shape":{"__isSmartRef__":true,"id":1},"__layered_droppingEnabled__":true,"halosEnabled":true,"_ClipMode":"auto","eventHandler":{"__isSmartRef__":true,"id":2},"__serializedExpressions__":["_Position"],"itemList":[],"selectOnMove":false,"showsHalos":false,"name":"DropDownListWithActions","partsBinMetaInfo":{"__isSmartRef__":true,"id":3},"derivationIds":[6545],"_Rotation":0,"_Scale":1,"selectedLineNo":-1,"attributeConnections":[{"__isSmartRef__":true,"id":5},{"__isSmartRef__":true,"id":7}],"doNotSerialize":["$$selection"],"doNotCopyProperties":["$$selection"],"changeTriggered":true,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":9},"__LivelyClassName__":"lively.morphic.DropDownList","__SourceModuleName__":"Global.lively.morphic.Lists","_Position":"lively.pt(0.0,0.0)"},"1":{"__serializedExpressions__":["_Position","_Extent","_BorderColor","_Fill","_Padding"],"_BorderWidth":0,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes","_Position":"lively.pt(0.0,0.0)","_Extent":"lively.pt(151.0,22.0)","_BorderColor":"Color.rgb(0,0,0)","_Fill":"Color.rgb(243,243,243)","_Padding":"lively.rect(0,0,0,0)"},"2":{"morph":{"__isSmartRef__":true,"id":0},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"3":{"requiredModules":[],"migrationLevel":8,"partsSpaceName":"PartsBin/Inputs/","comment":"\"Native\" drop down list with actions. Add actions in #actionPlaceholdersWith and implement methods accordingly.\n\nThis allows to have both normal list items but also \"actions\" like adding items to the list in one place.","partName":"DropDownListWithActions","__serializedExpressions__":["lastModifiedDate"],"changes":[{"__isSmartRef__":true,"id":4}],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin","lastModifiedDate":"new Date(\"Wed Sep 05 2012 16:01:35 GMT-0700 (PDT)\")"},"4":{"__serializedExpressions__":["date"],"author":"robertkrahn","message":"no comment","id":"FD509583-4DE3-4D78-A0A4-B1423F8719DE","date":"new Date(\"Sat Oct 11 2014 00:00:12 GMT-0700 (PDT)\")"},"5":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"selection","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"actionPlaceholdersRemove","varMapping":{"__isSmartRef__":true,"id":6},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"6":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":0}},"7":{"sourceObj":{"__isSmartRef__":true,"id":0},"sourceAttrName":"selection","targetObj":{"__isSmartRef__":true,"id":0},"targetMethodName":"doAction","varMapping":{"__isSmartRef__":true,"id":8},"__LivelyClassName__":"AttributeConnection","__SourceModuleName__":"Global.lively.bindings.Core"},"8":{"source":{"__isSmartRef__":true,"id":0},"target":{"__isSmartRef__":true,"id":0}},"9":{"actionPlaceholdersAdd":{"__isSmartRef__":true,"id":10},"actionPlaceholdersRemove":{"__isSmartRef__":true,"id":13},"actionPlaceholdersWith":{"__isSmartRef__":true,"id":16},"actionPlaceholdersWithout":{"__isSmartRef__":true,"id":19},"onMouseDown":{"__isSmartRef__":true,"id":22},"reset":{"__isSmartRef__":true,"id":29},"doAction":{"__isSmartRef__":true,"id":32},"someAction":{"__isSmartRef__":true,"id":35}},"10":{"varMapping":{"__isSmartRef__":true,"id":11},"source":"function actionPlaceholdersAdd() {\n    this.setList(this.actionPlaceholdersWith(this.getList()));\n}","funcProperties":{"__isSmartRef__":true,"id":12},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"11":{"this":{"__isSmartRef__":true,"id":0}},"12":{"__serializedExpressions__":["timestamp"],"user":"robertkrahn","timestamp":"new Date(\"Fri Oct 10 2014 23:40:58 GMT-0700 (PDT)\")"},"13":{"varMapping":{"__isSmartRef__":true,"id":14},"source":"function actionPlaceholdersRemove() {\n    this.setList(this.actionPlaceholdersWithout(this.getList()));\n}","funcProperties":{"__isSmartRef__":true,"id":15},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"14":{"this":{"__isSmartRef__":true,"id":0}},"15":{"__serializedExpressions__":["timestamp"],"user":"robertkrahn","timestamp":"new Date(\"Fri Oct 10 2014 23:40:58 GMT-0700 (PDT)\")"},"16":{"varMapping":{"__isSmartRef__":true,"id":17},"source":"function actionPlaceholdersWith(items) {\n\n    if (!items.length) items.push({ // so selection works properly\n        isListItem: true,\n        string: \" \",\n        value: {action: null, isListAction: true}\n    });\n\n    items.push({\n        isListItem: true,\n        string: \"some action!\",\n        value: {action: \"someAction\", isListAction: true}\n    });\n\n    return items;\n}","funcProperties":{"__isSmartRef__":true,"id":18},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"17":{"this":{"__isSmartRef__":true,"id":0}},"18":{"__serializedExpressions__":["timestamp"],"user":"robertkrahn","timestamp":"new Date(\"Fri Oct 10 2014 23:59:07 GMT-0700 (PDT)\")"},"19":{"varMapping":{"__isSmartRef__":true,"id":20},"source":"function actionPlaceholdersWithout(items) {\n    return items.reject(function(ea) { return ea.value && ea.value.isListAction; });\n}","funcProperties":{"__isSmartRef__":true,"id":21},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"20":{"this":{"__isSmartRef__":true,"id":0}},"21":{"__serializedExpressions__":["timestamp"],"user":"robertkrahn","timestamp":"new Date(\"Fri Oct 10 2014 23:40:58 GMT-0700 (PDT)\")"},"22":{"varMapping":{"__isSmartRef__":true,"id":23},"source":"function onMouseDown(evt) {\n    this.actionPlaceholdersAdd();\n}","funcProperties":{"__isSmartRef__":true,"id":28},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"23":{"this":{"__isSmartRef__":true,"id":0},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":24}},"24":{"$super":{"__isSmartRef__":true,"id":25}},"25":{"varMapping":{"__isSmartRef__":true,"id":26},"source":"function () {\n                try {\n                    // FIXME super is supposed to be static\n                    return Object.getPrototypeOf(obj)[name].apply(obj, arguments);\n                } catch (e) {\n                    if ($world)\n                        $world.logError(e, 'Error in $super call')\n                    else\n                        alert('Error in $super call: ' + e + '\\n' + e.stack);\n                    return null;\n                }\n            }","funcProperties":{"__isSmartRef__":true,"id":27},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"26":{"obj":{"__isSmartRef__":true,"id":0},"name":"onMouseDown"},"27":{},"28":{"__serializedExpressions__":["timestamp"],"user":"robertkrahn","timestamp":"new Date(\"Fri Oct 10 2014 23:40:58 GMT-0700 (PDT)\")"},"29":{"varMapping":{"__isSmartRef__":true,"id":30},"source":"function reset() {\n    lively.bindings.connect(this, 'selection', this, 'actionPlaceholdersRemove');\n    lively.bindings.connect(this, 'selection', this, 'doAction');\n    this.setList([]);\n}","funcProperties":{"__isSmartRef__":true,"id":31},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"30":{"this":{"__isSmartRef__":true,"id":0}},"31":{"__serializedExpressions__":["timestamp"],"user":"robertkrahn","timestamp":"new Date(\"Fri Oct 10 2014 23:57:45 GMT-0700 (PDT)\")"},"32":{"varMapping":{"__isSmartRef__":true,"id":33},"source":"function doAction(selectedAction) {\n    var action = selectedAction && selectedAction.action;\n    if (!action) return;\n    var method = this[action] || this[\"interactively\" + action.capitalize()];\n    if (!method) return;\n    method.call(this, selectedAction)\n}","funcProperties":{"__isSmartRef__":true,"id":34},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"33":{"this":{"__isSmartRef__":true,"id":0}},"34":{"__serializedExpressions__":["timestamp"],"user":"robertkrahn","timestamp":"new Date(\"Fri Oct 10 2014 23:44:05 GMT-0700 (PDT)\")"},"35":{"varMapping":{"__isSmartRef__":true,"id":36},"source":"function someAction() {\n    show(\"some action, hey ho!\")\n}","funcProperties":{"__isSmartRef__":true,"id":37},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"36":{"this":{"__isSmartRef__":true,"id":0}},"37":{"__serializedExpressions__":["timestamp"],"user":"robertkrahn","tags":[],"timestamp":"new Date(\"Fri Oct 10 2014 23:58:53 GMT-0700 (PDT)\")"},"isSimplifiedRegistry":true}}