MCPcopy Index your code
hub / github.com/Bitmessage/PyBitmessage / drawtab

Function drawtab

src/bitmessagecurses/__init__.py:119–255  ·  view source on GitHub ↗
(stdscr)

Source from the content-addressed store, hash-verified

117 Inventory().numberOfInventoryLookupsPerformed = 0
118 Timer(1, resetlookups, ()).start()
119def drawtab(stdscr):
120 if menutab in range(1, len(menu)+1):
121 if menutab == 1: # Inbox
122 stdscr.addstr(3, 5, "To", curses.A_BOLD)
123 stdscr.addstr(3, 40, "From", curses.A_BOLD)
124 stdscr.addstr(3, 80, "Subject", curses.A_BOLD)
125 stdscr.addstr(3, 120, "Time Received", curses.A_BOLD)
126 stdscr.hline(4, 5, '-', 121)
127 for i, item in enumerate(inbox[max(min(len(inbox)-curses.LINES+6, inboxcur-5), 0):]):
128 if 6+i < curses.LINES:
129 a = 0
130 if i == inboxcur - max(min(len(inbox)-curses.LINES+6, inboxcur-5), 0): # Highlight current address
131 a = a | curses.A_REVERSE
132 if item[7] == False: # If not read, highlight
133 a = a | curses.A_BOLD
134 stdscr.addstr(5+i, 5, item[1][:34], a)
135 stdscr.addstr(5+i, 40, item[3][:39], a)
136 stdscr.addstr(5+i, 80, item[5][:39], a)
137 stdscr.addstr(5+i, 120, item[6][:39], a)
138 elif menutab == 3: # Sent
139 stdscr.addstr(3, 5, "To", curses.A_BOLD)
140 stdscr.addstr(3, 40, "From", curses.A_BOLD)
141 stdscr.addstr(3, 80, "Subject", curses.A_BOLD)
142 stdscr.addstr(3, 120, "Status", curses.A_BOLD)
143 stdscr.hline(4, 5, '-', 121)
144 for i, item in enumerate(sentbox[max(min(len(sentbox)-curses.LINES+6, sentcur-5), 0):]):
145 if 6+i < curses.LINES:
146 a = 0
147 if i == sentcur - max(min(len(sentbox)-curses.LINES+6, sentcur-5), 0): # Highlight current address
148 a = a | curses.A_REVERSE
149 stdscr.addstr(5+i, 5, item[0][:34], a)
150 stdscr.addstr(5+i, 40, item[2][:39], a)
151 stdscr.addstr(5+i, 80, item[4][:39], a)
152 stdscr.addstr(5+i, 120, item[5][:39], a)
153 elif menutab == 2 or menutab == 4: # Send or Identities
154 stdscr.addstr(3, 5, "Label", curses.A_BOLD)
155 stdscr.addstr(3, 40, "Address", curses.A_BOLD)
156 stdscr.addstr(3, 80, "Stream", curses.A_BOLD)
157 stdscr.hline(4, 5, '-', 81)
158 for i, item in enumerate(addresses[max(min(len(addresses)-curses.LINES+6, addrcur-5), 0):]):
159 if 6+i < curses.LINES:
160 a = 0
161 if i == addrcur - max(min(len(addresses)-curses.LINES+6, addrcur-5), 0): # Highlight current address
162 a = a | curses.A_REVERSE
163 if item[1] == True and item[3] not in [8,9]: # Embolden enabled, non-special addresses
164 a = a | curses.A_BOLD
165 stdscr.addstr(5+i, 5, item[0][:34], a)
166 stdscr.addstr(5+i, 40, item[2][:39], cpair(item[3]) | a)
167 stdscr.addstr(5+i, 80, str(1)[:39], a)
168 elif menutab == 5: # Subscriptions
169 stdscr.addstr(3, 5, "Label", curses.A_BOLD)
170 stdscr.addstr(3, 80, "Address", curses.A_BOLD)
171 stdscr.addstr(3, 120, "Enabled", curses.A_BOLD)
172 stdscr.hline(4, 5, '-', 121)
173 for i, item in enumerate(subscriptions[max(min(len(subscriptions)-curses.LINES+6, subcur-5), 0):]):
174 if 6+i < curses.LINES:
175 a = 0
176 if i == subcur - max(min(len(subscriptions)-curses.LINES+6, subcur-5), 0): # Highlight current address

Callers 1

runFunction · 0.85

Calls 2

cpairFunction · 0.85
itemsMethod · 0.80

Tested by

no test coverage detected