Wtyczka BgImage

Ten dokument zgodny jest z NSIS 3.1


1. Wprowadzenie

Wyświetla obrazek lub tło gradientowe z tekstem zdefiniowanym przez użytkownika oraz/lub obrazkiem za oknem NSIS. Umożliwia także odtwarzanie plików WAV.

Przykład użycia znajdziesz w pliku Example.nsi.

2. Sposób użycia

1. Wywołaj funkcję SetBg, aby ustawić tło
2. Wywołaj funkcję AddText lub funkcję AddImage, aby dodać teksty lub obrazki
3. Wywołaj funkcje Redraw, aby uaktualnić tło okna
4. Opcjonalnie - powtórz kroki 2-3, aby dodać więcej obrazków
               -lub-
    Wywołaj funkcję Clear i powtórz kroki 1-3, aby ustalić całkowicie nowe tło.
5. Wywołaj funkcję Destroy, gdy tło nie jest już potrzebne (na przykład w funkcji .onGUIEnd)

Uwagi

  • Wtyczka wymaga użycia NSIS 2.42 lub nowszego.
  • Nie wywołuj funkcji SetBg (która tworzy okno) z sekcji lub funkcji wywołanej przez sekcję. Wtyczka musi być uruchomiona w wątku interfejsu GUI, ponieważ wątek instalatora nie został stworzony do obsługi GUI.

3. Dostępne funkcje


3.1 SetBg

SetBg [/FILLSCREEN|/TILED] ścieżka_do_bitmapy
SetBg /GRADIENT R G B R G B
  • Ustawia tło i tworzy okno, jeśli jest taka potrzeba

    - Użyj parametru /FILLSCREEN, aby obrazek wypełnił całe okno

    - Użyj parametru /TILED, aby tło wyświetlane było w stylu 'sąsiadująco'

    - Użyj parametru /GRADIENT, aby ustawić tło gradientowe (przejście tonalne)

    - Jeśli wywołano funkcję SetReturn on, to zwracana jest wartość "success" na stosie lub łańcuch znaków błędu, jeśli takowy wystąpił.

    - Nie używaj w funkcji .onInit!


3.2 AddImage

AddImage [/TRANSPARENT R G B] ścieżka_do_bitmapy X Y
  • Dodaje obrazek do tła okna w pozycji (X,Y)

    - Aby określić odległości od prawej strony/dołu ekranu, parametry X oraz Y mogą przyjmować wartości ujemne

    - Użyj parametru /TRANSPARENT, aby funkcja BgImage wyrysowała obrazek w przezroczystości

    - Zdefiniuj kolor przezroczystości używając R G B

    - Jeśli wywołano funkcję SetReturn on, to zwracana jest wartość "success" na stosie lub łańcuch znaków błędu, jeśli takowy wystąpił.


3.3 AddText

AddText tekst uchwyt_czcionki R G B X Y X Y
  • Dodaje tekst do tła okna

    - Użyj funkcji NSIS: CreateFont, aby utworzyć czcionkę i przekazać ją jako uchwyt_czcionki

    - Użyj wartości R G B, aby ustalić kolor tekstu

    - Pierwsze parametry X Y służą do ustalenia górnego lewego narożnika obszaru tekstu, kolejne parametry X Y ustalają dolny prawy narożnik obszaru tekstu. X oraz Y mogą przyjmować wartości ujemne, aby określić odległości od prawej i dołu ekranu

    - Jeśli wywołano funkcję SetReturn on, to zwracana jest wartość "success" na stosie lub łańcuch znaków błędu, jeśli takowy wystąpił.


3.4 Clear

Clear
  • Czyści całe tło, obrazki i teksty

3.5 Destroy

Destroy
  • Zwalnia pamięć okna bieżącego tła

    - Funkcja Destroy wywołuje funkcję Clear automatycznie


3.6 Sound

Sound [/WAIT|/LOOP] ścieżka_do_wav
Sound /STOP
  • Odtwarza plik wave

    - Użyj parametru /WAIT, aby zaczekać na zakończenie odtwarzania

    - Użyj parametru /LOOP, aby zapętlić odtwarzanie dźwięku

    - Użyj funkcji Sound /STOP, aby zakończyć pętlę


3.7 SetReturn

SetReturn on|off
  • Włącza zwracanie wartości przez funkcje SetBg, AddImage oraz AddText

    - Domyślną wartością jest off, ponieważ wszystkie potencjalne błędy są raczej błędami, które powinieneś wyłapać podczas debugowania skryptu, np. "nie można załadować bitmapy" lub błądami, z którymi nic nie zrobisz, np. "błąd alokacji pamięci"

4. Autorzy

Kod - Amir Szekely, aka KiCHiK

Ximon Eighteen, aka Sunjammer - Poprawione problemy z paskiem tytułu okna

iceman_k - Pomysł tekstu i oryginalna implementacja

Lajos Molnar, aka orfanik - pomysł ustawienia 'sąsiadująco' oraz oryginalna implementacja

Jason Reis - pomoc w programowaniu