use doom.py in tmp_*; implement saveas

This commit is contained in:
Jon Dowland 2008-02-03 18:07:23 +00:00
parent a2ac1d5777
commit d0f8911793
2 changed files with 15 additions and 23 deletions

View file

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd"> <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
<!--Generated with glade3 3.4.0 on Wed Jan 30 18:35:25 2008 --> <!--Generated with glade3 3.4.0 on Sun Feb 3 17:47:29 2008 -->
<glade-interface> <glade-interface>
<widget class="GtkWindow" id="window1"> <widget class="GtkWindow" id="window1">
<property name="visible">True</property> <property name="visible">True</property>
@ -51,7 +51,7 @@
</widget> </widget>
</child> </child>
<child> <child>
<widget class="GtkImageMenuItem" id="imagemenuitem4"> <widget class="GtkImageMenuItem" id="saveas_menu_item">
<property name="visible">True</property> <property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="label" translatable="yes">gtk-save-as</property> <property name="label" translatable="yes">gtk-save-as</property>

View file

@ -4,27 +4,7 @@ import sys
import gtk import gtk
import gtk.glade import gtk.glade
class Patch: from doom import Patch, Texture
def __init__(self, n,x,y):
self.name = n
self.yoff = x
self.xoff =y
def __str__(self):
return "*\t%8s\t\t%d\t%d" % (self.name,self.xoff,self.yoff)
class Texture:
def __init__(self,name,width,height):
self.name = name
self.width = width
self.height = height
self.patches = []
self.pixbuf = None
def __str__(self):
me = "%8s\t\t%d\t%d\n" % (self.name,int(self.width),int(self.height))
kids = "\n".join(map(str, self.patches))
return (me + kids)
class HellowWorldGTK: class HellowWorldGTK:
"""This is an Hello World GTK application""" """This is an Hello World GTK application"""
@ -290,10 +270,22 @@ class HellowWorldGTK:
self.wTree.get_widget("window1").connect("destroy", gtk.main_quit) self.wTree.get_widget("window1").connect("destroy", gtk.main_quit)
self.wTree.get_widget("quit_menu_item").connect("activate", gtk.main_quit) self.wTree.get_widget("quit_menu_item").connect("activate", gtk.main_quit)
self.wTree.get_widget("saveas_menu_item").connect("activate", self.saveas_activated)
# select the top-most texture # select the top-most texture
lhs.set_cursor( (0,) , None, False) lhs.set_cursor( (0,) , None, False)
def saveas_activated(self, arg):
filesel = gtk.FileChooserDialog(action=gtk.FILE_CHOOSER_ACTION_SAVE,
buttons=(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL,
gtk.STOCK_SAVE, gtk.RESPONSE_OK))
if filesel.run() == gtk.RESPONSE_OK:
filename = filesel.get_filename()
writetome = open(filename,"w")
writetome.write("".join(map(str,self.wip_textures.values())))
writetome.close()
filesel.destroy()
if __name__ == "__main__": if __name__ == "__main__":
hwg = HellowWorldGTK() hwg = HellowWorldGTK()
gtk.main() gtk.main()