HISE Logo Forum
    • Categories
    • Register
    • Login

    getComponentUnderMouse inside a loop inside a TimerCallback

    Scheduled Pinned Locked Moved General Questions
    9 Posts 3 Posters 259 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • gorangroovesG
      gorangrooves
      last edited by

      I have a script that shows a combobox when hovering over a slider.
      It uses 'Content.getComponentUnderMouse()', and It works great for a single slider / combobox.

      However, trying to scale this to be used with multiple sliders and comboboxes, I can't get the mouse hovering to register for any component inside the loop.

      So, something like this works:

      checkMousePositionTimer.setTimerCallback(function() {
          var hoveredComponent = Content.getComponentUnderMouse();
          Console.print("Hovered component: " + hoveredComponent);
          
      });
      

      But, this does not:

      checkMousePositionTimer.setTimerCallback(function() {
          var hoveredComponent = Content.getComponentUnderMouse();
          
          for (var j = 0; j < 2; j++) {  // Only loop over the first two components for testing
              if (hoveredComponent == AllPanners[j] || hoveredComponent == PanModeComboboxes[j]) {
                  Console.print("hoveredComponent: " + hoveredComponent + ", AllPanners[j]: " + AllPanners[j]);
      
              }
          }
      });
      

      I verified that all my components are there, arrays are correct etc. Mouse-hovering is not registering on any component within a loop.

      How do I get around this?

      Goran Rista
      https://gorangrooves.com

      Handy Drums and Handy Grooves
      https://library.gorangrooves.com

      d.healeyD 1 Reply Last reply Reply Quote 0
      • d.healeyD
        d.healey @gorangrooves
        last edited by

        @gorangrooves said in getComponentUnderMouse inside a loop inside a TimerCallback:

        How do I get around this?

        Use a broadcaster

        Libre Wave - Freedom respecting instruments and effects
        My Patreon - HISE tutorials
        YouTube Channel - Public HISE tutorials

        1 Reply Last reply Reply Quote 0
        • d.healeyD
          d.healey
          last edited by

          Enjoy

          HiseSnippet 940.3ocsVEsaSjCE0SZGzlvBZQZ+.rlGPoRciRZyBqVzpMMooPzRKQjtnUBPHGONIlNi8HaOEhPHwC7Qvi7Ixe.bsmIYltDUZBh7Pju9dOGe7ct9ZOTIoLsVpPdUOcdBC48y9ilKLy5MivEnAGh7to+wDsgovYS0cdBQqYgHOustucBupaib+9ze2kDQDTVwTHzSjbJ6g7XtoX1gc9GdTzQjP1o73RQ2ty.pTzSFISA8rkeSTBgdFYJ6DhMrJ9Huq0OjajpQFhgogX5JCmOZl7Uhr3eBWyGGwrFsPi.hxlF0aFOJb3h8pFg71dXwNeqrc9u5eLOjub9hLvu3bfKPTNG3U4xjTq0PRdkjz1YR5V9inJdhoviUOW2ef.9fLg.o5xRIKVTk6VwumDhPXZDSNicjBLVhn9cZ1bWL72N2qVMHcqM3woFCL.+W3EvlxLGDE0SFmHEfstdPWWLO6YgAkvQAH8ES4BVCphA6+tJIIj5JWp+l.dXvehCr4Bf33wxwxWyzA6hCHpoZv0SoKVfcwxwu74u0R8XZChwPnyNUtb8OVlpY8O2ojbwBrzKhSOSiuM9AxyYJKuAKHHL7gbPDBPFAwVvGPMbovFiiKLwYiMRr1JOpUdXm9vvzyxIbRpvEW8RBkYkwN0dSsp7I35NqFt32oV0pP9SKiXMRTbgo.kMeNHr9Nf7f83BVgU5Dog8HQcGc0daM7+20jIqzm8yjRFEAauU41dpRcY.qKRiGyT6hOmDkxVFHT1cwZ4qc0pkoYUMkBTJFH3lGkvxsORFEZqQsi+5JeTdYm8XYtBgPMtS.2L+DPV8GhCjT0OynExI+xcaPqA7899fu+2G71q.9+N3PhgX6DjmPfjTBSY31uEdGxNGZkl0Wnp+gL8YFYhKikWkAiuB4rWWrjC5Luv3jNn0ho8JyT6RL8tIqIS6aYx268dHzb6fOjkJWCFZWRKeLojVRzcPecWUnetLLMhXtXSd6sY4NfSKWnyps6oPyMyKea2Zz4u4k14+pJwa4OjanyVsFqrBMBkR+HzX98k2vu+jILpoPfa6ez+soWN9MV9GKSMbwziIFE2VtbRZ7H3YBTFr5BAKRaqbpXKbxraZssYfQLQny3yvubmsr1d4NasvIJlPUxWPyNDauQ9mby.ZR3d.RU3kPfMdYiGe+lMZhhgGG7BJ0t8+Mn81pwr2FfY+M.S6M.yuuAXtyFf4ta.l+3RwXeW1AoFYb1wAXhg8c8P875KHPkkqJD8E.4Jf8x.
          

          Libre Wave - Freedom respecting instruments and effects
          My Patreon - HISE tutorials
          YouTube Channel - Public HISE tutorials

          gorangroovesG LindonL 2 Replies Last reply Reply Quote 2
          • gorangroovesG
            gorangrooves @d.healey
            last edited by

            @d-healey Thank you so much! I am going to check it out right now 😁

            Goran Rista
            https://gorangrooves.com

            Handy Drums and Handy Grooves
            https://library.gorangrooves.com

            1 Reply Last reply Reply Quote 0
            • LindonL
              Lindon @d.healey
              last edited by Lindon

              @d-healey said in getComponentUnderMouse inside a loop inside a TimerCallback:

              HiseSnippet 940.3ocsVEsaSjCE0SZGzlvBZQZ+.rlGPoRciRZyBqVzpMMooPzRKQjtnUBPHGONIlNi8HaOEhPHwC7Qvi7Ixe.bsmIYltDUZBh7Pju9dOGe7ct9ZOTIoLsVpPdUOcdBC48y9ilKLy5MivEnAGh7to+wDsgovYS0cdBQqYgHOustucBupaib+9ze2kDQDTVwTHzSjbJ6g7XtoX1gc9GdTzQjP1o73RQ2ty.pTzSFISA8rkeSTBgdFYJ6DhMrJ9Huq0OjajpQFhgogX5JCmOZl7Uhr3eBWyGGwrFsPi.hxlF0aFOJb3h8pFg71dXwNeqrc9u5eLOjub9hLvu3bfKPTNG3U4xjTq0PRdkjz1YR5V9inJdhoviUOW2ef.9fLg.o5xRIKVTk6VwumDhPXZDSNicjBLVhn9cZ1bWL72N2qVMHcqM3woFCL.+W3EvlxLGDE0SFmHEfstdPWWLO6YgAkvQAH8ES4BVCphA6+tJIIj5JWp+l.dXvehCr4Bf33wxwxWyzA6hCHpoZv0SoKVfcwxwu74u0R8XZChwPnyNUtb8OVlpY8O2ojbwBrzKhSOSiuM9AxyYJKuAKHHL7gbPDBPFAwVvGPMbovFiiKLwYiMRr1JOpUdXm9vvzyxIbRpvEW8RBkYkwN0dSsp7I35NqFt32oV0pP9SKiXMRTbgo.kMeNHr9Nf7f83BVgU5Dog8HQcGc0daM7+20jIqzm8yjRFEAauU41dpRcY.qKRiGyT6hOmDkxVFHT1cwZ4qc0pkoYUMkBTJFH3lGkvxsORFEZqQsi+5JeTdYm8XYtBgPMtS.2L+DPV8GhCjT0OynExI+xcaPqA7899fu+2G71q.9+N3PhgX6DjmPfjTBSY31uEdGxNGZkl0Wnp+gL8YFYhKikWkAiuB4rWWrjC5Luv3jNn0ho8JyT6RL8tIqIS6aYx268dHzb6fOjkJWCFZWRKeLojVRzcPecWUnetLLMhXtXSd6sY4NfSKWnyps6oPyMyKea2Zz4u4k14+pJwa4OjanyVsFqrBMBkR+HzX98k2vu+jILpoPfa6ez+soWN9MV9GKSMbwziIFE2VtbRZ7H3YBTFr5BAKRaqbpXKbxraZssYfQLQny3yvubmsr1d4NasvIJlPUxWPyNDauQ9mby.ZR3d.RU3kPfMdYiGe+lMZhhgGG7BJ0t8+Mn81pwr2FfY+M.S6M.yuuAXtyFf4ta.l+3RwXeW1AoFYb1wAXhg8c8P875KHPkkqJD8E.4Jf8x.

              interesting - because this doesn't honour the hover only - it console prints on mouse down and mouse up as well....I guess becausehover is still true....

              HISE Development for hire.
              www.channelrobot.com

              LindonL 1 Reply Last reply Reply Quote 0
              • LindonL
                Lindon @Lindon
                last edited by

                @Lindon
                its actually a bit ugly trying to get the hover ONLY

                HiseSnippet 990.3ocsV8taaaCDmxIZnRaqXEXO.D9CAN.YF1IdcCqHnN1wYyXMoFyoECXcnflh1lKRjBjTYwnH.6QYOA6YquAaGojsjacKZbW0GL78meG+wi2cjiTRJSqkJjWvkKRYHuuve7BgYd+4Dt.M7Tj288OmnMLENWUuEoDslEg7714GsJ7B1E49d8i6QhIBJqTEB8bImxdBOgaJ0Np6OyiiOiDwtjmTw6NcGRkh9xXYFvmc7agRIzqHyXWPrtUyG48YCh3FoZrgXXZj2t8jQKFOW9mhb+eNWymDyrBsQig.kq9LYbjkwVsn9y4wQiVtu0HHJiJyB6jmE9Z+y4Q7U5KyFeky.tDQ07gWs0o2NqQu1UoWqJzaCTxqBk1MmROveLUwSMkVr74y8GJfCmoDHsWkJ49hp8O076KAODllIjqXmo.gUHZ7vVsN.C+r+iBCgTu1fmjYLvevGiWBaFybRbbeYRpT.x5F06474EuHpdEbT.x.wLtf0jpXv9umRRhntRmFupNOp9OfqayEPfSlHmHugoqe.tNQMSCl9M5xE3.rbxe762ZC8DZShwPnyuTtZ8OWloYCt1wjBxBQoeLmdkFuG9mjWyT13VeY.hhdBGHg.nQ8DK3SnFtTX8wEKLwIiMRr1ROpkdXG+vf54EAbZlv4WiJDkYow9guJLHLLfOE2vonoCBdu8xs2zsnOKEe7w3ojXXAWYgZYMKZCVT7YyMtM0Ji6GF.KDrLEqRjLCpkdKeBBfCNsLl0LUwElFFk8fNmoPJI31PH0tby.avKjF1SEMx2E2FheSSSmtQa1pCkLNFxpaxrswV89.1PjkLgoN.eMINisxQnZe8VH+2cKT0NbZdwZEGkhgBt4ooLw6puGUTgam.TvJvUiqY69EMa4k5HNzSE3mKzF4nb0gbn6.7C+3fezGG7NuI7W+XzyFdJwPrCcJRHPRJkoLba926T10vD77QPA9mxzWYjotLVQa.7+Ofb1MkK4vtKJEtnK5NEoCqFoNUhzeM8NFoipDot2TkSz6Xj5TIR+cZkHkp6hd6A4vUHxnrXhY86UrWlVX.5TVaXtcfsPyMKpdt8+1kMenT7A9i3F57MywZafiPI0mBNVbE8W5OX5TF0TRvc8O6W+zbeL5WjYFtX14DihCG19WjkLFdkBkAqtPvhsSp7pY6EykaYksYfwLQjS3eguBissxdEFauzHJgPUxWRyalsOB3dNM.mDt2+D.ODCjwqF.462pYKTB7djWRo1s+2.i41LlC2BLGsEX5rEX91s.yC2BLe2Vf46euXrOE7jLiLIuc.TLZfaVpm2.AAprbUgn+CBwzwS
                

                HISE Development for hire.
                www.channelrobot.com

                d.healeyD 1 Reply Last reply Reply Quote 0
                • d.healeyD
                  d.healey @Lindon
                  last edited by

                  @Lindon Ah good catch! A slightly less ugly implementation might be:

                  bc.addListener("mouseAction", "Mouse action to show combo boxes on hover", function(component, event)
                  {
                  	if (event.clicked || event.mouseUp || event.rightClick || event.doubleClick)
                  		return;
                  
                  	if (event.hover)
                  		Console.print(component.getId());
                  });
                  

                  Libre Wave - Freedom respecting instruments and effects
                  My Patreon - HISE tutorials
                  YouTube Channel - Public HISE tutorials

                  LindonL 1 Reply Last reply Reply Quote 0
                  • LindonL
                    Lindon @d.healey
                    last edited by

                    @d-healey yeah I sorta tried that but it was failing to catch the dbl click for some reason - it started to work as soon as I separated it out on it own tho...

                    HISE Development for hire.
                    www.channelrobot.com

                    gorangroovesG 1 Reply Last reply Reply Quote 2
                    • gorangroovesG
                      gorangrooves @Lindon
                      last edited by gorangrooves

                      @Lindon @d-healey Alright, guys.

                      With my assistance, my blind but brilliant coding partner (chatGPT) put together this script which displays the comboboxes when hovering over the buttons. The comboboxes are visible as long as you hover over either a button or its relevant combobox, then disappear after 1 second of moving away.

                      HiseSnippet 1489.3ocwX80aaaCDWJIZn1atnEXe.37CExnot1IYcCMKqIwIYMX0sAyoEanHnfhh1hNxhFTzo0qHutOB6s859LsOF8g891QRIKIGm+4lhpfjHd7tS+3c+NxS5.AmPii4BK6RGNdH0x9qb5LNRFzJ.yhr1eGK6a6zFGKoBjQz1iGhiio9V11K9SJA1kVxRe8gmrMNDGQnYhrrdEmQnOiMfIyjdvl+LKLbOrO8P1fbZu1l6S3Qs3g7Q.dVzog0PL4XbO5ywJ0Vvwx9K10mI4hNRrjFaYuz1b+wcB3uMxn+qXwLuPpZPSqNfiLh2iG5qPrRpUq.Vn+Aoq6XKvKGjEEVzDE9Zm1Le1D4YQi6nm.kYQ93g8BEg2hEfWy7vqQN3MCHYmCRKYfzcc5PDrgxrYT34Kc1OBRNcwPXOOTL5ZsveTxoEGzHRVe.9X5dBXvDKbeTiFKif+Ta8x5rdceZWpnENLzCh7wtRwHJLW4G9Pz9QLICGx9cZkxfGi4gz5jPJV3Va8JkqTFxbwRzIXAxajTBCPafdckxH3JE.8nxV7AC4Qv.2paqUqY0ZKe4ZsxURqUuRZsV0ZUJezTXFzxi6we2VBAd7kgbSrUax172cYqfhZux0R6UuVZmakoVSALSAVrDOXnNc7flKix90nIjZeJnHBx4HhxQHHLPiQLS9Nbbkxc4BjKAjTLLUyfLR8XfgqvmfG51HOavi.O0ci5wh.thfBEEaK3Xehd+D22Wk4W8wnppBDjI2DWcYTUrnWLH+0jz04xHtW+iNU4YORcrThIAGxmDFZyGES28D3tX2DtG3kVgLfAitG5o7SnBkeqlGZDuqLzRWzzKEcfy8tX7UH.dQnr6nHhjwiPgL.QQTwdf.2bOT5I5+MQRbZN48lzhNowfEYi0QLzOLsh0CoQ8jAvb2+9IIxDCUWrtH2oL30riTju88cqg1XiMx7WpzZYlmySodSC25ApUYshyNkxFxdtnj5Ammg0TEfl1hhbcvDXg+flSo3oEGRCioWJTlkiSnMv59kCkvbPD49nK3gkbK7uSUoVEG12+YI4U2pCT7iszYaEAPSWPXS1WxQp09CUvnP4ILmNXpyydSJdRoMmgojQLtDBUhuTA4bb5aV7RxWQ8wC4h6JkAb0lfxoKyUISwK75SIR8IWx5PpUH0hcapNJDAaI1QIKFgQp7qPsrH5MHCnjiOjq1vDR5viWLFA1LHtPIaAslrHTngLRH.HqdXyjGsdtZ29lZ29PsaQR3jR29mWo6Tj19Gg9lMT0Cn6cuBP3G2.cFUO+x3hUk8O5r66eAEN8OSE4TUEPdfZxBose3NgYjEDKDZyxzo+LIEvidNWReAXZ42WtT4SKildptcm4bIqmPfLLqoMzjKvP2nQC7nhkgzcHz6TphPWbEaMz47aMLemqDyw94TjGo5D6ECoQmW+rVI8J.sQdqDTApJ0MQd6jlHMG2ZwfdEK4jzIlkFx4ad25ZX9Jeblu5Gm4qcEL+NNEaWR6f6NkvyDE9vSlOGsxMkiV8lxQqMCG8x82AKwpW3Hgz.DogTgjo3n16POAd6MyqeTxYGZ7wR9PMqJYKXfVeE3UuCn61pG3X0M6YxMWCOrhwC+076gUMd3w1ysGVy3g+477vstVbrhQj+Dt4sLeYPVp421Lfx5EHyKY.dhYmjtag8hyKHRBp+8mUPjjWZa+4DDIo1+8lADm8E2uiSat+nPrr32QP8wSRl.NAovKuqdA8nXlbb9Z0arOtvUEh204.ljDLaLtvLvHrMxmBLl7IYp3ra2tPWaY.bIm890OMe+EqegORxh50FKELUZ94iFzgORPnvSOJBdyAUpeA0V.lwMRoBcnQ95A+GbkLYS0X6jIalNo0.LQveCwrUt5i9bKsD.SQ5u2UIm1pwnIGI43zndCqALe1aHD0x+Avw+y1lUlCaVcNrYs4vlucNr4QygMe2bXy2eg1n9zeaMRxGXJG.AGrq97Sa6civ.yRyBs9ekbJ4EC
                      

                      I think this could be a highly practical script for a number of situations where you want to keep visual things neat and tidy.

                      Goran Rista
                      https://gorangrooves.com

                      Handy Drums and Handy Grooves
                      https://library.gorangrooves.com

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post

                      48

                      Online

                      1.7k

                      Users

                      11.7k

                      Topics

                      101.8k

                      Posts