I'd like to create a panel which starts 'minimised' but has a drag handle which can be dragged to expand the panel, or double-clicked to open it fully. I'd also like to be able to trigger this with a key-press.
Finally, I'd like this to be a generic component, that accepts any Control node(s) for the content.
I can't get my head around what UI controls I need to make this out of. How to attach the drag 'handle', for instance?

  • v79 replied to this.

    v79
    I have made some progress. My pulldown_panel scene has the following nodes:

    PulldownPanel
    - VBoxContainer
     - PanelContainer
     - Handle (_currently just a ColorRect_)

    I put this into a test scene with the following structure:

    PulldownPanelTest
    - PulldownPanel
     - VBoxContainer
      - _Labels, content etc_

    And my script on the Pulldown_Panel scene responds to a key press, and expands the PanelContainer by resizing it each frame, and also moves the content (the 1st (not 0th) child of the PanelContainer) down each frame. Opposite for shrinking.