#define USE_SECUREAUTH_COMBOBOX
#define USE_GTK_SECURITY_OPTIONS_VIEW
#define USE_GTK_TEXT_VIEW
+#define USE_SELECTOR_COMBOBOX
#endif
#ifdef USE_SCROLLED_WINDOW
#include <modest-maemo-security-options-view.h>
#endif
+#ifdef USE_SELECTOR_COMBOBOX
+#include <modest-combo-box.h>
+#else
+#include <modest-selector-picker.h>
+#endif
+
static void modest_toolkit_factory_class_init (ModestToolkitFactoryClass *klass);
static void modest_toolkit_factory_init (ModestToolkitFactory *self);
GtkSizeGroup *title_size_group,
GtkSizeGroup *value_size_group);
static GtkWidget * modest_toolkit_factory_create_text_view_default (ModestToolkitFactory *self);
+static GtkWidget * modest_toolkit_factory_create_selector_default (ModestToolkitFactory *self,
+ ModestPairList *pairs, GEqualFunc id_equal_func);
+
/* globals */
static GObjectClass *parent_class = NULL;
klass->create_secureauth_selector = modest_toolkit_factory_create_secureauth_selector_default;
klass->create_security_options_view = modest_toolkit_factory_create_security_options_view_default;
klass->create_text_view = modest_toolkit_factory_create_text_view_default;
+ klass->create_selector = modest_toolkit_factory_create_selector_default;
}
static void
#endif
}
+GtkWidget *
+modest_toolkit_factory_create_selector (ModestToolkitFactory *self,
+ ModestPairList *pairs, GEqualFunc id_equal_func)
+{
+ return MODEST_TOOLKIT_FACTORY_GET_CLASS (self)->create_selector (self, pairs, id_equal_func);
+}
+
+static GtkWidget *
+modest_toolkit_factory_create_selector_default (ModestToolkitFactory *self,
+ ModestPairList *pairs, GEqualFunc id_equal_func)
+{
+#ifdef USE_SELECTOR_COMBOBOX
+ return modest_combo_box_new (pairs, id_equal_func);
+#else
+ return modest_selector_picker_new (MODEST_EDITABLE_SIZE,
+ HILDON_BUTTON_ARRANGEMENT_HORIZONTAL,
+ pairs, id_equal_func);
+#endif
+}
+
+void
+modest_selector_set_pair_list (GtkWidget *widget,
+ ModestPairList *pairs)
+{
+#ifdef USE_SELECTOR_COMBOBOX
+ modest_combo_box_set_pair_list (MODEST_COMBO_BOX (widget),
+ pairs);
+#else
+ modest_selector_picker_set_pair_list (MODEST_SELECTOR_PICKER (widget),
+ pairs);
+#endif
+}
+
+gpointer
+modest_selector_get_active_id (GtkWidget *self)
+{
+#ifdef USE_SELECTOR_COMBOBOX
+ return modest_combo_box_get_active_id (MODEST_COMBO_BOX (self));
+#else
+ return modest_selector_picker_get_active_id (MODEST_SELECTOR_PICKER (self));
+#endif
+}
+
+void
+modest_selector_set_active_id (GtkWidget *self, gpointer id)
+{
+#ifdef USE_SELECTOR_COMBOBOX
+ modest_combo_box_set_active_id (MODEST_COMBO_BOX (self), id);
+#else
+ modest_selector_picker_set_active_id (MODEST_SELECTOR_PICKER (self), id);
+#endif
+}
+
+const gchar*
+modest_selector_get_active_display_name (GtkWidget *self)
+{
+#ifdef USE_SELECTOR_COMBOBOX
+ return modest_combo_box_get_active_display_name (MODEST_COMBO_BOX (self));
+#else
+ return modest_selector_picker_get_active_display_name (MODEST_SELECTOR_PICKER (self));
+#endif
+}
+
+void
+modest_selector_set_value_max_chars (GtkWidget *self, gint value_max_width_chars)
+{
+#ifndef USE_SELECTOR_COMBOBOX
+ modest_selector_picker_set_value_max_chars (MODEST_SELECTOR_PICKER (self), value_max_width_chars);
+#endif
+}
+
+gint
+modest_selector_get_value_max_chars (GtkWidget *self)
+{
+#ifdef USE_SELECTOR_COMBOBOX
+ return G_MAXINT;
+#else
+ return modest_selector_picker_get_value_max_chars (MODEST_SELECTOR_PICKER (self));
+#endif
+}
#include <gtk/gtk.h>
#include <modest-presets.h>
#include <widgets/modest-security-options-view.h>
+#include <modest-pair.h>
G_BEGIN_DECLS
GtkWidget * (*create_security_options_view) (ModestToolkitFactory *self, ModestSecurityOptionsType type,
gboolean full, GtkSizeGroup *title_size_group, GtkSizeGroup *value_size_group);
GtkWidget * (*create_text_view) (ModestToolkitFactory *self);
+ GtkWidget * (*create_selector) (ModestToolkitFactory *self,
+ ModestPairList *pairs, GEqualFunc id_equal_func);
};
struct _ModestToolkitFactory
GtkWidget *
modest_toolkit_factory_create_text_view (ModestToolkitFactory *self);
+GtkWidget *
+modest_toolkit_factory_create_selector (ModestToolkitFactory *self,
+ ModestPairList *pairs, GEqualFunc id_equal_func);
+
gboolean
modest_togglable_get_active (GtkWidget *widget);
gboolean
modest_is_text_view (GtkWidget *widget);
+void modest_selector_set_pair_list (GtkWidget *widget,
+ ModestPairList *pairs);
+gpointer modest_selector_get_active_id (GtkWidget *self);
+void modest_selector_set_active_id (GtkWidget *self, gpointer id);
+const gchar* modest_selector_get_active_display_name (GtkWidget *self);
+void modest_selector_set_value_max_chars (GtkWidget *self, gint value_max_width_chars);
+gint modest_selector_get_value_max_chars (GtkWidget *self);
#ifndef MODEST_TOOLKIT_HILDON2