mirror of
https://git.jabber.space/devs/cproof.git
synced 2026-07-20 16:26:22 +00:00
Added new help format to c plugins WIP
This commit is contained in:
@@ -119,6 +119,49 @@ cons_show_padded(int pad, const char *const msg, ...)
|
||||
va_end(arg);
|
||||
}
|
||||
|
||||
void
|
||||
cons_show_plugin_help(const char *const cmd, CommandHelp *help)
|
||||
{
|
||||
ProfWin *console = wins_get_console();
|
||||
|
||||
cons_show("");
|
||||
win_vprint(console, '-', 0, NULL, 0, THEME_WHITE_BOLD, "", "%s", &cmd[1]);
|
||||
win_print(console, '-', 0, NULL, NO_EOL, THEME_WHITE_BOLD, "", "");
|
||||
int i;
|
||||
for (i = 0; i < strlen(cmd) - 1 ; i++) {
|
||||
win_print(console, '-', 0, NULL, NO_EOL | NO_DATE, THEME_WHITE_BOLD, "", "-");
|
||||
}
|
||||
win_print(console, '-', 0, NULL, NO_DATE, THEME_WHITE_BOLD, "", "");
|
||||
cons_show("");
|
||||
|
||||
win_print(console, '-', 0, NULL, 0, THEME_WHITE_BOLD, "", "Synopsis");
|
||||
ui_show_lines(console, help->synopsis);
|
||||
cons_show("");
|
||||
|
||||
win_print(console, '-', 0, NULL, 0, THEME_WHITE_BOLD, "", "Description");
|
||||
win_println(console, 0, help->desc);
|
||||
|
||||
int maxlen = 0;
|
||||
for (i = 0; help->args[i][0] != NULL; i++) {
|
||||
if (strlen(help->args[i][0]) > maxlen)
|
||||
maxlen = strlen(help->args[i][0]);
|
||||
}
|
||||
|
||||
if (i > 0) {
|
||||
cons_show("");
|
||||
win_print(console, '-', 0, NULL, 0, THEME_WHITE_BOLD, "", "Arguments");
|
||||
for (i = 0; help->args[i][0] != NULL; i++) {
|
||||
win_vprint(console, '-', maxlen + 3, NULL, 0, 0, "", "%-*s: %s", maxlen + 1, help->args[i][0], help->args[i][1]);
|
||||
}
|
||||
}
|
||||
|
||||
if (g_strv_length((gchar**)help->examples) > 0) {
|
||||
cons_show("");
|
||||
win_print(console, '-', 0, NULL, 0, THEME_WHITE_BOLD, "", "Examples");
|
||||
ui_show_lines(console, help->examples);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
cons_show_help(Command *command)
|
||||
{
|
||||
|
||||
@@ -231,6 +231,7 @@ void cons_show_padded(int pad, const char *const msg, ...);
|
||||
void cons_about(void);
|
||||
void cons_help(void);
|
||||
void cons_show_help(Command *command);
|
||||
void cons_show_plugin_help(const char *const cmd, CommandHelp *help);
|
||||
void cons_bad_cmd_usage(const char *const cmd);
|
||||
void cons_navigation_help(void);
|
||||
void cons_prefs(void);
|
||||
|
||||
Reference in New Issue
Block a user