/* $Id$
* Gnome user interface
- * Copyright (C) 2004 Jan Kratochvil <project-udpforward@jankratochvil.net>
+ * Copyright (C) 2004 Jan Kratochvil <project-udpgate@jankratochvil.net>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
/* Config: */
-#define DAEMON_CHECK_INTERVAL_MS 500
+#define DAEMON_CHECK_INTERVAL_MS 100
#define PORT_RANGE_BEGIN 2048
#define PORT_RANGE_END 10240
static void state_start_stop(void)
{
pid_t daemon_pid;
+gboolean daemon_running;
+static gboolean last_daemon_running,last_daemon_running_set=FALSE;
daemon_pid=is_daemon_running();
- gboolean daemon_running=((pid_t)-1!=daemon_pid);
+ daemon_running=((pid_t)-1!=daemon_pid);
+
+ /* Cache the result; maybe not needed. */
+ if (last_daemon_running_set && last_daemon_running==daemon_running)
+ return;
+ last_daemon_running=daemon_running;
+ last_daemon_running_set=TRUE;
+
gtk_widget_set_sensitive(GTK_WIDGET(ButtonStart),!daemon_running);
gtk_widget_set_sensitive(GTK_WIDGET(ButtonStop) , daemon_running);
gtk_widget_set_sensitive(GTK_WIDGET(PortHBox) ,!daemon_running);
if (daemon_running)
gnome_appbar_set_status(AppBar,
- udpforward_printf_alloca(_("udpforward daemon running as PID %d."),(int)daemon_pid));
+ udpgate_printf_alloca(_("udpgate daemon running as PID %d."),(int)daemon_pid));
else
- gnome_appbar_set_status(AppBar,_("No udpforward daemon currently running."));
+ gnome_appbar_set_status(AppBar,_("No udpgate daemon currently running."));
}
static gboolean daemon_check_timeout_func(gpointer data /* unused */)
if ((pid_t)-1!=is_daemon_running())
return;
gtk_entry_set_text(PortEntry,
- udpforward_printf_alloca("%d",(int)g_random_int_range(PORT_RANGE_BEGIN,PORT_RANGE_END)));
+ udpgate_printf_alloca("%d",(int)g_random_int_range(PORT_RANGE_BEGIN,PORT_RANGE_END)));
}
void on_AutostartCheckButton_toggled(GtkToggleButton *togglebutton,gpointer user_data)
/* ui_gnome_g_log_handler() needs 'App'. */
g_log_set_handler(
G_LOG_DOMAIN, /* log_domain; "Captive" */
- G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL, /* log_levels */
+ (G_LOG_LEVEL_MASK|G_LOG_FLAG_FATAL)&~(0
+ |G_LOG_LEVEL_MESSAGE
+ |G_LOG_LEVEL_INFO
+ |G_LOG_LEVEL_DEBUG), /* log_levels */
ui_gnome_g_log_handler, /* log_func */
NULL); /* user_data */