kopia lustrzana https://github.com/jamescoxon/dl-fldigi
Call lookups
* Added hamQTH browser lookup * Added ability to do both browser and xml call lookuppull/2/head
rodzic
82fa760998
commit
ff596a0102
|
@ -27,13 +27,22 @@
|
||||||
Fl_Double_Window *dlgConfig;
|
Fl_Double_Window *dlgConfig;
|
||||||
Mode_Browser* mode_browser;
|
Mode_Browser* mode_browser;
|
||||||
|
|
||||||
void set_qrz_buttons(Fl_Button* b) {
|
void set_qrzxml_buttons(Fl_Button* b) {
|
||||||
Fl_Button* qrzb[] = { btnQRZnotavailable, btnQRZcdrom, btnQRZonline,
|
Fl_Button* qrzbxml[] = { btnQRZXMLnotavailable, btnQRZcdrom, btnQRZsub,
|
||||||
btnQRZsub, btnHamcall, btnHAMCALLonline,
|
btnHamcall,
|
||||||
btnCALLOOK, btnHamQTH};
|
btnCALLOOK, btnHamQTH};
|
||||||
|
|
||||||
for (size_t i = 0; i < sizeof(qrzb)/sizeof(*qrzb); i++)
|
for (size_t i = 0; i < sizeof(qrzbxml)/sizeof(*qrzbxml); i++)
|
||||||
qrzb[i]->value(b == qrzb[i]);
|
qrzbxml[i]->value(b == qrzbxml[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
void set_qrzweb_buttons(Fl_Button* b) {
|
||||||
|
Fl_Button* qrzbweb[] = { btnQRZWEBnotavailable, btnQRZonline,
|
||||||
|
btnHAMCALLonline,
|
||||||
|
btnHamQTHonline };
|
||||||
|
|
||||||
|
for (size_t i = 0; i < sizeof(qrzbweb)/sizeof(*qrzbweb); i++)
|
||||||
|
qrzbweb[i]->value(b == qrzbweb[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
Fl_Tabs *tabsConfigure=(Fl_Tabs *)0;
|
Fl_Tabs *tabsConfigure=(Fl_Tabs *)0;
|
||||||
|
@ -2875,43 +2884,83 @@ static void cb_chkDTMFdecode(Fl_Check_Button* o, void*) {
|
||||||
|
|
||||||
Fl_Group *tabQRZ=(Fl_Group *)0;
|
Fl_Group *tabQRZ=(Fl_Group *)0;
|
||||||
|
|
||||||
Fl_Round_Button *btnQRZnotavailable=(Fl_Round_Button *)0;
|
Fl_Round_Button *btnQRZWEBnotavailable=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
static void cb_btnQRZnotavailable(Fl_Round_Button* o, void*) {
|
static void cb_btnQRZWEBnotavailable(Fl_Round_Button* o, void*) {
|
||||||
set_qrz_buttons(o);
|
set_qrzweb_buttons(o);
|
||||||
progdefaults.QRZ = QRZNONE;
|
progdefaults.QRZWEB = QRZWEBNONE;
|
||||||
progdefaults.changed = true;
|
progdefaults.changed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Fl_Round_Button *btnQRZonline=(Fl_Round_Button *)0;
|
Fl_Round_Button *btnQRZonline=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
static void cb_btnQRZonline(Fl_Round_Button* o, void*) {
|
static void cb_btnQRZonline(Fl_Round_Button* o, void*) {
|
||||||
set_qrz_buttons(o);
|
set_qrzweb_buttons(o);
|
||||||
progdefaults.QRZ = QRZHTML;
|
progdefaults.QRZWEB = QRZHTML;
|
||||||
progdefaults.changed = true;
|
progdefaults.changed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Fl_Round_Button *btnHAMCALLonline=(Fl_Round_Button *)0;
|
Fl_Round_Button *btnHAMCALLonline=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
static void cb_btnHAMCALLonline(Fl_Round_Button* o, void*) {
|
static void cb_btnHAMCALLonline(Fl_Round_Button* o, void*) {
|
||||||
set_qrz_buttons(o);
|
set_qrzweb_buttons(o);
|
||||||
progdefaults.QRZ = HAMCALLHTML;
|
progdefaults.QRZWEB = HAMCALLHTML;
|
||||||
progdefaults.changed = true;
|
progdefaults.changed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Fl_Round_Button *btnCALLOOK=(Fl_Round_Button *)0;
|
Fl_Round_Button *btnHamQTHonline=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
static void cb_btnCALLOOK(Fl_Round_Button* o, void*) {
|
static void cb_btnHamQTHonline(Fl_Round_Button* o, void*) {
|
||||||
set_qrz_buttons(o);
|
set_qrzweb_buttons(o);
|
||||||
progdefaults.QRZ = CALLOOK;
|
progdefaults.QRZWEB = HAMQTHHTML;
|
||||||
|
progdefaults.changed = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Fl_Round_Button *btnQRZXMLnotavailable=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
|
static void cb_btnQRZXMLnotavailable(Fl_Round_Button* o, void*) {
|
||||||
|
set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = QRZXMLNONE;
|
||||||
progdefaults.changed = true;
|
progdefaults.changed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Fl_Round_Button *btnQRZcdrom=(Fl_Round_Button *)0;
|
Fl_Round_Button *btnQRZcdrom=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
static void cb_btnQRZcdrom(Fl_Round_Button* o, void*) {
|
static void cb_btnQRZcdrom(Fl_Round_Button* o, void*) {
|
||||||
set_qrz_buttons(o);
|
set_qrzxml_buttons(o);
|
||||||
progdefaults.QRZ = QRZCD;
|
progdefaults.QRZXML = QRZCD;
|
||||||
|
progdefaults.changed = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Fl_Round_Button *btnQRZsub=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
|
static void cb_btnQRZsub(Fl_Round_Button* o, void*) {
|
||||||
|
set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = QRZNET;
|
||||||
|
progdefaults.changed = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Fl_Round_Button *btnHamcall=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
|
static void cb_btnHamcall(Fl_Round_Button* o, void*) {
|
||||||
|
set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = HAMCALLNET;
|
||||||
|
progdefaults.changed = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Fl_Round_Button *btnHamQTH=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
|
static void cb_btnHamQTH(Fl_Round_Button* o, void*) {
|
||||||
|
set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = HAMQTH;
|
||||||
|
progdefaults.changed = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Fl_Round_Button *btnCALLOOK=(Fl_Round_Button *)0;
|
||||||
|
|
||||||
|
static void cb_btnCALLOOK(Fl_Round_Button* o, void*) {
|
||||||
|
set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = CALLOOK;
|
||||||
progdefaults.changed = true;
|
progdefaults.changed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2923,22 +2972,6 @@ progdefaults.QRZchanged = true;
|
||||||
progdefaults.changed = true;
|
progdefaults.changed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Fl_Round_Button *btnQRZsub=(Fl_Round_Button *)0;
|
|
||||||
|
|
||||||
static void cb_btnQRZsub(Fl_Round_Button* o, void*) {
|
|
||||||
set_qrz_buttons(o);
|
|
||||||
progdefaults.QRZ = QRZNET;
|
|
||||||
progdefaults.changed = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
Fl_Round_Button *btnHamcall=(Fl_Round_Button *)0;
|
|
||||||
|
|
||||||
static void cb_btnHamcall(Fl_Round_Button* o, void*) {
|
|
||||||
set_qrz_buttons(o);
|
|
||||||
progdefaults.QRZ = HAMCALLNET;
|
|
||||||
progdefaults.changed = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
Fl_Input2 *inpQRZusername=(Fl_Input2 *)0;
|
Fl_Input2 *inpQRZusername=(Fl_Input2 *)0;
|
||||||
|
|
||||||
static void cb_inpQRZusername(Fl_Input2* o, void*) {
|
static void cb_inpQRZusername(Fl_Input2* o, void*) {
|
||||||
|
@ -2961,14 +2994,6 @@ inpQRZuserpassword->redraw();
|
||||||
o->label((inpQRZuserpassword->type() & FL_SECRET_INPUT) ? "Show" : "Hide");
|
o->label((inpQRZuserpassword->type() & FL_SECRET_INPUT) ? "Show" : "Hide");
|
||||||
}
|
}
|
||||||
|
|
||||||
Fl_Round_Button *btnHamQTH=(Fl_Round_Button *)0;
|
|
||||||
|
|
||||||
static void cb_btnHamQTH(Fl_Round_Button* o, void*) {
|
|
||||||
set_qrz_buttons(o);
|
|
||||||
progdefaults.QRZ = HAMQTH;
|
|
||||||
progdefaults.changed = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
Fl_Input2 *inpEQSL_id=(Fl_Input2 *)0;
|
Fl_Input2 *inpEQSL_id=(Fl_Input2 *)0;
|
||||||
|
|
||||||
static void cb_inpEQSL_id(Fl_Input2* o, void*) {
|
static void cb_inpEQSL_id(Fl_Input2* o, void*) {
|
||||||
|
@ -6541,47 +6566,78 @@ d frequency"));
|
||||||
tabQRZ->tooltip(_("Callsign database"));
|
tabQRZ->tooltip(_("Callsign database"));
|
||||||
tabQRZ->hide();
|
tabQRZ->hide();
|
||||||
{ Fl_Tabs* o = new Fl_Tabs(0, 25, 500, 345);
|
{ Fl_Tabs* o = new Fl_Tabs(0, 25, 500, 345);
|
||||||
{ Fl_Group* o = new Fl_Group(0, 46, 500, 324, _("QRZ/etal"));
|
{ Fl_Group* o = new Fl_Group(0, 46, 500, 324, _("Call Lookup"));
|
||||||
{ Fl_Group* o = new Fl_Group(5, 55, 490, 120);
|
{ Fl_Group* o = new Fl_Group(5, 52, 490, 122, _("Web Browser lookup"));
|
||||||
o->box(FL_ENGRAVED_FRAME);
|
o->box(FL_ENGRAVED_FRAME);
|
||||||
o->align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE);
|
o->align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE);
|
||||||
{ Fl_Round_Button* o = btnQRZnotavailable = new Fl_Round_Button(25, 64, 337, 20, _("Not available"));
|
{ Fl_Round_Button* o = btnQRZWEBnotavailable = new Fl_Round_Button(27, 78, 337, 20, _("None"));
|
||||||
btnQRZnotavailable->tooltip(_("Do not use callsign database"));
|
btnQRZWEBnotavailable->tooltip(_("Do not use callsign lookup via web browser"));
|
||||||
btnQRZnotavailable->down_box(FL_DOWN_BOX);
|
btnQRZWEBnotavailable->down_box(FL_DOWN_BOX);
|
||||||
btnQRZnotavailable->value(1);
|
btnQRZWEBnotavailable->value(1);
|
||||||
btnQRZnotavailable->callback((Fl_Callback*)cb_btnQRZnotavailable);
|
btnQRZWEBnotavailable->callback((Fl_Callback*)cb_btnQRZWEBnotavailable);
|
||||||
o->value(progdefaults.QRZ == QRZNONE);
|
o->value(progdefaults.QRZWEB == QRZWEBNONE);
|
||||||
} // Fl_Round_Button* btnQRZnotavailable
|
} // Fl_Round_Button* btnQRZWEBnotavailable
|
||||||
{ Fl_Round_Button* o = btnQRZonline = new Fl_Round_Button(25, 92, 337, 20, _("QRZ online via default Internet Browser"));
|
{ Fl_Round_Button* o = btnQRZonline = new Fl_Round_Button(27, 102, 337, 20, _("QRZ online via default Internet Browser"));
|
||||||
btnQRZonline->tooltip(_("Visit QRZ web site"));
|
btnQRZonline->tooltip(_("Visit QRZ web site"));
|
||||||
btnQRZonline->down_box(FL_DOWN_BOX);
|
btnQRZonline->down_box(FL_DOWN_BOX);
|
||||||
btnQRZonline->callback((Fl_Callback*)cb_btnQRZonline);
|
btnQRZonline->callback((Fl_Callback*)cb_btnQRZonline);
|
||||||
o->value(progdefaults.QRZ == QRZHTML);
|
o->value(progdefaults.QRZWEB == QRZHTML);
|
||||||
} // Fl_Round_Button* btnQRZonline
|
} // Fl_Round_Button* btnQRZonline
|
||||||
{ Fl_Round_Button* o = btnHAMCALLonline = new Fl_Round_Button(25, 120, 337, 20, _("HamCall online via default Internet Browser"));
|
{ Fl_Round_Button* o = btnHAMCALLonline = new Fl_Round_Button(27, 126, 337, 20, _("HamCall online via default Internet Browser"));
|
||||||
btnHAMCALLonline->tooltip(_("Visit Hamcall web site"));
|
btnHAMCALLonline->tooltip(_("Visit Hamcall web site"));
|
||||||
btnHAMCALLonline->down_box(FL_DOWN_BOX);
|
btnHAMCALLonline->down_box(FL_DOWN_BOX);
|
||||||
btnHAMCALLonline->callback((Fl_Callback*)cb_btnHAMCALLonline);
|
btnHAMCALLonline->callback((Fl_Callback*)cb_btnHAMCALLonline);
|
||||||
o->value(progdefaults.QRZ == HAMCALLHTML);
|
o->value(progdefaults.QRZWEB == HAMCALLHTML);
|
||||||
} // Fl_Round_Button* btnHAMCALLonline
|
} // Fl_Round_Button* btnHAMCALLonline
|
||||||
{ Fl_Round_Button* o = btnCALLOOK = new Fl_Round_Button(25, 148, 337, 20, _("Callook.info lookup (US callsigns only)"));
|
{ Fl_Round_Button* o = btnHamQTHonline = new Fl_Round_Button(27, 150, 337, 20, _("HamQTH via default Internet Browser"));
|
||||||
btnCALLOOK->tooltip(_("Visit Hamcall web site"));
|
btnHamQTHonline->tooltip(_("Visit hamQTH web site"));
|
||||||
btnCALLOOK->down_box(FL_DOWN_BOX);
|
btnHamQTHonline->down_box(FL_DOWN_BOX);
|
||||||
btnCALLOOK->callback((Fl_Callback*)cb_btnCALLOOK);
|
btnHamQTHonline->callback((Fl_Callback*)cb_btnHamQTHonline);
|
||||||
o->value(progdefaults.QRZ == CALLOOK);
|
o->value(progdefaults.QRZWEB == HAMQTHHTML);
|
||||||
} // Fl_Round_Button* btnCALLOOK
|
} // Fl_Round_Button* btnHamQTHonline
|
||||||
o->end();
|
o->end();
|
||||||
} // Fl_Group* o
|
} // Fl_Group* o
|
||||||
{ Fl_Group* o = new Fl_Group(5, 176, 490, 55, _("CDROM"));
|
{ Fl_Group* o = new Fl_Group(5, 176, 490, 190, _("Data base lookup"));
|
||||||
o->box(FL_ENGRAVED_FRAME);
|
o->box(FL_ENGRAVED_FRAME);
|
||||||
o->align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE);
|
o->align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE);
|
||||||
{ Fl_Round_Button* o = btnQRZcdrom = new Fl_Round_Button(25, 196, 70, 20, _("QRZ"));
|
{ Fl_Round_Button* o = btnQRZXMLnotavailable = new Fl_Round_Button(27, 199, 337, 20, _("None"));
|
||||||
|
btnQRZXMLnotavailable->tooltip(_("Do not use callsign database"));
|
||||||
|
btnQRZXMLnotavailable->down_box(FL_DOWN_BOX);
|
||||||
|
btnQRZXMLnotavailable->value(1);
|
||||||
|
btnQRZXMLnotavailable->callback((Fl_Callback*)cb_btnQRZXMLnotavailable);
|
||||||
|
o->value(progdefaults.QRZXML == QRZXMLNONE);
|
||||||
|
} // Fl_Round_Button* btnQRZXMLnotavailable
|
||||||
|
{ Fl_Round_Button* o = btnQRZcdrom = new Fl_Round_Button(27, 227, 70, 20, _("QRZ cdrom"));
|
||||||
btnQRZcdrom->tooltip(_("Use CD or hard drive CD image"));
|
btnQRZcdrom->tooltip(_("Use CD or hard drive CD image"));
|
||||||
btnQRZcdrom->down_box(FL_DOWN_BOX);
|
btnQRZcdrom->down_box(FL_DOWN_BOX);
|
||||||
btnQRZcdrom->callback((Fl_Callback*)cb_btnQRZcdrom);
|
btnQRZcdrom->callback((Fl_Callback*)cb_btnQRZcdrom);
|
||||||
o->value(progdefaults.QRZ == QRZCD);
|
o->value(progdefaults.QRZXML == QRZCD);
|
||||||
} // Fl_Round_Button* btnQRZcdrom
|
} // Fl_Round_Button* btnQRZcdrom
|
||||||
{ Fl_Input2* o = txtQRZpathname = new Fl_Input2(104, 196, 300, 20, _("at:"));
|
{ Fl_Round_Button* o = btnQRZsub = new Fl_Round_Button(27, 255, 125, 20, _("QRZ.com"));
|
||||||
|
btnQRZsub->tooltip(_("You need a paid QRZ online\nsubscription to access"));
|
||||||
|
btnQRZsub->down_box(FL_DOWN_BOX);
|
||||||
|
btnQRZsub->callback((Fl_Callback*)cb_btnQRZsub);
|
||||||
|
o->value(progdefaults.QRZXML == QRZNET);
|
||||||
|
} // Fl_Round_Button* btnQRZsub
|
||||||
|
{ Fl_Round_Button* o = btnHamcall = new Fl_Round_Button(27, 281, 125, 20, _("Hamcall.net"));
|
||||||
|
btnHamcall->tooltip(_("You need a paid Hamcall online\nsubscription to access"));
|
||||||
|
btnHamcall->down_box(FL_DOWN_BOX);
|
||||||
|
btnHamcall->callback((Fl_Callback*)cb_btnHamcall);
|
||||||
|
o->value(progdefaults.QRZXML == HAMCALLNET);
|
||||||
|
} // Fl_Round_Button* btnHamcall
|
||||||
|
{ Fl_Round_Button* o = btnHamQTH = new Fl_Round_Button(27, 307, 125, 20, _("HamQTH.com (free service http://www.hamqth.com)"));
|
||||||
|
btnHamQTH->tooltip(_("Free service courtesy of OK"));
|
||||||
|
btnHamQTH->down_box(FL_DOWN_BOX);
|
||||||
|
btnHamQTH->callback((Fl_Callback*)cb_btnHamQTH);
|
||||||
|
o->value(progdefaults.QRZXML == HAMQTH);
|
||||||
|
} // Fl_Round_Button* btnHamQTH
|
||||||
|
{ Fl_Round_Button* o = btnCALLOOK = new Fl_Round_Button(27, 334, 125, 20, _("Callook.info lookup (free service US callsigns only)"));
|
||||||
|
btnCALLOOK->tooltip(_("Visit Hamcall web site"));
|
||||||
|
btnCALLOOK->down_box(FL_DOWN_BOX);
|
||||||
|
btnCALLOOK->callback((Fl_Callback*)cb_btnCALLOOK);
|
||||||
|
o->value(progdefaults.QRZXML == CALLOOK);
|
||||||
|
} // Fl_Round_Button* btnCALLOOK
|
||||||
|
{ Fl_Input2* o = txtQRZpathname = new Fl_Input2(152, 227, 300, 20, _("at:"));
|
||||||
txtQRZpathname->tooltip(_("ie: /home/dave/CALLBK/ or C:/CALLBK/\nLeave blank to search for database"));
|
txtQRZpathname->tooltip(_("ie: /home/dave/CALLBK/ or C:/CALLBK/\nLeave blank to search for database"));
|
||||||
txtQRZpathname->box(FL_DOWN_BOX);
|
txtQRZpathname->box(FL_DOWN_BOX);
|
||||||
txtQRZpathname->color((Fl_Color)FL_BACKGROUND2_COLOR);
|
txtQRZpathname->color((Fl_Color)FL_BACKGROUND2_COLOR);
|
||||||
|
@ -6596,24 +6652,7 @@ d frequency"));
|
||||||
o->value(progdefaults.QRZpathname.c_str());
|
o->value(progdefaults.QRZpathname.c_str());
|
||||||
txtQRZpathname->labelsize(FL_NORMAL_SIZE);
|
txtQRZpathname->labelsize(FL_NORMAL_SIZE);
|
||||||
} // Fl_Input2* txtQRZpathname
|
} // Fl_Input2* txtQRZpathname
|
||||||
o->end();
|
{ Fl_Input2* o = inpQRZusername = new Fl_Input2(235, 255, 150, 20, _("User name"));
|
||||||
} // Fl_Group* o
|
|
||||||
{ Fl_Group* o = new Fl_Group(5, 232, 490, 134, _("Subscriber data"));
|
|
||||||
o->box(FL_ENGRAVED_FRAME);
|
|
||||||
o->align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE);
|
|
||||||
{ Fl_Round_Button* o = btnQRZsub = new Fl_Round_Button(25, 263, 90, 20, _("QRZ.com"));
|
|
||||||
btnQRZsub->tooltip(_("You need a paid QRZ online\nsubscription to access"));
|
|
||||||
btnQRZsub->down_box(FL_DOWN_BOX);
|
|
||||||
btnQRZsub->callback((Fl_Callback*)cb_btnQRZsub);
|
|
||||||
o->value(progdefaults.QRZ == QRZNET);
|
|
||||||
} // Fl_Round_Button* btnQRZsub
|
|
||||||
{ Fl_Round_Button* o = btnHamcall = new Fl_Round_Button(25, 297, 105, 20, _("Hamcall.net"));
|
|
||||||
btnHamcall->tooltip(_("You need a paid Hamcall online\nsubscription to access"));
|
|
||||||
btnHamcall->down_box(FL_DOWN_BOX);
|
|
||||||
btnHamcall->callback((Fl_Callback*)cb_btnHamcall);
|
|
||||||
o->value(progdefaults.QRZ == HAMCALLNET);
|
|
||||||
} // Fl_Round_Button* btnHamcall
|
|
||||||
{ Fl_Input2* o = inpQRZusername = new Fl_Input2(235, 263, 150, 20, _("User name"));
|
|
||||||
inpQRZusername->tooltip(_("Your login name"));
|
inpQRZusername->tooltip(_("Your login name"));
|
||||||
inpQRZusername->box(FL_DOWN_BOX);
|
inpQRZusername->box(FL_DOWN_BOX);
|
||||||
inpQRZusername->color((Fl_Color)FL_BACKGROUND2_COLOR);
|
inpQRZusername->color((Fl_Color)FL_BACKGROUND2_COLOR);
|
||||||
|
@ -6628,7 +6667,7 @@ d frequency"));
|
||||||
o->value(progdefaults.QRZusername.c_str());
|
o->value(progdefaults.QRZusername.c_str());
|
||||||
inpQRZusername->labelsize(FL_NORMAL_SIZE);
|
inpQRZusername->labelsize(FL_NORMAL_SIZE);
|
||||||
} // Fl_Input2* inpQRZusername
|
} // Fl_Input2* inpQRZusername
|
||||||
{ Fl_Input2* o = inpQRZuserpassword = new Fl_Input2(235, 297, 150, 20, _("Password"));
|
{ Fl_Input2* o = inpQRZuserpassword = new Fl_Input2(235, 281, 150, 20, _("Password"));
|
||||||
inpQRZuserpassword->tooltip(_("Your login password"));
|
inpQRZuserpassword->tooltip(_("Your login password"));
|
||||||
inpQRZuserpassword->box(FL_DOWN_BOX);
|
inpQRZuserpassword->box(FL_DOWN_BOX);
|
||||||
inpQRZuserpassword->color((Fl_Color)FL_BACKGROUND2_COLOR);
|
inpQRZuserpassword->color((Fl_Color)FL_BACKGROUND2_COLOR);
|
||||||
|
@ -6644,16 +6683,10 @@ d frequency"));
|
||||||
o->type(FL_SECRET_INPUT);
|
o->type(FL_SECRET_INPUT);
|
||||||
inpQRZuserpassword->labelsize(FL_NORMAL_SIZE);
|
inpQRZuserpassword->labelsize(FL_NORMAL_SIZE);
|
||||||
} // Fl_Input2* inpQRZuserpassword
|
} // Fl_Input2* inpQRZuserpassword
|
||||||
{ btnQRZpasswordShow = new Fl_Button(395, 297, 70, 20, _("Show"));
|
{ btnQRZpasswordShow = new Fl_Button(395, 281, 70, 20, _("Show"));
|
||||||
btnQRZpasswordShow->tooltip(_("Show password in plain text"));
|
btnQRZpasswordShow->tooltip(_("Show password in plain text"));
|
||||||
btnQRZpasswordShow->callback((Fl_Callback*)cb_btnQRZpasswordShow);
|
btnQRZpasswordShow->callback((Fl_Callback*)cb_btnQRZpasswordShow);
|
||||||
} // Fl_Button* btnQRZpasswordShow
|
} // Fl_Button* btnQRZpasswordShow
|
||||||
{ Fl_Round_Button* o = btnHamQTH = new Fl_Round_Button(26, 332, 121, 20, _("HamQTH.com (free service http://www.hamqth.com)"));
|
|
||||||
btnHamQTH->tooltip(_("You need a paid Hamcall online\nsubscription to access"));
|
|
||||||
btnHamQTH->down_box(FL_DOWN_BOX);
|
|
||||||
btnHamQTH->callback((Fl_Callback*)cb_btnHamQTH);
|
|
||||||
o->value(progdefaults.QRZ == HAMQTH);
|
|
||||||
} // Fl_Round_Button* btnHamQTH
|
|
||||||
o->end();
|
o->end();
|
||||||
} // Fl_Group* o
|
} // Fl_Group* o
|
||||||
o->end();
|
o->end();
|
||||||
|
|
|
@ -75,14 +75,24 @@ decl {Fl_Double_Window *dlgConfig;} {public
|
||||||
decl {Mode_Browser* mode_browser;} {public
|
decl {Mode_Browser* mode_browser;} {public
|
||||||
}
|
}
|
||||||
|
|
||||||
Function {set_qrz_buttons(Fl_Button* b)} {open return_type void
|
Function {set_qrzxml_buttons(Fl_Button* b)} {open return_type void
|
||||||
} {
|
} {
|
||||||
code {Fl_Button* qrzb[] = { btnQRZnotavailable, btnQRZcdrom, btnQRZonline,
|
code {Fl_Button* qrzbxml[] = { btnQRZXMLnotavailable, btnQRZcdrom, btnQRZsub,
|
||||||
btnQRZsub, btnHamcall, btnHAMCALLonline,
|
btnHamcall,
|
||||||
btnCALLOOK, btnHamQTH};
|
btnCALLOOK, btnHamQTH};
|
||||||
|
|
||||||
for (size_t i = 0; i < sizeof(qrzb)/sizeof(*qrzb); i++)
|
for (size_t i = 0; i < sizeof(qrzbxml)/sizeof(*qrzbxml); i++)
|
||||||
qrzb[i]->value(b == qrzb[i]);} {}
|
qrzbxml[i]->value(b == qrzbxml[i]);} {}
|
||||||
|
}
|
||||||
|
|
||||||
|
Function {set_qrzweb_buttons(Fl_Button* b)} {open return_type void
|
||||||
|
} {
|
||||||
|
code {Fl_Button* qrzbweb[] = { btnQRZWEBnotavailable, btnQRZonline,
|
||||||
|
btnHAMCALLonline,
|
||||||
|
btnHamQTHonline };
|
||||||
|
|
||||||
|
for (size_t i = 0; i < sizeof(qrzbweb)/sizeof(*qrzbweb); i++)
|
||||||
|
qrzbweb[i]->value(b == qrzbweb[i]);} {}
|
||||||
}
|
}
|
||||||
|
|
||||||
Function {ConfigureDialog()} {open
|
Function {ConfigureDialog()} {open
|
||||||
|
@ -3647,63 +3657,106 @@ progdefaults.changed = true;}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fl_Group tabQRZ {
|
Fl_Group tabQRZ {
|
||||||
label Web
|
label Web open
|
||||||
tooltip {Callsign database} xywh {0 25 500 345} hide
|
tooltip {Callsign database} xywh {0 25 500 345} hide
|
||||||
} {
|
} {
|
||||||
Fl_Tabs {} {open
|
Fl_Tabs {} {open
|
||||||
xywh {0 25 500 345}
|
xywh {0 25 500 345}
|
||||||
} {
|
} {
|
||||||
Fl_Group {} {
|
Fl_Group {} {
|
||||||
label {QRZ/etal} open
|
label {Call Lookup} open
|
||||||
xywh {0 46 500 324}
|
xywh {0 46 500 324}
|
||||||
} {
|
} {
|
||||||
Fl_Group {} {open
|
Fl_Group {} {
|
||||||
xywh {5 55 490 120} box ENGRAVED_FRAME align 21
|
label {Web Browser lookup} open
|
||||||
|
xywh {5 52 490 122} box ENGRAVED_FRAME align 21
|
||||||
} {
|
} {
|
||||||
Fl_Round_Button btnQRZnotavailable {
|
Fl_Round_Button btnQRZWEBnotavailable {
|
||||||
label {Not available}
|
label None
|
||||||
callback {set_qrz_buttons(o);
|
callback {set_qrzweb_buttons(o);
|
||||||
progdefaults.QRZ = QRZNONE;
|
progdefaults.QRZWEB = QRZWEBNONE;
|
||||||
progdefaults.changed = true;}
|
progdefaults.changed = true;}
|
||||||
tooltip {Do not use callsign database} xywh {25 64 337 20} down_box DOWN_BOX value 1
|
tooltip {Do not use callsign lookup via web browser} xywh {27 78 337 20} down_box DOWN_BOX value 1
|
||||||
code0 {o->value(progdefaults.QRZ == QRZNONE);}
|
code0 {o->value(progdefaults.QRZWEB == QRZWEBNONE);}
|
||||||
}
|
}
|
||||||
Fl_Round_Button btnQRZonline {
|
Fl_Round_Button btnQRZonline {
|
||||||
label {QRZ online via default Internet Browser}
|
label {QRZ online via default Internet Browser}
|
||||||
callback {set_qrz_buttons(o);
|
callback {set_qrzweb_buttons(o);
|
||||||
progdefaults.QRZ = QRZHTML;
|
progdefaults.QRZWEB = QRZHTML;
|
||||||
progdefaults.changed = true;}
|
progdefaults.changed = true;}
|
||||||
tooltip {Visit QRZ web site} xywh {25 92 337 20} down_box DOWN_BOX
|
tooltip {Visit QRZ web site} xywh {27 102 337 20} down_box DOWN_BOX
|
||||||
code0 {o->value(progdefaults.QRZ == QRZHTML);}
|
code0 {o->value(progdefaults.QRZWEB == QRZHTML);}
|
||||||
}
|
}
|
||||||
Fl_Round_Button btnHAMCALLonline {
|
Fl_Round_Button btnHAMCALLonline {
|
||||||
label {HamCall online via default Internet Browser}
|
label {HamCall online via default Internet Browser}
|
||||||
callback {set_qrz_buttons(o);
|
callback {set_qrzweb_buttons(o);
|
||||||
progdefaults.QRZ = HAMCALLHTML;
|
progdefaults.QRZWEB = HAMCALLHTML;
|
||||||
progdefaults.changed = true;}
|
progdefaults.changed = true;}
|
||||||
tooltip {Visit Hamcall web site} xywh {25 120 337 20} down_box DOWN_BOX
|
tooltip {Visit Hamcall web site} xywh {27 126 337 20} down_box DOWN_BOX
|
||||||
code0 {o->value(progdefaults.QRZ == HAMCALLHTML);}
|
code0 {o->value(progdefaults.QRZWEB == HAMCALLHTML);}
|
||||||
}
|
}
|
||||||
Fl_Round_Button btnCALLOOK {
|
Fl_Round_Button btnHamQTHonline {
|
||||||
label {Callook.info lookup (US callsigns only)}
|
label {HamQTH via default Internet Browser}
|
||||||
callback {set_qrz_buttons(o);
|
callback {set_qrzweb_buttons(o);
|
||||||
progdefaults.QRZ = CALLOOK;
|
progdefaults.QRZWEB = HAMQTHHTML;
|
||||||
progdefaults.changed = true;}
|
progdefaults.changed = true;}
|
||||||
tooltip {Visit Hamcall web site} xywh {25 148 337 20} down_box DOWN_BOX
|
tooltip {Visit hamQTH web site} xywh {27 150 337 20} down_box DOWN_BOX
|
||||||
code0 {o->value(progdefaults.QRZ == CALLOOK);}
|
code0 {o->value(progdefaults.QRZWEB == HAMQTHHTML);}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Fl_Group {} {
|
Fl_Group {} {
|
||||||
label CDROM open
|
label {Data base lookup} open
|
||||||
xywh {5 176 490 55} box ENGRAVED_FRAME align 21
|
xywh {5 176 490 190} box ENGRAVED_FRAME align 21
|
||||||
} {
|
} {
|
||||||
Fl_Round_Button btnQRZcdrom {
|
Fl_Round_Button btnQRZXMLnotavailable {
|
||||||
label QRZ
|
label None
|
||||||
callback {set_qrz_buttons(o);
|
callback {set_qrzxml_buttons(o);
|
||||||
progdefaults.QRZ = QRZCD;
|
progdefaults.QRZXML = QRZXMLNONE;
|
||||||
progdefaults.changed = true;}
|
progdefaults.changed = true;}
|
||||||
tooltip {Use CD or hard drive CD image} xywh {25 196 70 20} down_box DOWN_BOX
|
tooltip {Do not use callsign database} xywh {27 199 337 20} down_box DOWN_BOX value 1
|
||||||
code0 {o->value(progdefaults.QRZ == QRZCD);}
|
code0 {o->value(progdefaults.QRZXML == QRZXMLNONE);}
|
||||||
|
}
|
||||||
|
Fl_Round_Button btnQRZcdrom {
|
||||||
|
label {QRZ cdrom}
|
||||||
|
callback {set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = QRZCD;
|
||||||
|
progdefaults.changed = true;}
|
||||||
|
tooltip {Use CD or hard drive CD image} xywh {27 227 70 20} down_box DOWN_BOX
|
||||||
|
code0 {o->value(progdefaults.QRZXML == QRZCD);}
|
||||||
|
}
|
||||||
|
Fl_Round_Button btnQRZsub {
|
||||||
|
label {QRZ.com}
|
||||||
|
callback {set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = QRZNET;
|
||||||
|
progdefaults.changed = true;}
|
||||||
|
tooltip {You need a paid QRZ online
|
||||||
|
subscription to access} xywh {27 255 125 20} down_box DOWN_BOX
|
||||||
|
code0 {o->value(progdefaults.QRZXML == QRZNET);}
|
||||||
|
}
|
||||||
|
Fl_Round_Button btnHamcall {
|
||||||
|
label {Hamcall.net}
|
||||||
|
callback {set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = HAMCALLNET;
|
||||||
|
progdefaults.changed = true;}
|
||||||
|
tooltip {You need a paid Hamcall online
|
||||||
|
subscription to access} xywh {27 281 125 20} down_box DOWN_BOX
|
||||||
|
code0 {o->value(progdefaults.QRZXML == HAMCALLNET);}
|
||||||
|
}
|
||||||
|
Fl_Round_Button btnHamQTH {
|
||||||
|
label {HamQTH.com (free service http://www.hamqth.com)}
|
||||||
|
callback {set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = HAMQTH;
|
||||||
|
progdefaults.changed = true;}
|
||||||
|
tooltip {Free service courtesy of OK} xywh {27 307 125 20} down_box DOWN_BOX
|
||||||
|
code0 {o->value(progdefaults.QRZXML == HAMQTH);}
|
||||||
|
}
|
||||||
|
Fl_Round_Button btnCALLOOK {
|
||||||
|
label {Callook.info lookup (free service US callsigns only)}
|
||||||
|
callback {set_qrzxml_buttons(o);
|
||||||
|
progdefaults.QRZXML = CALLOOK;
|
||||||
|
progdefaults.changed = true;}
|
||||||
|
tooltip {Visit Hamcall web site} xywh {27 334 125 20} down_box DOWN_BOX
|
||||||
|
code0 {o->value(progdefaults.QRZXML == CALLOOK);}
|
||||||
}
|
}
|
||||||
Fl_Input txtQRZpathname {
|
Fl_Input txtQRZpathname {
|
||||||
label {at:}
|
label {at:}
|
||||||
|
@ -3711,39 +3764,16 @@ progdefaults.changed = true;}
|
||||||
progdefaults.QRZchanged = true;
|
progdefaults.QRZchanged = true;
|
||||||
progdefaults.changed = true;}
|
progdefaults.changed = true;}
|
||||||
tooltip {ie: /home/dave/CALLBK/ or C:/CALLBK/
|
tooltip {ie: /home/dave/CALLBK/ or C:/CALLBK/
|
||||||
Leave blank to search for database} xywh {104 196 300 20}
|
Leave blank to search for database} xywh {152 227 300 20}
|
||||||
code0 {o->value(progdefaults.QRZpathname.c_str());}
|
code0 {o->value(progdefaults.QRZpathname.c_str());}
|
||||||
code1 {txtQRZpathname->labelsize(FL_NORMAL_SIZE);}
|
code1 {txtQRZpathname->labelsize(FL_NORMAL_SIZE);}
|
||||||
class Fl_Input2
|
class Fl_Input2
|
||||||
}
|
}
|
||||||
}
|
|
||||||
Fl_Group {} {
|
|
||||||
label {Subscriber data} open
|
|
||||||
xywh {5 232 490 134} box ENGRAVED_FRAME align 21
|
|
||||||
} {
|
|
||||||
Fl_Round_Button btnQRZsub {
|
|
||||||
label {QRZ.com}
|
|
||||||
callback {set_qrz_buttons(o);
|
|
||||||
progdefaults.QRZ = QRZNET;
|
|
||||||
progdefaults.changed = true;}
|
|
||||||
tooltip {You need a paid QRZ online
|
|
||||||
subscription to access} xywh {25 263 90 20} down_box DOWN_BOX
|
|
||||||
code0 {o->value(progdefaults.QRZ == QRZNET);}
|
|
||||||
}
|
|
||||||
Fl_Round_Button btnHamcall {
|
|
||||||
label {Hamcall.net}
|
|
||||||
callback {set_qrz_buttons(o);
|
|
||||||
progdefaults.QRZ = HAMCALLNET;
|
|
||||||
progdefaults.changed = true;}
|
|
||||||
tooltip {You need a paid Hamcall online
|
|
||||||
subscription to access} xywh {25 297 105 20} down_box DOWN_BOX
|
|
||||||
code0 {o->value(progdefaults.QRZ == HAMCALLNET);}
|
|
||||||
}
|
|
||||||
Fl_Input inpQRZusername {
|
Fl_Input inpQRZusername {
|
||||||
label {User name}
|
label {User name}
|
||||||
callback {progdefaults.QRZusername = o->value();
|
callback {progdefaults.QRZusername = o->value();
|
||||||
progdefaults.changed = true;}
|
progdefaults.changed = true;}
|
||||||
tooltip {Your login name} xywh {235 263 150 20}
|
tooltip {Your login name} xywh {235 255 150 20}
|
||||||
code0 {o->value(progdefaults.QRZusername.c_str());}
|
code0 {o->value(progdefaults.QRZusername.c_str());}
|
||||||
code1 {inpQRZusername->labelsize(FL_NORMAL_SIZE);}
|
code1 {inpQRZusername->labelsize(FL_NORMAL_SIZE);}
|
||||||
class Fl_Input2
|
class Fl_Input2
|
||||||
|
@ -3752,7 +3782,7 @@ progdefaults.changed = true;}
|
||||||
label Password
|
label Password
|
||||||
callback {progdefaults.QRZuserpassword = o->value();
|
callback {progdefaults.QRZuserpassword = o->value();
|
||||||
progdefaults.changed = true;}
|
progdefaults.changed = true;}
|
||||||
tooltip {Your login password} xywh {235 297 150 20}
|
tooltip {Your login password} xywh {235 281 150 20}
|
||||||
code0 {o->value(progdefaults.QRZuserpassword.c_str());}
|
code0 {o->value(progdefaults.QRZuserpassword.c_str());}
|
||||||
code1 {o->type(FL_SECRET_INPUT);}
|
code1 {o->type(FL_SECRET_INPUT);}
|
||||||
code2 {inpQRZuserpassword->labelsize(FL_NORMAL_SIZE);}
|
code2 {inpQRZuserpassword->labelsize(FL_NORMAL_SIZE);}
|
||||||
|
@ -3763,16 +3793,7 @@ progdefaults.changed = true;}
|
||||||
callback {inpQRZuserpassword->type(inpQRZuserpassword->type() ^ FL_SECRET_INPUT);
|
callback {inpQRZuserpassword->type(inpQRZuserpassword->type() ^ FL_SECRET_INPUT);
|
||||||
inpQRZuserpassword->redraw();
|
inpQRZuserpassword->redraw();
|
||||||
o->label((inpQRZuserpassword->type() & FL_SECRET_INPUT) ? "Show" : "Hide");}
|
o->label((inpQRZuserpassword->type() & FL_SECRET_INPUT) ? "Show" : "Hide");}
|
||||||
tooltip {Show password in plain text} xywh {395 297 70 20}
|
tooltip {Show password in plain text} xywh {395 281 70 20}
|
||||||
}
|
|
||||||
Fl_Round_Button btnHamQTH {
|
|
||||||
label {HamQTH.com (free service http://www.hamqth.com)}
|
|
||||||
callback {set_qrz_buttons(o);
|
|
||||||
progdefaults.QRZ = HAMQTH;
|
|
||||||
progdefaults.changed = true;}
|
|
||||||
tooltip {You need a paid Hamcall online
|
|
||||||
subscription to access} xywh {26 332 121 20} down_box DOWN_BOX
|
|
||||||
code0 {o->value(progdefaults.QRZ == HAMQTH);}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,8 @@
|
||||||
#include "flmisc.h"
|
#include "flmisc.h"
|
||||||
extern Fl_Double_Window *dlgConfig;
|
extern Fl_Double_Window *dlgConfig;
|
||||||
extern Mode_Browser* mode_browser;
|
extern Mode_Browser* mode_browser;
|
||||||
void set_qrz_buttons(Fl_Button* b);
|
void set_qrzxml_buttons(Fl_Button* b);
|
||||||
|
void set_qrzweb_buttons(Fl_Button* b);
|
||||||
#include <FL/Fl_Double_Window.H>
|
#include <FL/Fl_Double_Window.H>
|
||||||
#include <FL/Fl_Tabs.H>
|
#include <FL/Fl_Tabs.H>
|
||||||
extern Fl_Tabs *tabsConfigure;
|
extern Fl_Tabs *tabsConfigure;
|
||||||
|
@ -403,18 +404,20 @@ extern Fl_Check_Button *chkRxStream;
|
||||||
extern Fl_Group *tabDTMF;
|
extern Fl_Group *tabDTMF;
|
||||||
extern Fl_Check_Button *chkDTMFdecode;
|
extern Fl_Check_Button *chkDTMFdecode;
|
||||||
extern Fl_Group *tabQRZ;
|
extern Fl_Group *tabQRZ;
|
||||||
extern Fl_Round_Button *btnQRZnotavailable;
|
extern Fl_Round_Button *btnQRZWEBnotavailable;
|
||||||
extern Fl_Round_Button *btnQRZonline;
|
extern Fl_Round_Button *btnQRZonline;
|
||||||
extern Fl_Round_Button *btnHAMCALLonline;
|
extern Fl_Round_Button *btnHAMCALLonline;
|
||||||
extern Fl_Round_Button *btnCALLOOK;
|
extern Fl_Round_Button *btnHamQTHonline;
|
||||||
|
extern Fl_Round_Button *btnQRZXMLnotavailable;
|
||||||
extern Fl_Round_Button *btnQRZcdrom;
|
extern Fl_Round_Button *btnQRZcdrom;
|
||||||
extern Fl_Input2 *txtQRZpathname;
|
|
||||||
extern Fl_Round_Button *btnQRZsub;
|
extern Fl_Round_Button *btnQRZsub;
|
||||||
extern Fl_Round_Button *btnHamcall;
|
extern Fl_Round_Button *btnHamcall;
|
||||||
|
extern Fl_Round_Button *btnHamQTH;
|
||||||
|
extern Fl_Round_Button *btnCALLOOK;
|
||||||
|
extern Fl_Input2 *txtQRZpathname;
|
||||||
extern Fl_Input2 *inpQRZusername;
|
extern Fl_Input2 *inpQRZusername;
|
||||||
extern Fl_Input2 *inpQRZuserpassword;
|
extern Fl_Input2 *inpQRZuserpassword;
|
||||||
extern Fl_Button *btnQRZpasswordShow;
|
extern Fl_Button *btnQRZpasswordShow;
|
||||||
extern Fl_Round_Button *btnHamQTH;
|
|
||||||
extern Fl_Input2 *inpEQSL_id;
|
extern Fl_Input2 *inpEQSL_id;
|
||||||
extern Fl_Input2 *inpEQSL_pwd;
|
extern Fl_Input2 *inpEQSL_pwd;
|
||||||
extern Fl_Button *btnEQSL_pwd_show;
|
extern Fl_Button *btnEQSL_pwd_show;
|
||||||
|
|
|
@ -650,11 +650,17 @@
|
||||||
"Connect to Digitalk socket server during program initialization", \
|
"Connect to Digitalk socket server during program initialization", \
|
||||||
false) \
|
false) \
|
||||||
/* QRZ */ \
|
/* QRZ */ \
|
||||||
ELEM_(int, QRZ, "QRZTYPE", \
|
ELEM_(int, QRZXML, "QRZXMLTYPE", \
|
||||||
"Callsign query type. Values are as follows:\n" \
|
"Callsign xml query type. Values are as follows:\n" \
|
||||||
" 0: none; 1: QRZ (paid sub.); 2: QRZ cdrom; 3: HamCall (paid sub.);\n" \
|
" 0: none; 1: QRZ (paid sub.); 2: QRZ cdrom; 3: HamCall (paid sub.);\n" \
|
||||||
" 4: QRZ (web browser); 5: HamCall (web browser). The default is 0.", \
|
" 4: callook free US calls xml service; 5: hamQTH free xml service.\n" \
|
||||||
QRZNONE) \
|
" The default is none.", \
|
||||||
|
QRZXMLNONE) \
|
||||||
|
ELEM_(int, QRZWEB, "QRZWEBTYPE", \
|
||||||
|
"Callsign browser query type. Values are as follows:\n" \
|
||||||
|
" 0: none; 1: QRZ web browser; 2: HamCall web browser\n" \
|
||||||
|
" 3: hamQTH web browser.\n The default is none.", \
|
||||||
|
QRZWEBNONE) \
|
||||||
ELEM_(std::string, QRZpathname, "QRZPATHNAME", \
|
ELEM_(std::string, QRZpathname, "QRZPATHNAME", \
|
||||||
"QRZ cdrom path", \
|
"QRZ cdrom path", \
|
||||||
"") \
|
"") \
|
||||||
|
|
|
@ -16,7 +16,19 @@ extern std::string lookup_country;
|
||||||
extern void clear_Lookup();
|
extern void clear_Lookup();
|
||||||
|
|
||||||
extern void CALLSIGNquery();
|
extern void CALLSIGNquery();
|
||||||
enum qrz_query_t { QRZ_EXIT = -1, QRZNONE, QRZNET, QRZCD, HAMCALLNET, QRZHTML, HAMCALLHTML, CALLOOK, HAMQTH };
|
|
||||||
|
enum qrz_xmlquery_t {
|
||||||
|
QRZXML_EXIT = -1,
|
||||||
|
QRZXMLNONE,
|
||||||
|
QRZNET, QRZCD,
|
||||||
|
HAMCALLNET,
|
||||||
|
CALLOOK,
|
||||||
|
HAMQTH };
|
||||||
|
|
||||||
|
enum qrz_webquery_t {
|
||||||
|
QRZWEB_EXIT = -1,
|
||||||
|
QRZWEBNONE,
|
||||||
|
QRZHTML, HAMCALLHTML, HAMQTHHTML };
|
||||||
|
|
||||||
extern void sendEQSL(const char *url);
|
extern void sendEQSL(const char *url);
|
||||||
extern void makeEQSL(const char *msg);
|
extern void makeEQSL(const char *msg);
|
||||||
|
|
|
@ -630,37 +630,47 @@ int configuration::setDefaults()
|
||||||
btnRSID->value(rsid);
|
btnRSID->value(rsid);
|
||||||
chkRSidWideSearch->value(rsidWideSearch);
|
chkRSidWideSearch->value(rsidWideSearch);
|
||||||
chkSlowCpu->value(slowcpu);
|
chkSlowCpu->value(slowcpu);
|
||||||
|
|
||||||
Fl_Button* qrzb = btnQRZnotavailable;
|
Fl_Button* qrzb = btnQRZXMLnotavailable;
|
||||||
switch (QRZ) {
|
Fl_Button* qrzb2 = btnQRZWEBnotavailable;
|
||||||
case QRZNONE:
|
switch (QRZXML) {
|
||||||
qrzb = btnQRZnotavailable;
|
|
||||||
break;
|
|
||||||
case QRZCD:
|
case QRZCD:
|
||||||
qrzb = btnQRZcdrom;
|
qrzb = btnQRZcdrom;
|
||||||
break;
|
break;
|
||||||
case QRZHTML:
|
|
||||||
qrzb = btnQRZonline;
|
|
||||||
break;
|
|
||||||
case QRZNET:
|
case QRZNET:
|
||||||
qrzb = btnQRZsub;
|
qrzb = btnQRZsub;
|
||||||
break;
|
break;
|
||||||
case HAMCALLNET:
|
case HAMCALLNET:
|
||||||
qrzb = btnHamcall;
|
qrzb = btnHamcall;
|
||||||
break;
|
break;
|
||||||
case HAMCALLHTML:
|
|
||||||
qrzb = btnHAMCALLonline;
|
|
||||||
break;
|
|
||||||
case CALLOOK:
|
case CALLOOK:
|
||||||
qrzb = btnCALLOOK;
|
qrzb = btnCALLOOK;
|
||||||
break;
|
break;
|
||||||
case HAMQTH:
|
case HAMQTH:
|
||||||
qrzb = btnHamQTH;
|
qrzb = btnHamQTH;
|
||||||
break;
|
break;
|
||||||
|
case QRZXMLNONE:
|
||||||
default :
|
default :
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
set_qrz_buttons(qrzb);
|
switch (QRZWEB) {
|
||||||
|
case QRZHTML:
|
||||||
|
qrzb2 = btnQRZonline;
|
||||||
|
break;
|
||||||
|
case HAMCALLHTML:
|
||||||
|
qrzb2 = btnHAMCALLonline;
|
||||||
|
break;
|
||||||
|
case HAMQTHHTML:
|
||||||
|
qrzb2 = btnHamQTHonline;
|
||||||
|
break;
|
||||||
|
case QRZWEBNONE:
|
||||||
|
default :
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
set_qrzxml_buttons(qrzb);
|
||||||
|
set_qrzweb_buttons(qrzb2);
|
||||||
|
|
||||||
txtQRZpathname->value(QRZpathname.c_str());
|
txtQRZpathname->value(QRZpathname.c_str());
|
||||||
|
|
||||||
btnsendid->value(sendid);
|
btnsendid->value(sendid);
|
||||||
|
|
|
@ -83,7 +83,8 @@ string lookup_latd;
|
||||||
string lookup_lond;
|
string lookup_lond;
|
||||||
string lookup_notes;
|
string lookup_notes;
|
||||||
|
|
||||||
qrz_query_t DB_query = QRZNONE;
|
qrz_xmlquery_t DB_XML_query = QRZXMLNONE;
|
||||||
|
qrz_webquery_t DB_WEB_query = QRZWEBNONE;
|
||||||
|
|
||||||
enum TAG {
|
enum TAG {
|
||||||
QRZ_IGNORE, QRZ_KEY, QRZ_ALERT, QRZ_ERROR, QRZ_CALL,
|
QRZ_IGNORE, QRZ_KEY, QRZ_ALERT, QRZ_ERROR, QRZ_CALL,
|
||||||
|
@ -470,7 +471,9 @@ void QRZclose(void)
|
||||||
|
|
||||||
CANCEL_THREAD(*QRZ_thread);
|
CANCEL_THREAD(*QRZ_thread);
|
||||||
|
|
||||||
DB_query = QRZ_EXIT;
|
DB_XML_query = QRZXML_EXIT;
|
||||||
|
DB_WEB_query = QRZWEB_EXIT;
|
||||||
|
|
||||||
pthread_mutex_lock(&qrz_mutex);
|
pthread_mutex_lock(&qrz_mutex);
|
||||||
pthread_cond_signal(&qrz_cond);
|
pthread_cond_signal(&qrz_cond);
|
||||||
pthread_mutex_unlock(&qrz_mutex);
|
pthread_mutex_unlock(&qrz_mutex);
|
||||||
|
@ -839,12 +842,12 @@ void parse_HAMQTH_html(const string& htmlpage)
|
||||||
if (p1 != string::npos)
|
if (p1 != string::npos)
|
||||||
lookup_notes.append(" ").append(htmlpage.substr(p, p1 - p));
|
lookup_notes.append(" ").append(htmlpage.substr(p, p1 - p));
|
||||||
}
|
}
|
||||||
if ((p = htmlpage.find("<adr_country>")) != string::npos) {
|
// if ((p = htmlpage.find("<adr_country>")) != string::npos) {
|
||||||
p += 13;
|
// p += 13;
|
||||||
p1 = htmlpage.find("</adr_country>");
|
// p1 = htmlpage.find("</adr_country>");
|
||||||
if (p1 != string::npos)
|
// if (p1 != string::npos)
|
||||||
lookup_notes.append(" ").append(htmlpage.substr(p, p1 - p));
|
// lookup_notes.append(" ").append(htmlpage.substr(p, p1 - p));
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
bool HAMQTHget(string& htmlpage)
|
bool HAMQTHget(string& htmlpage)
|
||||||
|
@ -906,6 +909,15 @@ void HAMCALL_DETAILS_query()
|
||||||
cb_mnuVisitURL(0, (void*)hamcallurl.c_str());
|
cb_mnuVisitURL(0, (void*)hamcallurl.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void HAMQTH_DETAILS_query()
|
||||||
|
{
|
||||||
|
string hamqthurl = "http://www.hamQTH.com/";
|
||||||
|
hamqthurl.append(callsign);
|
||||||
|
|
||||||
|
cb_mnuVisitURL(0, (void*)hamqthurl.c_str());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
static void *LOOKUP_loop(void *args)
|
static void *LOOKUP_loop(void *args)
|
||||||
|
@ -920,7 +932,7 @@ static void *LOOKUP_loop(void *args)
|
||||||
pthread_cond_wait(&qrz_cond, &qrz_mutex);
|
pthread_cond_wait(&qrz_cond, &qrz_mutex);
|
||||||
pthread_mutex_unlock(&qrz_mutex);
|
pthread_mutex_unlock(&qrz_mutex);
|
||||||
|
|
||||||
switch (DB_query) {
|
switch (DB_XML_query) {
|
||||||
case QRZCD :
|
case QRZCD :
|
||||||
QRZ_CD_query();
|
QRZ_CD_query();
|
||||||
break;
|
break;
|
||||||
|
@ -930,22 +942,31 @@ static void *LOOKUP_loop(void *args)
|
||||||
case HAMCALLNET :
|
case HAMCALLNET :
|
||||||
HAMCALLquery();
|
HAMCALLquery();
|
||||||
break;
|
break;
|
||||||
case QRZHTML :
|
|
||||||
QRZ_DETAILS_query();
|
|
||||||
break;
|
|
||||||
case HAMCALLHTML :
|
|
||||||
HAMCALL_DETAILS_query();
|
|
||||||
break;
|
|
||||||
case CALLOOK:
|
case CALLOOK:
|
||||||
CALLOOKquery();
|
CALLOOKquery();
|
||||||
break;
|
break;
|
||||||
case HAMQTH:
|
case HAMQTH:
|
||||||
HAMQTHquery();
|
HAMQTHquery();
|
||||||
break;
|
break;
|
||||||
case QRZ_EXIT:
|
case QRZXML_EXIT:
|
||||||
|
return NULL;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (DB_WEB_query) {
|
||||||
|
case QRZHTML :
|
||||||
|
QRZ_DETAILS_query();
|
||||||
|
break;
|
||||||
|
case HAMCALLHTML :
|
||||||
|
HAMCALL_DETAILS_query();
|
||||||
|
break;
|
||||||
|
case HAMQTHHTML :
|
||||||
|
HAMQTH_DETAILS_query();
|
||||||
|
break;
|
||||||
|
case QRZWEB_EXIT:
|
||||||
return NULL;
|
return NULL;
|
||||||
default:
|
default:
|
||||||
LOG_ERROR("Bad query type %d", DB_query);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -978,12 +999,10 @@ void CALLSIGNquery()
|
||||||
callsign.erase(slash);
|
callsign.erase(slash);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (DB_query = static_cast<qrz_query_t>(progdefaults.QRZ)) {
|
switch (DB_XML_query = static_cast<qrz_xmlquery_t>(progdefaults.QRZXML)) {
|
||||||
case QRZNET:
|
case QRZNET:
|
||||||
inpNotes->value("Request sent to\nqrz.com...");
|
inpNotes->value("Request sent to\nqrz.com...");
|
||||||
break;
|
break;
|
||||||
case QRZHTML: case HAMCALLHTML:
|
|
||||||
break;
|
|
||||||
case HAMCALLNET:
|
case HAMCALLNET:
|
||||||
inpNotes->value("Request sent to\nwww.hamcall.net...");
|
inpNotes->value("Request sent to\nwww.hamcall.net...");
|
||||||
break;
|
break;
|
||||||
|
@ -996,7 +1015,7 @@ void CALLSIGNquery()
|
||||||
}
|
}
|
||||||
if (!qCall->getQRZvalid()) {
|
if (!qCall->getQRZvalid()) {
|
||||||
inpNotes->value("QRZ DB error");
|
inpNotes->value("QRZ DB error");
|
||||||
DB_query = QRZNONE;
|
DB_XML_query = QRZXMLNONE;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -1006,11 +1025,15 @@ void CALLSIGNquery()
|
||||||
case HAMQTH:
|
case HAMQTH:
|
||||||
inpNotes->value("Request sent to \nhttp://hamqth.com...");
|
inpNotes->value("Request sent to \nhttp://hamqth.com...");
|
||||||
break;
|
break;
|
||||||
|
case QRZXMLNONE:
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
LOG_ERROR("Bad query type %d", DB_query);
|
LOG_ERROR("Bad query type %d", DB_XML_query);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DB_WEB_query = static_cast<qrz_webquery_t>(progdefaults.QRZWEB);
|
||||||
|
|
||||||
pthread_mutex_lock(&qrz_mutex);
|
pthread_mutex_lock(&qrz_mutex);
|
||||||
pthread_cond_signal(&qrz_cond);
|
pthread_cond_signal(&qrz_cond);
|
||||||
pthread_mutex_unlock(&qrz_mutex);
|
pthread_mutex_unlock(&qrz_mutex);
|
||||||
|
|
|
@ -422,7 +422,8 @@ void FTextRX::handle_context_menu(void)
|
||||||
show_item(RX_MENU_SERIAL);
|
show_item(RX_MENU_SERIAL);
|
||||||
show_item(RX_MENU_XCHG);
|
show_item(RX_MENU_XCHG);
|
||||||
}
|
}
|
||||||
else if (progdefaults.QRZ != QRZNONE) // "Look up call" shown only in non-contest mode
|
// "Look up call" shown only in non-contest mode
|
||||||
|
else if (progdefaults.QRZWEB != QRZWEBNONE || progdefaults.QRZXML != QRZXMLNONE)
|
||||||
show_item(RX_MENU_QRZ_THIS);
|
show_item(RX_MENU_QRZ_THIS);
|
||||||
|
|
||||||
if (menu[RX_MENU_QUICK_ENTRY].value()) {
|
if (menu[RX_MENU_QUICK_ENTRY].value()) {
|
||||||
|
|
Ładowanie…
Reference in New Issue