{"id":0,"registry":{"0":{"submorphs":[],"scripts":[],"id":"ED38E7CF-DBF8-44F7-8FCD-44556A95F525","shape":{"__isSmartRef__":true,"id":1},"droppingEnabled":true,"halosEnabled":true,"registeredForMouseEvents":true,"_Position":{"__isSmartRef__":true,"id":8},"showsHalos":false,"name":"SplitterMorph","partsBinMetaInfo":{"__isSmartRef__":true,"id":9},"renderContextTable":{"__isSmartRef__":true,"id":30},"eventHandler":{"__isSmartRef__":true,"id":31},"derivationIds":[127,"F0291F62-F100-480C-AEBF-0230398F7983","AE8B5ED7-E305-45BC-BE4A-1C28A49EE12B","39BA345C-17FA-45A0-BAC2-F0CF5654ACF8","FE91EA31-D8AE-461B-8A49-95DA5FBAE5B4","F38439A3-2F4E-4AC2-BF73-2633C00B1393","6748F5B5-2284-4748-A6EE-F1A261CBAD0B","BBAFB862-93AE-4F89-BCFF-9F1C67B7FE4C","7EC17E78-593A-4CC8-B7E3-859BCBBFE785"],"partTests":{"__isSmartRef__":true,"id":32},"_ClipMode":"visible","moved":true,"distanceToDragEvent":{"__isSmartRef__":true,"id":37},"layout":{"__isSmartRef__":true,"id":38},"isBeingDragged":false,"dragStartPoint":{"__isSmartRef__":true,"id":39},"originalTargetExtent":null,"morphA":null,"morphB":null,"originalMorphAExtent":null,"originalMorphBExtent":null,"originalMorphBPosition":{"__isSmartRef__":true,"id":40},"prevScroll":[0,0],"_Rotation":0,"_Scale":1,"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":41},"__LivelyClassName__":"lively.morphic.Box","__SourceModuleName__":"Global.lively.morphic.Core"},"1":{"position":{"__isSmartRef__":true,"id":2},"_Extent":{"__isSmartRef__":true,"id":3},"_BorderWidth":1,"_BorderColor":{"__isSmartRef__":true,"id":4},"_Fill":{"__isSmartRef__":true,"id":5},"renderContextTable":{"__isSmartRef__":true,"id":6},"_ClipMode":"visible","_Padding":{"__isSmartRef__":true,"id":7},"_BorderRadius":0,"_Opacity":0.5557,"_BorderStyle":"solid","_AppearanceStylingMode":false,"_BorderStylingMode":false,"__LivelyClassName__":"lively.morphic.Shapes.Rectangle","__SourceModuleName__":"Global.lively.morphic.Shapes"},"2":{"x":0,"y":0,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"3":{"x":20,"y":53,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"4":{"r":0,"g":0,"b":0,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"5":{"r":0.6549019607843137,"g":0.6549019607843137,"b":0.6784313725490196,"a":1,"__LivelyClassName__":"Color","__SourceModuleName__":"Global.lively.morphic.Graphics"},"6":{"init":"initHTML","appendShape":"renderHTML","setPosition":"setPositionHTML","setExtent":"setExtentHTML","setPadding":"setPaddingHTML","setFill":"setFillHTML","setBorderColor":"setBorderColorHTML","setBorderWidth":"setBorderWidthHTML","setStrokeOpacity":"setStrokeOpacityHTML","setBorderRadius":"setBorderRadiusHTML","setBorderStyle":"setBorderStyleHTML","setOpacity":"setOpacityHTML","setAppearanceStylingMode":"setAppearanceStylingModeHTML","setBorderStylingMode":"setBorderStylingModeHTML","getComputedBorderWidth":"getComputedBorderWidthHTML","getComputedExtent":"getComputedExtentHTML"},"7":{"x":0,"y":0,"width":0,"height":0,"__LivelyClassName__":"Rectangle","__SourceModuleName__":"Global.lively.morphic.Graphics"},"8":{"x":0,"y":0,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"9":{"partsSpaceName":"PartsBin/Widgets","comment":"A splitter, that exchanges the extent from two morphs.... ok, hard to describe. It's just a splitter.\n\nInspired by the resize corner, it latebinds into the ui, by placing it ontop two adjacent morphs.","migrationLevel":4,"partName":"SplitterMorph","changes":[{"__isSmartRef__":true,"id":10},{"__isSmartRef__":true,"id":12},{"__isSmartRef__":true,"id":14},{"__isSmartRef__":true,"id":16},{"__isSmartRef__":true,"id":18},{"__isSmartRef__":true,"id":20},{"__isSmartRef__":true,"id":22},{"__isSmartRef__":true,"id":24},{"__isSmartRef__":true,"id":26},{"__isSmartRef__":true,"id":28}],"__LivelyClassName__":"lively.PartsBin.PartsBinMetaInfo","__SourceModuleName__":"Global.lively.PartsBin"},"10":{"date":{"__isSmartRef__":true,"id":11},"author":"undefined","message":"whoopsie","id":"3F17A2D2-3C24-424B-B0FA-E43112267D23"},"11":{"isSerializedDate":true,"string":"Thu May 03 2012 15:51:36 GMT+0200 (CEST)"},"12":{"date":{"__isSmartRef__":true,"id":13},"author":"undefined","message":"whoopsie","id":"CEA5DCD5-2DB7-40AD-A776-262A7A0666FC"},"13":{"isSerializedDate":true,"string":"Thu May 03 2012 15:51:30 GMT+0200 (CEST)"},"14":{"date":{"__isSmartRef__":true,"id":15},"author":"undefined","message":"sorry","id":"44B56D2E-9B59-4C67-A305-49A6E10E66C2"},"15":{"isSerializedDate":true,"string":"Wed Mar 14 2012 10:53:45 GMT+0100 (CET)"},"16":{"date":{"__isSmartRef__":true,"id":17},"author":"fbo","message":"","id":"BD1C654D-9100-4B66-BC62-B15FF2498B2B"},"17":{"isSerializedDate":true,"string":"Sat Feb 25 2012 02:59:09 GMT+0100 (CET)"},"18":{"date":{"__isSmartRef__":true,"id":19},"author":"undefined","message":"css transitions","id":"1004E0FC-D96B-4F40-B3E0-F514A3FCFFD7"},"19":{"isSerializedDate":true,"string":"Wed Mar 14 2012 10:42:26 GMT+0100 (CET)"},"20":{"date":{"__isSmartRef__":true,"id":21},"author":"undefined","message":"suddenly, the rectangle became a CarDemo","id":"B5083AA8-9BAE-48DD-A6B4-FD7DB3998350"},"21":{"isSerializedDate":true,"string":"Mon Apr 09 2012 13:42:07 GMT+0200 (CEST)"},"22":{"date":{"__isSmartRef__":true,"id":23},"author":"bgnauk","message":"no comment","id":"0124E570-50B7-4CE3-83A1-6E7BA89B5CD8"},"23":{"isSerializedDate":true,"string":"Mon Jun 18 2012 19:35:08 GMT+0200 (CEST)"},"24":{"date":{"__isSmartRef__":true,"id":25},"author":"jenslincke","message":"I want my blue rectangle back!","id":"5AA9291A-869F-4D36-8095-4721B5A5B205"},"25":{"isSerializedDate":true,"string":"Thu Nov 22 2012 10:35:51 GMT+0100 (CET)"},"26":{"date":{"__isSmartRef__":true,"id":27},"author":"jenslincke","message":"no comment","id":"4D8DFE4C-2980-4B5F-A1E9-E4C650CBA0C6"},"27":{"isSerializedDate":true,"string":"Thu Nov 22 2012 14:01:14 GMT+0100 (CET)"},"28":{"date":{"__isSmartRef__":true,"id":29},"author":"jenslincke","message":"no comment","id":"3FF2C8E3-9B5C-4846-B328-5B9DE699E342"},"29":{"isSerializedDate":true,"string":"Thu Nov 22 2012 14:01:17 GMT+0100 (CET)"},"30":{"replaceRenderContext":"replaceRenderContextHTML","init":"initHTML","append":"appendHTML","remove":"removeHTML","removeMorph":"removeMorphHTML","onRenderFinished":"onRenderFinishedHTML","triggerEvent":"triggerEventHTML","setTransform":"setTransformHTML","setPosition":"setPositionHTML","setRotation":"setRotationHTML","setExtent":"setExtentHTML","setScale":"setScaleHTML","setVisible":"setVisibleHTML","adjustOrigin":"adjustOriginHTML","setPivotPoint":"setPivotPointHTML","setClipMode":"setClipModeHTML","showsVerticalScrollBar":"showsVerticalScrollBarHTML","showsHorizontalScrollBar":"showsHorizontalScrollBarHTML","getScrollBarExtent":"getScrollBarExtentHTML","setHandStyle":"setHandStyleHTML","setPointerEvents":"setPointerEventsHTML","setToolTip":"setToolTipHTML","focus":"focusHTML","blur":"blurHTML","setFocusable":"setFocusableHTML","setStyleSheet":"setStyleSheetHTML","setStyleClassNames":"setStyleClassNamesHTML","setStyleId":"setStyleIdHTML"},"31":{"morph":{"__isSmartRef__":true,"id":0},"__LivelyClassName__":"lively.morphic.EventHandler","__SourceModuleName__":"Global.lively.morphic.Events"},"32":{"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":33}},"33":{"test01IsMorph":{"__isSmartRef__":true,"id":34}},"34":{"varMapping":{"__isSmartRef__":true,"id":35},"source":"function test01IsMorph(aPart) {\n    this.assert(aPart.isMorph, 'rectangle should be a morph');\n}","funcProperties":{"__isSmartRef__":true,"id":36},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"35":{"this":{"__isSmartRef__":true,"id":32}},"36":{},"37":{"x":37,"y":-7,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"38":{"moveVertical":true,"moveHorizontal":true},"39":{"x":722,"y":4306,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"40":{"x":0,"y":169,"__LivelyClassName__":"Point","__SourceModuleName__":"Global.lively.morphic.Graphics"},"41":{"onDrag":{"__isSmartRef__":true,"id":42},"onDragEnd":{"__isSmartRef__":true,"id":50},"onDragStart":{"__isSmartRef__":true,"id":58},"getSiblingsAtCorner":{"__isSmartRef__":true,"id":66}},"42":{"varMapping":{"__isSmartRef__":true,"id":43},"source":"function onDrag(evt) {\n    var moveDelta = evt.mousePoint.subPt(this.dragStartPoint)\n\n    moveDelta.x = 0;\n    if (!this.morphA || !this.morphB) return;\n    \n    var newExtent = this.originalMorphAExtent.addPt(moveDelta);\n    this.morphA.setExtent(newExtent);\n\n    this.morphB.setPosition(this.originalMorphBPosition.addPt(moveDelta));\n    moveDelta.y = - moveDelta.y;\n    this.morphB.setExtent(this.originalMorphBExtent.addPt(moveDelta));\n\n    this.setBounds(\n        rect(this.morphA.bounds().bottomRight().subPt(pt(20,20)),\n            this.morphB.bounds().topRight().addPt(pt(0,20))));\n\n    this.setExtent(pt(this.getExtent().x, Math.max(this.getExtent().y, 20)))\n\n}","funcProperties":{"__isSmartRef__":true,"id":48},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"43":{"this":{"__isSmartRef__":true,"id":0},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":44}},"44":{"$super":{"__isSmartRef__":true,"id":45}},"45":{"varMapping":{"__isSmartRef__":true,"id":46},"source":"function () {\n                    try {\n                        return obj.constructor.prototype[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":47},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"46":{"obj":{"__isSmartRef__":true,"id":0},"name":"onDrag"},"47":{},"48":{"timestamp":{"__isSmartRef__":true,"id":49},"user":"jenslincke","tags":[]},"49":{"isSerializedDate":true,"string":"Thu Nov 22 2012 13:58:16 GMT+0100 (CET)"},"50":{"varMapping":{"__isSmartRef__":true,"id":51},"source":"function onDragEnd(evt) {\n    this.morphA = null;\n    this.morphB = null;\n    this.originalMorphAExtent = null;\n    this.originalMorphBExtent = null;\n}","funcProperties":{"__isSmartRef__":true,"id":56},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"51":{"this":{"__isSmartRef__":true,"id":0},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":52}},"52":{"$super":{"__isSmartRef__":true,"id":53}},"53":{"varMapping":{"__isSmartRef__":true,"id":54},"source":"function () {\n                    try {\n                        return obj.constructor.prototype[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":55},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"54":{"obj":{"__isSmartRef__":true,"id":0},"name":"onDragEnd"},"55":{},"56":{"timestamp":{"__isSmartRef__":true,"id":57},"user":"jenslincke","tags":[]},"57":{"isSerializedDate":true,"string":"Thu Nov 22 2012 12:32:59 GMT+0100 (CET)"},"58":{"varMapping":{"__isSmartRef__":true,"id":59},"source":"function onDragStart(evt) {\n    this.dragStartPoint = evt.mousePoint;\n    this.morphA = this.getSiblingsAtCorner(\"topLeft\")[0]\n    this.morphB = this.getSiblingsAtCorner(\"bottomLeft\")[0]\n\n    if (!this.morphA || !this.morphB) return;\n\n    this.originalMorphAExtent = this.morphA.getExtent();\n    this.originalMorphBExtent = this.morphB.getExtent();\n    this.originalMorphBPosition = this.morphB.getPosition();\n\n}","funcProperties":{"__isSmartRef__":true,"id":64},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"59":{"this":{"__isSmartRef__":true,"id":0},"__serializedLivelyClosures__":{"__isSmartRef__":true,"id":60}},"60":{"$super":{"__isSmartRef__":true,"id":61}},"61":{"varMapping":{"__isSmartRef__":true,"id":62},"source":"function () {\n                    try {\n                        return obj.constructor.prototype[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":63},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"62":{"obj":{"__isSmartRef__":true,"id":0},"name":"onDragStart"},"63":{},"64":{"timestamp":{"__isSmartRef__":true,"id":65},"user":"jenslincke","tags":[]},"65":{"isSerializedDate":true,"string":"Thu Nov 22 2012 13:44:37 GMT+0100 (CET)"},"66":{"varMapping":{"__isSmartRef__":true,"id":67},"source":"function getSiblingsAtCorner(corner) {\n    // this.getSiblingsAtCorner(\"topLeft\")\n    var p = this.bounds()[corner]()\n    var self= this;\n    return this.owner.submorphs.select(function(ea) {\n        return (ea !== self) && ea.bounds().containsPoint(p)\n    })\n}","funcProperties":{"__isSmartRef__":true,"id":68},"__LivelyClassName__":"lively.Closure","__SourceModuleName__":"Global.lively.lang.Closure"},"67":{"this":{"__isSmartRef__":true,"id":0}},"68":{"timestamp":{"__isSmartRef__":true,"id":69},"user":"jenslincke","tags":[]},"69":{"isSerializedDate":true,"string":"Thu Nov 22 2012 12:28:43 GMT+0100 (CET)"},"isSimplifiedRegistry":true}}