Files
dxftogcode/dxf.py

64 lines
2.0 KiB
Python
Raw Normal View History

#!/usr/bin/env python
import gtk
import os
import subprocess
class Buglump:
def __init__(self):
self.builder = gtk.Builder()
self.builder.add_from_file('dxf.glade')
self.builder.connect_signals(self)
self.window = self.builder.get_object('main_window')
self.aboutdialog = self.builder.get_object("aboutdialog")
self.statusbar = self.builder.get_object("statusbar")
self.context_id = self.statusbar.get_context_id("status")
self.statusbar.push(self.context_id, 'No File Open')
self.current_folder = os.path.expanduser('~')
self.file_name = ''
self.window.show()
def on_window_destroy(self, object, data=None):
gtk.main_quit()
def on_file_quit(self, menuitem, data=None):
gtk.main_quit()
def on_file_open(self, menuitem, data=None):
self.fcd = gtk.FileChooserDialog("Open...", None,
gtk.FILE_CHOOSER_ACTION_OPEN,
(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL, gtk.STOCK_OPEN, gtk.RESPONSE_OK))
print self.fcd.list_shortcut_folders()
if len(self.current_folder) > 0:
self.fcd.set_current_folder(self.current_folder)
self.response = self.fcd.run()
if self.response == gtk.RESPONSE_OK:
self.file_name = self.fcd.get_filename()
self.current_folder = os.path.dirname(self.fcd.get_uri()[7:])
self.statusbar.push(self.context_id, 'File Selected %s' % str(self.file_name))
self.fcd.destroy()
def on_file_convert(self, file_name, data=None):
if len(self.file_name) > 0:
print self.file_name
self.args = self.file_name
self.result = subprocess.call('dxf2gcode %s' %self.args, shell=True)
if self.result == 0:
self.statusbar.push(self.context_id, 'Processing Complete')
else:
self.statusbar.push(self.context_id, 'Error Processing %s' % str(self.file_name))
else:
self.statusbar.push(self.context_id, 'No File Open')
def on_view_test(self, item, data=None):
print self.current_folder
def on_help_about(self, menuitem, data=None):
self.response = self.aboutdialog.run()
self.aboutdialog.hide()
if __name__ == '__main__':
main = Buglump()
gtk.main()