Update of /cvsroot/tmda/tmda/bin
In directory sc8-pr-cvs1:/tmp/cvs-serv15155/bin
Modified Files:
tmda-gui
Log Message:
Address interface now works
Index: tmda-gui
===================================================================
RCS file: /cvsroot/tmda/tmda/bin/tmda-gui,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- tmda-gui 4 Dec 2002 23:18:32 -0000 1.7
+++ tmda-gui 5 Dec 2002 00:32:26 -0000 1.8
@@ -460,8 +460,8 @@
b.pack(side=RIGHT, padx=0, pady=0)
self.toolbar.pack(side=TOP, fill=X)
- self.split = HSplitterFrame(self, width=100, height=100,
- relief=GROOVE, bg='red')
+ self.split = HSplitterFrame(self, width=600, height=400,
+ relief=GROOVE)
self.split.pack(fill=BOTH, expand=YES)
self.listbox = MessageList(self.split.one)
@@ -493,6 +493,40 @@
self.master.after(1000, self.poll)
+try:
+ from TMDA import Address
+
+ def getAddress(tag, option=None, address=None):
+ try:
+ tagged_address = Address.Factory(tag = tag).create(address,
+option).address
+ except ValueError, msg:
+ usage(msg)
+ sys.exit(0)
+
+ return tagged_address
+
+ def checkAddress(address, sender_address=None):
+ #FIXME: Add localtime support
+ localtime = None
+ status = []
+ try:
+ addr = Address.Factory(address)
+ addr.verify(sender_address)
+ status.append("STATUS: VALID")
+ try:
+ status.append("EXPIRES: %s" % addr.timestamp(1, localtime))
+ except AttributeError:
+ pass
+ except Address.AddressError, msg:
+ status.append("STATUS: " + str(msg))
+
+ return '\n'.join(status)
+
+except ImportError:
+ print "Missing TMDA library, and no client mode yet"
+ raise
+
+
class AddressGUI(Frame):
def __init__(self, master=None, **args):
R = 0
@@ -574,22 +608,36 @@
def Calc(self, ev=None):
self.r_dated['state'] = NORMAL
self.r_dated.delete(0, END)
- self.r_dated.insert(END, 'Dated: ')
- self.r_dated.insert(END, self.e_dated.get() + self.units[self.uidx][1])
+ date = self.e_dated.get().strip()
+ if date:
+ self.r_dated.insert(END, getAddress('dated', date +
+self.units[self.uidx][1]))
self.r_dated['state'] = DISABLED
self.r_keyword['state'] = NORMAL
self.r_keyword.delete(0, END)
- self.r_keyword.insert(END, 'Keyword: ')
- self.r_keyword.insert(END, self.e_keyword.get())
+ keyword = self.e_keyword.get().strip()
+ if keyword:
+ self.r_keyword.insert(END, getAddress('keyword', keyword))
self.r_keyword['state'] = DISABLED
self.r_sender['state'] = NORMAL
self.r_sender.delete(0, END)
- self.r_sender.insert(END, 'Sender: ')
- self.r_sender.insert(END, self.e_sender.get())
+ sender = self.e_sender.get().strip()
+ if sender:
+ self.r_sender.insert(END, getAddress('sender', sender))
self.r_sender['state'] = DISABLED
+ tagged_addr = self.e_check.get().strip()
+ if tagged_addr:
+ sender_addr = self.e_check_sa.get().strip()
+ if not sender_addr:
+ sender_addr = None
+ status = checkAddress(tagged_addr, sender_addr)
+ else:
+ status = "Enter an address to check"
+ self.r_check.configure(text=status)
+
+
def LaunchPending(self):
p = PendingGUI(Toplevel(self)).pack(fill=BOTH, expand=YES)
@@ -597,9 +645,9 @@
def main():
root = Tk()
if len(sys.argv) > 1 and sys.argv[1] == '-p':
- PendingGUI(root, bg="red").pack(fill=BOTH, expand=YES)
+ PendingGUI(root).pack(fill=BOTH, expand=YES)
else:
- AddressGUI(root).pack(fill=BOTH)
+ AddressGUI(root).pack(fill=BOTH, expand=YES)
root.mainloop()
if __name__ == '__main__':
_______________________________________
tmda-cvs mailing list
http://tmda.net/lists/listinfo/tmda-cvs