2019-11-20 Fred Gleason <fredg@paravelsystems.com>

* Added interlocks to the 'Edit Switcher' and 'Edit Serial Ports'
	dialogs in rdadmin(1) to prohibit use of a disabled serial device.
This commit is contained in:
Fred Gleason 2019-11-20 15:23:47 -05:00
parent 5da5bfc7a7
commit e625fd53f3
10 changed files with 282 additions and 2 deletions

View File

@ -19245,3 +19245,6 @@
* Added an rdsoftkeys(1) man page.
2019-10-31 Fred Gleason <fredg@paravelsystems.com>
* Incremented the package version to 3.2.0.
2019-11-20 Fred Gleason <fredg@paravelsystems.com>
* Added interlocks to the 'Edit Switcher' and 'Edit Serial Ports'
dialogs in rdadmin(1) to prohibit use of a disabled serial device.

View File

@ -30,6 +30,7 @@
#include <rdescape_string.h>
#include <rdmatrix.h>
#include <rdtextvalidator.h>
#include <rdtty.h>
#include "globals.h"
#include "edit_user.h"
@ -1185,6 +1186,7 @@ bool EditMatrix::WriteMatrix()
QHostAddress addr;
QHostAddress addr2;
RDMatrix::Type type=edit_matrix->type();
RDTty *tty=NULL;
//
// Ensure Sane Values
@ -1192,13 +1194,24 @@ bool EditMatrix::WriteMatrix()
switch((RDMatrix::PortType)edit_porttype_box->currentItem()) {
case RDMatrix::TcpPort:
if(!addr.setAddress(edit_ipaddress_edit->text())) {
QMessageBox::warning(this,tr("Invalid Address"),
QMessageBox::warning(this,"RDAdmin - "+tr("Invalid Address"),
tr("The primary IP address is invalid!"));
return false;
}
break;
default:
case RDMatrix::TtyPort:
tty=new RDTty(rda->station()->name(),edit_port_box->currentIndex());
if(!tty->active()) {
QMessageBox::information(this,"RDAdmin - "+tr("Error"),
tr("The primary serial device is not active!"));
delete tty;
return false;
}
delete tty;
break;
case RDMatrix::NoPort:
break;
}
@ -1228,6 +1241,14 @@ bool EditMatrix::WriteMatrix()
return false;
}
}
tty=new RDTty(rda->station()->name(),edit_port2_box->currentIndex());
if(!tty->active()) {
QMessageBox::information(this,"RDAdmin - "+tr("Error"),
tr("The backup serial device is not active!"));
delete tty;
return false;
}
delete tty;
break;
case RDMatrix::NoPort:

View File

@ -18,8 +18,12 @@
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
#include <qmessagebox.h>
#include <rdapplication.h>
#include <rddb.h>
#include <rdescape_string.h>
#include <rdmatrix.h>
#include <rdstation.h>
#include <rdtextvalidator.h>
@ -238,6 +242,34 @@ void EditTtys::idSelectedData()
void EditTtys::enableButtonData(int state)
{
QString sql;
RDSqlQuery *q;
if(!state) {
sql=QString("select ")+
"NAME,"+ // 00
"MATRIX,"+ // 01
"TYPE "+ // 02
"from MATRICES where "+
"STATION_NAME=\""+RDEscapeString(edit_station)+"\" && "+
QString().sprintf("(PORT_TYPE=%d && PORT=%d) || ",
RDMatrix::TtyPort,edit_port_box->currentIndex())+
QString().sprintf("(PORT_TYPE_2=%d && PORT_2=%d)",
RDMatrix::TtyPort,edit_port_box->currentIndex());
q=new RDSqlQuery(sql);
if(q->first()) {
QMessageBox::information(this,"RDAdmin - "+tr("Error"),
tr("This port is currently in use by the following Switcher/GPIO device")+":\n"+
"\t"+tr("Matrix")+QString().sprintf(": %d.\n",q->value(1).toInt())+
"\t"+tr("Type")+": "+RDMatrix::typeString((RDMatrix::Type)q->value(2).toInt())+"\n"+
"\t"+tr("Description")+": "+q->value(0).toString());
delete q;
edit_enable_button->setChecked(true);
return;
}
delete q;
}
if(state==0) { // Off
SetEnable(false);
}

View File

@ -2198,6 +2198,18 @@ SAS</translation>
GPIOs</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The primary serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The backup serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditNowNext</name>
@ -4233,6 +4245,26 @@ uloženo. Uložit nyní?</translation>
<source>Edit Serial Ports</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Matrix</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This port is currently in use by the following Switcher/GPIO device</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditUser</name>

View File

@ -2108,6 +2108,18 @@ Switches</source>
GPIOs</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The primary serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The backup serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditNowNext</name>
@ -4106,6 +4118,26 @@ gespeichert werden. Jetzt speichern?</translation>
<source>Edit Serial Ports</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Matrix</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This port is currently in use by the following Switcher/GPIO device</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditUser</name>

View File

@ -2211,6 +2211,18 @@ SAS</translation>
GPIOs</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The primary serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The backup serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditNowNext</name>
@ -4190,6 +4202,26 @@ debe guardarse. ¿Hacerlo ahora?</translation>
<source>Edit Serial Ports</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Matrix</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This port is currently in use by the following Switcher/GPIO device</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditUser</name>

View File

@ -1754,6 +1754,18 @@ GPIOs</source>
<source>Edit Switcher</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The primary serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The backup serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditPypad</name>
@ -3392,6 +3404,26 @@ must be saved. Save now?</source>
<source>Edit Serial Ports</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Matrix</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This port is currently in use by the following Switcher/GPIO device</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditUser</name>

View File

@ -2080,6 +2080,18 @@ Switches</source>
GPIOs</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The primary serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The backup serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditNowNext</name>
@ -4007,6 +4019,26 @@ Lagre no?</translation>
<source>Edit Serial Ports</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Matrix</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This port is currently in use by the following Switcher/GPIO device</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditUser</name>

View File

@ -2080,6 +2080,18 @@ Switches</source>
GPIOs</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The primary serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The backup serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditNowNext</name>
@ -4007,6 +4019,26 @@ Lagre no?</translation>
<source>Edit Serial Ports</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Matrix</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This port is currently in use by the following Switcher/GPIO device</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditUser</name>

View File

@ -2083,6 +2083,18 @@ Switches</source>
GPIOs</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The primary serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The backup serial device is not active!</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditNowNext</name>
@ -4086,6 +4098,26 @@ deve ser salva. Salvar Agora?</translation>
<source>Edit Serial Ports</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Matrix</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>This port is currently in use by the following Switcher/GPIO device</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>EditUser</name>