+int PTransportButton::play_command(const char *lock_msg, int command)
+{
+ int ctrl_key = transport->subwindow->ctrl_down() ? 1 : 0;
+ int shft_key = transport->subwindow->shift_down() ? 1 : 0;
+ int use_inout = ctrl_key;
+ int toggle_audio = shft_key & ~ctrl_key;
+ int loop_play = shft_key & ctrl_key;
+ unlock_window();
+ transport->handle_transport(command, 0, use_inout, 0, toggle_audio, loop_play);
+ lock_window(lock_msg);
+ return 1;
+}
+