* Fix command line parsing and use of
    - xmlrpc server address/port
    - arq    server address/port
    - flrig  server address/port
pull/1/head
David Freese 2015-03-29 05:56:38 -05:00
rodzic 68f88eed65
commit 3c264e2868
14 zmienionych plików z 819 dodań i 455 usunięć

Wyświetl plik

@ -674,25 +674,6 @@ progdefaults.changed = true;
Fl_Group *tabLogServer=(Fl_Group *)0;
Fl_Input *xmllogServerAddress=(Fl_Input *)0;
static void cb_xmllogServerAddress(Fl_Input* o, void*) {
progdefaults.xmllog_address = o->value();
}
Fl_Input *xmllogServerPort=(Fl_Input *)0;
static void cb_xmllogServerPort(Fl_Input* o, void*) {
progdefaults.xmllog_port = o->value();
}
Fl_Button *btn_reconnect_log_server=(Fl_Button *)0;
static void cb_btn_reconnect_log_server(Fl_Button*, void*) {
progdefaults.xml_logbook = true;
connect_to_log_server();
}
Fl_Check_Button *btnNagMe=(Fl_Check_Button *)0;
static void cb_btnNagMe(Fl_Check_Button* o, void*) {
@ -5098,25 +5079,14 @@ static void cb_tabIO(Fl_Group*, void*) {
btnDisable_p2p_io_widgets->value(1);
}
Fl_Input2 *txtArq_ip_address=(Fl_Input2 *)0;
Fl_Check_Button *btnDisable_p2p_io_widgets=(Fl_Check_Button *)0;
static void cb_txtArq_ip_address(Fl_Input2* o, void*) {
progdefaults.arq_address = o->value();
progdefaults.changed = true;
}
Fl_Input2 *txtArq_ip_port_no=(Fl_Input2 *)0;
static void cb_txtArq_ip_port_no(Fl_Input2* o, void*) {
progdefaults.arq_port = o->value();
progdefaults.changed = true;
}
Fl_Button *btnDefault_arq_ip=(Fl_Button *)0;
static void cb_btnDefault_arq_ip(Fl_Button*, void*) {
set_ip_to_default(ARQ_IO);
progdefaults.changed = true;
static void cb_btnDisable_p2p_io_widgets(Fl_Check_Button* o, long) {
progStatus.ip_lock = o->value();
if(o->value())
disable_config_p2p_io_widgets();
else
enable_config_p2p_io_widgets();
}
Fl_Check_Button *btnEnable_arq=(Fl_Check_Button *)0;
@ -5143,24 +5113,25 @@ static void cb_btnEnable_kiss(Fl_Check_Button* o, void*) {
progdefaults.changed = true;
}
Fl_Button *btnDefault_xmlrpc_ip=(Fl_Button *)0;
Fl_Check_Button *btnEnable_ax25_decode=(Fl_Check_Button *)0;
static void cb_btnEnable_ax25_decode(Fl_Check_Button* o, void*) {
if(o->value())
progdefaults.ax25_decode_enabled = true;
else
progdefaults.ax25_decode_enabled = false;
static void cb_btnDefault_xmlrpc_ip(Fl_Button*, void*) {
set_ip_to_default(XMLRPC_IO);
progdefaults.changed = true;
}
Fl_Input2 *txtXmlrpc_ip_address=(Fl_Input2 *)0;
Fl_Check_Button *btnEnable_csma=(Fl_Check_Button *)0;
static void cb_txtXmlrpc_ip_address(Fl_Input2* o, void*) {
progdefaults.xmlrpc_address = o->value();
progdefaults.changed = true;
static void cb_btnEnable_csma(Fl_Check_Button* o, void*) {
if(o->value()) {
progdefaults.csma_enabled = true;
} else {
progdefaults.csma_enabled = false;
}
Fl_Input2 *txtXmlrpc_ip_port_no=(Fl_Input2 *)0;
static void cb_txtXmlrpc_ip_port_no(Fl_Input2* o, void*) {
progdefaults.xmlrpc_port = o->value();
progdefaults.changed = true;
}
@ -5178,6 +5149,14 @@ static void cb_txtKiss_ip_address(Fl_Input2* o, void*) {
progdefaults.changed = true;
}
Fl_Counter *cntKPSQLAttenuation=(Fl_Counter *)0;
static void cb_cntKPSQLAttenuation(Fl_Counter* o, void*) {
progdefaults.kpsql_attenuation = (int) o->value();
update_kpsql_fractional_gain(progdefaults.kpsql_attenuation);
progdefaults.changed = true;
}
Fl_Input2 *txtKiss_ip_io_port_no=(Fl_Input2 *)0;
static void cb_txtKiss_ip_io_port_no(Fl_Input2* o, void*) {
@ -5185,6 +5164,13 @@ static void cb_txtKiss_ip_io_port_no(Fl_Input2* o, void*) {
progdefaults.changed = true;
}
Fl_Counter *cntBusyChannelSeconds=(Fl_Counter *)0;
static void cb_cntBusyChannelSeconds(Fl_Counter* o, void*) {
progdefaults.busyChannelSeconds = (int) o->value();
progdefaults.changed = true;
}
Fl_Check_Button *btnEnableBusyChannel=(Fl_Check_Button *)0;
static void cb_btnEnableBusyChannel(Fl_Check_Button* o, void*) {
@ -5195,13 +5181,6 @@ else
progdefaults.changed = true;
}
Fl_Counter *cntBusyChannelSeconds=(Fl_Counter *)0;
static void cb_cntBusyChannelSeconds(Fl_Counter* o, void*) {
progdefaults.busyChannelSeconds = (int) o->value();
progdefaults.changed = true;
}
Fl_Input2 *txtKiss_ip_out_port_no=(Fl_Input2 *)0;
static void cb_txtKiss_ip_out_port_no(Fl_Input2* o, void*) {
@ -5220,42 +5199,117 @@ else
progdefaults.changed = true;
}
Fl_Counter *cntKPSQLAttenuation=(Fl_Counter *)0;
Fl_Button *btn_restart_kiss=(Fl_Button *)0;
static void cb_cntKPSQLAttenuation(Fl_Counter* o, void*) {
progdefaults.kpsql_attenuation = (int) o->value();
update_kpsql_fractional_gain(progdefaults.kpsql_attenuation);
static void cb_btn_restart_kiss(Fl_Button*, void*) {
//restart_kiss_server();
}
Fl_Input2 *txtArq_ip_address=(Fl_Input2 *)0;
static void cb_txtArq_ip_address(Fl_Input2* o, void*) {
progdefaults.arq_address = o->value();
progdefaults.changed = true;
}
Fl_Check_Button *btnDisable_p2p_io_widgets=(Fl_Check_Button *)0;
static void cb_btnDisable_p2p_io_widgets(Fl_Check_Button* o, long) {
if(o->value())
disable_config_p2p_io_widgets();
else
enable_config_p2p_io_widgets();
}
Fl_Check_Button *btnEnable_ax25_decode=(Fl_Check_Button *)0;
static void cb_btnEnable_ax25_decode(Fl_Check_Button* o, void*) {
if(o->value())
progdefaults.ax25_decode_enabled = true;
else
progdefaults.ax25_decode_enabled = false;
Fl_Input2 *txtArq_ip_port_no=(Fl_Input2 *)0;
static void cb_txtArq_ip_port_no(Fl_Input2* o, void*) {
progdefaults.arq_port = o->value();
progdefaults.changed = true;
}
Fl_Check_Button *btnEnable_csma=(Fl_Check_Button *)0;
Fl_Button *btnDefault_arq_ip=(Fl_Button *)0;
static void cb_btnEnable_csma(Fl_Check_Button* o, void*) {
if(o->value()) {
progdefaults.csma_enabled = true;
} else {
progdefaults.csma_enabled = false;
static void cb_btnDefault_arq_ip(Fl_Button*, void*) {
set_ip_to_default(ARQ_IO);
progdefaults.changed = true;
}
Fl_Button *btn_restart_arq=(Fl_Button *)0;
static void cb_btn_restart_arq(Fl_Button*, void*) {
//arq_restart();
}
Fl_Button *btnDefault_xmlrpc_ip=(Fl_Button *)0;
static void cb_btnDefault_xmlrpc_ip(Fl_Button*, void*) {
set_ip_to_default(XMLRPC_IO);
progdefaults.changed = true;
}
Fl_Input2 *txtXmlrpc_ip_address=(Fl_Input2 *)0;
static void cb_txtXmlrpc_ip_address(Fl_Input2* o, void*) {
progdefaults.xmlrpc_address = o->value();
progdefaults.changed = true;
}
Fl_Input2 *txtXmlrpc_ip_port_no=(Fl_Input2 *)0;
static void cb_txtXmlrpc_ip_port_no(Fl_Input2* o, void*) {
progdefaults.xmlrpc_port = o->value();
progdefaults.changed = true;
}
Fl_Button *btn_restart_xml=(Fl_Button *)0;
static void cb_btn_restart_xml(Fl_Button*, void*) {
//restart_xml_server();
}
Fl_Button *btnDefault_flrig_ip=(Fl_Button *)0;
static void cb_btnDefault_flrig_ip(Fl_Button*, void*) {
set_ip_to_default(FLRIG_IO);
progdefaults.changed = true;
}
Fl_Input2 *txt_flrig_ip_address=(Fl_Input2 *)0;
static void cb_txt_flrig_ip_address(Fl_Input2* o, void*) {
progdefaults.flrig_ip_address = o->value();
progdefaults.changed = true;
}
Fl_Input2 *txt_flrig_ip_port=(Fl_Input2 *)0;
static void cb_txt_flrig_ip_port(Fl_Input2* o, void*) {
progdefaults.flrig_ip_port = o->value();
progdefaults.changed = true;
}
Fl_Button *btn_reconnect_flrig_server=(Fl_Button *)0;
static void cb_btn_reconnect_flrig_server(Fl_Button*, void*) {
reconnect_to_flrig();
}
Fl_Input *txt_fllog_ip_address=(Fl_Input *)0;
static void cb_txt_fllog_ip_address(Fl_Input* o, void*) {
progdefaults.xmllog_address = o->value();
}
Fl_Input *txt_fllog_ip_port=(Fl_Input *)0;
static void cb_txt_fllog_ip_port(Fl_Input* o, void*) {
progdefaults.xmllog_port = o->value();
}
Fl_Button *btn_reconnect_log_server=(Fl_Button *)0;
static void cb_btn_reconnect_log_server(Fl_Button*, void*) {
progdefaults.xml_logbook = true;
progdefaults.changed = true;
connect_to_log_server();
}
Fl_Button *btnDefault_fllog_ip=(Fl_Button *)0;
static void cb_btnDefault_fllog_ip(Fl_Button*, void*) {
set_ip_to_default(FLLOG_IO);
progdefaults.changed = true;
}
@ -5305,7 +5359,6 @@ Fl_Double_Window* ConfigureDialog() {
tabOperator->tooltip(_("Operator information"));
tabOperator->callback((Fl_Callback*)cb_tabOperator);
tabOperator->when(FL_WHEN_CHANGED);
tabOperator->hide();
{ Fl_Group* o = new Fl_Group(55, 35, 490, 170, _("Station"));
o->box(FL_ENGRAVED_FRAME);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
@ -5414,6 +5467,7 @@ Fl_Double_Window* ConfigureDialog() {
} // Fl_Group* tabOperator
{ tabUI = new Fl_Group(0, 25, 600, 355, _("UI"));
tabUI->tooltip(_("User Interface"));
tabUI->hide();
{ tabsUI = new Fl_Tabs(0, 25, 600, 355);
tabsUI->selection_color(FL_LIGHT1);
{ tabBrowser = new Fl_Group(0, 50, 600, 330, _("Browser"));
@ -5831,23 +5885,14 @@ Fl_Double_Window* ConfigureDialog() {
} // Fl_Group* tabUserInterface
{ tabLogServer = new Fl_Group(0, 50, 600, 330, _("Log"));
tabLogServer->tooltip(_("User Interface - Logging"));
tabLogServer->hide();
{ Fl_Group* o = new Fl_Group(52, 315, 496, 55, _("Client/Server Logbook"));
o->box(FL_ENGRAVED_FRAME);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
{ Fl_Input* o = xmllogServerAddress = new Fl_Input(149, 336, 100, 24, _("Address:"));
xmllogServerAddress->tooltip(_("Enter URL address of server"));
xmllogServerAddress->callback((Fl_Callback*)cb_xmllogServerAddress);
o->value(progdefaults.xmllog_address.c_str());
} // Fl_Input* xmllogServerAddress
{ Fl_Input* o = xmllogServerPort = new Fl_Input(307, 336, 70, 24, _("Port:"));
xmllogServerPort->tooltip(_("Enter Port # assigned to server"));
xmllogServerPort->callback((Fl_Callback*)cb_xmllogServerPort);
o->value(progdefaults.xmllog_port.c_str());
} // Fl_Input* xmllogServerPort
{ btn_reconnect_log_server = new Fl_Button(410, 336, 115, 24, _("Reconnect"));
btn_reconnect_log_server->callback((Fl_Callback*)cb_btn_reconnect_log_server);
} // Fl_Button* btn_reconnect_log_server
{ Fl_Group* o = new Fl_Group(75, 335, 468, 25, _("Server IP Address/Port configured on IO tab"));
o->box(FL_FLAT_BOX);
o->align(Fl_Align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE));
o->end();
} // Fl_Group* o
o->end();
} // Fl_Group* o
{ Fl_Group* o = new Fl_Group(52, 59, 496, 180, _("QSO logging"));
@ -6186,6 +6231,7 @@ ab and newline are automatically included."));
} // Fl_Group* tabWF_UI
{ tabColorsFonts = new Fl_Group(0, 50, 600, 330, _("Clrs/Fnts"));
tabColorsFonts->tooltip(_("User Interface - Colors / Fonts"));
tabColorsFonts->hide();
{ tabsColors = new Fl_Tabs(0, 55, 600, 325);
{ Fl_Group* o = new Fl_Group(0, 75, 600, 305, _("Rx/Tx"));
{ Fl_ListBox* o = listbox_charset_status = new Fl_ListBox(96, 85, 165, 24, _("Rx/Tx Character set"));
@ -10824,115 +10870,63 @@ and restarted if needed."));
tabIO->tooltip(_("Program to Program Communications"));
tabIO->callback((Fl_Callback*)cb_tabIO);
tabIO->hide();
{ Fl_Group* o = new Fl_Group(15, 260, 570, 55, _("ARQ"));
o->box(FL_ENGRAVED_FRAME);
{ Fl_Group* o = new Fl_Group(6, 34, 588, 102);
o->box(FL_ENGRAVED_BOX);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
{ Fl_Input2* o = txtArq_ip_address = new Fl_Input2(20, 280, 205, 25, _("IP Address"));
txtArq_ip_address->tooltip(_("IP Address format: nnn.nnn.nnn.nnn"));
txtArq_ip_address->box(FL_DOWN_BOX);
txtArq_ip_address->color(FL_BACKGROUND2_COLOR);
txtArq_ip_address->selection_color(FL_SELECTION_COLOR);
txtArq_ip_address->labeltype(FL_NORMAL_LABEL);
txtArq_ip_address->labelfont(0);
txtArq_ip_address->labelsize(14);
txtArq_ip_address->labelcolor(FL_FOREGROUND_COLOR);
txtArq_ip_address->callback((Fl_Callback*)cb_txtArq_ip_address);
txtArq_ip_address->align(Fl_Align(FL_ALIGN_RIGHT));
txtArq_ip_address->when(FL_WHEN_CHANGED);
txtArq_ip_address->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.arq_address.c_str());
} // Fl_Input2* txtArq_ip_address
{ Fl_Input2* o = txtArq_ip_port_no = new Fl_Input2(329, 280, 80, 25, _("Port"));
txtArq_ip_port_no->tooltip(_("IP Address Port Number"));
txtArq_ip_port_no->box(FL_DOWN_BOX);
txtArq_ip_port_no->color(FL_BACKGROUND2_COLOR);
txtArq_ip_port_no->selection_color(FL_SELECTION_COLOR);
txtArq_ip_port_no->labeltype(FL_NORMAL_LABEL);
txtArq_ip_port_no->labelfont(0);
txtArq_ip_port_no->labelsize(14);
txtArq_ip_port_no->labelcolor(FL_FOREGROUND_COLOR);
txtArq_ip_port_no->callback((Fl_Callback*)cb_txtArq_ip_port_no);
txtArq_ip_port_no->align(Fl_Align(FL_ALIGN_RIGHT));
txtArq_ip_port_no->when(FL_WHEN_CHANGED);
txtArq_ip_port_no->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.arq_port.c_str());
} // Fl_Input2* txtArq_ip_port_no
{ btnDefault_arq_ip = new Fl_Button(470, 279, 105, 27, _("Default"));
btnDefault_arq_ip->tooltip(_("Returns IP Address and port\nnumber to the default value."));
btnDefault_arq_ip->callback((Fl_Callback*)cb_btnDefault_arq_ip);
} // Fl_Button* btnDefault_arq_ip
o->end();
} // Fl_Group* o
{ Fl_Group* o = new Fl_Group(15, 42, 570, 75, _("Enable ARQ for programs that support TCP and FLDIGI ARQ protocol.\nEnable KIS\
{ Fl_Check_Button* o = btnDisable_p2p_io_widgets = new Fl_Check_Button(12, 112, 85, 20, _("Lock"));
btnDisable_p2p_io_widgets->tooltip(_("Allow/Disallow Changes"));
btnDisable_p2p_io_widgets->down_box(FL_DOWN_BOX);
btnDisable_p2p_io_widgets->callback((Fl_Callback*)cb_btnDisable_p2p_io_widgets);
o->value(progStatus.ip_lock);
} // Fl_Check_Button* btnDisable_p2p_io_widgets
{ Fl_Check_Button* o = btnEnable_arq = new Fl_Check_Button(96, 112, 115, 20, _("Enable ARQ"));
btnEnable_arq->tooltip(_("Used For PSKMail and FLDIGI Suite of Programs"));
btnEnable_arq->type(102);
btnEnable_arq->down_box(FL_DOWN_BOX);
btnEnable_arq->callback((Fl_Callback*)cb_btnEnable_arq);
if(progdefaults.data_io_enabled == ARQ_IO) o->value(true);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Check_Button* btnEnable_arq
{ Fl_Check_Button* o = btnEnable_kiss = new Fl_Check_Button(221, 112, 115, 20, _("Enable KISS"));
btnEnable_kiss->tooltip(_("Used for BPQ32"));
btnEnable_kiss->type(102);
btnEnable_kiss->down_box(FL_DOWN_BOX);
btnEnable_kiss->callback((Fl_Callback*)cb_btnEnable_kiss);
if(progdefaults.data_io_enabled == KISS_IO) o->value(true);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Check_Button* btnEnable_kiss
{ Fl_Check_Button* o = btnEnable_ax25_decode = new Fl_Check_Button(346, 112, 115, 20, _("AX25 Decode"));
btnEnable_ax25_decode->tooltip(_("Decode AX25 Packets into human readable form"));
btnEnable_ax25_decode->down_box(FL_DOWN_BOX);
btnEnable_ax25_decode->callback((Fl_Callback*)cb_btnEnable_ax25_decode);
if(progdefaults.ax25_decode_enabled) o->value(true); else o->value(false);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Check_Button* btnEnable_ax25_decode
{ Fl_Check_Button* o = btnEnable_csma = new Fl_Check_Button(471, 112, 115, 20, _("Enable CSMA"));
btnEnable_csma->tooltip(_("Used for BPQ32"));
btnEnable_csma->down_box(FL_DOWN_BOX);
btnEnable_csma->callback((Fl_Callback*)cb_btnEnable_csma);
if(progdefaults.csma_enabled) o->value(true);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Check_Button* btnEnable_csma
{ new Fl_Box(8, 37, 582, 72, _("Enable ARQ for programs that support TCP and FLDIGI ARQ protocol.\nEnable KIS\
S for programs that supports UDP and TNC-2 KISS protocol.\nOnly one interface \
(ARQ/KISS) can be active at any given time.\nIP address and port number change\
s require FLDIGI restart."));
o->box(FL_BORDER_BOX);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
(ARQ/KISS) can be active at any given time.\nKISS/ARQ/XML Addr/Port changes re\
quire program restart."));
} // Fl_Box* o
o->end();
} // Fl_Group* o
{ Fl_Check_Button* o = btnEnable_arq = new Fl_Check_Button(130, 122, 110, 20, _("Enable ARQ"));
btnEnable_arq->tooltip(_("Used For PSKMail and FLDIGI Suite of Programs"));
btnEnable_arq->type(102);
btnEnable_arq->down_box(FL_DOWN_BOX);
btnEnable_arq->callback((Fl_Callback*)cb_btnEnable_arq);
if(progdefaults.data_io_enabled == ARQ_IO) o->value(true);
} // Fl_Check_Button* btnEnable_arq
{ Fl_Check_Button* o = btnEnable_kiss = new Fl_Check_Button(245, 122, 110, 20, _("Enable KISS"));
btnEnable_kiss->tooltip(_("Used for BPQ32"));
btnEnable_kiss->type(102);
btnEnable_kiss->down_box(FL_DOWN_BOX);
btnEnable_kiss->callback((Fl_Callback*)cb_btnEnable_kiss);
if(progdefaults.data_io_enabled == KISS_IO) o->value(true);
} // Fl_Check_Button* btnEnable_kiss
{ Fl_Group* o = new Fl_Group(15, 318, 570, 55, _("XMLRPC"));
{ Fl_Group* o = new Fl_Group(6, 138, 588, 85, _("KISS"));
o->box(FL_ENGRAVED_FRAME);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
{ btnDefault_xmlrpc_ip = new Fl_Button(470, 337, 105, 27, _("Default"));
btnDefault_xmlrpc_ip->tooltip(_("Returns IP Address and port\nnumber to the default value."));
btnDefault_xmlrpc_ip->callback((Fl_Callback*)cb_btnDefault_xmlrpc_ip);
} // Fl_Button* btnDefault_xmlrpc_ip
{ Fl_Input2* o = txtXmlrpc_ip_address = new Fl_Input2(20, 338, 205, 25, _("IP Address"));
txtXmlrpc_ip_address->tooltip(_("IP Address format: nnn.nnn.nnn.nnn"));
txtXmlrpc_ip_address->box(FL_DOWN_BOX);
txtXmlrpc_ip_address->color(FL_BACKGROUND2_COLOR);
txtXmlrpc_ip_address->selection_color(FL_SELECTION_COLOR);
txtXmlrpc_ip_address->labeltype(FL_NORMAL_LABEL);
txtXmlrpc_ip_address->labelfont(0);
txtXmlrpc_ip_address->labelsize(14);
txtXmlrpc_ip_address->labelcolor(FL_FOREGROUND_COLOR);
txtXmlrpc_ip_address->callback((Fl_Callback*)cb_txtXmlrpc_ip_address);
txtXmlrpc_ip_address->align(Fl_Align(FL_ALIGN_RIGHT));
txtXmlrpc_ip_address->when(FL_WHEN_CHANGED);
txtXmlrpc_ip_address->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.xmlrpc_address.c_str());
} // Fl_Input2* txtXmlrpc_ip_address
{ Fl_Input2* o = txtXmlrpc_ip_port_no = new Fl_Input2(329, 338, 80, 25, _("Port"));
txtXmlrpc_ip_port_no->tooltip(_("IP Address Port Number"));
txtXmlrpc_ip_port_no->box(FL_DOWN_BOX);
txtXmlrpc_ip_port_no->color(FL_BACKGROUND2_COLOR);
txtXmlrpc_ip_port_no->selection_color(FL_SELECTION_COLOR);
txtXmlrpc_ip_port_no->labeltype(FL_NORMAL_LABEL);
txtXmlrpc_ip_port_no->labelfont(0);
txtXmlrpc_ip_port_no->labelsize(14);
txtXmlrpc_ip_port_no->labelcolor(FL_FOREGROUND_COLOR);
txtXmlrpc_ip_port_no->callback((Fl_Callback*)cb_txtXmlrpc_ip_port_no);
txtXmlrpc_ip_port_no->align(Fl_Align(FL_ALIGN_RIGHT));
txtXmlrpc_ip_port_no->when(FL_WHEN_CHANGED);
txtXmlrpc_ip_port_no->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.xmlrpc_port.c_str());
} // Fl_Input2* txtXmlrpc_ip_port_no
o->end();
} // Fl_Group* o
{ Fl_Group* o = new Fl_Group(15, 145, 570, 112, _("KISS"));
o->box(FL_ENGRAVED_FRAME);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
{ btnDefault_kiss_ip = new Fl_Button(470, 207, 105, 26, _("Default"));
{ Fl_Button* o = btnDefault_kiss_ip = new Fl_Button(425, 193, 73, 25, _("Default"));
btnDefault_kiss_ip->tooltip(_("Returns IP Address and port\nnumber to the default value."));
btnDefault_kiss_ip->callback((Fl_Callback*)cb_btnDefault_kiss_ip);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btnDefault_kiss_ip
{ Fl_Input2* o = txtKiss_ip_address = new Fl_Input2(20, 164, 185, 25, _("IP Address"));
txtKiss_ip_address->tooltip(_("IP Address for KISS interface"));
{ Fl_Input2* o = txtKiss_ip_address = new Fl_Input2(56, 193, 230, 25, _("Addr"));
txtKiss_ip_address->tooltip(_("IP Address for KISS interface\nIP Address format: nnn.nnn.nnn.nnn\nor name: i\
.e. localhost"));
txtKiss_ip_address->box(FL_DOWN_BOX);
txtKiss_ip_address->color(FL_BACKGROUND2_COLOR);
txtKiss_ip_address->selection_color(FL_SELECTION_COLOR);
@ -10945,8 +10939,22 @@ s require FLDIGI restart."));
txtKiss_ip_address->when(FL_WHEN_CHANGED);
txtKiss_ip_address->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.kiss_address.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txtKiss_ip_address
{ Fl_Input2* o = txtKiss_ip_io_port_no = new Fl_Input2(298, 164, 55, 25, _("I/O"));
{ Fl_Counter* o = cntKPSQLAttenuation = new Fl_Counter(56, 169, 110, 20, _("KPSQL Attenuate"));
cntKPSQLAttenuation->tooltip(_("Attenuation"));
cntKPSQLAttenuation->minimum(1);
cntKPSQLAttenuation->maximum(999);
cntKPSQLAttenuation->step(1);
cntKPSQLAttenuation->value(1);
cntKPSQLAttenuation->callback((Fl_Callback*)cb_cntKPSQLAttenuation);
cntKPSQLAttenuation->align(Fl_Align(FL_ALIGN_RIGHT));
o->value(progdefaults.kpsql_attenuation);
o->step(1,10);
update_kpsql_fractional_gain(progdefaults.kpsql_attenuation);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Counter* cntKPSQLAttenuation
{ Fl_Input2* o = txtKiss_ip_io_port_no = new Fl_Input2(333, 164, 55, 25, _("I/O"));
txtKiss_ip_io_port_no->tooltip(_("IP Address Port Number"));
txtKiss_ip_io_port_no->box(FL_DOWN_BOX);
txtKiss_ip_io_port_no->color(FL_BACKGROUND2_COLOR);
@ -10960,14 +10968,10 @@ s require FLDIGI restart."));
txtKiss_ip_io_port_no->when(FL_WHEN_CHANGED);
txtKiss_ip_io_port_no->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.kiss_io_port.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txtKiss_ip_io_port_no
{ Fl_Check_Button* o = btnEnableBusyChannel = new Fl_Check_Button(20, 201, 160, 15, _("Enable Busy Channel"));
btnEnableBusyChannel->down_box(FL_DOWN_BOX);
btnEnableBusyChannel->callback((Fl_Callback*)cb_btnEnableBusyChannel);
if(progdefaults.enableBusyChannel) o->value(true);
else o->value(false);
} // Fl_Check_Button* btnEnableBusyChannel
{ Fl_Counter* o = cntBusyChannelSeconds = new Fl_Counter(200, 198, 130, 20, _("Continue After (sec)"));
{ Fl_Counter* o = cntBusyChannelSeconds = new Fl_Counter(56, 145, 110, 20, _("Continue"));
cntBusyChannelSeconds->tooltip(_("Continue after in seconds"));
cntBusyChannelSeconds->minimum(1);
cntBusyChannelSeconds->maximum(999);
cntBusyChannelSeconds->step(1);
@ -10976,8 +10980,17 @@ s require FLDIGI restart."));
cntBusyChannelSeconds->align(Fl_Align(FL_ALIGN_RIGHT));
o->value(progdefaults.busyChannelSeconds);
o->step(1,10);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Counter* cntBusyChannelSeconds
{ Fl_Input2* o = txtKiss_ip_out_port_no = new Fl_Input2(392, 164, 55, 25, _("O"));
{ Fl_Check_Button* o = btnEnableBusyChannel = new Fl_Check_Button(425, 147, 65, 15, _("Busy"));
btnEnableBusyChannel->tooltip(_("Enable Busy Channel"));
btnEnableBusyChannel->down_box(FL_DOWN_BOX);
btnEnableBusyChannel->callback((Fl_Callback*)cb_btnEnableBusyChannel);
if(progdefaults.enableBusyChannel) o->value(true);
else o->value(false);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Check_Button* btnEnableBusyChannel
{ Fl_Input2* o = txtKiss_ip_out_port_no = new Fl_Input2(333, 193, 55, 25, _("O"));
txtKiss_ip_out_port_no->tooltip(_("Output port number when same IP address used"));
txtKiss_ip_out_port_no->box(FL_DOWN_BOX);
txtKiss_ip_out_port_no->color(FL_BACKGROUND2_COLOR);
@ -10991,45 +11004,197 @@ s require FLDIGI restart."));
txtKiss_ip_out_port_no->when(FL_WHEN_CHANGED);
txtKiss_ip_out_port_no->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.kiss_out_port.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txtKiss_ip_out_port_no
{ Fl_Check_Button* o = btnEnable_dual_port = new Fl_Check_Button(480, 168, 90, 16, _("Dual Port"));
{ Fl_Check_Button* o = btnEnable_dual_port = new Fl_Check_Button(425, 168, 90, 16, _("Dual Port"));
btnEnable_dual_port->tooltip(_("Enable when both programs are using the same IP address"));
btnEnable_dual_port->down_box(FL_DOWN_BOX);
btnEnable_dual_port->callback((Fl_Callback*)cb_btnEnable_dual_port);
if(progdefaults.kiss_dual_port_enabled) o->value(true); else o->value(false);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Check_Button* btnEnable_dual_port
{ Fl_Counter* o = cntKPSQLAttenuation = new Fl_Counter(20, 225, 130, 20, _("KPSQL Attenuation"));
cntKPSQLAttenuation->minimum(1);
cntKPSQLAttenuation->maximum(999);
cntKPSQLAttenuation->step(1);
cntKPSQLAttenuation->value(1);
cntKPSQLAttenuation->callback((Fl_Callback*)cb_cntKPSQLAttenuation);
cntKPSQLAttenuation->align(Fl_Align(FL_ALIGN_RIGHT));
o->value(progdefaults.kpsql_attenuation);
o->step(1,10);
update_kpsql_fractional_gain(progdefaults.kpsql_attenuation);
} // Fl_Counter* cntKPSQLAttenuation
{ Fl_Button* o = btn_restart_kiss = new Fl_Button(505, 193, 82, 25, _("Restart"));
btn_restart_kiss->callback((Fl_Callback*)cb_btn_restart_kiss);
btn_restart_kiss->hide();
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btn_restart_kiss
o->end();
} // Fl_Group* o
{ Fl_Group* o = new Fl_Group(6, 225, 588, 35, _("ARQ"));
o->box(FL_ENGRAVED_FRAME);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
{ Fl_Input2* o = txtArq_ip_address = new Fl_Input2(56, 229, 230, 25, _("Addr"));
txtArq_ip_address->tooltip(_("IP Address for ARQ interface\nIP Address format: nnn.nnn.nnn.nnn\nor name: i.\
e. localhost"));
txtArq_ip_address->box(FL_DOWN_BOX);
txtArq_ip_address->color(FL_BACKGROUND2_COLOR);
txtArq_ip_address->selection_color(FL_SELECTION_COLOR);
txtArq_ip_address->labeltype(FL_NORMAL_LABEL);
txtArq_ip_address->labelfont(0);
txtArq_ip_address->labelsize(14);
txtArq_ip_address->labelcolor(FL_FOREGROUND_COLOR);
txtArq_ip_address->callback((Fl_Callback*)cb_txtArq_ip_address);
txtArq_ip_address->align(Fl_Align(FL_ALIGN_RIGHT));
txtArq_ip_address->when(FL_WHEN_CHANGED);
o->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.arq_address.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txtArq_ip_address
{ Fl_Input2* o = txtArq_ip_port_no = new Fl_Input2(333, 229, 55, 25, _("Port"));
txtArq_ip_port_no->tooltip(_("IP Address Port Number"));
txtArq_ip_port_no->box(FL_DOWN_BOX);
txtArq_ip_port_no->color(FL_BACKGROUND2_COLOR);
txtArq_ip_port_no->selection_color(FL_SELECTION_COLOR);
txtArq_ip_port_no->labeltype(FL_NORMAL_LABEL);
txtArq_ip_port_no->labelfont(0);
txtArq_ip_port_no->labelsize(14);
txtArq_ip_port_no->labelcolor(FL_FOREGROUND_COLOR);
txtArq_ip_port_no->callback((Fl_Callback*)cb_txtArq_ip_port_no);
txtArq_ip_port_no->align(Fl_Align(FL_ALIGN_RIGHT));
txtArq_ip_port_no->when(FL_WHEN_CHANGED);
o->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.arq_port.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txtArq_ip_port_no
{ Fl_Button* o = btnDefault_arq_ip = new Fl_Button(425, 229, 73, 25, _("Default"));
btnDefault_arq_ip->tooltip(_("Returns IP Address and port\nnumber to the default value."));
btnDefault_arq_ip->callback((Fl_Callback*)cb_btnDefault_arq_ip);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btnDefault_arq_ip
{ Fl_Button* o = btn_restart_arq = new Fl_Button(505, 229, 82, 25, _("Restart"));
btn_restart_arq->callback((Fl_Callback*)cb_btn_restart_arq);
btn_restart_arq->hide();
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btn_restart_arq
o->end();
} // Fl_Group* o
{ Fl_Box* o = new Fl_Box(6, 262, 588, 1);
o->box(FL_BORDER_BOX);
} // Fl_Box* o
{ Fl_Group* o = new Fl_Group(6, 266, 588, 35, _("XML"));
o->box(FL_ENGRAVED_FRAME);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
{ Fl_Button* o = btnDefault_xmlrpc_ip = new Fl_Button(425, 270, 73, 25, _("Default"));
btnDefault_xmlrpc_ip->tooltip(_("Returns IP Address and port\nnumber to the default value."));
btnDefault_xmlrpc_ip->callback((Fl_Callback*)cb_btnDefault_xmlrpc_ip);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btnDefault_xmlrpc_ip
{ Fl_Input2* o = txtXmlrpc_ip_address = new Fl_Input2(56, 270, 230, 25, _("Addr"));
txtXmlrpc_ip_address->tooltip(_("IP Address for XMLRPC interface\nIP Address format: nnn.nnn.nnn.nnn\nor name:\
i.e. localhost"));
txtXmlrpc_ip_address->box(FL_DOWN_BOX);
txtXmlrpc_ip_address->color(FL_BACKGROUND2_COLOR);
txtXmlrpc_ip_address->selection_color(FL_SELECTION_COLOR);
txtXmlrpc_ip_address->labeltype(FL_NORMAL_LABEL);
txtXmlrpc_ip_address->labelfont(0);
txtXmlrpc_ip_address->labelsize(14);
txtXmlrpc_ip_address->labelcolor(FL_FOREGROUND_COLOR);
txtXmlrpc_ip_address->callback((Fl_Callback*)cb_txtXmlrpc_ip_address);
txtXmlrpc_ip_address->align(Fl_Align(FL_ALIGN_RIGHT));
txtXmlrpc_ip_address->when(FL_WHEN_CHANGED);
o->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.xmlrpc_address.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txtXmlrpc_ip_address
{ Fl_Input2* o = txtXmlrpc_ip_port_no = new Fl_Input2(333, 270, 55, 25, _("Port"));
txtXmlrpc_ip_port_no->tooltip(_("IP Address Port Number"));
txtXmlrpc_ip_port_no->box(FL_DOWN_BOX);
txtXmlrpc_ip_port_no->color(FL_BACKGROUND2_COLOR);
txtXmlrpc_ip_port_no->selection_color(FL_SELECTION_COLOR);
txtXmlrpc_ip_port_no->labeltype(FL_NORMAL_LABEL);
txtXmlrpc_ip_port_no->labelfont(0);
txtXmlrpc_ip_port_no->labelsize(14);
txtXmlrpc_ip_port_no->labelcolor(FL_FOREGROUND_COLOR);
txtXmlrpc_ip_port_no->callback((Fl_Callback*)cb_txtXmlrpc_ip_port_no);
txtXmlrpc_ip_port_no->align(Fl_Align(FL_ALIGN_RIGHT));
txtXmlrpc_ip_port_no->when(FL_WHEN_CHANGED);
o->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.xmlrpc_port.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txtXmlrpc_ip_port_no
{ Fl_Button* o = btn_restart_xml = new Fl_Button(505, 270, 82, 25, _("Restart"));
btn_restart_xml->callback((Fl_Callback*)cb_btn_restart_xml);
btn_restart_xml->hide();
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btn_restart_xml
o->end();
} // Fl_Group* o
{ Fl_Group* o = new Fl_Group(6, 304, 588, 35, _("flrig"));
o->box(FL_ENGRAVED_FRAME);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
{ Fl_Button* o = btnDefault_flrig_ip = new Fl_Button(425, 309, 73, 25, _("Default"));
btnDefault_flrig_ip->tooltip(_("Returns IP Address and port\nnumber to the default value."));
btnDefault_flrig_ip->callback((Fl_Callback*)cb_btnDefault_flrig_ip);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btnDefault_flrig_ip
{ Fl_Input2* o = txt_flrig_ip_address = new Fl_Input2(56, 309, 230, 25, _("Addr"));
txt_flrig_ip_address->tooltip(_("IP Address for flrig interface\nIP Address format: nnn.nnn.nnn.nnn\nor name: \
i.e. localhost"));
txt_flrig_ip_address->box(FL_DOWN_BOX);
txt_flrig_ip_address->color(FL_BACKGROUND2_COLOR);
txt_flrig_ip_address->selection_color(FL_SELECTION_COLOR);
txt_flrig_ip_address->labeltype(FL_NORMAL_LABEL);
txt_flrig_ip_address->labelfont(0);
txt_flrig_ip_address->labelsize(14);
txt_flrig_ip_address->labelcolor(FL_FOREGROUND_COLOR);
txt_flrig_ip_address->callback((Fl_Callback*)cb_txt_flrig_ip_address);
txt_flrig_ip_address->align(Fl_Align(FL_ALIGN_RIGHT));
txt_flrig_ip_address->when(FL_WHEN_CHANGED);
o->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.flrig_ip_address.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txt_flrig_ip_address
{ Fl_Input2* o = txt_flrig_ip_port = new Fl_Input2(333, 309, 55, 25, _("Port"));
txt_flrig_ip_port->tooltip(_("IP Address Port Number"));
txt_flrig_ip_port->box(FL_DOWN_BOX);
txt_flrig_ip_port->color(FL_BACKGROUND2_COLOR);
txt_flrig_ip_port->selection_color(FL_SELECTION_COLOR);
txt_flrig_ip_port->labeltype(FL_NORMAL_LABEL);
txt_flrig_ip_port->labelfont(0);
txt_flrig_ip_port->labelsize(14);
txt_flrig_ip_port->labelcolor(FL_FOREGROUND_COLOR);
txt_flrig_ip_port->callback((Fl_Callback*)cb_txt_flrig_ip_port);
txt_flrig_ip_port->align(Fl_Align(FL_ALIGN_RIGHT));
txt_flrig_ip_port->when(FL_WHEN_CHANGED);
o->labelsize(FL_NORMAL_SIZE);
o->value(progdefaults.flrig_ip_port.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input2* txt_flrig_ip_port
{ Fl_Button* o = btn_reconnect_flrig_server = new Fl_Button(505, 309, 82, 25, _("Reconnect"));
btn_reconnect_flrig_server->callback((Fl_Callback*)cb_btn_reconnect_flrig_server);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btn_reconnect_flrig_server
o->end();
} // Fl_Group* o
{ Fl_Group* o = new Fl_Group(6, 340, 588, 36, _("fllog"));
o->box(FL_ENGRAVED_FRAME);
o->align(Fl_Align(FL_ALIGN_TOP_LEFT|FL_ALIGN_INSIDE));
{ Fl_Input* o = txt_fllog_ip_address = new Fl_Input(56, 345, 230, 25, _("Addr"));
txt_fllog_ip_address->tooltip(_("IP Address for fllog interface\nIP Address format: nnn.nnn.nnn.nnn\nor name: \
i.e. localhost"));
txt_fllog_ip_address->callback((Fl_Callback*)cb_txt_fllog_ip_address);
txt_fllog_ip_address->align(Fl_Align(FL_ALIGN_RIGHT));
o->value(progdefaults.xmllog_address.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input* txt_fllog_ip_address
{ Fl_Input* o = txt_fllog_ip_port = new Fl_Input(333, 345, 55, 25, _("Port"));
txt_fllog_ip_port->tooltip(_("IP Address Port Number"));
txt_fllog_ip_port->callback((Fl_Callback*)cb_txt_fllog_ip_port);
txt_fllog_ip_port->align(Fl_Align(FL_ALIGN_RIGHT));
o->value(progdefaults.xmllog_port.c_str());
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Input* txt_fllog_ip_port
{ Fl_Button* o = btn_reconnect_log_server = new Fl_Button(505, 345, 82, 25, _("Reconnect"));
btn_reconnect_log_server->callback((Fl_Callback*)cb_btn_reconnect_log_server);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btn_reconnect_log_server
{ Fl_Button* o = btnDefault_fllog_ip = new Fl_Button(425, 345, 73, 25, _("Default"));
btnDefault_fllog_ip->tooltip(_("Returns IP Address and port\nnumber to the default value."));
btnDefault_fllog_ip->callback((Fl_Callback*)cb_btnDefault_fllog_ip);
progStatus.ip_lock ? o->deactivate() : o->activate();
} // Fl_Button* btnDefault_fllog_ip
o->end();
} // Fl_Group* o
{ Fl_Check_Button* o = btnDisable_p2p_io_widgets = new Fl_Check_Button(15, 122, 110, 20, _("Lock"));
btnDisable_p2p_io_widgets->tooltip(_("Allow/Disallow Changes"));
btnDisable_p2p_io_widgets->down_box(FL_DOWN_BOX);
btnDisable_p2p_io_widgets->callback((Fl_Callback*)cb_btnDisable_p2p_io_widgets);
o->value(1);
disable_config_p2p_io_widgets();
} // Fl_Check_Button* btnDisable_p2p_io_widgets
{ Fl_Check_Button* o = btnEnable_ax25_decode = new Fl_Check_Button(360, 122, 110, 20, _("AX25 Decode"));
btnEnable_ax25_decode->tooltip(_("Decode AX25 Packets into human readable form"));
btnEnable_ax25_decode->down_box(FL_DOWN_BOX);
btnEnable_ax25_decode->callback((Fl_Callback*)cb_btnEnable_ax25_decode);
if(progdefaults.ax25_decode_enabled) o->value(true); else o->value(false);
} // Fl_Check_Button* btnEnable_ax25_decode
{ Fl_Check_Button* o = btnEnable_csma = new Fl_Check_Button(474, 122, 110, 20, _("Enable CSMA"));
btnEnable_csma->tooltip(_("Used for BPQ32"));
btnEnable_csma->down_box(FL_DOWN_BOX);
btnEnable_csma->callback((Fl_Callback*)cb_btnEnable_csma);
if(progdefaults.csma_enabled) o->value(true);
} // Fl_Check_Button* btnEnable_csma
btnDisable_p2p_io_widgets->value(1);
tabIO->end();
} // Fl_Group* tabIO

Wyświetl plik

@ -98,7 +98,7 @@ decl {\#include "rx_extract.h"} {private local
decl {\#include "kmlserver.h"} {private local
}
decl {\#include "macroedit.h"} {selected private local
decl {\#include "macroedit.h"} {private local
}
decl {extern void WefaxDestDirSet(Fl_File_Chooser *w, void *userdata);} {private local
@ -340,15 +340,15 @@ static const char szBaudRates[] = "300|600|1200|2400|4800|9600|19200|38400|57600
static const char szProsigns[] = "~|%|&|+|=|{|}|<|>|[|]| ";} {}
Fl_Window {} {
label {Fldigi configuration} open
xywh {813 47 600 415} type Double color 45 selection_color 51 labelsize 18 align 80 non_modal visible
xywh {942 44 600 415} type Double color 45 selection_color 51 labelsize 18 align 80 non_modal visible
} {
Fl_Tabs tabsConfigure {open
xywh {0 0 600 380} color 50 selection_color 50
} {
Fl_Group tabOperator {
label Operator
callback {progdefaults.changed = true;} open
tooltip {Operator information} xywh {0 25 600 355} when 1 hide
callback {progdefaults.changed = true;} open selected
tooltip {Operator information} xywh {0 25 600 355} when 1
} {
Fl_Group {} {
label Station open
@ -428,7 +428,7 @@ progdefaults.changed = true;}
}
Fl_Group tabUI {
label UI open
tooltip {User Interface} xywh {0 25 600 355}
tooltip {User Interface} xywh {0 25 600 355} hide
} {
Fl_Tabs tabsUI {open
xywh {0 25 600 355} selection_color 50
@ -886,30 +886,16 @@ progdefaults.changed = true;}
}
Fl_Group tabLogServer {
label Log open
tooltip {User Interface - Logging} xywh {0 50 600 330} hide
tooltip {User Interface - Logging} xywh {0 50 600 330}
} {
Fl_Group {} {
label {Client/Server Logbook} open
xywh {52 315 496 55} box ENGRAVED_FRAME align 21
} {
Fl_Input xmllogServerAddress {
label {Address:}
callback {progdefaults.xmllog_address = o->value();}
tooltip {Enter URL address of server} xywh {149 336 100 24}
code0 {o->value(progdefaults.xmllog_address.c_str());}
}
Fl_Input xmllogServerPort {
label {Port:}
callback {progdefaults.xmllog_port = o->value();}
tooltip {Enter Port \# assigned to server} xywh {307 336 70 24}
code0 {o->value(progdefaults.xmllog_port.c_str());}
}
Fl_Button btn_reconnect_log_server {
label Reconnect
callback {progdefaults.xml_logbook = true;
connect_to_log_server();}
xywh {410 336 115 24}
}
Fl_Group {} {
label {Server IP Address/Port configured on IO tab} open
xywh {75 335 468 25} box FLAT_BOX align 20
} {}
}
Fl_Group {} {
label {QSO logging} open
@ -1341,7 +1327,7 @@ WF_UI();}
}
Fl_Group tabColorsFonts {
label {Clrs/Fnts} open
tooltip {User Interface - Colors / Fonts} xywh {0 50 600 330}
tooltip {User Interface - Colors / Fonts} xywh {0 50 600 330} hide
} {
Fl_Tabs tabsColors {open
xywh {0 55 600 325}
@ -6342,46 +6328,22 @@ progdefaults.changed = true;}
tooltip {Program to Program Communications} xywh {0 25 600 355} hide
code0 {btnDisable_p2p_io_widgets->value(1);}
} {
Fl_Group {} {
label ARQ open
xywh {15 260 570 55} box ENGRAVED_FRAME align 21
Fl_Group {} {open
xywh {6 34 588 102} box ENGRAVED_BOX align 21
} {
Fl_Input txtArq_ip_address {
label {IP Address}
callback {progdefaults.arq_address = o->value();
progdefaults.changed = true;}
tooltip {IP Address format: nnn.nnn.nnn.nnn} xywh {20 280 205 25} align 8 when 1
code0 {txtArq_ip_address->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.arq_address.c_str());}
class Fl_Input2
Fl_Check_Button btnDisable_p2p_io_widgets {
label Lock user_data_type long
callback {progStatus.ip_lock = o->value();
if(o->value())
disable_config_p2p_io_widgets();
else
enable_config_p2p_io_widgets();}
tooltip {Allow/Disallow Changes} xywh {12 112 85 20} down_box DOWN_BOX
code0 {o->value(progStatus.ip_lock);}
}
Fl_Input txtArq_ip_port_no {
label Port
callback {progdefaults.arq_port = o->value();
progdefaults.changed = true;}
tooltip {IP Address Port Number} xywh {329 280 80 25} align 8 when 1
code0 {txtArq_ip_port_no->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.arq_port.c_str());}
class Fl_Input2
}
Fl_Button btnDefault_arq_ip {
label Default
callback {set_ip_to_default(ARQ_IO);
progdefaults.changed = true;}
tooltip {Returns IP Address and port
number to the default value.} xywh {470 279 105 27}
}
}
Fl_Group {} {
label {Enable ARQ for programs that support TCP and FLDIGI ARQ protocol.
Enable KISS for programs that supports UDP and TNC-2 KISS protocol.
Only one interface (ARQ/KISS) can be active at any given time.
IP address and port number changes require FLDIGI restart.} open
xywh {15 42 570 75} box BORDER_BOX align 21
} {}
Fl_Check_Button btnEnable_arq {
label {Enable ARQ}
callback {if(o->value()) {
Fl_Check_Button btnEnable_arq {
label {Enable ARQ}
callback {if(o->value()) {
progdefaults.changed = true;
progdefaults.data_io_enabled = ARQ_IO;
data_io_enabled = ARQ_IO;
@ -6389,105 +6351,128 @@ IP address and port number changes require FLDIGI restart.} open
}
progdefaults.changed = true;}
tooltip {Used For PSKMail and FLDIGI Suite of Programs} xywh {130 122 110 20} type Radio down_box DOWN_BOX
code0 {if(progdefaults.data_io_enabled == ARQ_IO) o->value(true);}
}
Fl_Check_Button btnEnable_kiss {
label {Enable KISS}
callback {if(o->value()) {
tooltip {Used For PSKMail and FLDIGI Suite of Programs} xywh {96 112 115 20} type Radio down_box DOWN_BOX
code0 {if(progdefaults.data_io_enabled == ARQ_IO) o->value(true);}
code1 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Check_Button btnEnable_kiss {
label {Enable KISS}
callback {if(o->value()) {
progdefaults.data_io_enabled = KISS_IO;
data_io_enabled = KISS_IO;
enable_disable_kpsql();
}
progdefaults.changed = true;}
tooltip {Used for BPQ32} xywh {245 122 110 20} type Radio down_box DOWN_BOX
code0 {if(progdefaults.data_io_enabled == KISS_IO) o->value(true);}
}
Fl_Group {} {
label XMLRPC open
xywh {15 318 570 55} box ENGRAVED_FRAME align 21
} {
Fl_Button btnDefault_xmlrpc_ip {
label Default
callback {set_ip_to_default(XMLRPC_IO);
progdefaults.changed = true;}
tooltip {Returns IP Address and port
number to the default value.} xywh {470 337 105 27}
tooltip {Used for BPQ32} xywh {221 112 115 20} type Radio down_box DOWN_BOX
code0 {if(progdefaults.data_io_enabled == KISS_IO) o->value(true);}
code1 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Input txtXmlrpc_ip_address {
label {IP Address}
callback {progdefaults.xmlrpc_address = o->value();
Fl_Check_Button btnEnable_ax25_decode {
label {AX25 Decode}
callback {if(o->value())
progdefaults.ax25_decode_enabled = true;
else
progdefaults.ax25_decode_enabled = false;
progdefaults.changed = true;}
tooltip {IP Address format: nnn.nnn.nnn.nnn} xywh {20 338 205 25} align 8 when 1
code0 {txtXmlrpc_ip_address->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.xmlrpc_address.c_str());}
class Fl_Input2
tooltip {Decode AX25 Packets into human readable form} xywh {346 112 115 20} down_box DOWN_BOX
code0 {if(progdefaults.ax25_decode_enabled) o->value(true); else o->value(false);}
code1 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Input txtXmlrpc_ip_port_no {
label Port
callback {progdefaults.xmlrpc_port = o->value();
Fl_Check_Button btnEnable_csma {
label {Enable CSMA}
callback {if(o->value()) {
progdefaults.csma_enabled = true;
} else {
progdefaults.csma_enabled = false;
}
progdefaults.changed = true;}
tooltip {IP Address Port Number} xywh {329 338 80 25} align 8 when 1
code0 {txtXmlrpc_ip_port_no->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.xmlrpc_port.c_str());}
class Fl_Input2
tooltip {Used for BPQ32} xywh {471 112 115 20} down_box DOWN_BOX
code0 {if(progdefaults.csma_enabled) o->value(true);}
code1 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Box {} {
label {Enable ARQ for programs that support TCP and FLDIGI ARQ protocol.
Enable KISS for programs that supports UDP and TNC-2 KISS protocol.
Only one interface (ARQ/KISS) can be active at any given time.
KISS/ARQ/XML Addr/Port changes require program restart.}
xywh {8 37 582 72}
}
}
Fl_Group {} {
label KISS open
xywh {15 145 570 112} box ENGRAVED_FRAME align 21
xywh {6 138 588 85} box ENGRAVED_FRAME align 21
} {
Fl_Button btnDefault_kiss_ip {
label Default
callback {set_ip_to_default(KISS_IO);
progdefaults.changed = true;}
tooltip {Returns IP Address and port
number to the default value.} xywh {470 207 105 26}
number to the default value.} xywh {425 193 73 25}
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Input txtKiss_ip_address {
label {IP Address}
label Addr
callback {progdefaults.kiss_address = o->value();
progdefaults.changed = true;}
tooltip {IP Address for KISS interface} xywh {20 164 185 25} align 8 when 1
tooltip {IP Address for KISS interface
IP Address format: nnn.nnn.nnn.nnn
or name: i.e. localhost} xywh {56 193 230 25} align 8 when 1
code0 {txtKiss_ip_address->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.kiss_address.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Counter cntKPSQLAttenuation {
label {KPSQL Attenuate}
callback {progdefaults.kpsql_attenuation = (int) o->value();
update_kpsql_fractional_gain(progdefaults.kpsql_attenuation);
progdefaults.changed = true;}
tooltip Attenuation xywh {56 169 110 20} align 8 minimum 1 maximum 999 step 1 value 1
code0 {o->value(progdefaults.kpsql_attenuation);}
code1 {o->step(1,10);}
code2 {update_kpsql_fractional_gain(progdefaults.kpsql_attenuation);}
code3 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Input txtKiss_ip_io_port_no {
label {I/O}
callback {progdefaults.kiss_io_port = o->value();
progdefaults.changed = true;}
tooltip {IP Address Port Number} xywh {298 164 55 25} align 8 when 1
tooltip {IP Address Port Number} xywh {333 164 55 25} align 8 when 1
code0 {txtKiss_ip_io_port_no->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.kiss_io_port.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Counter cntBusyChannelSeconds {
label Continue
callback {progdefaults.busyChannelSeconds = (int) o->value();
progdefaults.changed = true;}
tooltip {Continue after in seconds} xywh {56 145 110 20} align 8 minimum 1 maximum 999 step 1 value 1
code0 {o->value(progdefaults.busyChannelSeconds);}
code1 {o->step(1,10);}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Check_Button btnEnableBusyChannel {
label {Enable Busy Channel}
label Busy
callback {if(o->value())
progdefaults.enableBusyChannel = true;
else
progdefaults.enableBusyChannel = false;
progdefaults.changed = true;}
xywh {20 201 160 15} down_box DOWN_BOX
tooltip {Enable Busy Channel} xywh {425 147 65 15} down_box DOWN_BOX
code0 {if(progdefaults.enableBusyChannel) o->value(true);}
code1 {else o->value(false);}
}
Fl_Counter cntBusyChannelSeconds {
label {Continue After (sec)}
callback {progdefaults.busyChannelSeconds = (int) o->value();
progdefaults.changed = true;}
xywh {200 198 130 20} align 8 minimum 1 maximum 999 step 1 value 1
code0 {o->value(progdefaults.busyChannelSeconds);}
code1 {o->step(1,10);}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Input txtKiss_ip_out_port_no {
label O
callback {progdefaults.kiss_out_port = o->value();
progdefaults.changed = true;}
tooltip {Output port number when same IP address used} xywh {392 164 55 25} align 8 when 1
tooltip {Output port number when same IP address used} xywh {333 193 55 25} align 8 when 1
code0 {txtKiss_ip_out_port_no->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.kiss_out_port.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Check_Button btnEnable_dual_port {
@ -6498,51 +6483,180 @@ else
progdefaults.kiss_dual_port_enabled = false;
progdefaults.changed = true;}
tooltip {Enable when both programs are using the same IP address} xywh {480 168 90 16} down_box DOWN_BOX
tooltip {Enable when both programs are using the same IP address} xywh {425 168 90 16} down_box DOWN_BOX
code0 {if(progdefaults.kiss_dual_port_enabled) o->value(true); else o->value(false);}
code1 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Counter cntKPSQLAttenuation {
label {KPSQL Attenuation}
callback {progdefaults.kpsql_attenuation = (int) o->value();
update_kpsql_fractional_gain(progdefaults.kpsql_attenuation);
progdefaults.changed = true;}
xywh {20 225 130 20} align 8 minimum 1 maximum 999 step 1 value 1
code0 {o->value(progdefaults.kpsql_attenuation);}
code1 {o->step(1,10);}
code2 {update_kpsql_fractional_gain(progdefaults.kpsql_attenuation);}
Fl_Button btn_restart_kiss {
label Restart
callback {//restart_kiss_server();}
xywh {505 193 82 25} hide
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
}
Fl_Check_Button btnDisable_p2p_io_widgets {
label Lock user_data_type long
callback {if(o->value())
disable_config_p2p_io_widgets();
else
enable_config_p2p_io_widgets();}
tooltip {Allow/Disallow Changes} xywh {15 122 110 20} down_box DOWN_BOX
code0 {o->value(1);}
code1 {disable_config_p2p_io_widgets();}
}
Fl_Check_Button btnEnable_ax25_decode {
label {AX25 Decode}
callback {if(o->value())
progdefaults.ax25_decode_enabled = true;
else
progdefaults.ax25_decode_enabled = false;
Fl_Group {} {
label ARQ open
xywh {6 225 588 35} box ENGRAVED_FRAME align 21
} {
Fl_Input txtArq_ip_address {
label Addr
callback {progdefaults.arq_address = o->value();
progdefaults.changed = true;}
tooltip {Decode AX25 Packets into human readable form} xywh {360 122 110 20} down_box DOWN_BOX
code0 {if(progdefaults.ax25_decode_enabled) o->value(true); else o->value(false);}
}
Fl_Check_Button btnEnable_csma {
label {Enable CSMA}
callback {if(o->value()) {
progdefaults.csma_enabled = true;
} else {
progdefaults.csma_enabled = false;
}
tooltip {IP Address for ARQ interface
IP Address format: nnn.nnn.nnn.nnn
or name: i.e. localhost} xywh {56 229 230 25} align 8 when 1
code0 {o->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.arq_address.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Input txtArq_ip_port_no {
label Port
callback {progdefaults.arq_port = o->value();
progdefaults.changed = true;}
tooltip {Used for BPQ32} xywh {474 122 110 20} down_box DOWN_BOX
code0 {if(progdefaults.csma_enabled) o->value(true);}
tooltip {IP Address Port Number} xywh {333 229 55 25} align 8 when 1
code0 {o->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.arq_port.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Button btnDefault_arq_ip {
label Default
callback {set_ip_to_default(ARQ_IO);
progdefaults.changed = true;}
tooltip {Returns IP Address and port
number to the default value.} xywh {425 229 73 25}
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Button btn_restart_arq {
label Restart
callback {//arq_restart();}
xywh {505 229 82 25} hide
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
}
Fl_Box {} {
xywh {6 262 588 1} box BORDER_BOX
}
Fl_Group {} {
label XML open
xywh {6 266 588 35} box ENGRAVED_FRAME align 21
} {
Fl_Button btnDefault_xmlrpc_ip {
label Default
callback {set_ip_to_default(XMLRPC_IO);
progdefaults.changed = true;}
tooltip {Returns IP Address and port
number to the default value.} xywh {425 270 73 25}
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Input txtXmlrpc_ip_address {
label Addr
callback {progdefaults.xmlrpc_address = o->value();
progdefaults.changed = true;}
tooltip {IP Address for XMLRPC interface
IP Address format: nnn.nnn.nnn.nnn
or name: i.e. localhost} xywh {56 270 230 25} align 8 when 1
code0 {o->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.xmlrpc_address.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Input txtXmlrpc_ip_port_no {
label Port
callback {progdefaults.xmlrpc_port = o->value();
progdefaults.changed = true;}
tooltip {IP Address Port Number} xywh {333 270 55 25} align 8 when 1
code0 {o->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.xmlrpc_port.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Button btn_restart_xml {
label Restart
callback {//restart_xml_server();}
xywh {505 270 82 25} hide
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
}
Fl_Group {} {
label flrig open
xywh {6 304 588 35} box ENGRAVED_FRAME align 21
} {
Fl_Button btnDefault_flrig_ip {
label Default
callback {set_ip_to_default(FLRIG_IO);
progdefaults.changed = true;}
tooltip {Returns IP Address and port
number to the default value.} xywh {425 309 73 25}
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Input txt_flrig_ip_address {
label Addr
callback {progdefaults.flrig_ip_address = o->value();
progdefaults.changed = true;}
tooltip {IP Address for flrig interface
IP Address format: nnn.nnn.nnn.nnn
or name: i.e. localhost} xywh {56 309 230 25} align 8 when 1
code0 {o->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.flrig_ip_address.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Input txt_flrig_ip_port {
label Port
callback {progdefaults.flrig_ip_port = o->value();
progdefaults.changed = true;}
tooltip {IP Address Port Number} xywh {333 309 55 25} align 8 when 1
code0 {o->labelsize(FL_NORMAL_SIZE);}
code1 {o->value(progdefaults.flrig_ip_port.c_str());}
code2 {progStatus.ip_lock ? o->deactivate() : o->activate();}
class Fl_Input2
}
Fl_Button btn_reconnect_flrig_server {
label Reconnect
callback {reconnect_to_flrig();}
xywh {505 309 82 25}
code0 {\#include "rigsupport.h"}
code1 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
}
Fl_Group {} {
label fllog open
xywh {6 340 588 36} box ENGRAVED_FRAME align 21
} {
Fl_Input txt_fllog_ip_address {
label Addr
callback {progdefaults.xmllog_address = o->value();}
tooltip {IP Address for fllog interface
IP Address format: nnn.nnn.nnn.nnn
or name: i.e. localhost} xywh {56 345 230 25} align 8
code0 {o->value(progdefaults.xmllog_address.c_str());}
code1 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Input txt_fllog_ip_port {
label Port
callback {progdefaults.xmllog_port = o->value();}
tooltip {IP Address Port Number} xywh {333 345 55 25} align 8
code0 {o->value(progdefaults.xmllog_port.c_str());}
code1 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Button btn_reconnect_log_server {
label Reconnect
callback {progdefaults.xml_logbook = true;
progdefaults.changed = true;
connect_to_log_server();}
xywh {505 345 82 25}
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
Fl_Button btnDefault_fllog_ip {
label Default
callback {set_ip_to_default(FLLOG_IO);
progdefaults.changed = true;}
tooltip {Returns IP Address and port
number to the default value.} xywh {425 345 73 25}
code0 {progStatus.ip_lock ? o->deactivate() : o->activate();}
}
}
}
}

Wyświetl plik

@ -375,7 +375,11 @@ static int main_hmin = HMIN;
time_t program_start_time = 0;
bool xmlrpc_address_override_flag = false;
bool xmlrpc_port_override_flag = false;
bool arq_address_override_flag = false;
bool arq_port_override_flag = false;
bool kiss_address_override_flag = false;
std::string override_xmlrpc_address = "";
std::string override_xmlrpc_port = "";
@ -7724,48 +7728,76 @@ void disable_config_p2p_io_widgets(void)
{
btnEnable_arq->deactivate();
btnEnable_kiss->deactivate();
txtArq_ip_address->deactivate();
txtArq_ip_port_no->deactivate();
btnDefault_arq_ip->deactivate();
btnEnable_ax25_decode->deactivate();
btnEnable_csma->deactivate();
txtKiss_ip_address->deactivate();
txtKiss_ip_io_port_no->deactivate();
txtKiss_ip_out_port_no->deactivate();
btnEnable_dual_port->deactivate();
btnEnableBusyChannel->deactivate();
cntKPSQLAttenuation->deactivate();
cntBusyChannelSeconds->deactivate();
btnDefault_kiss_ip->deactivate();
btn_restart_kiss->deactivate();
txtArq_ip_address->deactivate();
txtArq_ip_port_no->deactivate();
btnDefault_arq_ip->deactivate();
btn_restart_arq->deactivate();
txtXmlrpc_ip_address->deactivate();
txtXmlrpc_ip_port_no->deactivate();
btnDefault_xmlrpc_ip->deactivate();
btn_restart_xml->deactivate();
//btnEnableBusyChannel->deactivate();
//cntBusyChannelSeconds->deactivate();
txt_flrig_ip_address->deactivate();
txt_flrig_ip_port->deactivate();
btnDefault_flrig_ip->deactivate();
btn_reconnect_flrig_server->deactivate();
txt_fllog_ip_address->deactivate();
txt_fllog_ip_port->deactivate();
btnDefault_fllog_ip->deactivate();
btn_reconnect_log_server->deactivate();
}
void enable_config_p2p_io_widgets(void)
{
btnEnable_arq->activate();
btnEnable_kiss->activate();
txtArq_ip_address->activate();
txtArq_ip_port_no->activate();
btnDefault_arq_ip->activate();
btnEnable_ax25_decode->activate();
btnEnable_csma->activate();
txtKiss_ip_address->activate();
txtKiss_ip_io_port_no->activate();
txtKiss_ip_out_port_no->activate();
btnEnable_dual_port->activate();
btnEnableBusyChannel->activate();
cntKPSQLAttenuation->activate();
cntBusyChannelSeconds->activate();
btnDefault_kiss_ip->activate();
btn_restart_kiss->activate();
txtArq_ip_address->activate();
txtArq_ip_port_no->activate();
btnDefault_arq_ip->activate();
btn_restart_arq->activate();
txtXmlrpc_ip_address->activate();
txtXmlrpc_ip_port_no->activate();
btnDefault_xmlrpc_ip->activate();
btn_restart_xml->activate();
//btnEnableBusyChannel->activate();
//cntBusyChannelSeconds->activate();
txt_flrig_ip_address->activate();
txt_flrig_ip_port->activate();
btnDefault_flrig_ip->activate();
btn_reconnect_flrig_server->activate();
txt_fllog_ip_address->activate();
txt_fllog_ip_port->activate();
btnDefault_fllog_ip->activate();
btn_reconnect_log_server->activate();
}
void set_ip_to_default(int which_io)
@ -7796,6 +7828,20 @@ void set_ip_to_default(int which_io)
txtXmlrpc_ip_address->do_callback();
txtXmlrpc_ip_port_no->do_callback();
break;
case FLRIG_IO:
txt_flrig_ip_address->value(DEFAULT_FLRIG_IP_ADDRESS);
txt_flrig_ip_port->value(DEFAULT_FLRIG_IP_PORT);
txt_flrig_ip_address->do_callback();
txt_flrig_ip_port->do_callback();
break;
case FLLOG_IO:
txt_fllog_ip_address->value(DEFAULT_FLLOG_IP_ADDRESS);
txt_fllog_ip_port->value(DEFAULT_FLLOG_IP_PORT);
txt_fllog_ip_address->do_callback();
txt_fllog_ip_port->do_callback();
break;
}
}

Wyświetl plik

@ -86,10 +86,6 @@ extern Fl_Check_Button *btn2NagMe;
extern Fl_Check_Button *btn2_confirm_exit;
extern Fl_Check_Button *btn_check_for_updates;
extern Fl_Group *tabLogServer;
#include <FL/Fl_Input.H>
extern Fl_Input *xmllogServerAddress;
extern Fl_Input *xmllogServerPort;
extern Fl_Button *btn_reconnect_log_server;
extern Fl_Check_Button *btnNagMe;
extern Fl_Check_Button *btnClearOnSave;
extern Fl_Check_Button *btnCallUpperCase;
@ -146,6 +142,7 @@ extern Fl_Group *tabColorsFonts;
extern Fl_Tabs *tabsColors;
#include "fl_digi.h"
extern Fl_ListBox *listbox_charset_status;
#include <FL/Fl_Input.H>
extern Fl_Input *RxText;
extern Fl_Button *btnRxColor;
extern Fl_Button *btnTxColor;
@ -642,25 +639,37 @@ extern Fl_Button *btn_test_prog1;
extern Fl_Button *btn_test_prog2;
extern Fl_Button *btn_test_prog3;
extern Fl_Group *tabIO;
extern Fl_Check_Button *btnDisable_p2p_io_widgets;
extern Fl_Check_Button *btnEnable_arq;
extern Fl_Check_Button *btnEnable_kiss;
extern Fl_Check_Button *btnEnable_ax25_decode;
extern Fl_Check_Button *btnEnable_csma;
extern Fl_Button *btnDefault_kiss_ip;
extern Fl_Input2 *txtKiss_ip_address;
extern Fl_Counter *cntKPSQLAttenuation;
extern Fl_Input2 *txtKiss_ip_io_port_no;
extern Fl_Counter *cntBusyChannelSeconds;
extern Fl_Check_Button *btnEnableBusyChannel;
extern Fl_Input2 *txtKiss_ip_out_port_no;
extern Fl_Check_Button *btnEnable_dual_port;
extern Fl_Button *btn_restart_kiss;
extern Fl_Input2 *txtArq_ip_address;
extern Fl_Input2 *txtArq_ip_port_no;
extern Fl_Button *btnDefault_arq_ip;
extern Fl_Check_Button *btnEnable_arq;
extern Fl_Check_Button *btnEnable_kiss;
extern Fl_Button *btn_restart_arq;
extern Fl_Button *btnDefault_xmlrpc_ip;
extern Fl_Input2 *txtXmlrpc_ip_address;
extern Fl_Input2 *txtXmlrpc_ip_port_no;
extern Fl_Button *btnDefault_kiss_ip;
extern Fl_Input2 *txtKiss_ip_address;
extern Fl_Input2 *txtKiss_ip_io_port_no;
extern Fl_Check_Button *btnEnableBusyChannel;
extern Fl_Counter *cntBusyChannelSeconds;
extern Fl_Input2 *txtKiss_ip_out_port_no;
extern Fl_Check_Button *btnEnable_dual_port;
extern Fl_Counter *cntKPSQLAttenuation;
extern Fl_Check_Button *btnDisable_p2p_io_widgets;
extern Fl_Check_Button *btnEnable_ax25_decode;
extern Fl_Check_Button *btnEnable_csma;
extern Fl_Button *btn_restart_xml;
extern Fl_Button *btnDefault_flrig_ip;
extern Fl_Input2 *txt_flrig_ip_address;
extern Fl_Input2 *txt_flrig_ip_port;
#include "rigsupport.h"
extern Fl_Button *btn_reconnect_flrig_server;
extern Fl_Input *txt_fllog_ip_address;
extern Fl_Input *txt_fllog_ip_port;
extern Fl_Button *btn_reconnect_log_server;
extern Fl_Button *btnDefault_fllog_ip;
extern Fl_Button *btnSaveConfig;
#include <FL/Fl_Return_Button.H>
extern Fl_Return_Button *btnCloseConfig;

Wyświetl plik

@ -1505,6 +1505,12 @@
ELEM_(bool, csma_enabled, "CSMA_ENABLED", \
"Use CSMA on heavy traffic channels (AX25)", \
true) \
ELEM_(std::string, flrig_ip_address, "FLRIG_IP_ADDRESS", \
"IP Address of flrig server", \
DEFAULT_FLRIG_IP_ADDRESS) \
ELEM_(std::string, flrig_ip_port, "FLRIG_IP_PORT", \
"IP port number of flrig server", \
DEFAULT_FLRIG_IP_PORT) \
ELEM_(bool, show_all_codes, "SHOW_ALL_CODES", \
"Display all rx char's using ascii3 table", \
false) \

Wyświetl plik

@ -37,16 +37,18 @@
#define DEFAULT_XMLPRC_IP_ADDRESS "127.0.0.1"
#define DEFAULT_XMLRPC_IP_PORT "7362"
#define DISABLED_IO 0x00
#define ARQ_IO 0x01
#define KISS_IO 0x02
#define XMLRPC_IO 0x04
#define DEFAULT_FLRIG_IP_ADDRESS "127.0.0.1"
#define DEFAULT_FLRIG_IP_PORT "12345"
#define DEFAULT_FLLOG_IP_ADDRESS "127.0.0.1"
#define DEFAULT_FLLOG_IP_PORT "8421"
enum {DISABLED_IO, ARQ_IO, KISS_IO, XMLRPC_IO, FLRIG_IO, FLLOG_IO};
#define RSID_KISS_NOTIFY 0x01
#define RSID_KISS_ACTIVE 0x02
#define RSID_KISS_USER 0x03
// This variable indepent of progdefaults.data_io_enabled
// and progStatus.data_io_enabled
// Only on start de we assign this variable with progStatus.data_io_enabled.

Wyświetl plik

@ -231,7 +231,11 @@ extern void queue_execute_after_rx(void*);
extern time_t program_start_time;
extern bool xmlrpc_address_override_flag;
extern bool xmlrpc_port_override_flag;
extern bool arq_address_override_flag;
extern bool arq_port_override_flag;
extern bool kiss_address_override_flag;
extern std::string override_xmlrpc_address;
extern std::string override_xmlrpc_port;

Wyświetl plik

@ -98,6 +98,7 @@ extern int arq_get_char();
// ARQ mail implementation
extern void arq_init();
extern void arq_close();
extern void arq_restart();
extern void WriteARQ(unsigned char);
extern void checkTLF();

Wyświetl plik

@ -95,6 +95,7 @@ extern XmlRpcValue FLRIG_bw_result;
extern void FLRIG_start_flrig_thread();
extern void stop_flrig_thread();
extern void reconnect_to_flrig();
extern void set_flrig_ptt(int on);
extern void set_flrig_freq(long int fr);
extern void set_flrig_mode(const char *md);

Wyświetl plik

@ -156,6 +156,7 @@ struct status {
int busyChannelSeconds;
int kpsql_attenuation;
bool csma_enabled;
bool ip_lock;
double squelch_value;
std::string browser_search;

Wyświetl plik

@ -278,14 +278,10 @@ bool xml_check_dup()
void connect_to_log_server(void *)
{
if (!log_client) {
int xmllog_port = atoi(progdefaults.xmllog_port.c_str());
log_client = new XmlRpcClient(progdefaults.xmllog_address.c_str(), xmllog_port);
} else {
delete log_client;
int xmllog_port = atoi(progdefaults.xmllog_port.c_str());
log_client = new XmlRpcClient(progdefaults.xmllog_address.c_str(), xmllog_port);
}
if (log_client) delete log_client;
log_client = new XmlRpcClient(
progdefaults.xmllog_address.c_str(),
atoi(progdefaults.xmllog_port.c_str()));
if (progdefaults.xml_logbook) {
if (test_connection(true)) {

Wyświetl plik

@ -304,6 +304,19 @@ static void auto_start()
start_process(progdefaults.auto_prog3_pathname);
}
// reset those default values that have been overriden by a command line parameter
void check_overrides()
{
if (xmlrpc_address_override_flag)
progdefaults.xmlrpc_address = override_xmlrpc_address;
if (xmlrpc_port_override_flag)
progdefaults.xmlrpc_port = override_xmlrpc_port;
if (arq_address_override_flag)
progdefaults.arq_address = override_arq_address;
if (arq_port_override_flag)
progdefaults.arq_port = override_arq_port;
}
// these functions are all started after Fl::run() is executing
void delayed_startup(void *)
{
@ -591,6 +604,7 @@ int main(int argc, char ** argv)
LOG_INFO("FLMSG_ICS_tmp_dir: %s", FLMSG_ICS_tmp_dir.c_str());
bool have_config = progdefaults.readDefaultsXML();
check_overrides();
xmlfname = HomeDir;
xmlfname.append(DEFAULT_RIGXML_FILENAME);
@ -1116,12 +1130,10 @@ int parse_args(int argc, char **argv, int& idx)
break;
case OPT_ARQ_ADDRESS:
progdefaults.arq_address = optarg;
override_arq_address = optarg;
arq_address_override_flag = true;
break;
case OPT_ARQ_PORT:
progdefaults.arq_port = optarg;
override_arq_port = optarg;
arq_address_override_flag = true;
break;
@ -1180,14 +1192,12 @@ int parse_args(int argc, char **argv, int& idx)
break;
case OPT_CONFIG_XMLRPC_ADDRESS:
progdefaults.xmlrpc_address = optarg;
override_xmlrpc_address = optarg;
xmlrpc_address_override_flag = true;
break;
case OPT_CONFIG_XMLRPC_PORT:
progdefaults.xmlrpc_port = optarg;
override_xmlrpc_port = optarg;
xmlrpc_address_override_flag = true;
xmlrpc_port_override_flag = true;
break;
case OPT_CONFIG_XMLRPC_ALLOW:
progdefaults.xmlrpc_allow = optarg;

Wyświetl plik

@ -191,6 +191,7 @@ status progStatus = {
progdefaults.busyChannelSeconds,
progdefaults.kpsql_attenuation,
progdefaults.csma_enabled,
true,
0.0,
"CQ", // string browser_search;
@ -635,7 +636,8 @@ void status::loadLastState()
memset(strbuff, 0, sizeof(strbuff));
spref.get("xmlrpc_address", strbuff, xmlrpc_address.c_str(), sizeof(strbuff) - 1);
xmlrpc_address = strbuff;
}
if (!xmlrpc_port_override_flag) {
memset(strbuff, 0, sizeof(strbuff));
spref.get("xmlrpc_port", strbuff, xmlrpc_port.c_str(), sizeof(strbuff) - 1);
xmlrpc_port = strbuff;
@ -645,7 +647,8 @@ void status::loadLastState()
memset(strbuff, 0, sizeof(strbuff));
spref.get("arq_address", strbuff, arq_address.c_str(), sizeof(strbuff) - 1);
arq_address = strbuff;
}
if(!arq_port_override_flag) {
memset(strbuff, 0, sizeof(strbuff));
spref.get("arq_port", strbuff, arq_port.c_str(), sizeof(strbuff) - 1);
arq_port = strbuff;
@ -791,12 +794,10 @@ void status::initLastState()
else
sldrSquelch->value(sldrSquelchValue);
if(arq_address_override_flag) {
if(!override_arq_address.empty())
arq_address = progdefaults.arq_address = override_arq_address;
if(!override_arq_port.empty())
arq_port = progdefaults.arq_port = override_arq_port;
}
if (arq_address_override_flag)
arq_address = progdefaults.arq_address = override_arq_address;
if (arq_port_override_flag)
arq_port = progdefaults.arq_port = override_arq_port;
if(kiss_address_override_flag) {
if(!override_kiss_address.empty())
@ -809,12 +810,10 @@ void status::initLastState()
kiss_dual_port_enabled = progdefaults.kiss_dual_port_enabled = override_kiss_dual_port_enabled;
}
if(xmlrpc_address_override_flag) {
if(!override_xmlrpc_address.empty())
xmlrpc_address = progdefaults.xmlrpc_address = override_xmlrpc_address;
if(!override_kiss_out_port.empty())
xmlrpc_port = progdefaults.xmlrpc_port = override_xmlrpc_port;
}
if (xmlrpc_address_override_flag)
xmlrpc_address = progdefaults.xmlrpc_address = override_xmlrpc_address;
if (xmlrpc_port_override_flag)
xmlrpc_port = progdefaults.xmlrpc_port = override_xmlrpc_port;
txtArq_ip_address->value(arq_address.c_str());
txtArq_ip_port_no->value(arq_port.c_str());

Wyświetl plik

@ -722,13 +722,13 @@ void connect_to_flrig()
}
try {
flrig_client = new XmlRpcClient(
"localhost",
atol("12345"));
progdefaults.flrig_ip_address.c_str(),
atol(progdefaults.flrig_ip_port.c_str()));
flrig_connection();
} catch (...) {
LOG_ERROR("Cannot connect to %s, %s",
"localhost",
"12345");
progdefaults.flrig_ip_address.c_str(),
progdefaults.flrig_ip_port.c_str());
}
}
@ -777,3 +777,13 @@ void stop_flrig_thread()
pthread_join(*flrig_thread, NULL);
}
void reconnect_to_flrig()
{
flrig_client->close();
pthread_mutex_lock(&mutex_flrig);
delete flrig_client;
flrig_client = (XmlRpcClient *)0;
connected_to_flrig = false;
pthread_mutex_unlock(&mutex_flrig);
}