LAF ScriptSlider?



  • I've been late to the LAF-show, it's a real handy way to customise
    gui items, I love it, thank you @Christoph-Hart !
    I've read the documentation but I could not find anything about laf for ScriptSliders, is it implemented and I have missed it or...?



  • @ulrik Yeah I implemented it a while ago and wrote some quick doc more recently but the doc is not yet online...
    I’m not in front of my computer but I think I’ve made something like drawRotarySlider and drawLinearSlider if I’m not mistaken...
    Also there are plenty of objects to handle the values, min, max, normalized, skew factor, suffix and others... I’ll be more specific when back home tonight...



  • Custom LAF functions for Sliders

    On top of the habitual:

    bgColour
    itemColour1
    itemColour2
    textColour
    

    You have access to all the following objects:

    'drawRotarySlider'
    id
    text
    area
    value
    valueNormalized
    valueSuffixString
    suffix
    skew
    min
    max
    clicked
    hover
    
    'drawLinearSlider'
    id
    text
    area
    valueSuffixString
    suffix
    skew
    style	// Horizontal:2, Vertical:3, Range:9
    clicked
    hover
    
    // Vertical & Horizontal style slider
    min
    max
    value
    valueNormalized
    
    // Range style slider
    valueRangeStyleMin
    valueRangeStyleMax
    valueRangeStyleMinNormalized
    valueRangeStyleMaxNormalized
    

    ⚠ NOTES:
    The range Slider is a bit buggy if I remember well, so this is subject to change. I might add a separate LAF function for this one so please don't use Custom LAF for Range Sliders except for testing purposes...



  • @ustk Wow, thank you I will test right away 🙏



  • @ustk waiting on this .......



  • @Jay it works already, just don’t use it for range sliders



  • @ustk I noticed the "obj.textColour" is not picked up inside laf code

    HiseSnippet 1374.3ocsW0saaaCElJMJXwaYaEXO.bA6BmTGGaul1MDrUm+bQPyOd0ocCnnniQhxhKRjpTzIwcMWNf9Br2kc4d.1yvvdD186hrCIksjRcRCRQ0Es47K+NGd34bbWovillJjHmYOXXBE47It8FxUgaDRXbz1apYryZcv8hX9TIZ8gIjzTpOxw4VOTqgyrSiLe+6CVmDQ3dzbVHzSELO5NrXlJma21OhEE0g3SOfEWP661daOAeCQjX.fla41.kP7NhzmtGQq1TtHmY1xmoDxdJhhlhbldcg+vdghS3V8eJKkcXDUSzD0CbjkcGQjuFwZtnMBYQ9cGE0oHvKcyyA2xlC9B2cY9rw7yyEetQ.N2hh4CmotJ30rH7Zb8gmSA3MsEd21smmjknxknw1G6tMWQkAD3JnHrr5hl52mwcCAnAWUOlbDsiDHFaQ060nQM7JMZrvpyUYtJvEQpBeLQhiHA3uCuEuOiSq6IoPn8vHwgjHqa2QHNZMteGJMpp0zkWFi2j5EQjDECbSQm8n81ecvaifQepZCQbhfCDUmWKbdqOz5lTPQ641knBMGh9HdrPQjCwolxR3P.bVWR6yRg.py.tm9rqNuujbhUSa8670vAiD1uFVb3urPkectJX3SelRBuOENWfOjiNEuj8uX7Us5.GbJ3LEnnOivyMzvc+ffTpBLuU8UxLHWChz6fPl2Qb3BCToQ8lqVR3Ox7Ugffl0a.GaK3eWrjMkbHficgqPb5.IEOTL.Ko5SVERwIPR5KsZkT2KhRjlTVIa8HQdChfLpwBJ2OKdvARQrgm2.oDR7.3hFPywIn53fbohw7cxPbQdKhqpydFWjmIWXYSRtDjRpS78WS5U8YkxRKiaUCOQN1j0cJI7RE77Zkw5RPxuwJ0xClEJbSnSeqAUaP.lnqOWWLf6mZBDBv9Ysd9Hs6WOUW9p6VYDeXeKwEx1KxBr4gPwwTI90u1jH7h.vQ8WvpTVE3E8ZiSCB9Vy2BqZT3rEWtnu6WO.ZjtUTDKIkNFhWF9XJZrkrYtJ52GlmUI0FG5lmEih1KTEdYNWQOUUN7s9dsHVeN0+.PbdwP9ATCOuGTlIo9vC+Jmk0.YQ6K7cfNN5mVu6W3VMuhW3W2Dx62c08MeitqJdG8XcUD0+wTOET7GkeYAsbq2XRIU6+kV+jP.luG4TaRcwkGkSvB9dBEcedUcZY1JmUAeQQAASTltWrTDEQkSTrdVt7pLrJeP7gTYMaOkwJBC0JO0z8xmZVbntmczPAEE7s4L09IT9kMKEkMOAlpNUFp.UUlYpeZ1L0r8bXvnyYb0ijPF7VboFz0v1OqDqlkbx+7C+we+.zS1dShhnGvmgJ.oITohoSBNaROF1bxNteV2MooGoDIFXmMuD4L26B3mlC5UZOLmnU6SzsIyYbP6PJqenpHm3h618U+ILMr.Y6QM6.dyfPu5bM272SsrrQ+WY1Ztu4MmaTNV3CX20sKgifGzI8XuxPCi+z42wA4rW6LbA788Eh11+7nn00wGnGEoVp79VZv8W+F572FxmetExEi4W9xWdtcY12Z4LXEQgud5Z48F0KKmI.dVTZAM8RX7TlZXwko+frL40Et21sKS4ENY7N0Dvq9E0GX7lsZ9btaED.8QyA6ztc9oO76gifd3JFu+tDkjA0Zt6MHtGTM3QAjv4zHcqKmozcGrzMzz5LSOXQCCgtPJSXSMsSlvliDhhIdRwK7rsWzK++QFN.l3leCzrt6powi6m35B6xfhgeSxK77zohk.rOYaZcCr4quA1b2afMqbCr4d2.at+Mvlu4JsQ+yAWafRDael.L5tkoutiyVbBTkYpHQ+O.ysLjO
    


  • @ustk I have to have the

    var p = Content.createPath();
    

    outside the

    laf.registerFunction()
    

    or it will not work, why is that?



  • @ulrik textColour isn't working with the stock slider either so this should have something to do with a bug in the slider wrapper somehow, it's not related to custom LAF. I'm checking if I can do something...

    Like for panels, I think you always need to create the path outside anyway



  • @ustk I see, no hurry, I can use "itemColour2" for my purpose, thank you!



  • @ustk where do I find the "skew" property, or Object as you say?



  • @ulrik The skew factor is not a public component property, it is calculated behind the scene. It's calculated to take the middlePosition property into account. Therefore you can only access it only from obj in the custom LAF
    The skew is rarely necessary since value and valueNormalized should cover all the needs, but I had a special use case where I needed it, so it might be the reason I put it in the custom LAF I don't really remember to be honest... The associated function is getSkewFactor



  • @ustk I understand, thank you!



  • @ulrik But What's Up With Pan-Pot?



  • @Natan what about it?
    It's still a ScriptSlider and you can use the LAF on it as well

    Here I've used the

    laf.registerFunction("drawLinearSlider"...
    

    for the gain, pan and voices, but I chose to add an extra Label to display the values
    and if you want to have "L" "C" and "R" for the pan, you can easily script it

    Here I have

    showTextBox Disabled
    

    panpot.gif



  • @ulrik Thank You
    But I Mean, How The LAF Knobs Can Act In Pan Scenarios.
    The One You Posted Above Goes From Left To Right.
    Have You Made Any Left To Center, Center To Right Knobs?
    Like This One:
    alt text



  • @Natan Ok, no I have not tried to make that kind of Pan Knob, I guess you have to use 2 arcs and separate Pan from other LAF Knobs that use only 1 arc.

    at the moment the property "mode" is not available as I can see @ustk ?

    I think I would write "pan" as the suffix in the pan knobs, and use the

    if (obj.suffix == "pan")
    

    to separate them from other knobs, you could try it.



  • @ulrik Ok I tried, no need for 2 arcs in this one, however this lacks knob pointer

    This will work as a regular Slider, for it to work as a pan slider you have to set the text and mode property to "Pan"

    panslider.gif

    HiseSnippet 1438.3ocuWstaaaCEVJIpawaYHEXO.b9WNsNNxdMcCHKa14hKLZRpacZ6FJJJXjnr3hDo.EUa7FJvdQ56xdP1Cw9+9Q2gjVVRNNoEYWDJBJO23G+NGxywCEbORZJWXYu5oSRHV1etynILY39gXJyZvAfbmi50GMDyr1aRBNMk3aYau7CTpsWcEK82e9C6givLORgHKqmwodjinwTYgzgceHMJpO1mbJMtj02q6.ONaedDOCfxxNtVIXuywiImfUlsjik8sNzmJ4hQRrjjZYuxdb+IiB4ugYr+YzT5YQD0h1Vif.YD2mG4qPrRp09gzH+g4G4TKHJCKHfkMDvW5bL0mNSdAQrtVApvix7g8RWG7ZWFdtKDdtKBd1kf2JF3camQdBZhrPiBaely.ljHBvPJnLrL1Zsze7IN6yAKXxVw3yI8EvhYdz39ttMQa65twNqUasZPhHUhdMVfhvAncQGxFSYjVdBBbzdPD+LbjIrGw4m2i42mPhZXbU4TB3R9dY7YHVFN0fs1BgdBWhESPoQTehvHZP.JCPLBmhvpRMzHsxlnThDIIWHQXlOJl6SPIBdBQHojTjjipCFWesZ.PaIHioovIpeFySR4rF08E32X1LS3p2DEjqbbSD+rediZ+5Z0PvmB3BLaLA.OHGHoKPaZ9eT1NFaL+EfaJDRIXtOEyJbWK8QAAJHuKpSqsq3lxBrv6zPp24LHuAl31pyNUT9bpuLDTztkKr4cf+dmJ9LONNFxjnzLAAMgmgDDMYEBTDv2ekwpjVdQDrPy9U70CG4kEAIGsGDfcMmGTffGqk4kIDPND.WTFo.mfoyNjaV9Le2oHtrr6fZn3PcHJ3yM1RS0Whe.yffVu97XEseHw6bDMPG.c4vt6lm5U1.ZZbIUaXzMMAaHCrueOgWiWTISrEpSSzBkXRH2shxqTwKahfaQynmbFu3jjeZR.VViTMsjVnL+XXnquC4tQgtRGCCcoopipCf3XHc2BeVZguaryLieagejnTxb6w2+QrGOQsGyb4Ji7GJL6Wujq0JEfhz7fRIXZJJkGSjgT1XCxkg.uUJoWro+elhqTxuIbG1c6qHoaN2yQbuc9Zd0c0dvqjfoIsFSj6wyX9lTIFD+hNur5U2wsfswzmTazYiMKxsZbq.nA6gQQzjTxrvTnsp2TII1rrcgIpmM0OYmzbF7zuVlin4dV5CG7NUCduH5XFw+THO2.3lhX2DU2CdxQP7qeoGrPGQGGJYP4Poc6ApGs.O5Cm4Fuv8hs2NP+ouJp9GHwU+U4.TYwVET7UQd0dqxh7dGHN6Dtj7HVCn8QsUqAUyyqJHXg5TsEE7nHhXgpUiDItNGavxhOS0VzbKO2PX1fpCe3b0CeTd1HOSW5RFxYCXT4iRHrqZhIqos1UCmLEUfoR8nIewzQSLcasn9pgGG16jW8vS1yRC4YC78aOrq0SGb.VhyCDDygyZsCxNf7ZX7QyLOq5b.I8bIOQaabBmoPf85eDa6Ey1x0mzcRw.mOs6aTWvK.DtaHQUgUVR9kKP1s.IuWItnpVI8wO9wZop2r.d2QMlbo5dkIu6cu6uTlDS88iHC4oTURs7fxp4ZxcNt7X0+zuCygTZYWX9ljQzegTdx6zrf.5Ep70Qv70WZdQXpUtupSe0QYUyuOUgBMkmYTMWHCP4jx6x+34aWXwzGIbusyPpzKbw3coEfWnn5+Z7N8WKrlygAADOYAXWwo+O9u6OMXgP4I7LI7XHz7Wnx9NmjEOBJ47H.RXLn4HHydI0EVyZW0ZEyLB5VoW7d3apx1p01SU1NWoUL1Svekm4Zt52i7oZI.lX5eV1pNGqViZme61wAZHppzouxySQEaBXew9z4F3yWeC74d2.e19F3y8uA97M2.e91q0G0uPsWljGatl.BFdn9UVa6CYXnJSWQZ82.r+XSdB
    

    If we could have LAF Slider to read the mode property it would be great 🙂



  • @ulrik With pointer
    pansliderWpointer.gif

    HiseSnippet 1530.3ocuWstaaaCEVNMZXwaYHEXO.b9WNsNNxt0sCHKa14hKLpSpabZ2FBJJnknr3hDo.Eca7FJvdQ56xdj1+2O5NjzxRx1IsH6hPfQ34F+32g7vCGH3tjjDtvpzFmOMlXU5KsGNkICNL.SYV8NBja2uSWz.Ly5fow3jDhmUoR24IJ0k1XcK82e9CGfCwLWRlHKqWxotj9zHpLS5f1OkFF1E6QNmFky5G1tmKmcHOjOAfxcrcrhwtWhGSNEqLaMaqRe1wdTIWLThkjDqRqe.2a5v.9aYF6eIMgNJjnFzvZHDHi3t7POEhURsNLfF5MHcImXAQYPFAbGCA701mP8nykmQDaoUfx7HOeTZsaBdMxCOmUBOmUAuR4f25F3cW6gtBZrLSiBaegcOljH7wPJHOrL1Zs1VaXeHGrfIqGgujzU.Cl6Q0G43TC0xwY681r7lkgDQhD8Fr.Eh8Q6iNlMlxH0cEDXo8jP9HbnIr847K6v75RHgUMtpbJFbIctL9L.KClYvt6hPmwkXwTTRH0iHLh54il.HFgSPX0VMzPsxZnDhDIIWIQXlGJh6QPwBdLQHojDjjip.FWYyx.PqKHioIvJp6DlqjxYUq3Ivu0LYlvUoFxOU43ZH9neY6x+1lkQvmB3BLaLA.OHGHoqP6X9OJaOiMleA3l.gTBl6QwrL20ReluuBx6iZVuUA2TVfEtmGPcujA4MvDm5M2qfxej5IC.EMp6.SdS326UvmEwwIPlDkLQPPS4SPBhlrB.JB36uwXUbc2PBVnY+B95hCcmDBIGsGDfcMqGjufGok4NQHfbH.tvIjLbBlNeQtS9078mg37xtGpphC0gHiO2dWMUuD+.lAAsRkEwJ5v.h6kHpuN.5sC6ueZpWYCno5Rp11naVB1PFXOuNB2pWTHSrKpYMzJkXRH2ufxqUwqpgfSQyomTFOakjtZhAVViTMsjjoLcYXnquC4rcltbKCCcoop9U.PbBjtqiGkj4616M232k4GILgrvb78eBywYp4XtKWaj+Xg4vJ4bsbt.jkl6kKASSPI7HhLfxFaPtL.3sbI8rI8+yTbgs76.mgcZcMIcy5dAh6cKtmWcVsCTkDLMt9Xh7.9DlmIUhAwWz7UEO5NtNLMl6I0FMZrYPpUiq6CWvdbXHMNgLOLYZK5MURhLCajYhprotjcbs4vSWsLEQKTV5iG7lECdmP5XFw6bHOWE3lrXWCUwEJ4HHdUVpfEpOcbfjAaGxMaOQUzB7nKrlqdgyUsZ4q+zGEU+ARbzeEV.EFraFEeyjWFTFvop6NScZDbyCqOdJQTUJTm9RUH3ptApNe6QMzE4oQ8dvED7pUwlNW83G66qVFEQ5YpMKDuyHtRnfZHo5hgeVM2r7FreswRy4Jr5A0V1wlKKqQKfKykcgUpgGfJPuSIN89VDmcJWRdFqJbka4MJCU.VTku+J0oZkPvCCUAcEpUsQJtIGqxlDMR0JgoxXpgP+TEaXy95aXKe+jtlNaxYHm0iQkOKlvtttLsl0NjpgtYnBLUpam6ql0NmoCEKpmpg6AcN80O8zCrzPNqI4JssdQuivRbZffXNXd6PfriHuAZ41zm3F1GQRtTxi01FEyYJDTZqOgo8p4S4VSaOMa9eQ62pJJNWvuiaGPTmJyKIsfDH6y.IePINqRfR5ye9y0RU04Ad2V8zhb0JTl792+9+RYRD0yKjLfmPUI07OtP0KXpyQ4eJxO+GPua4F1F5ILdH8WI4esRxDee5Up7Ue3MIK0iMzoO2S0cTw1+Uu4YlBEZx2mspWZFfxo4mk+wuIXkal9Dg6csGPktAqFuqsB7Bap9uFuydg0l1G66C0rx.651c+o+ceN0JgBTuTBWf.MLITYe6SmDMD1x4R.jvXPCEfrRqoNvZF6nFqXlgPgM8fO.eyT1PMtzLkMRUZEgcE7W6ZNlqdC2mqk.XhoeJ6F1mnFiZjd511Fpsp1oSesqqhJ1Av9p8o4svmGbK74g2BeZcK74Q2Bed7svmu8F8Q8p9NSj7HywDPvfi0UYKU5XFF1ko2QZ82v1UGpo
    


  • @ulrik ...and search light 😂
    pansliderWpointerAndSearchLight.gif

    HiseSnippet 1541.3ocuXstaaaCEVJMpXwaYnEXO.b9WNsNNxt0sCHKaw4hKLpSpabZ2JBJJnknr3hDo.Eca7FJvdQ56Rej1+2O5NjzxRxwosK6hPPP34F+32g7vCy.A2ijlxEV1qc5zDhk8W4LbJSFteHlxr5c.H2oemtnAXl0dSSvooDeKa6a7HkZ60V0R+8G+3d3HLyijKxx54bpGoOMlJykNX2GSih5h8ImRiKX882smGmsOOhOAfxMbbsRvdmiGSNFqLaEGK6adnOUxECkXII0xd0839SGFxeCyX+yoozQQD0flVCg.YD2kG4qPrRp09gzH+AYK4TKHJCxIfaXHfuw4HpOct7bh3VZEnbOJxG1q7wfWyhvycovycYvyt.7V0.ua6LzSPSj4ZTX6Kc5wjDQ.FRAEgkwVqUNdMm84fELYiX74jtBXvbOp8.W25n1ttar85UVuBjHRknWiEnHb.ZGzgrwTFogmf.KsGEwGgiLgsOmedGleWBIplwUkSIfKYykwmAXY3LC1ZKD5DtDKlhRin9DgQTu.zD.wHbJBq1pgFpUVGkRjHI4BIBy7QwbeBJQvSHBIkjhjbTUv3pqWA.ZCAYLMEVQcmv7jTNqVUeA9MlIyDtp0QAYJGWGwG8KaT42VuBB9T.WfYiI.3A4.IcAZSyeQYaarw7a.toPHkf49TLK2cszmDDnf7NnVMZWxMkEXg2ogTuyYPdCLwsQqsKo7mn9xPPQyFtvj2B98cJ4yh33HHShRmHHno7IHAQSVg.EA782ZrJogWDAKzreIe8vQdShfji1CBvtl0CJPvi0x7lHDPND.WzDRNNASmuH2r3Z9tyPbQY2AUSwg5PjymarklpuD+.lAAsZ0EwJZ+Ph24HZfN.5sC6rSVpWYCno1kTsgQ2rDrgLv99cDd0NqTlXKTq5nkJwjPtaIkWohWVGAmhlSOYLd9JIa0j.rrFoZZIMWY1xvPWeOxcibcEVFF5RSU8qBf3HHc2.OJM22M1dtwuM2ORTJYg43G9LliSTywbWtxH+oBy9UK3ZkBAHOM2qPBllhR4wDYHkM1fbYHvaER54S5+mo3Ra42DNC619JR5l08BD2aWbOu5rZGnJIXZRiwD4d7ILeSpDChOq0KKezcbCXZL2SpMZzXyfLqF2H.tf8vnHZRJYdXx0V1apjDaF1L2DUYScI6j5ygmtZYFhVnrzmN3sJG7NQzwLh+oPdtFvM4wtNppGTxQP7qVdUmuGY.mpt1JKbifh9r93oDQMoPswOSgfqtHt17LSczYEWA5z+BBd4xVHtW7vGFD35ZtbLmgOQkmH9mP7jPsrHRsEC+rxc4TFrUo4klykX08peYGacYYMaC6FKPrvJ0vCWpTOpOcbnjAGjVfbf6Y9aSKORcMAji5BbPsybunc6.8mt3m5GPhq9qTfJMXqhwb4aWq7VkEY2Vi3ri4RxSX0fKrqrVEn9whpBBVpNUiHBdTjhWVhZUSnhOli0XShGoZDwTWMyPnarxs64b0s6UraTOSeQELjy5wnxmjPXWUOpVyZlR0N3LTAlJ0MC90yZFzzeiE0W0t9fNG+pGe7dVZHm2h8Kdu0y5c.VhyBDDyAyalBjc.40PC6ltLWy4.R54Rdh113DNSg.6a8YLsWLeJu0zcmlO+Oa22nJoNWvui2Mjn1YVTRV4LP1MAIePINuNhR5Se5S0RU2R.7ti5gIEpznL4cu6c+oxjXpueDY.OkpRpEeZhpSxLmiK9PlW7dnyuBC2E5nLYH8WIEeqS5jf.5Ep7Ue3EMWpCc3cBbeUuUke7f5ESyTnPSwtzUchy.TNs3r7O9EEKcyzmIbusy.pzKb43ckkfWXS0+03c16yV24vf.nraNXW0o6O+u6iwVJTfR9RnHJztkPk8cNdR7PXKmGAPBiAsi.xrWQcf0L1UMVwLCgZy5Ae.9loroZr8LkMyTZEi8D7W4YNlqdA3Wnk.XhoeH7ZNGoFiZlc51wAtdPsSm9JOOEUrIf8k6SqqgO26Z3y8uF9z9Z3yCtF97vqgOe2G0G0+SfNSj7XywDPvfC0UYssOjggcY5cjV+ETMTxJG
    

Log in to reply
 

4
Online

1.3k
Users

4.3k
Topics

38.6k
Posts