[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [brprint3d] /: New method
From:       Lays Rodrigues <laysrodriguessilva () gmail ! com>
Date:       2015-12-01 1:34:59
Message-ID: E1a3ZqN-0000XT-KM () scm ! kde ! org
[Download RAW message or body]

Git commit ccfe6f2b8e26c949c636917fd50245fddd48dc66 by Lays Rodrigues.
Committed on 01/12/2015 at 01:23.
Pushed by laysrodrigues into branch 'master'.

New method

Add a method to update on ManualControlWidget the count of
layers from gcode file.

Signed-off-by: Lays Rodrigues <laysrodriguessilva@gmail.com>

M  +6    -5    ExtruderControlWidget.cpp
M  +6    -0    ManualControlWidget.cpp
M  +1    -1    ManualControlWidget.h
M  +2    -0    brprint3d.cpp
M  +3    -0    vtkWidget.cpp
M  +3    -0    vtkWidget.h

http://commits.kde.org/brprint3d/ccfe6f2b8e26c949c636917fd50245fddd48dc66

diff --git a/ExtruderControlWidget.cpp b/ExtruderControlWidget.cpp
index 55154e4..d2cb159 100755
--- a/ExtruderControlWidget.cpp
+++ b/ExtruderControlWidget.cpp
@@ -108,9 +108,10 @@ void ExtruderControlWidget::setHome(){
 void ExtruderControlWidget::setPosX()
 {
     double pos = printerObject->getCurrentXPos();
-    if(sender() == ui->bt_leftX)
+    QPushButton *btn = qobject_cast<QPushButton*>(sender());
+    if(btn == ui->bt_leftX)
         pos -= ui->cb_displacement->currentText().toDouble();
-    else if(sender() == ui->bt_rightX)
+    else if(btn == ui->bt_rightX)
         pos += ui->cb_displacement->currentText().toDouble();
     if(pos >= 0 && pos<=maxX)
         printerObject->moveAxisToPos('X',pos);
@@ -134,10 +135,10 @@ void ExtruderControlWidget::setPosZ()
 {
     double pos = printerObject->getCurrentZPos();
 
-    QComboBox *cmb = qobject_cast<QComboBox*>(sender());
-    if(cmb == ui->bt_upZ)
+    QPushButton *btn = qobject_cast<QPushButton*>(sender());
+    if(btn == ui->bt_upZ)
         pos += ui->cb_displacement->currentText().toDouble();
-    else if(cmb == ui->bt_downZ)
+    else if(btn == ui->bt_downZ)
         pos -= ui->cb_displacement->currentText().toDouble();
 
     if(pos>=0 && pos<=maxZ)
diff --git a/ManualControlWidget.cpp b/ManualControlWidget.cpp
index 94e308b..bb6e1fd 100755
--- a/ManualControlWidget.cpp
+++ b/ManualControlWidget.cpp
@@ -590,3 +590,9 @@ void ManualControlWidget::sliderValueChanged(int v){
         printerObject->setFanSpeed(v);
     }
 }
+
+void ManualControlWidget::setLayersCount(int l){
+    ui->lb_layerCounter->setText(QString::number(l));
+    ui->sl_layersFirst->setMaximum(l);
+    ui->sl_layersLast->setMaximum(l);
+}
diff --git a/ManualControlWidget.h b/ManualControlWidget.h
index 5e53709..60676fe 100755
--- a/ManualControlWidget.h
+++ b/ManualControlWidget.h
@@ -93,7 +93,7 @@ public slots:
     void setPlayStatus(bool b);
     void stopPrintJob();
     void stopOnEmergency();
-   
+    void setLayersCount(int l);
 };
 
 #endif // MANUALCONTROLWIDGET_H
diff --git a/brprint3d.cpp b/brprint3d.cpp
index a013aae..1baaede 100755
--- a/brprint3d.cpp
+++ b/brprint3d.cpp
@@ -67,6 +67,8 @@ BrPrint3D::BrPrint3D(QWidget *parent) : QMainWindow(parent),
     connect(ui->bt_hide,&QPushButton::clicked,this,&BrPrint3D::hidePrinterSettings);
     connect(ui->_ManualControl,&ManualControlWidget::checkConnectButton,bt_connect,&BigButton::setChecked);
                
     connect(ui->_PrinterSettings,&PrinterSettingsWidget::updateCube,vtkView,&vtkWidget::updateCube);
 +
+    connect(vtkView,&vtkWidget::layersCount,ui->_ManualControl,&ManualControlWidget::setLayersCount);
  }
 
 BrPrint3D::~BrPrint3D()
diff --git a/vtkWidget.cpp b/vtkWidget.cpp
index c9c5c77..9f9b8bb 100755
--- a/vtkWidget.cpp
+++ b/vtkWidget.cpp
@@ -83,6 +83,7 @@ void vtkWidget::renderSTL(QString pathStl)
 
 void vtkWidget::renderGcode(QString text)
 {   cleanup();
+    int _layersCount=0;
     vtkSmartPointer<vtkPoints> points = vtkSmartPointer<vtkPoints>::New();
     QStringList list = text.split('\n',QString::SkipEmptyParts);
     double x=0,y=0,z=0,count=0;
@@ -110,12 +111,14 @@ void vtkWidget::renderGcode(QString text)
                     QString z_str = aux[j].section('Z',1);
                     z = z_str.toDouble();
                     points->InsertPoint(count,x,y,z);
+                    _layersCount++;
                     count++;
 
                 }
             }
         }
     }
+    emit layersCount(_layersCount);
     vtkSmartPointer<vtkPolyLine> polyLine = vtkSmartPointer<vtkPolyLine>::New();
      polyLine->GetPointIds()->SetNumberOfIds(count);
      for(unsigned int i = 0; i < count; i++)
diff --git a/vtkWidget.h b/vtkWidget.h
index e735a98..567b75d 100755
--- a/vtkWidget.h
+++ b/vtkWidget.h
@@ -68,6 +68,9 @@ vtkWidget();
 public slots:
     void updateCube(QString v, QChar axis);
 
+signals:
+    void layersCount(int l);
+
 
 private:
     void drawCube();


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic