"""
Views RK files in a TK window.
"""
import sys
from os.path import basename, abspath, join, dirname
from Tkinter import *
import rk
def tkinter_display_str(rki_filename, msg):
root = Tk()
root.iconbitmap(abspath(join(dirname(__file__), "corona.ico")))
text = Text(root, width=120, padx=10, pady=10)
text.insert(INSERT, msg)
text.pack()
root.title(rki_filename)
root.mainloop()
return
def dict_to_str(d):
str_rep = ""
for key in d.keys():
k = str(key).strip().ljust(30)
value = d[key]
value = str(value).strip()
if len(value) > 116:
value = "\n" + textwrap.fill(value, 100, initial_indent=' ', subsequent_indent=' ') + "\n"
str_rep += "%s: %s\n" % (k, value)
return str_rep
def view_rk(rk_path):
str_rep = ""
rk_obj = rk.parseRK(rk_path)
if rk_obj is not None:
#for key in rk_obj.keys():
# str_rep += "%s %s\n" % (key, rk_obj[key])
str_rep = dict_to_str(rk_obj)
else:
str_rep = "Problem parsing rk file! %s" % rk_path
tkinter_display_str(basename(rk_path), str_rep)
return
def main(rk_filenames):
for rk_filename in rk_filenames:
rk_filename = abspath(rk_filename)
view_rk(rk_filename)
return
if __name__ == "__main__":
if len(sys.argv) > 1:
main(sys.argv[1:])