from util import profile
from util import sliceRun
+from gui import dropTarget
class batchRunWindow(wx.Frame):
def __init__(self, parent):
self.list = []
+ self.SetDropTarget(dropTarget.FileDropTarget(self.OnDropFiles, '.stl'))
+
wx.EVT_CLOSE(self, self.OnClose)
self.panel = wx.Panel(self, -1)
self.SetSizer(wx.BoxSizer(wx.VERTICAL))
self._updateListbox()
dlg.Destroy()
+ def OnDropFiles(self, filenames):
+ for filename in filenames:
+ profile.putPreference('lastFile', filename)
+ self.list.append(filename)
+ self.selection = filename
+ self._updateListbox()
+
def OnRemModel(self, e):
if self.selection == None:
return
--- /dev/null
+from __future__ import absolute_import
+import __init__
+
+import wx
+
+# Define File Drop Target class
+class FileDropTarget(wx.FileDropTarget):
+ def __init__(self, callback, filenameFilter = None):
+ super(FileDropTarget, self).__init__()
+ self.callback = callback
+ self.filenameFilter = filenameFilter
+
+ def OnDropFiles(self, x, y, filenames):
+ if self.filenameFilter != None:
+ filenames = filter(lambda f: f.endswith(self.filenameFilter) or f.endswith(self.filenameFilter.upper()), filenames)
+ if len(filenames) > 0:
+ self.callback(filenames)
+
from gui import batchRun
from gui import flatSlicerWindow
from gui import icon
+from gui import dropTarget
from util import profile
from util import version
from util import sliceRun
wx.EVT_CLOSE(self, self.OnClose)
#self.SetIcon(icon.getMainIcon())
+ self.SetDropTarget(dropTarget.FileDropTarget(self.OnDropFiles, '.stl'))
+
menubar = wx.MenuBar()
fileMenu = wx.Menu()
i = fileMenu.Append(-1, 'Load model file...')
dlg.Destroy()
if not(os.path.exists(filename)):
return False
- profile.putPreference('lastFile', filename)
return filename
dlg.Destroy()
return False
filelist.append(self._showOpenDialog("Open file to print"))
if filelist[-1] == False:
return
- self.SetTitle(filelist[-1] + ' - Cura - ' + version.getVersion())
+ self._loadModels(filelist)
+
+ def _loadModels(self, filelist):
self.filelist = filelist
+ self.SetTitle(filelist[-1] + ' - Cura - ' + version.getVersion())
profile.putPreference('lastFile', ';'.join(self.filelist))
self.preview3d.loadModelFiles(self.filelist)
self.preview3d.setViewMode("Normal")
+ def OnDropFiles(self, filenames):
+ self._loadModels(filenames)
+
def OnLoadModel(self, e):
self._showModelLoadDialog(1)
from gui import configBase\r
from gui import validators\r
from gui import printWindow\r
+from gui import dropTarget\r
from util import profile\r
from util import util3d\r
from util import stl\r
self.GetSizer().Add(self.panel, 1, flag=wx.EXPAND)\r
#self.SetIcon(icon.getMainIcon())\r
\r
+ self.SetDropTarget(dropTarget.FileDropTarget(self.OnDropFiles, '.stl'))\r
+ \r
self.list = []\r
self.selection = None\r
self.printMode = 0\r
self.preview.Refresh()\r
dlg.Destroy()\r
\r
+ def OnDropFiles(self, filenames):\r
+ for filename in filenames:\r
+ item = ProjectObject(self, filename)\r
+ profile.putPreference('lastFile', item.filename)\r
+ self.list.append(item)\r
+ self.selection = item\r
+ self._updateListbox()\r
+ self.OnListSelect(None)\r
+ self.preview.Refresh()\r
+\r
def OnPrintTypeChange(self):\r
self.printMode = 0\r
if self.printAllAtOnce.GetValue():\r
self.scaleCtrl.SetValue(str(self.selection.scale))\r
self.rotateCtrl.SetValue(int(self.selection.rotate))\r
if int(profile.getPreference('extruder_amount')) > 1:\r
+\r
self.extruderCtrl.SetValue(str(self.selection.extruder+1))\r
\r
self.mirrorX.SetValue(self.selection.flipX)\r