from pgl import GWindow, GImage, GOval

with open('./User1_Original.txt') as fh:
    name = fh.readline().strip()
    width = int(fh.readline().strip())
    height = int(fh.readline().strip())
    data = fh.read().splitlines()

print(name)
print(width)
print(height)
gw = GWindow(width, height)

array = [[0 for i in range(width)] for j in range(height)]
for r in range(height):
    for c in range(width):
        if data[r][c] == 'M':
            array[r][c] = GImage.create_rgb_pixel(0,0,0)
        else:
            array[r][c] = GImage.create_rgb_pixel(255,255,255)

fprint = GImage(array)
gw.add(fprint)

def click_action(e):
    mx, my = e.get_x(), e.get_y()
    size = 4
    marker = GOval(mx - size/2, my-size/2, size, size)
    marker.set_filled(True)
    marker.set_color("red")
    with open('points.txt', 'a') as fh:
        fh.write(f"{mx},{my}\n")
    gw.add(marker)


gw.add_event_listener("mousedown", click_action)
