예제 #1
0
void SphereBot::sendNextLine(){
    if(state!=Spherebot::SB_Printing)
        return;

    if(fileStream->atEnd()){
        state=Spherebot::SB_Idle;
        file->close();
        fileStream->reset();
        disableSteppers();
        emit printDone();
        return;
    }

    QString line=fileStream->readLine();

    QString stripped = QString(line);
    stripped.remove(QRegExp("\\((.*)\\)"));
    if (stripped.length()>1){
        if (stripped.startsWith("M01")){
            state=Spherebot::SB_WaitUserOk;
            emit printPause(line);
            return;
        } else {
            state=Spherebot::SB_WaitPrinterOk;
            serial->write(stripped.append("\n").toUtf8());
            return;
        }
    }
    sendNextLine();
}
예제 #2
0
파일: mainwindow.cpp 프로젝트: Poopi/YARRH
    printerObj->moveToThread(qthread);
    qthread->start(QThread::HighestPriority);


    this->portEnum = new QextSerialEnumerator(this);
    this->portEnum->setUpNotifications();
    QList<QextPortInfo> ports = this->portEnum->getPorts();
    //finding avalible ports
    foreach (QextPortInfo info, ports) {
        ui->portCombo->addItem(info.portName);
    }
    //connecting travel moves checkbox
    connect(ui->showTravelChkBox, SIGNAL(toggled(bool)),ui->glWidget, SLOT(showTravel(bool)));
    //disable steppers btn
    connect(ui->disableStpBtn, SIGNAL(clicked()), printerObj, SLOT(disableSteppers()), Qt::QueuedConnection);
    //connect head move widget
    connect(ui->headControlWidget, SIGNAL(clicked(QPoint)), this, SLOT(moveHead(QPoint)));
    connect(ui->headControlWidget, SIGNAL(hovered(QPoint)), this, SLOT(updateHeadGoToXY(QPoint)));

    ui->printBtn->setDisabled(true);
    ui->pauseBtn->setDisabled(true);
    ui->axisControlGroup->setDisabled(true);
    ui->headControlWidget->hidePoints(true);
    ui->temperatureGroupBox->setDisabled(true);
    this->calibrateDialog->setDisabled(true);
    ui->macroGroup->setDisabled(true);
    ui->progressBar->hide();
    ui->baudCombo->addItem("1200", BAUD1200);
    ui->baudCombo->addItem("2400", BAUD2400);
    ui->baudCombo->addItem("4800", BAUD4800);