assign FX to Effect slot
-
@ulrik You're always pushing the boundaries
-
@d-healey said in assign FX to Effect slot:
@ulrik You're always pushing the boundaries
funny you should say that, I just used this for the first time ever
// set all Editpanels to stay inside const draggingBounds = GlobalContainer.getLocalBounds(1); for (e in EditContainers) { e.setDraggingBounds(draggingBounds); };
-
@ulrik It's so fancy because it's my own custom skin. The default is pretty boring :) Your fx panels are popping up like FL Studio windows hahaha..
Is your plan to make a fixed layout for the final version? (Pointing to vital again) -
@UD-AUDIO Yes, I have made it fixed now, and also splitted the "Dynamics" module in 3 different strips, Gate, Compressor and Limiter
-
@ulrik so i see you figured this out actually ran into same problem do you have a snippet showing how you got this all set up im a little confused
-
@whereami518 Oh this was a long time ago, I'll dig around and see if I find anything useful
-
@ulrik THANK YOU SO MUCH I have been trying to implement something like this for awhile now and any help is greatly appreciated
-
HiseSnippet 2222.3oc6Y01baabDFTRHS.ZbaxLYxmOiOjBVSQSpWhyXWMQT7kH1H9xHREaOttZf.NRbUf.n.GkDmF8Op+A525Oo9Kno6dG.AHEkrpZbF+ASaIy61cu6Ye41a2y8iBrowwAQJEzFNKjpT3yTGLym6V20h4qztgRgemZKVTLmTiyoSB4JGLKzJNl5nTnv5eOxTAsMTDe92e2AVdV91zroTT9w.lM8H1DFOa196+CLOuVVNzgrI43dm8aaG3WOvKXJ.n0UqnDZYet0XZWKjs0TUJ7IMcX7fnAbKNMVovFGD3Lafavk9R9+QVL6LOJNnpx.XgjS2JvyAQLNqRcWlmS+TEOVAVk9Ylg0klguTsCygMe9LywmKHPxjHu8nvZKBu0W.dUyCuJ4f2JfTgbPZCIj9B0A1QrPdFEDO+F019bZzHKvrmGJRdUV6+7H05A.G97xSrNm1JBFLWByuoRkRjcqTo3Kz0e5S05VqSSRuVjgG1jz5Ujg8Hs6Nn4wCIlM6ze3qI6Q5F.DJps4p9nCNOHP4BqHT38HuQ2nIDwLynjtQ8oQWPa92vuNfMIzidL8BZzYYiwPIbTCpmkPBQLCMRN23HHXQrNtAQSiwu020Jl15UhUvhOMxBr6Blm4aMgYK3YfqUHxi9ak5G.qAG0a3.xwMa073lcq2T61zfAdA7XgRHNOTdLkiS05UlFMGMhZyEbT0nXo6jgsdWLr86hgcdWLrKxPhB1uV2lGg9sFsGz+nZuN0SVu2Qmzo6McaZvGh3WK375a4S8.kOMxA135ASBC7gAlFIzMvfFbSG7xZ8wMo0IcqOrcutqJ5Pm46w7ojQS8s4r.eR7kVglLmqpVh.+dqh5+ccMu.aKOxnqpBasv9+FjAP0lSYq7T1BonqA7WVrZ.4hhYR.X4HZHDUwMgYudd.fzD0uV6tCIG26jgs6tPPfdpvwTdeT5iClxAjalhbywBrNt7HHGVMOOStKKFsPlFmMVl6xnnDGnwzEPbJGGRYicEvQP5xbjdIyg6ZlIVLnj.YWxSk5aYOp+XtqTgChHlLfZkWPXj+3hLPXO4IE00.DpA562ebsCDw.G0qVilMPuTuC9SMqODHiaynqxLnuU3lmFEANYY3k.OZxUpV2Fj1C+8wj1MRjENlQAoGcEJWam4Liz3zq3RaANYBm3+TNd5Yw7Hl+XSwPluC8pdiLMN0nH4IDHZPLsTYRWQ1HB3bKyhSSvYVj7S+TB.1ijjkAzZgZqks4vlZT4pm8rVhOF3xcM7C0KltRlybkYSaTLUL3uiwvB47476PdpI487oXVvgiE2prsGy9bpC4w6QXywoLDBhu.afywf81xerG07MaUhrEXKDg.+ABqDDnrIYmRxIfu81RjsEayhvYNhSo4DYcYMO1XepyPfnvfWh7lJkxuzxAvRZXC98HpSl9l2LcOwJ70LkF1+wu98H5W4lc65y05WWbor.c5cxflj50N5nCpU+GVNuU9TAcBlFSqa44cFTQRVt.3RLetHe.4NNrSRHe6GpQNvHFw5U1M.taj70eM4wxwQz3odv1.opyTXIS6Q5XA2LLxKHHJQ5Yvxi6Dpr4W0rUA8nDvN.5EXJXwDqr7xbWKN4RvWS7BrbfgTHoAxufYyk1+RD4Zim.PujPaudw8MM1GNwJm.cUygwh77cjadl4tTQxyIFhi0D7mr8bB5tNIDOpI1FsEhTBBCeGqqHFTdG0M.ToatVI7uJruYUIMDIWmBzkBaA1xrLu9Ey4v1ENkQkYVIYguCnb4MyWwmB2JNg5OU6tuqEOlkxuoUTj0rb22h9NYkNZFaRV5OPUTZFA9OMXzHwWinS.+NANHHFtZ9wuw7ioQ7zodatKtfsCnRRfgH8h.BkCmF6JHi5KFDk67moQXP3zvNft1FY1njD2k+qALeSi+ruHyKdK+hJKTrpznkyfkZWVcUr2pIDh9ghNj6qv7EeIia6J0nDEwFpIkrBqxyWfVNaCRP6rHp04uXNKIlaAIoK5rj68xW8ypttdgqHEwc2M6fVMm+GmtIRAWBS476BbIbkwneTrC3AM4EEZPXqG0JJY+udEqk755muD7xK0pD.Ji+dIB3qODpsm7RYQOhpepUe3I0NBq9Ap5qWZQwXq.f.NzQVPhwkWbv1jXmxBIusJK0mGmD32MfS64aJhPzuVmrLoQiVIML9LJvyiFsRxXixQ2kfl9SmbFlP9BKuoz4LBcOtXKop2dKo46X1VV4eNFC7a6y38Bo92VezJIsK.e6j1MfraXerIyA7EBw7LDBEZPufYSkc0po1fFeNOHTvaROFJE9Ltf5iR64Es5JLGj+DefxUye3f+k29yxdEgg6eIVLc1D+k8cE2Emwez9Y0a.y9I+L7AI.g2AWldKeL91GPA9jrIVLGjRg+g5MNpqKO8pmcfQ+l7rXR.cQ7sdRKx546OVOq4XcQmw5IsEqmzSrtrgX8jtg0m2JrdZev5IMAqjUkJpxGd3gBUNsmEgY3epHlKiysvogY9Y461bi2j3yU6D3L0C2v7OQBh2DBPP5BuKA91C9wL9r7uazxuaxF2u2M4teVm6Kb+B09Xd7Ui20VAdgv5223M4UndjpLETFX2.B+uymbZi6246LnrxmeR8lX4SUku8f.F+V07OBxh.Z868afU89+FXqmlsH4t.AJ9x7nX2SEjd+fEE4q.LFpXLhAIdT6Ncx.37gMEbM9P1HLyZg0vbfxwUvwXnx.puiX.liIgXUbbgDhUSI9qxd7+hecqOH7q67Q+5uv90s+fvut8G8q+B6W24WA+pZpeMoZEAJ9pExZbZJo7nArMsXdPgKwoFgVsF1z2BPvG87+e6428ChSzU+3I5OP1iIV1QAmZK6LDcjepXFv15K9eRUSsCNlTUQzsHHmZkxUTlvbXmZaiUYtITg5pkYqGfLa+.jYmGfL69.j4ad.x7rGfLe6cJC9epbso7fIxNPfI52TzBcgB4xRp7eAvxVm2D
-
@ulrik it's only a small snippet how to load and swap effect modules using SlotFX
-
@ulrik yea im trying to understand how you got the parameters for each effect to actually work in the set effect panel im gonna try to rig something with this i guess with a animated sli=ding panel call back or something try to get the same effect
-
@ulrik said in assign FX to Effect slot:
@Fortune I had to rethink about this, this is my progress so far.
You can assign any fx in any slot, you can drag to swap with other fx or empty slot.
You can set them bypassed/active and, I hope, be able to edit each one of them separately in the "EditPanel"I have not figured out how to know what kind of values all Attributes have, is it ms, percent, db etc.. I don't know how to automatically retrieve that information.
I could use suffix, min, max values...HiseSnippet 2662.3oc6ZktbabbDdAIWWBqhcjcTkJ4ei2JoJfPPH.dHkHFFQIJBGVwTBEA0UwHoZwtC.FoE6rdO3QEyGB89jejGg7HjGA+Fjz8L6wrfKAgojbIEKpKLc2yLeSeLcOMT2.tMMLjGnUo59m3S0p7Kz6chWznsFYw7z149ZU9U5cdJomKOJjzgGP1iZ4pcuS7sBCoNZUpL+2fBVo5BZhe9g6bOKWKOaZNIMsGyY1zukMlEkSs6l+MlqaGKG59rwJRu5l6Xy81h6xiAPMudKMeK6WaMj9.KTr4z0p7Ya6vh3A8hrhngZUV3dbmS5MhejmT9GyBY8co3f1Z8fERRtC20AQLRUaqQLWmtoG9PMsJ5cyUEyKUEWWeWlCKidtJ4ZBFj7YnpOpL2zfWaU30pT30pL3UQAdKHg2Wp2yNf4GkyAw1U02wKhFLvBLApvRJq1bO4qz2hCR3E0br0qocBfAYyn1Ma0pAYsVsputgAXFBiHGZEP.GfMHGXXt8X+nSLaXXtUbvgzs+N7i8Xi8co6QOjFzOeL5TfitO00RLCg0mFHoML.L6h0YDOHND+T2QVgzNOUrBVQwAVfFTH7IdViY1BY5MxxGkw34EPmz2DAnvys4PZDRpySqYt8fAT6HgDsMq2XpBr7EIvJWj.qdQBrFJ..9p3ODweUPK20xi5BmjTCDrJawG6y8fA0LS3aB1l7Ig9ZSeZYRfSzv3F2nZuir7ICh8riXbupKc1eLXdtLOZlLjPXF0XNG2tAA96kqa7OLp5xssbICNtMryBSvAn.3oKkyxpbVF4XTEjuoX0.10ETRNVMCn9fSSTMf5oqKvY28TAmQpfgT37.RtGONBPYsTTVan.WCaN.tX4ttt0hFwBQkQMy9CkWnXVWtmnl6H.coR7DlSzHbmEbFov4uRYCGI.UxzBgCDveD4FxyVSWp2vnQB9RIXvmG.2TViAx0ZcBi7mKJJgs3h0MpBXUH+fiy0SOWX7hCB.SmzwQr0B4hnGGIOFoTfPCJL2AGiyZGGonIDw+oYXb+vn.l2vZhgLOG5wObPMyWZVmrHArlBxRXIlL7a1.BXbZxBSu8nVcx2+8I60FjjKA.7KN.UyQErolsN9V2pi3GSb4NE9C0MjVpv4lmbxl0SmF76gnoVRWwVBWiLV0ZlhYgDNVQVMscY1ul5P95MHrLbJcK.eFPG3rGnXs7F5RqcvxMHKC5BgY8OPXM.+hkHq1PR.9zyaPVQrMEgSFhS44DXczccYC8nN6CLEJ7FjCZ0PcokCfkzzFLvATm7yqpZZFwJ7w7CMr+Ce16QzW5lc9mmSMNstLJd2st2j2wnFJuKONjtkkqaeHMedrLjOwKRDOSlRHIIg84GThRHVqli3PJJxcTNERJaP10BtwdfKmGH21lm.qCtj0I2lXZlrJnOljc.ML1E.WUBZsHvg.tmehksQxthdqnFUf1SMJrNo9oPzkj.pVyV1hxnh6TZyBxQnqtmiQ08i7wvBw1TsfUk66eAqqveQlO3L.pwYWqD4KC6K0VxCQBF.Lo6EHRtV4YqmIgRdBbhotY8nQxDfGGECYeFS8hqN8bZX3Pp70rBBrNQIuFZ2jEUT0bIxD+BJFopIExqRnh6nEig0iv8tAev.wv.5XvOf.N1hgkuF3mXdgzfnTRIYIEoO.H.bIIPSb0f.VM8iCGIXi5.zoRIdploO2O1eW37uCJrYC4Yo4q3LuZl+cOwslXF1hJfNOMQQpnDmVMBSQsBQCPBe49JTogGwhrGIOQIGDanbORIZkaWfmhtAYTse.050qmIhpIPvGIH2coi2DxqXhDhKM08SxyoVsRY4gKjRTr7SWbX2xj+qS2jRwkhuh.WByeHZ6E6.FrJSLTMDBfnVAI6+okrVxzy2dB3oNqxl.TU8LMEG5.K3tuIkENpIG6buxoTX2141spytmkhwUs9yKxrkUPpW736FAUC0OFdWVVYSOPkphzVphdPdYsGZ4FOIMH09qThayK6qvVpV22D6QFZxjFpliIz843PF1mMNotPDMRNSrBv7SLDovj2+UjMj6uY9xZdakyZCjmbQA5xO.qg3vk8PBzb+XjUMXEw8HmipsN2T6KdfRwx4SsxEV0oUW+kplcj0gJrjvNkCXdfxfhG6EJKuuohxVVAA4uPZeSH4atjvhsFjbs.gUWuvaCNBRVNwRm+njVGuxJxJjyeSQ.+HgOibjsXdIDLjEt0giOkKI5CtR+OUujGYTB9U84lwxoSJ9DicNHo3OIhxpEDfq7yKsZ5+97zJwKeSTKvOYSlrhSUvCuCBJ9b12775O2m6adNav1dCAuplN739tz848juK5vlRmbwVtb8oss3KlZMK6sbpKtnxiSXjeeAWlMTGsDoc1yTf8QNwpEbCxJoN61Pt2C3QzG5USDb.QajIYMXPo7v76AbWWZPorwtwELsIVCPder.WghKSPsJKTruW5meeuTaKmsroEJBx81wiE8Pep240rNsjNc.e5Q6benhQrAYIz.47gZFXHDpbe5gLaprcYU0uOM70QbesJyk0dDfbjf6mm1LM7pHMlCJeRBLsiU6N4IpCNBuCJmvK1bj3pmLJ+qfMyc8Ape1+E9AY.o54Gk9pG.o+Rc3tARNgh0voU4epelRkLTp9wHuxFi7hILN6bJVTkgH2uQR27LTakmQde7LDMwyHoCdFIsuyP16NijF2Yj00NizV1YjzuNzbkotMNO08U0yxDnnv+O1SSgCp2ypvuHUaZufPywadyadLNs7KAQpu3EuPXjJ2zoc1NwdM8c4Nwt3oWsIwnxKgADAUnarXGW8BYQmn14725NGWZrxLB2uTuKVjd43ctRvKDy89FuI8g+y0k0xkC1EfXy2sMc+hfxWHgxU06AIQD83U.jesXL4IVPD22P8nhHf1S46G4eOqe+H9y72OxCsifse+.KuPedXgEtGcLaeHxKTk3if30.52sGZkUouE2JnTV+vc5.GxRmSRTO3tb2w7XunBtGyOy1jeDeOMK7Ay2SyaSz1a+kCyOav8B9pjplhQ408a6cH0ExeJv3WAILE0alRsne8tbOt+HtGyV0nuGEpqZ3PZfJ1K8.AOTAtONmx02bOJ7jSUG3e2leK33YE.5I5kTWzd10ESyd8azkvkfAij++3R84+X6R8KuKeIe4tWQW9EzI15uPW8aJrHHl+8gu17o0jlz8EAJtdAT7RAq2OXQS9F6g6ZAQqP0V5OHdbOHghMELGdPIXX86UlCSJHG2BGKyn34HFfkCkvrMNtRBy1oL+IYO9wXWW9CB65xext9N1ttxGD10U9jc8crcc0eBrqWI6+zSYO2U.jeaAf7REtmeo8ZZhGJqR3IE6Ovy1rjh+2AptJHpK20JXxTwuyNxKLy0KfGoOdpuAKQET4eLAXgKwGO.9Z5cs9Pvg3miW.t1GDI1V6SI19YzdL1xNf+RaYq9QmkqHn.1OOw++aqpuKNlzVSz9eXd5sZ1RaLyg8Raa7QbKAwukOmkuDyYkKwbV8RLm0tDy4lWh4bqKwb9iScNXKttabDer79YfP2sEemHUprsmEDEJhX09efiH6N.
I just found that thread here and tried out your snippet, but for some reason it won't work, like it does in your screen capture. I can assign FX to the containers, but trying to move them, they won't swap position, they rather snap back to their old position.
However, this looks really amazing, but i can't figure out, how you have done that. Can you give me a hint, how you created the 5 "containers" inside the FXPanel? And what makes them draggable?
Sorry for bumping that thread... ;-) -
@toxonic for me it worked after deleting and re adding the fx
-
@Straticah What do you mean with that? Did you delete the FX Slots in the Module Tree? Or do you mean to delete the FX in the Interface, via the Panels context menue "remove all"?
None of these worked for me... :-(
Also, Hise crashes often, when i try to tweak on that snippet... -
HiseSnippet 2222.3oc6Y01baabDFTRHS.ZbaxLYxmOiOjBVSQSpWhyXWMQT7kH1H9xHREaOttZf.NRbUf.n.GkDmF8Op+A525Oo9Kno6dG.AHEkrpZbF+ASaIy61cu6Ye41a2y8iBrowwAQJEzFNKjpT3yTGLym6V20h4qztgRgemZKVTLmTiyoSB4JGLKzJNl5nTnv5eOxTAsMTDe92e2AVdV91zroTT9w.lM8H1DFOa196+CLOuVVNzgrI43dm8aaG3WOvKXJ.n0UqnDZYet0XZWKjs0TUJ7IMcX7fnAbKNMVovFGD3Lafavk9R9+QVL6LOJNnpx.XgjS2JvyAQLNqRcWlmS+TEOVAVk9Ylg0klguTsCygMe9LywmKHPxjHu8nvZKBu0W.dUyCuJ4f2JfTgbPZCIj9B0A1QrPdFEDO+F019bZzHKvrmGJRdUV6+7H05A.G97xSrNm1JBFLWByuoRkRjcqTo3Kz0e5S05VqSSRuVjgG1jz5Ujg8Hs6Nn4wCIlM6ze3qI6Q5F.DJps4p9nCNOHP4BqHT38HuQ2nIDwLynjtQ8oQWPa92vuNfMIzidL8BZzYYiwPIbTCpmkPBQLCMRN23HHXQrNtAQSiwu020Jl15UhUvhOMxBr6Blm4aMgYK3YfqUHxi9ak5G.qAG0a3.xwMa073lcq2T61zfAdA7XgRHNOTdLkiS05UlFMGMhZyEbT0nXo6jgsdWLr86hgcdWLrKxPhB1uV2lGg9sFsGz+nZuN0SVu2Qmzo6McaZvGh3WK375a4S8.kOMxA135ASBC7gAlFIzMvfFbSG7xZ8wMo0IcqOrcutqJ5Pm46w7ojQS8s4r.eR7kVglLmqpVh.+dqh5+ccMu.aKOxnqpBasv9+FjAP0lSYq7T1BonqA7WVrZ.4hhYR.X4HZHDUwMgYudd.fzD0uV6tCIG26jgs6tPPfdpvwTdeT5iClxAjalhbywBrNt7HHGVMOOStKKFsPlFmMVl6xnnDGnwzEPbJGGRYicEvQP5xbjdIyg6ZlIVLnj.YWxSk5aYOp+XtqTgChHlLfZkWPXj+3hLPXO4IE00.DpA562ebsCDw.G0qVilMPuTuC9SMqODHiaynqxLnuU3lmFEANYY3k.OZxUpV2Fj1C+8wj1MRjENlQAoGcEJWam4Liz3zq3RaANYBm3+TNd5Yw7Hl+XSwPluC8pdiLMN0nH4IDHZPLsTYRWQ1HB3bKyhSSvYVj7S+TB.1ijjkAzZgZqks4vlZT4pm8rVhOF3xcM7C0KltRlybkYSaTLUL3uiwvB47476PdpI487oXVvgiE2prsGy9bpC4w6QXywoLDBhu.afywf81xerG07MaUhrEXKDg.+ABqDDnrIYmRxIfu81RjsEayhvYNhSo4DYcYMO1XepyPfnvfWh7lJkxuzxAvRZXC98HpSl9l2LcOwJ70LkF1+wu98H5W4lc65y05WWbor.c5cxflj50N5nCpU+GVNuU9TAcBlFSqa44cFTQRVt.3RLetHe.4NNrSRHe6GpQNvHFw5U1M.taj70eM4wxwQz3odv1.opyTXIS6Q5XA2LLxKHHJQ5Yvxi6Dpr4W0rUA8nDvN.5EXJXwDqr7xbWKN4RvWS7BrbfgTHoAxufYyk1+RD4Zim.PujPaudw8MM1GNwJm.cUygwh77cjadl4tTQxyIFhi0D7mr8bB5tNIDOpI1FsEhTBBCeGqqHFTdG0M.ToatVI7uJruYUIMDIWmBzkBaA1xrLu9Ey4v1ENkQkYVIYguCnb4MyWwmB2JNg5OU6tuqEOlkxuoUTj0rb22h9NYkNZFaRV5OPUTZFA9OMXzHwWinS.+NANHHFtZ9wuw7ioQ7zodatKtfsCnRRfgH8h.BkCmF6JHi5KFDk67moQXP3zvNft1FY1njD2k+qALeSi+ruHyKdK+hJKTrpznkyfkZWVcUr2pIDh9ghNj6qv7EeIia6J0nDEwFpIkrBqxyWfVNaCRP6rHp04uXNKIlaAIoK5rj68xW8ypttdgqHEwc2M6fVMm+GmtIRAWBS476BbIbkwneTrC3AM4EEZPXqG0JJY+udEqk755muD7xK0pD.Ji+dIB3qODpsm7RYQOhpepUe3I0NBq9Ap5qWZQwXq.f.NzQVPhwkWbv1jXmxBIusJK0mGmD32MfS64aJhPzuVmrLoQiVIML9LJvyiFsRxXixQ2kfl9SmbFlP9BKuoz4LBcOtXKop2dKo46X1VV4eNFC7a6y38Bo92VezJIsK.e6j1MfraXerIyA7EBw7LDBEZPufYSkc0po1fFeNOHTvaROFJE9Ltf5iR64Es5JLGj+DefxUye3f+k29yxdEgg6eIVLc1D+k8cE2Emwez9Y0a.y9I+L7AI.g2AWldKeL91GPA9jrIVLGjRg+g5MNpqKO8pmcfQ+l7rXR.cQ7sdRKx546OVOq4XcQmw5IsEqmzSrtrgX8jtg0m2JrdZev5IMAqjUkJpxGd3gBUNsmEgY3epHlKiysvogY9Y461bi2j3yU6D3L0C2v7OQBh2DBPP5BuKA91C9wL9r7uazxuaxF2u2M4teVm6Kb+B09Xd7Ui20VAdgv5223M4UndjpLETFX2.B+uymbZi6246LnrxmeR8lX4SUku8f.F+V07OBxh.Z868afU89+FXqmlsH4t.AJ9x7nX2SEjd+fEE4q.LFpXLhAIdT6Ncx.37gMEbM9P1HLyZg0vbfxwUvwXnx.puiX.liIgXUbbgDhUSI9qxd7+hecqOH7q67Q+5uv90s+fvut8G8q+B6W24WA+pZpeMoZEAJ9pExZbZJo7nArMsXdPgKwoFgVsF1z2BPvG87+e6428ChSzU+3I5OP1iIV1QAmZK6LDcjepXFv15K9eRUSsCNlTUQzsHHmZkxUTlvbXmZaiUYtITg5pkYqGfLa+.jYmGfL69.j4ad.x7rGfLe6cJC9epbso7fIxNPfI52TzBcgB4xRp7eAvxVm2D
yes i tried right click/ delete all and added new fx to the panels, now it works on my HISE
-
@Straticah Mhh... i must be doing something wrong. I tried on 2 OS (Linux Mint 21 / Windows 10), added FX in each FXPanel "container" , removed them via richt click -> "remove all" and re-added new FX, but the "containers" snaps back to their old positions, each time i try to drag them to a new position.
-
@toxonic did you compile after each step?
-
@Straticah Yeah, i tried it, nothing changes.. :-(
-
@toxonic that is really old code, I wonder if it still works, maybe it needs tweaking a bit I guess :)
But I see @Straticah made it work, great!
-
@toxonic I think I have some more developed code for that project, I'll look at it when I'm at the computer
-
@ulrik i'd love to see that!