HISE Logo Forum
    • Categories
    • Register
    • Login

    button for sharing

    Scheduled Pinned Locked Moved General Questions
    15 Posts 7 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.
    • d.healeyD
      d.healey @staiff
      last edited by

      @staiff said in button for sharing:

      website is under the "about" floatingtile

      But can you add a clickable link to your interface?

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

      orangeO 1 Reply Last reply Reply Quote 0
      • orangeO
        orange @d.healey
        last edited by

        @d-healey no it's not clickable in floatingtitle.
        But is there a way to make clickable area with a panel or image with java code?
        I couldn't find the solution on the forum.

        develop Branch / XCode 13.1
        macOS Monterey / M1 Max

        1 Reply Last reply Reply Quote 0
        • Christoph HartC
          Christoph Hart
          last edited by

          There you go :)

          Link Preview Image
          - added `Engine.openWebsite()` scripting method · christophhart/HISE@a26722b

          The open source framework for sample based instruments - - added `Engine.openWebsite()` scripting method · christophhart/HISE@a26722b

          favicon

          GitHub (github.com)

          d.healeyD orangeO hisefiloH 4 Replies Last reply Reply Quote 5
          • d.healeyD
            d.healey @Christoph Hart
            last edited by d.healey

            @christoph-hart You really should add a paypal donation button somewhere. Or setup a patreon page.

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

            ulrikU 1 Reply Last reply Reply Quote 5
            • orangeO
              orange @Christoph Hart
              last edited by orange

              @christoph-hart said in button for sharing:

              There you go :)

              Link Preview Image
              - added `Engine.openWebsite()` scripting method · christophhart/HISE@a26722b

              The open source framework for sample based instruments - - added `Engine.openWebsite()` scripting method · christophhart/HISE@a26722b

              favicon

              GitHub (github.com)

              Incredible, great thank you so much Christoph, what a speed coding art!!!! 👑 👐 🙌 🤘 :smiling_face_with_heart-eyes: :smiling_face_with_sunglasses:

              I agree with @d-healey

              develop Branch / XCode 13.1
              macOS Monterey / M1 Max

              1 Reply Last reply Reply Quote 0
              • orangeO
                orange @Christoph Hart
                last edited by

                @christoph-hart

                I've tried to use Engine.openWebsite(); with a button like below but I couldn't. How can we do that?

                const var GoToWebSite_Button = Content.getComponent("GoToWebSite_Button");
                
                
                inline function onGoToWebSite_ButtonControl(component, value)
                {
                	GoToWebSite_Button.Engine.openWebsite(https://www.orange.com);
                };
                
                Content.getComponent("GoToWebSite_Button").setControlCallback(onGoToWebSite_ButtonControl);
                
                

                develop Branch / XCode 13.1
                macOS Monterey / M1 Max

                1 Reply Last reply Reply Quote 0
                • ulrikU
                  ulrik @d.healey
                  last edited by

                  @d-healey said in button for sharing:

                  @christoph-hart You really should add a paypal donation button somewhere. Or setup a patreon page.

                  I agree!

                  Hise Develop branch
                  MacOs 15.3.1, Xcode 16.2
                  http://musikboden.se

                  1 Reply Last reply Reply Quote 0
                  • Dominik MayerD
                    Dominik Mayer
                    last edited by Dominik Mayer

                    @orange
                    no need to reference the button before the Engine :)
                    will suffice:

                    const var Button1 = Content.getComponent("Button1");
                    
                    inline function onButton1Control(component, value)
                    {
                        Engine.openWebsite("http://www.rbemis.com/orange/index.html");
                    };
                    
                    Content.getComponent("Button1").setControlCallback(onButton1Control);
                    
                    

                    Here a variant with a Panel with written text:
                    (u have to create a Panel Component named LinkPanel with height ~100/20px in the Interface designer and set allowCallbacks to "Clicks only" )

                    const var LinkPanel = Content.getComponent("LinkPanel");
                    
                    LinkPanel.setPaintRoutine(function(g)
                    {
                        g.setColour(Colours.cornflowerblue);
                        g.drawText("website.com", [0,0,100,15]);
                    });
                    
                    LinkPanel.setMouseCallback(function(event)
                    {
                    	if (event.doubleClick)
                    	  Engine.openWebsite("http://www.rbemis.com/orange/index.html");
                    });
                    

                    for more mouseCallback behaviours you can check: http://hise.audio/manual/ScriptPanel.php#122callbackeventproperties

                    greets,
                    d

                    orangeO 1 Reply Last reply Reply Quote 0
                    • hisefiloH
                      hisefilo @Christoph Hart
                      last edited by hisefilo

                      @christoph-hart wow u rock!!! Hoping to do some "share for activate" or something. Donation is also a good idea. Maybe setting split payment so u can grab a % of it (Stripe?)

                      1 Reply Last reply Reply Quote 0
                      • orangeO
                        orange @Dominik Mayer
                        last edited by

                        @dominik-mayer Thank you so much, these are great solutions.

                        develop Branch / XCode 13.1
                        macOS Monterey / M1 Max

                        1 Reply Last reply Reply Quote 0
                        • Christoph HartC
                          Christoph Hart
                          last edited by

                          Well I'll think about that Patreon thingie :)

                          @Dominik-Mayer: You don't need to require a Panel to have certain properties, just set it via scripting calls:

                          const var LinkPanel = Content.getComponent("LinkPanel");
                          
                          LinkPanel.set("width", 100);
                          LinkPanel.set("height", 20);
                          LinkPanel.set("allowCallbacks", "Clicks only");
                          
                          LinkPanel.setPaintRoutine(function(g)
                          {
                              g.setColour(Colours.cornflowerblue); // LOL
                          
                              // This method is bad (it squashes the text if the height doesn't match...
                              //g.drawText("website.com", [0,0,100,15]);
                          
                              // Use this method instead
                              g.drawAlignedText("website.com", [0, 0, this.getWidth(), this.getHeight()], "centred");
                          });
                          
                          LinkPanel.setMouseCallback(function(event)
                          {
                          	if (event.doubleClick)
                          	  Engine.openWebsite("http://www.rbemis.com/orange/index.html");
                          });
                          
                          1 Reply Last reply Reply Quote 1
                          • First post
                            Last post

                          25

                          Online

                          1.8k

                          Users

                          12.0k

                          Topics

                          104.5k

                          Posts