tedgo's "Dark One"-Theme für CUI

Begonnen von tedgo, 28. November 2008, 20:43:46

Vorheriges Thema - Nächstes Thema

Licmeth

Nun ja, als "wichtig" wird jeder etwas anderes empfinden, denke ich ;)
Ich verwende Darkone, seit ich auf foobar umgestiegen bin und habe bereits ein paar kleine änderungen mit eingebaut und auch noch ein paar vor.
Momentan sieht es so aus:

Geändert habe ich:
- eine volumebar(WSH panel) statt den beiden buttons für die lautstärke (fand ich seeeehr wichtig ;) )
- der groupheader in der elplaylist zeigt das coverbild kombiniert mit dem "play-pfeil" an, wenn die gruppe gespielt wird
- zwei neue button zum schnellen download von cover- und interpretenbildern, wobei der button für das cover erkennt, ob ein ganzes album vorliegt oder nur ein einzelner titel und sich dann entsprechend färbt
- eine dropdownliste für die playlists (die mir so noch gar nicht gefällt, weil sich nicht ins layout passt...)
- einen button oberhalb der playlist, der die elplaylist ausblenden soll, sodass das interpretenbild besser zu sehen ist. das nach möglichkeit automatisch, wenn der benutzer keine aktionen innerhalb der elplaylist ausführt. (momentan funktioniert das gar nicht :( )

geändert werden soll noch:
- die tabs auf der rechten seite weg und so ersetzen, dass transparenz möglich ist und das interpretenbild dahin ausgeweitet werden kann. (das würde ich als "wichtig" betiteln ;) )

Liebe Grüße und danke für das tolle theme :top:
Daniel

tedgo

#226
Ganz schick :)
aber die meisten Änderungen, die du gemacht hast sind doch sehr auf deine persönlichen Bedürfnisse abgestimmt, sind also nix für die Standardversion.

- über die Volumebar habe ich auch schon nachgedacht. Deine Lösung sieht ganz praktikabel aus, mir gefallen aber die Buttons besser ;)
Vielleicht denke ich noch mal drüber nach...

- zusätzliche Buttons für den Coverdownload erachte ich als nicht besonders wichtig.
Wenn man das mit foo_run und dem AlbumArtDownloader macht, hat man das genauso schnell mit Rechtsklick auf die Datei in der Playlist (oder im Trackinfo mod).
Außerdem möchte ich so wenig Buttons wie möglich einsetzen, um das zu erreichen was nötig ist.

- die Playlist-Dropdown hatte ich auch mal kurzfristig drin. Da sie aber nicht ausreichend anpassbar ist, habe ich wieder darauf verzichtet.
Wenn sie aber ein Update bekommt, und man sie problemlos an die Optik des Skins anpassen kann, baue ich sie sicher auch ein.

- für eine Automatik bräuchte das PSS eine Art Timer-Funktion (nach so und soviel Sekunden nach der letzten Aktion $showpanel_c(ELPlaylist,0)). Gibt es aber nicht...
Für die Artist Picture Ansicht habe ich aber bereits die Großbildansicht eingebaut. Da könnte man das Artist Picture Panel als Standard definieren. Um die volle Fläche mit dem Artist Picture auszufüllen, müsste man nur im Skript in der $imageabs() Funktion das Wörtchen noexpansion löschen.

- für vollen Ersatz der Tabs mit allen Funktionen, die momentan möglich sind und gleichzeitigem Erreichen von Transparenz müssten die verwendeten Panel das auch unterstützen. Tun sie aber leider bis auf das Lyrics Panel nicht.
Würde ich die Tabs rausnehmen, wäre auch die Möglichkeit genommen, auf einfache Weise zusätzliche Panel einzubauen. Das wird also sicher nicht geschehen. Tut mir leid.
Zumindest nicht in DarkOne. Vielleicht ihn einem späteren Skin... ;)

Anmerken sollte ich wohl doch, dass mit Einsatz des WSH Panel mod die persönliche "Nachbearbeitung" des Skins durch den User sicherlich etwas schwieriger wird...
Dafür unterstützt aber das WSH Panel mod ebenfalls Transparenz. Leider flackert es dann beim Liedwechsel, weshalb ich die Transparenz nicht standardmäßig aktiviere.

EDIT:
Oh, die Idee mit dem Play-Pfeil im Group-Header habe ich ja ganz überlesen.
Die Idee gefällt mir...
Mal sehen, ob ich dir die klaue  ;)

Licmeth

Zitat von: tedgo in 03. April 2009, 13:57:06
- für eine Automatik bräuchte das PSS eine Art Timer-Funktion (nach so und soviel Sekunden nach der letzten Aktion $showpanel_c(ELPlaylist,0)). Gibt es aber nicht...
Den hat sie zumindest zum Teil, mit per second. Ich hab mich damit noch nicht ausführlich beschäftigt, aber das wird doch dann jede sekunde ausgeführt und nicht nur jede sekunde, wen ein track gespielt wird, oder?
Wenn das so wäre, bräuchte man nur das, was ich bei foobar so sehr vermisse: Eine globale variable, die sich aus jedem script setzen und lesen lässt. Dann könnte man dort einen zahlenwert für die sekunden speichern und den jedes mal bei per second verringern, bis er bei null ist. dann die playlist, ebenfalls mit per second ausblenden. bei aktionen dann wieder einblenden und die globale variable wieder setzen.
das ist leider alles zukunftsmusik, weil alles, was man dazu bräuchte, nicht existiert. schade :(
Ich habe schon versucht selber eine komponente für foobar zu schreiben. das problem ist dass ich c nicht wirklich kann und dass ich bisher auch kein tutorial oder ähnliches gefunden habe, was mir den aufbau der sdk erklären würde...

Grüße

tedgo

Zitat von: Licmeth in 04. April 2009, 11:32:11
Den hat sie zumindest zum Teil, mit per second. Ich hab mich damit noch nicht ausführlich beschäftigt, aber das wird doch dann jede sekunde ausgeführt und nicht nur jede sekunde, wen ein track gespielt wird, oder?
Nein! Es wird nur "ausgeführt" solange ein Lied spielt.
Du könntest es auch mit "Is Playing" vergleichen, d. h., was auf dieser Registerkarte eingetragen wird, gilt nur, wenn ein Lied spielt. Nur, dass zuzüglich eben im Sekundentakt abgeglichen wird.

Zitat von: Licmeth in 04. April 2009, 11:32:11
Wenn das so wäre, bräuchte man nur das, was ich bei foobar so sehr vermisse: Eine globale variable, die sich aus jedem script setzen und lesen lässt.
Globale Variablen kannst du mit foo_exvar setzen. Diese Variable (die eigentlich keine ist, sondern eher ein benutzerdefiniertes Feld) kannst du dann in jedem Plugin abrufen.

Zitat von: Licmeth in 04. April 2009, 11:32:11
Dann könnte man dort einen zahlenwert für die sekunden speichern und den jedes mal bei per second verringern, bis er bei null ist. dann die playlist, ebenfalls mit per second ausblenden. bei aktionen dann wieder einblenden und die globale variable wieder setzen.
Ich steh ja jetzt möglicherweise auf dem Schlauch, aber womit willst du denn diesen "Zahlenwert" vergleichen?
Dazu bräuchtest du ja sowas wie Zeitmarken (Zeitmarken von Beginn und Ende der Aktion).
Dann müsstest du PSS auch noch überreden, zu erkennen, dass überhaupt eine Aktion durchgeführt wurde.
Vielleicht reden wir auch ein bisschen aneinander vorbei. Was aber auch daran liegen kann, dass es jetzt mit DarkOne eher weniger zu tun hat ;)

Licmeth

Zitat von: tedgo in 04. April 2009, 11:54:33
Globale Variablen kannst du mit foo_exvar setzen. Diese Variable (die eigentlich keine ist, sondern eher ein benutzerdefiniertes Feld) kannst du dann in jedem Plugin abrufen.
Genau. eigentlich ist es eher eine Konstante. und das ist das problem...

Zitat von: tedgo in 04. April 2009, 11:54:33
Ich steh ja jetzt möglicherweise auf dem Schlauch, aber womit willst du denn diesen "Zahlenwert" vergleichen?
Dazu bräuchtest du ja sowas wie Zeitmarken (Zeitmarken von Beginn und Ende der Aktion).
Dann müsstest du PSS auch noch überreden, zu erkennen, dass überhaupt eine Aktion durchgeführt wurde.
ich würde eine globale variable setzen, mit dem wert zb. 5. die playlist wäre dann sichtbar. dann würde ich jede sekunde den wert von 5 um eins verringert, bis er bei null ist. dann würde ich die playlist ausblenden(nicht ganz unsichtbar machen!). die würde so lange so bleiben, bis der benutzer in die playlist klickt. dann würde ich sie wieder einblenden und die globale variable wieder auf 5 setzen. dann würde es wieder von vorne losgehen, also die 5 runterzählen.
Jedes mal wenn der benutzer eine aktion in der playlist ausführt, würde ich die gloable variable wieder aus 5 setzen.
Das würde dann dazu führen, das sich die playluist nach 5 sekunden, in denen der benutzer nichts in ihr "unternimmt" ausblendet.

Zitat von: tedgo in 04. April 2009, 11:54:33
Vielleicht reden wir auch ein bisschen aneinander vorbei. Was aber auch daran liegen kann, dass es jetzt mit DarkOne eher weniger zu tun hat  ;)
Da hast du recht und daher ist jetzt auch schluss damit ;)

tedgo

#230
So, nicht, dass ihr denkt, ich mach nix mehr an DarkOne ;)

aktueller Screenshot:


Ich hoffe ja, ich habe es nicht verschlechtert  ::) :)

Jetzt muss ich nur noch das Rating-Panel in WSH Panel mod hinbekommen (und das wird dauern, da ich einfach nicht genug über JScript weiß, um das ordentlich hinzukriegen), dann wird veröffentlicht.
Wahrscheinlich aber nicht vor Pfingsten.

EDIT:
Irgendwie habe ich mit abload.de neuerdings Probleme...
Der Thumbnail-Link führt nur zu einer winzigen Miniaturabbildung.
Geht das nur mir so?

Jedenfalls hier mal der Direktlink zum Bild:
http://img2.abload.de/img/1_5_alphaqp9u.png

huber71

mmmhh, die Veränderungen stecken sicher im verborgenen ?  ;)

tedgo

Hauptsächlich ja.
Ich versuche immer noch, die meisten Settings des PSS ins WSH Panel mod zu bekommen, wovon ich mir mehr Stabilität erhoffe.
Dann fliegt das Trackinfo mod Panel raus (wird ersetzt durch Item Details und WSH Panel mod) sowie das extra Menü und dessen Button, denn das kann man ja über die Toolbar erreichen. Dafür kommt Biography view mit hinzu.

Ich würde ja auch gerne noch die verschiedenen Playlists in ein Tabbed Panel Stack mod bekommen, anstatt als direkte Panel im PSS, damit ich sie mit WSH Panel mod schalten kann (dann wären gar keine Buttons mehr im PSS) das klappt aber nicht, weil ich mit WSH Panel mod nicht anzeigen kann, welches Panel (oder dann eben Tab) gerade geöffnet ist...
Vielleicht fällt mir da noch was ein ;)

Optisch gibt es nur andere Buttons, leicht geänderte Farben (Group-Header ELPlaylist) und kleinere andere Änderungen.

mexx

mmmmmhhhhhh,

nun wollte ich mal DarkOne testen und nun ist der UserGuide in englisch. :(
Und da kann ich leider vieles nicht nachvollziehen. :'(

Gibt es die Anleitung auch auf deutsch?

huber71

ein kleines bisserl mehr Aufmerksamkeit, bitte:

Wenn Du von der Seite

http://tedgo.deviantart.com/art/DarkOne-v1-3-111311295

die Darkone-Version herunterlädst befindet sich im gezippten Ordner auch eine wunderbare deutschsprachige Bedienungsanleitung (gelle?) - da hat Tedgo sich viel Mühe gemacht!

tedgo

#235
Die ist aber veraltet...
Eine neue, aktuelle Bedienungsanleitung auf deutsch habe ich leider nicht.
Aber falls Fragen auftauchen: Hier ist ein wunderbarer Platz dazu :)

EDIT:
Werde mich bemühen, für die nächste Version auch eine Anleitung auf deutsch zu schreiben, die ich dann aber hier (im Eröffnungsbeitrag) anhänge.

tedgo

#236
Versionsupdate:
DarkOne v1.5

Downloadlink und Changelog im ersten Post ;)

Eine deutsche Bedienungsanleitung habe ich leider noch nicht fertig.
Die schreibe ich im Laufe der nächsten Woche und hänge sie dann hier im ersten Post an. :)

grimes

Glückwunsch, tedgo, zum "Daily Deviation, 2009-05-10" für DarkOne v1.5.

tedgo


tedgo

#239
Da das Umschalten vom "Normal" zum "Compact" mode mitunter sehr lange dauert, habe ich den "Compact" mode überarbeitet und die Visualisierungen herausgenommen. Ich hoffe, dass das hilft (bei mir klappt es jetzt meistens. Umschalten dauert aber immer noch manchmal - eher zufällig  - bis zu 10 Sekunden...).

Liegt wohl jetzt noch an der ELPlaylist, denn in einer Testversion ohne ELPlaylist dauerte es nur maximal 3 Sekunden (je nach Länge der Dateien in der Medienbibliothek und der aktiven Playlist - der NG Playlist in der Testversion).
Auf die ELPlaylist möchte ich natürlich nicht verzichten...

Aber hier schon mal Screenshots des aktuellen Compact Modus, halt ohne Visualisierungen. Dafür schön schlicht und - so denke ich doch - sehr dezent ;)





Veröffentlicht wird die überarbeitete Version von 1.5 dann wahrscheinlich am Donnerstag.
Sind noch einige Bugs gefixt und die ELPlaylist bekommt die Möglichkeit, das angezeigte Cover in den "Field definitions" einzustellen (als eine Art Workaround für Nutzer von foo_covers).

Falls der Compact mode irgendwelche Probleme verursacht, bitte Bescheid geben.
Ich überlege nämlich ihn entweder ganz zu entfernen oder als externe FCL anzubieten (dann könnte ich auch wieder eine kleine Visualisierung einbauen).