I have a custom button implementation that changes states in accordance with the on_click callback state.
States:
- initial - user-defined UI
- Processing - on_click callback is running
- Finished - on_click finished successfully -> changes to initial after 1 second with
add_periodic_callback
- Error - on_click failed running
I want to add the following functionality:
- run on_click in a thread
- while on_click running use a new Cancel state
- when the user clicks Cancel -> stop the running on_click
Can this be implemented with Panel directly without Threading or asyncio?
Using Threading or asyncio io intervenes with add_periodic_callback and throws error