Udgivelse af Qt 5.15 rammeværket

Præsenteret Udgivelse af det tværplatforms framework Qt 5.15. Kildekoderne til Qt komponenter leveres under licenserne LGPLv3 og GPLv2. I december vil den nye version Qt 6 blive offentliggjort, hvori der forventes betydelige arkitektoniske ændringer. For at lette overgangen til Qt 6 er der i Qt 5.15 inkluderet tidlige implementeringer af nogle nyheder, og der er tilføjet advarsler om den nært forestående ophør af understøttelsen af funktionalitet, der er planlagt til at blive fjernet i Qt 6.

Qt 5.15 er klassificeret som en udgave med langvarig support (LTS). Opdateringer til version 5.15 vil blive offentliggjort kun indtil næste store udgivelse, dvs. ca. seks måneder. Den udvidede LTS-cyklus, der indebærer, at opdateringer dannes i løbet af tre år, vil være begrænset til brugere med kommercielle licenser (for almindelige virksomheder — $5508 om året pr. udvikler, og for startups og små virksomheder — $499 om året). Qt Company har også overvejet muligheden for at skifte til en distributionsmodel for Qt, hvor alle udgivelser inden for de første 12 måneder kun vil blive distribueret til brugere med kommercielle licenser. Men indtil videre er denne idé ikke kommet længere end til diskussion.

Vigtige nyhederne i Qt 5.15:

  • Arbejdet med at skabe et abstrakt grafisk API, der ikke er afhængigt af operativsystemets 3D API, er fortsat. En central komponent i den nye grafiske stak af Qt er en scene- rendering motor, der bruger RHI (Rendering Hardware Interface) lag for at sikre, at Qt Quick- applikationer fungerer ikke kun med OpenGL, men også med API'er som Vulkan, Metal og Direct 3D. I 5.15 er den nye grafiske stak tilbudt i form af en mulighed med status som "Technology Preview".
  • Der er sikret fuld support af modulet Qt Quick 3D, fra hvilken det blev fjernet eksperimentelle udviklingsmærke. Qt Quick 3D tilbyder et ensartet API til at skabe brugergrænseflader baseret på Qt Quick, der kombinerer 2D- og 3D-grafik. Det nye API gør det muligt at bruge QML til at definere 3D-elementer i brugergrænseflader uden brug af UIP-formatet. I Qt Quick 3D kan der anvendes en runtime (Qt Quick) til såvel 2D som 3D, én sceneramme og én animationsramme, og der kan bruges Qt Design Studio til visuel udvikling af brugergrænsefladen. Modulet løser problemer som store omkostninger ved integration af QML med indhold fra Qt 3D eller 3D Studio og muliggør synkronisering af animationer og transformationer på niveau med individuelle billeder mellem 2D og 3D.

    Blandt de nye funktioner, der er tilføjet i Qt Quick 3D, nævnes understøttelse af post-processing effekter, C++ API til styring af geometri, et rotations-API baseret på klassen QQuaternion, og understøttelse af punktlyskilder. For at vurdere de forskellige muligheder i Qt Quick 3D. forberedt en speciel demonstrationsapplikation, der viser, hvordan man kan ændre typer og kilder til belysning, bruge komplekse modeller, manipulere teksturer, materialer og glatning. Samtidig. er blevet foreslået udgaven miljøet til design af brugergrænseflader Qt Design Studio 1.5, der implementerer fuld support for Qt Quick 3D.


    Afspil video
  • I Qt QML arbejdet var fokuseret på forberedelserne til Qt 6. Muligheden for at anvende egenskaber med mærket ‘required’ i komponenter, som skal indstilles, er blevet implementeret. I værktøjet qmllint er advarselsgenereringen forbedret vedrørende mulige problemer i QML-koden. Et værktøj, qmlformat, er blevet tilføjet for at forenkle formateringen af QML-koden i henhold til kodestilretningslinjerne. QML er gjort kompatibel med Qt-versionen til mikrocontrollere..
  • I Qt Quick er der tilføjet understøttelse af farverum til Image-elementet. I Qt Quick Shapes er der tilføjet et nyt element PathText.
    Der er tilføjet en cursorShape-egenskab til pegeren, som gør det muligt at ændre musens cursorform på desktopsystemer. Elementet HeaderView er blevet tilføjet for at forenkle tilføjelsen af vertikale og horisontale overskrifter til tabeller baseret på TableView.
  • Støtte til dekoration af vinduer på klientsiden (CSD) er betydeligt forbedret, hvilket gør det muligt for applikationen at definere egne vinduesdesign-elementer og placere vilkårligt indhold i vinduets titel.
  • Modulet er stabiliseret Qt Lottie, der leverer en udvidet API til QML, som muliggør rendering af grafik og animationer, der er eksporteret i JSON-format ved hjælp af Bodymovin-plugin'et til Adobe After Effects. Takket være QtLottie kan designeren forberede animations-effekter i det program, der passer dem bedst, mens udvikleren direkte kan integrere de eksporterede filer i QtQuick-applikationsgrænseflader. QtLottie inkluderer en indbygget mikromotor til udførelse af animationer, opklipning, lagbehandling og andre effekter. Motoren er tilgængelig via QML-elementet LottieAnimation, som kan styres fra QML-kode på samme måde som andre QtQuick-elementer.
  • Browser-motoren Qt WebEngine er opdateret til kodebasen Chromium 80 (i version 5.14 blev Chromium 77 brugt, den aktuelle version er Chromium 83).
  • I Qt 3D er værktøjerne til profilering og debugging forbedret.
  • Qt Multimedia tilføjer støtte til rendering til flere overflader.
  • I Qt GUI udføres nu skalering og billedtransformationsoperationer i mange tilfælde i multitrådet tilstand.
  • I Qt Network er der tilføjet support til tilpassede tidsgrænser og sessionsgenveje i TLS 1.3 (Session Ticket, tillader genoptagelse af sessionen uden at gemme tilstand på serversiden).
  • Der er sikret mulighed for, at Qt Core, QRunnable og QThreadPool arbejder med std::function. Der er tilføjet en ny metode QFile::moveToTrash() til at flytte elementer til papirkurven med hensyn til specifikationen på forskellige platforme.
  • I Qt til Android tilføjet støtte til native dialoger til åbning og gemning af filer.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster