+# -*- coding: iso-8859-1 -*-
# (c) 2006 Stephan Reichholf
# This Software is Free, use it where you want, when you want for whatever you want and modify it if you want but don't remove my copyright!
-
-from enigma import *
from Screens.Screen import Screen
+from Screens.Standby import TryQuitMainloop
from Screens.MessageBox import MessageBox
from Components.ActionMap import NumberActionMap
from Components.Pixmap import Pixmap
-from Components.GUIComponent import *
from Components.MenuList import MenuList
from Plugins.Plugin import PluginDescriptor
-
from Components.config import config
-from Tools.Directories import SCOPE_SKIN
-from Components.config import config
-
-import os, sys
+from os import path, walk
class SkinSelector(Screen):
# for i18n:
Screen.__init__(self, session)
self.skinlist = []
- self.session = session
self.previewPath = ""
- os.path.walk(self.root, self.find, "")
+ path.walk(self.root, self.find, "")
self.skinlist.sort()
self["SkinList"] = MenuList(self.skinlist)
"info": self.info,
}, -1)
- self.onLayoutFinish.append(self.loadPreview)
+ self.onLayoutFinish.append(self.layoutFinished)
+
+ def layoutFinished(self):
+ tmp = config.skin.primary_skin.value.find('/skin.xml')
+ if tmp != -1:
+ tmp = config.skin.primary_skin.value[:tmp]
+ idx = 0
+ for skin in self.skinlist:
+ if skin == tmp:
+ break
+ idx += 1
+ if idx < len(self.skinlist):
+ self["SkinList"].moveToIndex(idx)
+ self.loadPreview()
def up(self):
self["SkinList"].up()
else:
pngpath = self.root+self["SkinList"].getCurrent()+"/prev.png"
- if not os.path.exists(pngpath):
+ if not path.exists(pngpath):
# FIXME: don't use hardcoded path
pngpath = "/usr/lib/enigma2/python/Plugins/SystemPlugins/SkinSelector/noprev.png"
def restartGUI(self, answer):
if answer is True:
- quitMainloop(3)
+ self.session.open(TryQuitMainloop, 3)
def SkinSelMain(session, **kwargs):
session.open(SkinSelector)
-def SkinSelSetup(menuid):
+def SkinSelSetup(menuid, **kwargs):
if menuid == "system":
- return [("Skin...", SkinSelMain)]
+ return [(_("Skin..."), SkinSelMain, "skin_selector", None)]
else:
return []
def Plugins(**kwargs):
- return PluginDescriptor(name="Skinselector", description="Select Your Skin", where = PluginDescriptor.WHERE_SETUP, fnc=SkinSelSetup)
+ return PluginDescriptor(name="Skinselector", description="Select Your Skin", where = PluginDescriptor.WHERE_MENU, fnc=SkinSelSetup)