From 4e35f0b7d095adc2455f996e01b111f01b077652 Mon Sep 17 00:00:00 2001 From: intika Date: Sun, 31 Mar 2019 18:55:53 +0000 Subject: [PATCH] update checkbox implementation --- example.c | 4 ++-- tray.h | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/example.c b/example.c index 8a7f943..a8899fa 100644 --- a/example.c +++ b/example.c @@ -62,13 +62,13 @@ static struct tray tray = { .menu = (struct tray_menu[]) { {.text = "Hello", .cb = hello_cb}, - {.text = "Checked", .checked = 1, .cb = toggle_cb}, + {.text = "Checked", .checked = 1, .checkbox = 1, .cb = toggle_cb}, {.text = "Disabled", .disabled = 1}, {.text = "-"}, {.text = "SubMenu", .submenu = (struct tray_menu[]) { - {.text = "FIRST", .checked = 1, .cb = submenu_cb}, + {.text = "FIRST", .checked = 1, .checkbox = 1, .cb = submenu_cb}, {.text = "SECOND", .submenu = (struct tray_menu[]) { diff --git a/tray.h b/tray.h index 40c20ee..c02ab6a 100644 --- a/tray.h +++ b/tray.h @@ -13,6 +13,7 @@ struct tray_menu { const char *text; int disabled; int checked; + int checkbox; void (*cb)(struct tray_menu *); void *context; @@ -49,7 +50,7 @@ static GtkMenuShell *_tray_menu(struct tray_menu *m) { item = gtk_menu_item_new_with_label(m->text); gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), GTK_WIDGET(_tray_menu(m->submenu))); - } else if (m->checked) { + } else if (m->checkbox) { item = gtk_check_menu_item_new_with_label(m->text); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(item), !!m->checked); } else {