/* LIBPIKA - The PIKA Library * Copyright (C) 1995-1997 Peter Mattis and Spencer Kimball * * pikastringcombobox.h * Copyright (C) 2007 Sven Neumann * * This library is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 3 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library. If not, see * . */ #if !defined (__PIKA_WIDGETS_H_INSIDE__) && !defined (PIKA_WIDGETS_COMPILATION) #error "Only can be included directly." #endif #ifndef __PIKA_STRING_COMBO_BOX_H__ #define __PIKA_STRING_COMBO_BOX_H__ G_BEGIN_DECLS /** * PikaStringSensitivityFunc: * @id: the string value from the column @id_column as passed to [ctor@StringComboBox.new]. * @data: (closure): the data passed in [method@StringComboBox.set_sensitivity]. */ typedef gboolean (* PikaStringSensitivityFunc) (const gchar *id, gpointer data); #define PIKA_TYPE_STRING_COMBO_BOX (pika_string_combo_box_get_type ()) #define PIKA_STRING_COMBO_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PIKA_TYPE_STRING_COMBO_BOX, PikaStringComboBox)) #define PIKA_STRING_COMBO_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PIKA_TYPE_STRING_COMBO_BOX, PikaStringComboBoxClass)) #define PIKA_IS_STRING_COMBO_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PIKA_TYPE_STRING_COMBO_BOX)) #define PIKA_IS_STRING_COMBO_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PIKA_TYPE_STRING_COMBO_BOX)) #define PIKA_STRING_COMBO_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PIKA_TYPE_STRING_COMBO_BOX, PikaStringComboBoxClass)) typedef struct _PikaStringComboBoxPrivate PikaStringComboBoxPrivate; typedef struct _PikaStringComboBoxClass PikaStringComboBoxClass; struct _PikaStringComboBox { GtkComboBox parent_instance; PikaStringComboBoxPrivate *priv; }; struct _PikaStringComboBoxClass { GtkComboBoxClass parent_class; /* Padding for future expansion */ void (* _pika_reserved1) (void); void (* _pika_reserved2) (void); void (* _pika_reserved3) (void); void (* _pika_reserved4) (void); void (* _pika_reserved5) (void); void (* _pika_reserved6) (void); void (* _pika_reserved7) (void); void (* _pika_reserved8) (void); }; GType pika_string_combo_box_get_type (void) G_GNUC_CONST; GtkWidget * pika_string_combo_box_new (GtkTreeModel *model, gint id_column, gint label_column); gboolean pika_string_combo_box_set_active (PikaStringComboBox *combo_box, const gchar *id); gchar * pika_string_combo_box_get_active (PikaStringComboBox *combo_box); void pika_string_combo_box_set_sensitivity (PikaStringComboBox *combo_box, PikaStringSensitivityFunc func, gpointer data, GDestroyNotify destroy); G_END_DECLS #endif /* __PIKA_STRING_COMBO_BOX_H__ */