From f36934f0766ac46735165aa70a5852a7d42e1cda Mon Sep 17 00:00:00 2001
From: 9and3r <9and3r@gmai.com>
Date: Sat, 26 Jul 2014 14:28:41 +0200
Subject: [PATCH] Code cleanup 2
---
mopidy_touchscreen/.idea/workspace.xml | 138 +++++++----------------
mopidy_touchscreen/__init__.py | 12 +-
mopidy_touchscreen/dynamic_background.py | 39 ++++---
mopidy_touchscreen/list_view.py | 17 ++-
mopidy_touchscreen/main_screen.py | 12 +-
mopidy_touchscreen/screen_manager.py | 10 +-
mopidy_touchscreen/screen_objects.py | 21 ++--
7 files changed, 101 insertions(+), 148 deletions(-)
diff --git a/mopidy_touchscreen/.idea/workspace.xml b/mopidy_touchscreen/.idea/workspace.xml
index 6f06ef1..78a6aa0 100644
--- a/mopidy_touchscreen/.idea/workspace.xml
+++ b/mopidy_touchscreen/.idea/workspace.xml
@@ -23,63 +23,11 @@
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
@@ -96,24 +44,24 @@
-
+
-
+
@@ -331,12 +279,13 @@
-
-
+
+
+
@@ -347,10 +296,9 @@
-
-
+
@@ -687,13 +635,6 @@
-
-
-
-
-
-
-
@@ -708,16 +649,9 @@
-
-
-
-
-
-
-
-
+
@@ -731,14 +665,6 @@
-
-
-
-
-
-
-
-
@@ -747,21 +673,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mopidy_touchscreen/__init__.py b/mopidy_touchscreen/__init__.py
index f37542e..1044841 100644
--- a/mopidy_touchscreen/__init__.py
+++ b/mopidy_touchscreen/__init__.py
@@ -26,15 +26,11 @@ class Extension(ext.Extension):
def get_config_schema(self):
schema = super(Extension, self).get_config_schema()
- schema['screen_width'] = config.Integer()
- schema['screen_height'] = config.Integer()
- schema['cursor'] = config.Boolean()
- # TODO: Comment in and edit, or remove entirely
- #schema['username'] = config.String()
- #schema['password'] = config.Secret()
+ schema['screen_width'] = config.Integer()
+ schema['screen_height'] = config.Integer()
+ schema['cursor'] = config.Boolean()
return schema
def setup(self, registry):
registry.add('frontend', TouchScreen)
- registry.add('backend', TouchScreenBackend)
-
+ registry.add('backend', TouchScreenBackend)
\ No newline at end of file
diff --git a/mopidy_touchscreen/dynamic_background.py b/mopidy_touchscreen/dynamic_background.py
index c17daf2..065cb7b 100644
--- a/mopidy_touchscreen/dynamic_background.py
+++ b/mopidy_touchscreen/dynamic_background.py
@@ -1,27 +1,38 @@
import random
+
class DynamicBackground():
def __init__(self):
- self.current=[0,0,0]
- for x in range(0, 3):
- self.current[x]=random.randint(0,255)
- self.target=[0,0,0]
- for x in range(0, 3):
- self.target[x]=random.randint(0,255)
+ self.current = get_valid_color()
+ self.target = get_valid_color()
- def drawBackground(self,surface):
+ def draw_background(self, surface):
same = True
for x in range(0, 3):
- if self.current[x]> self.target[x]:
- self.current[x]=self.current[x]-1
+ if self.current[x] > self.target[x]:
+ self.current[x] -= 1
elif self.current[x] 0:
+ i = random.randint(0, 2)
+ color[i] -= - extra
+ return color
diff --git a/mopidy_touchscreen/list_view.py b/mopidy_touchscreen/list_view.py
index 58d1338..62cff23 100644
--- a/mopidy_touchscreen/list_view.py
+++ b/mopidy_touchscreen/list_view.py
@@ -10,7 +10,7 @@ logger = logging.getLogger(__name__)
class ListView():
- def __init__(self, pos, size, base_size,fonts):
+ def __init__(self, pos, size, base_size, fonts):
self.size = size
self.pos = pos
self.base_size = base_size
@@ -29,7 +29,7 @@ class ListView():
if self.max_rows < self.list_size:
self.scrollbar = True
scroll_bar = ScrollBar((self.pos[0]+self.size[0]-self.base_size,self.pos[1]), (self.base_size, self.size[1]),self.list_size,self.max_rows)
- self.screen_objects.add_touch_object("scrollbar", scroll_bar)
+ self.screen_objects.set_touch_object("scrollbar", scroll_bar)
logger.error("hemen nao")
else:
self.scrollbar = False
@@ -38,9 +38,9 @@ class ListView():
def load_new_item_position(self, item_pos):
self.current_item = item_pos
if self.scrollbar:
- self.screen_objects.clear("scrollbar")
+ self.screen_objects.clear_touch("scrollbar")
else:
- self.screen_objects.clear(None)
+ self.screen_objects.clear_touch(None)
i = self.current_item
z = 0
if self.scrollbar:
@@ -48,9 +48,8 @@ class ListView():
else:
width = self.size[0]
while i < self.list_size and z < self.max_rows:
- logger.error("sartu naiz")
- item = TouchAndTextItem(self.fonts['dejavusans'], self.list[i], (self.pos[0],self.pos[1]+self.base_size*z),(width, self.base_size))
- self.screen_objects.add_touch_object(str(i), item)
+ item = TouchAndTextItem(self.fonts['dejavusans'], self.list[i], (self.pos[0], self.pos[1]+self.base_size*z), (width, self.base_size))
+ self.screen_objects.set_touch_object(str(i), item)
i += 1
z += 1
@@ -79,6 +78,4 @@ class ListView():
if self.current_item < 0:
self.current_item = 0
self.load_new_item_position(self.current_item)
- self.screen_objects.get_touch_object("scrollbar").set_item(self.current_item)
-
-
+ self.screen_objects.get_touch_object("scrollbar").set_item(self.current_item)
\ No newline at end of file
diff --git a/mopidy_touchscreen/main_screen.py b/mopidy_touchscreen/main_screen.py
index b702f91..45d5cbd 100644
--- a/mopidy_touchscreen/main_screen.py
+++ b/mopidy_touchscreen/main_screen.py
@@ -41,9 +41,9 @@ class MainScreen():
def track_started(self, track):
self.image = None
x = self.base_size * 5
- self.touch_text_manager.add_object("track_name",self.fonts['dejavusans'],track.name,(x,self.base_size*2), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
- self.touch_text_manager.add_object("album_name",self.fonts['dejavusans'],track.album.name,(x,self.base_size*3), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
- self.touch_text_manager.add_object("artist_name",self.fonts['dejavusans'],self.getFirstArtist(track),(x,self.base_size*4), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
+ self.touch_text_manager.set_object("track_name",self.fonts['dejavusans'],track.name,(x,self.base_size*2), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
+ self.touch_text_manager.set_object("album_name",self.fonts['dejavusans'],track.album.name,(x,self.base_size*3), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
+ self.touch_text_manager.set_object("artist_name",self.fonts['dejavusans'],self.getFirstArtist(track),(x,self.base_size*4), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
self.touch_text_manager.add_progressbar("time_progress", self.fonts['dejavusans'],time.strftime('%M:%S', time.gmtime(0))+"/"+time.strftime('%M:%S', time.gmtime(0)),(0,self.base_size*6), (self.size[0],self.base_size*7),track.length/1000, False)
self.track = track
if not self.is_image_in_cache():
@@ -89,9 +89,9 @@ class MainScreen():
except:
logger.warning("Cover could not be downloaded")
logger.error(self.track.name)
- self.touch_text_manager.add_object("track_name",self.fonts['dejavusans'],self.track.name,(self.base_size,self.base_size*2), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
- self.touch_text_manager.add_object("album_name",self.fonts['dejavusans'],self.track.album.name,(self.base_size,self.base_size*3), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
- self.touch_text_manager.add_object("artist_name",self.fonts['dejavusans'],self.getFirstArtist(self.track),(self.base_size,self.base_size*4), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
+ self.touch_text_manager.set_object("track_name",self.fonts['dejavusans'],self.track.name,(self.base_size,self.base_size*2), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
+ self.touch_text_manager.set_object("album_name",self.fonts['dejavusans'],self.track.album.name,(self.base_size,self.base_size*3), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
+ self.touch_text_manager.set_object("artist_name",self.fonts['dejavusans'],self.getFirstArtist(self.track),(self.base_size,self.base_size*4), (self.size[0]-self.base_size,self.size[1]), (255, 255, 255))
def loadImage(self):
size = self.base_size * 4
diff --git a/mopidy_touchscreen/screen_manager.py b/mopidy_touchscreen/screen_manager.py
index 2b72249..e6575bf 100644
--- a/mopidy_touchscreen/screen_manager.py
+++ b/mopidy_touchscreen/screen_manager.py
@@ -31,16 +31,16 @@ class ScreenManager():
self.touch_manager = TouchManager(size)
self.screen_objects_manager = ScreenObjectsManager()
button = TouchAndTextItem(self.fonts['dejavusans']," ll",(0, 0), None)
- self.screen_objects_manager.add_touch_object("pause_play", button)
+ self.screen_objects_manager.set_touch_object("pause_play", button)
x = button.get_right_pos() + self.base_size / 2
button = TouchAndTextItem(self.fonts['dejavuserif'],u"\u2928",(x,0),None)
- self.screen_objects_manager.add_touch_object("random",button)
+ self.screen_objects_manager.set_touch_object("random",button)
x = button.get_right_pos()
button = TouchAndTextItem(self.fonts['dejavuserif'],u"\u27F21",(x,0),None)
- self.screen_objects_manager.add_touch_object("repeat",button)
+ self.screen_objects_manager.set_touch_object("repeat",button)
x = button.get_right_pos() + self.base_size / 2
button = TouchAndTextItem(self.fonts['dejavusans'],"Mute",(x,0),None)
- self.screen_objects_manager.add_touch_object("mute",button)
+ self.screen_objects_manager.set_touch_object("mute",button)
x = button.get_right_pos() + self.base_size / 2
'''
@@ -62,7 +62,7 @@ class ScreenManager():
def update(self):
surface = pygame.Surface(self.size)
- self.background.drawBackground(surface)
+ self.background.draw_background(surface)
self.screens[self.current_screen].update(surface)
surface.blit(self.top_bar,(0,0))
surface.blit(self.top_bar,(0,self.base_size*7))
diff --git a/mopidy_touchscreen/screen_objects.py b/mopidy_touchscreen/screen_objects.py
index 05fd744..00843a1 100644
--- a/mopidy_touchscreen/screen_objects.py
+++ b/mopidy_touchscreen/screen_objects.py
@@ -11,13 +11,13 @@ class ScreenObjectsManager():
self.touch_objects = {}
self.text_objects = {}
- def add_object(self, key, add_object):
+ def set_object(self, key, add_object):
self.text_objects[key] = add_object
def get_object(self, key):
return self.text_objects[key]
- def add_touch_object(self, key, add_object):
+ def set_touch_object(self, key, add_object):
self.touch_objects[key] = add_object
def get_touch_object(self, key):
@@ -38,12 +38,13 @@ class ScreenObjectsManager():
touched_objects.append(key)
return touched_objects
- def clear(self, mantain):
- if mantain is not None:
- object = self.get_touch_object(mantain)
+ def clear_touch(self, not_remove):
+ if not_remove is not None:
+ new_touch = {}
+ for key in not_remove:
+ new_touch[key] = self.get_touch_object(key)
+ self.touch_objects = new_touch
self.touch_objects = {}
- if mantain is not None:
- self.touch_objects[mantain] = object
class BaseItem():
@@ -146,7 +147,7 @@ class TouchAndTextItem(TouchObject, TextItem):
class Progressbar(TouchObject):
- def __init__(self, font, text, pos,size, max_value, value_text):
+ def __init__(self, font, text, pos, size, max_value, value_text):
BaseItem.__init__(self, pos, size)
self.value = 0
self.max = max_value
@@ -156,7 +157,7 @@ class Progressbar(TouchObject):
self.surface.fill(self.back_color)
self.value_text = value_text
if value_text:
- self.text = TextItem(font, str(self.max), pos, None, (255, 255, 255), size)
+ self.text = TextItem(font, str(self.max), pos, None)
self.text.set_text(str(self.value), True)
else:
self.text = TextItem(font, text, pos, None)
@@ -176,7 +177,7 @@ class Progressbar(TouchObject):
self.set_text(str(self.value))
self.surface.fill(self.back_color)
pos_pixel = value * self.size[0] / self.max
- rect = pygame.Rect(0,0, pos_pixel, self.size[1])
+ rect = pygame.Rect(0, 0, pos_pixel, self.size[1])
self.surface.fill(self.main_color, rect)
def get_pos_value(self, pos):