diff options
Diffstat (limited to 'src/ui/console.c')
-rw-r--r-- | src/ui/console.c | 303 |
1 files changed, 183 insertions, 120 deletions
diff --git a/src/ui/console.c b/src/ui/console.c index 43313dd1..57e5eb73 100644 --- a/src/ui/console.c +++ b/src/ui/console.c @@ -47,24 +47,26 @@ static void _cons_splash_logo(void); void _show_roster_contacts(GSList *list, gboolean show_groups); -void -cons_show_time(void) +static void +_cons_show_time(void) { ProfWin *console = wins_get_console(); win_print_time(console, '-'); wins_refresh_console(); } +void (*cons_show_time)(void) = _cons_show_time; -void -cons_show_word(const char * const word) +static void +_cons_show_word(const char * const word) { ProfWin *console = wins_get_console(); wprintw(console->win, "%s", word); wins_refresh_console(); } +void (*cons_show_word)(const char * const) = _cons_show_word; -void -cons_debug(const char * const msg, ...) +static void +_cons_debug(const char * const msg, ...) { ProfWin *console = wins_get_console(); if (strcmp(PACKAGE_STATUS, "development") == 0) { @@ -84,6 +86,7 @@ cons_debug(const char * const msg, ...) ui_refresh(); } } +void (*cons_debug)(const char * const, ...) = _cons_debug; static void _cons_show(const char * const msg, ...) @@ -101,8 +104,8 @@ _cons_show(const char * const msg, ...) } void (*cons_show)(const char * const, ...) = _cons_show; -void -cons_show_error(const char * const msg, ...) +static void +_cons_show_error(const char * const msg, ...) { ProfWin *console = wins_get_console(); va_list arg; @@ -119,9 +122,10 @@ cons_show_error(const char * const msg, ...) wins_refresh_console(); cons_alert(); } +void (*cons_show_error)(const char * const, ...) = _cons_show_error; -void -cons_show_typing(const char * const barejid) +static void +_cons_show_typing(const char * const barejid) { ProfWin *console = wins_get_console(); PContact contact = roster_get_contact(barejid); @@ -137,9 +141,10 @@ cons_show_typing(const char * const barejid) wins_refresh_console(); cons_alert(); } +void (*cons_show_typing)(const char * const) = _cons_show_typing; -void -cons_show_incoming_message(const char * const short_from, const int win_index) +static void +_cons_show_incoming_message(const char * const short_from, const int win_index) { ProfWin *console = wins_get_console(); @@ -155,9 +160,10 @@ cons_show_incoming_message(const char * const short_from, const int win_index) wins_refresh_console(); cons_alert(); } +void (*cons_show_incoming_message)(const char * const, const int) = _cons_show_incoming_message; -void -cons_about(void) +static void +_cons_about(void) { ProfWin *console = wins_get_console(); int rows, cols; @@ -207,9 +213,10 @@ cons_about(void) wins_refresh_console(); cons_alert(); } +void (*cons_about)(void) = _cons_about; -void -cons_check_version(gboolean not_available_msg) +static void +_cons_check_version(gboolean not_available_msg) { ProfWin *console = wins_get_console(); char *latest_release = release_get_latest(); @@ -238,9 +245,10 @@ cons_check_version(gboolean not_available_msg) } } } +void (*cons_check_version)(gboolean) = _cons_check_version; -void -cons_show_login_success(ProfAccount *account) +static void +_cons_show_login_success(ProfAccount *account) { ProfWin *console = wins_get_console(); win_print_time(console, '-'); @@ -258,9 +266,10 @@ cons_show_login_success(ProfAccount *account) wins_refresh_console(); cons_alert(); } +void (*cons_show_login_success)(ProfAccount*) = _cons_show_login_success; -void -cons_show_wins(void) +static void +_cons_show_wins(void) { ProfWin *console = wins_get_console(); cons_show(""); @@ -279,9 +288,10 @@ cons_show_wins(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_wins)(void) = _cons_show_wins; -void -cons_show_room_invites(GSList *invites) +static void +_cons_show_room_invites(GSList *invites) { cons_show(""); if (invites == NULL) { @@ -297,9 +307,10 @@ cons_show_room_invites(GSList *invites) wins_refresh_console(); cons_alert(); } +void (*cons_show_room_invites)(GSList*) = _cons_show_room_invites; -void -cons_show_info(PContact pcontact) +static void +_cons_show_info(PContact pcontact) { ProfWin *console = wins_get_console(); const char *barejid = p_contact_barejid(pcontact); @@ -430,9 +441,10 @@ cons_show_info(PContact pcontact) wins_refresh_console(); cons_alert(); } +void (*cons_show_info)(PContact) = _cons_show_info; -void -cons_show_caps(const char * const contact, Resource *resource) +static void +_cons_show_caps(const char * const contact, Resource *resource) { ProfWin *console = wins_get_console(); WINDOW *win = console->win; @@ -505,9 +517,10 @@ cons_show_caps(const char * const contact, Resource *resource) wins_refresh_console(); cons_alert(); } +void (*cons_show_caps)(const char * const, Resource*) = _cons_show_caps; -void -cons_show_software_version(const char * const jid, const char * const presence, +static void +_cons_show_software_version(const char * const jid, const char * const presence, const char * const name, const char * const version, const char * const os) { ProfWin *console = wins_get_console(); @@ -532,9 +545,12 @@ cons_show_software_version(const char * const jid, const char * const presence, wins_refresh_console(); cons_alert(); } +void (*cons_show_software_version)(const char * const, const char * const, + const char * const, const char * const, + const char * const) = _cons_show_software_version; -void -cons_show_received_subs(void) +static void +_cons_show_received_subs(void) { GSList *received = presence_get_subscription_requests(); if (received == NULL) { @@ -552,9 +568,10 @@ cons_show_received_subs(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_received_subs)(void) = _cons_show_received_subs; -void -cons_show_sent_subs(void) +static void +_cons_show_sent_subs(void) { if (roster_has_pending_subscriptions()) { GSList *contacts = roster_get_contacts(); @@ -574,9 +591,10 @@ cons_show_sent_subs(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_sent_subs)(void) = _cons_show_sent_subs; -void -cons_show_room_list(GSList *rooms, const char * const conference_node) +static void +_cons_show_room_list(GSList *rooms, const char * const conference_node) { ProfWin *console = wins_get_console(); if ((rooms != NULL) && (g_slist_length(rooms) > 0)) { @@ -598,9 +616,10 @@ cons_show_room_list(GSList *rooms, const char * const conference_node) wins_refresh_console(); cons_alert(); } +void (*cons_show_room_list)(GSList*, const char * const) = _cons_show_room_list; -void -cons_show_bookmarks(const GList *list) +static void +_cons_show_bookmarks(const GList *list) { Bookmark *item; @@ -628,9 +647,10 @@ cons_show_bookmarks(const GList *list) wins_refresh_console(); cons_alert(); } +void (*cons_show_bookmarks)(const GList*) = _cons_show_bookmarks; -void -cons_show_disco_info(const char *jid, GSList *identities, GSList *features) +static void +_cons_show_disco_info(const char *jid, GSList *identities, GSList *features) { if (((identities != NULL) && (g_slist_length(identities) > 0)) || ((features != NULL) && (g_slist_length(features) > 0))) { @@ -671,9 +691,10 @@ cons_show_disco_info(const char *jid, GSList *identities, GSList *features) cons_alert(); } } +void (*cons_show_disco_info)(const char*, GSList*, GSList*) = _cons_show_disco_info; -void -cons_show_disco_items(GSList *items, const char * const jid) +static void +_cons_show_disco_items(GSList *items, const char * const jid) { ProfWin *console = wins_get_console(); if ((items != NULL) && (g_slist_length(items) > 0)) { @@ -696,9 +717,10 @@ cons_show_disco_items(GSList *items, const char * const jid) wins_refresh_console(); cons_alert(); } +void (*cons_show_disco_items)(GSList*, const char * const) = _cons_show_disco_items; -void -cons_show_status(const char * const barejid) +static void +_cons_show_status(const char * const barejid) { ProfWin *console = wins_get_console(); PContact pcontact = roster_get_contact(barejid); @@ -711,9 +733,10 @@ cons_show_status(const char * const barejid) wins_refresh_console(); cons_alert(); } +void (*cons_show_status)(const char * const) = _cons_show_status; -void -cons_show_room_invite(const char * const invitor, const char * const room, +static void +_cons_show_room_invite(const char * const invitor, const char * const room, const char * const reason) { char *display_from = NULL; @@ -748,9 +771,11 @@ cons_show_room_invite(const char * const invitor, const char * const room, wins_refresh_console(); cons_alert(); } +void (*cons_show_room_invite)(const char * const, const char * const, + const char * const) = _cons_show_room_invite; -void -cons_show_account_list(gchar **accounts) +static void +_cons_show_account_list(gchar **accounts) { ProfWin *console = wins_get_console(); int size = g_strv_length(accounts); @@ -778,9 +803,10 @@ cons_show_account_list(gchar **accounts) wins_refresh_console(); cons_alert(); } +void (*cons_show_account_list)(gchar**) = _cons_show_account_list; -void -cons_show_account(ProfAccount *account) +static void +_cons_show_account(ProfAccount *account) { ProfWin *console = wins_get_console(); cons_show(""); @@ -901,9 +927,10 @@ cons_show_account(ProfAccount *account) wins_refresh_console(); cons_alert(); } +void (*cons_show_account)(ProfAccount*) = _cons_show_account; -void -cons_theme_setting(void) +static void +_cons_theme_setting(void) { gchar *theme = prefs_get_string(PREF_THEME); if (theme == NULL) { @@ -912,72 +939,80 @@ cons_theme_setting(void) cons_show("Theme (/theme) : %s", theme); } } +void (*cons_theme_setting)(void) = _cons_theme_setting; -void -cons_beep_setting(void) +static void +_cons_beep_setting(void) { if (prefs_get_boolean(PREF_BEEP)) cons_show("Terminal beep (/beep) : ON"); else cons_show("Terminal beep (/beep) : OFF"); } +void (*cons_beep_setting)(void) = _cons_beep_setting; -void -cons_flash_setting(void) +static void +_cons_flash_setting(void) { if (prefs_get_boolean(PREF_FLASH)) cons_show("Terminal flash (/flash) : ON"); else cons_show("Terminal flash (/flash) : OFF"); } +void (*cons_flash_setting)(void) = _cons_flash_setting; -void -cons_splash_setting(void) +static void +_cons_splash_setting(void) { if (prefs_get_boolean(PREF_SPLASH)) cons_show("Splash screen (/splash) : ON"); else cons_show("Splash screen (/splash) : OFF"); } +void (*cons_splash_setting)(void) = _cons_splash_setting; -void -cons_autoconnect_setting(void) +static void +_cons_autoconnect_setting(void) { if (prefs_get_string(PREF_CONNECT_ACCOUNT) != NULL) cons_show("Autoconnect (/autoconnect) : %s", prefs_get_string(PREF_CONNECT_ACCOUNT)); else cons_show("Autoconnect (/autoconnect) : OFF"); } +void (*cons_autoconnect_setting)(void) = _cons_autoconnect_setting; -void -cons_vercheck_setting(void) +static void +_cons_vercheck_setting(void) { if (prefs_get_boolean(PREF_VERCHECK)) cons_show("Version checking (/vercheck) : ON"); else cons_show("Version checking (/vercheck) : OFF"); } +void (*cons_vercheck_setting)(void) = _cons_vercheck_setting; -void -cons_mouse_setting(void) +static void +_cons_mouse_setting(void) { if (prefs_get_boolean(PREF_MOUSE)) cons_show("Mouse handling (/mouse) : ON"); else cons_show("Mouse handling (/mouse) : OFF"); } +void (*cons_mouse_setting)(void) = _cons_mouse_setting; -void -cons_statuses_setting(void) +static void +_cons_statuses_setting(void) { if (prefs_get_boolean(PREF_STATUSES)) cons_show("Status (/statuses) : ON"); else cons_show("Status (/statuses) : OFF"); } +void (*cons_statuses_setting)(void) = _cons_statuses_setting; -void -cons_titlebar_setting(void) +static void +_cons_titlebar_setting(void) { if (prefs_get_boolean(PREF_TITLEBARVERSION)) { cons_show("Titlebar display (/titlebar) : version"); @@ -985,9 +1020,10 @@ cons_titlebar_setting(void) cons_show("Titlebar display (/titlebar) : NONE"); } } +void (*cons_titlebar_setting)(void) = _cons_titlebar_setting; -void -cons_show_ui_prefs(void) +static void +_cons_show_ui_prefs(void) { cons_show("UI preferences:"); cons_show(""); @@ -1003,9 +1039,10 @@ cons_show_ui_prefs(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_ui_prefs)(void) = _cons_show_ui_prefs; -void -cons_notify_setting(void) +static void +_cons_notify_setting(void) { if (prefs_get_boolean(PREF_NOTIFY_MESSAGE)) cons_show("Messages (/notify message) : ON"); @@ -1036,9 +1073,10 @@ cons_notify_setting(void) cons_show("Reminder period (/notify remind) : %d seconds", remind_period); } } +void (*cons_notify_setting)(void) = _cons_notify_setting; -void -cons_show_desktop_prefs(void) +static void +_cons_show_desktop_prefs(void) { cons_show("Desktop notification preferences:"); cons_show(""); @@ -1047,36 +1085,40 @@ cons_show_desktop_prefs(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_desktop_prefs)(void) = _cons_show_desktop_prefs; -void -cons_states_setting(void) +static void +_cons_states_setting(void) { if (prefs_get_boolean(PREF_STATES)) cons_show("Send chat states (/states) : ON"); else cons_show("Send chat states (/states) : OFF"); } +void (*cons_states_setting)(void) = _cons_states_setting; -void -cons_outtype_setting(void) +static void +_cons_outtype_setting(void) { if (prefs_get_boolean(PREF_OUTTYPE)) cons_show("Send composing (/outtype) : ON"); else cons_show("Send composing (/outtype) : OFF"); } +void (*cons_outtype_setting)(void) = _cons_outtype_setting; -void -cons_intype_setting(void) +static void +_cons_intype_setting(void) { if (prefs_get_boolean(PREF_INTYPE)) cons_show("Show typing (/intype) : ON"); else cons_show("Show typing (/intype) : OFF"); } +void (*cons_intype_setting)(void) = _cons_intype_setting; -void -cons_gone_setting(void) +static void +_cons_gone_setting(void) { gint gone_time = prefs_get_gone(); if (gone_time == 0) { @@ -1087,18 +1129,20 @@ cons_gone_setting(void) cons_show("Leave conversation (/gone) : %d minutes", gone_time); } } +void (*cons_gone_setting)(void) = _cons_gone_setting; -void -cons_history_setting(void) +static void +_cons_history_setting(void) { if (prefs_get_boolean(PREF_HISTORY)) cons_show("Chat history (/history) : ON"); else cons_show("Chat history (/history) : OFF"); } +void (*cons_history_setting)(void) = _cons_history_setting; -void -cons_show_chat_prefs(void) +static void +_cons_show_chat_prefs(void) { cons_show("Chat preferences:"); cons_show(""); @@ -1111,33 +1155,37 @@ cons_show_chat_prefs(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_chat_prefs)(void) = _cons_show_chat_prefs; -void -cons_log_setting(void) +static void +_cons_log_setting(void) { cons_show("Max log size (/log maxsize) : %d bytes", prefs_get_max_log_size()); } +void (*cons_log_setting)(void) = _cons_log_setting; -void -cons_chlog_setting(void) +static void +_cons_chlog_setting(void) { if (prefs_get_boolean(PREF_CHLOG)) cons_show("Chat logging (/chlog) : ON"); else cons_show("Chat logging (/chlog) : OFF"); } +void (*cons_chlog_setting)(void) = _cons_chlog_setting; -void -cons_grlog_setting(void) +static void +_cons_grlog_setting(void) { if (prefs_get_boolean(PREF_GRLOG)) cons_show("Groupchat logging (/grlog) : ON"); else cons_show("Groupchat logging (/grlog) : OFF"); } +void (*cons_grlog_setting)(void) = _cons_grlog_setting; -void -cons_show_log_prefs(void) +static void +_cons_show_log_prefs(void) { cons_show("Logging preferences:"); cons_show(""); @@ -1148,9 +1196,10 @@ cons_show_log_prefs(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_log_prefs)(void) = _cons_show_log_prefs; -void -cons_autoaway_setting(void) +static void +_cons_autoaway_setting(void) { if (strcmp(prefs_get_string(PREF_AUTOAWAY_MODE), "off") == 0) { cons_show("Autoaway (/autoaway mode) : OFF"); @@ -1173,9 +1222,10 @@ cons_autoaway_setting(void) cons_show("Autoaway check (/autoaway check) : OFF"); } } +void (*cons_autoaway_setting)(void) = _cons_autoaway_setting; -void -cons_show_presence_prefs(void) +static void +_cons_show_presence_prefs(void) { cons_show("Presence preferences:"); cons_show(""); @@ -1184,9 +1234,10 @@ cons_show_presence_prefs(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_presence_prefs)(void) = _cons_show_presence_prefs; -void -cons_reconnect_setting(void) +static void +_cons_reconnect_setting(void) { gint reconnect_interval = prefs_get_reconnect(); if (reconnect_interval == 0) { @@ -1197,9 +1248,10 @@ cons_reconnect_setting(void) cons_show("Reconnect interval (/reconnect) : %d seconds", reconnect_interval); } } +void (*cons_reconnect_setting)(void) = _cons_reconnect_setting; -void -cons_autoping_setting(void) +static void +_cons_autoping_setting(void) { gint autoping_interval = prefs_get_autoping(); if (autoping_interval == 0) { @@ -1210,16 +1262,18 @@ cons_autoping_setting(void) cons_show("Autoping interval (/autoping) : %d seconds", autoping_interval); } } +void (*cons_autoping_setting)(void) = _cons_autoping_setting; -void -cons_priority_setting(void) +static void +_cons_priority_setting(void) { gint priority = prefs_get_priority(); cons_show("Priority (/priority) : %d", priority); } +void (*cons_priority_setting)(void) = _cons_priority_setting; -void -cons_show_connection_prefs(void) +static void +_cons_show_connection_prefs(void) { cons_show("Connection preferences:"); cons_show(""); @@ -1230,9 +1284,10 @@ cons_show_connection_prefs(void) wins_refresh_console(); cons_alert(); } +void (*cons_show_connection_prefs)(void) = _cons_show_connection_prefs; -void -cons_show_themes(GSList *themes) +static void +_cons_show_themes(GSList *themes) { cons_show(""); @@ -1249,9 +1304,10 @@ cons_show_themes(GSList *themes) wins_refresh_console(); cons_alert(); } +void (*cons_show_themes)(GSList*) = _cons_show_themes; -void -cons_prefs(void) +static void +_cons_prefs(void) { cons_show(""); cons_show_ui_prefs(); @@ -1270,9 +1326,10 @@ cons_prefs(void) wins_refresh_console(); cons_alert(); } +void (*cons_prefs)(void) = _cons_prefs; -void -cons_help(void) +static void +_cons_help(void) { cons_show(""); cons_show("Choose a help option:"); @@ -1293,9 +1350,10 @@ cons_help(void) wins_refresh_console(); cons_alert(); } +void (*cons_help)(void) = _cons_help; -void -cons_navigation_help(void) +static void +_cons_navigation_help(void) { cons_show(""); cons_show("Navigation:"); @@ -1317,9 +1375,10 @@ cons_navigation_help(void) wins_refresh_console(); cons_alert(); } +void (*cons_navigation_help)(void) = _cons_navigation_help; -void -cons_show_roster_group(const char * const group, GSList *list) +static void +_cons_show_roster_group(const char * const group, GSList *list) { cons_show(""); @@ -1333,9 +1392,10 @@ cons_show_roster_group(const char * const group, GSList *list) wins_refresh_console(); cons_alert(); } +void (*cons_show_roster_group)(const char * const, GSList*) = _cons_show_roster_group; -void -cons_show_roster(GSList *list) +static void +_cons_show_roster(GSList *list) { cons_show(""); cons_show("Roster:"); @@ -1344,9 +1404,10 @@ cons_show_roster(GSList *list) wins_refresh_console(); cons_alert(); } +void (*cons_show_roster)(GSList*) = _cons_show_roster; -void -cons_show_contacts(GSList *list) +static void +_cons_show_contacts(GSList *list) { ProfWin *console = wins_get_console(); GSList *curr = list; @@ -1363,14 +1424,16 @@ cons_show_contacts(GSList *list) wins_refresh_console(); cons_alert(); } +void (*cons_show_contacts)(GSList*) = _cons_show_contacts; -void -cons_alert(void) +static void +_cons_alert(void) { if (ui_current_win_type() != WIN_CONSOLE) { status_bar_new(1); } } +void (*cons_alert)(void) = _cons_alert; static void _cons_splash_logo(void) |