• Clear audio file reference from waveform on front end

    7
    0 Votes
    7 Posts
    856 Views
    C

    @ospfeigrp Was that the final answer on this one?

  • noob question: UI component.set()

    7
    0 Votes
    7 Posts
    918 Views
    HISEnbergH

    @prehm there's been a few posts floating around on the topic of panels lately. Hypothetically the panel can store both UI and control data. In practice, for control data, it is best to use another component and reflect UI changes in the panel. So in your case, maybe try using a hidden knob for your four-button state, and using mousecallbacks and a paint routine on the panel to interact with and change the state of the knob.

    You could bypass the knob altogether, I sometimes find issues with it when trying load presets or initialize the project. Really depends on what you are trying to do though.

    https://forum.hise.audio/topic/11797/saveinpreset-not-working-for-panel-data/7?_=1741176180193

    https://forum.hise.audio/topic/12016/is-panel-data-persistent

  • Check if file exists on server

    4
    0 Votes
    4 Posts
    459 Views
    T

    Thanks so much, that's very helpful, I appreciate it!

  • Dynamic creation of components?

    3
    0 Votes
    3 Posts
    259 Views
    VirtualVirginV

    @d-healey said in Dynamic creation of components?:

    @VirtualVirgin At the moment I think the only dynamic components you can add are child panels. Christoph is working on a dynamic container but I don't think it's ready yet.

    Thank you :)

    I looked into the child panels and made this snippet:

    HiseSnippet 1736.3oc2X0saaaCElJIpq1qEqEX6tcgfuXvooMw1M8mztgk+ayV9wnNqKAAAEzRz1bQlzihNIBE4l8BrWh8fzGo8FrcNTxVR1xIoYq6h4aL34+yG44nCYckzkEDHUDqh6G1iQrticiPgtyZcnbAYq0IVuvdeVflKZ63EJnc4tNtc39dN8nBluiqhQ0bovQqBQYzRm.5oLGOplRVMrGMHf4Qrrl9Un8rJLCw76O+9Uo9TgKKgDg7VI2ksMuKWmPs9x+H22eSpGaed2TRu3xa4JEqI8k8gXeZ6JjdT2SnsY6RQwlxl7ZZPGh0CrccWbI1yaU6YUpsD6IdK1rV0JzZUVZomwnOohaykXzZsZ5VgXcqM73ZopglpYADqYVU5E1ni7LQjCdKOf2zmgKpRZ.dNh7lReOLEQpj0Pno9.PMf.VodBDOcDD+k16v83Com.02yvvIQiz.n0TYCuoyDdUSGdUREd4DRVoBoYhBo6a2vUw6oS3fwymaukPyTsnv9T5PIRVxT+wcrWSBRHzy2kdBaSErXnFkqVoRkG57zJUl8kEKVD1sBzN6.oJF20MGd9NmAp2loWS1smT.KJWJiTk.0iTdEOOCkU6q0vItIocVwRTuQ+lZE0UecrQNxlXn5LU.O.0Zc3T9kmJ4HKZnhKrfiBJqjJlitCKcIUPrWvxHTmsYh15NfCxwTnydK0uOq7rn3FZqnTzv48MZ8xh7VNkyZoYK99hEVXgXuGc5v32xPbcADZYwu4CX.JvE52H6CcAXka0W3hU7kaarzoTkCEhNcGd.FNaKco9qJ6K7BJi67EJVnMZinR0xQ+ELuOucGcaEKDEo87sfh72vb0koQqGWgl9P8cDSOE8rHgenSsgxuozr4eJSvUkvycIBuO6bf0b.Uz7WLatI4Nx9Ar0n99MAGkjkLvfZSlhPoY07t9b2SXdyVr.PtfoEXJfDwwBW.ItwQ4bR5+OP5iRCoSHSuRbcxHqGbFUICGCZMtiK7AryYfAcFea.MtOhcQEVlBC.VyzcwTtNTmsg5KiOhTyePoWuwKrRaY7aNfTkLKJ4LmynBoXmxAXXPqhDycTrKdT0iyW5UfrxriCML.XJUehxAy5P8A1dgNryg.OBG8iKxM.XVCd.55zFGS9W4KaR8qKC3HJdfI6GQuCuZ8NLO8947zK6g4ipc73585qgdO93nhL.Vv9mREuMW3zKNbbZIUF5s3JnUZJTqXAnSGaRnC7Iq7S+bYf4Wk7C+Jws.hYcdpL5.37wPKLbSOLkDGNj5YCccz5NCWm472XGpoddiTzTrfQRrfrboygx1yQponEBzBGg1YbOcGf9YiPuCCa0.L5LBCMzU.HOrnHC6I1xyrYbkM8LRLzxUSIZreMBcYMFYhXQLsFQSy7vldTQaeVYpCzgah13rNbMKlqoY4XpCZG26LWCnftZC4MRi0GWIkkMcVSxynFrEvVd3g8d8C5fCYiGtMCZSw1HHqKe7f4GY9.zNQdI9q9i1NMmdu+mzO8Z1pzL+TWI..sTxtiAGebfQjkF.GXsRltOQrgoa6Vmpvo5l.jk2HUHlgMiJyMcEb3Ne6HS1AzlatKeTBvYCchTrqTy1SDY5hWTzYTVsZkKOb9Tkz2moxkMd8J0koXYQ+tMYpG5bJBhwe4dgGD8kIAWmrGf28KZJlr3Lf.Gg6cC3rWyeAJe.pQIeorRW5EinNfDuL+c1fA6rIVEAtGr.lIvcbxdwI6Iewoz2qyMZd9TBJEaA44d8XhIcaOR7k.vKYECafnZyUrt6fqXggLgCWj5qryIYHF3kX801+Pi8188iCJGc7EDxOsEpv.2.5CQQOlRywDzZc3zqKK5lcErWmEbhV1CtT7v6k.20cRA0WXmodlbd5anGldg4qCCIr7uubzmEFR4C+1xYb4smjKumc1owS6ysVNL8BXLR4YCFlL.UcMbhw.muw40PMphH6Q+UD9rlJa3A51yT7lJfFMUIo38YSdSKm4bSGwG9QFw+yhya8wc3JINqGlJN+P6kOcPUf0z3QtsD0g1YLMhjjweuf6YuizquOUm84KvG4IlAz6HyaFfuKf.lNKL8i.8u1aZbcCw6aWmqc6jeLNUNwHTh8oHFieIn6ZuQqVP2pj.bF6MO3Syy9PhF8p8NTshCmCr2se2FvnItv2anB7qU.MXyFU0rtBtFQfFLgmYweA+hYVEWaEyr5.ljtTWk7ctQs9v2Z51FJPLILuKWA3nLr1o5f1bI3bWtG+cttYM0XJV6lp3iuoJt3MUwmbSU7o2TEe1MUwme0JhuL4J80xtQkMDxN02v7MHKqMDT3Dn4zJ4uA3bJKSD

    It creates and destroys the child panels dynamically from the buttons:
    Screen Recording 2025-03-04 at 3.41.25 PM.gif

    The child panels are not saved in the component list and will not be remembered on compile,
    so I created a method of restoring the panels by using persistent data in another panel.
    At this point it just recreates the amount of panels that were there last time, but I would like to be able to recall and restore more complex data from the panels.
    A drawback here is that the child panels do not accept "Component.setPropertiesFromJSON" because the child components do not have a name.

  • Change pitch

    10
    0 Votes
    10 Posts
    594 Views
    S

    @d-healey I want to set the pitch randomly for each note, but I think I've got it now!

  • Issue with working with global scripts/recompiling after fixing errors

    10
    0 Votes
    10 Posts
    1k Views
    T

    @d-healey said in Issue with working with global scripts/recompiling after fixing errors:

    @thrice801 All included files should be available from the little drop down at the top of the script editor in which they are included.

    b8625da2-eefd-4895-b95c-73dce3b334df-image.png

    ahh ok I see thank you! been meaning to subscribe to your patreon gonna do that now

  • 0 Votes
    9 Posts
    1k Views
  • 1 Votes
    8 Posts
    674 Views
    David HealeyD

    @d-healey said in How to programmatically change table viewport component values?:

    Any way to have the buttons off by default

    This is possible when setting the table row data

    local listData = []; for (x in data) { local obj = { CheckButton: 0, // Here I can set the button state Name: x.name }; listData.push(obj); } viewport.setTableRowData(listData);
  • Panel popupMenu with first click callback?

    5
    0 Votes
    5 Posts
    618 Views
    whoopsydoodleW

    Haha dirty indeed. But it works!

    I don't know why but the mouseDownX and mouseDownY values I get when clicking on the panel are always huge. So I'm using an X that's higher than my object width to trigger that? Idk man... haha

    if (event.mouseDownX > 26) { //click on panel //first click shows menu, second hides menu } if (!event.hover && !event.mouseDownX) { //click off of panel that also hides menu }
  • Saturator bypass button

    11
    0 Votes
    11 Posts
    590 Views
    ChazroxC

    @d-healey I seeeee! I'll start doing it like this. I've been using if statements alot because im comfortable but I can see that I may be complicating things in some situations. Thanks Dave.

  • Samples from Floating Tile -> Loop Player How?

    2
    0 Votes
    2 Posts
    151 Views
    ChazroxC

    @Chazrox its an AudioWaveform component, not using FloatingTile option to be precise.

  • Can this be done?

    7
    0 Votes
    7 Posts
    444 Views
    S

    @d-healey Done!

  • Comparison Fails?

    Solved
    12
    0 Votes
    12 Posts
    691 Views
    David HealeyD

    @Matt_SF it's a fairly recent addition

  • Noob questions about scripting / audio loop player

    6
    0 Votes
    6 Posts
    504 Views
    T

    @d-healey makes more sense now thanks!

  • How does the .keyPressCallback() work?

    18
    0 Votes
    18 Posts
    1k Views
    hisefiloH

    @d-healey got it! thanks

  • Re-ordering Modules Possible?

    7
    0 Votes
    7 Posts
    389 Views
    ChazroxC

    @rglides Thanks. This is super dope too.

  • Questions about handling persistent data in panels

    14
    0 Votes
    14 Posts
    980 Views
    David HealeyD

    @VirtualVirgin said in Questions about handling persistent data in panels:

    Why would the value I set for the panel onInit then not be available?

    After on init completes the value is overwritten by whatever the last saved value was, since you only ever set the value in on init the last saved value - a value set after on init - will be undefined.

    Try it with a slider, set it's value in on init, hit compile and you will see the slider ignores the value you've set.

    @VirtualVirgin said in Questions about handling persistent data in panels:

    Does it mean that it cannot save values that are set onInit and that all of the values that it will restore must be entered dynamically through callbacks after onInit?

    Yes

    See this old thread for more details and examples - https://forum.hise.audio/topic/52/variable-persistence?_=1740706214240

  • Namespace in included file is not available

    7
    0 Votes
    7 Posts
    608 Views
    SimonS

    @d-healey Nope, it's the only namespace in the project and it was just to have some nice prefixes on the constants. It feels like something with variable hoisting but I'll check properly later.

  • Are "var" variables inside a paint routine inside a namespace leaky?

    Solved
    13
    0 Votes
    13 Posts
    905 Views
    David HealeyD

    @VirtualVirgin This one

    e1be96eb-6f9e-4dd0-9787-6ced41f024d8-image.png

    You might also simplify your code a little by using a helper function or two for your panel data management.

    For example a generic function to set a property in your 3D array structure.

    inline function setPanelData(panel, key, row, col, value) { panel.getValue()[key][row][col] = value; }
  • Slider from additional script not saved in preset

    Solved
    3
    0 Votes
    3 Posts
    166 Views
    Oli UllmannO

    @d-healey
    Good to know. Thank you @d-healey ! 😊

28

Online

2.1k

Users

13.1k

Topics

113.3k

Posts