Unterschiedliche Position der einzelnen Skin Elemente trotz gleicher Pixelzahl in der Höhe

    • erstens, eine entwicklungssyntax bzw -umgebung verwenden, die das entstehende .xml optional neu liest, wenn es ein solches neu gibt. dann braucht es den wiederholten gui neustart nicht. so sind auch bei den unvermeidlichen fehlern viele crashs vermeidbar.
      zweitens, wie soll das ganze ausschauen, was soll wo wie eingebaut werden - ua aus den vorlagen die widgets und deren parameter einzeln nacheinander testen.
      drittens, das ganze mal blockweise angehen, insbesondere was struktur, objekte und namen anbelangt, siehe auch "aus zwei .xml mach ein .xml"...
      viertens, sich nicht gleich alles auf einmal wuenschen, ist naemlich gar nicht leicht, in einer so langen .xml zb einen syntax bzw parameter fehler zu entdecken.
      alles zusammen sicher keine 30min aufgabe...
    • Sorry, weiß nicht was du mit Punkt 1 meinst :D .

      Das komische was ich nicht verstehe ist, ich habe Änderungen vorgenommen in der Originalen Datei von Eisman, das auch bestens geklappt hat und dachte mir dann ich gehe hin und fange mit einer neuen Datei an das ich es übersichtlicher habe und habe dann die Parameter aus dieser Originalen Datei heraus kopiert und habe nur die Schriftgröße angepasst und alles andere übernommen und diese neue Datei wird dann nicht gelesen.

      Ich weiß halt nicht wie die Struktur aussehen soll bzw. wie ich vorgehen soll, damit ich Blockweise testen kann. Soll ich mir eine neue Datei anlegen mit einem gewünschten Namen "XY" und die unter Screens kopieren und nur die aufrufen? Ich weiß halt nicht wenn ich das so mache und z.B. ich füge jetzt den Block ein für den "Sendername", wird dann auch nur der Sendername dann in der Infobar angezeigt oder braucht die Infobar spezielle Daten/Blocks das die überhaupt lauffähig ist.

      Edit: Meinst du mit Punkt eins eine Software in der ich die XML anlege und teste ohne die Box dazu zu verwenden. Ich habe die Box bestimmt schon 100mal neu gestartet. Wenn du das so meinst, dann hat die Software ja bestimmt keine Vorschau oder?

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Hechizo ()

    • wenn in der skin.xml bzw direkt nachgelagerten elementen generelle syntakische fehler sind, dann ist der crash unvermeidbar. wenn es einzelne screens/widgets betrifft, und dort was nicht stimmt, zb formatangaben, parameter odgl, dann gibts den crash eher nur bei der verwendung dieser. dh eine skin.xml und deren elemente sind ziemlich heikel, was deren erstellung und das zusammenspiel mit den widgets, scripts udgl anbelangt.

      ich meine eine funktionalitaet dermassen, dass a) ein einfacher screen ein .py mit autoload/reload code benutzt, siehe python tutorials, b) das .xml ueber dieses .py erst nach dem boot manuell geladen wird. dh es braucht dann waehrend der entwicklung nicht immer den gui neustart, und wenns mal crasht, dann faengt das .py wohl die meisten davon ab. bzw gibt es so auch keinen dauerspinner nach dem boot, weil ein fehler ja nicht direkt in der skin.xml bzw direkt nachgelagerten elementen auftritt und somit wirksam wird.

      dann schon noch, ohne python, xml oae grundkenntnisse, insbesondere strukturen und objekte betreffend, taete ich das experiment nicht weiter verfolgen.
    • @Hechizo : wenn die Box crasht, durch Skin-Versuche, gibt es auch ein crashlog unter /media/hdd ...
      was steht denn da am Ende ?

      @ApgDuo2 : ich stimme dir zumindest teilweise zu :) ... aber python-Kenntnisse sind auch meiner Erfahrung nach hilfreich fürs Skinnen, jedoch nicht zwingend notwendig ;) . XML-Syntax ja, dafür gibt es ja Editoren wie Notepad++, die die Syntax hervorheben ... der Rest ist eben :
      • try + error
      • mal sehen, wie andere Skins das machen :whistling:
      • oder nachfragen ^^
    • @gordon55
      Im Crashlog steht folgendes:

      Spoiler anzeigen

      Traceback (most recent call last):
      File "/usr/lib/enigma2/python/mytest.py", line 235, in processDelay
      callback(*retval)
      File "/media/build01/vti-dorie/build/tmp/work/armv7ahf-vfp-neon-oe-linux-gnueabi/enigma2-python/enigma2-python-vti-13.0.2-20171223-r0r0/git/lib/python/Tools/BoundFunction.py", line 9, in __call__
      File "/usr/lib/enigma2/python/mytest.py", line 557, in runNextScreen
      session.openWithCallback(boundFunction(runNextScreen, session, screensToRun[1:]), screen, *args)
      File "/usr/lib/enigma2/python/mytest.py", line 336, in openWithCallback
      dlg = self.open(screen, *arguments, **kwargs)
      File "/usr/lib/enigma2/python/mytest.py", line 346, in open
      dlg = self.current_dialog = self.instantiateDialog(screen, *arguments, **kwargs)
      File "/usr/lib/enigma2/python/mytest.py", line 281, in instantiateDialog
      return self.doInstantiateDialog(screen, arguments, kwargs, self.desktop)
      File "/usr/lib/enigma2/python/mytest.py", line 306, in doInstantiateDialog
      readSkin(dlg, None, dlg.skinName, desktop)
      File "/media/build01/vti-dorie/build/tmp/work/armv7ahf-vfp-neon-oe-linux-gnueabi/enigma2-python/enigma2-python-vti-13.0.2-20171223-r0r0/git/skin.py", line 1279, in readSkin
      File "/media/build01/vti-dorie/build/tmp/work/armv7ahf-vfp-neon-oe-linux-gnueabi/enigma2-python/enigma2-python-vti-13.0.2-20171223-r0r0/git/skin.py", line 1239, in process_screen
      File "/media/build01/vti-dorie/build/tmp/work/armv7ahf-vfp-neon-oe-linux-gnueabi/enigma2-python/enigma2-python-vti-13.0.2-20171223-r0r0/git/skin.py", line 1252, in process_panel
      TypeError: 'NoneType' object has no attribute '__getitem__'
      (PyObject_CallObject(<bound method Session.processDelay of <__main__.Session instance at 0x8fcb09b8>>,()) failed)
    • ja, das ist "häßlich" :(

      Hechizo schrieb:

      /skin.py", line 1252, in process_panel
      TypeError: 'NoneType' object has no attribute '__getitem__'
      ist leider bei den Panels so : du hast da irgendeine Definition <panel name="..." , für die es im gesamten Skin und deinen SkinParts keine Definition als <screen name="..." gibt ... evtl. Tippfehler ?
    • Mmmhh...ich bin mir fast sicher das ich den Panelname angepasst habe in der "skin_Eisman_V1.5_InfoBar_Key_Button". Da habe ich unten meine betitelte Datei angefügt als <panel name="TIBVersion3Widget" />.
      in meiner angelegten Datei habe ich oben diesen Titel <screen name="IBEismanTopBarWidget"> umbenannt in <screen name="TIBVersion3Widget">
      Werde es aber morgen mal wieder testen und berichte.

      Nochmals Danke für eure Unterstützung :337:

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Hechizo ()

    • Möchte keinen neuen Thread aufmachen, aber hätte noch eine Frage zu den zPositionen. Die sind ja vergleichbar wie bei Photoshop die Ebenen. Habe jetzt soweit meinen Skinpart erstellt, Wie soll ich denn die zPositionen auswählen bzw. woher weiß ich ob ich die richtige habe.

      Vielleicht könnte mal jemand von den Spezialisten drüber schauen ob so alles korrekt ist (für mein Gewissen :wall1: ). Ein paar Feinheiten fehlen noch.

      skin_InfoBar_TopBar_Solo4K.xml
      Dateien
      • Unbenannt.PNG

        (2,41 MB, 9 mal heruntergeladen, zuletzt: )