Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| def show_toast(text): | |
| gr.Info(text, duration=1.5) | |
| return "Toast displayed" | |
| def play_fn(state): | |
| state['running'] = True | |
| print("\n\n===== Production started =====") | |
| show_toast("Production started !") | |
| return state | |
| def stop_fn(state): | |
| state['running'] = False | |
| print("----- Production stopped -----") | |
| show_toast("Production paused !") | |
| return state | |
| def reset_fn(state): | |
| state['running'] = False | |
| state['current_time'] = None | |
| state['part_id'] = None | |
| state['data'] = {} | |
| state['machine'] = {} | |
| print("----- Production rested -----\n\n") | |
| show_toast("Production reset !") | |
| return state | |
| def session_state(state): | |
| """ | |
| Session state management for production simulation controls. | |
| """ | |
| with gr.Row(): | |
| play = gr.Button("▶️ Play") | |
| stop = gr.Button("⏸️ Pause") | |
| reset = gr.Button("🔄 Reset") | |
| play.click( | |
| fn=play_fn, | |
| inputs=state, | |
| outputs=state | |
| ) | |
| stop.click( | |
| fn=stop_fn, | |
| inputs=state, | |
| outputs=state | |
| ) | |
| reset.click( | |
| fn=reset_fn, | |
| inputs=state, | |
| outputs=state | |
| ) |