summaryrefslogtreecommitdiff
path: root/gtk/gtkcombo.h
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@src.gnome.org>1998-01-20 21:40:38 +0000
committerOwen Taylor <otaylor@src.gnome.org>1998-01-20 21:40:38 +0000
commit0dae051ddde13717f5eb4c7c01908591bb360230 (patch)
tree940392514dbbdb512e3a8df9461d001b32952ea2 /gtk/gtkcombo.h
parenta7a7e430bfbfd930b0e1127f1c1c2d2ac298fd80 (diff)
downloadgdk-pixbuf-0dae051ddde13717f5eb4c7c01908591bb360230.tar.gz
Conversion to use Paolo Molaro's GtkCombo instead of GtkComboBox
Diffstat (limited to 'gtk/gtkcombo.h')
-rw-r--r--gtk/gtkcombo.h91
1 files changed, 91 insertions, 0 deletions
diff --git a/gtk/gtkcombo.h b/gtk/gtkcombo.h
new file mode 100644
index 000000000..81d06f98f
--- /dev/null
+++ b/gtk/gtkcombo.h
@@ -0,0 +1,91 @@
+/* gtkcombo - combo widget for gtk+
+ * Copyright 1997 Paolo Molaro
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+
+#ifndef __GTK_SMART_COMBO_H__
+#define __GTK_SMART_COMBO_H__
+
+#include <gtk/gtkhbox.h>
+#include <gtk/gtkitem.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#define GTK_COMBO(obj) GTK_CHECK_CAST (obj, gtk_combo_get_type (), GtkCombo)
+#define GTK_COMBO_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_combo_get_type (), GtkComboClass)
+#define GTK_IS_COMBO(obj) GTK_CHECK_TYPE (obj, gtk_combo_get_type ())
+
+typedef struct _GtkCombo GtkCombo;
+typedef struct _GtkComboClass GtkComboClass;
+
+/* you should access only the entry and list fields directly */
+struct _GtkCombo {
+ GtkHBox hbox;
+ GtkWidget *entry;
+ GtkWidget *button;
+ GtkWidget *popup;
+ GtkWidget *popwin;
+ GtkWidget *list;
+
+ gint entry_change_id;
+ gint list_change_id;
+
+ guint value_in_list:1;
+ guint ok_if_empty:1;
+ guint case_sensitive:1;
+ guint use_arrows:1;
+ guint use_arrows_always:1;
+};
+
+struct _GtkComboClass {
+ GtkHBoxClass parent_class;
+};
+
+guint gtk_combo_get_type (void);
+
+GtkWidget *gtk_combo_new (void);
+/* the text in the entry must be or not be in the list */
+void gtk_combo_set_value_in_list (GtkCombo* combo,
+ gint val,
+ gint ok_if_empty);
+/* set/unset arrows working for changing the value (can be annoying */
+void gtk_combo_set_use_arrows (GtkCombo* combo,
+ gint val);
+/* up/down arrows change value if current value not in list */
+void gtk_combo_set_use_arrows_always (GtkCombo* combo,
+ gint val);
+/* perform case-sensitive compares */
+void gtk_combo_set_case_sensitive (GtkCombo* combo,
+ gint val);
+/* call this function on an item if it isn't a label or you
+ want it to have a different value to be displayed in the entry */
+void gtk_combo_set_item_string (GtkCombo* combo,
+ GtkItem* item,
+ const gchar* item_value);
+/* simple interface */
+void gtk_combo_set_popdown_strings (GtkCombo* combo,
+ GList *strings);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* __GTK_SMART_COMBO_H__ */
+
+