static int alert_dialog_buttons_callback (SsdWidget widget, const char *new_value) { if (!strcmp(widget->name, "Irrelevant")){ hide_alert_dialog(); report_irrelevant(NULL, NULL, NULL); } else if (!strcmp(widget->name, "Hide")){ hide_alert_dialog(); } return 1; }
// Draw the warning on the screen void roadmap_alerter_display(void){ if (alert_should_be_visible) { if (the_active_alert.active_alert_id == -1){ return; } if ((!alert_active) || (prev_alert.active_alert_id != the_active_alert.active_alert_id)){ if (alert_active) hide_alert_dialog(); kill_timer(); prev_alert.active_alert_id = the_active_alert.active_alert_id; show_alert_dialog(); if (the_active_alert.alert_type == ALERT) roadmap_alerter_audio(); alert_active = TRUE; } else{ update_alert(); } } else { if (alert_active && !alert_should_be_visible) { if (AlerterTimerCallback == NULL){ SsdWidget text = ssd_widget_get(dialog, "Distance"); ssd_text_set_text(text, " "); g_seconds = 5; AlerterTimerCallback = hide_alert_timeout; roadmap_main_set_periodic (1000, AlerterTimerCallback); } } } }
static int alert_dialog_buttons_callback (SsdWidget widget, const char *new_value) { if (!strcmp(widget->name, "Irrelevant")){ hide_alert_dialog(); report_irrelevant(NULL, NULL, NULL); } else if (!strcmp(widget->name, "Close")){ hide_alert_dialog(); } else if (!strcmp(widget->name, "ThumbsUp")){ SsdWidget text; text = ssd_widget_get(widget->parent, "ThumbsUpText"); if (text) ssd_widget_show(text); (* (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->thumbs_up))(the_active_alert.active_alert_id); ssd_widget_hide(widget); } return 1; }
void hide_alert_timeout(void){ g_seconds --; if (g_seconds > 0){ update_button(); return; } hide_alert_dialog(); alert_active = FALSE; the_active_alert.active_alert_id = -1; kill_timer(); }
static int hide(SsdWidget widget, const char *new_value, void *context){ hide_alert_dialog(); return 1; }