MCPcopy Create free account
hub / github.com/Akascape/CTkTable / dynamic_hover

Method dynamic_hover

CTkTable/ctktable.py:274–302  ·  view source on GitHub ↗

internal function to change corner cell colors

(self, frame, i, j)

Source from the content-addressed store, hash-verified

272 self.frame[x].bind(*y)
273
274 def dynamic_hover(self, frame, i, j):
275 """ internal function to change corner cell colors """
276 self.corner_buttons[i,j] = frame
277 fg = self.data[i,j]["args"]["fg_color"]
278 hv = self.data[i,j]["args"]["hover_color"]
279 if (self.border_width>=5) and (self.corner>=5):
280 tr = self.border_color
281 else:
282 tr = ""
283 if i==0 and j==0:
284 corners = [tr, fg, fg, fg]
285 hover_corners = [tr, hv, hv, hv]
286 elif i==self.rows-1 and j==self.columns-1:
287 corners = [fg ,fg, tr, fg]
288 hover_corners = [hv, hv, tr, hv]
289 elif i==self.rows-1 and j==0:
290 corners = [fg ,fg, fg, tr]
291 hover_corners = [hv, hv, hv, tr]
292 elif i==0 and j==self.columns-1:
293 corners = [fg, tr, fg, fg]
294 hover_corners = [hv, tr, hv, hv]
295 else:
296 return
297
298 frame.configure(background_corner_colors=corners, fg_color=fg)
299 frame.bind("<Enter>", lambda e, x=i, y=j, color=hover_corners, fg=hv:
300 self.frame[x,y].configure(background_corner_colors=color, fg_color=fg))
301 frame.bind("<Leave>", lambda e, x=i, y=j, color=corners, fg=fg:
302 self.frame[x,y].configure(background_corner_colors=color, fg_color=fg))
303
304 def manipulate_data(self, row, column):
305 """ entry callback """

Callers 5

draw_tableMethod · 0.95
edit_rowMethod · 0.95
edit_columnMethod · 0.95
insertMethod · 0.95
editMethod · 0.95

Calls 2

configureMethod · 0.80
bindMethod · 0.80

Tested by

no test coverage detected