From 567491ba439b5ae1b1f82f3796287d80e2ef653d Mon Sep 17 00:00:00 2001 From: "louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13" Date: Wed, 4 Aug 2010 01:03:02 +0000 Subject: [PATCH] indicates the number of available lines to be scrolled down fixed #1674 --- src/gui.py | 2 ++ src/window.py | 14 ++++++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/gui.py b/src/gui.py index a1b1a117..f5116c4f 100644 --- a/src/gui.py +++ b/src/gui.py @@ -198,6 +198,8 @@ class Gui(object): curses.COLOR_YELLOW) curses.init_pair(15, curses.COLOR_WHITE, # new message in private room curses.COLOR_GREEN) + curses.init_pair(16, curses.COLOR_YELLOW, + curses.COLOR_BLUE) def reset_curses(self): """ diff --git a/src/window.py b/src/window.py index fd3179ac..76f2b048 100644 --- a/src/window.py +++ b/src/window.py @@ -150,6 +150,15 @@ class RoomInfo(Win): def resize(self, height, width, y, x, stdscr, visible): self._resize(height, width, y, x, stdscr) + def print_scroll_position(self, current_room): + """ + Print, link in Weechat, a -PLUS(n)- where n + is the number of available lines to scroll + down + """ + if current_room.pos > 0: + self.win.addstr(' -PLUS(%s)-' % current_room.pos, curses.color_pair(16) | curses.A_BOLD) + def refresh(self, rooms, current): if not self.visible: return @@ -175,6 +184,7 @@ class RoomInfo(Win): except: pass pass + self.print_scroll_position(current) while True: try: self.win.addstr(' ', curses.color_pair(1)) @@ -259,10 +269,6 @@ class TextWin(Win): if not self.visible: return self.win.erase() - # if room.pos != 0: - # messages = room.messages[-self.height - room.pos : -room.pos] - # else: - # messages = room.messages[-self.height:] lines = self.build_lines_from_messages(room.messages) if room.pos + self.height > len(lines): room.pos = len(lines) - self.height