Mercurial > libervia-backend
diff frontends/primitivus/primitivus @ 127:55d3ef84f01f
Primitivus: mouse wheel changed to 'up' and 'down' key press
author | Goffi <goffi@goffi.org> |
---|---|
date | Mon, 12 Jul 2010 18:55:27 +0800 |
parents | 8d611eb9ae48 |
children | 2240f34f6452 |
line wrap: on
line diff
--- a/frontends/primitivus/primitivus Mon Jul 12 18:54:55 2010 +0800 +++ b/frontends/primitivus/primitivus Mon Jul 12 18:55:27 2010 +0800 @@ -84,7 +84,7 @@ ## main loop setup ## self.main_widget = ProfileManager(self) - self.loop = urwid.MainLoop(self.main_widget, const_PALETTE, event_loop=urwid.GLibEventLoop(), unhandled_input=self.key_handler) + self.loop = urwid.MainLoop(self.main_widget, const_PALETTE, event_loop=urwid.GLibEventLoop(), input_filter=self.inputFilter, unhandled_input=self.keyHandler) ##misc setup## self.chat_wins=ChatList(self) @@ -105,7 +105,17 @@ self.loop.set_alarm_in(0,lambda a,b: self.postInit()) self.loop.run() - def key_handler(self, input): + def inputFilter(self, input, raw): + for i in input: + if i.__class__==tuple: + if i[0] == 'mouse press': + if i[1] == 4: #Mouse wheel up + input[input.index(i)] = 'up' + if i[1] == 5: #Mouse wheel down + input[input.index(i)] = 'down' + return input + + def keyHandler(self, input): if input in ('q', 'Q') or input == 'ctrl x': raise urwid.ExitMainLoop() elif input == 'ctrl d' and 'D' in self.bridge.getVersion(): #Debug only for dev versions