Qt 5.15 kadra eldono

Enkondukita liberigo de transplatforma kadro Qt 5.15. La fontkodo por Qt-komponentoj estas disponigita sub la LGPLv3 kaj GPLv2-licencoj. Nova branĉo de Qt 6 estos publikigita en decembro, en kiu atendita gravaj arkitekturaj ŝanĝoj. Por glatigi la estontan transiron al la branĉo Qt 6, Qt 5.15 inkluzivas antaŭprezentojn de iuj novaj funkcioj kaj aldonis avertojn pri la baldaŭa malrekomendiĝo de funkcieco planita por forigo en Qt 6.

Qt 5.15 estas klasifikita kiel Longdaŭra Subteno (LTS) eldono. Samtempe, por la komunumo ĝisdatigoj al branĉo 5.15 estos publikigita nur ĝis la sekva signifa numero formiĝos, t.e. ĉirkaŭ ses monatoj. La plilongigita LTS-ciklo, kiu implikas generi ĝisdatigojn dum trijara periodo, estos limigita al uzantoj kun komerca licenco (5508 USD jare por programisto por regulaj kompanioj, kaj 499 USD jare por noventreprenoj kaj malgrandaj entreprenoj). La Qt Firmao ankaŭ konsiderata la kapablo ŝanĝi al la distribua modelo Qt, en kiu ĉiuj eldonoj dum la unuaj 12 monatoj estos distribuitaj nur al uzantoj de komercaj licencoj. Sed ĝis nun ĉi tiu ideo ne preterpasis diskuton.

Ĉefa novigoj en Qt 5.15:

  • Laboro daŭris pri kreado de abstraktita grafika API kiu ne dependas de la 3D API de la operaciumo. Ŝlosila komponanto de la nova grafika stako Qt estas la scenbildiga motoro, kiu uzas la tavolon RHI (Rendering Hardware Interface) por funkciigi Qt Quick-aplikaĵojn ne nur per OpenGL, sed ankaŭ aldone al la Vulkan, Metalo kaj Rekta 3D-APIoj. En 5.15, la nova grafika stako estas ofertita en formo de opcio, kiu havas la statuson de "Teknologia Antaŭrigardo".
  • Plena modulo subteno provizita Qt Rapida 3D, de kiu la signo de eksperimenta evoluo estis forigita. Qt Quick 3D disponigas unuigitan API por krei uzantinterfacojn bazitajn sur Qt Quick kiuj kombinas 2D kaj 3D grafikelementojn. La nova API permesas vin uzi QML por difini 3D-interfacajn elementojn sen uzi la UIP-formaton. En Qt Quick 3D, vi povas uzi unu rultempon (Qt Quick), unu scenaranĝon kaj unu animacian kadron por 2D kaj 3D, kaj uzi Qt Design Studio por vida interfaco. La modulo solvas problemojn kiel grandajn superŝarĝojn kiam oni integras QML kun enhavo de Qt 3D aŭ 3D Studio, kaj disponigas la kapablon sinkronigi kuraĝigojn kaj transformojn ĉe la kadronivelo inter 2D kaj 3D.

    Novaj funkcioj aldonitaj al Qt Quick 3D inkluzivas subtenon por post-pretigaj efikoj, C++ API por geometria manipulado, rotacia API bazita sur la QQuaternion-klaso kaj subteno por punktlumoj. Por taksi la diversajn funkciojn de Qt Quick 3D preparita speciala demo-aplikaĵo montranta kiel vi povas ŝanĝi tipojn kaj fontojn de lumigado, uzi kompleksajn modelojn, manipuli teksturojn, materialojn kaj kontraŭ-aliasing. Samtempe proponis liberigi medio por dizajni la uzantinterfacon de Qt Design Studio 1.5, kiu provizas plenan subtenon por Qt Quick 3D.


  • En Qt QML la laboro estis koncentrita en preparo por Qt 6. La kapablo uzi ecojn kun la "postulata" atributo en komponantoj, kies instalado estas deviga, estis efektivigita. La qmllint-utilo plibonigis la generacion de avertoj pri eblaj problemoj en QML-kodo. Aldonita la qmlformat ilo, kiu faciligas formati QML-kodon laŭ kodigstilaj gvidlinioj. Certigita kongruo de QML kun la eldono Qt por mikroregiloj.
  • En Qt Quick, subteno por kolorspacoj estis aldonita al la Bilda elemento. Nova PathText-elemento estis aldonita al Qt Quick Shapes.
    CursorShape-posedaĵo estis aldonita al la montrilo, per kiu vi povas ŝanĝi la formon de la muskursoro sur labortablaj sistemoj. Aldonis HeaderView-elementon por faciligi aldoni vertikalajn kaj horizontalajn kapliniojn al TableView-bazitaj tabeloj.

  • Kliento-flanka fenestra ornamado (CSD) subteno estis signife plibonigita, permesante al aplikaĵo difini siajn proprajn fenestroornamadojn kaj meti specialadaptitan enhavon en la fenestra titolbreto.
  • Modulo stabiligita Qt Lottie, kiu provizas altnivelan QML-API, kiu ebligas al vi bildigi grafikaĵojn kaj kuraĝigojn eksportitajn en JSON-formato uzante la kromaĵon Bodymovin por Adobe After Effects. Danke al QtLottie, dezajnisto povas prepari animaciajn efikojn en oportuna aplikaĵo, kaj programisto povas rekte konekti eksportitajn dosierojn al la aplika interfaco de QtQuick. QtLottie inkluzivas enkonstruitan mikromotoron por plenumi kuraĝigon, tondadon, tavoligon kaj aliajn efikojn. La motoro estas alirebla per la LottieAnimation QML-elemento, kiu povas esti kontrolita de QML-kodo en la sama maniero kiel iu alia QtQuick-elemento.
  • La retumilo Qt WebEngine estis ĝisdatigita al la kodbazo Kromio 80 (en branĉo 5.14 Kromio 77 estis uzata, la nuna versio estas Kromio 83).
  • La Qt 3D-modulo plibonigis profiladon kaj sencimigajn ilojn.
  • Qt Multimedia aldonis subtenon por plursurfaca bildigo.
  • En Qt GUI, bildskalo kaj transformoperacioj nun estas multfadenaj en multaj kazoj.
  • Qt Network aldonis subtenon por kutimaj tempo-tempoj kaj sesiaj ŝparvojoj en TLS 1.3 (Sesio-Bileto, permesas al vi rekomenci seancon sen konservi staton ĉe la servilo).
  • Ebligis Qt Core, QRunnable kaj QThreadPool por labori kun std::function. Aldonita nova metodo QFile::moveToTrash() por movi erojn al la rubujo, konsiderante la specifaĵoj de malsamaj platformoj.
  • En Qt por Android aldonis Subteno por denaskaj dialogoj por malfermi kaj konservi dosierojn.

fonto: opennet.ru

Aldoni komenton