Mercurial > code > home > repos > light9
changeset 476:0e3743492eae
curvecalc: new keyboard shortcut hotness
author | drewp@bigasterisk.com |
---|---|
date | Fri, 12 Jun 2009 22:46:17 +0000 |
parents | a5f38134fb88 |
children | b1ec84833f36 |
files | bin/curvecalc light9/curve.py |
diffstat | 2 files changed, 14 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/bin/curvecalc Fri Jun 12 10:45:57 2009 +0000 +++ b/bin/curvecalc Fri Jun 12 22:46:17 2009 +0000 @@ -342,11 +342,16 @@ tk.Button(f, text="reload subs (C-r)", command=reload_subs).pack(side='left') - tk.Label(f, text="new subterm named (C-Enter for curve too):").pack(side='left') + tk.Label(f, text="new subterm named (C-Enter for curve too, C-n for focus):").pack(side='left') entry = tk.Entry(f, textvariable=newname) entry.pack(side='left', fill='x', exp=1) entry.bind("<Key-Return>", add_cmd) + def focus_entry(): + entry.focus() + + dispatcher.connect(focus_entry, "focus new subterm", weak=False) + return f def savesubterms(filename,subterms): @@ -464,6 +469,8 @@ root.bind("<Control-Key-s>",savekey) root.bind("<Control-Key-r>", lambda evt: dispatcher.send('reload all subs')) +root.bind("<Control-Key-n>", lambda evt: dispatcher.send('focus new subterm')) +root.bind("<Control-Key-N>", lambda evt: dispatcher.send('focus new curve')) create_status_lines(root) for helpline in ["Bindings: C-s save subterms; Esc see current time; S-Esc see curtime to end; C-Esc show all; Mousewheel zoom; C-p play/pause music at mouse",
--- a/light9/curve.py Fri Jun 12 10:45:57 2009 +0000 +++ b/light9/curve.py Fri Jun 12 22:46:17 2009 +0000 @@ -697,7 +697,7 @@ f = tk.Frame(self,relief='raised',bd=1) f.pack(side='top',fill='x') - tk.Label(f, text="new curve named:").pack(side='left') + tk.Label(f, text="new curve named: (C-N)").pack(side='left') self.newcurvename = tk.StringVar() @@ -708,8 +708,12 @@ entry = tk.Entry(f, textvariable=self.newcurvename) entry.pack(side='left', fill='x',exp=1) entry.bind("<Key-Return>", new_curve) + + def focus_entry(): + entry.focus() - dispatcher.connect(self.add_curve,"add_curve",sender=self.curveset) + dispatcher.connect(self.add_curve, "add_curve", sender=self.curveset) + dispatcher.connect(focus_entry, "focus new curve", weak=False) def add_curve(self,name, slider=None, knobEnabled=False): f = tk.Frame(self,relief='raised',bd=1)