/* Process a command event. 
This function is only called by  */
static void win_process_command_event(struct win_command_event *cevent)
/* Process a command event. 
This function is only called by  */
static void win_process_command_event(struct win_command_event *cevent)
{
	struct win_window *win = cevent->recipient;
	Assert(win != NULL);
	do {
		bool accepted = win_handle_event(win, WIN_EVENT_COMMAND,
				(void*)(win_command_t)cevent->data);
		if (accepted) {
			break;
		}
		win = win->parent;
	} while (win != NULL);
}