Первый раз пишу подобное, сильно не ругайте. Хочу чтоб при нажатии «Да» программа выходила с кодом возвтрата 1, иначе с кодом 0
#include <libnotify/notify.h>
int status = 0;
void action( NotifyNotification *n, gchar *action, gpointer user_data )
{
if( g_strcmp0(action, "yes") == 0 )
status = 1;
}
int main( int argc, char **argv )
{
NotifyNotification *n = NULL;
notify_init("Test");
n = notify_notification_new ("Бэкап", "Сделать бэкап?", "gtk-save");
notify_notification_set_timeout (n, 15000);
notify_notification_add_action(n, "yes", "Да", action, NULL, NULL );
notify_notification_add_action(n, "no", "Нет", action, NULL, NULL );
notify_notification_show (n, NULL);
sleep( 15 );
return status;
}
gcc notify.c -g `pkg-config --libs --cflags libnotify` -o notify
Проблема №2: sleep выглядит очень костыльно, но ничего умнее я не придумал