2020-05-15 22:23:03 +00:00
|
|
|
#ifndef check_menu_radio_group_h
|
|
|
|
#define check_menu_radio_group_h
|
|
|
|
|
|
|
|
#include <stdbool.h>
|
|
|
|
#include <gtk/gtk.h>
|
|
|
|
|
|
|
|
typedef struct CheckMenuItemGroupHandlerData {
|
|
|
|
struct CheckMenuItemGroup *group;
|
|
|
|
char *arg;
|
2021-01-09 18:09:15 +00:00
|
|
|
bool (*handler)(GtkWidget *, GtkWidget *, void *);
|
2020-05-15 22:23:03 +00:00
|
|
|
} CheckMenuItemGroupHandlerData;
|
|
|
|
|
|
|
|
typedef struct CheckMenuItemGroup {
|
2021-01-09 18:09:15 +00:00
|
|
|
GtkWidget *parent;
|
2020-05-15 22:23:03 +00:00
|
|
|
unsigned count;
|
|
|
|
GtkWidget **items;
|
|
|
|
CheckMenuItemGroupHandlerData **handlers;
|
|
|
|
} CheckMenuItemGroup;
|
|
|
|
|
2021-01-09 18:09:15 +00:00
|
|
|
CheckMenuItemGroup *check_menu_item_group_new(GtkWidget *parent, char **names, char **args);
|
2020-05-15 22:23:03 +00:00
|
|
|
void check_menu_item_group_activate(CheckMenuItemGroup *group, char *arg);
|
2021-01-09 18:09:15 +00:00
|
|
|
void check_menu_item_group_connect_toggle_signal(CheckMenuItemGroup *group, bool (*handler)(GtkWidget *, GtkWidget *, gpointer));
|
2020-05-15 22:23:03 +00:00
|
|
|
void check_menu_item_group_insert_into_menu_shell(CheckMenuItemGroup *group, GtkMenuShell *menu_shell, gint position);
|
|
|
|
|
|
|
|
#endif
|