]> git.rkrishnan.org Git - pihpsdr.git/commitdiff
delegated some "actions" to separate functions to avoid
authorc vw <dl1ycf@darc.de>
Thu, 15 Dec 2022 17:09:18 +0000 (18:09 +0100)
committerc vw <dl1ycf@darc.de>
Thu, 15 Dec 2022 17:09:18 +0000 (18:09 +0100)
duplicat code. Lots of clean-up in ext.c/ext.h

actions.c
band.c
band.h
ext.c
ext.h

index 322a49454bc9e794c576748787e81ea038d6b5e9..c771c19a1d64a82bdda2071d0d2c4d00fa9383dc 100644 (file)
--- a/actions.c
+++ b/actions.c
@@ -477,50 +477,12 @@ int process_action(void *data) {
       break;
     case BAND_MINUS:
       if(a->mode==PRESSED) {
-        long long frequency_min=radio->frequency_min;
-        long long frequency_max=radio->frequency_max;
-        int b=vfo[active_receiver->id].band;
-        BAND *band;
-        int found=0;
-        while(!found) {
-          b--;
-          if(b<0) b=BANDS+XVTRS-1;
-          band=(BAND*)band_get_band(b);
-          if(strlen(band->title)>0) {
-            if(b<BANDS) {
-              if(band->frequencyMin<frequency_min || band->frequencyMax>frequency_max) {
-                continue;
-              }
-            }
-            vfo_band_changed(active_receiver->id,b);
-            found=1;
-          }
-        }
+        band_minus(active_receiver->id);
       }
       break;
     case BAND_PLUS:
       if(a->mode==PRESSED) {
-        long long frequency_min=radio->frequency_min;
-        long long frequency_max=radio->frequency_max;
-        int b=vfo[active_receiver->id].band;
-        BAND *band;
-        int found=0;
-        while(!found) {
-          b++;
-          if(b>=BANDS+XVTRS) b=0;
-          band=(BAND*)band_get_band(b);
-          if(strlen(band->title)>0) {
-            if(b<BANDS) {
-              if(!(band->frequencyMin==0.0 && band->frequencyMax==0.0)) {
-                if(band->frequencyMin<frequency_min || band->frequencyMax>frequency_max) {
-                  continue;
-                }
-              }
-            }
-            vfo_band_changed(active_receiver->id,b);
-            found=1;
-          }
-        }
+        band_plus(active_receiver->id);
       }
       break;
     case BAND_WWV:
@@ -564,17 +526,8 @@ int process_action(void *data) {
       break;
     case CTUN:
       if(a->mode==PRESSED) {
-        vfo[active_receiver->id].ctun=!vfo[active_receiver->id].ctun;
-        if(!vfo[active_receiver->id].ctun) {
-          // when deactivating CTUN,  keep frequency
-          setFrequency(vfo[active_receiver->id].ctun_frequency);
-        } else {
-          // when activating CTUN, continue with current frequency
-          vfo[active_receiver->id].ctun_frequency=vfo[active_receiver->id].frequency;
-        }
-        // in either case, start with zero offset after toggling CTUN
-        vfo[active_receiver->id].offset=0;
-        set_offset(receiver[active_receiver->id],vfo[active_receiver->id].offset);
+        int state=vfo[active_receiver->id].ctun ? 0 : 1;
+        vfo_ctun_update(active_receiver->id,state);
         g_idle_add(ext_vfo_update, NULL);
       }
       break;
@@ -830,62 +783,62 @@ int process_action(void *data) {
       break;
     case NUMPAD_0:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(0));
+        num_pad(0);
       }
       break;
     case NUMPAD_1:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(1));
+        num_pad(1);
       }
       break;
     case NUMPAD_2:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(2));
+        num_pad(2);
       }
       break;
     case NUMPAD_3:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(3));
+        num_pad(3);
       }
       break;
     case NUMPAD_4:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(4));
+        num_pad(4);
       }
       break;
     case NUMPAD_5:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(5));
+        num_pad(5);
       }
       break;
     case NUMPAD_6:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(6));
+        num_pad(6);
       }
       break;
     case NUMPAD_7:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(7));
+        num_pad(7);
       }
       break;
     case NUMPAD_8:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(8));
+        num_pad(8);
       }
       break;
     case NUMPAD_9:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(9));
+        num_pad(9);
       }
       break;
     case NUMPAD_CL:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(-1));
+        num_pad(-1);
       }
       break;
     case NUMPAD_ENTER:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_num_pad,GINT_TO_POINTER(-2));
+        num_pad(-2);
       }
       break;
     case PAN:
@@ -1042,7 +995,7 @@ int process_action(void *data) {
       break;
     case SPLIT:
       if(a->mode==PRESSED) {
-        g_idle_add(ext_split_toggle, NULL);
+        radio_split_toggle();
       }
       break;
     case SQUELCH:
@@ -1310,4 +1263,3 @@ int process_action(void *data) {
   }
   return 0;
 }
-
diff --git a/band.c b/band.c
index 39e16532064cf33eb96fef48cc4f2ec5d19e54ff..b08920919e13aac21834c026a0361f5d8f57da18 100644 (file)
--- a/band.c
+++ b/band.c
@@ -777,3 +777,50 @@ int canTransmit() {
     return result;
 }
 */
+
+void band_plus(int id) {
+  long long frequency_min=radio->frequency_min;
+  long long frequency_max=radio->frequency_max;
+  int b=vfo[id].band;
+  BAND *band;
+  int found=0;
+  while(!found) {
+    b++;
+    if(b>=BANDS+XVTRS) b=0;
+    band=(BAND*)band_get_band(b);
+    if(strlen(band->title)>0) {
+      if(b<BANDS) {
+        if(!(band->frequencyMin==0.0 && band->frequencyMax==0.0)) {
+          if(band->frequencyMin<frequency_min || band->frequencyMax>frequency_max) {
+            continue;
+          }
+        }
+      }
+      vfo_band_changed(id,b);
+      found=1;
+    }
+  }
+}
+
+void band_minus(int id) {
+  long long frequency_min=radio->frequency_min;
+  long long frequency_max=radio->frequency_max;
+  int b=vfo[id].band;
+  BAND *band;
+  int found=0;
+  while(!found) {
+    b--;
+    if(b<0) b=BANDS+XVTRS-1;
+    band=(BAND*)band_get_band(b);
+    if(strlen(band->title)>0) {
+      if(b<BANDS) {
+        if(band->frequencyMin<frequency_min || band->frequencyMax>frequency_max) {
+          continue;
+        }
+      }
+      vfo_band_changed(id,b);
+      found=1;
+    }
+  }
+}
+
diff --git a/band.h b/band.h
index f5355126c15145735898d7a460579766aa383506..b4fb5799a7b362794707a3a61bb70e3f2feb0ec3 100644 (file)
--- a/band.h
+++ b/band.h
@@ -122,4 +122,6 @@ extern void bandRestoreState(void);
 char* getFrequencyInfo(long long frequency,int filter_low,int filter_high);
 int canTransmit(void);
 
+extern void band_minus(int id);
+extern void band_plus(int id);
 #endif
diff --git a/ext.c b/ext.c
index 1ecd2167d712f744f1e6f516e206888d83e1dce9..30e209c35f49301c06f2a7f6ecccdff461df26ba 100644 (file)
--- a/ext.c
+++ b/ext.c
 
 // The following calls functions can be called usig g_idle_add
 
-int ext_menu_filter(void *data) {
-  start_filter();
-  return 0;
-}
-
-int ext_menu_mode(void *data) {
-  start_mode();
-  return 0;
-}
-
-int ext_num_pad(void *data) {
-  gint val=GPOINTER_TO_INT(data);
-  RECEIVER *rx=active_receiver;
-  if(!vfo[rx->id].entering_frequency) {
-    vfo[rx->id].entered_frequency=0;
-    vfo[rx->id].entering_frequency=TRUE;
-  }
-  switch(val) {
-    case -1: // clear
-      vfo[rx->id].entered_frequency=0;
-      vfo[rx->id].entering_frequency=FALSE;
-      break;
-    case -2: // enter
-      if(vfo[rx->id].entered_frequency!=0) {
-        vfo[rx->id].frequency=vfo[rx->id].entered_frequency;
-       if(vfo[rx->id].ctun) {
-          vfo[rx->id].ctun=FALSE;
-          vfo[rx->id].offset=0;
-          vfo[rx->id].ctun_frequency=vfo[rx->id].frequency;
-       }
-      }
-      vfo[rx->id].entering_frequency=FALSE;
-      break;
-    default:
-      vfo[rx->id].entered_frequency=(vfo[rx->id].entered_frequency*10)+val;
-      break;
-  }
-  vfo_update();
-  return 0;
-}
-
-int ext_vfo_mode_changed(void * data)
-{
-  int mode=GPOINTER_TO_INT(data);
-  vfo_mode_changed(mode);
-  return 0;
-}
-
 int ext_discovery(void *data) {
   discovery();
   return 0;
 }
 
-int ext_set_frequency(void *data) {
-  //
-  // If new frequency is outside of current band,
-  // behave as if the user had chosen the new band
-  // via the menu prior to changing the frequency
-  //
-  SET_FREQUENCY *set_frequency=(SET_FREQUENCY *)data;
-  vfo_set_frequency(set_frequency->vfo,set_frequency->frequency);
-  free(data);
-  return 0;
-}
-
+//
+// ALL calls to vfo_update should go through g_idle_add(ext_vfo_update)
+// such that they can be filtered out if they come at high rate
+//
 static guint vfo_timeout=0;
 
 static int vfo_timeout_cb(void * data) {
@@ -128,10 +72,6 @@ static int vfo_timeout_cb(void * data) {
   return 0;
 }
 
-//
-// ALL calls to vfo_update should go through g_idle_add(ext_vfo_update)
-// such that they can be filtered out if they come at high rate
-//
 int ext_vfo_update(void *data) {
   if (vfo_timeout==0) {
     vfo_timeout=g_timeout_add(100, vfo_timeout_cb, NULL);
@@ -139,472 +79,21 @@ int ext_vfo_update(void *data) {
   return 0;
 }
 
-int ext_vfo_filter_changed(void *data) {
-  vfo_filter_changed(GPOINTER_TO_INT(data));
-  return 0;
-}
-
-int ext_band_update(void *data) {
-  if(data==NULL) {
-    start_band();
-  } else {
-    band_select_cb(NULL,data);
-  }
-  return 0;
-}
-
-int ext_bandstack_update(void *data) {
-  start_bandstack();
-  return 0;
-}
-
-int ext_mode_update(void *data) {
-  start_mode();
-  return 0;
-}
-
-int ext_filter_update(void *data) {
-  start_filter();
-  return 0;
-}
-
-int ext_frequency_update(void *data) {
-  start_vfo(active_receiver->id);
-  return 0;
-}
-
-int ext_memory_update(void *data) {
-  start_store();
-  return 0;
-}
-
-int ext_noise_update(void *data) {
-  start_noise();
-  return 0;
-}
-
 int ext_mox_update(void *data) {
   mox_update(GPOINTER_TO_INT(data));
   return 0;
 }
 
-int ext_tune_update(void *data) {
-  tune_update(GPOINTER_TO_INT(data));
-  return 0;
-}
-
 int ext_vox_changed(void *data) {
   vox_changed(GPOINTER_TO_INT(data));
   return 0;
 }
 
-int ext_update_agc_gain(void *data) {
-  update_agc_gain(GPOINTER_TO_INT(data));
-  free(data);
-  return 0;
-}
-
-int ext_update_af_gain(void *data) {
-  update_af_gain();
-  return 0;
-}
-
-int ext_calc_drive_level(void *data) {
-  calcDriveLevel();
-  return 0;
-}
-
-int ext_vfo_band_changed(void *data) {
-  int b=GPOINTER_TO_INT(data);
-  vfo_band_changed(active_receiver->id,b);
-  return 0;
-}
-
-int ext_radio_change_sample_rate(void *data) {
-  radio_change_sample_rate(GPOINTER_TO_INT(data));
-  return 0;
-}
-
-int ext_update_squelch(void *data) {
-  int id=GPOINTER_TO_INT(data);
-  if (id == 0 || id == 1) {
-    set_squelch(receiver[id]);
-  }
-  return 0;
-}
-
 int ext_sliders_update(void *data) {
   sliders_update();
   return 0;
 }
 
-#ifdef PURESIGNAL
-int ext_tx_set_ps(void *data) {
-  if(can_transmit) {
-    int state=GPOINTER_TO_INT(data);
-    tx_set_ps(transmitter, state);
-  }
-  return 0;
-}
-#endif
-
-int ext_update_vfo_step(void *data) {
-  int direction=GPOINTER_TO_INT(data);
-  int i = vfo_get_stepindex();
-
-  direction > 0 ? i++ : i--;
-
-  vfo_set_step_from_index(i);
-  g_idle_add(ext_vfo_update, NULL);
-  return 0;
-}
-
-int ext_vfo_step(void *data) {
-  int step=GPOINTER_TO_INT(data);
-  vfo_step(step);
-  return 0;
-}
-
-int ext_vfo_id_step(void *data) {
-  int *ip=(int *) data;
-  int id=ip[0];
-  int step=ip[1];
-  vfo_id_step(id,step);
-  free(data);
-  return 0;
-}
-
-int ext_set_mic_gain(void * data) {
-  double d=*(double *)data;
-  set_mic_gain(d);
-  free(data);
-  return 0;
-}
-
-int ext_set_af_gain(void *data) {
-  double d=*(double *)data;
-  set_af_gain(active_receiver->id,d);
-  free(data);
-  return 0;
-}
-
-int ext_set_agc_gain(void *data) {
-  double d=*(double *)data;
-  set_agc_gain(active_receiver->id,d);
-  free(data);
-  return 0;
-}
-int ext_set_drive(void *data) {
-  double d=*(double *)data;
-  set_drive(d);
-  free(data);
-  return 0;
-}
-
-int ext_set_compression(void *data) {
-  if(can_transmit) {
-    set_compression(transmitter);
-  }
-  return 0;
-}
-
-int ext_vfo_a_swap_b(void *data) {
-  vfo_a_swap_b();
-  return 0;
-}
-
-int ext_vfo_a_to_b(void *data) {
-  vfo_a_to_b();
-  return 0;
-}
-
-int ext_vfo_b_to_a(void *data) {
-  vfo_b_to_a();
-  return 0;
-}
-
-int ext_update_att_preamp(void *data) {
-  update_att_preamp();
-  return 0;
-}
-
-int ext_set_alex_attenuation(void *data) {
-  int val=GPOINTER_TO_INT(data);
-  set_alex_attenuation(val);
-  return 0;
-}
-
-int ext_set_attenuation_value(void *data) {
-  double d=*(double *)data;
-  set_attenuation_value(d);
-  free(data);
-  return 0;
-}
-
-
-#ifdef PURESIGNAL
-int ext_ps_update(void *data) {
-  if(can_transmit) {
-    if(transmitter->puresignal==0) {
-      tx_set_ps(transmitter,1);
-    } else {
-      tx_set_ps(transmitter,0);
-    }
-  }
-  return 0;
-}
-#endif
-
-int ext_two_tone(void *data) {
-  if(can_transmit) {
-    int state=transmitter->twotone?0:1;
-    tx_set_twotone(transmitter,state);
-  }
-  return 0;
-}
-
-int ext_nr_update(void *data) {
-  if(active_receiver->nr==0 && active_receiver->nr2==0) {
-    active_receiver->nr=1;
-    active_receiver->nr2=0;
-    mode_settings[vfo[active_receiver->id].mode].nr=1;
-    mode_settings[vfo[active_receiver->id].mode].nr2=0;
-  } else if(active_receiver->nr==1 && active_receiver->nr2==0) {
-    active_receiver->nr=0;
-    active_receiver->nr2=1;
-    mode_settings[vfo[active_receiver->id].mode].nr=0;
-    mode_settings[vfo[active_receiver->id].mode].nr2=1;
-  } else if(active_receiver->nr==0 && active_receiver->nr2==1) {
-    active_receiver->nr=0;
-    active_receiver->nr2=0;
-    mode_settings[vfo[active_receiver->id].mode].nr=0;
-    mode_settings[vfo[active_receiver->id].mode].nr2=0;
-  }
-  update_noise();
-  return 0;
-}
-
-int ext_nb_update(void *data) {
-  if(active_receiver->nb==0 && active_receiver->nb2==0) {
-    active_receiver->nb=1;
-    active_receiver->nb2=0;
-    mode_settings[vfo[active_receiver->id].mode].nb=1;
-    mode_settings[vfo[active_receiver->id].mode].nb2=0;
-  } else if(active_receiver->nb==1 && active_receiver->nb2==0) {
-    active_receiver->nb=0;
-    active_receiver->nb2=1;
-    mode_settings[vfo[active_receiver->id].mode].nb=0;
-    mode_settings[vfo[active_receiver->id].mode].nb2=1;
-  } else if(active_receiver->nb==0 && active_receiver->nb2==1) {
-    active_receiver->nb=0;
-    active_receiver->nb2=0;
-    mode_settings[vfo[active_receiver->id].mode].nb=0;
-    mode_settings[vfo[active_receiver->id].mode].nb2=0;
-  }
-  update_noise();
-  return 0;
-}
-
-int ext_snb_update(void *data) {
-  if(active_receiver->snb==0) {
-    active_receiver->snb=1;
-    mode_settings[vfo[active_receiver->id].mode].snb=1;
-  } else {
-    active_receiver->snb=0;
-    mode_settings[vfo[active_receiver->id].mode].snb=0;
-  }
-  update_noise();
-  return 0;
-}
-
-void band_plus(int id) {
-  long long frequency_min=radio->frequency_min;
-  long long frequency_max=radio->frequency_max;
-  int b=vfo[id].band;
-  BAND *band;
-  int found=0;
-  while(!found) {
-    b++;
-    if(b>=BANDS+XVTRS) b=0;
-    band=(BAND*)band_get_band(b);
-    if(strlen(band->title)>0) {
-      if(b<BANDS) {
-        if(!(band->frequencyMin==0.0 && band->frequencyMax==0.0)) {
-          if(band->frequencyMin<frequency_min || band->frequencyMax>frequency_max) {
-            continue;
-          }
-        }
-      }
-      vfo_band_changed(id,b);
-      found=1;
-    }
-  }
-}
-
-int ext_band_select(void *data) {
-  int b=GPOINTER_TO_INT(data);
-  vfo_band_changed(active_receiver->id,b);
-  return 0;
-}
-
-int ext_band_plus(void *data) {
-  band_plus(active_receiver->id);
-  return 0;
-}
-
-
-void band_minus(int id) {
-  long long frequency_min=radio->frequency_min;
-  long long frequency_max=radio->frequency_max;
-  int b=vfo[id].band;
-  BAND *band;
-  int found=0;
-  while(!found) {
-    b--;
-    if(b<0) b=BANDS+XVTRS-1;
-    band=(BAND*)band_get_band(b);
-    if(strlen(band->title)>0) {
-      if(b<BANDS) {
-        if(band->frequencyMin<frequency_min || band->frequencyMax>frequency_max) {
-          continue;
-        }
-      }
-      vfo_band_changed(id,b);
-      found=1;
-    }
-  }
-}
-
-int ext_band_minus(void *data) {
-  band_minus(active_receiver->id);
-  return 0;
-}
-
-int ext_bandstack_plus(void *data) {
-  BAND *band=band_get_band(vfo[active_receiver->id].band);
-  BANDSTACK *bandstack=band->bandstack;
-  int b=vfo[active_receiver->id].bandstack+1;
-  if(b>=bandstack->entries) b=0;
-  vfo_bandstack_changed(b);
-  return 0;
-}
-
-int ext_bandstack_minus(void *data) {
-  BAND *band=band_get_band(vfo[active_receiver->id].band);
-  BANDSTACK *bandstack=band->bandstack;
-  int b=vfo[active_receiver->id].bandstack-1;
-  if(b<0) b=bandstack->entries-1;;
-  vfo_bandstack_changed(b);
-  return 0;
-}
-
-int ext_lock_update(void *data) {
-#ifdef CLIENT_SERVER
-  if(radio_is_remote) {
-    send_lock(client_socket,locked==1?0:1);
-  } else {
-#endif
-    locked=locked==1?0:1;
-    g_idle_add(ext_vfo_update, NULL);
-#ifdef CLIENT_SERVER
-  }
-#endif
-  return 0;
-}
-
-int ext_rit_update(void *data) {
-  vfo_rit_update(active_receiver->id);
-  return 0;
-}
-
-int ext_rit_clear(void *data) {
-  vfo_rit_clear(active_receiver->id);
-  return 0;
-}
-
-int ext_xit_update(void *data) {
-  if(can_transmit) {
-    transmitter->xit_enabled=transmitter->xit_enabled==1?0:1;
-    if(protocol==NEW_PROTOCOL) {
-      schedule_high_priority();
-    }
-  }
-  g_idle_add(ext_vfo_update, NULL);
-  return 0;
-}
-
-int ext_xit_clear(void *data) {
-  if(can_transmit) {
-    transmitter->xit=0;
-    g_idle_add(ext_vfo_update, NULL);
-  }
-  return 0;
-}
-
-int ext_filter_plus(void *data) {
-  int f=vfo[active_receiver->id].filter-1;
-  if(f<0) f=FILTERS-1;
-  vfo_filter_changed(f);
-  return 0;
-}
-
-int ext_filter_minus(void *data) {
-  int f=vfo[active_receiver->id].filter+1;
-  if(f>=FILTERS) f=0;
-  vfo_filter_changed(f);
-  return 0;
-}
-
-int ext_mode_plus(void *data) {
-  int mode=vfo[active_receiver->id].mode;
-  mode++;
-  if(mode>=MODES) mode=0;
-  vfo_mode_changed(mode);
-  return 0;
-}
-
-int ext_mode_minus(void *data) {
-  int mode=vfo[active_receiver->id].mode;
-  mode--;
-  if(mode<0) mode=MODES-1;
-  vfo_mode_changed(mode);
-  return 0;
-}
-
-void ctun_update(int id,int state) {
-  vfo[id].ctun=state;
-  if(!vfo[id].ctun) {
-    vfo[id].offset=0;
-  }
-  vfo[id].ctun_frequency=vfo[id].frequency;
-  set_offset(receiver[id],vfo[id].offset);
-}
-
-int ext_ctun_update(void *data) {
-  ctun_update(active_receiver->id,vfo[active_receiver->id].ctun==1?0:1);
-  g_idle_add(ext_vfo_update, NULL);
-  return 0;
-}
-
-int ext_agc_update(void *data) {
-  active_receiver->agc++;
-  if(active_receiver->agc>+AGC_LAST) {
-    active_receiver->agc=0;
-  }
-  set_agc(active_receiver, active_receiver->agc);
-  g_idle_add(ext_vfo_update, NULL);
-  return 0;
-}
-
-int ext_split_toggle(void *data) {
-  if(can_transmit) {
-    radio_set_split(!split);
-    g_idle_add(ext_vfo_update, NULL);
-  }
-  return 0;
-}
-
 int ext_start_rx(void *data) {
   start_rx();
   return 0;
@@ -615,81 +104,6 @@ int ext_start_tx(void *data) {
   return 0;
 }
 
-int ext_diversity_update(void *data) {
-  int menu=GPOINTER_TO_INT(data);
-  if(menu) {
-    start_diversity();
-  } else {
-    diversity_enabled=diversity_enabled==1?0:1;
-    if (protocol == NEW_PROTOCOL) {
-      schedule_high_priority();
-      schedule_receive_specific();
-    }
-    g_idle_add(ext_vfo_update, NULL);
-  }
-  return 0;
-}
-
-int ext_diversity_change_gain(void *data) {
-  double *dp = (double *) data;
-  update_diversity_gain(*dp);
-  free(dp);
-  return 0;
-}
-
-int ext_diversity_change_phase(void *data) {
-  double *dp = (double *) data;
-  update_diversity_phase(*dp);
-  free(dp);
-  return 0;
-}
-
-#ifdef PURESIGNAL
-int ext_start_ps(void *data) {
-  start_ps();
-  return 0;
-}
-#endif
-
-int ext_sat_update(void *data) {
-  switch(sat_mode) {
-    case SAT_NONE:
-      sat_mode=SAT_MODE;
-      break;
-    case SAT_MODE:
-      sat_mode=RSAT_MODE;
-      break;
-    case RSAT_MODE:
-      sat_mode=SAT_NONE;
-      break;
-  }
-  g_idle_add(ext_vfo_update, NULL);
-  return 0;
-}
-
-int ext_function_update(void *data) {
-  function++;
-  if(function>MAX_FUNCTION) {
-    function=0;
-  }
-  update_toolbar_labels();
-  g_idle_add(ext_vfo_update, NULL);
-  return 0;
-}
-
-int ext_set_rf_gain(void *data) {
-  int pos=GPOINTER_TO_INT(data);
-  double value;
-  value=(double)pos;
-  if(value<-12.0) {
-    value=-12.0;
-  } else if(value>48.0) {
-    value=48.0;
-  }
-  set_rf_gain(active_receiver->id,value);
-  return 0;
-}
-
 int ext_update_noise(void *data) {
   update_noise();
   return 0;
@@ -706,6 +120,11 @@ int ext_set_duplex(void *data) {
 }
 
 #ifdef CLIENT_SERVER
+//
+// Execute a remote command and send a response.
+// Because of the response required, we cannot just
+// delegate to actions.c
+//
 int ext_remote_command(void *data) {
   HEADER *header=(HEADER *)data;
   REMOTE_CLIENT *client=header->context.client;
@@ -1069,10 +488,6 @@ int ext_remote_command(void *data) {
       send_region(client->socket,region);
       }
       break;
-
-
-
-
   }
   g_free(data);
   return 0;
@@ -1083,54 +498,6 @@ int ext_receiver_remote_update_display(void *data) {
   receiver_remote_update_display(rx);
   return 0;
 }
-#endif
-
-int ext_anf_update(void *data) {
-  if(active_receiver->anf==0) {
-    active_receiver->anf=1;
-    mode_settings[vfo[active_receiver->id].mode].anf=1;
-  } else {
-    active_receiver->snb=0;
-    mode_settings[vfo[active_receiver->id].mode].anf=0;
-  }
-  SetRXAANFRun(active_receiver->id, active_receiver->anf);
-  g_idle_add(ext_vfo_update, NULL);
-  return 0;
-}
-
-int ext_mute_update(void *data) {
-  active_receiver->mute_radio=!active_receiver->mute_radio;
-  return 0;
-}
-
-int ext_zoom_update(void *data) {
-  update_zoom((double)GPOINTER_TO_INT(data));
-  return 0;
-}
-
-int ext_zoom_set(void *data) {
-  int pos=GPOINTER_TO_INT(data);
-  double zoom=((double)pos/(100.0/7.0))+1.0;
-  if((int)zoom!=active_receiver->zoom) {
-    set_zoom(active_receiver->id,(double)zoom);
-  }
-  return 0;
-}
-
-int ext_pan_update(void *data) {
-  update_pan((double)GPOINTER_TO_INT(data));
-  return 0;
-}
-
-int ext_pan_set(void *data) {
-  if(active_receiver->zoom>1) {
-    int pos=GPOINTER_TO_INT(data);
-    double pan=(double)((active_receiver->zoom-1)*active_receiver->width)*((double)pos/100.0);
-    set_pan(active_receiver->id,(double)pan);
-  }
-  return 0;
-}
-
 int ext_remote_set_zoom(void *data) {
   int zoom=GPOINTER_TO_INT(data);
   remote_set_zoom(active_receiver->id,(double)zoom);
@@ -1147,3 +514,4 @@ int ext_set_title(void *data) {
   gtk_window_set_title(GTK_WINDOW(top_window),(char *)data);
   return 0;
 }
+#endif
diff --git a/ext.h b/ext.h
index 1d8770109f2295db5f23ec89b399709130064587..7475121cebbc5de838c9cc603888022361fbba7e 100644 (file)
--- a/ext.h
+++ b/ext.h
 *
 */
 
+
 #ifdef CLIENT_SERVER
 #include "client_server.h"
+extern int ext_remote_command(void *data);
+extern int ext_receiver_remote_update_display(void *data);
+extern int ext_set_title(void *data);
+extern int ext_remote_set_zoom(void *data);
+extern int ext_remote_set_pan(void *data);
 #endif
 
 //
 // The following calls functions can be called usig g_idle_add
-// Use these calls from within the rigclt daemon, or the GPIO or MIDI stuff
 //
-
-#ifdef CLIENT_SERVER
-extern int ext_remote_command(void *data);
-extern int ext_receiver_remote_update_display(void *data);
-#endif
-
-extern int ext_menu_filter(void *data);
-extern int ext_menu_mode(void *data);
-extern int ext_num_pad(void *data);
 extern int ext_discovery(void *data);
 extern int ext_vfo_update(void *data);
-extern int ext_set_frequency(void *data);
-extern int ext_vfo_filter_changed(void *data);
-extern int ext_band_update(void *data);
-extern int ext_bandstack_update(void *data);
+extern int ext_sliders_update(void *data);  // is this necessary?
 extern int ext_mox_update(void *data);
-extern int ext_tune_update(void *data);
-extern int ext_linein_changed(void *data);
-extern int ext_vox_changed(void *data);
-extern int ext_sliders_mode_changed(void *data);
-extern int ext_update_agc_gain(void *data);
-extern int ext_update_af_gain(void *data);
-extern int ext_calc_drive_level(void *data);
-extern int ext_vfo_band_changed(void *data);
-extern int ext_radio_change_sample_rate(void *data);
-
-extern int ext_ps_update(void *data);
-extern int ext_two_tone(void *data);
-extern int ext_nr_update(void *data);
-extern int ext_nb_update(void *data);
-extern int ext_snb_update(void *data);
-extern int ext_anf_update(void *data);
-extern int ext_band_select(void *data);
-extern void band_plus(int id);
-extern int ext_band_plus(void *data);
-extern void band_minus(int id);
-extern int ext_band_minus(void *data);
-extern int ext_bandstack_plus(void *data);
-extern int ext_bandstack_minus(void *data);
-extern int ext_a_to_b(void *data);
-extern int ext_lock_update(void *data);
-extern int ext_rit_update(void *data);
-extern int ext_rit_clear(void *data);
-extern int ext_xit_update(void *data);
-extern int ext_xit_clear(void *data);
-extern int ext_filter_plus(void *data);
-extern int ext_filter_minus(void *data);
-extern int ext_mode_plus(void *data);
-extern int ext_mode_minus(void *data);
-extern int ext_b_to_a(void *data);
-extern int ext_a_swap_b(void *data);
-extern void ctun_update(int id,int state);
-extern int ext_ctun_update(void *data);
-extern int ext_agc_update(void *data);
-extern int ext_split_toggle(void *data);
-
-
-extern int ext_update_squelch(void *data);
-
-extern int ext_sliders_update(void *data);
-
-extern int ext_mode_update(void *data);
-extern int ext_filter_update(void *data);
-extern int ext_noise_update(void *data);
-
-extern int ext_frequency_update(void *data);
-extern int ext_memory_update(void *data);
-extern int ext_function_update(void *data);
-
-#ifdef PURESIGNAL
-extern int ext_tx_set_ps(void *data);
-#endif
-
-extern int ext_update_vfo_step(void *data);
-extern int ext_vfo_step(void *data);
-extern int ext_vfo_id_step(void *data);
-extern int ext_vfo_mode_changed(void *data);
-extern int ext_set_af_gain(void *data);
-extern int ext_set_mic_gain(void *data);
-extern int ext_set_agc_gain(void *data);
-extern int ext_set_drive(void *data);
-extern int ext_vfo_a_swap_b(void *data);
-extern int ext_vfo_a_to_b(void *data);
-extern int ext_vfo_b_to_a(void *data);
-extern int ext_update_att_preamp(void *data);
-extern int ext_set_alex_attenuation(void *data);
-extern int ext_set_attenuation_value(void *data);
-extern int ext_set_compression(void *data);
-
+extern int ext_start_tx(void *data);        // is this necessary?
 extern int ext_start_rx(void *data);
-extern int ext_start_tx(void *data);
-extern int ext_diversity_update(void *data);
-extern int ext_diversity_change_gain(void *data);
-extern int ext_diversity_change_phase(void *data);
-extern int ext_sat_update(void *data);
-extern int ext_set_rf_gain(void *data);
-extern int ext_set_duplex(void *data);
-
 extern int ext_update_noise(void *data);
 extern int ext_update_eq(void *data);
-#ifdef PURESIGNAL
-extern int ext_start_ps(void *data);
-#endif
-
-extern int ext_mute_update(void *data);
-
-extern int ext_zoom_update(void *data);
-extern int ext_zoom_set(void *data);
-extern int ext_pan_update(void *data);
-extern int ext_pan_set(void *data);
-
-extern int ext_remote_set_zoom(void *data);
-extern int ext_remote_set_pan(void *data);
-extern int ext_set_title(void *data);
+extern int ext_vox_changed(void *data);     // is this necessary?
+extern int ext_set_duplex(void *data);      // is this necessary?
 
+///////////////////////////////////////////////////////////
+//
+// Obsolete functions removed. Note that calls  such as
+//
+// g_idle_add(ext_menu_filter,NULL);
+//
+// can/should be replaced by
+//
+// schedule_action(MENU_FILTER, PRESSED, 0);
+//
+// to avoid duplicate code
+//
+///////////////////////////////////////////////////////////