New Feature (Probably?) Adds Full Component Access in LAF
-
@clevername27 I can't give an example because I don't have your additions. Maybe you could post the code that isn't working and I'll see if I can spot any issues. BTW I think it's already possible to create tooltips in the way you describe for enabled/disabled components. Without using laf.
-
@clevername27 this is an example with custom made tooltip panel, and LAF knob with different tooltip.
Maybe it's not a good idea to get a reference to the component inside the laf, I remember Christoph talked about not using outside references and I don't know if that has changed?Anyway, you can accomplish to have separate tooltips for enabled/disabled (this is actually not disabling the component, because if you do, you'll get not response from the obj at all, no obj.hover)
What I did was in the Knobs callback, check if it's "text" property has a "1" or not.
A bit cumbersam yeah I know but...HiseSnippet 1455.3ocsW0maaaCEWJIJnRacncXG.B8Wx.dt1ccsCsHq9yTXD2DiZuhALrVvHQYwEYRMI5jZrVfgcU1QXWfcA1cXGgcC1djTxRtwwMM.SHHVjuO3u268ijOMNk6Sxx3oFl1SWlPLL+TqIKYhndQXJyXXe4Dw3PAmGKnIFcWlfyxHAFll69LoFl16Ynd9mm1EGiY9jxoLLdIm5SFQmSEkyNt8Qz33CwAjoz4Uz9AsG5yY83w7E.Z10poQB1+L7LxwXoZ6XYXt+f.pfmNQfEjLPmt7fkSh3Wvz5+RZF8zXhbPKiIfizSazKhFGLtHRyLLL2abYbuqNt+BqmSCnqluL9uiR.pzhp4.yc1FjZ8Q.IyJPZOMjtq0D+TZhnThDOeh0PlfjFhgTcUnn00Xm+XeqdbPClnwb7YjCSgAqrv6gMaVGA+q1Sbbfzcl.cNNEcDieJ5.TgcyHhd74IbFLvyUJzEzuTcodo73XRvVMbc0V2ESAB0TZxUZatboQN4u2HiHFCUEwK3KDTFwKbAyWP4LuY0b9EG6YREz7GO8OYMtHhJHfO.gAo3K5DSmwHASIuQ3IhnYMBvBbibxccjZJ.Gi3933t7ErfLul0pibiIgBITdWYZ6H1oivgUvueJA3.JSGw4m0gEbHgD6IsPqaiTxLZFTHNr.2tRL8Bt.mtbRLMfj5VGUFT0Q7S+IUjISX33jHL.QZBDMN126dH+Hh+YHZHhvv.GK.wSQAzL060QPt.QEHr.hJBxuHylgDPviRvovtJ.KZmW3gCjKYCkFGb.xskK5oHQ5BB5wnPbbFIeosgbDxUlsbK8r1SxgWUQU5aZPspNgJAjN8ivr.TVRLUganLygYP3zT7RsqE.nT9W5UO2bybq0PYjm6aUjEaHg3kGO0brgrmsJ0A11pQSXssEJZmP7CM+QX36brIPjstlMa7n0zrUtlyZDBmc0IN1ys4aBCen5wUGQN1E7zpjp7TZD+bRpLYBy7Xjq6SJ0NkjHI0dZurQRLUD0Qhr0o000bhZaldKW0ywwKHcxjiUjoFXfiBzYenZjRBVwnkaOkq6kHuZhqTEGnfczwmzE0qynQc6z6HGJKF1Dthuh3Loax2y6shVTGoPghGKKMqDjWEAr4VKmsA0K60OzPhpWJs2S6E.v.X114T57mxG8vwwmB2g3sFzTQiNflNXxzgG+LzzSPCNtS2QCP8GNQ8qLT2PDNPwq5q2j0Uv1RzhbrKBf7nLWFvBfPEHAMUDGkR9QX1LRf2Viu2ewupX8J.I36JQxwbA4Dlmpr37NGz6KJLbixVUcR2nX4M5oayPO1h4mRRqRJjJBW4s98n6e8tG0WmnpnHmMjQEmjPxGeHONPd+n78KeqqQdlFt+c2bDBuIT299Y429pOY1fBNYeKY0xPg87FW96eO4udpwUYa2EBAmor8ysd+5xZ9Q+bMvvcrVeGxFPy2MrObBjrmh7vCB4DRpfJyrl8ImCMko6vv1pOI6LAOAJ.qXZFl25CkAdSIposWVcvEz.QT4DupcDgNKpR6eCaWzKo48sjWgff+Jt+IWzaKlu35rBAFxMREsPUh280381E8KgYjXEbssxOksJhMLVVcv5H9O+sKg3us8FVqqWE9JxS+5O+gyS821ptM9P4Z1dw1pMsIan1Xb4tPg9e4AKhwh0aJV18et.XG9ZchJ61jkQEKq90AeDcJ2bqcJecg3csFSE9QaFi6rALBaX9+.i4eewssFDFR7Ek.bOqC+9a5GS7AVdcGxydNVjRA9f0wKlOAZbvm.qNC1b.N2xbG4AN5wMkikYfIDVfZv+BO4BaIGalKrUgPi4X+T9q80jO4WvbK0L.lXpOXy154xwnVEmPYY0rQSi4vGS8ZeeY3+kvQxa1l6eCr4qtA17fafMe8MvlGdCr4Q2.a9lsZi76X6rPvmq2N.SLdf5lBSS8IWJVnw+wXSdYL
-
I remember Christoph talked about not using outside references and I don't know if that has changed
It seems to not cause any issues. But I still avoid it generally, unless there is no alternative. In the case of tooltips I don't see any reason to involve laf, it can all be done with panels/timers/broadcasters already.
-
@d-healey thank you David, do you have Broadcaster example that listen to MouseEvents, hover?
-
@ulrik See the last post in this thread (with the link to Christoph's example) - https://forum.hise.audio/topic/6104/tooltip-panel-is-not-working-on-the-project-i-m-working-on/18
-
Thank you, @d-healey for your many comments. Thank you, @ulrik, for taking the time to write this code - an elegant solution. There's simply too many widgets in my script for me to alter the meaning of enabling, though. I must be the last person to learn that, while disabled states are passed to LAF functions, mouse-overs are only passed if the component is enabled. So, while I've got access to a component's tooltip within the LAF function, it's ultimately not useful. I think what I'm trying to do (separated tooltips for enabled and disabled states, by writing only a single function) just isn't what the built-in functions are for.
-
I think what I'm trying to do (separated tooltips for enabled and disabled states, by writing only a single function) just isn't what the built-in functions are for.
You can achieve this with other (non laf) functions.Oh I just reread what you said about the mouse events not triggering for disabled components. Seems this is also the case for broadcasters so indeed it won't work! -
@d-healey said in New Feature (Probably?) Adds Full Component Access in LAF:
Oh I just reread what you said about the mouse events not triggering for disabled components. Seems this is also the case for broadcasters so indeed it won't work!
Actually the broadcaster will work also for deactivated components.
HiseSnippet 1712.3ocsXstaSbDEd2jro3sEJHQ6um3ePWWBF6xkVAMPH2PQPRbqCTpPonw6N16TVOi0NyFGWDR7bzGi9DzGIdCZOmYu30WRTZTwJJwyYlyY9N2OSZEK8YJkL1xtxgiFvrr+Bm1iD5vMCobg0taYY+UNaDKoA9TklESNTJiz7AVaLZ.UoXAV11K9T7n1UVxx74iOdCZDU3yFSxx5kRtO6479b8XpsV+Y7nncnArC48Kc56t9t9RwlxHYB.qEcZXMf5+VZO19T7XK3XYu71AbsLtslpYJK6k1PFLpcnbnH87ujq3chX3hlVsAAkRdGYT.hXjp0lg7nfV4puxBjRqwFiESMFW2YOd.uf9XixUMaPFyQY6g8BSBuEm.dMKCuFkf2bfjcIHsTJjtlSa+X9.83cP774N6J.2SWJX1KCkzyZsvedImMkvID558ouksSLrnfCu62nwpD3W0dnqKX5UZxwzBW8uP09gfmeMx1hdbAqteLCzqRAEduysRUdP0GPppS4o5p.EZbOEP60U8k8GHEvcWcURU1w3WNx883kc6aSZK6yHwTQfjLfJXQyBfVHY35yU.ZPfgjW0xG.jMnDMxjZ.WQASLgqIJI96.ISI9FMIl4y3GyH8kIJFw.FkaY4TWwzdUYBj8.PncoQJVlToZM0OjPihHE5jhnkDc3DRjzoTFimNjqHvOTfbhlQ5Ji8Y.rhRzbof.pNJ6QxDReduPMYHEj.HT+DkV1m+GLhQB.ajHvlBhbPr72Y9ZUM2I8Q0SA3gxMyQ2dHn11nkd41udL8ShhJNhxqZ8usZMv0.TIaBJWGHcSg9pxFopY1fmwXCJouCjJNpFtnCauCdQ6seSqCZCdqWidii.dPlNzn.IBeiFODR6IcXDe3tXAjggLAbGwkjJb5PIPB1E+CX5Jr2n3PuJjewTFV75EI6PipMEhPCKIjGjcJSvEg2sru5DN37Q+pXToKXZaZPvy4fmT.A5kCT.6CJcRQHegB5UHqUSMd0beWkJtUlv7TbFze7TiFzJC4uxqF4lobV+jUI.mUpPvOmAO+ZIdFAlc793c8VIkhwXVCEDFJkFhebZUnwg3UJxIOS2EsKFUGRi5BtEECRWCLlZETfSY9VLK2GXL8nDyLRFe8bhd.wYxN8CohdvczOARy3omLBRiHZnCwbbLawhniXi8O2CKjMkSBw040I4VAit5RxSY0wIl70w.wOK+XUxPFTTAAcd9Z5EEVDQLqC.r+wLcRr.7OtUvLFv.bwBF9uDJX.xdTcXcZGkWQT3qabD4VHBfuTi7ijlMH23FtnvOOmETl2cJwSnUq1CmXyS.xobeylMlZuQY60rXOzxfQKqMoZ5UzdoVZ.NnWDuUl5L4ktqgl6JnXt4ZjpjDA3G0IBn0UzHrBB3dy5RDPdfW0BLEP0z54wqqg3.158o4FyzonELPf9mkPkbAyqHzpGDK4VoW8tPlCTT0qZiS5189lOFni6ALmNhiW5eT0GFx0F6Vu5Awzg6v0ZVvgrSzdyfqUMQnn99bIDQtgLQDn7ZfEw8ACQroy0cRaGlBb2hzYoXeolcfvy.R226Rldqtcm6dX+iXITCHdtaiCwEeVL5IR52gEuJzaOBBPxOHLYyjiK4b5iKUdZN+z1YkNnTrqfqOX.SbZy3Yk0CDFsZwLTAeSaFr5JYCV0NBppGawg4m9xIH0zx.7xi0ZMsPtZFGP20NxMjmXDy0lh3LB5iO15zPyFIZsTLAZRIMOz7hc2BBRv4FyzSP2Gvh0bzrZuE6XXH7zoHq3rES8Vsb.X8KlDvx9RmaSwIiuX95iJuXHOPGNlvusdHCGqYLkcWOKJFunmIjcxKXZkk5lON7L35bZcKgs8KgsO7SSgsOPmAaasdeJvtiMtn.lW24vhY37wqoCb2kw2xo36x4ylikGLf6JNkqXXP1x+Ul2BQ1xGksnP0Su5iyi4SWV9t9ryc.xX6veOrjcXc4z9nGMic3Qi8QesSKXRKUZOQnUX.msxJq.Oealml.OJRFjDQ0S9RI74gYa.0Cl34I3SPDPWqQkyE9e64SmWHdMmVbXjh4iwElCFgLrOEXL6QmW1Y6tcgw6GCvkb14UeZdgoUZuqdPG+XNF3ueR+1P2HeFb6BHjEqGau.FAlttQdHYalHvr3efOYa1DWamsYy7Ms5S8ikuwOsBG9r1KYn.XRXdQeEm8v0jhRZNNMp2vpO7B6236ip+sfh4ymmu6Bvyct.7b2K.O26Bvy8u.778W.d9gyjG7etwSRfWellN.DZsso0hs814EprWz5eAz1yMsD
-
@ulrik Not working in your snippet here.
-
@d-healey that's strange, it's working here
-
-
@ulrik Ah I see what the problem is. I was hovering over the knob, but you have to hover over its label. So still won't work in a lot of cases.
-
@d-healey you're right, and on the button it will not work at all :(
So it's not safe to use for all components -
@ulrik I just wanted to thank you again for taking the time to write this code. I ended up adapting it, and thank you.