Configuration

-cache
-fulscreen
This commit is contained in:
9and3r
2014-07-28 00:44:03 +02:00
parent 39eaeaec25
commit a0f33e28d3
6 changed files with 117 additions and 136 deletions

View File

@@ -39,9 +39,11 @@ Mopidy-Touchscreen to your Mopidy configuration file::
[touchscreen]
enabled = true
screen_width = 800
screen_height = 600
cursor = False
screen_width = 320
screen_height = 240
cursor = True
fullscreen = False
cache_dir = $XDG_CACHE_DIR/mopidy/touchscreen
Features
=============

View File

@@ -23,70 +23,56 @@
</component>
<component name="FileEditorManager">
<leaf>
<file leaf-file-name="touch_screen.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/touch_screen.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="676" max-vertical-offset="1095">
<caret line="61" column="33" selection-start-line="61" selection-start-column="33" selection-end-line="61" selection-end-column="33" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="touch_manager.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/touch_manager.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="1005">
<caret line="53" column="24" selection-start-line="53" selection-start-column="24" selection-end-line="53" selection-end-column="24" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="screen_manager.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/screen_manager.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="1349" max-vertical-offset="1995">
<caret line="106" column="8" selection-start-line="106" selection-start-column="8" selection-end-line="106" selection-end-column="8" />
<state vertical-scroll-proportion="0.0" vertical-offset="1411" max-vertical-offset="2010">
<caret line="111" column="47" selection-start-line="111" selection-start-column="47" selection-end-line="111" selection-end-column="47" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="dynamic_background.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/dynamic_background.py">
<file leaf-file-name="__init__.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/__init__.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="705">
<caret line="17" column="33" selection-start-line="17" selection-start-column="33" selection-end-line="17" selection-end-column="33" />
<folding>
<element signature="e#0#13#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="tracklist.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/tracklist.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="495">
<caret line="24" column="52" selection-start-line="24" selection-start-column="52" selection-end-line="24" selection-end-column="52" />
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="525">
<caret line="31" column="26" selection-start-line="31" selection-start-column="26" selection-end-line="31" selection-end-column="26" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="list_view.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/list_view.py">
<file leaf-file-name="ext.conf" pinned="false" current="true" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/ext.conf">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-1.5522388" vertical-offset="421" max-vertical-offset="1215">
<caret line="40" column="57" selection-start-line="40" selection-start-column="57" selection-end-line="40" selection-end-column="57" />
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="394">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="6" selection-end-column="45" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="screen_objects.py" pinned="false" current="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/screen_objects.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-34.656715" vertical-offset="963" max-vertical-offset="3405">
<caret line="221" column="37" selection-start-line="221" selection-start-column="37" selection-end-line="221" selection-end-column="37" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="main_screen.py" pinned="false" current="true" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/main_screen.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.71128607" vertical-offset="1424" max-vertical-offset="2340">
<caret line="113" column="122" selection-start-line="113" selection-start-column="122" selection-end-line="113" selection-end-column="122" />
<folding>
<element signature="e#0#13#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FindManager">
@@ -101,21 +87,22 @@
<option value="$PROJECT_DIR$/touch_manager.py" />
<option value="$PROJECT_DIR$/touch_screen_backend.py" />
<option value="$PROJECT_DIR$/tracklist.py" />
<option value="$PROJECT_DIR$/touch_screen.py" />
<option value="$PROJECT_DIR$/__init__.py" />
<option value="$PROJECT_DIR$/dynamic_background.py" />
<option value="$PROJECT_DIR$/screen_manager.py" />
<option value="$PROJECT_DIR$/list_view.py" />
<option value="$PROJECT_DIR$/screen_objects.py" />
<option value="$PROJECT_DIR$/main_screen.py" />
<option value="$PROJECT_DIR$/__init__.py" />
<option value="$PROJECT_DIR$/touch_screen.py" />
<option value="$PROJECT_DIR$/ext.conf" />
<option value="$PROJECT_DIR$/screen_manager.py" />
</list>
</option>
</component>
<component name="ProjectFrameBounds">
<option name="x" value="65" />
<option name="y" value="-4" />
<option name="y" value="24" />
<option name="width" value="1301" />
<option name="height" value="772" />
<option name="height" value="744" />
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="false">
<OptionsSetting value="true" id="Add" />
@@ -143,7 +130,6 @@
<sortByType />
</navigator>
<panes>
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
<PATH>
@@ -164,6 +150,7 @@
</PATH>
</subPane>
</pane>
<pane id="Scope" />
</panes>
</component>
<component name="PropertiesComponent">
@@ -333,13 +320,12 @@
<servers />
</component>
<component name="ToolWindowManager">
<frame x="65" y="-4" width="1301" height="772" extended-state="6" />
<frame x="65" y="24" width="1301" height="744" extended-state="6" />
<editor active="true" />
<layout>
<window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32884902" sideWeight="0.49961567" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.24980783" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
@@ -349,6 +335,7 @@
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32884902" sideWeight="0.49961567" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
@@ -377,14 +364,6 @@
</breakpoint-manager>
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/touch_screen.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="975">
<caret line="44" column="33" selection-start-line="44" selection-start-column="12" selection-end-line="44" selection-end-column="33" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/touch_screen_backend.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="75" max-vertical-offset="345">
@@ -396,7 +375,6 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="1470" max-vertical-offset="2775">
<caret line="98" column="45" selection-start-line="98" selection-start-column="45" selection-end-line="98" selection-end-column="45" />
<folding />
</state>
</provider>
</entry>
@@ -434,7 +412,6 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="2190" max-vertical-offset="2775">
<caret line="146" column="36" selection-start-line="146" selection-start-column="36" selection-end-line="146" selection-end-column="36" />
<folding />
</state>
</provider>
</entry>
@@ -464,7 +441,6 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="2610" max-vertical-offset="2775">
<caret line="174" column="33" selection-start-line="174" selection-start-column="33" selection-end-line="174" selection-end-column="33" />
<folding />
</state>
</provider>
</entry>
@@ -502,7 +478,6 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="2190" max-vertical-offset="2490">
<caret line="146" column="30" selection-start-line="146" selection-start-column="30" selection-end-line="146" selection-end-column="30" />
<folding />
</state>
</provider>
</entry>
@@ -533,7 +508,6 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="1193" max-vertical-offset="2490">
<caret line="146" column="30" selection-start-line="146" selection-start-column="30" selection-end-line="146" selection-end-column="30" />
<folding />
</state>
</provider>
</entry>
@@ -571,7 +545,6 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="1193" max-vertical-offset="2490">
<caret line="146" column="30" selection-start-line="146" selection-start-column="30" selection-end-line="146" selection-end-column="30" />
<folding />
</state>
</provider>
</entry>
@@ -689,13 +662,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/touch_manager.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="1.646778" vertical-offset="90" max-vertical-offset="1005">
<caret line="53" column="24" selection-start-line="53" selection-start-column="24" selection-end-line="53" selection-end-column="24" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/touch_screen_backend.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="360">
@@ -703,19 +669,31 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/touch_screen.py">
<entry file="file://$PROJECT_DIR$/main_screen.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="571" max-vertical-offset="1080">
<caret line="54" column="22" selection-start-line="54" selection-start-column="22" selection-end-line="54" selection-end-column="22" />
<folding />
<state vertical-scroll-proportion="4.5275593" vertical-offset="0" max-vertical-offset="2340">
<caret line="115" column="0" selection-start-line="115" selection-start-column="0" selection-end-line="115" selection-end-column="0" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/__init__.py">
<entry file="file://$PROJECT_DIR$/screen_objects.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.46300715" vertical-offset="76" max-vertical-offset="495">
<caret line="26" column="32" selection-start-line="26" selection-start-column="32" selection-end-line="26" selection-end-column="32" />
<folding />
<state vertical-scroll-proportion="0.78520286" vertical-offset="2956" max-vertical-offset="3405">
<caret line="221" column="37" selection-start-line="221" selection-start-column="37" selection-end-line="221" selection-end-column="37" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/list_view.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="525" max-vertical-offset="1215">
<caret line="40" column="57" selection-start-line="40" selection-start-column="57" selection-end-line="40" selection-end-column="57" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/tracklist.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.6778043" vertical-offset="76" max-vertical-offset="495">
<caret line="24" column="52" selection-start-line="24" selection-start-column="52" selection-end-line="24" selection-end-column="52" />
</state>
</provider>
</entry>
@@ -723,54 +701,49 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="181" max-vertical-offset="705">
<caret line="17" column="33" selection-start-line="17" selection-start-column="33" selection-end-line="17" selection-end-column="33" />
<folding>
<element signature="e#0#13#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/touch_screen.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="676" max-vertical-offset="1095">
<caret line="61" column="33" selection-start-line="61" selection-start-column="33" selection-end-line="61" selection-end-column="33" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/__init__.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="90" max-vertical-offset="525">
<caret line="31" column="26" selection-start-line="31" selection-start-column="26" selection-end-line="31" selection-end-column="26" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/touch_manager.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="90" max-vertical-offset="1005">
<caret line="53" column="24" selection-start-line="53" selection-start-column="24" selection-end-line="53" selection-end-column="24" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/screen_manager.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="1349" max-vertical-offset="1995">
<caret line="106" column="8" selection-start-line="106" selection-start-column="8" selection-end-line="106" selection-end-column="8" />
<state vertical-scroll-proportion="0.0" vertical-offset="1411" max-vertical-offset="2010">
<caret line="111" column="47" selection-start-line="111" selection-start-column="47" selection-end-line="111" selection-end-column="47" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/tracklist.py">
<entry file="file://$PROJECT_DIR$/ext.conf">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="76" max-vertical-offset="495">
<caret line="24" column="52" selection-start-line="24" selection-start-column="52" selection-end-line="24" selection-end-column="52" />
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="394">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="6" selection-end-column="45" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/list_view.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-1.5522388" vertical-offset="421" max-vertical-offset="1215">
<caret line="40" column="57" selection-start-line="40" selection-start-column="57" selection-end-line="40" selection-end-column="57" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/screen_objects.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-34.656715" vertical-offset="963" max-vertical-offset="3405">
<caret line="221" column="37" selection-start-line="221" selection-start-column="37" selection-end-line="221" selection-end-column="37" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/main_screen.py">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.71128607" vertical-offset="1424" max-vertical-offset="2340">
<caret line="113" column="122" selection-start-line="113" selection-start-column="122" selection-end-line="113" selection-end-column="122" />
<folding>
<element signature="e#0#13#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
</project>

View File

@@ -26,9 +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['screen_width'] = config.Integer(minimum=1)
schema['screen_height'] = config.Integer(minimum=1)
schema['cursor'] = config.Boolean()
schema['fullscreen'] = config.Boolean()
schema['cache_dir'] = config.Path()
return schema
def setup(self, registry):

View File

@@ -1,4 +1,7 @@
[touchscreen]
enabled = true
# TODO: Add additional config values and their default values here, or remove
# this comment entirely.
screen_width = 320
screen_height = 240
cursor = True
fullscreen = False
cache_dir = $XDG_CACHE_DIR/mopidy/touchscreen

View File

@@ -109,7 +109,8 @@ class ScreenManager():
logger.error("erreproduzitzen")
elif key == "mute":
mute = not self.core.playback.mute.get()
self.backend.tell({'action':'mute','value':mute})
self.core.playback.set_mute(mute)
#self.backend.tell({'action':'mute','value':mute})
elif key == "random":
logger.error(self.core.tracklist.random)
self.core.tracklist.random = not self.core.tracklist.random

View File

@@ -4,7 +4,6 @@ import logging
from threading import Thread
import pygame
from .screen_manager import ScreenManager
from pygame.locals import *
from mopidy import core
@@ -20,27 +19,28 @@ class TouchScreen(pykka.ThreadingActor, core.CoreListener):
logger.error(self.backend)
self.core = core
self.running = False
#self.screen_size=(320, 240)
try:
self.screen_size = (config['touchscreen']['screen_width'],config['touchscreen']['screen_height'])
except KeyError:
self.screen_size=(320, 240)
logger.warning("Screen size not defined. Using default size: " + str(self.screen_size))
self.screen_size = (config['touchscreen']['screen_width'], config['touchscreen']['screen_height'])
self.cache_dir = config['touchscreen']['cache_dir']
self.fullscreen = config['touchscreen']['fullscreen']
pygame.init()
try:
pygame.mouse.set_visible(config['touchscreen']['cursor'])
except KeyError:
pygame.mouse.set_visible(True)
pygame.mouse.set_visible(config['touchscreen']['cursor'])
self.screen_manager = ScreenManager(self.screen_size,self.core, self.backend)
def start_thread(self):
clock = pygame.time.Clock()
screen = pygame.display.set_mode(self.screen_size)
if self.fullscreen:
screen = pygame.display.set_mode(self.screen_size, pygame.FULLSCREEN)
else:
screen = pygame.display.set_mode(self.screen_size)
while self.running:
clock.tick(15)
screen.blit(self.screen_manager.update(),(0,0))
screen.blit(self.screen_manager.update(), (0, 0))
pygame.display.flip()
for event in pygame.event.get():
if event.type == pygame.QUIT:
self.running = False
if event.type == pygame.KEYUP and event.key == pygame.K_q:
self.running = False
self.screen_manager.event(event)
pygame.quit()