1
//======================================================================
3
// Small User Interface
7
// Copyright 2012, David Freese, W1HKJ@w1hkj.com
9
// This software is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. It is
12
// copyright under the GNU General Public License.
14
// You should have received a copy of the GNU General Public License
15
// along with the program; if not, write to the Free Software
17
// 59 Temple Place, Suite 330
18
// Boston, MA 02111-1307 USA
20
//======================================================================
22
Fl_Menu_Item menu_small_menu[] = {
23
{_("&Files"), 0, 0, 0, 64, FL_NORMAL_LABEL, 0, 14, 0},
24
{_("E&xit"), 0, (Fl_Callback*)cb_mnuExit, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
26
{_("&Config"), 0, 0, 0, 64, FL_NORMAL_LABEL, 0, 14, 0},
27
{_("Restore Freq/Mode"), 0, (Fl_Callback*)cb_mnuRestoreData, 0, 6, FL_NORMAL_LABEL, 0, 14, 0},
28
{_("Keep Freq/Mode"), 0, (Fl_Callback*)cb_mnuKeepData, 0, 134, FL_NORMAL_LABEL, 0, 14, 0},
29
{_("Tooltips"), 0, (Fl_Callback*)cb_mnuTooltips, 0, 2, FL_NORMAL_LABEL, 0, 14, 0},
30
{_("Small sliders"), 0, (Fl_Callback*)cb_mnuSchema, 0, 130, FL_NORMAL_LABEL, 0, 14, 0},
31
{_("User Interface"), 0, (Fl_Callback*)cb_mnuColorConfig, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
32
{_("Meter filtering"), 0, (Fl_Callback*)cb_mnu_meter_filtering, 0, 128, FL_NORMAL_LABEL, 0, 14, 0},
33
{_("Xcvr select"), 0, (Fl_Callback*)cb_mnuConfigXcvr, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
35
{_("&Memory"), 0, (Fl_Callback*)cb_Memory, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
36
{_("@>>"), 0, (Fl_Callback*)cb_save_me, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
37
{_("&Debug"), 0, 0, 0, 192, FL_NORMAL_LABEL, 0, 14, 0},
38
{_("&Events"), 0, (Fl_Callback*)cb_Events, 0, 128, FL_NORMAL_LABEL, 0, 14, 0},
39
{_("&Polling"), 0, (Fl_Callback*)cb_Polling, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
40
{_("&Send command"), 0, (Fl_Callback*)cb_Send, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
42
{_("&Help"), 0, 0, 0, 64, FL_NORMAL_LABEL, 0, 14, 0},
43
{_("On Line Help"), 0, (Fl_Callback*)cb_mnuOnLineHelp, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
44
{_("&About"), 0, (Fl_Callback*)cb_mnuAbout, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
49
Fl_Double_Window* Small_rig_window() {
50
Fl_Double_Window* w = new Fl_Double_Window(425, 320, _("Flrig"));
51
w->align(Fl_Align(FL_ALIGN_CLIP|FL_ALIGN_INSIDE));
53
small_menu = new Fl_Menu_Bar(0, 0, 424, 22);
54
small_menu->textsize(12);
55
progStatus.tooltips ? (&menu_small_menu[6])->set() : (&menu_small_menu[6])->clear();
56
progStatus.schema ? (&menu_small_menu[7])->set() : (&menu_small_menu[7])->clear();
57
small_menu->menu(menu_small_menu);
59
mnuExit = (menu_small_menu+1);
60
mnuConfig = (menu_small_menu+3);
61
mnuRestoreData = (menu_small_menu+4);
62
mnuKeepData = (menu_small_menu+5);
63
mnuTooltips = (menu_small_menu+6);
64
mnuSchema = (menu_small_menu+7);
65
mnuColorConfig = (menu_small_menu+8);
66
mnu_meter_filtering = (menu_small_menu+9);
67
mnuConfigXcvr = (menu_small_menu+10);
68
save_me = (menu_small_menu+13);
69
mnuHelp = (menu_small_menu+19);
70
mnuOnLineHelp = (menu_small_menu+20);
71
mnuAbout = (menu_small_menu+21);
73
txt_encA = new Fl_Output( 425 - 90, 1, 90, 20, "");
74
txt_encA->box(FL_THIN_DOWN_BOX);
78
FreqDispA = new cFreqControl(1, 24, 210, 35, _("10"));
79
FreqDispA->box(FL_DOWN_BOX);
80
FreqDispA->color(FL_BACKGROUND_COLOR);
81
FreqDispA->selection_color(FL_BACKGROUND_COLOR);
82
FreqDispA->labeltype(FL_NORMAL_LABEL);
83
FreqDispA->labelfont(0);
84
FreqDispA->labelsize(14);
85
FreqDispA->labelcolor(FL_FOREGROUND_COLOR);
86
FreqDispA->align(Fl_Align(FL_ALIGN_CENTER));
87
FreqDispA->when(FL_WHEN_CHANGED);
88
FreqDispA->SetONOFFCOLOR (FL_YELLOW, FL_BLACK);
89
FreqDispA->setCallBack(movFreqA);
91
FreqDispB = new cFreqControl(213, 24, 210, 35, _("10"));
92
FreqDispB->box(FL_DOWN_BOX);
93
FreqDispB->color(FL_BACKGROUND_COLOR);
94
FreqDispB->selection_color(FL_BACKGROUND_COLOR);
95
FreqDispB->labeltype(FL_NORMAL_LABEL);
96
FreqDispB->labelfont(0);
97
FreqDispB->labelsize(14);
98
FreqDispB->labelcolor(FL_FOREGROUND_COLOR);
99
FreqDispB->align(Fl_Align(FL_ALIGN_CENTER));
100
FreqDispB->when(FL_WHEN_CHANGED);
101
FreqDispB->SetONOFFCOLOR (FL_YELLOW, FL_BLACK);
102
FreqDispB->setCallBack(movFreqB);
104
btnVol = new Fl_Light_Button(2, 125, 50, 18, _("Vol"));
105
btnVol->tooltip(_("Speaker on/off"));
106
btnVol->down_box(FL_THIN_DOWN_BOX);
108
btnVol->labelsize(12);
109
btnVol->callback((Fl_Callback*)cb_btnVol);
111
sldrVOLUME = new Fl_Wheel_Value_Slider(54, 125, 156, 18);
112
sldrVOLUME->tooltip(_("Adjust Audio Volume"));
114
sldrVOLUME->box(FL_THIN_DOWN_BOX);
115
sldrVOLUME->color(FL_BACKGROUND_COLOR);
116
sldrVOLUME->selection_color(FL_BACKGROUND_COLOR);
117
sldrVOLUME->labeltype(FL_NORMAL_LABEL);
118
sldrVOLUME->labelfont(0);
119
sldrVOLUME->labelsize(12);
120
sldrVOLUME->labelcolor(FL_FOREGROUND_COLOR);
121
sldrVOLUME->maximum(100);
123
sldrVOLUME->textsize(12);
124
sldrVOLUME->callback((Fl_Callback*)cb_sldrVOLUME);
125
sldrVOLUME->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
126
sldrVOLUME->when(FL_WHEN_CHANGED);
127
sldrVOLUME->reverse(true);
129
sldrRFGAIN = new Fl_Wheel_Value_Slider(54, 145, 156, 18, _("RF"));
130
sldrRFGAIN->tooltip(_("Adjust RF gain"));
132
sldrRFGAIN->box(FL_THIN_DOWN_BOX);
133
sldrRFGAIN->color(FL_BACKGROUND_COLOR);
134
sldrRFGAIN->selection_color(FL_BACKGROUND_COLOR);
135
sldrRFGAIN->labeltype(FL_NORMAL_LABEL);
136
sldrRFGAIN->labelfont(0);
137
sldrRFGAIN->labelsize(14);
138
sldrRFGAIN->labelcolor(FL_FOREGROUND_COLOR);
139
sldrRFGAIN->maximum(100);
141
sldrRFGAIN->value(15);
142
sldrRFGAIN->textsize(12);
143
sldrRFGAIN->callback((Fl_Callback*)cb_sldrRFGAIN);
144
sldrRFGAIN->align(Fl_Align(FL_ALIGN_LEFT));
145
sldrRFGAIN->when(FL_WHEN_CHANGED);
146
sldrRFGAIN->reverse(true);
148
sldrSQUELCH = new Fl_Wheel_Value_Slider(54, 165, 156, 18, _("SQL"));
149
sldrSQUELCH->tooltip(_("Adjust Squelch"));
150
sldrSQUELCH->type(5);
151
sldrSQUELCH->box(FL_THIN_DOWN_BOX);
152
sldrSQUELCH->color(FL_BACKGROUND_COLOR);
153
sldrSQUELCH->selection_color(FL_BACKGROUND_COLOR);
154
sldrSQUELCH->labeltype(FL_NORMAL_LABEL);
155
sldrSQUELCH->labelfont(0);
156
sldrSQUELCH->labelsize(14);
157
sldrSQUELCH->labelcolor(FL_FOREGROUND_COLOR);
158
sldrSQUELCH->maximum(100);
159
sldrSQUELCH->step(1);
160
sldrSQUELCH->value(15);
161
sldrSQUELCH->textsize(12);
162
sldrSQUELCH->callback((Fl_Callback*)cb_sldrSQUELCH);
163
sldrSQUELCH->align(Fl_Align(FL_ALIGN_LEFT));
164
sldrSQUELCH->when(FL_WHEN_CHANGED);
165
sldrSQUELCH->reverse(true);
167
btnIFsh = new Fl_Light_Button(214, 125, 50, 18, _("IFsh"));
168
btnIFsh->tooltip(_("IF Shift On/Off"));
169
btnIFsh->down_box(FL_THIN_DOWN_BOX);
170
btnIFsh->labelsize(12);
171
btnIFsh->callback((Fl_Callback*)cb_btnIFsh);
173
sldrIFSHIFT = new Fl_Wheel_Value_Slider(266, 125, 156, 18);
174
sldrIFSHIFT->tooltip(_("Adjust IF Shift"));
175
sldrIFSHIFT->type(5);
176
sldrIFSHIFT->box(FL_THIN_DOWN_BOX);
177
sldrIFSHIFT->color(FL_BACKGROUND_COLOR);
178
sldrIFSHIFT->selection_color(FL_BACKGROUND_COLOR);
179
sldrIFSHIFT->labeltype(FL_NORMAL_LABEL);
180
sldrIFSHIFT->labelfont(0);
181
sldrIFSHIFT->labelsize(12);
182
sldrIFSHIFT->labelcolor(FL_FOREGROUND_COLOR);
183
sldrIFSHIFT->minimum(-1000);
184
sldrIFSHIFT->maximum(1000);
185
sldrIFSHIFT->step(10);
186
sldrIFSHIFT->textsize(12);
187
sldrIFSHIFT->callback((Fl_Callback*)cb_sldrIFSHIFT);
188
sldrIFSHIFT->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
189
sldrIFSHIFT->when(FL_WHEN_CHANGED);
190
sldrIFSHIFT->reverse(true);
192
btnNotch = new Fl_Light_Button(214, 145, 50, 18, _("Nch"));
193
btnNotch->tooltip(_("Notch - Manual (off) Auto (on)"));
194
btnNotch->down_box(FL_THIN_DOWN_BOX);
195
btnNotch->labelsize(12);
196
btnNotch->callback((Fl_Callback*)cb_btnNotch);
198
sldrNOTCH = new Fl_Wheel_Value_Slider(266, 145, 156, 18);
199
sldrNOTCH->tooltip(_("Adjust Notch Frequency"));
201
sldrNOTCH->box(FL_THIN_DOWN_BOX);
202
sldrNOTCH->color(FL_BACKGROUND_COLOR);
203
sldrNOTCH->selection_color(FL_BACKGROUND_COLOR);
204
sldrNOTCH->labeltype(FL_NORMAL_LABEL);
205
sldrNOTCH->labelfont(0);
206
sldrNOTCH->labelsize(14);
207
sldrNOTCH->labelcolor(FL_FOREGROUND_COLOR);
208
sldrNOTCH->minimum(-1000);
209
sldrNOTCH->maximum(1000);
211
sldrNOTCH->textsize(12);
212
sldrNOTCH->callback((Fl_Callback*)cb_sldrNOTCH);
213
sldrNOTCH->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
214
sldrNOTCH->when(FL_WHEN_CHANGED);
215
sldrNOTCH->reverse(true);
217
btnNR = new Fl_Light_Button(214, 165, 50, 18, _("NR"));
218
btnNR->tooltip(_("Noise Reduction On/Off"));
219
btnNR->down_box(FL_THIN_DOWN_BOX);
220
btnNR->labelsize(12);
221
btnNR->callback((Fl_Callback*)cb_btnNR);
223
sldrNR = new Fl_Wheel_Value_Slider(266, 165, 156, 18);
224
sldrNR->tooltip(_("Adjust noise reduction"));
226
sldrNR->box(FL_THIN_DOWN_BOX);
227
sldrNR->color(FL_BACKGROUND_COLOR);
228
sldrNR->selection_color(FL_BACKGROUND_COLOR);
229
sldrNR->labeltype(FL_NORMAL_LABEL);
230
sldrNR->labelfont(0);
231
sldrNR->labelsize(12);
232
sldrNR->labelcolor(FL_FOREGROUND_COLOR);
233
sldrNR->maximum(100);
235
sldrNR->textsize(12);
236
sldrNR->callback((Fl_Callback*)cb_sldrNR);
237
sldrNR->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
238
sldrNR->when(FL_WHEN_CHANGED);
239
sldrNR->reverse(true);
241
btnDataPort = new Fl_Light_Button(2, 246, 50, 18, _("Data"));
242
btnDataPort->tooltip(_("Input on Data Port"));
243
btnDataPort->down_box(FL_THIN_DOWN_BOX);
244
btnDataPort->labelsize(12);
245
btnDataPort->callback((Fl_Callback*)cb_btnDataPort);
247
btnDataPort->value(progStatus.data_port);
249
sldrMICGAIN = new Fl_Wheel_Value_Slider(54, 185, 156, 18, _("MIC"));
250
sldrMICGAIN->tooltip(_("Adjust Mic Gain"));
251
sldrMICGAIN->type(5);
252
sldrMICGAIN->box(FL_THIN_DOWN_BOX);
253
sldrMICGAIN->color(FL_BACKGROUND_COLOR);
254
sldrMICGAIN->selection_color(FL_BACKGROUND_COLOR);
255
sldrMICGAIN->labeltype(FL_NORMAL_LABEL);
256
sldrMICGAIN->labelfont(0);
257
sldrMICGAIN->labelsize(14);
258
sldrMICGAIN->labelcolor(FL_FOREGROUND_COLOR);
259
sldrMICGAIN->maximum(100);
260
sldrMICGAIN->step(1);
261
sldrMICGAIN->textsize(12);
262
sldrMICGAIN->callback((Fl_Callback*)cb_sldrMICGAIN);
263
sldrMICGAIN->align(Fl_Align(FL_ALIGN_LEFT));
264
sldrMICGAIN->when(FL_WHEN_CHANGED);
265
sldrMICGAIN->reverse(true);
267
sldrPOWER = new Fl_Wheel_Value_Slider(266, 185, 156, 18, _("PWR"));
268
sldrPOWER->tooltip(_("Adjust power level"));
270
sldrPOWER->box(FL_THIN_DOWN_BOX);
271
sldrPOWER->color(FL_BACKGROUND_COLOR);
272
sldrPOWER->selection_color(FL_BACKGROUND_COLOR);
273
sldrPOWER->labeltype(FL_NORMAL_LABEL);
274
sldrPOWER->labelfont(0);
275
sldrPOWER->labelsize(14);
276
sldrPOWER->labelcolor(FL_FOREGROUND_COLOR);
277
sldrPOWER->maximum(100);
279
sldrPOWER->value(15);
280
sldrPOWER->textsize(12);
281
sldrPOWER->callback((Fl_Callback*)cb_sldrPOWER);
282
sldrPOWER->align(Fl_Align(FL_ALIGN_LEFT));
283
sldrPOWER->when(FL_WHEN_CHANGED);
284
sldrPOWER->reverse(true);
286
btnA = new Fl_Light_Button(212, 62, 52, 20, _("vfoA"));
287
btnA->tooltip(_("Rx-A / Tx-A"));
288
btnA->down_box(FL_THIN_DOWN_BOX);
290
btnA->callback((Fl_Callback*)cb_btnA);
293
btnB = new Fl_Light_Button(265, 62, 52, 20, _("vfoB"));
294
btnB->tooltip(_("Rx-B / Tx-B"));
295
btnB->down_box(FL_THIN_DOWN_BOX);
297
btnB->callback((Fl_Callback*)cb_btnB);
300
btn_K3_swapAB = new Fl_Button(265, 62, 52, 20, _("A/B"));
301
btn_K3_swapAB->tooltip(_("Swap A/B"));
302
btn_K3_swapAB->down_box(FL_DOWN_BOX);
303
btn_K3_swapAB->labelsize(12);
304
btn_K3_swapAB->callback((Fl_Callback*)cb_btn_K3_swapAB);
305
btn_K3_swapAB->hide();
307
btnAswapB = new Fl_Button(318, 62, 52, 20, _("A<->B"));
308
btnAswapB->tooltip(_("Left click:Swap A/B\nRight click:Copy A to B"));
309
btnAswapB->down_box(FL_DOWN_BOX);
310
btnAswapB->labelsize(12);
311
btnAswapB->callback((Fl_Callback*)cb_btnAswapB);
313
btnSplit = new Fl_Light_Button(371, 62, 52, 20, _("Split"));
314
btnSplit->tooltip(_("Rx-A / Tx-B"));
315
btnSplit->down_box(FL_THIN_DOWN_BOX);
316
btnSplit->labelsize(12);
317
btnSplit->callback((Fl_Callback*)cb_btnSplit);
318
btnSplit->value(progStatus.split);
320
opBW = new Fl_ComboBox(212, 84, 105, 18, _("Bandwidth"));
321
opBW->tooltip(_("Select Transceiver Bandwidth"));
322
opBW->box(FL_NO_BOX);
323
opBW->color(FL_BACKGROUND2_COLOR);
324
opBW->selection_color(FL_BACKGROUND_COLOR);
325
opBW->labeltype(FL_NORMAL_LABEL);
328
opBW->labelcolor(FL_FOREGROUND_COLOR);
329
opBW->callback((Fl_Callback*)cb_opBW);
330
opBW->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
331
opBW->when(FL_WHEN_RELEASE);
334
btnDSP = new Fl_Button(212, 84, 18, 18, _("L"));
335
btnDSP->callback((Fl_Callback*)cb_btnDSP);
338
opDSP_lo = new Fl_ComboBox(231, 84, 86, 18, _("Lo Cut"));
339
opDSP_lo->tooltip(_("Lo Cut Freq"));
340
opDSP_lo->box(FL_FLAT_BOX);
341
opDSP_lo->color(FL_BACKGROUND2_COLOR);
342
opDSP_lo->selection_color(FL_BACKGROUND_COLOR);
343
opDSP_lo->labeltype(FL_NORMAL_LABEL);
344
opDSP_lo->labelfont(0);
345
opDSP_lo->labelsize(12);
346
opDSP_lo->labelcolor(FL_FOREGROUND_COLOR);
347
opDSP_lo->callback((Fl_Callback*)cb_opDSP_lo);
348
opDSP_lo->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
349
opDSP_lo->when(FL_WHEN_RELEASE);
353
opDSP_hi = new Fl_ComboBox(231, 84, 86, 18, _("Hi Cut"));
354
opDSP_hi->tooltip(_("Hi Cut Freq"));
355
opDSP_hi->box(FL_FLAT_BOX);
356
opDSP_hi->color(FL_BACKGROUND2_COLOR);
357
opDSP_hi->selection_color(FL_BACKGROUND_COLOR);
358
opDSP_hi->labeltype(FL_NORMAL_LABEL);
359
opDSP_hi->labelfont(0);
360
opDSP_hi->labelsize(12);
361
opDSP_hi->labelcolor(FL_FOREGROUND_COLOR);
362
opDSP_hi->callback((Fl_Callback*)cb_opDSP_hi);
363
opDSP_hi->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
364
opDSP_hi->when(FL_WHEN_RELEASE);
368
opMODE = new Fl_ComboBox(318, 84, 105, 18, _("Mode"));
369
opMODE->tooltip(_("Select transceiver operating mode"));
370
opMODE->box(FL_NO_BOX);
371
opMODE->color(FL_BACKGROUND2_COLOR);
372
opMODE->selection_color(FL_BACKGROUND_COLOR);
373
opMODE->labeltype(FL_NORMAL_LABEL);
374
opMODE->labelfont(0);
375
opMODE->labelsize(12);
376
opMODE->labelcolor(FL_FOREGROUND_COLOR);
377
opMODE->callback((Fl_Callback*)cb_opMODE);
378
opMODE->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
379
opMODE->when(FL_WHEN_RELEASE);
382
btn_show_controls = new Fl_Button(3, 206, 18, 18, _("@-22->"));
383
btn_show_controls->tooltip(_("Show/Hide controls"));
384
btn_show_controls->callback((Fl_Callback*)cb_btn_show_controls);
386
btnAttenuator = new Fl_Light_Button(26, 206, 60, 18, _("Att"));
387
btnAttenuator->tooltip(_("Attenuator On/Off"));
388
btnAttenuator->down_box(FL_THIN_DOWN_BOX);
389
btnAttenuator->labelsize(12);
390
btnAttenuator->callback((Fl_Callback*)cb_btnAttenuator);
392
btnPreamp = new Fl_Light_Button(93, 206, 60, 18, _("Pre"));
393
btnPreamp->tooltip(_("Preamp On/Off"));
394
btnPreamp->down_box(FL_THIN_DOWN_BOX);
395
btnPreamp->labelsize(12);
396
btnPreamp->callback((Fl_Callback*)cb_btnPreamp);
398
btnNOISE = new Fl_Light_Button(160, 206, 60, 18, _("NB"));
399
btnNOISE->tooltip(_("Noise Blanker On/Off"));
400
btnNOISE->down_box(FL_THIN_DOWN_BOX);
401
btnNOISE->labelsize(12);
402
btnNOISE->callback((Fl_Callback*)cb_btnNOISE);
404
btnAutoNotch = new Fl_Light_Button(227, 206, 60, 18, _("AN"));
405
btnAutoNotch->tooltip(_("Auto Notch On/Off"));
406
btnAutoNotch->down_box(FL_THIN_DOWN_BOX);
407
btnAutoNotch->labelsize(12);
408
btnAutoNotch->callback((Fl_Callback*)cb_btnAutoNotch);
410
btnTune = new Fl_Button(294, 206, 60, 18, _("Tune"));
411
btnTune->tooltip(_("Momentary Tune"));
412
btnTune->callback((Fl_Callback*)cb_btnTune);
414
btnPTT = new Fl_Light_Button(362, 206, 60, 18, _("PTT"));
415
btnPTT->tooltip(_("Xmt On/Off"));
416
btnPTT->down_box(FL_THIN_DOWN_BOX);
417
btnPTT->labelsize(12);
418
btnPTT->callback((Fl_Callback*)cb_btnPTT);
420
Fl_Group* sm_grp1 = new Fl_Group(1, 62, 210, 60);
421
sm_grp1->box(FL_DOWN_BOX);
423
grpMeters = new Fl_Group(3, 63, 206, 57);
424
grpMeters->box(FL_FLAT_BOX);
426
scaleSmeter = new Fl_Box(3, 63, 206, 20);
427
scaleSmeter->box(FL_FLAT_BOX);
428
scaleSmeter->image(image_S60);
430
btnALC_SWR = new Fl_Button(3, 63, 206, 20);
431
btnALC_SWR->tooltip(_("Press SWR / ALC"));
432
btnALC_SWR->box(FL_FLAT_BOX);
433
btnALC_SWR->down_box(FL_FLAT_BOX);
434
btnALC_SWR->image(image_SWR);
435
btnALC_SWR->callback((Fl_Callback*)cb_btnALC_SWR);
438
sldrRcvSignal = new Fl_SigBar(5, 85, 200, 6);
439
sldrRcvSignal->box(FL_FLAT_BOX);
440
sldrRcvSignal->color(FL_BACKGROUND_COLOR);
441
sldrRcvSignal->selection_color(FL_BACKGROUND_COLOR);
442
sldrRcvSignal->labeltype(FL_NORMAL_LABEL);
443
sldrRcvSignal->labelfont(0);
444
sldrRcvSignal->labelsize(14);
445
sldrRcvSignal->labelcolor(FL_FOREGROUND_COLOR);
446
sldrRcvSignal->align(Fl_Align(FL_ALIGN_CENTER));
447
sldrRcvSignal->when(FL_WHEN_RELEASE);
448
sldrRcvSignal->hide();
449
sldrRcvSignal->minimum(0);
450
sldrRcvSignal->maximum(100);
452
sldrALC = new Fl_SigBar(5, 85, 200, 6);
453
sldrALC->box(FL_FLAT_BOX);
454
sldrALC->color(FL_BACKGROUND_COLOR);
455
sldrALC->selection_color(FL_BACKGROUND_COLOR);
456
sldrALC->labeltype(FL_NORMAL_LABEL);
457
sldrALC->labelfont(0);
458
sldrALC->labelsize(14);
459
sldrALC->labelcolor(FL_FOREGROUND_COLOR);
460
sldrALC->align(Fl_Align(FL_ALIGN_CENTER));
461
sldrALC->when(FL_WHEN_RELEASE);
464
sldrALC->maximum(100);
466
sldrSWR = new Fl_SigBar(5, 85, 200, 6);
467
sldrSWR->box(FL_FLAT_BOX);
468
sldrSWR->color(FL_BACKGROUND_COLOR);
469
sldrSWR->selection_color(FL_BACKGROUND_COLOR);
470
sldrSWR->labeltype(FL_NORMAL_LABEL);
471
sldrSWR->labelfont(0);
472
sldrSWR->labelsize(14);
473
sldrSWR->labelcolor(FL_FOREGROUND_COLOR);
474
sldrSWR->align(Fl_Align(FL_ALIGN_CENTER));
475
sldrSWR->when(FL_WHEN_RELEASE);
478
sldrSWR->maximum(100);
480
sldrFwdPwr = new Fl_SigBar(5, 92, 200, 6);
481
sldrFwdPwr->box(FL_FLAT_BOX);
482
sldrFwdPwr->color(FL_BACKGROUND_COLOR);
483
sldrFwdPwr->selection_color(FL_BACKGROUND_COLOR);
484
sldrFwdPwr->labeltype(FL_NORMAL_LABEL);
485
sldrFwdPwr->labelfont(0);
486
sldrFwdPwr->labelsize(14);
487
sldrFwdPwr->labelcolor(FL_FOREGROUND_COLOR);
488
sldrFwdPwr->align(Fl_Align(FL_ALIGN_CENTER));
489
sldrFwdPwr->when(FL_WHEN_RELEASE);
491
sldrFwdPwr->minimum(0);
492
sldrFwdPwr->maximum(100);
494
scalePower = new Fl_Button(3, 99, 206, 20);
495
scalePower->tooltip(_("right-click to select power scale"));
496
scalePower->box(FL_FLAT_BOX);
497
scalePower->down_box(FL_FLAT_BOX);
498
scalePower->image(image_P100);
499
scalePower->callback((Fl_Callback*)cb_scalePower);
505
boxControl = new Fl_Box(3, 231, 130, 17, _("Auxilliary Controls:"));
506
boxControl->box(FL_FLAT_BOX);
507
boxControl->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
509
btnAuxRTS = new Fl_Light_Button(218, 230, 60, 18, _("RTS"));
510
btnAuxRTS->tooltip(_("RTS control pin"));
511
btnAuxRTS->down_box(FL_THIN_DOWN_BOX);
512
btnAuxRTS->labelsize(12);
513
btnAuxRTS->callback((Fl_Callback*)cb_btnAuxRTS);
514
btnAuxRTS->value(progStatus.aux_rts);
516
btnAuxDTR = new Fl_Light_Button(146, 230, 60, 18, _("DTR"));
517
btnAuxDTR->tooltip(_("DTR control pin"));
518
btnAuxDTR->down_box(FL_THIN_DOWN_BOX);
519
btnAuxDTR->labelsize(12);
520
btnAuxDTR->callback((Fl_Callback*)cb_btnAuxDTR);
521
btnAuxDTR->value(progStatus.aux_dtr);
523
cntRIT = new Fl_Counter(213, 104, 54, 18, _("R"));
524
cntRIT->tooltip(_("RIT"));
526
cntRIT->labelsize(12);
527
cntRIT->minimum(-1000);
528
cntRIT->maximum(1000);
530
cntRIT->callback((Fl_Callback*)cb_cntRIT);
531
cntRIT->align(Fl_Align(FL_ALIGN_RIGHT));
533
cntXIT = new Fl_Counter(283, 104, 54, 18, _("X"));
534
cntXIT->tooltip(_("XIT"));
536
cntXIT->labelsize(12);
537
cntXIT->minimum(-1000);
538
cntXIT->maximum(1000);
540
cntXIT->callback((Fl_Callback*)cb_cntXIT);
541
cntXIT->align(Fl_Align(FL_ALIGN_RIGHT));
543
cntBFO = new Fl_Counter(355, 104, 54, 18, _("B"));
544
cntBFO->tooltip(_("BFO"));
546
cntBFO->labelsize(12);
548
cntBFO->maximum(1000);
551
cntBFO->callback((Fl_Callback*)cb_cntBFO);
552
cntBFO->align(Fl_Align(FL_ALIGN_RIGHT));
554
btnInitializing = new Fl_Button(0, 23, 424, 100, _("Initializing\n\nPlease wait"));
555
btnInitializing->color((Fl_Color)206);
556
btnInitializing->labelfont(1);
557
btnInitializing->labelsize(24);
558
btnInitializing->hide();
560
tabs550 = new Fl_Tabs(1, 252, 422, 70);
561
tabs550->selection_color(FL_LIGHT1);
564
tt550_CW = new Fl_Group(2, 272, 420, 50, _("CW"));
565
tt550_CW->color(FL_LIGHT1);
566
tt550_CW->selection_color(FL_LIGHT1);
568
cnt_tt550_cw_wpm = new Fl_Counter(7, 277, 60, 22, _("wpm"));
569
cnt_tt550_cw_wpm->type(1);
570
cnt_tt550_cw_wpm->minimum(5);
571
cnt_tt550_cw_wpm->maximum(80);
572
cnt_tt550_cw_wpm->step(1);
573
cnt_tt550_cw_wpm->value(24);
574
cnt_tt550_cw_wpm->callback((Fl_Callback*)cb_cnt_tt550_cw_wpm);
575
cnt_tt550_cw_wpm->value(progStatus.tt550_cw_wpm);
577
cnt_tt550_cw_weight = new Fl_Counter(74, 277, 60, 22, _("Weight"));
578
cnt_tt550_cw_weight->type(1);
579
cnt_tt550_cw_weight->minimum(0.75);
580
cnt_tt550_cw_weight->maximum(1.5);
581
cnt_tt550_cw_weight->step(0.05);
582
cnt_tt550_cw_weight->value(1);
583
cnt_tt550_cw_weight->callback((Fl_Callback*)cb_cnt_tt550_cw_weight);
584
cnt_tt550_cw_weight->value(progStatus.tt550_cw_weight);
586
cnt_tt550_cw_qsk = new Fl_Counter(142, 277, 60, 22, _("Delay"));
587
cnt_tt550_cw_qsk->tooltip(_("QSK delay (msec)"));
588
cnt_tt550_cw_qsk->type(1);
589
cnt_tt550_cw_qsk->minimum(0);
590
cnt_tt550_cw_qsk->maximum(100);
591
cnt_tt550_cw_qsk->step(1);
592
cnt_tt550_cw_qsk->value(20);
593
cnt_tt550_cw_qsk->callback((Fl_Callback*)cb_cnt_tt550_cw_qsk);
594
cnt_tt550_cw_qsk->value(progStatus.tt550_cw_qsk);
596
cnt_tt550_cw_vol = new Fl_Counter(209, 277, 60, 22, _("S-T vol"));
597
cnt_tt550_cw_vol->tooltip(_("Side tone volume"));
598
cnt_tt550_cw_vol->type(1);
599
cnt_tt550_cw_vol->minimum(5);
600
cnt_tt550_cw_vol->maximum(80);
601
cnt_tt550_cw_vol->step(1);
602
cnt_tt550_cw_vol->value(24);
603
cnt_tt550_cw_vol->callback((Fl_Callback*)cb_cnt_tt550_cw_vol);
604
cnt_tt550_cw_vol->value(progStatus.tt550_cw_vol);
606
cnt_tt550_cw_spot = new Fl_Counter(277, 277, 60, 22, _("Spot Vol"));
607
cnt_tt550_cw_spot->tooltip(_("Spot volume"));
608
cnt_tt550_cw_spot->type(1);
609
cnt_tt550_cw_spot->minimum(0);
610
cnt_tt550_cw_spot->maximum(100);
611
cnt_tt550_cw_spot->step(1);
612
cnt_tt550_cw_spot->value(20);
613
cnt_tt550_cw_spot->callback((Fl_Callback*)cb_cnt_tt550_cw_spot);
614
cnt_tt550_cw_spot->value(progStatus.tt550_cw_spot);
616
btn_tt550_enable_keyer = new Fl_Check_Button(346, 280, 70, 15, _("Keyer"));
617
btn_tt550_enable_keyer->tooltip(_("Enable keyer"));
618
btn_tt550_enable_keyer->down_box(FL_DOWN_BOX);
619
btn_tt550_enable_keyer->callback((Fl_Callback*)cb_btn_tt550_enable_keyer);
620
btn_tt550_enable_keyer->value(progStatus.tt550_enable_keyer);
624
tt550_VOX = new Fl_Group(2, 272, 420, 50, _("Vox"));
627
cnt_tt550_vox_gain = new Fl_Counter(60, 277, 70, 22, _("gain"));
628
cnt_tt550_vox_gain->type(1);
629
cnt_tt550_vox_gain->minimum(0);
630
cnt_tt550_vox_gain->maximum(100);
631
cnt_tt550_vox_gain->step(1);
632
cnt_tt550_vox_gain->callback((Fl_Callback*)cb_cnt_tt550_vox_gain);
633
cnt_tt550_vox_gain->value(progStatus.tt550_vox_gain);
635
cnt_tt550_anti_vox = new Fl_Counter(136, 277, 70, 22, _("anti"));
636
cnt_tt550_anti_vox->type(1);
637
cnt_tt550_anti_vox->minimum(0);
638
cnt_tt550_anti_vox->maximum(100);
639
cnt_tt550_anti_vox->step(1);
640
cnt_tt550_anti_vox->callback((Fl_Callback*)cb_cnt_tt550_anti_vox);
641
cnt_tt550_anti_vox->value(progStatus.tt550_vox_anti);
643
cnt_tt550_vox_hang = new Fl_Counter(212, 277, 70, 22, _("hang"));
644
cnt_tt550_vox_hang->type(1);
645
cnt_tt550_vox_hang->minimum(0);
646
cnt_tt550_vox_hang->maximum(100);
647
cnt_tt550_vox_hang->step(1);
648
cnt_tt550_vox_hang->callback((Fl_Callback*)cb_cnt_tt550_vox_hang);
649
cnt_tt550_vox_hang->value(progStatus.tt550_vox_hang);
651
btn_tt550_vox = new Fl_Light_Button(289, 277, 70, 22, _("VOX"));
652
btn_tt550_vox->callback((Fl_Callback*)cb_btn_tt550_vox);
653
btn_tt550_vox->value(progStatus.tt550_vox_onoff);
657
tt550_Speech = new Fl_Group(2, 272, 420, 50, _("Spch"));
658
tt550_Speech->hide();
660
btn_tt550_CompON = new Fl_Light_Button(244, 277, 70, 22, _("On"));
661
btn_tt550_CompON->callback((Fl_Callback*)cb_btn_tt550_CompON);
662
btn_tt550_CompON->value(progStatus.tt550_compON);
664
cnt_tt550_compression = new Fl_Counter(167, 277, 70, 22, _("Comp"));
665
cnt_tt550_compression->type(1);
666
cnt_tt550_compression->minimum(0);
667
cnt_tt550_compression->maximum(100);
668
cnt_tt550_compression->step(1);
669
cnt_tt550_compression->callback((Fl_Callback*)cb_cnt_tt550_compression);
670
cnt_tt550_compression->value(progStatus.tt550_compression);
672
cnt_tt550_mon_vol = new Fl_Counter(91, 277, 70, 22, _("Mon vol"));
673
cnt_tt550_mon_vol->tooltip(_("Side tone volume"));
674
cnt_tt550_mon_vol->type(1);
675
cnt_tt550_mon_vol->minimum(0);
676
cnt_tt550_mon_vol->maximum(100);
677
cnt_tt550_mon_vol->step(1);
678
cnt_tt550_mon_vol->value(25);
679
cnt_tt550_mon_vol->callback((Fl_Callback*)cb_cnt_tt550_mon_vol);
680
cnt_tt550_mon_vol->value(progStatus.tt550_mon_vol);
684
tt550_Audio = new Fl_Group(2, 272, 420, 50, _("Audio"));
687
cnt_tt550_line_out = new Fl_Counter(114, 282, 69, 22, _("line out"));
688
cnt_tt550_line_out->type(1);
689
cnt_tt550_line_out->minimum(0);
690
cnt_tt550_line_out->maximum(100);
691
cnt_tt550_line_out->step(1);
692
cnt_tt550_line_out->value(20);
693
cnt_tt550_line_out->callback((Fl_Callback*)cb_cnt_tt550_line_out);
694
cnt_tt550_line_out->align(Fl_Align(FL_ALIGN_LEFT));
695
cnt_tt550_line_out->value(progStatus.tt550_line_out);
697
btnAccInp = new Fl_Check_Button(197, 285, 82, 15, _("Acc Inp."));
698
btnAccInp->tooltip(_("Enable to use accessory audio input"));
699
btnAccInp->down_box(FL_DOWN_BOX);
700
btnAccInp->callback((Fl_Callback*)cb_btnAccInp);
701
btnAccInp->value(progStatus.tt550_use_line_in);
705
tt550_Rx = new Fl_Group(2, 272, 420, 50, _("RX"));
708
cbo_tt550_nb_level = new Fl_ComboBox(50, 277, 80, 22, _("NB level"));
709
cbo_tt550_nb_level->tooltip(_("Select Transceiver"));
710
cbo_tt550_nb_level->box(FL_DOWN_BOX);
711
cbo_tt550_nb_level->color(FL_BACKGROUND_COLOR);
712
cbo_tt550_nb_level->selection_color(FL_BACKGROUND_COLOR);
713
cbo_tt550_nb_level->labeltype(FL_NORMAL_LABEL);
714
cbo_tt550_nb_level->labelfont(0);
715
cbo_tt550_nb_level->labelsize(14);
716
cbo_tt550_nb_level->labelcolor(FL_FOREGROUND_COLOR);
717
cbo_tt550_nb_level->callback((Fl_Callback*)cb_cbo_tt550_nb_level);
718
cbo_tt550_nb_level->align(Fl_Align(FL_ALIGN_BOTTOM));
719
cbo_tt550_nb_level->when(FL_WHEN_RELEASE);
720
cbo_tt550_nb_level->index(progStatus.tt550_nb_level);
721
cbo_tt550_nb_level->end();
723
cbo_tt550_agc_level = new Fl_ComboBox(150, 277, 80, 22, _("AGC"));
724
cbo_tt550_agc_level->tooltip(_("Select Transceiver"));
725
cbo_tt550_agc_level->box(FL_DOWN_BOX);
726
cbo_tt550_agc_level->color(FL_BACKGROUND_COLOR);
727
cbo_tt550_agc_level->selection_color(FL_BACKGROUND_COLOR);
728
cbo_tt550_agc_level->labeltype(FL_NORMAL_LABEL);
729
cbo_tt550_agc_level->labelfont(0);
730
cbo_tt550_agc_level->labelsize(14);
731
cbo_tt550_agc_level->labelcolor(FL_FOREGROUND_COLOR);
732
cbo_tt550_agc_level->callback((Fl_Callback*)cb_cbo_tt550_agc_level);
733
cbo_tt550_agc_level->align(Fl_Align(FL_ALIGN_BOTTOM));
734
cbo_tt550_agc_level->when(FL_WHEN_RELEASE);
735
cbo_tt550_agc_level->index(progStatus.tt550_agc_level);
736
cbo_tt550_agc_level->end();
738
cnt_tt550_vfo_adj = new Fl_Counter(245, 277, 120, 22, _("Vfo Adj(ppm)"));
739
cnt_tt550_vfo_adj->callback((Fl_Callback*)cb_cnt_tt550_vfo_adj);
740
cnt_tt550_vfo_adj->align(Fl_Align(34));
741
cnt_tt550_vfo_adj->value(progStatus.vfo_adj);
742
cnt_tt550_vfo_adj->lstep(1.0);
746
tt550_Tx = new Fl_Group(2, 272, 420, 50, _("TX"));
749
btn_tt550_enable_xmtr = new Fl_Check_Button(10, 281, 70, 15, _("Tx ON"));
750
btn_tt550_enable_xmtr->down_box(FL_DOWN_BOX);
751
btn_tt550_enable_xmtr->value(1);
752
btn_tt550_enable_xmtr->callback((Fl_Callback*)cb_btn_tt550_enable_xmtr);
753
btn_tt550_enable_xmtr->value(progStatus.tt550_enable_xmtr);
755
btn_tt550_enable_tloop = new Fl_Check_Button(87, 281, 70, 15, _("Tloop"));
756
btn_tt550_enable_tloop->down_box(FL_DOWN_BOX);
757
btn_tt550_enable_tloop->callback((Fl_Callback*)cb_btn_tt550_enable_tloop);
758
btn_tt550_enable_tloop->value(progStatus.tt550_enable_tloop);
760
btn_tt550_tuner_bypass = new Fl_Check_Button(164, 281, 70, 15, _("Tuner"));
761
btn_tt550_tuner_bypass->tooltip(_("Check to bypass tuner"));
762
btn_tt550_tuner_bypass->down_box(FL_DOWN_BOX);
763
btn_tt550_tuner_bypass->callback((Fl_Callback*)cb_btn_tt550_tuner_bypass);
765
op_tt550_XmtBW = new Fl_ComboBox(241, 277, 100, 22, _("Xmt BW"));
766
op_tt550_XmtBW->tooltip(_("Select Transceiver Bandwidth"));
767
op_tt550_XmtBW->box(FL_DOWN_BOX);
768
op_tt550_XmtBW->color(FL_BACKGROUND_COLOR);
769
op_tt550_XmtBW->selection_color(FL_BACKGROUND_COLOR);
770
op_tt550_XmtBW->labeltype(FL_NORMAL_LABEL);
771
op_tt550_XmtBW->labelfont(0);
772
op_tt550_XmtBW->labelsize(12);
773
op_tt550_XmtBW->labelcolor(FL_FOREGROUND_COLOR);
774
op_tt550_XmtBW->callback((Fl_Callback*)cb_op_tt550_XmtBW);
775
op_tt550_XmtBW->align(Fl_Align(FL_ALIGN_BOTTOM));
776
op_tt550_XmtBW->when(FL_WHEN_RELEASE);
777
op_tt550_XmtBW->index(progStatus.tt550_xmt_bw);
778
op_tt550_XmtBW->end();
780
btn_tt550_use_xmt_bw = new Fl_Check_Button(345, 281, 21, 15, _("Enable"));
781
btn_tt550_use_xmt_bw->tooltip(_("Use Xmt BW setting"));
782
btn_tt550_use_xmt_bw->down_box(FL_DOWN_BOX);
783
btn_tt550_use_xmt_bw->callback((Fl_Callback*)cb_btn_tt550_use_xmt_bw);
784
btn_tt550_use_xmt_bw->align(Fl_Align(FL_ALIGN_RIGHT));
785
btn_tt550_use_xmt_bw->value(progStatus.tt550_use_xmt_bw);
789
tt550_302A = new Fl_Group(2, 272, 420, 50, _("302-A"));
792
cnt_tt550_keypad_time_out = new Fl_Counter(31, 277, 120, 21, _("Time out"));
793
cnt_tt550_keypad_time_out->tooltip(_("Clear M302 keypad after ## secs"));
794
cnt_tt550_keypad_time_out->minimum(0.5);
795
cnt_tt550_keypad_time_out->maximum(10);
796
cnt_tt550_keypad_time_out->value(2);
797
cnt_tt550_keypad_time_out->callback((Fl_Callback*)cb_cnt_tt550_keypad_time_out);
798
cnt_tt550_keypad_time_out->align(Fl_Align(34));
799
cnt_tt550_keypad_time_out->value(progStatus.tt550_keypad_timeout/1000.0);
800
cnt_tt550_keypad_time_out->step(0.1);
801
cnt_tt550_keypad_time_out->lstep(1.0);
803
cnt_tt550_encoder_sensitivity = new Fl_Counter(191, 277, 80, 21, _("Sensitivity"));
804
cnt_tt550_encoder_sensitivity->tooltip(_("1 - most sensitive"));
805
cnt_tt550_encoder_sensitivity->type(1);
806
cnt_tt550_encoder_sensitivity->minimum(1);
807
cnt_tt550_encoder_sensitivity->maximum(25);
808
cnt_tt550_encoder_sensitivity->step(1);
809
cnt_tt550_encoder_sensitivity->value(10);
810
cnt_tt550_encoder_sensitivity->callback((Fl_Callback*)cb_cnt_tt550_encoder_sensitivity);
811
cnt_tt550_encoder_sensitivity->value(progStatus.tt550_encoder_sensitivity);
813
sel_tt550_encoder_step = new Fl_Choice(312, 277, 72, 21, _("Step size"));
814
sel_tt550_encoder_step->down_box(FL_BORDER_BOX);
815
sel_tt550_encoder_step->callback((Fl_Callback*)cb_sel_tt550_encoder_step);
816
sel_tt550_encoder_step->align(Fl_Align(FL_ALIGN_BOTTOM));
817
sel_tt550_encoder_step->add("1|10|100|1 K|10 K");
818
sel_tt550_encoder_step->value(progStatus.tt550_encoder_step);
822
tt550_302B = new Fl_Group(2, 272, 420, 50, _("302-B"));
825
sel_tt550_F1_func = new Fl_Choice(34, 277, 99, 22, _("F1"));
826
sel_tt550_F1_func->tooltip(_("Assign Func Key"));
827
sel_tt550_F1_func->down_box(FL_BORDER_BOX);
828
sel_tt550_F1_func->callback((Fl_Callback*)cb_sel_tt550_F1_func);
829
sel_tt550_F1_func->add("None|Clear|CW++|CW--|Band++|Band--|Step++|Step--");
830
sel_tt550_F1_func->value(progStatus.tt550_F1_func);
832
sel_tt550_F2_func = new Fl_Choice(169, 277, 99, 22, _("F2"));
833
sel_tt550_F2_func->tooltip(_("Assign Func Key"));
834
sel_tt550_F2_func->down_box(FL_BORDER_BOX);
835
sel_tt550_F2_func->callback((Fl_Callback*)cb_sel_tt550_F2_func);
836
sel_tt550_F2_func->add("None|Clear|CW++|CW--|Band++|Band--|Step++|Step--");
837
sel_tt550_F2_func->value(progStatus.tt550_F2_func);
839
sel_tt550_F3_func = new Fl_Choice(300, 277, 99, 22, _("F3"));
840
sel_tt550_F3_func->tooltip(_("Assign Func Key"));
841
sel_tt550_F3_func->down_box(FL_BORDER_BOX);
842
sel_tt550_F3_func->callback((Fl_Callback*)cb_sel_tt550_F3_func);
843
sel_tt550_F3_func->add("None|Clear|CW++|CW--|Band++|Band--|Step++|Step--");
844
sel_tt550_F3_func->value(progStatus.tt550_F3_func);
850
tabsGeneric = new Fl_Tabs(1, 252, 422, 70);
851
tabsGeneric->selection_color(FL_LIGHT1);
853
genericBands = new Fl_Group(2, 271, 420, 49, _("Bands"));
855
btnBandSelect_1 = new Fl_Button(4, 278, 60, 18, _("1.8"));
856
btnBandSelect_1->tooltip(_("160m Band"));
857
btnBandSelect_1->color((Fl_Color)246);
858
btnBandSelect_1->callback((Fl_Callback*)cb_btnBandSelect_1);
860
btnBandSelect_2 = new Fl_Button(74, 278, 60, 18, _("3.5"));
861
btnBandSelect_2->tooltip(_("80m band"));
862
btnBandSelect_2->color((Fl_Color)246);
863
btnBandSelect_2->callback((Fl_Callback*)cb_btnBandSelect_2);
865
btnBandSelect_3 = new Fl_Button(145, 278, 60, 18, _("7"));
866
btnBandSelect_3->tooltip(_("40m band"));
867
btnBandSelect_3->color((Fl_Color)246);
868
btnBandSelect_3->callback((Fl_Callback*)cb_btnBandSelect_3);
869
btnBandSelect_3->align(Fl_Align(FL_ALIGN_CLIP));
871
btnBandSelect_4 = new Fl_Button(216, 278, 60, 18, _("10"));
872
btnBandSelect_4->tooltip(_("30m band"));
873
btnBandSelect_4->color((Fl_Color)246);
874
btnBandSelect_4->callback((Fl_Callback*)cb_btnBandSelect_4);
876
btnBandSelect_5 = new Fl_Button(287, 278, 60, 18, _("14"));
877
btnBandSelect_5->tooltip(_("20m band"));
878
btnBandSelect_5->color((Fl_Color)246);
879
btnBandSelect_5->callback((Fl_Callback*)cb_btnBandSelect_5);
881
btnBandSelect_6 = new Fl_Button(358, 278, 60, 18, _("18"));
882
btnBandSelect_6->tooltip(_("17m band"));
883
btnBandSelect_6->color((Fl_Color)246);
884
btnBandSelect_6->callback((Fl_Callback*)cb_btnBandSelect_6);
886
btnBandSelect_7 = new Fl_Button(4, 299, 60, 18, _("21"));
887
btnBandSelect_7->tooltip(_("15m band"));
888
btnBandSelect_7->color((Fl_Color)246);
889
btnBandSelect_7->callback((Fl_Callback*)cb_btnBandSelect_7);
891
btnBandSelect_8 = new Fl_Button(74, 299, 60, 18, _("24"));
892
btnBandSelect_8->tooltip(_("12m band"));
893
btnBandSelect_8->color((Fl_Color)246);
894
btnBandSelect_8->callback((Fl_Callback*)cb_btnBandSelect_8);
896
btnBandSelect_9 = new Fl_Button(145, 299, 60, 18, _("28"));
897
btnBandSelect_9->tooltip(_("10m band"));
898
btnBandSelect_9->color((Fl_Color)246);
899
btnBandSelect_9->callback((Fl_Callback*)cb_btnBandSelect_9);
901
btnBandSelect_10 = new Fl_Button(216, 299, 60, 18, _("50"));
902
btnBandSelect_10->tooltip(_("6m band"));
903
btnBandSelect_10->color((Fl_Color)246);
904
btnBandSelect_10->callback((Fl_Callback*)cb_btnBandSelect_10);
906
btnBandSelect_11 = new Fl_Button(287, 299, 60, 18, _("GEN"));
907
btnBandSelect_11->tooltip(_("General RX"));
908
btnBandSelect_11->color((Fl_Color)246);
909
btnBandSelect_11->callback((Fl_Callback*)cb_btnBandSelect_11);
911
opSelect60 = new Fl_ComboBox(358, 299, 60, 18, _("combo"));
912
opSelect60->tooltip(_("vfo / 60 meter channel"));
913
opSelect60->box(FL_NO_BOX);
914
opSelect60->color((Fl_Color)246);
915
opSelect60->selection_color(FL_BACKGROUND_COLOR);
916
opSelect60->labeltype(FL_NORMAL_LABEL);
917
opSelect60->labelfont(0);
918
opSelect60->labelsize(12);
919
opSelect60->labelcolor(FL_FOREGROUND_COLOR);
920
opSelect60->callback((Fl_Callback*)cb_opSelect60);
921
opSelect60->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
922
opSelect60->when(FL_WHEN_RELEASE);
927
genericCW = new Fl_Group(2, 271, 420, 49, _("CW"));
928
genericCW->color(FL_LIGHT1);
929
genericCW->selection_color(FL_LIGHT1);
932
btnSpot = new Fl_Light_Button(5, 280, 54, 22, _("Spot"));
933
btnSpot->tooltip(_("Spot tone on/off"));
934
btnSpot->callback((Fl_Callback*)cb_btnSpot);
935
btnSpot->value(progStatus.cw_spot);
937
cnt_cw_spot_tone = new Fl_Counter(62, 280, 70, 22, _("Spot tone"));
938
cnt_cw_spot_tone->tooltip(_("Spot volume"));
939
cnt_cw_spot_tone->type(1);
940
cnt_cw_spot_tone->minimum(300);
941
cnt_cw_spot_tone->maximum(1050);
942
cnt_cw_spot_tone->step(50);
943
cnt_cw_spot_tone->value(1050);
944
cnt_cw_spot_tone->callback((Fl_Callback*)cb_cnt_cw_spot_tone);
945
cnt_cw_spot_tone->value(progStatus.cw_spot);
947
cnt_cw_qsk = new Fl_Counter(136, 280, 70, 22, _("QSK dly"));
948
cnt_cw_qsk->tooltip(_("QSK delay (msec)"));
950
cnt_cw_qsk->minimum(0);
951
cnt_cw_qsk->maximum(100);
953
cnt_cw_qsk->value(20);
954
cnt_cw_qsk->callback((Fl_Callback*)cb_cnt_cw_qsk);
955
cnt_cw_qsk->value(progStatus.cw_qsk);
957
cnt_cw_weight = new Fl_Counter(209, 280, 70, 22, _("Weight"));
958
cnt_cw_weight->type(1);
959
cnt_cw_weight->minimum(2.5);
960
cnt_cw_weight->maximum(4.5);
961
cnt_cw_weight->value(3);
962
cnt_cw_weight->callback((Fl_Callback*)cb_cnt_cw_weight);
963
cnt_cw_weight->value(progStatus.cw_weight);
965
cnt_cw_wpm = new Fl_Counter(283, 280, 70, 22, _("wpm"));
967
cnt_cw_wpm->minimum(5);
968
cnt_cw_wpm->maximum(80);
970
cnt_cw_wpm->value(24);
971
cnt_cw_wpm->callback((Fl_Callback*)cb_cnt_cw_wpm);
972
cnt_cw_wpm->value(progStatus.cw_wpm);
974
btn_enable_keyer = new Fl_Check_Button(357, 283, 60, 15, _("Keyer"));
975
btn_enable_keyer->tooltip(_("Enable internal keyer"));
976
btn_enable_keyer->down_box(FL_DOWN_BOX);
977
btn_enable_keyer->callback((Fl_Callback*)cb_btn_enable_keyer);
978
btn_enable_keyer->value(progStatus.enable_keyer);
982
genericVOX = new Fl_Group(2, 271, 420, 49, _("Vox"));
985
cnt_vox_gain = new Fl_Counter(9, 279, 70, 22, _("gain"));
986
cnt_vox_gain->type(1);
987
cnt_vox_gain->minimum(0);
988
cnt_vox_gain->maximum(100);
989
cnt_vox_gain->step(1);
990
cnt_vox_gain->callback((Fl_Callback*)cb_cnt_vox_gain);
991
cnt_vox_gain->value(progStatus.vox_gain);
993
cnt_anti_vox = new Fl_Counter(85, 279, 70, 22, _("anti"));
994
cnt_anti_vox->type(1);
995
cnt_anti_vox->minimum(0);
996
cnt_anti_vox->maximum(100);
997
cnt_anti_vox->step(1);
998
cnt_anti_vox->callback((Fl_Callback*)cb_cnt_anti_vox);
999
cnt_anti_vox->value(progStatus.vox_anti);
1001
cnt_vox_hang = new Fl_Counter(161, 279, 70, 22, _("hang"));
1002
cnt_vox_hang->type(1);
1003
cnt_vox_hang->minimum(0);
1004
cnt_vox_hang->maximum(100);
1005
cnt_vox_hang->step(1);
1006
cnt_vox_hang->callback((Fl_Callback*)cb_cnt_vox_hang);
1007
cnt_vox_hang->value(progStatus.vox_hang);
1009
btn_vox = new Fl_Light_Button(238, 279, 70, 22, _("VOX"));
1010
btn_vox->callback((Fl_Callback*)cb_btn_vox);
1011
btn_vox->value(progStatus.vox_onoff);
1013
btn_vox_on_dataport = new Fl_Check_Button(322, 282, 70, 15, _("Data port"));
1014
btn_vox_on_dataport->tooltip(_("Data port signal triggers VOX"));
1015
btn_vox_on_dataport->down_box(FL_DOWN_BOX);
1016
btn_vox_on_dataport->callback((Fl_Callback*)cb_btn_vox_on_dataport);
1017
btn_vox_on_dataport->value(progStatus.vox_on_dataport);
1021
genericSpeech = new Fl_Group(2, 271, 420, 49, _("Spch"));
1022
genericSpeech->hide();
1024
btnCompON = new Fl_Light_Button(215, 281, 70, 22, _("On"));
1025
btnCompON->callback((Fl_Callback*)cb_btnCompON);
1026
btnCompON->value(progStatus.compON);
1028
cnt_compression = new Fl_Counter(138, 281, 70, 22, _("Comp"));
1029
cnt_compression->type(1);
1030
cnt_compression->minimum(0);
1031
cnt_compression->maximum(100);
1032
cnt_compression->step(1);
1033
cnt_compression->callback((Fl_Callback*)cb_cnt_compression);
1034
cnt_compression->value(progStatus.compression);
1036
genericSpeech->end();
1038
genericRx = new Fl_Group(2, 271, 420, 49, _("RX"));
1041
cbo_nb_level = new Fl_ComboBox(12, 281, 80, 22, _("NB level"));
1042
cbo_nb_level->tooltip(_("Select Transceiver"));
1043
cbo_nb_level->box(FL_DOWN_BOX);
1044
cbo_nb_level->color(FL_BACKGROUND_COLOR);
1045
cbo_nb_level->selection_color(FL_BACKGROUND_COLOR);
1046
cbo_nb_level->labeltype(FL_NORMAL_LABEL);
1047
cbo_nb_level->labelfont(0);
1048
cbo_nb_level->labelsize(14);
1049
cbo_nb_level->labelcolor(FL_FOREGROUND_COLOR);
1050
cbo_nb_level->callback((Fl_Callback*)cb_cbo_nb_level);
1051
cbo_nb_level->align(Fl_Align(FL_ALIGN_BOTTOM));
1052
cbo_nb_level->when(FL_WHEN_RELEASE);
1053
cbo_nb_level->index(progStatus.nb_level);
1054
cbo_nb_level->end();
1056
cbo_agc_level = new Fl_ComboBox(123, 281, 80, 22, _("AGC"));
1057
cbo_agc_level->tooltip(_("Select Transceiver"));
1058
cbo_agc_level->box(FL_DOWN_BOX);
1059
cbo_agc_level->color(FL_BACKGROUND_COLOR);
1060
cbo_agc_level->selection_color(FL_BACKGROUND_COLOR);
1061
cbo_agc_level->labeltype(FL_NORMAL_LABEL);
1062
cbo_agc_level->labelfont(0);
1063
cbo_agc_level->labelsize(14);
1064
cbo_agc_level->labelcolor(FL_FOREGROUND_COLOR);
1065
cbo_agc_level->callback((Fl_Callback*)cb_cbo_agc_level);
1066
cbo_agc_level->align(Fl_Align(FL_ALIGN_BOTTOM));
1067
cbo_agc_level->when(FL_WHEN_RELEASE);
1068
cbo_agc_level->end();
1070
cnt_bpf_center = new Fl_Counter(234, 281, 96, 22, _("BPF Center Freq"));
1071
cnt_bpf_center->tooltip(_("Bandpass Filter Center Freq"));
1072
cnt_bpf_center->type(1);
1073
cnt_bpf_center->minimum(600);
1074
cnt_bpf_center->maximum(2500);
1075
cnt_bpf_center->step(10);
1076
cnt_bpf_center->value(1500);
1077
cnt_bpf_center->callback((Fl_Callback*)cb_cnt_bpf_center);
1078
cnt_bpf_center->align(Fl_Align(34));
1079
cnt_bpf_center->value(progStatus.bpf_center);
1081
btn_use_bpf_center = new Fl_Check_Button(361, 284, 50, 15, _("On"));
1082
btn_use_bpf_center->tooltip(_("Use Filter Center Freq Adj"));
1083
btn_use_bpf_center->down_box(FL_DOWN_BOX);
1084
btn_use_bpf_center->value(1);
1085
btn_use_bpf_center->callback((Fl_Callback*)cb_btn_use_bpf_center);
1086
btn_use_bpf_center->value(progStatus.use_bpf_center);
1090
genericMisc = new Fl_Group(2, 271, 420, 49, _("Misc"));
1091
genericMisc->hide();
1093
cnt_vfo_adj = new Fl_Counter(24, 279, 96, 22, _("Vfo Adj"));
1094
cnt_vfo_adj->type(1);
1095
cnt_vfo_adj->callback((Fl_Callback*)cb_cnt_vfo_adj);
1096
cnt_vfo_adj->align(Fl_Align(34));
1097
cnt_vfo_adj->value(progStatus.vfo_adj);
1099
cnt_line_out = new Fl_Counter(146, 279, 70, 22, _("line out"));
1100
cnt_line_out->type(1);
1101
cnt_line_out->minimum(0);
1102
cnt_line_out->maximum(100);
1103
cnt_line_out->step(1);
1104
cnt_line_out->value(20);
1105
cnt_line_out->callback((Fl_Callback*)cb_cnt_line_out);
1106
cnt_line_out->value(progStatus.line_out);
1108
btnSpecial = new Fl_Light_Button(242, 279, 74, 20, _("Special"));
1109
btnSpecial->callback((Fl_Callback*)cb_btnSpecial);
1111
btn_xcvr_auto_on = new Fl_Check_Button(325, 280, 95, 15, _("Rig autOn"));
1112
btn_xcvr_auto_on->tooltip(_("Auto Turn Rig On with Flrig startup"));
1113
btn_xcvr_auto_on->down_box(FL_DOWN_BOX);
1114
btn_xcvr_auto_on->callback((Fl_Callback*)cb_btn_xcvr_auto_on);
1115
btn_xcvr_auto_on->value(progStatus.xcvr_auto_on);
1117
btn_xcvr_auto_off = new Fl_Check_Button(325, 300, 95, 15, _("Rig autOff"));
1118
btn_xcvr_auto_off->tooltip(_("Auto Turn Rig Off with Flrig exit"));
1119
btn_xcvr_auto_off->down_box(FL_DOWN_BOX);
1120
btn_xcvr_auto_off->callback((Fl_Callback*)cb_btn_xcvr_auto_off);
1121
btn_xcvr_auto_off->value(progStatus.xcvr_auto_off);