r469 - trunk/src/target/OM-2007/applications/openmoko-dialer/src

tony_guan at gta01.hmw-consulting.de tony_guan at gta01.hmw-consulting.de
Tue Dec 26 08:40:07 CET 2006


Author: tony_guan
Date: 2006-12-26 08:39:36 +0100 (Tue, 26 Dec 2006)
New Revision: 469

Added:
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.c
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.h
Modified:
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/Makefile.am
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/moko-dialer-status.c
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-main.c
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-main.h
   trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-dialer.c
Log:
Outgoing window finished,talking window started.


Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/Makefile.am
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/Makefile.am	2006-12-26 03:05:49 UTC (rev 468)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/Makefile.am	2006-12-26 07:39:36 UTC (rev 469)
@@ -12,6 +12,7 @@
 common.c\
 openmoko-dialer-window-dialer.c\
 openmoko-dialer-window-outgoing.c\
+openmoko-dialer-window-talking.c\
 moko-dialer-status.c
 
 openmoko_dialer_LDADD = @OPENMOKO_LIBS@

Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/moko-dialer-status.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/moko-dialer-status.c	2006-12-26 03:05:49 UTC (rev 468)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/moko-dialer-status.c	2006-12-26 07:39:36 UTC (rev 469)
@@ -126,7 +126,7 @@
 void moko_dialer_status_set_status_label(MokoDialerStatus *moko_dialer_status,const gchar* text)
 {
 
-DBG_MESSAGE("moko_dialer_status_set_status_label:moko_dialer_status=0X%x",moko_dialer_status);
+//DBG_MESSAGE("moko_dialer_status_set_status_label:moko_dialer_status=0X%x",moko_dialer_status);
 gtk_label_set_text(GTK_LABEL(moko_dialer_status->labelStatus),text);
 }
 
@@ -191,6 +191,7 @@
 {
 if(moko_dialer_status->iconError)
 	gtk_image_set_from_pixbuf(moko_dialer_status->icon, moko_dialer_status->iconError);
+moko_dialer_status_set_status_label(moko_dialer_status,"");
 }
 
 void moko_dialer_status_set_success(MokoDialerStatus *moko_dialer_status)

Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-main.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-main.c	2006-12-26 03:05:49 UTC (rev 468)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-main.c	2006-12-26 07:39:36 UTC (rev 469)
@@ -51,6 +51,8 @@
 //init the dialer window
 
    window_outgoing_init(p_dialer_data);
+
+
    window_dialer_init(p_dialer_data); 
 
     gtk_main();

Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-main.h
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-main.h	2006-12-26 03:05:49 UTC (rev 468)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-main.h	2006-12-26 07:39:36 UTC (rev 469)
@@ -47,14 +47,18 @@
 
 GLOBAL_STATE g_state; ///< the global states holder. we count on it a lot.
 
-gint g_ptimeout; ///< the timer hanle
+//gint g_ptimeout; ///< the timer hanle
 
 TIMER_DATA g_timer_data;///< the data used by the timers
 
 MokoDialerStatus * status_outgoing;
-GtkWidget * window_dialer;
 GtkWidget* window_outgoing;
 
+MokoDialerStatus * status_talking;
+GtkWidget* window_talking;
+
+GtkWidget * window_dialer;
+
 //buttons
 GtkWidget* buttonSpeaker;
 GtkWidget* buttonCancel;

Modified: trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-dialer.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-dialer.c	2006-12-26 03:05:49 UTC (rev 468)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-dialer.c	2006-12-26 07:39:36 UTC (rev 469)
@@ -71,9 +71,8 @@
     g_debug( "history button clicked" );
 }
 
-void cb_dialer_button_clicked( GtkButton* button, MOKO_DIALER_APP_DATA * appdata)
+void window_dialer_dial_out(MOKO_DIALER_APP_DATA * appdata)
 {
- g_debug( "dialer button clicked" );
 gchar codesinput[MOKO_DIALER_MAX_NUMBER_LEN];
  //get the input digits
  moko_dialer_textview_get_input(appdata->moko_dialer_text_view, codesinput, 0);
@@ -82,6 +81,10 @@
 //empty the textview
 moko_dialer_textview_empty(appdata->moko_dialer_text_view);
 
+//and we set the selected autolist to be No
+moko_dialer_autolist_set_select(appdata->moko_dialer_autolist,-1);
+
+
 //got the number;
 strcpy(appdata->g_peer_info.number,codesinput);
 
@@ -97,10 +100,16 @@
 
 //start dialling.
 gtk_widget_show(appdata->window_outgoing);
+
 }
 
+void cb_dialer_button_clicked( GtkButton* button, MOKO_DIALER_APP_DATA * appdata)
+{
+window_dialer_dial_out(appdata);
+}
 
 
+
 void
 on_dialer_autolist_user_selected(GtkWidget * widget,gpointer para_pointer,
                                         gpointer         user_data)
@@ -135,9 +144,9 @@
 DBG_MESSAGE("GOT THE MESSAGE OF confirmed:%s",ready_contact->p_entry->content);
 moko_dialer_textview_confirm_it(moko_dialer_text_view,ready_contact->p_entry->content);
 DBG_MESSAGE("And here we are supposed to call out directly");
+window_dialer_dial_out(appdata);
 
 
-
 }
 void
 on_dialer_autolist_nomatch(GtkWidget * widget,gpointer         user_data)
@@ -322,7 +331,28 @@
 
     p_dialer_data-> window_dialer=window;
 
-    gtk_widget_show_all( GTK_WIDGET(window) );
+
+//now the wheel and tool box
+
+  MokoFingerToolBox* tools = NULL;
+  tools = moko_finger_window_get_toolbox(window);
+        for ( int i = 0; i < 4; ++i )
+        {
+            GtkButton* newbutton = moko_finger_tool_box_add_button( tools );
+//            g_signal_connect( G_OBJECT(newbutton), "clicked", G_CALLBACK(cb_tool_button_clicked), window );
+        }
+  //     gtk_widget_show( GTK_WIDGET(tools));
+    gtk_widget_show(moko_finger_window_get_toolbox(window));
+
+// MokoFingerWheel* wheel = NULL;
+ gtk_widget_show( GTK_WIDGET(moko_finger_window_get_wheel(window)) );
+
+
+ gtk_widget_show_all( GTK_WIDGET(window) );
+
+
+
+
     
 
     return 1;

Added: trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.c	2006-12-26 03:05:49 UTC (rev 468)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.c	2006-12-26 07:39:36 UTC (rev 469)
@@ -0,0 +1,260 @@
+/*   openmoko-dialer-window-talking.c
+ *
+ *  Authored by Tony Guan<tonyguan at fic-sh.com.cn>
+ *
+ *  Copyright (C) 2006 FIC Shanghai Lab
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU Public License as published by
+ *  the Free Software Foundation; version 2.1 of the license.
+ *
+ *  This program 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 Public License for more details.
+ *
+ *  Current Version: $Rev$ ($Date) [$Author: Tony Guan $]
+ */
+
+#include <libmokoui/moko-finger-tool-box.h>
+#include <libmokoui/moko-finger-window.h>
+#include <libmokoui/moko-finger-wheel.h>
+#include <libmokoui/moko-pixmap-button.h>
+
+#include <gtk/gtkalignment.h>
+#include <gtk/gtkbutton.h>
+#include <gtk/gtkhbox.h>
+#include <gtk/gtklabel.h>
+#include <gtk/gtkmain.h>
+#include <gtk/gtkmenu.h>
+#include <gtk/gtkmenuitem.h>
+#include <gtk/gtkvbox.h>
+#include "contacts.h"
+#include "openmoko-dialer-main.h"
+#include "moko-dialer-status.h"
+#include "openmoko-dialer-window-talking.h"
+
+/*
+void cb_speaker_button_clicked( GtkButton* button, MOKO_DIALER_APP_DATA * appdata)
+{
+DBG_ENTER();
+moko_dialer_status_update_icon(appdata->status_talking);
+
+DBG_LEAVE();
+}
+
+void cb_redial_button_clicked( GtkButton* button, MOKO_DIALER_APP_DATA * appdata)
+{
+DBG_ENTER();
+
+DBG_LEAVE();
+}
+
+void cb_cancel_button_clicked( GtkButton* button, MOKO_DIALER_APP_DATA * appdata)
+{
+DBG_ENTER();
+gtk_widget_hide(appdata->window_talking);
+DBG_LEAVE();
+}
+
+*/
+void window_talking_prepare(MOKO_DIALER_APP_DATA * appdata)
+{
+DBG_ENTER();
+   moko_dialer_status_set_person_number(appdata->status_talking, appdata->g_peer_info.number);
+if(appdata->g_peer_info.hasname)
+{
+   moko_dialer_status_set_person_image(appdata->status_talking, appdata->g_peer_info.picpath);  
+   moko_dialer_status_set_person_name(appdata->status_talking, appdata->g_peer_info.name);
+}
+else
+{
+   moko_dialer_status_set_person_image(appdata->status_talking, "");  
+   moko_dialer_status_set_person_name(appdata->status_talking, "");
+
+}
+
+DBG_LEAVE();
+
+}
+
+gint timer_talking_time_out(MOKO_DIALER_APP_DATA * appdata)
+{
+DBG_ENTER();
+TIMER_DATA* timer_data=&(appdata->g_timer_data);
+
+DBG_MESSAGE("timer :p_dialer_data->status_talking=0X%x",appdata->status_talking);
+
+//gtk_label_set_text(appdata->status_talking->labelStatus,"laskdfas");
+
+
+//first of all, reset the timer to be called after 1 minute.
+	
+timer_data->ticks++;
+timer_data->hour=timer_data->ticks/3600;
+timer_data->min=(timer_data->ticks-timer_data->hour*3600)/60;
+timer_data->sec=timer_data->ticks%60;
+
+
+sprintf(timer_data->timestring,"Talking (%02d:%02d:%02d)",timer_data->hour,timer_data->min,timer_data->sec);
+
+//ok,we update the label now.
+
+
+moko_dialer_status_set_status_label(appdata->status_talking,timer_data->timestring);
+moko_dialer_status_update_icon(appdata->status_talking);
+
+if(timer_data->stopsec!=0&&timer_data->ticks>=timer_data->stopsec)
+{
+
+timer_data->timeout=1;
+gtk_timeout_remove(timer_data->ptimer);
+timer_data->ptimer=0;
+return 0;//0 stops the timer.
+}
+else
+return 1;
+}
+
+void
+on_window_talking_hide                 (GtkWidget       *widget,
+                                        MOKO_DIALER_APP_DATA * appdata)
+{
+if(appdata->g_timer_data.ptimer!=0)
+{
+gtk_timeout_remove(appdata->g_timer_data.ptimer);
+appdata->g_timer_data.ptimer=0;
+}
+
+
+}
+
+void
+on_window_talking_show                  (GtkWidget       *widget,
+                                        MOKO_DIALER_APP_DATA * appdata)
+{
+DBG_ENTER();
+
+time_t timep;
+struct tm *p;
+time(&timep);
+p=localtime(&timep);
+
+sprintf(appdata->g_state.starttime,"%02d:%02d:%02d",p->tm_hour,p->tm_min,p->tm_sec);
+sprintf(appdata->g_state.startdate,"%04d/%02d/%02d",p->tm_year,p->tm_mon,p->tm_mday);
+
+memset(&(appdata->g_timer_data),0,sizeof(appdata->g_timer_data));
+
+appdata->g_timer_data.stopsec=0;
+
+appdata->g_timer_data.ptimer=gtk_timeout_add(1000,timer_talking_time_out,appdata);
+
+DBG_MESSAGE("on_window_talking_show status_talking=0X%x",appdata->status_talking);
+   
+DBG_LEAVE();
+}
+
+
+gint window_talking_init( MOKO_DIALER_APP_DATA* p_dialer_data)
+{
+
+DBG_ENTER();
+MokoFingerWindow* window;
+GtkWidget* vbox;
+MokoDialerStatus * status;
+
+if(p_dialer_data->window_talking==0)
+{
+
+  vbox = gtk_vbox_new( FALSE, 0 );
+   status=moko_dialer_status_new();
+   moko_dialer_status_add_status_icon(status,"status0.png");
+   moko_dialer_status_add_status_icon(status,"status1.png");
+   moko_dialer_status_add_status_icon(status,"status2.png");
+   moko_dialer_status_set_icon_by_index(status,0);
+   
+   gtk_box_pack_start( GTK_BOX(vbox),status, FALSE, FALSE, 0 );
+
+/*
+ 	
+    GtkHBox *  hbox2 = gtk_hbox_new( FALSE, 0 );
+    GtkButton* button = gtk_button_new_with_label("Speaker");
+    g_signal_connect( G_OBJECT(button), "clicked", G_CALLBACK(cb_speaker_button_clicked), p_dialer_data );
+p_dialer_data->buttonSpeaker=button;
+//gtk_widget_set_size_request(button,100,32);
+    gtk_box_pack_start( GTK_BOX(hbox2), GTK_WIDGET(button),TRUE, TRUE, 10 );
+
+button = gtk_button_new_with_label("Cancel");
+  p_dialer_data->buttonCancel=button;
+ g_signal_connect( G_OBJECT(button), "clicked", G_CALLBACK(cb_cancel_button_clicked), p_dialer_data );
+//gtk_widget_set_size_request(button,100,32);
+ gtk_box_pack_start( GTK_BOX(hbox2), GTK_WIDGET(button),TRUE, TRUE, 10 );
+
+
+  button = gtk_button_new_with_label("Redial");
+    p_dialer_data->buttonRedial=button;
+  g_signal_connect( G_OBJECT(button), "clicked", G_CALLBACK(cb_redial_button_clicked), p_dialer_data );
+//gtk_widget_set_size_request(button,100,32);
+  gtk_box_pack_start( GTK_BOX(hbox2), GTK_WIDGET(button), TRUE, TRUE, 20 );
+//gtk_widget_set_size_request(button,60,24);
+
+
+   gtk_box_pack_start( GTK_BOX(vbox),hbox2, FALSE, FALSE, 50 );
+*/
+
+//currently     MokoDialogWindow is not finished, wating...
+//   MokoDialogWindow* window = (MokoDialogWindow *)(moko_dialog_window_new());
+//  moko_dialog_window_set_contents( window, GTK_WIDGET(vbox) );
+
+    window = MOKO_FINGER_WINDOW(moko_finger_window_new());
+    moko_finger_window_set_contents(window, GTK_WIDGET(vbox) );
+
+
+     gtk_widget_show_all( GTK_WIDGET(window) );
+
+     gtk_widget_hide( p_dialer_data->buttonRedial);
+
+
+     gtk_widget_hide( GTK_WIDGET(window) );   
+
+
+   moko_dialer_status_set_title_label(status, "In Call");
+   moko_dialer_status_set_status_label(status, "Talking ...(00:00:00)");
+
+   p_dialer_data->window_talking=window;
+   p_dialer_data->status_talking=status;
+   
+//   DBG_MESSAGE("p_dialer_data->status_talking=0X%x",p_dialer_data->status_talking);
+
+
+  g_signal_connect ((gpointer) window, "show",
+                    G_CALLBACK (on_window_talking_show),
+                    p_dialer_data);
+  g_signal_connect ((gpointer) window, "hide",
+                    G_CALLBACK (on_window_talking_hide),
+                    p_dialer_data);
+
+ //now the wheel and tool box
+
+  MokoFingerToolBox* tools = NULL;
+  tools = moko_finger_window_get_toolbox(window);
+        for ( int i = 0; i < 4; ++i )
+        {
+            GtkButton* newbutton = moko_finger_tool_box_add_button( tools );
+//            g_signal_connect( G_OBJECT(newbutton), "clicked", G_CALLBACK(cb_tool_button_clicked), window );
+        }
+ //     gtk_widget_show( GTK_WIDGET(tools));
+    gtk_widget_show(moko_finger_window_get_toolbox(window));
+
+// MokoFingerWheel* wheel = NULL;
+ gtk_widget_show( GTK_WIDGET(moko_finger_window_get_wheel(window)) );
+
+
+// gtk_widget_show(p_dialer_data->window_talking);
+
+DBG_LEAVE();
+    return 1;
+}
+
+}
+


Property changes on: trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.c
___________________________________________________________________
Name: svn:executable
   + *

Added: trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.h
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.h	2006-12-26 03:05:49 UTC (rev 468)
+++ trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.h	2006-12-26 07:39:36 UTC (rev 469)
@@ -0,0 +1,41 @@
+/*  openmoko-dialer-window-outgoing.h
+ *
+ *  Authored By Tony Guan<tonyguan at fic-sh.com.cn>
+ *
+ *  Copyright (C) 2006 FIC Shanghai Lab
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU Public License as published by
+ *  the Free Software Foundation; version 2.1 of the license.
+ *
+ *  This program 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 Public License for more details.
+ *
+ *  Current Version: $Rev$ ($Date) [$Author: Tony Guan $]
+ */
+ #include "moko-dialer-includes.h"
+
+ #ifndef _OPENMOKO_DIALER_WINDOW_TALKING_H
+#define _OPENMOKO_DIALER_WINDOW_TALKING_H
+
+#ifdef __cplusplus
+
+
+
+extern "C"
+
+{
+#endif
+
+
+ 
+gint window_talking_init( MOKO_DIALER_APP_DATA* p_dialer_data);
+
+void window_talking_prepare(MOKO_DIALER_APP_DATA * appdata);
+#ifdef __cplusplus
+}
+#endif
+
+#endif 


Property changes on: trunk/src/target/OM-2007/applications/openmoko-dialer/src/openmoko-dialer-window-talking.h
___________________________________________________________________
Name: svn:executable
   + *





More information about the commitlog mailing list