fenfire-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ff-cvs] fenfire/org/fenfire/demo text-mm.py


From: Tuukka Hastrup
Subject: [ff-cvs] fenfire/org/fenfire/demo text-mm.py
Date: Tue, 26 Aug 2003 15:31:16 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Branch:         
Changes by:     Tuukka Hastrup <address@hidden> 03/08/26 15:31:16

Modified files:
        org/fenfire/demo: text-mm.py 

Log message:
        node number moves there

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/demo/text-mm.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text

Patches:
Index: fenfire/org/fenfire/demo/text-mm.py
diff -u fenfire/org/fenfire/demo/text-mm.py:1.2 
fenfire/org/fenfire/demo/text-mm.py:1.3
--- fenfire/org/fenfire/demo/text-mm.py:1.2     Tue Aug 26 14:46:42 2003
+++ fenfire/org/fenfire/demo/text-mm.py Tue Aug 26 15:31:15 2003
@@ -121,6 +121,7 @@
         self.components.append(node)
 
     def editText(self, text):
+        if text == None: text = ''
         self.alphContent.setText(self.focused, text, 1)
 
     def neighbours(self, node):
@@ -149,9 +150,9 @@
         'save': lambda x:save(),
         'new': scene.newNode,
         'write': scene.editText,
-        'moveto': lambda 
str:scene.focus(scene.neighbours(scene.focused)[int(str)]),
-        'changeto': lambda str:scene.focus(scene.components[int(str)]),
-        'linkto': lambda str:scene.link(scene.components[int(str)]),
+        'moveto': lambda 
str:scene.focus(scene.neighbours(scene.focused)[int(str)-1]),
+        'changeto': lambda str:scene.focus(scene.components[-int(str)-1]),
+        'linkto': lambda str:scene.link(scene.components[-int(str)-1]),
         }
 
 while 1:
@@ -160,26 +161,35 @@
     print
     print "You can move to: "
     list = scene.neighbours(scene.focused)
-    for i in range(len(list)): print "%d. %s" % (i, scene.text(list[i]))
+    for i in range(len(list)): print "%d: %s" % (i+1, scene.text(list[i]))
     print
     print "In the air around you:"
     list = scene.components
-    for i in range(len(list)): print "%d. %s" % (i, scene.text(list[i]))
+    for i in range(len(list)): print "%d: %s" % (-(i+1), scene.text(list[i]))
     print
     print cmds.keys()
-    print "What shall we do? ",
+    print "What, or where to, shall we? ",
     line = stdin.readline().strip()
-    cmdend = line.find(' ')
-    cmd, rest = None, None
-    if cmdend == -1:
-        cmd = line
-        rest = None
-    else:
-        cmd = line[:cmdend]
-        rest = line[cmdend:].strip()
     try:
-        cmds[cmd](rest)
-    except KeyError:
-        print "I don't understand "+cmd
+        i = int(line)
+        if i>0:
+            scene.focus(scene.neighbours(scene.focused)[i-1])
+        elif i<0:
+            scene.focus(scene.components[-i-1])
+    except ValueError:
+        cmdend = line.find(' ')
+        cmd, rest = None, None
+        if cmdend == -1:
+            cmd = line
+            rest = None
+        else:
+            cmd = line[:cmdend]
+            rest = line[cmdend:].strip()
+        try:
+            cmds[cmd](rest)
+        except KeyError:
+            print "I don't know how to "+cmd
+        except:
+            print_exc()
     except:
         print_exc()




reply via email to

[Prev in Thread] Current Thread [Next in Thread]