]> 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 80e0bcc3ba580f22f0ce5ce5e22c229e804fa9e0..7878e418089081a930df3fcf584a955efc162df6 100644 (file)
@@ -1,11 +1,33 @@
+/*
+ * xfce4-hdaps, an XFCE4 panel plugin for the HDAPS system.
+ *
+ * Copyright Michael Orlitzky
+ *
+ * http://michael.orlitzky.com/
+ *
+ * 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
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * http://www.fsf.org/licensing/licenses/gpl.html
+ */
+
 #ifdef HAVE_CONFIG_H
 #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. */
@@ -133,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);
@@ -142,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);
@@ -172,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);