5 A Linux/Unix GUI for Nokia mobile phones.
6 Copyright (C) 1999 Pavel Janík ml., Hugh Blemings
7 & Ján Derfiòák <ja@mail.upjs.sk>.
9 Released under the terms of the GNU GPL, see file COPYING for more details.
11 Last modification: Tues 13 June 2000
12 Modified by Chris Kemp
19 #include "xgnokii_common.h"
21 #include "xgnokii_lowlevel.h"
22 #include "xgnokii_data.h"
23 #include "data/virtmodem.h"
25 static GtkWidget *GUI_DataWindow;
26 bool TerminateThread = false;
28 static GtkWidget *label = NULL;
30 static inline void Help1 (GtkWidget *w, gpointer data)
32 gchar *indx = g_strdup_printf ("/help/%s/windows/data/index.html", xgnokiiConfig.locale);
37 static void UpdateStatus (void)
42 buf = g_strdup_printf (_("Data calls are currently\nDisabled\n "));
44 buf = g_strdup_printf (_("Data calls are currently\nEnabled\n "));
47 gtk_label_set_text (GTK_LABEL (label), buf);
53 inline void GUI_ShowData (void)
55 if (!phoneMonitor.supported & PM_DATA)
62 TerminateThread = false;
66 gtk_widget_show (GUI_DataWindow);
70 inline void GUI_HideData(void)
72 gtk_widget_hide (GUI_DataWindow);
75 static inline void DisableData (GtkWidget *widget,
84 static inline void EnableData (GtkWidget *widget,
88 TerminateThread = false;
89 VM_Initialise (xgnokiiConfig.model, xgnokiiConfig.port,
90 0, 0, xgnokiiConfig.bindir, false, false);
96 void GUI_CreateDataWindow (void)
98 GtkWidget *button, *hbox, *vbox;
100 GUI_DataWindow = gtk_window_new (GTK_WINDOW_TOPLEVEL);
101 gtk_window_set_wmclass (GTK_WINDOW (GUI_DataWindow), "DataWindow", "Xgnokii");
102 gtk_window_set_title (GTK_WINDOW (GUI_DataWindow), _("Virtual Modem"));
103 gtk_container_set_border_width (GTK_CONTAINER (GUI_DataWindow), 10);
104 gtk_signal_connect (GTK_OBJECT (GUI_DataWindow), "delete_event",
105 GTK_SIGNAL_FUNC (DeleteEvent), NULL);
107 vbox = gtk_vbox_new (FALSE, 1);
108 gtk_container_border_width (GTK_CONTAINER (vbox), 1);
109 gtk_container_add (GTK_CONTAINER (GUI_DataWindow), vbox);
110 gtk_widget_show (vbox);
112 label = gtk_label_new ("");
113 gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
114 gtk_widget_show (label);
116 hbox = gtk_hbox_new (FALSE, 0);
117 gtk_container_add (GTK_CONTAINER (vbox), hbox);
118 gtk_widget_show (hbox);
120 button = gtk_button_new_with_label (_("Enable"));
121 gtk_box_pack_start (GTK_BOX (hbox),
122 button, TRUE, FALSE, 5);
123 gtk_signal_connect (GTK_OBJECT (button), "clicked",
124 GTK_SIGNAL_FUNC (EnableData), NULL);
125 gtk_widget_show (button);
126 button = gtk_button_new_with_label (_("Disable"));
127 gtk_box_pack_start (GTK_BOX (hbox),
128 button, TRUE, FALSE, 5);
129 gtk_signal_connect (GTK_OBJECT (button), "clicked",
130 GTK_SIGNAL_FUNC (DisableData), NULL);
131 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
132 gtk_widget_grab_default (button);
133 gtk_widget_show (button);