blog.michalt.pl

Dzień 5: Poszperajmy trochę w plikach, ale nie tylko

24.03.2022 12:46 Tech

W tym wypadku nie podam nazwy projektu, ale bardzo chętnie o nim opowiem. :) Prace rozpocząłem jesienią ubiegłego roku i postanowiłem, że będzie to pierwsza moja aplikacja napisana z wykorzystaniem frameworka Qt w wersji 6. Niestety, zawirowania związane z Qt o których wspomniałem we wczorajszym wpisie oraz chęć poszerzania horyzontów programistycznych popchnęły mnie do stworzenia czegoś takiego jak system framework. Tu Qt dostarcza tu głównie interfejs graficzny oraz jeden dosyć duży komponent o którym wspomnę później, resztę robi napisana przeze mnie logika oraz zewnętrzne biblioteki, co sprawia, że w razie ewentualnych problemów licencyjnych, ograniczam straty w projekcie do minimum i będę mógł szybko przenieść GUI np. na GTK lub… Pawsa? :D



...przejdźmy do meritum…

menedżer plików - okno

Powyższy obrazek chyba wyczerpująco wyjaśnia z czym mamy do czynienia. Jest to minimalistyczny menedżer plików, który przy okazji pozwala na przeglądanie stron WWW – i tu pojawia się ten drugi istotny komponent – QtWebEngine. Być może spróbuję się go pozbyć i dokleić w nieco inny sposób silnik Blink. Twórcy Qt nie za bardzo dbają o jego świeżą wersję w swoim rozwiązaniu. Aplikacja została napisana w języku C++ i działa zarówno pod systemem Windows jak i dystrybucjami Linuksa.


menedżer plików - okno - kosz

Tu podobnie do wcześniejszych projektów mamy do czynienia z bardzo wczesnym stadium, jednak nie jest ono równie wczesne co we wczorajszym projekcie. Aplikacja oferuje dosyć swobodne zarządzanie plikami w kartach: kopiowanie, tworzenie nowych, przenoszenie do kosza, opróżnianie kosza, sprawdzanie właściwości pliku i zmiana jego nazwy.

menedżer plików - okno  - właściwości pliku

Ponadto możemy listować i przemieszczać się po podmontowanych dyskach. Oprócz przenoszenia pliku do kosza, z poziomu menu kontekstowego możemy trwale go usunąć.

menedżer plików - okno - dyski

Katalogi możemy otwierać w nowych kartach. Widok plików posiada 2 tryby: listy i kafelków. Każda z kart posiada własną historię po której można nawigować przy użyciu strzałek. Historia karty jest współdzielona z historią przeglądarki WWW. Obecnie tryb przeglądarki internetowej poza wyświetlaniem stron nie pozwala na wiele więcej. W tym trybie z poziomu menu kontekstowego można zaznaczyć i skopiować całą zawartość strony.

Wygląd

Ostatnie zmiany to duża zasługa mojej żony, która swoimi sugestiami pomogła mi nadać aplikacji o wiele ładniejszy wygląd.

menedżer plików - okno - przeglądarka WWW

Wcześniej wyglądała tak:

okno z poprzedniej wersji

...a gdy rozpocząłem nad nią prace, wyglądała tak:

pierwszy widok okna

W ramach projektu przygotowałem również ikony, które będą dalej dopracowywane i rozwijane.

ikony

Obecnie aplikacja znajduje się na etapie kamieni milowych. Mam nadzieję wydać ją publicznie jeszcze w tym roku. Nie jestem pewien czy część zaimplementowanych rozwiązań nie zostanie zablokowana do momentu lepszego ich dopracowania. Zaprezentowane tu stadium to zaledwie połowa prototypowej roadmapy. Poza prototypem pojawią się jeszcze wydania testowe. Ta aplikacja jest jednym z puzzli układających się w większą całość, o czym przekonacie się już jutro.

To na tyle w tym wpisie.
Do przeczytania jutro! :)