From ba9ea93a0f52178d24a606fddc2acc5dc85b7ff2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isma=C3=ABl=20Bouya?= Date: Sun, 19 Jun 2016 01:13:41 +0200 Subject: enhancing locks --- music_sampler.py | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'music_sampler.py') diff --git a/music_sampler.py b/music_sampler.py index 9f14d56..fd03009 100644 --- a/music_sampler.py +++ b/music_sampler.py @@ -7,23 +7,19 @@ pygame.mixer.pre_init(frequency = 44100) pygame.init() size = width, height = 1024, 600 - -helpers.draw_lock.acquire() screen = pygame.display.set_mode(size) -mapping = helpers.Mapping(screen, helpers.draw_lock) +screen.fill((250, 250, 250)) + +draw_lock = helpers.Lock("draw") -action_surface = pygame.Surface((600, 250)).convert() -action_surface.fill((0,0,0)) +mapping = helpers.Mapping(screen, draw_lock) helpers.parse_config(mapping) -helpers.draw_lock.release() mapping.draw() -helpers.draw_lock.acquire() -screen.blit(action_surface, (10, 330)) - +draw_lock.acquire() pygame.display.flip() -helpers.draw_lock.release() +draw_lock.release() contexts = [ 'normal' @@ -54,7 +50,9 @@ while 1: elif event.type == pygame.MOUSEBUTTONUP: key = mapping.find_by_collidepoint(pygame.mouse.get_pos()) if key is not None: - key.list_actions(action_surface) + threading.Thread(target=key.list_actions, args = [screen]).start() + draw_lock.acquire() pygame.display.flip() + draw_lock.release() -- cgit v1.2.3