152 vib->next_button = button;
161 vib->yes_button = button;
176 vib->no_button = button;
191 vib->abstain_button = button;
227 if (
vib ==
nullptr) {
239 if (
vi !=
NULL &&
vi->resolved &&
vi->passed) {
243 }
else if (
vi !=
NULL &&
vi->resolved && !
vi->passed) {
247 }
else if (
vi !=
NULL &&
vi->remove_time > 0) {
257 "<span weight=\"bold\">(%d/%d)</span> ",
263 if (status[0] !=
'\0') {
265 "<span weight=\"bold\" background=\"%s\">%s</span> ",
bool chatline_is_scrolled_to_bottom(void)
void chatline_scroll_to_bottom(bool delayed)
void voteinfo_gui_update(void)
static void voteinfo_bar_do_vote_callback(GtkWidget *w, gpointer userdata)
GtkWidget * ingame_votebar
GtkWidget * voteinfo_bar_new(bool split_bar)
static void voteinfo_bar_next_callback(GtkWidget *w, gpointer userdata)
GtkWidget * pregame_votebar
static void voteinfo_bar_destroy(GtkWidget *w, gpointer userdata)
#define fc_calloc(n, esz)
GtkWidget * abstain_button
GtkWidget * voter_count_label
GtkWidget * abstain_count_label
GtkWidget * yes_count_label
GtkWidget * no_count_label
int fc_snprintf(char *str, size_t n, const char *format,...)
#define sz_strlcpy(dest, src)
enum client_pages get_client_page(void)
void voteinfo_do_vote(int vote_no, enum client_vote_type vote)
bool voteinfo_bar_can_be_shown(void)
struct voteinfo * voteinfo_queue_get_current(int *pindex)
void voteinfo_queue_next(void)
int voteinfo_queue_size(void)