HISE Forum
    • Unread
    • Recent
    • Admin
    • Register
    • Login

    How to trigger label callback on enter/return but not on focus change?

    Scheduled Pinned Locked Moved Scripting
    labeltextvalueupdatefocus
    30 Posts 5 Posters 2.1k 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.
    • ChazroxC
      Chazrox @d.healey
      last edited by Chazrox

      @d-healey oh, In that case, I think I got it to work (Print value on ENTER and nothing else right?).

      try this?

      const var Label1 = Content.getComponent("Label1");
      Label1.setControlCallback(onLabel1Control);
      Label1.setConsumedKeyPresses({keyCode: 13});
      
      inline function onLabel1Control(component, value)
      {
      	Console.print(value);
      	Label1.set("text", "");
      }
      
      HiseSnippet 880.3ocsU0taSiDEclzZTi2kUKR7.XkeEPUUNMskBHzlsIs6FAsMhvhPnUBMY70wip8LV1iK0KBo8sh+tOR6a.6crcpcJgETD3HE464buybl49gmjn3PZpJgPseQdLPn+n0zboNXX.SHIiGQn+j0orTMj3TBcTdLKME7HT5F+lAf1dSRwy+9KGwBYRNTCQHuTI3vyDQBcM5jAOUDFdByCdgHpg26MXLWIGpBUYnd1vxkDy3WvlCmwLt0xh76rz.B89V6tqO+PW2C62eeWFquGisWOn+CA+C74669PWuY66h+NfPu0wdBsJYplogTBcyiTd4SCTuUVtAuTjJlEBFidjo3NWBehJzybDMnjgAhPuIKtnRI3pLo9Zaixqs6ZcpvSbMd802OWP3TGQyKPZqkk2FKIudMkmaC4sBIQaHoMKkzcrlxSDw5ZFid9AqwRLa5yv7TSoT5Ko0GnVCUnGR8NQrKfSRPiqin6Atta6f+cuGaai4pTsykrDmmwlAg8bdhyhHmC5gpnXkDM51ojtCFS4a6jZnk5DU3PVX3LLI2UIK4pvuouoYQf2Sg7II3IAR69tKf7gJO3QN85+diXDxPgDb7yjbsPIctw50kuPNaiJNLCtm86raaVXUHrSbh.0YI9isaWuyc6ngqzc11oiQ8u211twFblRCmK6VrRHmyMo78WIWkhBgjURaZIR9+BrqLKZFjz7bXbDS6KWKY84qkZVpyKSYMbTIGKE5yiA4mqAfTkmw29iwiXZlo.rBC8KFRzBiDnifKw1+xxw1VifzKzp3BeqxF3XGcA6sqJVKt6IBrjbKqx7.4pqmP7O+4f7ZiWO3sBOcv0.+8kCB.w7fFSZFMX17EySZeKD3iFTeToSE+0RSdLXkiY1x57qxmiGdSpuXpC4S6svtZkWVHSubqtYfXEAlyVp+xzCISE57lCL+l0++0Jw6XMQn4AqVisVgFwL62CMVM071VG66Cbcs.2z5jW88YDI44pLsPN+TlNQf0TVmkEMEqL3.t6RIDZ5YnsLU2k1tFayMvTP5UX7Q7ohrmwlVQ1aAIIhwSTugW1oZlKuUABpIYQwUa7ionsSORQ2ay64H7yDugyWdo9j.2ccCr+5F3dqaf6utAdv5F3CV2.O7KGn4q3+ZlVEU11PHmN43hQeT5wRFVAVTsR9O.LwdkQA
      

      *Edited because I noticed it would trigger callback if you clicked out after ENTER without clearing the text.

      in this example I input text, press ENTER, value prints, I click out and callback is not executed. I click in and out of the text input field just to show it doesn't execute.
      ezgif-70a4b779aca0be.gif

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

        @Chazrox Type in the label, then click on the UI outside of the label, for me that's firing the callback.

        Free HISE Bootcamp Full Course for beginners.
        YouTube Channel - Public HISE tutorials
        My Patreon - HISE tutorials

        ChazroxC 1 Reply Last reply Reply Quote 0
        • ChazroxC
          Chazrox @d.healey
          last edited by Chazrox

          @d-healey yeah, that'll drive you nuts. haha Sorry. Thought I had it.

          1 Reply Last reply Reply Quote 0
          • rglidesR
            rglides
            last edited by

            I got it to almost work here, if I'm understanding the issue correctly, high chance I'm not

            HiseSnippet 1356.3ocsW80aaaCDmJIJHVaFXEXXOsGz7VKrQCBR555JVZ2biS7PPye7l65VQPP.sDkMQnHEjnSpWP.F1mj8QYutuB6w8IXu2G5NJJYQYK2UDzp.3Hd28i7Gu6HuS8hEdjjDQLxp1ylDQPVenc+Ib4nNivTNZ+cQVN1X7S1W8GZmIQ3jDhOxxZ4uWo2p1Jnzm+861AyvbORgHD54BpG4.ZHUVHsW6mRYrtXexyngFVe+166I3cDLwXfKKauIJB6cNdH4HrxrkrQVqtmOUJh6KwRRBxZkcD9S5ORbIWa+yoIzALhZvVn9vDoE2Uv7ULVIE0YDk42KeOmffYoWgGXYsG3isOj5SmJuvS7QoJbKPX5OrVpL8VtD81xjdaZPuJnjkAkVQSoaY22KlFIKzn3yGXuOWRhCvfa2jJZaQKc6Us6H.K3xMBwmS5FCClhn4C1by0cgeZssiC35SjtWficO.Ofv1x8wt4HGRjcDgQBNLnYCs5Fs1ttScCTQb1YGezBQoUmhZFLc69lA0sKfx0D1whnjEhQobdxg4D1OKh8U3tptiK7jSouw8jFBdi0caLgjn9WjHgJoWPTuOLlP3MNccSH.gRwDDnrfKR+kLDmiIl323z5NWmxA0pyvIx9DFwSR76oXBPhFMRUS4LJm3FLl6IoBt63HeH2I0njlsp6bkZY0Ktltaj.4Spcdrf0L.yRHp85T8c6tXCTdlpzlu.5eYBOLykxiFKAZpC1JWbyFRxKkMZsgTbf3RRbGbBoY9TqAg8TtfY1gEybfH1sYZj.ldiPRKs5rvxTKovbr41tT2GYX6Ioud5FLBenbDn8t2sUANioP8PCfYQuQd77ywIzSaU19YfqdJukRAt87VMHlfOeF4WWLz3UEkLmyOS4mZUZBt1cAgqRbIE2LN3pm747tUdtw.WqRqpLd7zLnzPcEIyFfy2DP9uhbY4OIpkhmLNj3+TxjdwvEXjjlM1ScSj9z87GEDbM3b.M8xI65tmSlnNbTrsAAJeR5D5dm6TJuk.WJig6cA+7LZzYzKxOU9rXoMVw1JmccvL1.nbUyYosNH4n9wXqcjPRNl2rkyUN0bt1wcVUAAUpKKnvHwUpVUOM9MArIeb3.R75vkhLHrlaHTjobkK6EW4xrvpmNSxvPAeeNUdbDgunxsnrzO3seZ+cwRrpbWlLvtHRrjpnf0tjKfdGzE+pYuKI4boHBX5zbVnuDYp15YkFSc7HJT.bMacP.8xosW7a31SlNv8x1pXOLa1bA5RpubTQeHx1iHzgiL5X4aaOXXdeI0VED7ZkTLiNjGlRjZ1.2NfDHQAvNoO8WMZq4QsQFTtVYJmlckQY8E7FTtsvfxvfY34KlimunMURBKX50ux6uUxKjdOSwWjGUsV1jhqsHJVyNqFy6RN9v9u5epfi4heq7cqZqtrbQA6+P19sHBWlU29pe3upfUe9fO82mwyoRdWDCKRHcrYC.WWYVh9BCVBOkY4eFWAK0YsehsLdhK10mFDPhgU1Et1KrhbusaGgU5MnXluBMeGlPusB+wLrrbCupt7yT.2kTpKSUmjbnYoIleEv6rtfeao3sr6QkdipliKUAGgabdevwrucnt8dPTwSVPvUr69Kue9PAzOJFKo7gGhkwTHwx9nwg8gjUOBr5bUgKPl0RpiQ5wapFq7.8Ib+zAuFdxTtkZrUlxsxUhBwdwhy7zUPTecxZoR.NwS+vrZ1GpF6tEJsphoeND9Xoy77JOUyA7d2Tfe4ME38uo.+paJvGbSA902TfO7+Gn5aYexXoHTerAgNr2dokjsr1iqZYJMaE8e.G1gEK
            

            The issue now is the callback is triggered immediately when the label is 're-interacted' with

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

              @rglides What is Enter here? I don't see it declared anywhere

              if (key == Enter ...
              

              Edit: Actually that keypress callback doesn't look valid, you should only get one parameter which would be event.

              Free HISE Bootcamp Full Course for beginners.
              YouTube Channel - Public HISE tutorials
              My Patreon - HISE tutorials

              rglidesR 1 Reply Last reply Reply Quote 0
              • rglidesR
                rglides @d.healey
                last edited by

                @d-healey Enter is for the setConsumedKeyPresses right? Guessing I'm wrong but I thought the method was setConsumedKeyPresses("Enter") and then if key == Enter, do I not need to do this? seems to work for me

                d.healeyD rglidesR 2 Replies Last reply Reply Quote 0
                • d.healeyD
                  d.healey @rglides
                  last edited by

                  @rglides said in How to trigger label callback on enter/return but not on focus change?:

                  Enter is for the setConsumedKeyPresses right?

                  Not unless you define it. Your if statement is currently the equivalent of

                  if (key == undefined ...
                  

                  Free HISE Bootcamp Full Course for beginners.
                  YouTube Channel - Public HISE tutorials
                  My Patreon - HISE tutorials

                  1 Reply Last reply Reply Quote 0
                  • rglidesR
                    rglides @rglides
                    last edited by

                    @rglides Ha! yeah, I changed it to if (Label1.get("editable")) and it works, ok little lesson learned. Still, this works, almost

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

                      @rglides said in How to trigger label callback on enter/return but not on focus change?:

                      if (Label1.get("editable")

                      The label is always editable isn't it?

                      Free HISE Bootcamp Full Course for beginners.
                      YouTube Channel - Public HISE tutorials
                      My Patreon - HISE tutorials

                      rglidesR 1 Reply Last reply Reply Quote 0
                      • rglidesR
                        rglides @d.healey
                        last edited by

                        @d-healey Sure, but for some reason it has allowed clicking outside of the label and not triggering the callback

                        d.healeyD rglidesR 2 Replies Last reply Reply Quote 0
                        • d.healeyD
                          d.healey @rglides
                          last edited by

                          @rglides said in How to trigger label callback on enter/return but not on focus change?:

                          @d-healey Sure, but for some reason it has allowed clicking outside of the label and not triggering the callback

                          It's still triggering it here. Add Console.print("test"); inside the if statement, you can remove all the update panels stuff, it's just complicating the picture.

                          Free HISE Bootcamp Full Course for beginners.
                          YouTube Channel - Public HISE tutorials
                          My Patreon - HISE tutorials

                          1 Reply Last reply Reply Quote 0
                          • rglidesR
                            rglides @rglides
                            last edited by

                            @rglides uggggh, ok, HISE has defeated me yet again, my logic was to start with an if statement to see if the callback could be avoided, so I thought I had it. Turns out the callback just won't trigger at all regardless of the if statement, until the label is re-interacted with (or when hitting enter) so I have proved useless again. But I tried, and it was fun to feel like I figured something out, briefly

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

                              @rglides said in How to trigger label callback on enter/return but not on focus change?:

                              I tried, and it was fun to feel like I figured something out, briefly

                              You've done no worse than my attempt :)

                              Free HISE Bootcamp Full Course for beginners.
                              YouTube Channel - Public HISE tutorials
                              My Patreon - HISE tutorials

                              rglidesR ChazroxC 3 Replies Last reply Reply Quote 1
                              • rglidesR
                                rglides @d.healey
                                last edited by

                                @d-healey Thank you. This really should just be a core feature, it seems like basic stuff

                                1 Reply Last reply Reply Quote 1
                                • ChazroxC
                                  Chazrox @d.healey
                                  last edited by

                                  @d-healey @rglides this is a crazy one. lol I'll def try again.

                                  rglidesR 1 Reply Last reply Reply Quote 0
                                  • rglidesR
                                    rglides @Chazrox
                                    last edited by

                                    @Chazrox fr

                                    1 Reply Last reply Reply Quote 0
                                    • ChazroxC
                                      Chazrox @d.healey
                                      last edited by

                                      @d-healey Did you ever figure this out? I still need this function badly. Its so simple but crucial. Im not liking 'type name' ---> 'click SAVE button' flow.

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

                                        @Chazrox said in How to trigger label callback on enter/return but not on focus change?:

                                        I still need this function

                                        What function?

                                        Free HISE Bootcamp Full Course for beginners.
                                        YouTube Channel - Public HISE tutorials
                                        My Patreon - HISE tutorials

                                        ChazroxC 1 Reply Last reply Reply Quote 0
                                        • ChazroxC
                                          Chazrox @d.healey
                                          last edited by

                                          @d-healey Press Enter to fire label callback.

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

                                            @Chazrox I'm having deja vu. Didn't we already cover this in another thread? Anyway the default behaviour of the label is to trigger the callback when you hit enter, you don't need to do anything special.

                                            The problem I have (and why this thread exists) is because the callback is also triggered when the label loses focus, which is not what I want.

                                            Free HISE Bootcamp Full Course for beginners.
                                            YouTube Channel - Public HISE tutorials
                                            My Patreon - HISE tutorials

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

                                            26

                                            Online

                                            2.1k

                                            Users

                                            13.0k

                                            Topics

                                            112.3k

                                            Posts