/[xlog]/xlog/src/remote.c
ViewVC logotype

Diff of /xlog/src/remote.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by pa4tu, Sun Aug 24 09:18:58 2003 UTC revision 1.8 by pa4tu, Tue Aug 26 22:27:48 2003 UTC
# Line 61  Line 61 
61  #include "utils.h"  #include "utils.h"
62  #include "support.h"  #include "support.h"
63    
64    #if WANT_HAMLIB
65    # include "hamlib-utils.h"
66    #endif
67    
68  msgtype msgbuf;  msgtype msgbuf;
69  remotetype remote;  remotetype remote;
70  extern statetype state;  extern statetype state;
# Line 90  getargument (gchar * remotestring) Line 94  getargument (gchar * remotestring)
94  static void  static void
95  addtolog_or_qsoframe (gint type, gchar * entry)  addtolog_or_qsoframe (gint type, gchar * entry)
96  {  {
97    GtkWidget *menu, *bandoptionmenu, *modeoptionmenu, *active_item, *bandentry,    GtkWidget *menu, *bandoptionmenu, *modeoptionmenu, *active_item,
98      *modeentry, *endhbox, *namehbox, *qthhbox, *locatorhbox, *powerhbox,      *bandentry, *modeentry, *endhbox, *namehbox, *qthhbox,
99      *unknown1hbox, *unknown2hbox, *dateentry, *gmtentry, *callentry, *endentry,      *locatorhbox, *powerhbox, *unknown1hbox, *unknown2hbox,
100      *rstentry, *myrstentry, *powerentry, *nameentry, *qthentry, *locatorentry,      *dateentry, *gmtentry, *callentry, *endentry, *rstentry,
101      *unknownentry1, *unknownentry2, *remarksentry, *remarksvbox;      *myrstentry, *powerentry, *nameentry, *qthentry,
102        *locatorentry, *unknownentry1, *unknownentry2, *remarksentry,
103        *remarksvbox;
104    gchar *temp, **remoteinfo, *argument = NULL, *remarks;    gchar *temp, **remoteinfo, *argument = NULL, *remarks;
105    gint i, j = 0, bandindex, modeindex;    gint i, j = 0, bandindex, modeindex, err = 0;
106    logtype *logwindow;    logtype *logwindow;
107    GtkTreeIter iter;    GtkTreeIter iter;
108    GtkTreeModel *model;    GtkTreeModel *model;
109    GtkTreePath *path;    GtkTreePath *path;
110    #if WANT_HAMLIB
111      GString *digits = g_string_new ("");
112      gchar *power;
113    #endif
114    
115    if (type == 88)    if (type == 88)
116      {      {
117        logwindow = g_list_nth_data (logwindowlist,        logwindow = g_list_nth_data (logwindowlist,
118                  gtk_notebook_get_current_page (GTK_NOTEBOOK(mainnotebook)));                                     gtk_notebook_get_current_page (GTK_NOTEBOOK (mainnotebook)));
119        for (i = 0; i < QSO_FIELDS; i++)        for (i = 0; i < QSO_FIELDS; i++)
120                  qso[i] = g_strdup ("");          qso[i] = g_strdup ("");
121        remarks = g_strdup ("");        remarks = g_strdup ("");
122        bandentry = lookup_widget (mainwindow, "bandentry");        bandentry = lookup_widget (mainwindow, "bandentry");
123        bandoptionmenu = lookup_widget (mainwindow, "bandoptionmenu");        bandoptionmenu = lookup_widget (mainwindow, "bandoptionmenu");
# Line 123  addtolog_or_qsoframe (gint type, gchar * Line 133  addtolog_or_qsoframe (gint type, gchar *
133    
134        remoteinfo = g_strsplit (entry, "\1", 0);        remoteinfo = g_strsplit (entry, "\1", 0);
135        for (;;)        for (;;)
136          {        {
137            if (remoteinfo[j] == NULL)          if (remoteinfo[j] == NULL)
138              break;          break;
139            if (g_ascii_strncasecmp (remoteinfo[j], "version:", 8) == 0)          if (g_ascii_strncasecmp (remoteinfo[j], "version:", 8) == 0)
140              {          {
141                if ((argument = getargument (remoteinfo[j])))            if ((argument = getargument (remoteinfo[j])))
142                  remote.version = atoi (argument);            remote.version = atoi (argument);
143              }          }
144            else if (g_ascii_strncasecmp (remoteinfo[j], "program:", 8) == 0)          else if (g_ascii_strncasecmp (remoteinfo[j], "program:", 8) == 0)
145              {          {
146                if ((argument = getargument (remoteinfo[j])))            if ((argument = getargument (remoteinfo[j])))
147                  remote.program = g_strdup (argument);            remote.program = g_strdup (argument);
148              }          }
149            else if (g_ascii_strncasecmp (remoteinfo[j], "date:", 5) == 0)          else if (g_ascii_strncasecmp (remoteinfo[j], "date:", 5) == 0)
150              {          {
151                if ((argument = getargument (remoteinfo[j])))            if ((argument = getargument (remoteinfo[j])))
152                  qso[DATE] = g_strndup (argument, 15);              qso[DATE] = g_strndup (argument, 15);
153                else            else
154                  qso[DATE] = getdate ();              qso[DATE] = getdate ();
155              }          }
156            else if (g_ascii_strncasecmp (remoteinfo[j], "time:", 5) == 0)          else if (g_ascii_strncasecmp (remoteinfo[j], "time:", 5) == 0)
157              {          {
158                if ((argument = getargument (remoteinfo[j])))            if ((argument = getargument (remoteinfo[j])))
159                  qso[GMT] = g_strndup (argument, 8);              qso[GMT] = g_strndup (argument, 8);
160                else            else
161                  qso[GMT] = gettime ();              qso[GMT] = gettime ();
162              }          }
163            else if (g_ascii_strncasecmp (remoteinfo[j], "call:", 5) == 0)          else if (g_ascii_strncasecmp (remoteinfo[j], "call:", 5) == 0)
164              {          {
165                if ((argument = getargument (remoteinfo[j])))            if ((argument = getargument (remoteinfo[j])))
166                  {            {
167                    g_ascii_strup (argument, -1);              g_ascii_strup (argument, -1);
168                    qso[CALL] = g_strndup (argument, 15);              qso[CALL] = g_strndup (argument, 15);
169                  }            }
170              }          }
171            else if (g_ascii_strncasecmp (remoteinfo[j], "mhz:", 4) == 0)          else if (g_ascii_strncasecmp (remoteinfo[j], "mhz:", 4) == 0)
172              {          {
173                if ((argument = getargument (remoteinfo[j])))            if ((argument = getargument (remoteinfo[j])))
174                  qso[BAND] = g_strndup (argument, 15);            {
175              }              if (g_ascii_strcasecmp (argument, "HAMLIB") == 0)
176            else if (g_ascii_strncasecmp (remoteinfo[j], "mode:", 5) == 0)  #if WANT_HAMLIB
177              {              {
178                if ((argument = getargument (remoteinfo[j])))                get_frequency ();
179                  {                digits = convert_frequency ();
180                    g_ascii_strup (argument, -1);                qso[BAND] = g_strdup (digits->str);
181                    qso[MODE] = g_strndup (argument, 8);                g_string_free (digits, TRUE);
182                  }              }
183              }              else
184            else if (g_ascii_strncasecmp (remoteinfo[j], "tx:", 3) == 0)                qso[BAND] = g_strndup (argument, 15);
185              {  #else
186                if ((argument = getargument (remoteinfo[j])))              {
187                  qso[RST] = g_strndup (argument, 15);                err = 1;
188              }                qso[BAND] = g_strdup ("");
189            else if (g_ascii_strncasecmp (remoteinfo[j], "rx:", 3) == 0)              }
190              {              else
191                if ((argument = getargument (remoteinfo[j])))                qso[BAND] = g_strndup (argument, 15);
192                  qso[MYRST] = g_strndup (argument, 15);  #endif
193              }            }
194                  }
195            else if (g_ascii_strncasecmp (remoteinfo[j], "mode:", 5) == 0)
196                  {
197                    if ((argument = getargument (remoteinfo[j])))
198                {
199                if (g_ascii_strcasecmp (argument, "HAMLIB") == 0)
200    #if WANT_HAMLIB
201                {
202                  get_mode ();
203                  qso[MODE] = rigmode (state.rigmode);
204                }
205                else
206                {
207                  g_ascii_strup (argument, -1);
208                  qso[MODE] = g_strndup (argument, 8);
209                }
210    #else
211                {
212                  err = 1;
213                  qso[MODE] = g_strdup ("");
214                }
215                else
216                {
217                  g_ascii_strup (argument, -1);
218                  qso[MODE] = g_strndup (argument, 8);
219                }
220    #endif
221              }
222            }
223            else if (g_ascii_strncasecmp (remoteinfo[j], "tx:", 3) == 0)
224            {
225              if ((argument = getargument (remoteinfo[j])))
226              {
227                if (g_ascii_strcasecmp (argument, "HAMLIB") == 0)
228    #if WANT_HAMLIB
229                {
230                  get_smeter ();
231                  qso[RST] = g_strdup (state.rigrst);
232                }
233                else
234                  qso[RST] = g_strndup (argument, 15);
235    #else
236                {
237                  err = 1;
238                  qso[RST] = g_strdup ("");
239                }
240                else
241                  qso[RST] = g_strndup (argument, 15);
242    #endif
243              }
244            }
245            else if (g_ascii_strncasecmp (remoteinfo[j], "rx:", 3) == 0)
246            {
247              if ((argument = getargument (remoteinfo[j])))
248                qso[MYRST] = g_strndup (argument, 15);
249            }
250    
251            else if (g_ascii_strncasecmp (remoteinfo[j], "endtime:", 8) == 0)          else if (g_ascii_strncasecmp (remoteinfo[j], "endtime:", 8) == 0)
252              {          {
253                if ((argument = getargument (remoteinfo[j])))            if ((argument = getargument (remoteinfo[j])))
254                  {            {
255                    if (GTK_WIDGET_VISIBLE (endhbox))              if (GTK_WIDGET_VISIBLE (endhbox))
256                      qso[GMTEND] = g_strndup (argument, 8);                qso[GMTEND] = g_strndup (argument, 8);
257                    else              else
258                      {            {
259                        if (g_ascii_strcasecmp (remarks, "") == 0)              if (g_ascii_strcasecmp (remarks, "") == 0)
260                          remarks = g_strdup (argument);                  remarks = g_strdup (argument);
261                        else              else
262                          remarks = g_strconcat (remarks, ", ", argument, 0);                remarks = g_strconcat (remarks, ", ", argument, 0);
263                      }            }
264                  }          }
             }  
           else if (g_ascii_strncasecmp (remoteinfo[j], "name:", 5) == 0)  
             {  
               if ((argument = getargument (remoteinfo[j])))  
                 {  
                   if (GTK_WIDGET_VISIBLE (namehbox))  
                     qso[NAME] = g_strndup (argument, 30);  
                   else  
                     {  
                       if (g_ascii_strcasecmp (remarks, "") == 0)  
                         remarks = g_strdup (argument);  
                       else  
                         remarks = g_strconcat (remarks, ", ", argument, 0);  
                     }  
                 }  
             }  
           else if (g_ascii_strncasecmp (remoteinfo[j], "qth:", 4) == 0)  
             {  
               if ((argument = getargument (remoteinfo[j])))  
                 {  
                   if (GTK_WIDGET_VISIBLE (qthhbox))  
                     qso[QTH] = g_strndup (argument, 30);  
                   else  
                     {  
                       if (g_ascii_strcasecmp (remarks, "") == 0)  
                         remarks = g_strdup (argument);  
                       else  
                         remarks = g_strconcat (remarks, ", ", argument, 0);  
                     }  
                 }  
             }  
           else if (g_ascii_strncasecmp (remoteinfo[j], "notes:", 6) == 0)  
             {  
               if ((argument = getargument (remoteinfo[j])))  
                 {  
                   if (g_ascii_strcasecmp (remarks, "") == 0)  
                     remarks = g_strdup (argument);  
                   else  
                     remarks = g_strconcat (remarks, ", ", argument, 0);  
                 }  
             }  
           else if (g_ascii_strncasecmp (remoteinfo[j], "power:", 6) == 0)  
             {  
               if ((argument = getargument (remoteinfo[j])))  
                 {  
                   if (GTK_WIDGET_VISIBLE (powerhbox))  
                     qso[POWER] = g_strndup (argument, 8);  
                   else  
                     {  
                       if (g_ascii_strcasecmp (remarks, "") == 0)  
                         remarks = g_strdup (argument);  
                       else  
                         remarks = g_strconcat (remarks, ", ", argument, 0);  
                     }  
                 }  
             }  
           else if (g_ascii_strncasecmp (remoteinfo[j], "locator:", 8) == 0)  
             {  
               if ((argument = getargument (remoteinfo[j])))  
                 {  
                   if (GTK_WIDGET_VISIBLE (locatorhbox))  
                     qso[LOCATOR] = g_strndup (argument, 30);  
                   else  
                     {  
                       if (g_ascii_strcasecmp (remarks, "") == 0)  
                         remarks = g_strdup (argument);  
                       else  
                         remarks = g_strconcat (remarks, ", ", argument, 0);  
                     }  
                 }  
265              }              }
266            else if (g_ascii_strncasecmp (remoteinfo[j], "free1:", 6) == 0)        else if (g_ascii_strncasecmp (remoteinfo[j], "name:", 5) == 0)
267          {
268            if ((argument = getargument (remoteinfo[j])))
269            {
270              if (GTK_WIDGET_VISIBLE (namehbox))
271                qso[NAME] = g_strndup (argument, 30);
272              else
273              {
274                if (g_ascii_strcasecmp (remarks, "") == 0)
275                  remarks = g_strdup (argument);
276                else
277                  remarks = g_strconcat (remarks, ", ", argument, 0);
278              }
279            }
280          }
281          else if (g_ascii_strncasecmp (remoteinfo[j], "qth:", 4) == 0)
282          {
283            if ((argument = getargument (remoteinfo[j])))
284            {
285              if (GTK_WIDGET_VISIBLE (qthhbox))
286                qso[QTH] = g_strndup (argument, 30);
287              else
288              {
289                if (g_ascii_strcasecmp (remarks, "") == 0)
290                    remarks = g_strdup (argument);
291                else
292                  remarks = g_strconcat (remarks, ", ", argument, 0);
293              }
294            }
295          }
296          else if (g_ascii_strncasecmp (remoteinfo[j], "notes:", 6) == 0)
297          {
298            if ((argument = getargument (remoteinfo[j])))
299            {
300              if (g_ascii_strcasecmp (remarks, "") == 0)
301                remarks = g_strdup (argument);
302              else
303              remarks = g_strconcat (remarks, ", ", argument, 0);
304            }
305          }
306          else if (g_ascii_strncasecmp (remoteinfo[j], "power:", 6) == 0)
307          {
308            if ((argument = getargument (remoteinfo[j])))
309            {
310              if (g_ascii_strcasecmp (argument, "HAMLIB") == 0)
311    #if WANT_HAMLIB
312             {
313                get_powerlevel ();
314                if (GTK_WIDGET_VISIBLE (powerhbox))
315                  qso[POWER] = g_strdup_printf ("%d", state.rigpower * 256 / 100000);
316                else
317                            {
318                              if (g_ascii_strcasecmp (remarks, "") == 0)
319                    remarks = g_strdup_printf ("%d", state.rigpower * 256 / 100000);
320                  else
321                  {
322                    power = g_strdup_printf ("%d", state.rigpower * 256 / 100000);
323                    remarks = g_strconcat (remarks, ", ", power, 0);
324                    g_free (power);
325                  }
326                }
327              }
328              else
329              {
330                if (GTK_WIDGET_VISIBLE (powerhbox))
331                  qso[POWER] = g_strndup (argument, 8);
332                else
333                            {
334                              if (g_ascii_strcasecmp (remarks, "") == 0)
335                    remarks = g_strdup (argument);
336                  else
337                    remarks = g_strconcat (remarks, ", ", argument, 0);
338                }
339              }
340    #else
341              {
342                err = 1;
343                if (GTK_WIDGET_VISIBLE (powerhbox))
344                  qso[POWER] = g_strdup ("");
345                else
346                            {
347                /* nothing to add */
348                }
349              }
350              else
351              {
352                if (GTK_WIDGET_VISIBLE (powerhbox))
353                  qso[POWER] = g_strndup (argument, 8);
354                else
355                            {
356                              if (g_ascii_strcasecmp (remarks, "") == 0)
357                    remarks = g_strdup (argument);
358                  else
359                    remarks = g_strconcat (remarks, ", ", argument, 0);
360                }
361              }
362    #endif
363            }
364          }
365          else if (g_ascii_strncasecmp (remoteinfo[j], "locator:", 8) == 0)
366          {
367            if ((argument = getargument (remoteinfo[j])))
368            {
369              if (GTK_WIDGET_VISIBLE (locatorhbox))
370                qso[LOCATOR] = g_strndup (argument, 30);
371              else
372              {
373                if (g_ascii_strcasecmp (remarks, "") == 0)
374                  remarks = g_strdup (argument);
375                else
376                  remarks = g_strconcat (remarks, ", ", argument, 0);
377              }
378            }
379          }
380          else if (g_ascii_strncasecmp (remoteinfo[j], "free1:", 6) == 0)
381              {              {
382                if ((argument = getargument (remoteinfo[j])))                if ((argument = getargument (remoteinfo[j])))
383                  {                  {
# Line 306  addtolog_or_qsoframe (gint type, gchar * Line 416  addtolog_or_qsoframe (gint type, gchar *
416          qso[REMARKS] = g_strndup (remarks, 80);          qso[REMARKS] = g_strndup (remarks, 80);
417        g_free (remarks);        g_free (remarks);
418    
419          /* try to fill in empty fields */
420        if (g_ascii_strcasecmp (qso[DATE], "") == 0)        if (g_ascii_strcasecmp (qso[DATE], "") == 0)
421          qso[DATE] = getdate ();          qso[DATE] = getdate ();
422        if (g_ascii_strcasecmp (qso[GMT], "") == 0)        if (g_ascii_strcasecmp (qso[GMT], "") == 0)
# Line 340  addtolog_or_qsoframe (gint type, gchar * Line 451  addtolog_or_qsoframe (gint type, gchar *
451          }          }
452    
453        if (preferences.remoteadding == 1)        if (preferences.remoteadding == 1)
454        {          {
455          qso[NR] = g_strdup_printf ("%d", ++logwindow->qsos);            qso[NR] = g_strdup_printf ("%d", ++logwindow->qsos);
456    
457                  /* add the QSO */            /* add the QSO */
458          model = gtk_tree_view_get_model (GTK_TREE_VIEW(logwindow->treeview));            model = gtk_tree_view_get_model (GTK_TREE_VIEW
459          gtk_tree_store_prepend (GTK_TREE_STORE(model), &iter, NULL);                                             (logwindow->treeview));
460          gtk_tree_store_set (GTK_TREE_STORE(model), &iter, NR, qso[NR],            gtk_tree_store_prepend (GTK_TREE_STORE (model), &iter, NULL);
461            DATE, qso[DATE], GMT, qso[GMT], GMTEND, qso[GMTEND], CALL, qso[CALL],            gtk_tree_store_set (GTK_TREE_STORE (model), &iter, NR,
462            BAND, qso[BAND], MODE, qso[MODE], RST, qso[RST], MYRST, qso[MYRST],                                qso[NR], DATE, qso[DATE], GMT,
463            QSLOUT, qso[QSLOUT], QSLIN, qso[QSLIN], POWER, qso[POWER], NAME, qso[NAME],                                qso[GMT], GMTEND, qso[GMTEND],
464            QTH, qso[QTH], LOCATOR, qso[LOCATOR], U1, qso[U1], U2, qso[U2],                                CALL, qso[CALL], BAND, qso[BAND],
465            REMARKS, qso[REMARKS], -1);                                MODE, qso[MODE], RST, qso[RST],
466                                  MYRST, qso[MYRST], QSLOUT,
467          /* scroll there */                                qso[QSLOUT], QSLIN, qso[QSLIN],
468          path = gtk_tree_path_new_from_string ("0");                                POWER, qso[POWER], NAME,
469          gtk_tree_view_scroll_to_cell (GTK_TREE_VIEW(logwindow->treeview),                                qso[NAME], QTH, qso[QTH], LOCATOR,
470            path, NULL, TRUE, 1.0, 0.0);                                qso[LOCATOR], U1, qso[U1], U2,
471          gtk_tree_path_free (path);                                qso[U2], REMARKS, qso[REMARKS], -1);
472    
473          gtk_label_set_text (GTK_LABEL (logwindow->label),            /* scroll there */
474                g_strconcat (logwindow->logname, " *", NULL));            path = gtk_tree_path_new_from_string ("0");
475              gtk_tree_view_scroll_to_cell (GTK_TREE_VIEW
476          temp =                                          (logwindow->treeview),
477            g_strdup_printf (_                                          path, NULL, TRUE, 1.0, 0.0);
478              ("Remote data received from %s (#%d), QSO %s added"),            gtk_tree_path_free (path);
479                remote.program, ++remote.nr, qso[NR]);  
480          logwindow->logchanged = TRUE;            gtk_label_set_text (GTK_LABEL (logwindow->label),
481        }                                g_strconcat (logwindow->logname, " *", NULL));
482    
483              temp = g_strdup_printf (_
484                                      ("Remote data received from %s (#%d), QSO %s added"),
485                                      remote.program, ++remote.nr, qso[NR]);
486              logwindow->logchanged = TRUE;
487            }
488        else        else
489        {          {
490          if (g_ascii_strcasecmp (qso[DATE], "") == 0)            if (g_ascii_strcasecmp (qso[DATE], "") == 0)
491                qso[DATE] = getdate ();              qso[DATE] = getdate ();
492          if (g_ascii_strcasecmp (qso[GMT], "") == 0)            if (g_ascii_strcasecmp (qso[GMT], "") == 0)
493                qso[GMT] = gettime ();              qso[GMT] = gettime ();
494          dateentry = lookup_widget(mainwindow, "dateentry");            dateentry = lookup_widget (mainwindow, "dateentry");
495          if (strlen(gtk_editable_get_chars (GTK_EDITABLE (dateentry), 0, -1)) == 0)            if (strlen
496            gtk_entry_set_text (GTK_ENTRY (dateentry), qso[DATE]);                (gtk_editable_get_chars (GTK_EDITABLE (dateentry), 0, -1)) == 0)
497          gmtentry = lookup_widget(mainwindow, "gmtentry");              gtk_entry_set_text (GTK_ENTRY (dateentry), qso[DATE]);
498          if (strlen(gtk_editable_get_chars (GTK_EDITABLE (gmtentry), 0, -1)) == 0)            gmtentry = lookup_widget (mainwindow, "gmtentry");
499            gtk_entry_set_text (GTK_ENTRY (gmtentry), qso[GMT]);            if (strlen
500          if (GTK_WIDGET_VISIBLE (endhbox))                (gtk_editable_get_chars (GTK_EDITABLE (gmtentry), 0, -1)) == 0)
501          {              gtk_entry_set_text (GTK_ENTRY (gmtentry), qso[GMT]);
502            endentry = lookup_widget(mainwindow, "endentry");            if (GTK_WIDGET_VISIBLE (endhbox))
503            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (endentry),              {
504                0, -1)) == 0)                endentry = lookup_widget (mainwindow, "endentry");
505              gtk_entry_set_text (GTK_ENTRY (endentry), qso[GMTEND]);                if (strlen
506          }                    (gtk_editable_get_chars
507          callentry = lookup_widget(mainwindow, "callentry");                     (GTK_EDITABLE (endentry), 0, -1)) == 0)
508          if (strlen(gtk_editable_get_chars (GTK_EDITABLE (callentry),                  gtk_entry_set_text (GTK_ENTRY (endentry), qso[GMTEND]);
509              0, -1)) == 0)              }
510            gtk_entry_set_text (GTK_ENTRY (callentry), qso[CALL]);            callentry = lookup_widget (mainwindow, "callentry");
511          if (preferences.modeseditbox == 1)            if (strlen
512            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (modeentry),                (gtk_editable_get_chars (GTK_EDITABLE (callentry), 0, -1)) == 0)
513                0, -1)) == 0)              gtk_entry_set_text (GTK_ENTRY (callentry), qso[CALL]);
514              gtk_entry_set_text (GTK_ENTRY (modeentry), qso[MODE]);            if (preferences.modeseditbox == 1)
515          if (preferences.bandseditbox == 1)              if (strlen
516            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (dateentry),                  (gtk_editable_get_chars
517                0, -1)) == 0)                   (GTK_EDITABLE (modeentry), 0, -1)) == 0)
518              gtk_entry_set_text (GTK_ENTRY (dateentry), qso[BAND]);                gtk_entry_set_text (GTK_ENTRY (modeentry), qso[MODE]);
519          rstentry = lookup_widget(mainwindow, "rstentry");            if (preferences.bandseditbox == 1)
520          if (strlen(gtk_editable_get_chars (GTK_EDITABLE (rstentry), 0, -1)) == 0)              if (strlen
521            gtk_entry_set_text (GTK_ENTRY (rstentry), qso[RST]);                  (gtk_editable_get_chars
522          myrstentry = lookup_widget(mainwindow, "myrstentry");                   (GTK_EDITABLE (dateentry), 0, -1)) == 0)
523          if (strlen(gtk_editable_get_chars (GTK_EDITABLE (myrstentry), 0, -1)) == 0)                gtk_entry_set_text (GTK_ENTRY (dateentry), qso[BAND]);
524            gtk_entry_set_text (GTK_ENTRY (myrstentry), qso[MYRST]);            rstentry = lookup_widget (mainwindow, "rstentry");
525          if (GTK_WIDGET_VISIBLE (powerhbox))            if (strlen
526          {                (gtk_editable_get_chars (GTK_EDITABLE (rstentry), 0, -1)) == 0)
527            powerentry = lookup_widget(mainwindow, "powerentry");              gtk_entry_set_text (GTK_ENTRY (rstentry), qso[RST]);
528            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (powerentry),            myrstentry = lookup_widget (mainwindow, "myrstentry");
529                0, -1)) == 0)            if (strlen
530              gtk_entry_set_text (GTK_ENTRY (powerentry), qso[POWER]);                (gtk_editable_get_chars
531          }                 (GTK_EDITABLE (myrstentry), 0, -1)) == 0)
532          if (GTK_WIDGET_VISIBLE (namehbox))              gtk_entry_set_text (GTK_ENTRY (myrstentry), qso[MYRST]);
533          {            if (GTK_WIDGET_VISIBLE (powerhbox))
534            nameentry = lookup_widget(mainwindow, "nameentry");              {
535            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (nameentry),                powerentry = lookup_widget (mainwindow, "powerentry");
536                0, -1)) == 0)                if (strlen
537              gtk_entry_set_text (GTK_ENTRY (nameentry), qso[NAME]);                    (gtk_editable_get_chars
538          }                     (GTK_EDITABLE (powerentry), 0, -1)) == 0)
539          if (GTK_WIDGET_VISIBLE (qthhbox))                  gtk_entry_set_text (GTK_ENTRY (powerentry), qso[POWER]);
540          {              }
541            qthentry = lookup_widget(mainwindow, "qthentry");            if (GTK_WIDGET_VISIBLE (namehbox))
542            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (qthentry),              {
543                0, -1)) == 0)                nameentry = lookup_widget (mainwindow, "nameentry");
544              gtk_entry_set_text (GTK_ENTRY (qthentry), qso[QTH]);                if (strlen
545          }                    (gtk_editable_get_chars
546          if (GTK_WIDGET_VISIBLE (locatorhbox))                     (GTK_EDITABLE (nameentry), 0, -1)) == 0)
547          {                  gtk_entry_set_text (GTK_ENTRY (nameentry), qso[NAME]);
548            locatorentry = lookup_widget(mainwindow, "locatorentry");              }
549            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (locatorentry),            if (GTK_WIDGET_VISIBLE (qthhbox))
550                0, -1)) == 0)              {
551              gtk_entry_set_text (GTK_ENTRY (locatorentry), qso[LOCATOR]);                qthentry = lookup_widget (mainwindow, "qthentry");
552          }                if (strlen
553          if (GTK_WIDGET_VISIBLE (unknown1hbox))                    (gtk_editable_get_chars
554          {                     (GTK_EDITABLE (qthentry), 0, -1)) == 0)
555            unknownentry1 = lookup_widget(mainwindow, "unknownentry1");                  gtk_entry_set_text (GTK_ENTRY (qthentry), qso[QTH]);
556            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (unknownentry1),              }
557                0, -1)) == 0)            if (GTK_WIDGET_VISIBLE (locatorhbox))
558              gtk_entry_set_text (GTK_ENTRY (unknownentry1), qso[U1]);              {
559          }                locatorentry = lookup_widget (mainwindow, "locatorentry");
560          if (GTK_WIDGET_VISIBLE (unknown2hbox))                if (strlen
561          {                    (gtk_editable_get_chars
562            unknownentry2 = lookup_widget(mainwindow, "unknownentry2");                     (GTK_EDITABLE (locatorentry), 0, -1)) == 0)
563            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (unknownentry2),                  gtk_entry_set_text (GTK_ENTRY (locatorentry), qso[LOCATOR]);
564                0, -1)) == 0)              }
565              gtk_entry_set_text (GTK_ENTRY (unknownentry2), qso[U2]);            if (GTK_WIDGET_VISIBLE (unknown1hbox))
566          }              {
567          remarksvbox = lookup_widget(mainwindow, "remarksvbox");                unknownentry1 = lookup_widget (mainwindow, "unknownentry1");
568          if (GTK_WIDGET_VISIBLE (remarksvbox))                if (strlen
569          {                    (gtk_editable_get_chars
570            remarksentry = lookup_widget(mainwindow, "remarksentry");                     (GTK_EDITABLE (unknownentry1), 0, -1)) == 0)
571            if (strlen(gtk_editable_get_chars (GTK_EDITABLE (remarksentry),                  gtk_entry_set_text (GTK_ENTRY (unknownentry1), qso[U1]);
572                0, -1)) == 0)              }
573              gtk_entry_set_text (GTK_ENTRY (remarksentry), qso[REMARKS]);            if (GTK_WIDGET_VISIBLE (unknown2hbox))
574          }              {
575          temp =                unknownentry2 = lookup_widget (mainwindow, "unknownentry2");
576            g_strdup_printf (_                if (strlen
577              ("Remote data received from %s (#%d)"),                    (gtk_editable_get_chars
578                remote.program, ++remote.nr);                     (GTK_EDITABLE (unknownentry2), 0, -1)) == 0)
579        }                  gtk_entry_set_text (GTK_ENTRY (unknownentry2), qso[U2]);
580        update_statusbar (temp);              }
581              remarksvbox = lookup_widget (mainwindow, "remarksvbox");
582              if (GTK_WIDGET_VISIBLE (remarksvbox))
583                {
584                  remarksentry = lookup_widget (mainwindow, "remarksentry");
585                  if (strlen
586                      (gtk_editable_get_chars
587                       (GTK_EDITABLE (remarksentry), 0, -1)) == 0)
588                    gtk_entry_set_text (GTK_ENTRY (remarksentry), qso[REMARKS]);
589                }
590              temp = g_strdup_printf (_
591                                      ("Remote data received from %s (#%d)"),
592                                      remote.program, ++remote.nr);
593            }
594          if (err == 1)
595            update_statusbar (_("Warning: No hamlib support for remote data"));
596          else
597            update_statusbar (temp);
598        g_free (temp);        g_free (temp);
599    
600        remote.program = g_strdup ("unknown");        remote.program = g_strdup ("unknown");
# Line 474  remote_entry (void) Line 608  remote_entry (void)
608    glong msgtyp = 0;    glong msgtyp = 0;
609    ssize_t status = -1;    ssize_t status = -1;
610    
611    status =    status = msgrcv (msgid, (void *) &msgbuf, 1024, msgtyp,
612      msgrcv (msgid, (void *) &msgbuf, 1024, msgtyp, MSG_NOERROR | IPC_NOWAIT);                     MSG_NOERROR | IPC_NOWAIT);
613    if (status != -1)    if (status != -1)
614      addtolog_or_qsoframe (msgbuf.mtype, msgbuf.mtext);      addtolog_or_qsoframe (msgbuf.mtype, msgbuf.mtext);
615    return 1;    return 1;

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26