void hdaps_save(XfcePanelPlugin *plugin, HdapsPlugin *hdaps) {
-
+
XfceRc *rc;
gchar *file;
DBG("Failed to open the configuration file. Bailing.");
return;
}
-
-
+
+
/* Write any user-configured values to the resource file. */
if (hdaps->device_name) {
xfce_rc_write_entry(rc, "device_name", hdaps->device_name);
}
-
+
xfce_rc_write_int_entry(rc, "poll_frequency", hdaps->poll_frequency);
-
+
/* close the rc file */
xfce_rc_close(rc);
}
if (hdaps->icon) {
gtk_widget_destroy(hdaps->icon);
}
-
+
if (icon) {
hdaps->icon = gtk_image_new_from_pixbuf(icon);
g_object_unref(G_OBJECT(icon));
gtk_box_pack_start(GTK_BOX(hdaps->hvbox), GTK_WIDGET(hdaps->icon), FALSE, FALSE, 0);
gtk_widget_show(hdaps->icon);
-
+
return;
}
static void hdaps_read(HdapsPlugin *hdaps) {
-
+
XfceRc *rc;
gchar *file;
const gchar *saved_device_name;
DBG("Retaining default settings.");
return;
}
-
+
/* Open the config file read-only. */
rc = xfce_rc_simple_open(file, TRUE);
DBG("Retaining default settings.");
return;
}
-
+
/* Read the settings, one at a time. */
-
+
/* We use saved_device_name here because we need
to dupe the string after we read it in from the
config file. */
hdaps->poll_frequency = xfce_rc_read_int_entry(rc,
"poll_frequency",
DEFAULT_POLL_FREQUENCY);
-
+
/* And close the config file. */
xfce_rc_close(rc);
}
/* The HdapsPlugin gets a copy of the XfcePanelPlugin. */
hdaps->plugin = plugin;
-
+
/* Set default values right before reading in the user's settings.
This way, hdaps_read() doesn't have to set defaults on error
conditions. */
hdaps_set_defaults(hdaps);
-
+
/* Read any user settings into the HdapsPlugin. */
hdaps_read(hdaps);
hdaps->previous_status = HDAPS_OFF;
hdaps_set_icon(hdaps, HDAPS_OFF);
hdaps_set_tooltip(hdaps, HDAPS_OFF);
-
+
return hdaps;
}
static void hdaps_free(XfcePanelPlugin *plugin,
HdapsPlugin *hdaps) {
-
+
GtkWidget *dialog;
/* Destroy the dialog if it's still open. */
static void hdaps_orientation_changed(XfcePanelPlugin *plugin,
GtkOrientation orientation,
HdapsPlugin *hdaps) {
-
+
/* Change the plugin's orientation. Basically magic to me. */
gtk_orientable_set_orientation(GTK_ORIENTABLE(hdaps->hvbox), orientation);
}
static gboolean hdaps_size_changed(XfcePanelPlugin *plugin,
gint size,
HdapsPlugin *hdaps) {
-
+
GtkOrientation orientation;
/* Get the current orientation of the plugin. */
static gboolean hdaps_update_status(HdapsPlugin *hdaps) {
/* This checks the status of HDAPS and updates the
- widget accordingly. */
+ widget accordingly. */
/* This just gets the status. */
int status = parse_int_from_file(hdaps->sysfs_file);
if (status > 0) {
status = HDAPS_ON;
}
-
+
if (status != hdaps->previous_status) {
/* And we only update the icon if we need to. */
hdaps_set_icon(hdaps, status);
hdaps_set_tooltip(hdaps, status);
hdaps->previous_status = status;
}
-
+
return TRUE;
}
/* Show the "about" right-click menu item, and
connect its event handler. */
- xfce_panel_plugin_menu_show_about(plugin);
+ xfce_panel_plugin_menu_show_about(plugin);
g_signal_connect(G_OBJECT(plugin), "about",
G_CALLBACK(hdaps_about), hdaps);