Screen Namen in GP3 Skins: Unterschied zwischen den Versionen

Aus Gemini-Wiki
Zur Navigation springen Zur Suche springen
Zeile 27: Zeile 27:
 
Sucht nach der Routine <code>readSkin</code> in der <code>skin.py</code>.
 
Sucht nach der Routine <code>readSkin</code> in der <code>skin.py</code>.
  
Etwas unterhalb gibt es die Schleife <code>for n in names</code>:  (Sollte so Zeile 424 sein)
+
Etwas unterhalb gibt es die Schleife <code>for n in names</code>:  (Sollte so Zeile 524 sein)
 
<syntaxhighlight>
 
<syntaxhighlight>
 
  # try all skins, first existing one have priority  
 
  # try all skins, first existing one have priority  
Zeile 48: Zeile 48:
  
 
===Warum das ganze?===
 
===Warum das ganze?===
Nun, im GP3 gibt es 4 Basis-Screens:
+
Nun, im GP3 gibt es 8 Basis-Screens:
  
 
* Config2Button
 
* Config2Button
 +
* Config3Button
 +
* VariableList3Button
 +
* VariableList4Button
 
* VariableListNoButton
 
* VariableListNoButton
* VariableList4Button
+
* VariableList2Lines
* VariableList3Button
+
* VariableListCover
 +
* VList3Button2Entry
  
 
Alle GP-Plugins die z.B. einen VariableList3Button Screen brauchen, greifen auf diesen Basis-Screen zu. Möchte man nun für das [[GP3 weather|Gemini Wetter Plugin]] einen extra Screen erstellen, dann brauchen wir auch den Screennamen.
 
Alle GP-Plugins die z.B. einen VariableList3Button Screen brauchen, greifen auf diesen Basis-Screen zu. Möchte man nun für das [[GP3 weather|Gemini Wetter Plugin]] einen extra Screen erstellen, dann brauchen wir auch den Screennamen.

Version vom 10. März 2014, 17:58 Uhr

Deutsch.png - in Deutsch English.png - in English

Dieser Artikel richtet sich an alle erfahrenen Skinner bzw. Modder, die gerne Skins für das GP3 Plugin erstellen / anpassen möchten. Ziele dieses Beitrags sind die entsprechenden Screennamen herausfinden und interessierte Modding-Willige zu unterstützen.

Voraussetzungen

GP3 Screennamen ermitteln

Nach der Installation des GP3-Plugins findet ihr in

/usr/lib/enigma2/python/Plugins/Bp/geminimain

eine Datei skin.xml. Diese hält folgende Beispiele für euch bereit:

  • Infobar Renderer
  • Basis-Screens
  • OLED-Screens

Außerdem ist es interessant die Datei skin.py in

/usr/lib/enigma2/python

wie folgt anzupassen:

Sucht nach der Routine readSkin in der skin.py.

Etwas unterhalb gibt es die Schleife for n in names: (Sollte so Zeile 524 sein)

 	# try all skins, first existing one have priority 
 	for n in names:
  		myscreen, path = lookupScreen(n, style_id)
 		if myscreen is not None:
 			# use this name for debug output
 			name = n
 			print names
 			break

Fügt vor dem Eintrag break "print names" ein. Führt im Telnet folgende Befehle aus.

init 4 && sleep 5 && enigma2

Nun werden die entsprechenden Screennamen beim Aufruf der entsprechenden Menüs angezeigt.

z.B. VariableList3Button_geminiweather

Warum das ganze?

Nun, im GP3 gibt es 8 Basis-Screens:

  • Config2Button
  • Config3Button
  • VariableList3Button
  • VariableList4Button
  • VariableListNoButton
  • VariableList2Lines
  • VariableListCover
  • VList3Button2Entry

Alle GP-Plugins die z.B. einen VariableList3Button Screen brauchen, greifen auf diesen Basis-Screen zu. Möchte man nun für das Gemini Wetter Plugin einen extra Screen erstellen, dann brauchen wir auch den Screennamen.

Über den oben genannten Weg kommt ihr zu dem Screennamen.

Basis Screen für alle Plugins die diesen brauchen --> VariableList3Button Plugin Screen für das Gemini Wetter --> VariableList3Button_geminiweather

Das ganze verhält sich so wie z.b. skin.xml zu skin_user.xml.

Bekannte GP3 Screennamen

Hier ein Liste der mir bekannten Screens:

  • gDesktopHD
  • Config2Button
  • Config2Button_SatList
  • Config2Button_gSimpleList
  • VariableListNoButton
  • VariableListNoButton_gMultiQuickButton
  • VariableListNoButton_RssReader
  • VariableListNoButton_MountPoints
  • VariableListNoButton_InfoHardware
  • VariableListNoButton_KernelInfo
  • RssLister
  • RssReader
  • RssView
  • VariableList4Button
  • VariableList2Lines
  • VariableList2Lines_gAddons
  • VariableList2Lines_gAddonsCat
  • VariableList2Lines_BrowserFavo
  • VariableList3Button
  • VariableList3Button_geminidreamnetcast
  • VariableList3Button_WidgetXmlList
  • VariableList3Button_WebCamViewer
  • VariableList3Button_geminiweather
  • PrioListSetup
  • VariableList3Button_Automount
  • VariableList3Button_ProcessInfo
  • VariableList3Button_GeminiConfList
  • VariableList3Button_DeviceManager
  • VariableList3Button_PartitionsManager
  • VariableList3Button_gMenu_confgDesktop
  • VariableList3Button_Satconfig
  • VariableListCover_gBrowser
  • WeatherView
  • Jukebox_XD
  • Jukebox_HD
  • Jukebox_SD
  • HotplugScreen