From 8735c0d2525f7660e0d1db218902e514ee8d9a58 Mon Sep 17 00:00:00 2001
From: John Melton G0ORX <john.d.melton@googlemail.com>
Date: Fri, 15 Nov 2019 17:20:26 +0000
Subject: [PATCH] More cleanup when no transmitter

---
 meter.c    | 56 ++++++++++++++++++++++++++++--------------------------
 new_menu.c | 10 ++++++----
 vfo.c      | 14 ++++++++------
 3 files changed, 43 insertions(+), 37 deletions(-)

diff --git a/meter.c b/meter.c
index e154ad5..36e08d3 100644
--- a/meter.c
+++ b/meter.c
@@ -497,35 +497,37 @@ if(analog_meter) {
 
   cairo_set_line_width(cr, 1.0);
 
-  cairo_set_source_rgb(cr, 1.0, 1.0, 1.0);
-  cairo_move_to(cr, 5.0, 15.0);
-  cairo_line_to(cr, 5.0, 5.0);
-  cairo_move_to(cr, 5.0+25.0, 15.0);
-  cairo_line_to(cr, 5.0+25.0, 10.0);
-  cairo_move_to(cr, 5.0+50.0, 15.0);
-  cairo_line_to(cr, 5.0+50.0, 5.0);
-  cairo_move_to(cr, 5.0+75.0, 15.0);
-  cairo_line_to(cr, 5.0+75.0, 10.0);
-  cairo_move_to(cr, 5.0+100.0, 15.0);
-  cairo_line_to(cr, 5.0+100.0, 5.0);
-  cairo_stroke(cr);
-
-  double peak=vox_get_peak();
-  peak=peak*100.0;
-  cairo_set_source_rgb(cr, 0.0, 1.0, 0.0);
-  cairo_rectangle(cr, 5.0, 5.0, peak, 5.0);
-  cairo_fill(cr);
-
-  if(vox_enabled) {
-    cairo_set_source_rgb(cr, 1.0, 0.0, 0.0);
-    cairo_move_to(cr,5.0+(vox_threshold*100.0),5.0);
-    cairo_line_to(cr,5.0+(vox_threshold*100.0),15.0);
+  if(can_transmit) {
+    cairo_set_source_rgb(cr, 1.0, 1.0, 1.0);
+    cairo_move_to(cr, 5.0, 15.0);
+    cairo_line_to(cr, 5.0, 5.0);
+    cairo_move_to(cr, 5.0+25.0, 15.0);
+    cairo_line_to(cr, 5.0+25.0, 10.0);
+    cairo_move_to(cr, 5.0+50.0, 15.0);
+    cairo_line_to(cr, 5.0+50.0, 5.0);
+    cairo_move_to(cr, 5.0+75.0, 15.0);
+    cairo_line_to(cr, 5.0+75.0, 10.0);
+    cairo_move_to(cr, 5.0+100.0, 15.0);
+    cairo_line_to(cr, 5.0+100.0, 5.0);
     cairo_stroke(cr);
-  }
 
-  cairo_set_source_rgb(cr, 1.0, 1.0, 0.0);
-  cairo_move_to(cr, 115.0, 15.0);
-  cairo_show_text(cr, "Mic Level");
+    double peak=vox_get_peak();
+    peak=peak*100.0;
+    cairo_set_source_rgb(cr, 0.0, 1.0, 0.0);
+    cairo_rectangle(cr, 5.0, 5.0, peak, 5.0);
+    cairo_fill(cr);
+
+    if(vox_enabled) {
+      cairo_set_source_rgb(cr, 1.0, 0.0, 0.0);
+      cairo_move_to(cr,5.0+(vox_threshold*100.0),5.0);
+      cairo_line_to(cr,5.0+(vox_threshold*100.0),15.0);
+      cairo_stroke(cr);
+    }
+
+    cairo_set_source_rgb(cr, 1.0, 1.0, 0.0);
+    cairo_move_to(cr, 115.0, 15.0);
+    cairo_show_text(cr, "Mic Level");
+  }
 
   if(last_meter_type!=meter_type) {
     last_meter_type=meter_type;
diff --git a/new_menu.c b/new_menu.c
index f7221ef..130be60 100644
--- a/new_menu.c
+++ b/new_menu.c
@@ -563,10 +563,12 @@ void new_menu()
     gtk_grid_attach(GTK_GRID(grid),meter_b,(i%5),i/5,1,1);
     i++;
 
-    GtkWidget *vox_b=gtk_button_new_with_label("VOX");
-    g_signal_connect (vox_b, "button-press-event", G_CALLBACK(vox_b_cb), NULL);
-    gtk_grid_attach(GTK_GRID(grid),vox_b,(i%5),i/5,1,1);
-    i++;
+    if(can_transmit) {
+      GtkWidget *vox_b=gtk_button_new_with_label("VOX");
+      g_signal_connect (vox_b, "button-press-event", G_CALLBACK(vox_b_cb), NULL);
+      gtk_grid_attach(GTK_GRID(grid),vox_b,(i%5),i/5,1,1);
+      i++;
+    }
 
     GtkWidget *fft_b=gtk_button_new_with_label("FFT");
     g_signal_connect (fft_b, "button-press-event", G_CALLBACK(fft_b_cb), NULL);
diff --git a/vfo.c b/vfo.c
index c73c47a..5360ca1 100644
--- a/vfo.c
+++ b/vfo.c
@@ -1132,13 +1132,15 @@ void vfo_update() {
         }
         cairo_show_text(cr, "CAT");
 
-        cairo_move_to(cr, 500, 15);  
-        if(vox_enabled) {
-          cairo_set_source_rgb(cr, 1.0, 0.0, 0.0);
-        } else {
-          cairo_set_source_rgb(cr, 0.7, 0.7, 0.7);
+        if(can_transmit) {
+          cairo_move_to(cr, 500, 15);  
+          if(vox_enabled) {
+            cairo_set_source_rgb(cr, 1.0, 0.0, 0.0);
+          } else {
+            cairo_set_source_rgb(cr, 0.7, 0.7, 0.7);
+          }
+          cairo_show_text(cr, "VOX");
         }
-        cairo_show_text(cr, "VOX");
 
         cairo_move_to(cr, 5, 50);
         if(locked) {
-- 
2.45.2