]> gitweb.michael.orlitzky.com - xfce4-hdaps.git/blobdiff - panel-plugin/xfce4-hdaps-dialogs.c
Updated the copyright statements for 2010.
[xfce4-hdaps.git] / panel-plugin / xfce4-hdaps-dialogs.c
index 5f2e87711ddf2ffb08d9943f660fe38af678a20e..7878e418089081a930df3fcf584a955efc162df6 100644 (file)
 #include <config.h>
 #endif
 
+#include <string.h>
 #include <gtk/gtk.h>
 #include <libxfcegui4/libxfcegui4.h>
 #include <libxfce4panel/xfce-panel-plugin.h>
 #include "xfce4-hdaps-dialogs.h"
+#include "hdaps.h"
 
 /* Wild guess. Actually borrowed from some code
    I copy-and-pasted. Doesn't seem too ugly. */
@@ -153,6 +155,7 @@ void hdaps_configure(XfcePanelPlugin *plugin,
   gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
 
   hdaps->cb_device_name = gtk_combo_box_new_text();
+
   /* Add the current device name, it should always be available.
      Oh, and it should be the default, too. */
   gtk_combo_box_append_text((GtkComboBox*)hdaps->cb_device_name, hdaps->device_name);
@@ -162,14 +165,19 @@ void hdaps_configure(XfcePanelPlugin *plugin,
   gtk_combo_box_set_active((GtkComboBox*)hdaps->cb_device_name, 0);
   
   /* Now loop through the list of available devices, adding each
-     to the list as we go. I believe GTK takes care of the duplicates
-     for us. */
+     to the list as we go. */
   char hdaps_devices[MAX_HDAPS_DEVICES][FILENAME_MAX];
   int found_devices = get_hdaps_device_list(hdaps_devices);
   int list_idx = 0;
   
   for (list_idx = 0; list_idx < found_devices; list_idx++) {
-    gtk_combo_box_append_text((GtkComboBox*)hdaps->cb_device_name, hdaps_devices[list_idx]);
+    /* We don't want to add duplicate entries to the combo box.
+       However, at this point, the current device name should be
+       the only entry. Therefore, to avoid duplicates, we only
+       have to avoid adding the current device name a second time. */
+    if (strcmp(hdaps_devices[list_idx], hdaps->device_name) != 0) {
+      gtk_combo_box_append_text((GtkComboBox*)hdaps->cb_device_name, hdaps_devices[list_idx]);
+    }
   }
   
   gtk_box_pack_start(GTK_BOX(hbox), hdaps->cb_device_name, FALSE, FALSE, 0);
@@ -192,7 +200,7 @@ void hdaps_about(XfcePanelPlugin *plugin) {
   about = xfce_about_info_new("xfce4-hdaps",
                              VERSION,
                              _("An HDAPS Plugin for XFCE4"),
-                             XFCE_COPYRIGHT_TEXT("2009", "Michael Orlitzky"),
+                             XFCE_COPYRIGHT_TEXT("2010", "Michael Orlitzky"),
                              NULL);
   
   xfce_about_info_set_homepage(about, PLUGIN_WEBSITE);