wx.EVT_CLOSE(self, self.OnClose)
- self.SetDropTarget(dropTarget.FileDropTarget(self.OnDropFiles, meshLoader.loadSupportedExtensions()))
+ self.SetDropTarget(dropTarget.FileDropTarget(self.OnDropFiles, meshLoader.loadSupportedExtensions() + ['.g', '.gcode']))
self.normalModeOnlyItems = []
prefDialog.Show()
def OnDropFiles(self, files):
+ print "dropped ", files
if len(files) > 0:
profile.setPluginConfig([])
self.updateProfileToControls()
- self.scene.loadScene(files)
+ self.scene.loadFiles(files)
def OnModelMRU(self, e):
fileNum = e.GetId() - self.ID_MRU_MODEL1
# Load Model
profile.putPreference('lastFile', path)
filelist = [ path ]
- self.scene.loadScene(filelist)
+ self.scene.loadFiles(filelist)
def addToModelMRU(self, file):
self.modelFileHistory.AddFileToHistory(file)
self.updateToolButtons()
self.updateProfileToControls()
+ def loadGCodeFile(self, filename):
+ self.OnDeleteAll(None)
+ if self._gcode is not None:
+ self._gcode = None
+ for layerVBOlist in self._gcodeVBOs:
+ for vbo in layerVBOlist:
+ self.glReleaseList.append(vbo)
+ self._gcodeVBOs = []
+ self._gcode = gcodeInterpreter.gcode()
+ self._gcodeFilename = filename
+ self.printButton.setBottomText('')
+ self.viewSelection.setValue(4)
+ self.printButton.setDisabled(False)
+ self.youMagineButton.setDisabled(True)
+ self.OnViewChange()
+
+ def loadSceneFiles(self, filenames):
+ self.youMagineButton.setDisabled(False)
+ if self.viewSelection.getValue() == 4:
+ self.viewSelection.setValue(0)
+ self.OnViewChange()
+ self.loadScene(filenames)
+
+ def loadFiles(self, filenames):
+ print "load ", filenames
+ gcodeFilename = None
+ for filename in filenames:
+ self.GetParent().GetParent().GetParent().addToModelMRU(filename)
+ ext = filename[filename.rfind('.')+1:].upper()
+ if ext == 'G' or ext == 'GCODE':
+ gcodeFilename = filename
+ if gcodeFilename is not None:
+ self.loadGCodeFile(gcodeFilename)
+ else:
+ self.loadSceneFiles(filenames)
+
def showLoadModel(self, button = 1):
if button == 1:
dlg=wx.FileDialog(self, _("Open 3D model"), os.path.split(profile.getPreference('lastFile'))[0], style=wx.FD_OPEN|wx.FD_FILE_MUST_EXIST|wx.FD_MULTIPLE)
if len(filenames) < 1:
return False
profile.putPreference('lastFile', filenames[0])
- gcodeFilename = None
- for filename in filenames:
- self.GetParent().GetParent().GetParent().addToModelMRU(filename)
- ext = filename[filename.rfind('.')+1:].upper()
- if ext == 'G' or ext == 'GCODE':
- gcodeFilename = filename
- if gcodeFilename is not None:
- if self._gcode is not None:
- self._gcode = None
- for layerVBOlist in self._gcodeVBOs:
- for vbo in layerVBOlist:
- self.glReleaseList.append(vbo)
- self._gcodeVBOs = []
- self._gcode = gcodeInterpreter.gcode()
- self._gcodeFilename = gcodeFilename
- self.printButton.setBottomText('')
- self.viewSelection.setValue(4)
- self.printButton.setDisabled(False)
- self.youMagineButton.setDisabled(True)
- self.OnViewChange()
- else:
- self.youMagineButton.setDisabled(False)
- if self.viewSelection.getValue() == 4:
- self.viewSelection.setValue(0)
- self.OnViewChange()
- self.loadScene(filenames)
+ self.loadFiles(filenames)
def showSaveModel(self):
if len(self._scene.objects()) < 1: