void poke_objects(); struct global_variables { GtkWindow *window; GtkStack *stack; GtkBuilder *builder; }; GtkWidget * create_header_button(GtkHeaderBar *header, const gchar *tooltip, const gchar *icon_name, gboolean end, GCallback callback, gpointer user_data); void cbox_add_all_protocols(GtkComboBoxText *cbox); void cbox_add_all_keycodes(GtkComboBoxText *cbox); gulong _g_signal_replace(gpointer instance, const gchar *detailed_signal, GCallback c_handler, gpointer data, GConnectFlags flags); static inline gulong g_signal_replace(gpointer instance, const gchar *detailed_signal, GCallback c_handler, gpointer data) { return _g_signal_replace(instance, detailed_signal, c_handler, data, 0); } static inline gulong g_signal_replace_swapped(gpointer instance, const gchar *detailed_signal, GCallback c_handler, gpointer data) { return _g_signal_replace(instance, detailed_signal, c_handler, data, G_CONNECT_SWAPPED); } gulong _g_signal_replace_id(const gchar *widget_id, const gchar *detailed_signal, GCallback c_handler, gpointer data, GConnectFlags flags); static inline gulong g_signal_replace_id(const gchar *widget_id, const gchar *detailed_signal, GCallback c_handler, gpointer data) { return _g_signal_replace_id(widget_id, detailed_signal, c_handler, data, 0); } static inline gulong g_signal_replace_id_swapped(const gchar *widget_id, const gchar *detailed_signal, GCallback c_handler, gpointer data) { return _g_signal_replace_id(widget_id, detailed_signal, c_handler, data, G_CONNECT_SWAPPED); } extern struct global_variables *global; static inline GObject * get_object(const gchar *object_id) { return gtk_builder_get_object(global->builder, object_id); }