[maemo-commits] [maemo-commits] r15891 - projects/haf/branches/hildon-fm/fremantle/hildon-fm
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Tue Aug 26 14:49:13 EEST 2008
- Previous message: [maemo-commits] r15890 - projects/haf/branches/hildon-fm/fremantle/hildon-fm
- Next message: [maemo-commits] r15892 - projects/haf/branches/hildon-fm/fremantle/hildon-fm
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: rabinovich
Date: 2008-08-26 14:49:12 +0300 (Tue, 26 Aug 2008)
New Revision: 15891
Modified:
projects/haf/branches/hildon-fm/fremantle/hildon-fm/hildon-file-chooser-dialog.c
Log:
ported "select file type" dialog to fremantle UI
Modified: projects/haf/branches/hildon-fm/fremantle/hildon-fm/hildon-file-chooser-dialog.c
===================================================================
--- projects/haf/branches/hildon-fm/fremantle/hildon-fm/hildon-file-chooser-dialog.c 2008-08-26 11:47:23 UTC (rev 15890)
+++ projects/haf/branches/hildon-fm/fremantle/hildon-fm/hildon-file-chooser-dialog.c 2008-08-26 11:49:12 UTC (rev 15891)
@@ -2513,17 +2513,18 @@
GtkTreeModel *model;
GtkTreeIter iter;
gboolean valid;
- int i;
+ HildonTouchSelector *selector;
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (priv->extensions_combo));
+ selector = hildon_picker_button_get_selector(HILDON_PICKER_BUTTON(priv->extensions_combo));
+ model = hildon_touch_selector_get_model(selector, 0);
/* if there is a valid extension selected, just leave it */
- if (gtk_combo_box_get_active_iter (GTK_COMBO_BOX (priv->extensions_combo), &iter))
+ if (hildon_touch_selector_get_active_iter (selector, 0, &iter))
{
gboolean matches;
gchar *ext;
- gtk_tree_model_get (model, &iter, 1, &ext, -1);
+ gtk_tree_model_get (model, &iter, 0, &ext, -1);
matches = (strcmp (ext, priv->ext_name + 1) == 0);
g_free (ext);
@@ -2531,22 +2532,21 @@
return;
}
- i = 0;
valid = gtk_tree_model_get_iter_first (model, &iter);
while (valid)
{
gchar *ext;
- gtk_tree_model_get (model, &iter, 1, &ext, -1);
+ gtk_tree_model_get (model, &iter, 0, &ext, -1);
if (strcmp (ext, priv->ext_name + 1) == 0)
{
- gtk_combo_box_set_active (GTK_COMBO_BOX (priv->extensions_combo),
- i);
+ hildon_touch_selector_set_active_iter (selector, 0, &iter, TRUE);
+ hildon_button_set_value(HILDON_BUTTON(priv->extensions_combo), ext);
+
g_free (ext);
break;
}
g_free (ext);
- i++;
valid = gtk_tree_model_iter_next (model, &iter);
}
}
@@ -2555,22 +2555,12 @@
static void
extension_changed (GtkComboBox *widget, gpointer data)
{
- gchar *ext;
- GtkTreeModel *model;
- GtkTreeIter iter;
-
HildonFileChooserDialogPrivate *priv =
HILDON_FILE_CHOOSER_DIALOG (data)->priv;
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
- gtk_tree_model_get (model, &iter, 1, &ext, -1);
-
g_free (priv->ext_name);
- priv->ext_name = g_strconcat (".", ext, NULL);
+ priv->ext_name = g_strconcat (".", hildon_button_get_value (HILDON_BUTTON (widget)), NULL);
hildon_file_chooser_dialog_do_autonaming (priv);
-
- g_free (ext);
}
/**
@@ -2597,54 +2587,42 @@
char **extensions,
char **ext_names)
{
- GtkTreeIter iter;
- GtkListStore *model;
- GtkCellRenderer *renderer;
+ GtkWidget *button;
+ GtkWidget *selector;
GtkWidget *caption;
- GtkWidget *combo;
gint i = 0;
g_return_val_if_fail (self->priv->extensions_combo == NULL, NULL);
- model = GTK_LIST_STORE (gtk_list_store_new (2,
- G_TYPE_STRING,
- G_TYPE_STRING));
- combo = gtk_combo_box_new_with_model (GTK_TREE_MODEL (model));
- self->priv->extensions_combo = combo;
+ button = hildon_picker_button_new(HILDON_SIZE_AUTO, HILDON_BUTTON_ARRANGEMENT_HORIZONTAL);
+ selector = hildon_touch_selector_new_text();
+ self->priv->extensions_combo = button;
+
for (i = 0; extensions[i]; i++)
{
- gtk_list_store_append (model, &iter);
- gtk_list_store_set (model, &iter,
- 0, ext_names? ext_names[i] : extensions[i],
- 1, extensions[i],
- -1);
+ hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), extensions[i]);
}
- renderer = gtk_cell_renderer_text_new ();
- gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo),
- renderer, TRUE);
- gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combo),
- renderer, "text", 0, NULL);
+ hildon_picker_button_set_selector (HILDON_PICKER_BUTTON (button), HILDON_TOUCH_SELECTOR (selector));
+ gtk_button_set_alignment(GTK_BUTTON(button), 0, 0.5);
+ hildon_button_set_title(HILDON_BUTTON(button), _("sfil_fi_save_object_dialog_type"));
+ hildon_button_set_title(HILDON_BUTTON(button), NULL);
- g_object_unref(model);
-
- g_signal_connect (G_OBJECT (combo), "changed",
+ g_signal_connect (G_OBJECT (button), "value-changed",
G_CALLBACK (extension_changed), self);
- caption = hildon_caption_new (NULL,
- _("sfil_fi_save_object_dialog_type"),
- combo, NULL,
- HILDON_CAPTION_OPTIONAL);
+ caption = hildon_caption_new (NULL, _("sfil_fi_save_object_dialog_type"), button, NULL, HILDON_CAPTION_OPTIONAL);
+ hildon_caption_set_separator(HILDON_CAPTION(caption), "");
hildon_file_chooser_dialog_add_extra (self, caption);
- gtk_widget_show (combo);
+ gtk_widget_show (button);
gtk_widget_show (caption);
sync_extensions_combo (self->priv);
- return combo;
+ return button;
}
/**
- Previous message: [maemo-commits] r15890 - projects/haf/branches/hildon-fm/fremantle/hildon-fm
- Next message: [maemo-commits] r15892 - projects/haf/branches/hildon-fm/fremantle/hildon-fm
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
