Lansarea framework-ului Qt 5.15

Prezentat lansarea unui cadru multiplatformă Qt 5.15. Texte originale ale componentelor Qt sunt livrate sub licențele LGPLv3 și GPLv2. În decembrie va fi lansată o nouă ramură Qt 6, în care se așteaptă schimbări arhitecturale semnificative. Pentru a facilita tranziția viitoare la ramura Qt 6, Qt 5.15 include implementări preliminare ale unor noutăți și avertismente privind încetarea suportului pentru funcționalitățile care urmează să fie eliminate în Qt 6.

Qt 5.15 este clasificat ca o versiune cu suport pe termen lung (LTS). Astfel, pentru comunitate, actualizările ramurii 5.15 vor fi publicate doar până la formarea următoarei versiuni majore, adică aproximativ șase luni. Ciclu LTS extins, care preconizează crearea de actualizări pe parcursul a trei ani, va fi limitat la utilizatorii cu licență comercială (pentru companiile obișnuite — $5508 pe an pentru un dezvoltator, iar pentru startup-uri și micile întreprinderi — $499 pe an). Compania Qt Company a mai considerat posibilitatea de a trece la un model de distribuție Qt, în care toate versiunile din primele 12 luni vor fi disponibile doar pentru utilizatorii cu licențe comerciale. Dar deocamdată această idee nu a avansat mai departe de discuții.

Principalele noutățile Qt 5.15:

  • S-a continuat lucrul la crearea unei API grafice abstractizate, independentă de API-ul 3D al sistemului de operare. Componenta cheie a noului stiv de grafică Qt este motorul de randare a scenelor, care folosește un strat RHI (Rendering Hardware Interface) pentru a asigura funcționarea aplicațiilor Qt Quick nu doar cu OpenGL, ci și peste API-uri Vulkan, Metal și Direct 3D. În 5.15, noul stiv de grafică este oferit sub forma unei opțiuni cu statut de „Preview Tehnologic”.
  • S-a asigurat suport complet pentru modulul Qt Quick 3D, de la care a fost eliminată eticheta de dezvoltare experimentală. Qt Quick 3D oferă o API unificată pentru crearea interfețelor utilizatorului bazate pe Qt Quick, combinând elemente de grafică 2D și 3D. Noua API permite utilizarea QML pentru a defini elemente 3D ale interfețelor fără a folosi formatul UIP. În Qt Quick 3D, pentru 2D și 3D poate fi utilizat un singur runtime (Qt Quick), un singur layout de scenă și un singur cadru de animație, și pentru dezvoltarea vizuală a interfeței se poate folosi Qt Design Studio. Modulul rezolvă probleme precum cheltuielile mari de integrare a QML-ului cu conținut din Qt 3D sau 3D Studio și oferă posibilitatea de sincronizare a animațiilor și transformărilor la nivelul cadrelor individuale între 2D și 3D.

    Printre noile funcționalități adăugate în Qt Quick 3D se numără suportul pentru efectele de post-procesare, API C++ pentru gestionarea geometriei, API pentru rotație bazat pe clasa QQuaternion și suport pentru surse de lumină punctuale. Pentru a evalua diferitele capacități ale Qt Quick 3D a fost pregătit aplicația demo specială, care arată cum pot fi modificate tipurile și sursele de iluminare, folosind modele complexe, manipulând texturi, materiale și smoothing. În același timp sub licența MIT. Instrumentul utilizează metode de învățare automată, împreună cu analiza statică și dinamică a codului JavaScript. Se afirmă că utilizarea învățării automate a permis îmbunătățirea semnificativă a preciziei în identificarea codului pentru identificarea ascunsă și a identificat cu 26% mai multe scripturi problematice lansare mediului pentru proiectarea interfeței utilizatorului, Qt Design Studio 1.5, care oferă suport complet pentru Qt Quick 3D.


    Redați video
  • În Qt QML, activitatea a fost concentrată pe pregătirea pentru Qt 6. A fost implementată posibilitatea utilizării proprietăților în componente cu eticheta ‘required’, a căror setare este obligatorie. În utilitarul qmllint, au fost îmbunătățite generarea avertismentelor cu privire la problemele posibile din codul QML. A fost adăugat utilitarul qmlformat, care simplifică formatul codului QML conform recomandărilor de stil. Compatibilitatea QML cu ediția Qt pentru microcontrolere.
  • În Qt Quick, elementul Image a primit suport pentru spații de culori. În Qt Quick Shapes a fost adăugat un nou element PathText.
    În handlerul pointer-ului a fost adăugată proprietatea cursorShape, care permite schimbarea formei cursorului de pe sistemele desktop. A fost adăugat elementul HeaderView pentru a simplifica adăugarea capetelor verticale și orizontale în tabele bazate pe TableView.
  • Suportul pentru decorarea feroneriilor pe partea clientului (CSD) a fost semnificativ îmbunătățit, permițând aplicației să definească propriile elemente de stilizare a feroneriilor și să plaseze conținut personalizat în antetul feroneriilor.
  • Modulul a fost stabilizat Qt Lottie, oferind o API extinsă pentru QML, care permite redarea graficii și animației exportate în format JSON prin pluginul Bodymovin pentru Adobe After Effects. Datorită QtLottie, designerul poate pregăti efecte de animație în aplicația sa preferată, iar dezvoltatorul le poate conecta direct la interfața aplicațiilor QtQuick. QtLottie include un micro-motor încorporat pentru executarea animațiilor, tăierii, procesării straturilor și altor efecte. Motorul este accesibil prin elementul QML LottieAnimation, care poate fi controlat din cod QML, similar cu orice alte elemente QtQuick.
  • Motorul browserului Qt WebEngine a fost actualizat la baza de cod Chromium 80 (în ramura 5.14 a fost utilizat Chromium 77, versiunea actuală fiind Chromium 83).
  • În modulul Qt 3D, au fost îmbunătățite instrumentele de profilare și depanare.
  • În Qt Multimedia a fost adăugată suportul pentru redarea pe mai multe suprafețe.
  • În Qt GUI, operațiunile de scalare și transformare a imaginii sunt acum efectuate în mod multi-thread în multe cazuri.
  • În Qt Network a fost adăugată suportul pentru timeout-uri personalizabile și scurtături de sesiune în TLS 1.3 (Session Ticket, permit reluarea sesiunilor fără a salva starea pe server).
  • S-a asigurat posibilitatea de a utiliza Qt Core, QRunnable și QThreadPool cu std::function. A fost adăugată o nouă metodă QFile::moveToTrash() pentru a muta elemente în coșul de gunoi, ținând cont de specificul diferitelor platforme.
  • În Qt pentru Android a fost adăugată suportul pentru dialoguri native pentru deschiderea și salvarea fișierelor.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster