MCPcopy Create free account
hub / github.com/LeoDJ/P2Pro-Viewer / draw_scale

Method draw_scale

P2Pro/gui.py:49–70  ·  view source on GitHub ↗
(self, *args)

Source from the content-addressed store, hash-verified

47 self.bind(pos=self.draw_scale)
48
49 def draw_scale(self, *args):
50 self.canvas.clear()
51 with self.canvas:
52 Color(1, 1, 1, 1)
53 Rectangle(pos=self.pos, size=(10, self.height))
54
55 # Draw color gradient
56 # Replace this with your own gradient logic
57 color_range = [(1, 0, 0, 1), (0, 1, 0, 1)] # Example gradient from red to green
58 color_steps = len(color_range)
59 step_height = self.height / color_steps
60 for i, color in enumerate(color_range):
61 Color(*color)
62 Rectangle(pos=(self.pos[0] + 10, self.pos[1] + i * step_height), size=(self.width - 10, step_height))
63
64 # Draw ticks with values
65 # Replace this with your own tick logic
66 tick_values = [0, 0.25, 0.5, 0.75, 1.0] # Example tick values
67 tick_positions = [(self.pos[0] + 10, self.pos[1] + i * step_height) for i, _ in enumerate(tick_values)]
68 for value, position in zip(tick_values, tick_positions):
69 Label(text=str(value), pos=(position[0] + 15, position[1] - 10), size_hint=(None, None))
70 Line(points=[position[0] + 10, position[1], position[0] + self.width, position[1]], width=1)
71
72
73class GuiApp(App):

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected