Change Stream Config Dialog inputs
This is the first of many commits that lays the foundation for - * Editing multiple streams without exiting the dialog * Triggering the dialog when a new stream is added instead of add+edit
This commit is contained in:
parent
db77563466
commit
509e9d5398
@ -94,15 +94,15 @@ public:
|
||||
{ return QString().fromStdString(d.notes()); }
|
||||
const QString userName() const
|
||||
{ return QString().fromStdString(d.user_name()); }
|
||||
AdminStatus adminStatus()
|
||||
AdminStatus adminStatus() const
|
||||
{ return (d.is_enabled()?AdminEnable:AdminDisable); }
|
||||
bool hasExclusiveControl()
|
||||
bool hasExclusiveControl() const
|
||||
{ return d.is_exclusive_control(); }
|
||||
OstProto::TransmitMode transmitMode()
|
||||
OstProto::TransmitMode transmitMode() const
|
||||
{ return d.transmit_mode(); }
|
||||
double averagePacketRate()
|
||||
double averagePacketRate() const
|
||||
{ return avgPacketsPerSec_; }
|
||||
double averageBitRate()
|
||||
double averageBitRate() const
|
||||
{ return avgBitsPerSec_; }
|
||||
|
||||
//void setAdminEnable(AdminStatus status) { mAdminStatus = status; }
|
||||
|
@ -314,7 +314,10 @@ void PortsWindow::on_tvStreamList_activated(const QModelIndex & index)
|
||||
qDebug("%s: invalid index", __FUNCTION__);
|
||||
return;
|
||||
}
|
||||
scd = new StreamConfigDialog(plm->port(currentPort), index.row(), this);
|
||||
|
||||
QList<Stream*> streams;
|
||||
streams.append(plm->port(currentPort).mutableStreamByIndex(index.row()));
|
||||
scd = new StreamConfigDialog(streams, plm->port(currentPort), this);
|
||||
qDebug("stream list activated\n");
|
||||
ret = scd->exec();
|
||||
|
||||
|
@ -39,13 +39,20 @@ int StreamConfigDialog::lastProtocolDataIndex = 0;
|
||||
|
||||
static const uint kEthFrameOverHead = 20;
|
||||
|
||||
StreamConfigDialog::StreamConfigDialog(Port &port, uint streamIndex,
|
||||
QWidget *parent) : QDialog (parent), mPort(port)
|
||||
StreamConfigDialog::StreamConfigDialog(
|
||||
QList<Stream*> &streamList,
|
||||
const Port &port,
|
||||
QWidget *parent)
|
||||
: QDialog (parent), streamList_(streamList), mPort(port)
|
||||
{
|
||||
OstProto::Stream s;
|
||||
mCurrentStreamIndex = streamIndex;
|
||||
mCurrentStreamIndex = 0;
|
||||
|
||||
// FIXME: temporary till we support a list
|
||||
Q_ASSERT(streamList_.size() == 1);
|
||||
|
||||
mpStream = new Stream;
|
||||
mPort.streamByIndex(mCurrentStreamIndex)->protoDataCopyInto(s);
|
||||
streamList_.at(mCurrentStreamIndex)->protoDataCopyInto(s);
|
||||
mpStream->protoDataCopyFrom(s);
|
||||
_iter = mpStream->createProtocolListIterator();
|
||||
isUpdateInProgress = false;
|
||||
@ -1222,7 +1229,7 @@ void StreamConfigDialog::on_pbOk_clicked()
|
||||
|
||||
// Copy the data from the "local working copy of stream" to "actual stream"
|
||||
mpStream->protoDataCopyInto(s);
|
||||
mPort.mutableStreamByIndex(mCurrentStreamIndex)->protoDataCopyFrom(s);
|
||||
streamList_[mCurrentStreamIndex]->protoDataCopyFrom(s);
|
||||
|
||||
qDebug("stream stored");
|
||||
|
||||
|
@ -43,7 +43,8 @@ class StreamConfigDialog : public QDialog, public Ui::StreamConfigDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
StreamConfigDialog(Port &port, uint streamIndex, QWidget *parent = 0);
|
||||
StreamConfigDialog(QList<Stream*> &streamList, const Port &port,
|
||||
QWidget *parent = 0);
|
||||
~StreamConfigDialog();
|
||||
|
||||
private:
|
||||
@ -72,7 +73,8 @@ private:
|
||||
QStringListModel *mpAvailableProtocolsModel;
|
||||
QStringListModel *mpSelectedProtocolsModel;
|
||||
|
||||
Port& mPort;
|
||||
QList<Stream*> streamList_;
|
||||
const Port& mPort;
|
||||
uint mCurrentStreamIndex;
|
||||
|
||||
Stream *mpStream;
|
||||
|
Loading…
Reference in New Issue
Block a user