Description:
Add an action that can directly replace the text content of a text widget on the canvas. A button (or other trigger) should be able to target a specific text box and set its text to a defined value, or potentially to a dynamically generated string. This enables text widgets to act as live information displays for controller profiles, signal chains, lyrics, notes and other performance-related messages.
Problem:
Currently, text widgets are mostly static labels. There is no simple way to:
  • Press a button and have a text box update to show a different message.
  • Use text widgets as dynamic status displays (e.g. current MIDI controller profile, which signal chain is active, which section of a set is playing).
  • Integrate text changes with follow actions or other logic to step through lyrics, chord prompts, or performance notes.
As a result:
  • MIDI controller users cannot easily see which “mode/profile” they’re in from a big on-screen label.
  • Live performers can’t quickly show large, clear messages on screen for themselves or the audience (“Chill Part”, “Solo Coming Up”, “Next Song: …”) triggered by buttons.
  • Designers who create on-screen control layouts for midimapping can’t annotate or update these layouts with changing text states.
  • Any kind of pseudo-teleprompter, chord progression steps, or random notes requires awkward workarounds instead of a straightforward text-replace action.
This limits the potential of text widgets as flexible, performance-relevant UI elements.
Proposed Solution:
Introduce a
“Replace Text in Text Box”
action with clear targeting and configuration:
  • Core action behavior:
- Action: “Change / Replace Text”
- Parameters:
- Target: select a specific text widget.
- New Text: user-specified content (literal string or dynamic expression in the future).
- When the action is triggered, the target text widget’s content is immediately replaced with the specified text.
  • Trigger sources:
- Canvas buttons (on press).
- MIDI controller inputs.
- Follow actions (e.g. step through a sequence of messages).
- Other Loopy actions/macros.
  • Dynamic usage examples and extensions:
- Use with dials and other widgets while a broader “dynamic text” system is still evolving:
- For example, a button that updates a text box to show which control profile is active.
- Support performance communication:
- Show large text on screen indicating which signal chain is currently in use.
- Display notes to the audience on an external screen (“Next piece”, “Short break”, etc.).
- Integration with follow actions:
- Cycle through chords, lyrics fragments, or other notations by chaining text-replace actions.
- Build a “scrolling” or stepwise teleprompter-style system.
  • Future-friendly design:
- The same mechanism could later be expanded to accept variables or bindings (e.g. insert current tempo, section name, loop name).
- Could integrate with a more advanced “dynamic text” concept, but this basic replace-text action is a powerful step on its own.
Benefits:
  • Dynamic information display:
    Turn text widgets into live status indicators for MIDI profiles, routing states, scenes, and more.
  • Better feedback for controller users:
    MIDI controller setups can have clear on-screen labels showing which layout or profile is currently active.
  • Performance messaging:
    Easy way to push big, legible messages to the screen for performer or audience, especially when Loopy is on a large display.
  • Lightweight building block:
    A simple, generic action that unlocks many creative uses (teleprompter, chord prompts, random notes) without requiring complex new UI.
Examples:
  • A MIDI controller profile display:
- Several buttons select different MIDI controller modes (e.g. “Drums”, “FX”, “Loop Control”).
- Each button triggers a “Replace Text” action targeting a central text box:
- “Current Profile: DRUMS”
- “Current Profile: FX”
- “Current Profile: LOOPS”
  • Signal chain indicator:
- Different buttons activate different signal chains or scenes.
- The same button press updates a big text widget to show:
- “Chain A: Clean Ambient”
- “Chain B: Heavy FX”
- “Chain C: Vocals + Delay”
  • Lyrics / chords / notes:
- A series of follow actions steps through a list of text replacements:
- Each trigger replaces the text box content with the next lyric line or chord.
- On the big screen, this becomes a simple scrolling notes system for the performer or audience.
This summary was automatically generated by GPT-5.1 Thinking on 2025-11-20
.