mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-15 10:47:49 -06:00
Write to SD Card directly when it has been detected
This commit is contained in:
parent
53f2eb7e13
commit
3a2aa12bc3
3 changed files with 19 additions and 2 deletions
|
@ -13,7 +13,7 @@ Rectangle {
|
||||||
border.color: UM.Theme.borderColor;
|
border.color: UM.Theme.borderColor;
|
||||||
|
|
||||||
signal saveRequested();
|
signal saveRequested();
|
||||||
signal saveToSdRequested();
|
signal saveToSDRequested();
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
id: label;
|
id: label;
|
||||||
|
@ -55,7 +55,7 @@ Rectangle {
|
||||||
onClicked: {
|
onClicked: {
|
||||||
switch(base.state) {
|
switch(base.state) {
|
||||||
case 'sdcard':
|
case 'sdcard':
|
||||||
base.saveToSdRequested();
|
base.saveToSDRequested();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
base.saveRequested();
|
base.saveRequested();
|
||||||
|
|
|
@ -180,6 +180,7 @@ UM.MainWindow {
|
||||||
height: 40;
|
height: 40;
|
||||||
|
|
||||||
onSaveRequested: actions.save.trigger();
|
onSaveRequested: actions.save.trigger();
|
||||||
|
onSaveToSDRequested: Printer.saveToSD()
|
||||||
}
|
}
|
||||||
|
|
||||||
UM.MessageStack {
|
UM.MessageStack {
|
||||||
|
|
|
@ -6,6 +6,8 @@ from UM.Math.Vector import Vector
|
||||||
from UM.Math.Matrix import Matrix
|
from UM.Math.Matrix import Matrix
|
||||||
from UM.Resources import Resources
|
from UM.Resources import Resources
|
||||||
from UM.Scene.ToolHandle import ToolHandle
|
from UM.Scene.ToolHandle import ToolHandle
|
||||||
|
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
|
||||||
|
from UM.Mesh.WriteMeshJob import WriteMeshJob
|
||||||
|
|
||||||
from UM.Scene.BoxRenderer import BoxRenderer
|
from UM.Scene.BoxRenderer import BoxRenderer
|
||||||
from UM.Scene.Selection import Selection
|
from UM.Scene.Selection import Selection
|
||||||
|
@ -132,6 +134,20 @@ class PrinterApplication(QtApplication):
|
||||||
def removableDrives(self):
|
def removableDrives(self):
|
||||||
return list(self.getStorageDevice('LocalFileStorage').getRemovableDrives().keys())
|
return list(self.getStorageDevice('LocalFileStorage').getRemovableDrives().keys())
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
|
def saveToSD(self):
|
||||||
|
for node in DepthFirstIterator(self.getController().getScene().getRoot()):
|
||||||
|
if type(node) is not SceneNode or not node.getMeshData():
|
||||||
|
continue
|
||||||
|
|
||||||
|
drives = self.getStorageDevice('LocalFileStorage').getRemovableDrives()
|
||||||
|
path = next(iter(drives.values()))
|
||||||
|
filename = os.path.join(path, node.getName()[0:node.getName().rfind('.')] + '.gcode')
|
||||||
|
|
||||||
|
job = WriteMeshJob(filename, node.getMeshData())
|
||||||
|
job.start()
|
||||||
|
return
|
||||||
|
|
||||||
def _removableDrivesChanged(self):
|
def _removableDrivesChanged(self):
|
||||||
print(self.getStorageDevice('LocalFileStorage').getRemovableDrives())
|
print(self.getStorageDevice('LocalFileStorage').getRemovableDrives())
|
||||||
self.removableDrivesChanged.emit()
|
self.removableDrivesChanged.emit()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue