@rglides Any chance you have a link? I browsed the snippet database, but I'm not sure I saw what you were talking about.
Posts
-
RE: Can Table Sliders be Knobs?
-
RE: Can Table Sliders be Knobs?
@ustk I will leave that to the masters for now and muscle it in with a custom panel. Lol, thanks for your help.
-
RE: Can Table Sliders be Knobs?
@ustk Yeahhh that's where my initial question came from about viewport sliders responding to the same JSON properties as standalone sliders. Adding these properties doesn't seem to change anything in the viewport, unfortunately.
-
RE: Can Table Sliders be Knobs?
@ustk Okay, I've made it far enough where I can change the look of the sliders to anything I want by using LAF.registerFunction("drawLinearSlider", function(g, obj){});
What I really want to achieve from that point is setting the drag style from horizontal to diagonal like a typical knob-style slider. Is that handled in the "feel" portion of look and feel?
-
RE: Can Table Sliders be Knobs?
@d-healey Thanks David.
It seems I'm hitting some limitations. When sliders are added to a viewport, do the sliders follow the same JSON properties as a typical standalone slider object? For example, should I be able to set"Style" : "knob";
in the viewport SetTableColumns function?
Docs link for quick reference:
https://docs.hise.dev/ui-components/plugin-components/knob.html -
Can Table Sliders be Knobs?
Hi! I have a scripted viewport that I want to use for creating MIDI maps. I like the workflow of using a knob to quickly choose a MIDI note, but I see that the default component type in a viewport is "slider." Is there any way to change those sliders to knobs? It can be using filmstrips, look and feel, or any other method you see fit.
Here's a snippet.
HiseSnippet 1408.3ocsWs2aaaCDmJIpnw6AVG1G.B+GCNqdox4UaSV1ZicxpQqaCpSSGPQPAsDkEWoIEjnahWQ+5t+deC1tSOrjbraSMvT.B7893c+3oSmFoc4ww5HhUsylDxIVesc+IJSP6.lPQ51gX8s18XwFdDMk0QSBYwwbOhk0p+NxvZ80HIO+yucDSxTt7BVDx4ZgK+YhQBSA2SezSER4ILO9YhQkzdmG00UqZqk5wP9rpsCIj49N1P9yYnZqXSdBKNfX8S1asku6Cbbdv1auqCissGisSK91Oj6umu6tNOzwavtNve6Qrt0wdBiNpugY3wDq0NR6Moef9RUZ.NWDKFH4HQKReHxorOQK8viHxkzNPH8NMuPES.ubZQYa0zx1OX2S3Ilxun78cIBnEVTt.ZsR0za0JoWqEkdyIkrJkRqklR2wtuajHzTHAymuxtqB5l9LnOUNUR0krh511s0fFJyliXuieRDPL0hF643zjB+aiCpUC5UwF56YQzQrvPgZ34B9kg5HC8PZtKFxMs0iB0JfnQ8PkzoNZ58tGsC2Wn3TVjQ3NVxLBvaTlxiZB3hHpG2mMVZn851oKUogpSo3U0nCouoFEdpelNrdyzelj10aRSoNBfQ4RNRaL5Q.0EPdLShuYL2bFCJ38zd7Fen150eo9xmvECCL02mtqSSfSOHqD84RtKFcfsIZLuYsOhGqRmKC5FpqVNdjJdgwocp7Fuo1GRyttc.OVu74KOueFa.WhBe7bDhMbT1Y7qL47dsvyD.LaskSsO1rZ.vB5aUiGMfGMsHMM.OGDRedlvaf+cVj+gasWK6ScdIIKkqikBuhrqhym0u8qn5TOeemLN8DpyYxwntSYwtJWuetUAub0Zs08yX12vC6K9qDlSYMQlD2mpzCfnNa5K4rnq2SeVYt4Y9QiAjZAWr9.bm8jrKThpcQ1kp1QbXPRF3yiYX0vqKIjc.J7pB.6QdwF.jkzLNjt8dGPAi6ir.TZwcNZJDoVMecDsg.T04.pf9KUu.tojqFZB.I28tajcZmFx2Ht.LKkYRdWAaueUOAJ2rPyxfz8Kkv2kJtlVHfZe5wpgvcObnCNyEUFQZMpX5FyZaFVZwQHsksO0mIi4k3WZvPByOd.zIvtPetAmhUtMrnA.v7ErJ0XZ8JqQ9XOOpKSJG.StnX0OMKotAL0PXVnPIwoL9iUIignZ0LQ.G.GokMzC9y7dhvmhjah3K5gGN8pwFIRKZQRMDYZj9xtJO9UP2CMJm7fYTSwuLCE0iYB.0Fq7Rhx6waKaTn9ze.mtWE5k.SCRqNIGPSfHFC5T8JfP4w9hMKAIfHlE6CtAl.v.vfEfOx7yF2.Gk0FlSrWv4KCCHhCkrIS04KANj.sPj0BeIRFNowh.AfSJATvz9EpFHpXcvszYE46OWYY9RxilqXbStnOkgMRaaMoo.ibEgsUptBzstYq.4ltfQIE0ptJg4Eg7L5O8NbjrMTvUmxxPPUSxhSee1hSbu7BIQ.N5V139Kjj7u7JtjW0EaU4dBbJDnPNLXCOOVc3uGVANckr0s6viemQGlna1dQfmuIw8phX9qOZRYhKwWEPrrs9wUHjfjoRH0emrq80VKDVHU6gSbqtkJtKel.nuUY0Pb8OUrvLo7t9eAqt57IWc8llh2w9TgwMX943JyIGgFx+G4X1B+ei8w99vRfEI3Z1m7GK618elv+R8X7MyvH1HAfCrgsy5CejjKGhtRwkwX+dEDUmR6fzXEnOW4kP7uvSlvVHsUlvV4BIiXtQ525ldW.+jhamvAxIUxmesN7cf.Ms00uALBll9VW2pt5ZFt0xZ31Kqg6rrFt6xZ3dKqg2eYM7AedCwW183wvW8jdsgP5c5wISrrrNVguAIAsR9O.lMlhT.
-
RE: Multi Channel / Multi Output Help!
@WepaAudio Here is the snippet
HiseSnippet 1272.3oc6Y0saZbDEdWfMxPZqZpRT6kihpTsUnFuKzzJE0ZrMXWTCAjwwN2EMd2AXpWlY0ryRLpp22Gu9HzGA+FzdlcAyr1DfPRZTZAYYw428aNybNyGPaA2kDFxEFl4OYT.wv7Sr5LhI6ePeLkYznlg4mY0DGJIBThp8GEfCCIdFllYORovLeNi3WWs69XeLykLUkgwobpK4ozAT4Tssq9KTe+CwdjSnCz7tR0Ftb1AbedDfmrV6XDfcu.2i7LrxsLVFl2otGUxEcjXIIzvL29buQc5yeEKw+Sogzy8IJAaiNPhRT2ZHQLjRd0gbeOExUVMNnO02q8j0enAj71SqFYSpF22pI0ids9oUkOO1.ZZD50EyLogY1Tvz90AyY.ISMHkKAR2ypiqfFHmZQgm6Z0fAaRcwP4WGJI9Zj4OxZc.G7fI2d.9BxgBP35H17w6rSQD7usdRgBvVPnDMDKPI66wqYzOhhOVrcOh7Xdjjx50DKEzK27g5mNdnJAkJgNCOjzkKFfNhvHBLTJrQzPj.hj3gjbjdPH6G4flcTNyIpxOpRgBZPbarmGrDYDWIky1ztn8VOAAYUAWRp0BnHHRhrUoLvOpmlp4jPmhNKHgN2NgNyIgkKVdAIr7sSX44jvJEqrfDV41IrR7F1Qbkk5WFvERz29SSdGND0.NMHhF.GbT90bDhDaB1PNsyIk164TTWpOIDQXPqEJJ.AoV4Ib77WAbEVpFYXo8oLrfRBKseDbBOrTSraqNunz4JoRwdCHQ1mGRTgOB5+Q016ruIbBV6pZbEgEAeHLjOG6k3zXyvefAUHpUAzxI2taDKtnf3rmwkjVrM2pvuUHegeu.5ll51cl1TsKBtuOQLSypQWh4E3lrnAmSDEgVI+Hx0NB8woGNbmka3faR2qlibVCFU1JfLVd9S2LF29Cu64MpgkX0zkw5.+BHBIUAGSX+BFYmLqIuUMR3ERd.Lz9VChfQfbuHeUep9bQ0kBiM.0iTCiTCbXgT4H8KMt4vxbu95wNZ0iErZWR3dOq1Toa+Yi2Ly.uPU68MdGe0ymZUuaWnCZJXyYc3Kl68LuygxCRfxcsTiliu.HFHOvZFC3mCyf+bYYFDrzLCZ4JAHbh.yBCfwF15Y9F1bzsUiHiXocOQUJuTKuCgkms9A0IJ07bipswrTICjSkolzK0EqyvvFRGBrZ7ZE5BKVUsS+ozNxOjbF0S1WKu+klZGc0+LV3A6KtoNflM8oBqka.S59VM++Pyd5e0ABu8yuxtbvcAj8xOAicnCB7I0YCI9vP5XL9EvT4t3He4Dso68ZxY7f9bFM0ohiI.csd8HoNrMyEzdRIP6dpl6W8XhOAGp0O90UeJkQvBnNQVwZwaNw2Yte8UVIvEoFXf9uw8NY+e+8NyuCElo9wyN8WZAy4cPwa2nO762o9vavcCOKZPG3RUWBfX3CR3qtuvLihtXh7NJYEb5.D7iE9a30Xi1JYywFsmXbEIP37w.Ahq1ckIPrQ0YPfv3Mi.wU6tl.wZBDu6IP3rl.wZBDqIPrl.w6IBDYlGAhr2h.wMdF4m4yH2aEIkwFclHqL5bCik0Mdsfw.rqf+R2jukO0nlMh0.ULV7uSQdqlJYjsQ727m9Vx.3RqW55lNU2JPmUMvxqZfUV0.+tUMvGupA98qZf+vhCTwoXuHIePRGFP9pc83upTSyDdWwMaF+iGdZVZ
-
RE: Multi Channel / Multi Output Help!
@WepaAudio Sure, give me a little time. I'm not sure I fully understand your problem. Just so you know, multi-output only works properly after compiling your instrument to VST3/AUi/whatever. It will not work in the standalone or plugin version of HISE.
-
RE: A "Searchable" Table Based Midi Browser
You can also select lblSearch and enable "updateEachKey" for a search that doesn't require you to hit enter after typing. ;)
-
RE: Detect if two paths intersect
@ulrik That's an interesting solution! I came up with something a little different. Any XY cursor and pad shape I use is likely going to be symmetrical, so I have the XY cursor area bounds set to a smaller version of the XY pad shape. When the mouse cursor moves outside of the XY pad bounds, the XY cursor locks to the smaller XY pad shape path. Not perfect for all shapes, but maybe close enough for my needs.
That's probably difficult to read. lol. Snippet below.
HiseSnippet 1395.3ocsW0saaaCElJIpcVaEaEXO.D8lo.n4ZmD2Mffh0DmjAiszZT2UzBCiBFIZahHSJHQmDg0bydr1U6QZuAamCorMUiaVQvpgUh44O9wye7n94pXdQgJm303UkYbh2W4OnTpm1cJSHI8Nh38k9GmlJxJ3u4sjCKyXEE7Dhm2l+LJfWisHlO+8OcHKkIi4qHQHuVIh4+pXlPuhZ+m8KhzzSXI7WIl4H8dOqWrR1UkplCfYS+VjLV74rI7myPw1vm3cuiSDZU9.MSyKHdacnJobvT0kRq7uVTHNKkiKZSF.FxR9DUZBhXjJo6TQZR+EG5BBXk9qbAaZcAeq+ohDwR5qbEeigAckFt9CuMpCuMqAu1tvqkC7VCj7bfzVVH8P+Aw4hL8JN1PSOolmOlAtcWnXkkrwede+tJPBot4L147SxgEK0H7IsZEQg+r89AAO9wz9LIOM.hAEZ5ErbZlL8Muk9T5BKLgq6plkojvhvGY39HP0akcyBjpTmqR6xRSOChngJogYE4pMuaNG7ZTXCyXIQTPV0k7DJCHCqjIz344vo1AdWU1mom5fuXiIPhgfQWIXks9Dk1tOeTAQrdUoAW.R0SqAnCPpOkNbmNQv2NcZgOi1OvB0lrjjpJoPqrKN61szZNyuQQeIOVyjSR4gCAy0JZuVQsaMBw55DADnCvGjZzZNNU.qRSHRcnZtLoHrcyVaafvAN96O7bU4+Vb31qSD7sCrWvyn.Guq6AzQopS4op4Eb5THVlJjSBL4.X5gg9xjiwykwZgRFxu.b9aG76AMDio1UMSxYSnu+8T6p3TQ747jsCZ.BYjxEK.90PYaQ3PqzWEY+e4nsAMLpzPOUTzLgoYMEE8jEhDNb.04y4.hqw9JfdkY1uNmxkbJ2uAv5Z3gmVvu0sXLCjvXH7A7MiEPFtdJmJvhyBtwEPyTvR5Yb8kbtjFyQdT03ZEGlZiYFWaUEBXQLpUyRO0sH.i+8b3FNzIXMbmQOdmHWB6BDFEcCuXjwQs8xSQcmk6tODKAtgSqlDsMRbM50MRECoIS3IPAGX6qoAWWkCcTN6RzcmWpqkC0Ghz5WplCT4qRgl.oOf9XEFKMddJ1fAcWEPSZtwcacYeWgouipPXbVAF+GdJbOSeuSojwIsuUtxZxUVWtcMxEzXRywvcdPQVn89shlSx4knyy.uD7Xg3YQmE3j.EIbTQSCTTmkpdVJTnf5NAKHtrdKkH5tnuplUMkx4fKZQNyRyCRU2HNA9n12De11yKyzVO5rYE1irosoU7ngWEUFUyIFUyUgMtVDneIOCColMMCuWhBAlX6MFABIhd5h3Ls9EJgwKtEJBZegnAahrjXybqowl4WuefiQdtRyegLzHdv0AzOj03wqkW01lxyWKabHm7aSwP47YmwycAKJHbye8wI7+3iS3NsSr8ZKGAUxdRg9EYb4GaFHR0ccvu9sdGA4w3LHUz.4x34ZABAui3W.CzYmHog+Q7hy0pLirUdWhWf1v8AKlWACdDALUx88MQIxUtCHV5t3RQhd5RB+0e7robwjoZWJl7yEWV.H5q8ghJ5JBmMYw.jMt2+.eP0DZ9rai5NtjI2bzKXnOUB18n9jf33uULf3YswuvtqPudco63w+uMd3mJDeneegNd55w3FqAiPT+yAFqFp9A9GOdLzueE.2x+j274YBZh8tfImxz4BHgy+4ymM.B0wbX2kPFIVO4sAl4aW2BWidfAbYhYAlPTwrMt1qhY6ELIyXw4p2U0TBGa+KLT.LIMuwRC+Sw0z1DSksqedF7VDuKNttotgh6bWUb26ph6cWUrycUwmbWU7GtqJ9i+2Jhuj2Ay0pY1xFB4z9GaZK54crjAYflrUx+xLqGow
-
RE: Words of Encouragement for Students Learning HISE
@skyscapeparadise
Yes - the documentation is not amazing. (Sorry to people who worked on it.) Coming from a platform like Native Instruments Kontakt, their KSP guide includes examples and use cases that are decently commented. At least they tell you possible values for function arguments.So my encouragement is to USE THE FORUM!
-
RE: Detect if two paths intersect
@Lindon Sure, I can do that, but it doesn't address the points in my original post about script working for arbitrary path shapes or the quick mouse movements. :face_savoring_food:
If it has to be done with trig, so be it!
-
Detect if two paths intersect
Is there an easy way to detect if two paths intersect? I want to make a circular XY pad, but I want the outer perimeter of the draggable XY cursor (tiny circle) to stop at the pad's boundaries (larger circle). Ideally, the script would work for arbitrary path shapes.
I can check if the pad's boundaries contains my mouse cursor position while clicking or dragging, but that does not account for the shape of the draggable XY cursor. It also leads to a case where the draggable XY cursor stops in an odd position if I drag my mouse quickly outside of the pad's boundaries.
See the snippet for what I've done so far.
HiseSnippet 1359.3ocsW02SaaDF+LfaW7V2Vk1GfS8eVPxMDfR2jPSsk.LEsRaTSWEUHT0E6KNmv4NK6y.Vq7O6S19HsuAaOO2YmbYjzMgVQQDtmW+cOucOLHWEwKJT4DuVusJiS79J+gUR8jdSXBIo+gDuuz+nzTQVA+z2SNnJiUTviIddq+yn.ds1fX94Oe1ArTlLhOmDg7NkHh+RwTgdN0AO+WDooGyh4uUL0Q5m779QJYOUppD.y59cIYrnKXI7WwPwVym3cuihEZU9PMSyKHdabfJtZ3D0URq7uSTHFkxwCaSFBFxR9XUZLhXjJo2DQZ7flKcAArxf4gf0sgfuy+DQrXF84ghu0vfNWC23g2ZKBu0W.da6ButNvaIPxyARaXgzC8GFkKxzy4XSM8kZd9XFD1cghUVxZe8886o.Ij5NSYWvONGNLSi1Osa2PJ7qM2OHXqsnCXRdZ.jCJzzKY4zLY5oum9SzFKjv08TSyTR3P6GY39HP0OI6NEHUoNWk1iklNBxnsURCyZx0NuWNGhZTvgYrXJSFSiJygqoCd.8UWwiGvzSbPUjQQjXavTykNVoWoTf+NPjPiD4Qobvg5I21Mu.z.LvY6rWH7AhROdut0ec99ANXoCKNttAositV27RgVCtX4dBfXiW5F1MbW7CXafrqMqkpNNchprfSm.AnTgLIvDIwfrg9rP73RYjVnjs4WB29MC9sfVhwT6oNw4rD5G+H0dJJUDcAOdyfVfPsfOfSzSDETv9bZLWyizEzoF2loJDnYoWI.Qjfb7lvk4tERGUpoPEu0LwJZeJV2QEZ5Up7KnrB2rXGHTngVqh1LYEXbgTSExnzRncE9CL9rI8YfsP7zIloYcDE8kEhXNDyVpgNydotNz9c04PXq4VojoUvE4RtA2XTHgMBSNlBsUcm.cwP2sg.DwLgLGzcM.qZ.r+hbplwoB4biETF9QPxLgGC0k.oanA2TmoOLmcEpSdkdgL8.3hpeipDnxmmnSfjLnO1IwRiJSwlIrKp.FHUegU5uuvzf0jECZgUgHncuBOtot7rcNeqcfi6ruUvpEDrxQvcmIXPqjNigw6uHMsscTdQmjbdElFLnSWlaiw0c5pb712jCfxNgM+tXJXkY.LAjXGxfNalOsl0j7s.xz56TxDtP8CL65.UoLtn81c5tIp1MM.NFSCN.tdrzR85nzRiOcbIDhBO65vpv4A0v4gsy27Vto4hyvICPVFaCWk2fVcq6PsWxLnP5t.+lBp2vyvRGiWxvY8PGAMxNENPHM86M0SzEGR2NpYxdHL4Buk3HkYD6jaMMNaEBbNF4UJM+0x1FwCtIf9OYMd7R4U61Td9RYiKNj+oTrsrb5HdtKXQAgWSW7IZ+U+Ds6FDQ1WQbDTI6KE5WmwkqZuBR8SOve8q8ODJaw20qoAxkwy0BDBdGxuDVRx9JeK+C4EWnUYFYqitDu.sg6CZ1A.SdDA7R+88MYIx0tKcU4d3JQrdxLB+wu+7IbQxDsKESASySG.h9Fen6kNmvnjlkxZcu+B9AUSn4S+TT2wkL41qy.KRohwoTKtcEtRYMCHetvJM3ZKPWutxcky+2V45+JDen+.gNZxxw3ZKAiPV+yAFqWT8A9GMdL7.8b.tg+wm94YqTh8MmjSX5bATv4+pxoCgTcDG7tDpHw9Iu0vJe64t3YLBLjKiMGvBhZlaim8pYtcCSxTVTt5C0CkvUg+BCE.SRy+EPK+SvyzsIlNa237TXy7ODEsnotkh6bWUb26phO4tp3d2UEe5cUwe3tp3O9uqH9ON8hRsZpssgPNYvQlwhddGIw8vLUqj+FPM8iEX
-
RE: Text Kerning / Character Spacing?
@d-healey Hmm this might work for monospace fonts, but I get different results based on getting the string width of a space or any character. I don't see why the kerning adds a space at the end of a string. I don't think this is common.
Maybe Christoph can provide some insight? @Christoph-Hart
-
RE: Text Kerning / Character Spacing?
Might anyone know how to calculate that extra bit of kerning so I can account for it?
-
RE: Text Kerning / Character Spacing?
I see the source of my confusion.
Usingg.setFontWithSpacing(font, size, spacing);
results in a length ofspacing
at the end of the string.For example, if I write
g.getStringWidth("TEXT");
I expect TEXT's width and spacing (shown with underscores) to be calculated as T_E_X_T.
Instead, it is calculated as T_E_X_T_.So using
g.drawAlignedText("TEXT", [0, 0, this.getWidth(), this.getHeight()], "centred");
doesn't actually center the text due to that kerning offset. -
RE: Text Kerning / Character Spacing?
@d-healey Oops. You are right. Something else must be wrong in my code. Thanks!
I'm off to debug. :) -
RE: Text Kerning / Character Spacing?
@d-healey Are you suggesting to keep using that, or asking for clarification? I am using g.getStringWidth("TEXT"); after setting the font using g.setFontWithSpacing(). The value of g.getStringWidth stays the same as if the spacing was set to 0.
-
RE: Text Kerning / Character Spacing?
@d-healey Excellent! Now if I want to get the width of that text, getStringWidth doesn't work anymore. Is there an alternative for that?
-
Text Kerning / Character Spacing?
Hi all,
Is there control over the space between each character when using drawText in a paint routine?
Thanks!