import sys, pygame
from random import shuffle

from OneStrokeGesture import OneStrokeGesture

pygame.init()

screen = pygame.display.set_mode((320, 240))
paths = []
letters = [chr(c) for c in range (ord('a'), ord('f'))] * 3
g = OneStrokeGesture([])
print g.strokes

print "learning:", letters[0]

while True:
	for event in pygame.event.get():
		if event.type == pygame.QUIT:
			sys.exit()
		
		if event.type == pygame.MOUSEBUTTONDOWN:
			g.PenDown(event.pos)
			paths.append(g.path.points)
		if event.type == pygame.MOUSEMOTION:
			if g.down:
				g.PenTo(event.pos)
		if event.type == pygame.MOUSEBUTTONUP:
			if len(letters):
				g.Learn(letters[0], g.path.points)
				letters = letters[1:]
				if len(letters):
					print "learning:", letters[0]
				g.PenUp(event.pos)
			else:
				print "found:", g.PenUp(event.pos)
	
	screen.fill([255, 255, 255])
	[pygame.draw.aalines(screen, [0, 0, 0], False, p, 1) for p in paths if len(p) > 1]
	pygame.display.flip()


