!7 cmodule LockScreen > DynSingleFunction { switchable bool withConfirm; // to filter out accidental clicks transient JFrame frame; void doIt { showFullscreen(); } void showFullscreen enter { if (frame != null) activateFrame(frame); frame = showFullScreen(jfullcenter( centerAndSouthWithMargins( jcenteredlabel("Lock mode!"), jMarginButton(20, "Exit", rThread exitStep2)))); onFrameClose(frame, r { frame = null; }); } void exitFullscreen enter { disposeFrame(frame); } void exitStep2 enter { /*if (!withConfirm) TODO */ exitFullscreen(); } }