diff options
author | hut <hut@lavabit.com> | 2010-03-28 01:59:17 +0100 |
---|---|---|
committer | hut <hut@lavabit.com> | 2010-03-28 01:59:17 +0100 |
commit | 636f69d346e31ee59702c814574c1379aa9cb8e6 (patch) | |
tree | 4ee5a2f415d87cc964ef908f5d01a2ea592cd790 | |
parent | d3c262a924eebdab926b9569ecdb225b3be1e4a9 (diff) | |
download | ranger-636f69d346e31ee59702c814574c1379aa9cb8e6.tar.gz |
closed issue #70: mouse click handler for the titlebar
-rw-r--r-- | TODO | 2 | ||||
-rw-r--r-- | ranger/gui/widgets/titlebar.py | 20 |
2 files changed, 21 insertions, 1 deletions
diff --git a/TODO b/TODO index 7da64db5..464f8ffb 100644 --- a/TODO +++ b/TODO @@ -47,7 +47,7 @@ General (X) #63 10/02/15 limit filesize in previews ( ) #64 10/02/25 scroll in previews (X) #66 10/02/28 explain how colorschemes work - ( ) #70 10/03/14 mouse handler for titlebar + (X) #70 10/03/14 mouse handler for titlebar (X) #71 10/03/21 previews: black/whitelist + read file diff --git a/ranger/gui/widgets/titlebar.py b/ranger/gui/widgets/titlebar.py index e1be8e97..18d363dc 100644 --- a/ranger/gui/widgets/titlebar.py +++ b/ranger/gui/widgets/titlebar.py @@ -43,6 +43,26 @@ class TitleBar(Widget): self.color('in_titlebar', 'throbber') self.win.addnstr(self.y, self.wid - 2, self.throbber, 1) + def click(self, event): + """Handle a MouseEvent""" + if not event.pressed(1) or not self.result: + return False + + pos = 0 + for i, part in enumerate(self.result): + pos += len(part.string) + if event.x < pos: + if i < 2: + self.fm.enter_dir("~") + elif i == 2: + self.fm.enter_dir("/") + else: + try: + self.fm.env.enter_dir(self.env.pathway[(i-3)/2]) + except: + pass + return False + def _calc_bar(self): bar = Bar('in_titlebar') self._get_left_part(bar) |