Added "open file location" button

master
daid 2012-04-18 14:07:41 +02:00
parent aec00ecad8
commit b3eae9c9ff
2 changed files with 34 additions and 0 deletions

View File

@ -10,6 +10,7 @@ import time
from util import profile
from util import sliceRun
from util import exporer
class sliceProgessPanel(wx.Panel):
def __init__(self, mainWindow, parent, filename):
@ -77,6 +78,9 @@ class sliceProgessPanel(wx.Panel):
def OnShowLog(self, e):
LogWindow('\n'.join(self.progressLog))
def OnOpenFileLocation(self, e):
exporer.openExporer(self.filename[: self.filename.rfind('.')] + "_export.gcode")
def OnSliceDone(self, result):
self.progressGauge.Destroy()
self.abortButton.Destroy()
@ -88,6 +92,10 @@ class sliceProgessPanel(wx.Panel):
self.sizer.Add(self.logButton, 0)
if result.returnCode == 0:
self.statusText.SetLabel("Ready.")
if exporer.hasExporer():
self.openFileLocationButton = wx.Button(self, -1, "Open file location")
self.Bind(wx.EVT_BUTTON, self.OnOpenFileLocation, self.openFileLocationButton)
self.sizer.Add(self.openFileLocationButton, 0)
self.showButton = wx.Button(self, -1, "Show result")
self.Bind(wx.EVT_BUTTON, self.OnShowGCode, self.showButton)
self.sizer.Add(self.showButton, 0)

26
Cura/util/exporer.py Normal file
View File

@ -0,0 +1,26 @@
from __future__ import absolute_import
import __init__
import sys, os, subprocess
def hasExporer():
if sys.platform == 'win32' or sys.platform == 'cygwin' or sys.platform == 'darwin':
return True
if sys.platform == 'linux2':
if os.path.isfile('/usr/bin/nautilus'):
return True
if os.path.isfile('/usr/bin/dolphin'):
return True
return False
def openExporer(filename):
if sys.platform == 'win32' or sys.platform == 'cygwin':
subprocess.Popen(['explorer', "/select,%s" % (filename)])
if sys.platform == 'darwin':
subprocess.Popen(['open', os.path.split(filename)[0]])
if sys.platform == 'linux2':
if os.path.isfile('/usr/bin/nautilus'):
subprocess.Popen(['/usr/bin/nautilus', os.path.split(filename)[0]])
elif os.path.isfile('/usr/bin/dolphin'):
subprocess.Popen(['/usr/bin/dolphin', os.path.split(filename)[0]])