Skip to content

UI.Collapsing

Name Mandatory Description Default Type
⬅️ Input The value that will be passed to the Contents shards of the collapsing header. Any
Output ➡️ The output of this shard will be its input. Any
Heading No The heading text or widgets for this collapsing header. none StringVar(String)Shard[Shard]None
Contents No The UI contents. none NoneShard[Shard]
DefaultOpen No Whether the collapsing header is opened by default. false BoolVar(Bool)

A header which can be collapsed/expanded, revealing a contained UI region.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Simple collapsing
GFX.MainWindow(Contents: {
  // Setup
  GFX.DrawQueue = ui-draw-queue
  GFX.UIPass(ui-draw-queue) >> render-steps

  // UI
  UI({
    UI.CentralPanel(Contents: {
      UI.Collapsing(
        Heading: "Heading"
        DefaultOpen: true
        Contents: {
          "Content" | UI.Label
        }
      )
    })
  })

  UI.Render(ui-draw-queue)
  GFX.Render(Steps: render-steps)
})

[warning] Context has 2 buffers at release (2 released, 2 kept)
[warning] Context has 5 textures at release (1 released, 5 kept)
 

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Collapsing with button heading
GFX.MainWindow(Contents: {
  // Setup
  GFX.DrawQueue = ui-draw-queue
  GFX.UIPass(ui-draw-queue) >> render-steps

  // UI
  UI({
    UI.CentralPanel(Contents: {
      UI.Collapsing(
        Heading: {UI.Button("Heading" {Msg("Clicked")})}
        DefaultOpen: true
        Contents: {
          "Content" | UI.Label
        }
      )
    })
  })

  UI.Render(ui-draw-queue)
  GFX.Render(Steps: render-steps)
})

[warning] Context has 2 buffers at release (2 released, 2 kept)
[warning] Context has 5 textures at release (1 released, 5 kept)