[MPlayer-dev-eng] [PATCH] Add auto-close option to cmdlist menu
andrew.calkin at gmail.com
andrew.calkin at gmail.com
Thu May 11 11:07:21 CEST 2006
The attached patch does $subj. It is used in the GeeXboX project.
//Andrew
-------------- next part --------------
diff -r 3213b1684465 libmenu/menu_cmdlist.c
--- a/libmenu/menu_cmdlist.c Sun Apr 30 16:54:38 2006 +0200
+++ b/libmenu/menu_cmdlist.c Sun Apr 30 16:54:39 2006 +0200
@@ -39,15 +39,20 @@ struct list_entry_s {
struct menu_priv_s {
menu_list_priv_t p;
-};
+ int auto_close;
+};
+
+#define ST_OFF(m) M_ST_OFF(struct menu_priv_s, m)
static struct menu_priv_s cfg_dflt = {
- MENU_LIST_PRIV_DFLT
+ MENU_LIST_PRIV_DFLT,
+ 0,
};
static m_option_t cfg_fields[] = {
MENU_LIST_PRIV_FIELDS,
{ "title",M_ST_OFF(struct menu_priv_s,p.title), CONF_TYPE_STRING, 0, 0, 0, NULL },
+ { "auto-close", ST_OFF(auto_close), CONF_TYPE_FLAG, 0, 0, 1, NULL },
{ NULL, NULL, NULL, 0,0,0,NULL }
};
@@ -65,7 +70,11 @@ static void read_cmd(menu_t* menu,int cm
if(mpriv->p.current->ok) {
mp_cmd_t* c = mp_input_parse_cmd(mpriv->p.current->ok);
if(c)
+ {
+ if (mpriv->auto_close)
+ mp_input_queue_cmd (mp_input_parse_cmd ("menu hide"));
mp_input_queue_cmd(c);
+ }
}
} break;
case MENU_CMD_LEFT:
More information about the MPlayer-dev-eng
mailing list