Forráskód Böngészése

Merge branch 'Syco54645-develop' into v1.0.0

9and3r 10 éve
szülő
commit
987902f606

+ 1 - 0
mopidy_touchscreen/__init__.py

@@ -24,6 +24,7 @@ class Extension(ext.Extension):
         schema = super(Extension, self).get_config_schema()
         schema['screen_width'] = config.Integer(minimum=1)
         schema['screen_height'] = config.Integer(minimum=1)
+        schema['resolution_factor'] = config.Integer(minimum=0)
         schema['cursor'] = config.Boolean()
         schema['fullscreen'] = config.Boolean()
         schema['cache_dir'] = config.Path()

+ 1 - 0
mopidy_touchscreen/ext.conf

@@ -2,6 +2,7 @@
 enabled = true
 screen_width = 320
 screen_height = 240
+resolution_factor = 0
 cursor = True
 fullscreen = False
 cache_dir = $XDG_CACHE_DIR/mopidy/touchscreen

+ 14 - 13
mopidy_touchscreen/screen_manager.py

@@ -25,7 +25,7 @@ menu_index = 5
 
 class ScreenManager():
 
-    def __init__(self, size, core, cache):
+    def __init__(self, size, core, cache, resolution_factor):
         self.core = core
         self.cache = cache
         self.fonts = {}
@@ -43,12 +43,13 @@ class ScreenManager():
         self.keyboard = None
         self.update_type = BaseScreen.update_all
 
-        self.init_manager(size)
+        self.init_manager(size, resolution_factor)
 
-    def init_manager(self, size):
+    def init_manager(self, size, resolution_factor):
         self.size = size
+        self.resolution_factor = resolution_factor
         self.background = DynamicBackground(self.size)
-        self.base_size = self.size[1] / 8
+        self.base_size = self.size[1] / (8+self.resolution_factor) #change this for more screen space
         font = resource_filename(
             Requirement.parse("mopidy-touchscreen"),
             "mopidy_touchscreen/icomoon.ttf")
@@ -75,35 +76,35 @@ class ScreenManager():
 
         # Search button
         button = TouchAndTextItem(self.fonts['icon'], u" \ue986",
-                                  (0, self.base_size * 7),
+                                  (0, self.base_size * (7+self.resolution_factor)), #change these to move the location of the icons
                                   button_size, center=True)
         self.down_bar_objects.set_touch_object("menu_0", button)
         x = button.get_right_pos()
 
         # Main button
         button = TouchAndTextItem(self.fonts['icon'], u" \ue600",
-                                  (x, self.base_size * 7),
+                                  (x, self.base_size * (7+self.resolution_factor)), #change these to move the location of the icons
                                   button_size, center=True)
         self.down_bar_objects.set_touch_object("menu_1", button)
         x = button.get_right_pos()
 
         # Tracklist button
         button = TouchAndTextItem(self.fonts['icon'], u" \ue60d",
-                                  (x, self.base_size * 7),
+                                  (x, self.base_size * (7+self.resolution_factor)), #change these to move the location of the icons
                                   button_size, center=True)
         self.down_bar_objects.set_touch_object("menu_2", button)
         x = button.get_right_pos()
 
         # Library button
         button = TouchAndTextItem(self.fonts['icon'], u" \ue604",
-                                  (x, self.base_size * 7),
+                                  (x, self.base_size * (7+self.resolution_factor)), #change these to move the location of the icons
                                   button_size, center=True)
         self.down_bar_objects.set_touch_object("menu_3", button)
         x = button.get_right_pos()
 
         # Playlist button
         button = TouchAndTextItem(self.fonts['icon'], u" \ue605",
-                                  (x, self.base_size * 7),
+                                  (x, self.base_size * (7+self.resolution_factor)), #change these to move the location of the icons
                                   button_size, center=True)
 
         self.down_bar_objects.set_touch_object("menu_4", button)
@@ -111,18 +112,18 @@ class ScreenManager():
 
         # Menu button
         button = TouchAndTextItem(self.fonts['icon'], u" \ue60a",
-                                  (x, self.base_size * 7),
+                                  (x, self.base_size * (7+self.resolution_factor)), #change these to move the location of the icons
                                   button_size,
                                   center=True)
         self.down_bar_objects.set_touch_object("menu_5", button)
 
         # Down bar Solid
         self.down_bar_solid = pygame.Surface(
-            (self.size[0], self.size[1] - self.base_size * 7))
+            (self.size[0], self.size[1] - self.base_size * (7+self.resolution_factor))) #change the 7 to move the bar
 
         # Down bar
         self.down_bar = pygame.Surface(
-            (self.size[0], self.size[1] - self.base_size * 7),
+            (self.size[0], self.size[1] - self.base_size * (7+self.resolution_factor)), #change the 7 to move the bar
             pygame.SRCALPHA)
         self.down_bar.fill((0, 0, 0, 200))
 
@@ -161,7 +162,7 @@ class ScreenManager():
             else:
                 self.screens[self.current_screen].\
                     update(surface, update_type, rects)
-                surface.blit(self.down_bar, (0, self.base_size * 7))
+                surface.blit(self.down_bar, (0, self.base_size * (7+self.resolution_factor)))
                 self.down_bar_objects.render(surface)
 
             if update_type == BaseScreen.update_all or len(rects) < 1:

+ 3 - 2
mopidy_touchscreen/touch_screen.py

@@ -25,7 +25,7 @@ class TouchScreen(pykka.ThreadingActor, core.CoreListener):
         self.fullscreen = config['touchscreen']['fullscreen']
         self.screen_size = (config['touchscreen']['screen_width'],
                             config['touchscreen']['screen_height'])
-
+        self.resolution_factor = (config['touchscreen']['resolution_factor'])
         if config['touchscreen']['sdl_fbdev'].lower() != "none":
             os.environ["SDL_FBDEV"] = config['touchscreen']['sdl_fbdev']
         if config['touchscreen']['sdl_mousdrv'].lower() != "none":
@@ -46,7 +46,8 @@ class TouchScreen(pykka.ThreadingActor, core.CoreListener):
         pygame.mouse.set_visible(self.cursor)
         self.screen_manager = ScreenManager(self.screen_size,
                                             self.core,
-                                            self.cache_dir)
+                                            self.cache_dir,
+                                            self.resolution_factor)
 
         # Raspberry pi GPIO
         self.gpio = config['touchscreen']['gpio']