Przejdź do treści

Kwietniowa aktualizacja: zmienne, ukryte warstwy i więcej ​

Właśnie wydaliśmy pakiet nowych funkcji, o które prosiliście, oraz kilka ważnych poprawek, aby wszystko działało płynniej. Teraz możesz używać zmiennych dla każdej właściwości warstwy, ukrywać lub pokazywać warstwy i cieszyć się inteligentniejszymi tytułami warstw — wszystko po to, aby dać ci większą kontrolę i czystsze dane wyjściowe.

Zmienne dla właściwości warstw Teraz możesz deklarować zmienne dla takich rzeczy jak pozycja, rozmiar, kolor i tekst. Po prostu włącz „Deklaruj zmienne”, a te właściwości zostaną wyciągnięte jako zmienne na górze twojego kodu. Nazwy zmiennych opierają się na tytułach warstw — więc nazywaj je dobrze.

Ukrywanie/pokazywanie warstw Nowa ikona oka na liście warstw pozwala przełączać widoczność. Ukryte warstwy w ogóle nie pojawią się w danych wyjściowych.

Inteligentne tytuły warstw dla tekstu Domyślnie treść warstwy tekstowej staje się jej tytułem. Ale jeśli zmienisz tytuł, ma on pierwszeństwo na liście, co utrzymuje porządek.

🔧 Poprawki

  • Zaokrąglone rogi są teraz renderowane z dokładnością co do piksela
  • Podwójne cudzysłowy w warstwach tekstowych są poprawnie escape'owane
  • ESPHome ma teraz lepszą logikę zmiennych i nazewnictwo obrazów

Daj mi znać, co myślisz — i jak zawsze dziękuję, że jesteś częścią tej podróży!

Fakt jest taki, że Lopaka istnieje tylko dzięki twojemu wsparciu.

Jeśli podoba ci się to, co robię, istnieje wiele opcji wsparcia rozwoju Lopaka:

Jak używać zmiennych w praktyce ​

Zmienne zamieniają statyczną makietę w ekran, który twój firmware może aktualizować. Typowym przykładem jest odczyt temperatury: projektujesz układ raz, a potem zmieniasz tekst i kolor w czasie działania, nie dotykając kodu rysującego.

  1. Zaznacz warstwę, na przykład warstwę tekstową pokazującą 23°C.
  2. W Inspektorze kliknij przełącznik zmiennej obok właściwości, którą chcesz kontrolować, na przykład text, x, y lub color.
  3. Włącz Deklaruj zmienne w Ustawieniach kodu.

Lopaka przenosi te wartości na górę wygenerowanego kodu jako deklaracje z typami, a wywołania rysujące odwołują się do nich:

cpp
const char* temp_text = "23°C";
int temp_x = 10;

display.setCursor(temp_x, 20);
display.print(temp_text);

Nazwy zmiennych pochodzą od nazwy warstwy i właściwości, na przykład temp_text. Zmieniaj nazwy warstw, zanim skopiujesz kod do swojego projektu, ponieważ późniejsza zmiana nazwy warstwy zmienia nazwy jej zmiennych.

Ukryte warstwy i nakładki ​

Ukryte warstwy przydają się do trzymania alternatywnych stanów na tym samym ekranie, takich jak ikona błędu lub ostrzeżenie o niskim poziomie baterii, bez eksportowania ich. Dla obrazów referencyjnych, na których odrysowujesz, użyj opcji Nakładka: warstwa jest przyciemniona na obszarze rysowania i pomijana w kodzie.

Zobacz Generowanie kodu, aby poznać pełną listę opcji, oraz przewodnik po ESPHome, aby dowiedzieć się, jak używać zmiennych z danymi z czujników.