1 Star 0 Fork 1

idoio_conn / Linux_Greenhouse-app

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
sms_menu.h 1.44 KB
一键复制 编辑 原始数据 按行查看 历史
HoweiXue 提交于 2016-05-24 20:47 . Linux_Greenhouse-app
#ifndef _SMS_MENU_H_
#define _SMS_MENU_H_
#include <stdlib.h>
#include <string.h>
#include "utils.h"
typedef char *(*SMSMENUFUNC)(char *output, char *arg);
typedef struct sms_menu_t {
void *items; // 菜单项列表
unsigned int idx_len; // 菜单引导序号长度
int item_count; // 菜单项数量
const char *prefix_tip; // 菜单前面的提示
const char *suffix_tip; // 菜单后面的提示
} SMSMENU;
typedef struct sms_menu_item_t {
const char *help; // 帮助
SMSMENUFUNC func; // 菜单处理函数
SMSMENU *submenu; // 子菜单
} SMSMENUITEM;
// 定义一个菜单的起始
#define SMSMENU_START(name, idxlen) \
static SMSMENUITEM name##Items[] = {
// 增加一项菜单项
#define ADD_SMSMENUITEM(help, func) \
{ help, func, NULL },
// 增加一个带有子菜单的菜单项
#define ADD_SMSSUBMENUITEM(help, sub) \
{ help, NULL, &sub },
// 定义一个菜单的结束
#define SMSMENU_END(name, idxlen, ptip, stip) \
}; \
static SMSMENU name = { name##Items, idxlen, ARRAY_SIZE(name##Items), ptip, stip };
SMSMENU *get_top_menu();
char *exec_smscommand(SMSMENU *menu, char *output, char *sms, const char *prefix);
#endif//_SMS_MENU_H_
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/idoio_conn/Linux_Greenhouse-app.git
git@gitee.com:idoio_conn/Linux_Greenhouse-app.git
idoio_conn
Linux_Greenhouse-app
Linux_Greenhouse-app
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891