Esempio n. 1
0
RDMarkerWidget::RDMarkerWidget(const QString &caption,const QColor &color,
			       unsigned samprate,QWidget *parent)
  : QWidget(parent)
{
  mark_delete_mode=false;
  mark_value=0;
  mark_sample_rate=samprate;
  mark_lo_limit=-1;
  mark_hi_limit=-1;
  mark_lo_marker=NULL;
  mark_hi_marker=NULL;

  QFont button_font=QFont("Hevetica",12,QFont::Bold);
  button_font.setPixelSize(12);
  QFont label_font=QFont("Hevetica",12,QFont::Normal);
  label_font.setPixelSize(12);

  mark_edit=new RDMarkerEdit(this);
  mark_edit->setGeometry(68,11,95,21);
  mark_edit->setReadOnly(true);
  mark_edit->setDragEnabled(false);
  mark_edit->setFont(label_font);
  connect(mark_edit,SIGNAL(returnPressed()),this,SLOT(returnPressedData()));
  connect(mark_edit,SIGNAL(escapePressed()),this,SLOT(escapePressedData()));

  mark_button=new RDMarkerButton(this);
  mark_button->setToggleButton(true);
  mark_button->setGeometry(0,0,66,45);
  mark_button->setFlashColor(backgroundColor());
  mark_button->setFlashPeriod(RDMARKERWIDGET_BUTTON_FLASH_PERIOD);
  mark_button->setPalette(QPalette(color,parent->backgroundColor()));
  mark_button->setFont(button_font);
  mark_button->setText(caption);
  connect(mark_button,SIGNAL(clicked()),this,SLOT(buttonClickedData()));
}
Esempio n. 2
0
void RDMarkerWidget::buttonClickedData()
{
  if(mark_delete_mode) {
    mark_button->setOn(false);
    emit deleteClicked();
  }
  else {
    if(!mark_button->isOn()) {
      returnPressedData();
    }
    mark_button->setFlashingEnabled(mark_button->isOn());
    mark_edit->setReadOnly(!mark_button->isOn());
    emit selectionChanged();
  }
}
Esempio n. 3
0
MainWidget::MainWidget(QWidget *parent)
  : QWidget(parent)
{
  QString hostname="localhost";
  unsigned port=LPCORE_CONNECTION_TCP_PORT;
  QString username;
  QString password;
  bool track_state=false;
  bool ok=false;

  //
  // Fonts
  //
  QFont label_font("helvetica",12,QFont::Bold);
  label_font.setPixelSize(12);

  //
  // Read Command Options
  //
  LPCmdSwitch *cmd=
    new LPCmdSwitch(qApp->argc(),qApp->argv(),"lpcore",LPCORE_USAGE);
  for(unsigned i=0;i<cmd->keys();i++) {
    if(cmd->key(i)=="--hostname") {
      hostname=cmd->value(i);
      cmd->setProcessed(i,true);
    }
    if(cmd->key(i)=="--port") {
      port=cmd->value(i).toUInt(&ok);
      if((!ok)||(port>0xFFFF)) {
	fprintf(stderr,"invalid port value\n");
	exit(256);
      }
      cmd->setProcessed(i,true);
    }
    if(cmd->key(i)=="--username") {
      username=cmd->value(i);
      cmd->setProcessed(i,true);
    }
    if(cmd->key(i)=="--password") {
      password=cmd->value(i);
      cmd->setProcessed(i,true);
    }
    if(cmd->key(i)=="--track-state") {
      track_state=true;
      cmd->setProcessed(i,true);
    }
    if(!cmd->processed(i)) {
      fprintf(stderr,"unknown option \"%s\"\n",
	      (const char *)cmd->key(i).toAscii());
      exit(256);
    }
  }
  delete cmd;

  //
  // Open Syslog
  //
  openlog("lpcore",LOG_PERROR,LOG_USER);

  //
  // Connection
  //
  lp_connection=new LPConnection(track_state,this);
  connect(lp_connection,SIGNAL(messageReceived(const LPMessage &)),
	  this,SLOT(messageReceivedData(const LPMessage &)));
  connect(lp_connection,SIGNAL(watchdogStateChanged(bool)),
	  this,SLOT(watchdogStateChangedData(bool)));
  connect(lp_connection,SIGNAL(loggedIn(LPConnection::Result)),
	  this,SLOT(loggedInData(LPConnection::Result)));
  connect(lp_connection,
	  SIGNAL(socketError(QAbstractSocket::SocketError,const QString &)),
	  this,
	  SLOT(socketErrorData(QAbstractSocket::SocketError,const QString &)));

  //
  // Context Selector
  //
  lp_context_label=new QLabel(tr("Context")+":",this);
  lp_context_label->setFont(label_font);
  lp_context_label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
  lp_context_box=new QComboBox(this);
  lp_context_box->insertItem(-1,tr("Global"));
  lp_context_box->insertItem(-1,tr("Isolated"));
  lp_context_box->setCurrentIndex(1);
  connect(lp_context_box,SIGNAL(activated(int)),
	  this,SLOT(contextChangedData(int)));

  lp_clear_button=new QPushButton(tr("Clear"),this);
  lp_clear_button->setFont(label_font);

  //
  // Send Widget
  //
  lp_send_edit=new QLineEdit(this);
  lp_send_edit->setDisabled(true);
  connect(lp_send_edit,SIGNAL(returnPressed()),this,SLOT(returnPressedData()));

  //
  // Receive Widget
  //
  lp_recv_edit=new QTextEdit(this);
  lp_recv_edit->setReadOnly(true);
  connect(lp_clear_button,SIGNAL(clicked()),lp_recv_edit,SLOT(clear()));

  contextChangedData(lp_context_box->currentIndex());
  lp_connection->connectToHost(hostname,port,username,password);

  UpdateWindowTitle();
}