foobar2000.pl - polskie forum: [Tłumaczenie] Panels UI Tutorial - foobar2000.pl - polskie forum

Skocz do zawartości

Strona 1 z 1
  • Nie możesz napisać tematu
  • Nie możesz odpowiedzieć

[Tłumaczenie] Panels UI Tutorial W częściach, masz błąd > PW

#1 Użytkownik nie jest zalogowany   Pingwinho Ikona

  • Emperor Penguin
  • Ikona
  • Rejestracja 21-maj 06

Napisano 28 czerwiec 2007 - 13:54

Panels UI ( tłumaczenie tutoriala )

:arrow: CZYM JEST PANELS UI (foo_ui_panels)
To interfejs graficzny dla fb2k, obok Columns UI oraz GFX UI. Działa jako duży panel Track Info Mod (pozycjonowanie tekstu, różne czcionki, wyświetlanie obrazów, itd.), który może zawierać w sobie inne panele. Panels UI są wciąż w fazie beta, zalecane jest backupowanie swoich konfiguracji.
:arrow: OPIS
Umożliwia zarządzanie wieloma panelami poprzez kody formatujące
Składa się z Single Column Playlist i Trackinfo Mod
Używa kodów Trackinfo Mod i kilku nowych ($panel, $glass oraz $eval)
:arrow: INSTALACJA
Pobierz ostatnią wersję stąd i wypakuj plik .dll do katalogu components w katalogu głównym fb2k.
Zrób kopię zapasową starych konfiguracji Panels UI przed usuwaniem oryginalnego pliku .dll
:arrow: WYMAGANIA
fb2k 0.9.4 lub nowszy
GDI+ (tylko Windows 2000)
Columns UI (jeżeli chcesz używać ich funkcji)
:arrow: PODSTAWY
Plik konfiguracyjny .pui
Kiedy uruchomisz Panels UI po raz pierwszy, stworzy on folder Panels UI w katalogu głównym fb2k. Pliki konfiguracyjne .pui są w nim przechowywane i chociaż można je edytować dowolnym edytorem tekstowym, nie jest to zalecane.
Okno opcji
Z poziomu okna opcji (ctrl+p > Display > Panels UI)
  • Dostępne opcje:
    • Wybrania layout'u
    • Stworzenia nowego layout'u
    • Usunięcia layoutu
    • Zmiany nazwy layoutu
    • Wyświetlania ikonki w tray'u
    • Schowania fb2k do tray'a

  • Wartości globalne są przechowywane w okienkach Track Globals i User Globals i są one dostępne w każdym layoucie.
  • Przycisk Edit Layout otwiera okno konfiguracyjne Panels UI i zezwala na edycję obecnego layout'u i paneli w nim obecnych.
Uwaga: Aby zmienić tytuł okna i tooltip'a w tray'u użyj funkcji $settitle() i $settray().
Okno konfiguracji
W tym oknie edytowane są skrypty Panels UI. Okno konfiguracji zawiera wiele przydatnych narzędzi:
  • Panel z listą wszystkich paneli obecnego configu, jak i dostępnych configów
  • Przyciski:
    • Globals otwiera okno z przechowywanymi wartościami globalnymi. Są dostępne z poziomu każdego panelu w layoucie
    • Font tworzy skrypt $font z ustalonymi wartościami (czcionka, rozmiar, styl)
    • Color tworzy skrypt $rgb z ustalonymi wartościami
    • Clear PVARs usuwa wszystkie PVAR?y czyli stałe wartości z obecnego configu
    • Settings otwiera okno ustawień wybranego z listy panelu
    • Delete usuwa wybrany z listy panel
    • Import wczytuje plik .pui
    • Export zapisuje config do pliku .pui
    • Main zmienia menu drop down, tak aby wyświetlało główne komendy fb2k
    • Context zmienia menu drop down, tak aby wyświetlało kontekstowe komendy fb2k
    • Panels zmienia menu drop down, tak aby wyświetlało listę zainstalowanych wtyczek foo_uie_xxx.
Okno edycji
Od wersji 0.3.0 okno edycji scintilla zostało zaimplementowane, aby ułatwić edycję dodano kolorowanie składni. Aby zmienić czcionkę przytrzymaj Carl i użyj kółka myszy.
:arrow: STRUKTURA KODU
Jest to standardowy kod formatujący foobara z jedną małą przeróbką otóż tabulatory i spacje są ignorowane na początku linii
Przykład:
$if(%isplaying%,
							 Playing
		   ,
							 Not Playing

:arrow: KOMENDY
Jak na razie jeszcze nie po polsku ale wezmę się i za tą część tutka
Lista dodatkowych funkcji i zmiennych używanych przez Panel UI

:arrow: FUNKCJE ZDEPRECJONOWANE (przestarzałe i nie wspierane przez nową składnie)
  • $alignabs() obecnie dalej pod tą samą nazwą ale ze zmienioną składnią.
  • $alignr() usunięta!
  • $alignrel() usunięta!
  • $alignset() usunięta!
  • $button() zmieniona na $imagebutton()
  • $button2() zmieniona na $textbutton()
  • $drawrect() zmieniona na $rectabs()
  • $font() zmieniona składnia i parametry.
  • $imageabs() zmieniona składnia i parametry.
  • $imageabs2() usunięta!
  • $pad() usunięta!
  • $panel() zmieniona składnia.
  • $smallcaps() zmieniona składnia i parametry.
  • $_tab() zmieniona na $tabx()
Funkcje te są dalej dostępne ale w pUI powyżej 0.14.10 zaleca się korzystanie z ich zastępników.
:arrow: FUNKCJE POZYCJONUJĄCE
$alignabs(x,y,szerokość,wysokość,wyrównanie pionowe,wyrównanie poziome)
pozycjonowanie absolutne
Uwaga: nie sprawdza czy przysłania inne elemeny!
  • x,y - współrzędna lewego górnego róg (wartości w pikselach możliwe użyci wartości ujemnych)
  • wysokość, szerokość - rozmiar pola (liczony do dołu i w prawo)
  • wyrównanie poziome, pionowe - pozycja elementów wewnątrz pola
    • poziome
      • left - do lewej
      • center - do środka
      • right - do prawej

    • pionowe
      • top - do góry
      • middle - do środka
      • bottom - do dołu
Uwaga: $alignabs(wyrównanie poziome, pionowe) może zostać użyte jak skrót.
Uwaga: W nowej składnie można też używać skrótu $alignabs(wyrównanie).
$alignr(wyrównanie poziome, pionowe)
Relatywne pozycjonowanie wewnątrz aktualnej linii.
Uwaga: Nie występuje w nowej składni.
$alignrel(wyrównanie poziome, pionowe)
Relatywnie pozycjonowanie wewnątrz pola.
Uwaga: $alignrel() działa poprawnie tylko w sekcji // PreSecond
Uwaga
: Nie występuje w nowej składni.
$alignset()
Działa jak $char(10) (przejście do nowej lini) Oddziaływuje na wszystki późniejsze wywołania $alignrel().

np.
$alignrel(left,middle) Linie pierwsza wyrównana do lewej
		  alignrel(center,middle) Linia pierwsza wyrównana do środka
		  $alignset()
		  $alignrel(right,middle) linia dróga wyrównana do prawej

Uwaga: Nie występuje w nowej składni.
$pad(x,y)
Przesuwa układ współrzędnych okna foobara (normalnie lewy górny róg to 0,0) odpowiednio o x,y pikseli.
$_tab(n)
Robie wcięcie na n pikseli.
W nowej składni $tabx()
:arrow: FUNKCJE EKSPERYMENTALNE
'#LINEHEIGHT,n#'
Ustawia wysokość kolejnej lini gdzie n pozycją w pikselach względem aktualnej.
Uwaga: działa jedynie z $align() albo $alignrel().
Line1 '#LINEHEIGHT,5#' $char(10) Line2

Uwaga: w nowej składnie $lineheight()
#SHADE#
Przysłanianie aktualnej linii (ale głowy sobie za to uciąć nie dam :) )
:arrow: FUNKCJE CZCIONEK
$font(nazwa,rozmiar,opcje,R-G-B)
Ustawia czcionkę dla następnego fragmentu tekstu.
nazwa - nazwa czcionki.
Uwaga: odwołanie do domyślnych czcionek systemowych SYSFONT-?
  • SYSFONT-caption
  • SYSFONT-menu
  • SYSFONT-message
  • SYSFONT-smcaption
  • SYSFONT-status
rozmiar - rozmiar czcionki (wpisz 0 żeby uzyskać domyślny rozmiar)

opcje - styl czcionki.
Uwaga: możesz podać kilka parametrów rozdzielonych spacjami.
Uwaga
: wygładzanie czcionek (ClearType) jest domyślnie włączone.
  • bold - pogrubienie
  • italic - kursywa
  • underline - podkreślenie
  • strikeout - przekreślenia
  • uppercase - wszystkie litery duże
  • lowercase - wszystkie litery małe
  • nocleartype - wyłączenie wygładzania
  • fixedwidth-X - odstępy między znakami x-punktów
  • glow-R-G-B - kolor 'jarzenia'
  • glowalpha-X - przezroczystość 'jarzenia'
  • glowblur-X - rozmycie 'jarzenia' (domyślnie x=2)
  • glowexpand-X wielkość 'jarzenia' (domyślnie x=2)
  • shadow - cień (zawsze czarny !)
  • textalpha-X - przezroczystość liter (wyłącza wygładzania)
  • textblur-X - rozmycie liter
  • textexpand-X - 'poszerzenie' liter
R-G-B jest to sRGB wartości w przedziale 0-255 na kanał.
Uwaga: odwołanie do domyślnych kolorów systemowych
SYSCOL-x (wartości 0-30)
Sktypt pozwalający podejrzeć wszystkie 31 kolorów systemowych można pobrać [tu]
Dołączona grafika
Uwaga: całą funkcję $font() można zapisać do zmiennej $put(), $puts() i wczytać $get().
$puts(myFont,$font(Calibri,9,100-100-100))

Uwaga: jeśli w kodzie wystąpi $alignrel() to czcionką należy wczytać przed a nie po wywołaniu $alignrel().
Uwaga: funkcje $clacwidth() i $calcheight() nie przejmują czcionki wczytanej przez $get(). Obliczają rozmiar pola tekstowego bazując na czcionce ustawionej poprzez ostatnie wywołanie $font() nawet jeżeli jeśli są umieszczone wewnątrz $puts().
Uwaga: Zmiany wprowadzone w nowej składni:
$font(nazwa,rozmiar[,opcje])

opcje:
  • bold
  • thin
  • italic
  • strikeout
  • underline
  • nocleartype
  • textalpha,n
  • effectcolor,c
  • alpha,n
  • offset,n
  • glow,n
  • radius,n
  • iterations,n
Uwaga: W nowej wersji pUI dostępne jest okienko dialogowe do tworzenia efektów czcionek.
Dołączona grafika
$smallcaps(rozmiar1,rozmiar1-opcje,rozmiar2,rozmiar2-opcje,tekst)
Przetabia tekst na kapitaliki
(zamiast małych liter daje wielkie tylko odpowiednio zmniejszone)
Dołączona grafika
:arrow: FUNKCJE GRAFICZNE (obrazki i kształty)
$drawrect(x,y,w,s,kolorWypełnienia-r-g-b kolorKrawędzi-r-g-b opcje)
Rysowanie kwadracika.
x,y - położenie lewego górnego rogu kwadracika.
Uwaga: funkcja $pad() wpływa na położenie punktu (0,0)!

w,s - wysokość i szerokość kwadracika.

kolorWypełnienia
i kolorKrawędzi - kolor w formacie sRGB.
Uwaga: używaj null w miejscu koloru żeby uzyskać przezroczystość.
Uwaga: odwołanie do domyślnych kolorów systemowych
SYSCOL-x (wartości 0-30)
Sktypt pozwalający podejrzeć wszystkie 31 kolorów systemowych można pobrać [tu]

opcje - efekty specjalne :)
Uwaga: opcje przezroczystości lub rozmycia ignorują kolor wypełnienia! (kwadracik wypełniany kolorem krawędzi)
Dalej można uzyskać puste wypełnienie przez brushColor-null.
Jeśli nie ustawiono koloru krawędzi lub ustawiono null to kwadracik będzie narysowany na zielono!
  • ALPHA-n - przezroczystość (n w zakresie 0-255)
  • EXPAND-n - poszerzenie o n-pikseli.
  • BLUR-n - rozmycie o sile n.
  • WIDTH-n - szerokość krawędzie (domyślnie 1)
    Uwaga: Ustawienie n=0 nie wyłącza rysowania krawędzi!
    (n jest dalej równe 1)
    Uwaga: Krawędź jest wycentrowana !
    • Dla domyślnej szerokości WIDTH-1 cała krawędź jest wewnątrz.
    • Dla parzystych n krawędź jest idealnie wyśrodkowana.
    • Dla nieparzysty n krawędź lewa i górna są przesunięte o piksel na zewnątrz a prawa i dolna o piksel od środka.
Uwaga: zmiany wprowadzone w nowej składni.
$rectabs(x,y,w,s[,kolorWypełnienia,kolorKrawędzi,opcje])
$imageabs(x,y,obrazek,opcje)
Wyświetlanie obrazka (dozwolone formaty to: PNG, BMP, GIF, JPEG, ICO)
x,y - współrzędne lewego górnego rogu obrazka w oknie foobar'a.

obrazek
- ścieżka do pliku z obrazkiem absolutna albo relatywna (katalog PanelsUI/image). Odwołanie relatywne zaczyna się od /.

opcje
- dodatkowe funkcje związane z wyświetlaniem obrazka.
  • ALPHA-x - przezroczystość obrazka (x w przedziale 0-255)
  • FLOW - tekst "opływa" obrazek.
Uwaga: w nowej składnie ocalała tylko jedna funkcja wyświetlająca obrazki! Patrz uwagi do $imageabs2()
$imageabs2(s,w,x,y,s,w,x,y,obrazek,opcje)
Wyświetlanie obrazka (dozwolone formaty to: PNG, BMP, GIF, JPEG, ICO) plus kilka dodatkowych opcji manipulacji wyświetlaniem.
s,w - zmienia rozmiar obrazka (przed przycinaniem).
  • przy zmianie rozmiaru "w dół" zachowuje proporcje.
  • przy zmianie "w górę" trzeba ustawić nokeepaspect!
  • żeby pominąć pozostaw pola puste.
x,y,s,w - przycina obrazek (po zmianie rozmiaru)
  • x,y - górny lewy róg wycinanego obszaru.
  • s,w - wysokość i szerokość wycinanego obszaru.
x,y - współrzędne lewego górnego rogu obrazka w oknie foobar'a.
obrazek - ścieżka do pliku z obrazkiem absolutna albo relatywna (katalog PanelsUIimage). Odwołanie relatywne zaczyna się od /.
[i] [/i][i]opcje[/i]
  • ALPHA-x - przezroczystość obrazka (x w przedziale 0-255)
  • NOKEEPASPECT - ignoruje proporcje obrazka.
  • VALIGN-T - wyrównanie do góry.
  • VALIGN-B - wyrównanie do dołu.
  • HALIGN-L - wyrównanie do lewej.
  • HALIGN-R - wyrównanie do prawej
  • ROTATEFLIP-n - obroty i odbicia.
    • n=1 90° w prawo.
    • n=2 180° w prawo.
    • n=3 270° w prawo.
    • n=4 odbicie w poziomie.
    • n=5 90° w prawo i odbicie w poziomie.
    • n=6 odbicie w pionie.
    • n=7 90° w prawo i odbicie w pionie.
Uwaga: obroty i odbicia można przedstawić w postaci tabelki.
Dołączona grafika

Uwaga:
w nowej składni mamy tylko jedną funkcję do wyświetlania obrazków.
[i]$imageabs(x,y,obrazek[/i][[i],opcje[/i]][i])[/i]
[i]opcje[/i] - wszystkie funkcje z [i]$imageabs()[/i] i [i]$imageabs2()[/i]
  • clip,x,y,s,w - wycinanie fragmentu obrazka.
  • nokeepaspect - ignoruje proporcje obrazka.
  • resize,s,w - zmienia rozmiar obrazka
  • rotateflip,n - obracanie i odbijanie.
:arrow: FUNKCJE "WEWNĘTRZNE" PANELU TRACK DISPLAY
Są to funkcje formatujące dostępne jedynie wewnątrz panelu Track Display, włączając w to także główne okno Panels UI (które zasadniczo jest panelem Track Display)
[i]$button(x,y,klik-x,klik-y,klik-s,klik-w,obrazek,obrazek podświetlony,funkcja,opcje)[/i]
Tworzy przycisk graficzny a kwadratowym obszarze aktywnym do którego można przypisać funkcje. W skład tych funkcji wchodzi całe menu foobar'a główne i kontekstowe, manipulacja zmiennymi i kilka dodatkowych funkcji specjalnych jak wywoływanie zewnętrznego programu przez linię komend.
[i]x,y[/i] - współrzędne górnego lewego rogu przycisku.

[i]klik-x,klik-y,klik-s,klik-w[/i] - współrzędne aktywnego obszaru gdzie [i]x,y[/i] to wsp. górnego lewego rogu a [i]s,w[/i] to wysokość i szerokość pola.

[i]obrazek[/i] - obrazek do wyświetlenia jako przycisk. Dozwolone jest odwołanie bezpośrednie albo relatywne.
Uwaga: nie wolno używać # w nazwie pliku lub ścieżce!
[i]obrazek podświetlony[/i] - obrazek wyświetlany po najechaniu kursorem.

[i]funkcja[/i] - komenda wykonywana po kliknięciu przycisku.
  • Elementy głównego i kontekstowego menu foobar'a (Pause, Stop, Preferences ...) Do wstawiania tych komend służą dwa rozwijalne pola 'Main' i 'Context'.
  • EXEC - wywołanie komendy z linii poleceń
    np. EXEC:'http://www.google.com/search?q='$replace(%artist%, ,+)
    Otwiera Google i wyszukuje nazwę artysty.
  • FILTER:nazwa|wartość|nazwa2|wartość2:... - wyświetla menu kontekstowe filtrów dla playlisty.
    Uwaga: użycie !source! w polu wartość wyświetla podmenu z którego można wybierać między playlistami.
  • MENU - wyświetla menu kontekstowe głównego menu foobar'a.
  • PLAYLIST-MENU - wyświetla listę wszystkich playlist.
  • POPUP:nazwa - otwiera nowe okno pUI gdzie nazwa to nazwa pliku konfiguracyjnego dla nowego okna.
    Uwaga: feśli plik nie istnieje zostanie on utworzony w głównym katalogu pUI!
  • PVAR:SET:nazwa:wartość - ustawia wartość zmiennej nazwa na podaną wartość.
  • SORT:nazwa|wartość:nazwa|wartość + $filtered(nazwa) + sorted(nazwa) ... - wyświetla menu kontekstowe do sortowania playlisty.

to już jestem za połową ... niestety nie idę na piwo bo mam sklep zamknięty :(

Użytkownik BArtus edytował ten post 10 listopad 2007 - 14:39

0

Strona 1 z 1
  • Nie możesz napisać tematu
  • Nie możesz odpowiedzieć

Użytkownicy przeglądający ten temat: 3
0 użytkowników, 3 gości, 0 anonimowych


Oferujemy miejsce na reklame. Kontakt: m.szafranski@foobar2000.pl