Car-PC.info

cPOS.NET Skins - Fragen zum Skinen

Black81 - Mi 08 Feb, 2012 22:17
Titel: Fragen zum Skinen
Ich mache mir so langsam Gedanken über einen eigenen Skin und habe da eine Frage zur Realisierbarkeit.
Kann man auf der Mainpage Playbuttons (play,pause,stop, shuffle, rw, ff) einsetzen, die den aktuellen Player bedienen?
ZB: Ich starte ein Lied im Indexer und wechsel zur Mainpage, auf dieser ich dann ein Lied weiter schalte oder pause drücke. Wenn ich ein Lied im WMPlayer höre, soll das auch mit den Tasten auf der Mainpage zu steuern sein. Genauso wie Video und DVD.
Event. auch noch beim Radio die Senderspeicher mit den rw- und ff-Tasten weiterschalten.
So eine Art Multifunktionstasten, je nach dem was aktiv ist wird gesteuert.

Gruß, Stefan.
Subaru_tom - Do 09 Feb, 2012 09:50
Titel:
Hallo

sowas hatte ich mir auch schon mal gewünscht. Das wäre für die Navigationsseite nicht schlecht. Das es nicht geht liegt wohl an der Aufteilung in verschiedene Module. Jedes Plugin hat sein eigenes "play".
Etwas ähnliches gibt es bis jetzt nur für die Steuerung über eine Fernbedienung. Mit Hilfe dieser Toplevelkommandos lassen sich die wichtigsten Funktionen der gerade geöffneten Seite fernsteuern (zB play). Das funktioniert aber nicht auf der Mainpage.

Gruß
Black81 - Do 09 Feb, 2012 20:45
Titel:
Das ist aber blöd. An die Navigationsseite habe ich noch nicht gedacht, da wäre es sogar noch wichtiger!
Hoffentlich gibt es doch noch irgendeine Möglichkeit das zu realisieren.
Kann nicht ein Wert abgerufen werden, welcher Player aktiv ist?

Gruß, Stefan.
Subaru_tom - Do 09 Feb, 2012 23:56
Titel:
Eine Lösung für das Problem wäre nicht schlecht. DickerXXL ist aber vermutlich der einzige der was genaueres dazu sagen kann. Ich habe es bei meinem Skin so gemacht, das man von der Navigationsseite aus erstmal nur die wichtigsten Funktionen des MP3 Player steuern kann.
Black81 - Fr 10 Feb, 2012 15:22
Titel:
Ja, ich hoffe da kommt noch was.

Andere Sache:
ich habe mir jetzt mal den Defaultskin und den CPS2 im Skineditor angeschaut. Zusätzlich habe ich mir das HOWTO durchgelesen. Da habe ich eine Frage zur Plugineinbindung. Bei den beiden Skins sehe ich nur einmal ein Telefonplugin. Es sind aber bestimmt beide eingebunden. Wie ist das realisiert? Oder wurden beide ausgewählt und mit dem selben inernen Namen versehen? Im Howto steht aber: "2 Plugins dürfen nicht den gleichen internen Namen haben.".
Beim Radio dasselbe: UsbRadio, FordRadio, AndreRadio?
Oder auch beim Mixer: VolumeXP, VolumeVistaW7?

Kann mir das bitte mal wer erklären.

Gruß, Stefan.
Subaru_tom - Fr 10 Feb, 2012 16:15
Titel:
Hallo

Ja das ist etwas verwirrend. Der Skineditor zeigt zwar die einzelnen aktivierten Plugins an, im Skin eingebunden wird aber nur der entsprechende Funktionsblock zu dem sie gehören. USBRadio, TeaRadio und Andreradio gehören zb zum Funktionsblock Radio. Um diesen Funktionsblock einzubinden reicht es also ein dazugehöriges Plugin aufzurufen und einen Namen zu vergeben. Unter diesen Namen werden dann alle dazugehörigen Plugins angesprochen. Der Name für den Funktionsblock darf dabei nur einmal vergeben werden. Man kann aber wiederum ein und denselben Funktionsblock mit verschiedenen Namen mehrfach einbinden. Wurde beim Funktionsblock Audioplayer so gemacht.
Es wäre warscheinlich sinnvoll, wenn im Skineditor nur die übergeordneten Funktionsblöcke der zur Verfügung stehenden Plugins angezeigt würden und nicht jedes einzelne Plugin.

Gruß
Black81 - Fr 10 Feb, 2012 16:32
Titel:
Ok... Danke.
Das war aufschlußreich. Dann werde ich mal loslegen....

Gruß, Stefan.
Subaru_tom - Fr 10 Feb, 2012 17:13
Titel:
Na dann wünsche gutes gelingen.
Zwei Tipps noch zum Skineditor. Zum einen, achte darauf zwei Elementen zB Button auf einer Skinseite nicht den selben Namen zu geben, denn das löscht den umbenannten Button. Und zum anderen, wenn du gewoht bist Text mit der Entfernen Taste der Tastatur zu löschen mußt du aufpassen, denn damit werden im Skineditor markierte Elemente gelöscht.
DickerXXL - Sa 11 Feb, 2012 13:41
Titel:
Moin zusammen,

ein "aktives" Plugin kann es nicht geben, ist ja alles parallel möglich.
Ich würde Deine Idee so angehen:
Jeder Player erhält zwei Pages, eine für die wichtigsten Controls, eine für den Rest. Die werden optisch so angeordnet, dass sie wie eine aussehen, z.B die Controls im unteren Bereich, der Rest darüber
Aufrufe eines Players schließt/stoppt alle anderen Player.
Schließen eine Playerpage lässt die zugehörige Controlpage stehen.

Etwa so:
Wie haben zwei Plugins, Radio und Audio.
Das sind dann 5 Pages: Main, Radio, RadioControls, Audio, AudioControls.
Auf der Mainpage zwei Buttons für Radio und Audio.
Wird Radio gedrückt werden mehrere Aktionen ausgelöst:
-> Audio.Pause, Skin.HidePage Audio, Skin.HidePage AudioControls, Skin.ShowPage Radio, Skin.ShowPage RadioControls
Auf der Radio Page ist dann ein Close-Button. Der ruft nur
-> Skin.HidePage Radio auf: Die Page RadioControls bleibt offen.

Wird auf der MainPage Audio gedrückt, werden mehrere Aktionen ausgelöst:
-> Radio.Pause, Skin.HidePage Radio, Skin.HidePage RadioControls, Skin.ShowPage Audio, Skin.ShowPage AudioControls
Auf der Audio Page ist dann ein Close-Button. Der ruft nur
-> Skin.HidePage Audio auf: Die Page AudioControls bleibt offen.

Werden es mehr Plugins, potenzieren sich die Aufrufe entsprechend.
Tipp 1: Über den Skineditor können max. 4 Aktionen eingetragen werden, aber in der XML-Datei des Skins können beliebig viele Aktionen verkettet werden.
Tipp 2: Du musst immer schön mit Skin.ShowPage und Skin.HidePage arbeiten. Skin.SwitchPage würde automatisch alle anderen Pages schließen!

Gruß
Jörg
Black81 - Sa 11 Feb, 2012 21:00
Titel:
So wäre das eine Idee, ich hab da schon was im Hinterkopf.

Noch eine Frage:
Ich bin grade dabei Buttons zu beschriften. Die Textausrichtung wollte ich in der xaml (Theme) angeben.
Was für Werte gibt es noch für HorizontalContentAlignment außer center, left, right? Kann man das auch pixelgenau angeben?

Tante Edit:
Mir ist nochwas ein-/aufgefallen:
Gibt es ein Buttonlabel? Ich möchte die Lautstärke auf einem Button anzeigen lassen.

Gruß, Stefan.
Black81 - So 19 Feb, 2012 14:01
Titel:
Tach,

was für eine Funktion hat "GridViewClickOnValue"?
Ich habe einen Button damit belegt, aber es tut sich nichts.....

Gruß, Stefan.
DickerXXL - So 19 Feb, 2012 14:45
Titel:
Moin Stefan,

Pixel genau lässt sich der Text nicht angeben.
Ein ButtonLabel gibt es nicht, aber Du kannst ein Label über einen Button platzieren (in der XML Datei muss das Label hinter dem Button stehen).

GrdiViewClickOnValue ist mehr für die PluginBindings gedacht. Damit kann ein Plugin einen Wert an das Grid senden, der dann im Grid angezeigt wird (vgl. DefaultSkin, Page RemoteControl, Binding bindRCTitelVideo).
Eigentlich wird das mit ShowValue aus dem Grid erledigt, aber da kann man nur eine Quelle angeben. Wirken mehrere "Quellen" auf das Grid, so braucht man PluginBinding und sendet dann über GridViewClickOnValue den Wert an das Grid.

Gruß
Jörg
Xenton - So 30 März, 2014 19:45
Titel:
Hi !

Habe mich schon ne weile mit cPos beschäfftigt. u.a eigenes Plugin. Funktion und Fortschritt tut nichts zur Sache, hat aber schon was mit dem Plugin zu tun.


Ich möchte kein neues Thema aufgreifen, und schreibe mal hier meine Fragen rein zum skinnen.



Wie kann man in der XAML für mehrere Slider unterschiedliche Styles einrichten?

Wie man allen Slidern den selben Style verpasst, finde ich in den diversen Skins.


Möchte natürlich ein Beispiel geben, weshalb ich frage.

Den einen Slider möchte ich im Hintergrund einen rot/blau Verlauf geben.

Da ich jetzt aber zb auch ein Musikplayer oder DVDPlayer Plugin verwenden, und auch hier einen Slider verwenden möchte, aber dieser nicht den rot/blau Verlauf haben soll.

Mfg Sven (Xenton)
Subaru_tom - Mo 31 März, 2014 14:23
Titel:
Hallo

Du kannst im Skineditor für den Style des Sliders einen Namen eintragen. Normalerweise steht da ja "Style by name". das kann man ändern in zB. "style slyder1", style slyder2" oder so.
In der xaml legt man dann für jeden namen einen eigenen style an.
Ich habe das bei verschiedenen Label so gemacht siehe Bilder.

gruß

PS: Das macht aber nur Sinn, wenn sich auf einer Seite mehrere Slider befinden die unterschiedlich aussehen sollen.
Befindet sich auf jeder Seite nur ein Slider reicht es, den Slidern im Skineditor verschiedene Namen zu geben. Also "Name Slider1", "Name Slider2" usw.
Xenton - Mo 31 März, 2014 23:11
Titel:
Genau das funktioniert ebend nicht, oder aber ich kann es von einem Label nicht so zu einem Slider umsetzten. Habe so in der Art und schon in anderen Varienten, erfolgreich Cpos in einen weißen Bildschirm starten lassen. Teilweise sogar so, dass cPos garkein Bild gemacht hat, und ich es über den Taskmanager beenden musste.

Bild a1: Zeigt im SE den Slider an

Bild a2: Auszug aus der XAML, auf Basis der XAML Datei vom Defaultskin

Bild a3: So sieht es aus wenn ich cPOS mit den Änderungen von Bild a2 starte.

Bild a4: So sieht es aus, wenn ich den Inhalt für den Slider aus der XAML lösche.

Naurlich ist auf dem Bild kein Slider zu sehen, ist ja auch die Startseite. Wink
Subaru_tom - Di 01 Apr, 2014 14:40
Titel:
Hallo

Ja stimmt so wird es nicht funktionieren. SliderButtonStyle und SliderThumbStyle sind Styles für Hintergrund und Button eines Slider bzw Slider allgemein. Du müsstest also irgendwie beides mehrfach anlegen und den entsprechenden Slider zuordnen. Wie das genau funktioniert kann ich leider nicht sagen. Vielleicht schreibt DickerXXL noch was dazu.

Gruß
Alle Zeiten sind GMT + 1 Stunde
Powered by phpBB2 Plus and Kostenloses Forum based on phpBB