r3826 - in trunk/src/target/OM-2007.2/applications/openmoko-messages2: . src
chris at sita.openmoko.org
chris at sita.openmoko.org
Mon Jan 14 15:08:56 CET 2008
Author: chris
Date: 2008-01-14 15:08:55 +0100 (Mon, 14 Jan 2008)
New Revision: 3826
Modified:
trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog
trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-main.c
trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-notes.c
trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms.h
Log:
* src/sms-main.c: (new_clicked_cb), (main):
Add a forward button, clear the text view when composing a new
message
* src/sms-notes.c: (page_shown), (page_hidden),
(forward_clicked_cb), (selection_changed_cb), (sms_notes_page_new):
Add basic forward message functionality (bug #1171)
* src/sms.h:
Add forward buttoN
Modified: trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog 2008-01-14 13:02:21 UTC (rev 3825)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/ChangeLog 2008-01-14 14:08:55 UTC (rev 3826)
@@ -1,3 +1,16 @@
+2008-01-14 Chris Lord <chris at openedhand.com>
+
+ * src/sms-main.c: (new_clicked_cb), (main):
+ Add a forward button, clear the text view when composing a new
+ message
+
+ * src/sms-notes.c: (page_shown), (page_hidden),
+ (forward_clicked_cb), (selection_changed_cb), (sms_notes_page_new):
+ Add basic forward message functionality (bug #1171)
+
+ * src/sms.h:
+ Add forward button
+
2008-01-09 Chris Lord <chris at openedhand.com>
* data/org.openmoko.OpenmokoMessages2.service.in:
Modified: trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-main.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-main.c 2008-01-14 13:02:21 UTC (rev 3825)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-main.c 2008-01-14 14:08:55 UTC (rev 3826)
@@ -49,6 +49,9 @@
static void
new_clicked_cb (GtkToolButton *button, SmsData *data)
{
+ gtk_text_buffer_set_text (gtk_text_view_get_buffer (
+ GTK_TEXT_VIEW (data->sms_textview)), "", -1);
+
gtk_notebook_set_current_page (
GTK_NOTEBOOK (data->notebook), SMS_PAGE_COMPOSE);
}
@@ -105,25 +108,27 @@
data.new_button = gtk_tool_button_new_from_stock (MOKO_STOCK_SMS_NEW);
gtk_tool_item_set_expand (data.new_button, TRUE);
gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data.new_button, 0);
- /*gtk_toolbar_insert (GTK_TOOLBAR (toolbar),
- gtk_separator_tool_item_new (), 1);*/
g_signal_connect (data.new_button, "clicked",
G_CALLBACK (new_clicked_cb), &data);
+ /* Forward button */
+ data.forward_button = gtk_tool_button_new_from_stock (
+ MOKO_STOCK_MAIL_FORWARD);
+ gtk_tool_item_set_expand (data.forward_button, TRUE);
+ gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data.forward_button, 1);
+
/* Delete all button */
data.delete_all_button = gtk_tool_button_new_from_stock (
MOKO_STOCK_FOLDER_DELETE);
gtk_tool_item_set_expand (data.delete_all_button, TRUE);
- gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data.delete_all_button, 1);
- /*gtk_toolbar_insert (GTK_TOOLBAR (toolbar),
- gtk_separator_tool_item_new (), 3);*/
+ gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data.delete_all_button, 2);
gtk_widget_set_sensitive (GTK_WIDGET (data.delete_all_button), FALSE);
/* Delete button */
data.delete_button = gtk_tool_button_new_from_stock (
GTK_STOCK_DELETE);
gtk_tool_item_set_expand (data.delete_button, TRUE);
- gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data.delete_button, 2);
+ gtk_toolbar_insert (GTK_TOOLBAR (toolbar), data.delete_button, 3);
gtk_widget_set_sensitive (GTK_WIDGET (data.delete_button), FALSE);
/* Create notebook */
@@ -160,6 +165,7 @@
gtk_window_set_default_size (GTK_WINDOW (data.window), 480, 600);
gtk_widget_show_all (data.window);
+ gtk_widget_hide (GTK_WIDGET (data.forward_button));
gtk_main ();
Modified: trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-notes.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-notes.c 2008-01-14 13:02:21 UTC (rev 3825)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms-notes.c 2008-01-14 14:08:55 UTC (rev 3826)
@@ -179,7 +179,11 @@
gboolean found_match = FALSE;
EContact *contact = NULL;
+ /* Show forward button */
+ gtk_widget_show (GTK_WIDGET (data->forward_button));
+
gtk_widget_set_sensitive (GTK_WIDGET (data->delete_button), FALSE);
+ gtk_widget_set_sensitive (GTK_WIDGET (data->forward_button), FALSE);
if (!open) return;
@@ -275,6 +279,9 @@
{
GtkAdjustment *hadjust, *vadjust;
+ /* Hide forward button */
+ gtk_widget_hide (GTK_WIDGET (data->forward_button));
+
if (data->notes_scroll_idle) g_source_remove (data->notes_scroll_idle);
g_object_get (G_OBJECT (data->notes_treeview),
"hadjustment", &hadjust, "vadjustment", &vadjust, NULL);
@@ -601,6 +608,33 @@
}
static void
+forward_clicked_cb (GtkToolButton *button, SmsData *data)
+{
+ gchar *body;
+ GtkTreeIter iter;
+ GtkTreeModel *model;
+ GtkTreeSelection *selection;
+
+ /* Fill in compose box with message text and call new */
+ selection = gtk_tree_view_get_selection (
+ GTK_TREE_VIEW (data->notes_treeview));
+ if ((!selection) ||
+ (!gtk_tree_selection_get_selected (selection, &model, &iter)))
+ return;
+
+ gtk_tree_model_get (model, &iter,
+ JANA_GTK_NOTE_STORE_COL_BODY, &body, -1);
+ gtk_text_buffer_set_text (gtk_text_view_get_buffer (
+ GTK_TEXT_VIEW (data->sms_textview)), body, -1);
+ g_free (body);
+
+ /* TODO: Launch a contact-picker */
+
+ gtk_notebook_set_current_page (
+ GTK_NOTEBOOK (data->notebook), SMS_PAGE_COMPOSE);
+}
+
+static void
delete_clicked_cb (GtkToolButton *button, SmsData *data)
{
gchar *uid;
@@ -752,9 +786,13 @@
if (!gtk_tree_selection_get_selected (selection, &model, &iter)) {
gtk_widget_set_sensitive (GTK_WIDGET (
data->delete_button), FALSE);
+ gtk_widget_set_sensitive (GTK_WIDGET (
+ data->forward_button), FALSE);
} else {
gtk_widget_set_sensitive (GTK_WIDGET (
data->delete_button), TRUE);
+ gtk_widget_set_sensitive (GTK_WIDGET (
+ data->forward_button), TRUE);
}
}
@@ -864,7 +902,9 @@
jana_store_open (data->notes);
- /* Connect to toolbar delete buttons */
+ /* Connect to toolbar button-click signals */
+ g_signal_connect (data->forward_button, "clicked",
+ G_CALLBACK (forward_clicked_cb), data);
g_signal_connect (data->delete_button, "clicked",
G_CALLBACK (delete_clicked_cb), data);
g_signal_connect (data->delete_all_button, "clicked",
Modified: trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms.h
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms.h 2008-01-14 13:02:21 UTC (rev 3825)
+++ trunk/src/target/OM-2007.2/applications/openmoko-messages2/src/sms.h 2008-01-14 14:08:55 UTC (rev 3826)
@@ -57,6 +57,7 @@
GtkWidget *window;
GtkWidget *notebook;
GtkToolItem *new_button;
+ GtkToolItem *forward_button;
GtkToolItem *delete_all_button;
GtkToolItem *delete_button;
More information about the commitlog
mailing list