Add Qt6 module sources (svg, shadertools, declarative, httpserver, multimedia)

Consolidate the BB10 Qt module sources into this repo alongside qtbase so the
full Qt6 cross-build is reproducible from one place (previously separate,
unpushed sibling repos that could be lost). v6.8.3 + BB10 patches:
- qtshadertools: SPIRV-Cross langinfo guard for QNX.
- qtmultimedia: drop QNX audio backend block.
- qtsvg/qtdeclarative/qthttpserver: pristine (no source patches needed).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
bb10
BB10 Port 2026-06-23 01:14:15 +02:00
parent 822d9e204c
commit 0d2227012e
56632 changed files with 4058509 additions and 0 deletions

View File

@ -0,0 +1,588 @@
Qt Frame Agreement
Version 2024-02
1. PARTIES OF THIS AGREEMENT
1.1. This Qt Frame Agreement—comprised of these general terms together with the appendices attached hereto, (hereinafter “Agreement”) is made by and between: The Qt Company, as defined below (hereinafter ”The Qt Company”) AND Customer name (hereinafter “Customer"):___________________ Business Id (e.g. VAT or EIN number):___________________
1.2. The parties above are hereinafter individually referred to as a "Party" and collectively as the "Parties".
2. STRUCTURE AND OBJECT OF THE AGREEMENT
2.1. The Parties have entered into this Agreement to agree on the terms and conditions applicable to The Qt Company's delivery of products and services ("Services") to Customer.
2.2. This Agreement is comprised of the following components:
(i) This Agreement, which contains the general terms applicable to all Services,
(ii) Appendices for each of the Services, containing terms applicable to that individual set of Services ("Service Terms"),
(iii) a Qt Appendix for Pricing, if applicable, which contains pricing for specific Services, and
(iv) other topic-specific appendices, such as Support or Marketing Rights.
2.3. Any and all Services purchased shall be specified in, and agreed upon between, the Parties under a separate purchase order, statement of work, quote, or similar document ("Purchase Document"). Each Purchase Document concluded under this Agreement shall include a reference to this Agreement and be governed by this Agreement.
3. DEFINITIONS
3.1. "Affiliate" of a Party shall mean an entity (i) which is directly or indirectly controlling such Party; (ii) which is under the same direct or indirect ownership or control as such Party; or (iii) which is directly or indirectly owned or controlled by such Party. For these purposes, an entity shall be treated as being controlled by another if that other entity has fifty percent (50 %) or more of the votes in such entity, is able to direct its affairs and/or to control the composition of its board of directors or equivalent body.
3.2. "Contractor" shall mean third-party consultants, distributors and contractors performing services to Customer under an applicable contractual arrangement.
3.3. "Customer" shall mean the individual or legal entity specified in Section 1 above, that is a Party to this Agreement.
3.4. "Force Majeure Event" shall have the meaning set forth in Section 11.7.
3.5. "Licensed Software" shall mean The Qt Company's commercial software product which is licensed for use by Customer under this Agreement and corresponding Service Terms. Licensed Software shall include, if and to the extent applicable and specified in the applicable relevant Service Terms, corresponding online or electronic documentation, associated media and printed materials, including the source code, and example programs. The Qt Company may in the course of its development activities, at its free and absolute discretion and without any obligation to send or publish any notifications to Customer or in general, make changes, additions or deletions in the components and functionalities of the Licensed Software, provided that no such changes, additions or deletions will affect the already released version of the Licensed Software, but only upcoming version(s). Licensed Software is commercial computer software, developed at private expense and offered to the public under standard commercial terms.
3.6. "Professional Services" shall mean The Qt Company's professional-, consulting-, training- and/or project services delivered to Customer under this Agreement and specified in a Purchase Document.
3.7. "Support" shall mean maintenance and support services provided by The Qt Company to assist Customer in using the Licensed Software, as further specified in the Appendix for Support Terms.
3.8. "The Qt Company" shall mean:
(i) in the event Customer is an entity residing in the United States or a legal entity incorporated in or having its headquarters in the United States, The Qt Company Inc., a Delaware corporation with its office at 3031 Tisch Way, 110 Plaza West, San Jose, CA 95128, USA.; or
(ii) in the event Customer is an entity residing outside of the United States or a legal entity incorporated or having its registered office outside of the United States, The Qt Company Oy., a Finnish company with its registered office at Miestentie 7, 02150 Espoo, Finland.
4. PRICES AND PAYMENT
4.1. The Qt Company agrees to make Services available to Customer subject to the prices set forth in the Appendix for Pricing. In the event that the Appendix for Pricing does not include a price for certain Services, the applicable price shall be the price agreed by the Parties in the respective Purchase Document.
4.2. All prices are exclusive of value added tax or other taxes, levels, or duties. Value added tax as well as other possible public charges imposed by authorities shall be added to the prices.
4.3. All fees under this Agreement are non-cancellable and non-refundable.
4.4. All fees under this Agreement shall be paid by Customer no later than thirty (30) days from the date of the applicable invoice from The Qt Company.
4.5. Unless otherwise agreed or provided in the respective Service Terms or Purchase Document, The Qt Company will invoice fees for:
4.5.1. Licensed Software and Support in advance upon conclusion of the Purchase Document, and
4.5.2. Professional Services monthly in arrears after the Service has been performed.
4.6. A late payment charge of the lower of: (a) one percent (1%) per month; or (b) the highest interest rate stipulated by applicable law, shall be charged on any unpaid balances that remain past due and which have not been disputed by Customer in good faith within thirty (30) days of receipt of invoice from The Qt Company.
4.7. The Qt Company may either (i) invoice Customer based on existing agreement, (ii) request Customer to place a purchase order corresponding to a quote by The Qt Company, or (iii) use Customer's stored Credit Card information to automatically charge the Customer for the relevant Renewal Term.
4.8. Unless and to the extent otherwise agreed in the Appendix for Pricing or in the Purchase Document, The Qt Company shall be entitled to adjust the prices set forth in the Appendix for Pricing by notifying Customer of the change in writing at least sixty (60) days before the effective date of the change. The change shall not affect the current pricing term of Services agreed upon before the effective date of the change.
5. CONFIDENTIALITY
5.1. The Parties shall keep confidential, and shall not use or disclose to any unauthorized third parties, the existence and content of this Agreement as well as any Confidential Information received from the other Party or otherwise learned in connection with the Agreement or the performance of the Services, without the prior written consent of the other Party. Confidential Information shall mean information that is designated as confidential or that would be reasonably understood to be confidential given the circumstances of disclosure and the nature of the information. The Parties shall not use Confidential Information received from the other Party for any other purposes than the performance of the Agreement or the fulfilment of their rights and obligations hereunder.
5.2. Each Party shall limit access the other Party's Confidential Information only to those of its employees, subcontractors, Contractors, Affiliates or financial or legal advisors who necessarily need access to the Confidential Information for the proper performance of the Party's rights and obligations under the Agreement. Each Party shall ensure that the persons receiving Confidential Information of the other Party are bound by confidentiality obligations not less restrictive than those stipulated herein.
5.3. Each Party shall protect the confidentiality of the other Party's Confidential Information with at least the same degree of security as it exercises to its own confidential information, but no less than a standard of reasonable care.
5.4. The confidentiality obligation stipulated herein shall not be applied to material and information which:
(iii) has become generally available or otherwise public prior to its submission by the other Party;
(iv) becomes generally available or otherwise public due to a reason other than the negligence or omission of the recipient or its personnel or other actions in violation of this Agreement or applicable legislation;
(v) the Party has lawfully received from a third party without any obligation of confidentiality;
(vi) was lawfully in the possession of the receiving Party prior to receipt of the same from the other Party without any obligation of confidentiality related thereto;
(vii) a Party has developed independently without using material or information received from the other Party; or
(viii) a Party must disclose pursuant to law, decree or other order issued by competent regulatory or governmental body or other public authority or a judicial order, in which case the Party shall, to the extent permitted by applicable law, inform the other Party in writing of the disclosure of information prior to such disclosure.
5.5. Each Party shall, upon request of the other Party at any time, including upon termination, cancellation or expiry of the Agreement, promptly destroy or deliver to the other Party any and all the documents, files, copies and material containing Confidential Information of the other Party. Notwithstanding the foregoing, a Party may retain one copy of the Confidential Information in a secure location, if and solely to the extent required to comply with applicable laws or regulations. Any Confidential Information stored in electronic back-up form shall be rendered inaccessible and destroyed in accordance with standard back-up procedures.
6. INTELLECTUAL PROPERTY RIGHTS
6.1. Unless and to the extent expressly provided in the respective Service Terms, this Agreement carries no assignment or license to the intellectual property rights of either Party and all such rights are and shall remain the exclusive property of the Party to whom such rights are vested under applicable law at the signing of this Agreement or thereafter.
6.2. Where The Qt Company's delivery includes any materials owned by a third party, such third party materials shall be governed in all respects by the applicable license terms of such third-party right holders. The Qt Company shall duly inform the Customer whenever such third party materials are included in the Services and of applicable license terms to be followed by the Customer in using such third party materials.
7. FEES AND ORDERING
7.1. Services Fees. Services Fees are described in the Purchase Document.
7.2. Ordering Services.
(i) Customer may purchase Services pursuant to agreed pricing terms or, if no specific pricing terms have been agreed upon, at The Qt Company's standard pricing terms applicable at the time of purchase.
(ii) Unless expressly otherwise agreed, any price or other term quoted to Customer shall only be valid for the thirty (30) days from the date such price has been quoted.
8. LIMITED WARRANTY AND WARRANTY DISCLAIMER
8.1. The Qt Company hereby represents and warrants that: (i) it has the power and authority to grant the rights and licenses granted to Customer under this Agreement; (ii) the Licensed Software will operate materially in accordance with its specifications (as set forth in the applicable product documentation or, where relevant, program description); (iii) Professional Services and Support will be performed in a professional, workmanlike manner pursuant to the Agreement; and (iv) during the ten years prior to the effective date of this Agreement, there have not been any claims alleging that the Licensed Software has infringed any intellectual property rights of a third party and, to the knowledge of The Qt Company as of the effective date of this Agreement, no such infringement exists. These warranties do not apply to issues arising from, or relating to, any third-party materials or Customer's use of the Licensed Software in violation of applicable law or the terms of this Agreement.
8.2. Except to the extent set forth above, the Services are delivered to Customer "as is" and to the maximum extent permitted by applicable law, exclusive of other warranties, whether express, implied, or otherwise. Customer's sole and exclusive remedy and The Qt Company's entire liability for deficiencies or errors in the Services shall be limited, at The Qt Company's option, to correction of the error, replacement of the Services, re-performance of the Service or return of the applicable fees paid for the defective Service for the time period during which Customer was not able to utilize the Service as agreed.
9. LIMITATION OF LIABILITY
9.1. EXCEPT FOR (I) CASES OF GROSS NEGLIGENCE OR INTENTIONAL MISCONDUCT, (II) A BREACH OR VIOLATION OF THE OTHER PARTY'S INTELLECTUAL PROPERTY RIGHTS, OR (III) WHERE REQUIRED BY APPLICABLE LAW, IN NO EVENT SHALL EITHER PARTY BE LIABLE TO THE OTHER PARTY FOR ANY LOST PROFITS, LOSS OF DATA, LOSS OF BUSINESS OR GOODWILL OR ANY OTHER INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE COST, DAMAGES OR EXPENSE OF ANY KIND, HOWSOEVER ARISING UNDER OR IN CONNECTION WITH THIS AGREEMENT.
9.2. EXCEPT FOR (I) CASES OF GROSS NEGLIGENCE OR INTENTIONAL MISCONDUCT, (II) A BREACH OR VIOLATION OF THE OTHER PARTY'S INTELLECTUAL PROPERTY RIGHTS, AND TO THE EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL EITHER PARTY'S TOTAL AGGREGATE LIABILITY UNDER THIS AGREEMENT EXCEED THE AGGREGATE FEES PAID OR PAYABLE TO THE QT COMPANY BY CUSTOMER FOR THE RESPECTIVE LICENSED SOFTWARE OR SERVICE GIVING RISE TO THE LIABILITY. THE FOREGOING LIMITATION WILL NOT APPLY TO CUSTOMER'S OBLIGATION TO PAY THE APPLICABLE FEES CORRESPONDING TO ITS ACTUAL USE OF LICENSED SOFTWARE OR SERVICES.
10. TERM AND TERMINATION
10.1. This Agreement shall enter into force upon signing by both Parties and is effective as of the last date of signature.
10.2. This Agreement shall remain in force until further notice and may be terminated without cause by either Party by no less than three (3) months' prior written notice to the other Party.
10.3. Termination of a particular Purchase Document and the Services governed thereunder shall be stipulated under the applicable Service Terms.
10.4. Either Party may terminate this Agreement with immediate effect, if the other Party:
(i) commits a material breach of the terms of this Agreement (including applicable Service Terms) and has not remedied such breach within a reasonable period of time (which shall be no less than thirty (30) days) of the non-breaching Party's written notice specifying the breach, or
(ii) becomes bankrupt, insolvent or goes into liquidation or debt restructuring.
10.5. Termination of this Agreement shall, as such, have no effect on the validity of any Services ordered and agreed prior to the effective date of such termination, and such Services shall continue to remain in force pursuant to applicable Service Terms (including the terms of this Agreement) for the remainder of the duration of the applicable Service validity term.
11. GOVERNING LAW AND DISPUTE RESOLUTION
11.1. The United Nations Convention on Contracts for the International Sale of Goods will not apply to this Agreement.
11.2. Where this Agreement is concluded with The Qt Company, Inc., a Delaware corporation, the Parties agree that this Section 10.2 will apply. This Agreement will be governed by, and construed in accordance with the laws of the State of California and any controlling United States federal law. Any dispute, controversy or claim arising out of or relating to this contract, including the formation, interpretation, breach or termination thereof, and whether the claims asserted are arbitrable, will be referred to and finally determined by arbitration in accordance with the JAMS International Arbitration Rules. The tribunal will consist of one arbitrator. The place of arbitration will be San Francisco, California, USA. The language to be used in the arbitral proceedings will be English. Judgment upon the award rendered by the arbitrator(s) may be entered in any court having jurisdiction thereof. This Section 10.2 shall not preclude parties from seeking provisional remedies in aid of arbitration from a court of appropriate jurisdiction. Notwithstanding the foregoing, any action by The Qt Company solely to collect license or other fees hereunder may be brought in any court of competent jurisdiction.
11.3. Where this Agreement is concluded with The Qt Company, Oy., a Finnish company, the parties agree that this Section 10.3 will apply. This Agreement shall be construed and interpreted in accordance with the laws of Finland, excluding its choice of law provisions. All disputes arising out of or in connection with this Agreement shall be finally settled in accordance with the laws of Finland, excluding its choice of law provisions. All disputes arising out of or in connection with this Agreement shall be finally settled under the Rules of Arbitration of the International Chamber of Commerce by one or more arbitrators appointed in accordance with the said Rules. The place of arbitration will be Helsinki, Finland. The language to be used in arbitral proceedings will be English. This Section 10.3 shall not preclude parties from seeking provisional remedies in aid of arbitration from a court of appropriate jurisdiction.
12. MISCELLANOUS
12.1. No Assignment. Customer shall not be entitled to assign or transfer all or any of its rights, benefits and obligations under this Agreement except in case of sale of relevant business or assets or otherwise with prior written consent of The Qt Company, which shall not be unreasonably withheld or delayed. The Qt Company shall be entitled to freely assign or transfer any of its rights, benefits or obligations under this Agreement.
12.2. Surviving Sections. Any terms and conditions that by their nature or otherwise reasonably should survive termination of this Agreement shall so be deemed to survive.
12.3. Entire Agreement. This Agreement, its Appendices and any applicable Purchase Documents constitute the complete agreement between the Parties and supersedes all prior or contemporaneous discussions, representations, contracts (including prior License Agreements and similar prior agreements), and proposals, written or oral, with respect to the subject matters discussed herein.
12.4. Subcontractors. The Qt Company may utilize subcontractors in the performance of Services under this Agreement, provided that The Qt Company remains responsible for the performance of the Services and compliance with this Agreement, as well as ensuring that subcontractors are required to abide by relevant restrictions (e.g., confidentiality) set forth in this Agreement.
12.5. Modifications. No modification of this Agreement shall be effective unless contained in a writing executed by an authorized representative of each Party. No standard terms and conditions or provisions of any Customer purchase order or other ordering form that Customer may use in connection with the acquisition of Services will modify or affect this Agreement, the parties agree that any such terms and conditions are void with no legal effect.
12.6. Affiliate Orders. Customer Affiliates may purchase Services via this Agreement as follows:
(i) any purchases by Customer Affiliates from The Qt Company or its Affiliates will create a contractual relationship directly between the relevant The Qt Company entity and the respective ordering Customer Affiliate;
(ii) the entry into a Purchase Document between The Qt Company and Customer Affiliate creates an agreement between The Qt Company and Customer Affiliate and incorporates all terms and conditions of this Agreement as the governing agreement between The Qt Company and Customer Affiliate ("Accession Agreement"): and
(iii) Customer Affiliate will be deemed "Customer" under the terms of this Agreement and all rights and obligations under such Accession Agreement are vested and borne solely by the ordering Customer Affiliate and the relevant The Qt Company entity as contracting parties under such Accession Agreement.
12.7. Force Majeure. Neither Party shall be liable to the other for any delay or non-performance of its obligations hereunder in the event and to the extent that such delay or non-performance is due to an event of act of God, terrorist attack or other similar unforeseeable catastrophic event that prevents either Party for fulfilling its obligations under this Agreement and which such Party cannot avoid or circumvent ("Force Majeure Event"). If the Force Majeure Event results in a delay or non-performance of a Party for a period of three (3) months or longer, then either Party shall have the right to terminate the relevant Purchase Document and Services thereunder with immediate effect without any liability (except for the obligations of payment arising prior to the Force Majeure Event) towards the other Party.
12.8. Notices. Any notice given by one Party to the other shall be deemed properly given and deemed received if specifically acknowledged by the receiving Party in writing or when successfully delivered to the recipient by hand, fax, or special courier during normal business hours on a business day to the addresses specified for each Party in this Agreement. Each communication and document made or delivered by one Party to the other Party pursuant to this Agreement shall be in the English language.
12.9. Attorney Fees. The prevailing Party in any action to enforce this Agreement shall be entitled to recover its attorney's fees and costs in connection with such action.
12.10. Privacy and Security. The Parties commit to and comply with their respective applicable obligations under the privacy and security terms set forth in the Privacy and Security Appendix and relevant Appendices attached hereto.
12.11. Feedback. Customer agrees that, from time to time, The Qt Company, may request feedback from Customer regarding the Services ("Feedback"). Customer may choose to provide Feedback and agrees that The Qt Company may freely use, copy, disclose, and exploit any Feedback. No Feedback will be considered Customer Confidential Information unless explicitly agreed otherwise between the Parties.
12.12. Export Control. Customer acknowledges that the Services, or portions thereof, may be subject to export control restrictions under the applicable laws of respective countries. Customer shall fully comply with all applicable export license restrictions and requirements, economic sanctions restrictions, as well as with all laws and regulations relating thereto, and shall procure all necessary governmental authorizations, including without limitation, all necessary licenses, approvals, permissions, or consents, where necessary (e.g., for re-exportation of the Redistributables, Applications and/or Devices, each as defined in the relevant Service Terms).
12.13. Severability. If any provision of this Agreement shall be adjudged by any court of competent jurisdiction to be unenforceable or invalid, that provision shall be limited or eliminated to the minimum extent necessary so that this Agreement shall otherwise remain in full force and effect and enforceable.
13. APPENDICES
13.1. The following appendices form an integral part of this Agreement. In case of a discrepancy between this Agreement and any of its Appendices, this Agreement shall prevail. In case of discrepancies between the Purchase Document(s) and this Agreement or applicable Service Terms, the terms of this Agreement or the applicable Service Terms shall prevail, except in cases where an express deliberate deviation from the terms of this Agreement or applicable Service Terms has been concluded pursuant to Section 2.3 hereof, in which case the Purchase Document shall prevail.
1. Appendix for Qt Development Framework
2. Appendix for Support Terms https://www.qt.io/terms-conditions/support-terms
3. Appendix for Privacy and Security Terms https://www.qt.io/terms-conditions/privacy-and-security
Appendix for Qt Development Framework
Version 2025-02, compliant with Qt Frame Agreement 2023-06 or later
1. This Appendix for Qt Development Framework is an integral part of the Agreement and specifies the legal terms for the licensing of Licensed Software (as defined below) between The Qt Company and Customer. Entry into this Appendix governs the use of and supersedes any prior contracts between the Parties (including prior License Agreements and similar prior agreements), with respect to Licensed Software governed by this Appendix.
2. DEFINITIONS
2.1. Capitalized words used in this Appendix and not defined below shall have the meanings described in the Agreement.
2.2. “Add-on Products” means The Qt Companys specific add-on software products which are not licensed as part of The Qt Companys standard Services offerings, and are included in the scope of Licensed Software only if specifically agreed between the Parties.
2.3. “Application” means software products created using the Licensed Software, which include the Redistributables, or part thereof.
2.4. “Customers Records” means books and records that contain information bearing on Customers compliance with the Agreement, Customers use of Qt Community Edition and/or the payments due to The Qt Company under the Agreement, including, but not limited to user information, assembly and/or build logs, portions of Licensed Software used, sales records and distribution records.
2.5. “Data Protection Legislation” means the General Data Protection Regulation (EU 2016/679) (GDPR) and any national implementing laws, regulations and secondary legislation, as may be amended or updated from time to time, as well as any other data protection laws or regulations applicable in the relevant territory.
2.6. “Deployment Platforms” means target operating systems and/or hardware specified in the License Certificate, on which the Redistributables can be distributed pursuant to the terms and conditions of this Appendix.
2.7. “Designated User(s)” means the employee(s) of Customer or Customers Affiliates acting within the scope of their employment or Customers Contractors acting within the scope of their services on behalf of Customer.
2.8. “Development License” means the license needed by Customer for each Designated User to use Licensed Software under the license grant in Section 5 of this Appendix. Development Licenses are available per respective Licensed Software product; each product having its designated scope and purpose of use.
2.9. “Development Platforms” means the host operating system(s) specified in the License Certificate, on which Licensed Software can be used under the Development License.
2.10. “Devices” means
(i) hardware or compute units that are manufactured and/or distributed by the Customer, its Affiliates, Contractors, or End Customer, and incorporate or include Licensed Software; or
(ii) Applications which provide Substantial Functionality (as defined below) by communicating, integrating, or otherwise interacting in any way with a hardware or compute unit, regardless of whether the Application is provided together with the hardware or compute unit, or separate therefrom.
For the purpose of defining a Device, “Substantial Functionality” means that a normal, intended or specified operation of a hardware or compute unit is dependent on or limited by the Application.
Devices covered by this Appendix are specified in the Pricing Appendix or Purchase Document. Customers end product may contain more than one Device and require more than one Distribution License per end product.
2.11. “Distribution License(s)” means a royalty-bearing license required for any kind of sale, trade, exchange, loan, lease, rental or other distribution by or on behalf of Customer to a third party (including Affiliates) of a Device pursuant to Section 5.3 of this Appendix. Use of Distribution Licenses is valid for the agreed period (either in perpetuity or for a period defined in the Purchase Document(s)), sold separately for each type of Device, and cannot be used for other types of Devices.
2.12. “Distribution License Packs” means set of prepaid Distribution Licenses as defined in The Qt Companys standard price list, quote, Pricing Appendix or in the Purchase Document, as applicable.
2.13. “End Customer” means Customers customer(s) to whom Customer, directly or indirectly, distributes copies of the Redistributables as integrated or incorporated into Applications or Devices.
2.14. “Evaluation License Term” means a time period specified in the License Certificate for Customer to use the relevant Licensed Software for evaluation purposes according to Section 5.5 of this Appendix.
2.15. “Intellectual Property Rights” means patents (including utility models), design patents, and designs (whether or not capable of registration), chip topography rights and other like protection, copyrights, trademarks, service marks, trade names, logos or other words or symbols, any other form of statutory protection of any kind and applications for any of the foregoing, as well as any trade secrets.
2.16. “License Certificate” means a certificate generated by The Qt Company for each Designated User upon their download of the Licensed Software, which will be available under the respective Designated Users Qt Account at account.qt.io. License Certificates specify relevant information pertaining to the Licensed Software purchased by Customer and the license to the Licensed Software.
2.17. “License Fee” means the fee charged to Customer for rights granted under this Appendix.
2.18. “Licensed Software” means the specified product(s) of Qt Software which Customer has purchased, and which is provided to Customer under the terms of this Appendix and Agreement (including its Exhibits). Licensed Software shall include corresponding online or electronic documentation, associated media and printed materials, including source code (where applicable), example programs and documentation. Licensed Software does not include Third Party Software (as defined in Section 6) or Qt Community Edition. The Qt Company may, in the course of its development activities, at its free and absolute discretion and without any obligation to send or publish any notifications, make changes, additions or deletions in the components and functionalities of the Licensed Software, provided that no such changes, additions or deletions will affect the already released version of the Licensed Software, but only upcoming version(s).
2.19. “License Term” means the agreed validity period of the Development License during which the relevant Licensed Software can be used pursuant to this Appendix. The agreed License Term, as ordered and paid for by Customer, is stated in the applicable License Certificate.
2.20. “Modified Software” has the meaning set forth below in Section 4.
2.21. “Permitted Software” means third party products that are generally available to the public, which may include parts of Qt Community Edition or be developed using Qt Community Edition.
2.22. “Pre-Release Code” has the meaning set forth in Section 7.
2.23. “Prohibited Combination” means any effort to use, combine, incorporate, link or integrate Licensed Software with any software created with or incorporating Qt Community Edition, or use Licensed Software for creation of any such software.
2.24. “Qt Community Edition” means the open source version of Qt Software primarily available under the terms of the GNU Lesser General Public License, version 2.1 or later (“LGPL”) or the GNU General Public License, version 2.0 or later (“GPL”). For clarity, Qt Community Edition shall not be provided, governed or used under this Appendix.
2.25. “Qt Software” means the development and design software of The Qt Company, which The Qt Company makes available under commercial and/or open source licenses as either the “Licensed Software” or the “Qt Community Edition”.
2.26. “Redistributables" means the portions of Licensed Software set forth in Exhibit 1 that may be distributed pursuant to this Appendix in object code form only, including any relevant documentation. Where relevant, any reference to Licensed Software in this Appendix includes and refers to Redistributables.
2.27. “Renewal Term” means an extension of the previous License Term as agreed between the Parties.
2.28. “Submitted Modified Software” has the meaning set forth in Section 4.2 of this Appendix.
2.29. “Third-Party Software" has the meaning set forth in Section 6 of this Appendix.
2.30. “Updates” means a release or version of the Licensed Software containing bug fixes, error corrections and other changes that are generally made available to users of the Licensed Software that have contracted for Support. Updates are generally depicted as a change to the digits following the decimal in the Licensed Software version number. The Qt Company shall make Updates available to Customer under the Support. Updates shall be considered as part of the Licensed Software hereunder.
2.31. “Upgrades” means a release or version of the Licensed Software containing enhancements and new features and are generally depicted as a change to the first digit of the Licensed Software version number. In the event that Upgrades are provided to Customer under this Appendix, they shall be considered as part of the Licensed Software.
3. OWNERSHIP
3.1. Ownership of The Qt Company
3.1.1. The Licensed Software is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The Licensed Software is licensed, not sold.
3.1.2. All of The Qt Company's Intellectual Property Rights are and shall remain the exclusive property of The Qt Company or its respective licensors. No rights to The Qt Companys Intellectual Property Rights are assigned or granted to Customer under this Appendix, except when and solely to the extent expressly specified herein.
3.2. Ownership of Customer
3.2.1. All of Customers Intellectual Property Rights are and shall remain the exclusive property of Customer or its licensors respectively.
3.2.2. Except to the extent set forth in this Appendix, all Intellectual Property Rights to the Modified Software, Applications and Devices (except to Redistributables included therein) shall remain with Customer.
4. MODIFIED SOFTWARE
4.1. Customer may create bug-fixes, error corrections, patches or modifications to the Licensed Software (“Modified Software”). To the extent that Customers Modified Software breaks source or binary compatibility or other functionality with the Licensed Software, Customer acknowledges that The Qt Companys ability to provide Support may be prevented or limited and Customers ability to make use of Updates may be restricted.
4.2. Customer may, at its sole and absolute discretion, choose to submit Modified Software to The Qt Company (“Submitted Modified Software”) in connection with Customers Support request, service request or otherwise. In the event Customer does so, then, Customer hereby grants The Qt Company a sublicensable, assignable, irrevocable, perpetual, worldwide, non-exclusive, royalty-free and fully paid-up license, under all of Customers Intellectual Property Rights, to reproduce, adapt, translate, modify, and prepare derivative works of, publicly display, publicly perform, sublicense, make available and distribute such Submitted Modified Software as The Qt Company sees fit at its free and absolute discretion.
5. LICENSES GRANTED
5.1. Development with Licensed Software
5.1.1. Subject to the terms of the Agreement, The Qt Company grants to Customer a worldwide, non-exclusive, non-transferable license, valid for each License Term, to use, modify and copy the Licensed Software by Designated Users on the Development Platforms for the sole purposes of designing, developing, demonstrating and testing Application(s) and/or Devices, and to provide support, maintenance, updates, and other services related to such Applications and Devices to End Customers. Each Application or Device can only include, incorporate or integrate contributions by Designated Users who are duly licensed for the applicable Development Platform(s) and Deployment Platform(s) (i.e. have a current and valid Development License for the appropriate Licensed Software and only use one type of Development License per Customer Application or Device(s)).
5.1.2. Customer may install copies of the Licensed Software on five (5) computers per Designated User, provided that only Designated Users who have a valid Development License may use the Licensed Software.
5.1.3. Customer may designate another Designated User to replace a then-current Designated User by notifying The Qt Company in writing, where such replacement is due to termination of employment, long-term absence or other permanent reason affecting Designated Users need for Licensed Software.
5.1.4. Upon expiry of the initially agreed License Term, the respective License Term shall be automatically extended by one or more Renewal Term(s), unless and until either Party notifies the other Party in writing, that it does not wish to continue the License Term, such notification to be provided to the other Party no less than thirty (30) days before expiry of the respective License Term. The Qt Company shall, in good time before the due date for the above notification, remind the Customer of the coming Renewal Term. Unless otherwise agreed between the Parties, Renewal Term shall be equal to the length of the previous License Term, but no longer than thirty-six (36) months.
5.1.5. Any such Renewal Term shall be subject to License Fees agreed between the Parties or, if no advance agreement exists, subject to The Qt Companys standard list pricing applicable at the commencement date of any such Renewal Term.
5.2. Distribution of Applications. Subject to the terms of the Agreement, The Qt Company grants Customer a worldwide, non-exclusive, non-transferable, perpetual, royalty-free and revocable (for Customers material breach of the Agreement) right and license to:
(i) distribute, by itself or through its Contractors, Applications for use on the Deployment Platforms; and
(ii) grant End Customers perpetual sublicenses to Redistributables used in Applications solely to the extent necessary for End Customers to use the Applications as intended.
5.3. Distribution of Devices
5.3.1. Subject to the terms of the Agreement, The Qt Company grants Customer a worldwide, non-exclusive, non-transferable, revocable (for Customers material breach of the Agreement), royalty-bearing right and license to:
(i) distribute (including through its Contractors), Devices for use on the Deployment Platforms; and
(ii) grant End Customers perpetual sublicenses to Redistributables used in Devices, solely to the extent necessary for End Customers to use the Devices as intended.
5.3.2. Right to distribute the Devices requires that:
(i) the Devices are created, updated and maintained under a current and valid Development License,
(ii) Customer has purchased corresponding Distribution Licenses before distribution of any Devices to End Customers, and
(iii) the Distribution Licenses are valid for distribution at the date of distribution.
5.4. Further Requirements
5.4.1. The licenses granted in this Section 5 by The Qt Company to Customer are conditional and subject to Customer's compliance with the following terms:
(i) Customer acknowledges that The Qt Company has separate products for the purpose of Applications and Devices respectively, where development and distribution of Devices is only allowed using the correct designated product. Customer shall ensure and bear the burden of proof that Customer is using a correct product entitling Customer to development and distribution of Devices;
(ii) Customer shall not remove or alter any copyright, trademark or other proprietary rights notice(s) contained in any portion of the Licensed Software;
(iii) Applications must add primary and material functionality to Licensed Software so as not to compete with the Licensed Software;
(iv) Applications may not pass on functionality which in any way makes it possible for others to create software with Licensed Software; provided however that Customer may use Licensed Softwares scripting and QML ("Qt Quick") functionality solely in order to enable scripting, themes and styles that augment the functionality and appearance of the Application(s) without adding primary and substantial functionality to the Application(s);
(v) Customer shall not use Licensed Software in any manner or for any purpose that infringes, misappropriates or otherwise violates any Intellectual Property Right or right of any third party, or that violates any applicable law;
(vi) Customer shall not use The Qt Company's or any of its suppliers' names, logos, or trademarks to market Applications, except that Customer may use “Built with Qt” logo to indicate that an Application or Device was developed using Licensed Software;
(vii) Customer shall not distribute, sublicense or disclose source code of Licensed Software to any third party (provided however that Customer may appoint employee(s) of Contractors and Affiliates as Designated Users to use Licensed Software pursuant to this Appendix).
(viii) Customer shall not grant the End Customers a right to: (a) make copies of the Redistributables except when and to the extent required to use the Applications and/or Devices for their intended purpose; (b) modify the Redistributables or create derivative works thereof; (c) decompile, disassemble or otherwise reverse engineer Redistributables; or (d) redistribute any copy or portion of the Redistributables to any third party, except as part of the onward sale of the Application or Device on which the Redistributables are installed;
(ix) Customer shall not and shall cause that its Affiliates, Contractors or End Customers shall not, use Licensed Software in any Prohibited Combination, unless Customer has received specific advance written permission from The Qt Company to do so. Without the written permission of The Qt Company, any and all distribution by Customer of a hardware device or product: a) which incorporates or integrates any part of Licensed Software or Qt Community Edition; or b) where material functionality is provided by software built with Licensed Software or Qt Community Edition or otherwise depends on Licensed Software or Qt Community Edition, shall be considered to be Device distribution under this Appendix and shall be dependent on Customers compliance thereof (including but not limited to the obligation to pay applicable License Fees for such distribution). Notwithstanding the foregoing, Customer is entitled to use and combine Licensed Software with Permitted Software;
(x) Customer shall cause all of its Affiliates, Contractors and End Customers entitled to make use of the licenses granted under this Appendix, to be contractually bound to comply with the relevant terms hereof and not to use the Licensed Software beyond the terms hereof nor for any purposes other than operating within the scope of their services for Customer. Customer shall be responsible for any and all actions and omissions of its Designated Users, Affiliates, Contractors, and End Customers relating to the Licensed Software and use thereof (including but not limited to payment of all applicable License Fees);
(xi) Except when and to the extent explicitly provided in this Section 5, Customer shall not transfer, publish, disclose, display or otherwise make available the Licensed Software; and
(xii) Customer shall not attempt or enlist a third party to conduct or attempt to conduct any of the above.
5.4.2. The above terms shall not be applicable if and solely to the extent they conflict with any mandatory provisions of applicable laws.
5.4.3. Any use of Licensed Software beyond the provisions of this Appendix is strictly prohibited and requires, at a minimum an additional license from The Qt Company (e.g. certain additional rights may be granted under a software development kit “SDK” agreement with regard to limitations of Section 5.4.1 iv, vii or viii).
5.5. Evaluation License
5.5.1. Subject to the terms of this Appendix, The Qt Company grants to Customer a worldwide, non-exclusive, non-transferable license, valid for the Evaluation License Term to use the relevant Licensed Software product solely for Customers internal use to evaluate and determine whether the Licensed Software meets Customer's business requirements, specifically excluding any commercial use of the Licensed Software or any derived work thereof.
5.5.2. Upon the expiry of the Evaluation License Term, Customer must either discontinue use of the relevant Licensed Software or acquire a commercial Development License.
6. THIRD-PARTY SOFTWARE. The Licensed Software may provide links or access to third party libraries or code (collectively "Third-Party Software") to implement various functions. Third-Party Software does not, however, comprise part of the Licensed Software, but is provided to Customer complimentary and use thereof is discretionary for Customer. Third-Party Software will be listed in the ".../src/3rdparty" source tree delivered with the Licensed Software or documented in the Licensed Software, as such may be amended from time to time. Customer acknowledges that use or distribution of Third-Party Software is in all respects subject to applicable license terms of applicable third-party right holders.
7. PRE-RELEASE CODE
7.1. The Licensed Software may contain pre-release code and functionality, or sample code marked or otherwise stated with appropriate designation such as “Technology Preview”, “Alpha”, “Beta”, “Experimental”, “Sample”, “Example” etc. (“Pre-Release Code”).
7.2. Such Pre-Release Code may be provided complimentary for Customer (e.g., to provide experimental support or information for new platforms or preliminary versions of one or more new functionalities). Pre-Release Code may not be at the level of performance and compatibility of a final, generally available, product offering. Pre-Release Code may not operate correctly, may contain errors and may be substantially modified by The Qt Company prior to a commercial product release, if any. The Qt Company is under no obligation to make Pre-Release Code commercially available or provide any Support or Updates relating thereto. To the maximum extent permitted by law, the Qt assumes no liability whatsoever regarding any Pre-Release Code and any use thereof is exclusively at Customers own risk and expense.
7.3. Unless Licensed Software specifies different license terms for the respective Pre-Release Code, Customer is entitled to use such Pre-Release Code pursuant to Section 5 of this Appendix.
8. SUPPORT. Support is provided according to agreed support level and subject to applicable requirements and restrictions, as specified in the Appendix for Support Terms.
9. FEES AND ORDERING: DISTRIBUTION LICENSES
9.1. Unless otherwise agreed in writing, Distribution Licenses shall be purchased by way of Distribution License Packs. Further Distribution License parameters may be set forth in the applicable Pricing Appendix.
9.2. Upon due payment of the ordered Distribution Licenses, Customer will have an account of Distribution Licenses available for distributing Devices during the validity period of the respective Distribution Licenses in accordance with this Agreement.
9.3. Each time Customer distributes a Device, one Distribution License is used and Customers account of available Distribution Licenses is decreased accordingly.
10. RECORD-KEEPING AND REPORTING OBLIGATIONS; AUDIT RIGHTS
10.1. Customers Record-keeping
10.1.1. Customer shall at all times during the term of the Agreement or validity of any of the licenses hereunder, whichever is later, and for a period of two (2) years thereafter, maintain Customers Records in an accurate and up-to-date form. Customers Records shall be adequate to reasonably enable The Qt Company to determine Customers compliance with the provisions of the Agreement. The records shall conform to general good accounting practices.
10.1.2. Customer shall, within thirty (30) days from receiving The Qt Companys request to that effect, deliver to The Qt Company a report based on Customers Records, such report to contain information, in sufficient detail, on: (i) number and identity of users working with Licensed Software or Qt Community Edition, (ii) Devices distributed by Customer during the most recent calendar quarter and/or any other term specified by The Qt Company, and (iii) any other information pertaining to Customers compliance with the terms of the Agreement (e.g. information on products and/or projects relating to use of Licensed Software), as The Qt Company may reasonably require from time to time.
10.2. The Qt Companys Audit Rights
10.2.1. The Qt Company or an independent auditor acting on behalf of The Qt Company may, upon at least thirty (30) days prior written notice and at The Qt Company expense, audit Customer with respect to Customers use of the Licensed Software, but not more frequently than once during each six (6) month period. Such audit may be conducted by mail, electronic means or through an in-person visit to Customers place of business. Any possible in-person audit shall be conducted during regular business hours at Customer's facilities, shall not unreasonably interfere with Customer's business activities and shall be limited in scope to verify Customers compliance with the terms of the Agreement. The Qt Company or its independent auditor shall be entitled to inspect Customers Records and conduct necessary interviews of Customers relevant employees and Contractors. All Customers Records and use thereof shall be subject to the obligation of confidentiality under the Agreement.
10.2.2. If an audit reveals that Customer is using the Licensed Software beyond the scope of the licenses Customer has paid for, Customer shall pay to The Qt Company any amounts owed for such unauthorized use within thirty (30) days from receipt of the corresponding invoice from The Qt Company.
10.2.3. In addition, in the event the audit reveals a material violation of the terms of the Agreement (without limitation, either (i) underpayment of more than 10% of License Fees or 10,000 Euros (whichever is more) or (ii) distribution of products, which include or result from Prohibited Combination, shall be deemed a material violation for purposes of this section), then Customer shall pay The Qt Company's reasonable cost of conducting such audit.
11. TERMINATION
11.1. Termination of Licenses
11.1.1. The Qt Company may terminate Customers rights to any and all Licensed Software (including access to Support), if Customer:
(i) commits a material breach of the Agreement (including this Appendix) and has not remedied the breach within a reasonable period of time (which shall be no less than thirty (30) days) of The Qt Companys written notice specifying the breach, or
(ii) becomes bankrupt, insolvent or goes into liquidation or debt restructuring.
11.1.2. Suspension of rights: Instead of termination, The Qt Company reserves the right to suspend or withhold grants of any and all rights to the Licensed Software (including Support), should Customer fail to make payment in timely fashion or otherwise violate or is reasonably suspected of violating its obligations under the Agreement and/or this Appendix, and where such violation or breach is not cured within ten (10) business days following The Qt Companys written notice thereof.
11.2. Parties´ Rights and Duties upon Termination
11.2.1. Upon expiry or termination of the Development Licenses, Customer shall cease and shall cause all Designated Users (including those of its Affiliates and Contractors) to cease using the relevant Licensed Software.
11.2.2. Upon such expiry or termination of Development Licenses, Customer shall destroy or return to The Qt Company all copies of the respective Licensed Software and all related materials and will certify the same by Customers duly authorized officer to The Qt Company upon its request, provided however that Customer may retain and utilize such copies of the Licensed Software to the extent required to provide Customers continued support to End Customers, for archiving purposes or as is required under applicable law.
11.2.3. Upon expiry of Distribution Licenses, Customer shall cease (including via its Affiliates and Contractors) distribution of Devices.
11.2.4. If Customers distribution rights for Applications and Devices hereunder are terminated by The Qt Company due to Customers material breach, then Customer must cease any distribution of Applications and Devices as of the effective date of termination.
11.2.5. Expiry or termination of any of Customers licenses hereunder for any reason whatsoever shall not:
(i) relieve Customer of its obligation to pay any License Fees accrued or payable to The Qt Company prior to the effective date of termination, and Customer shall pay to The Qt Company all such fees within thirty (30) days from the effective date of termination of the licenses;
(ii) relieve Customer of its obligation to ensure that Customers actions or inactions do not cause Applications and Devices (including those already distributed) to fall out of compliance with the terms of the Agreement; nor
(iii) affect any rights of End Customer to continue use of Applications and Devices (and therein incorporated Redistributables) received by the End Customer before the date of such expiry or termination of Customers rights.
11.3. Extension of Rights under Special Circumstances. In the event that, during the applicable License Term, The Qt Company is declared bankrupt under a final, non-cancellable decision by relevant court of law, and the Agreement is not, at the date of expiry of the Development License(s), assigned to a party who has assumed The Qt Companys position as a legitimate licensor of Licensed Software under the Agreement, then all valid Development Licenses possessed by Customer at such date of expiry, and which Customer has not notified for expiry, shall be extended to be valid in perpetuity under the terms of the Agreement. Any such extension shall not apply to The Qt Companys Support obligations.
EXHIBIT 1, Licensed Software
The modules and tools are specific to each product version respectively and may vary from version to version. Modules and tools included in the latest publicly available version of the respective product at any given time are listed in Exhibit 1 of the latest version of the Qt Frame Agreement available at https://www.qt.io/terms-conditions/qt-dev-framework/exhibit-1. If a new version of Licensed Software does not include a module or tool present in an older version which Customer is entitled to use under a valid license from The Qt Company, then Customer will continue to have such right during the validity of Customers license to relevant Licensed Software. In the event a new version of the Licensed Software adds modules or tools to any previous version(s), Customers rights will extend to cover also such additional modules and tools.
Licensed Software: Developer modules and tools
The modules and/or tools that are included in the latest publicly available version of the respective product at the effective date of this Appendix, Qt for Application Development Professional (ADP), Qt for Application Development Enterprise (ADE), Qt for Device Creation Professional (DCP), Qt for Device Creation Enterprise (DCE), - are marked with X in the below table. Parts of the product that are permitted for distribution in object-code form only (“Redistributables”) are marked with R in the below table.
+-----------------------------------------------------------------------------+
| Modules / Tools | ADP | ADE | DCP | DCE |
+-----------------------------------------------------------------------------+
|Active Qt | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt 3D | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt5 Core Compatibility APIs | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Android Extras | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Bluetooth | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Canvas 3D | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Charts | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Concurrent | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Core | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Data Visualization | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt D-Bus | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt for Python | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt for WebAssembly | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Gamepad | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Graphical Effects | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt GUI | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Help | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Image Formats | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Location | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Lottie Animation | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Mac Extras | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Multimedia | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Multimedia Widgets | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Network | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Network Authorization | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt NFC | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt OpenGL | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt PDF | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Platform Headers | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Positioning | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Print Support | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Purchasing | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt QML | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick 3D | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Controls 1 | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Controls | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Dialogs | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Extras | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Layouts | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Test | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Timeline | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick WebGL | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Widgets | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Remote Objects | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Script | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Script Tools | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt SCXML | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Sensors | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Serial Bus | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Serial Port | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Shader Tools | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Speech | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt State Machine | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt SQL | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt SVG | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Test | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt UI Tools | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Virtual Keyboard | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Wayland Compositor | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt WebChannel | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt WebEngine | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt WebSockets | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt WebView | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Widgets | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Windows Extras | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt X11 Extras | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt XML | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt XML Patterns | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Designer (Qt Widget Designer) | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Linguist | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Assistant | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|lupdate | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|lrelease | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|lrelease | X,R | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt MQTT | | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt KNX | | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt OPC UA | | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt CoAP | | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Insight Tracker | | X,R | X,R | X,R |
+-----------------------------------------------------------------------------+
|Boot 2 Qt stacks | | | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt OTA | | | X,R | X,R |
+-----------------------------------------------------------------------------+
|Device Utilities | | | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Debugging Bridge (QDB) Daemon | | | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Ultralite Controls | | | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Quick Ultralite | | | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Safe Renderer (QSR) | | | X,R | X,R |
+-----------------------------------------------------------------------------+
|Qt Application Manager | | | | X,R |
+-----------------------------------------------------------------------------+
|Qt Interface Framework | | | | X,R |
+-----------------------------------------------------------------------------+
|Neptune Reference UI | | | | X,R |
+-----------------------------------------------------------------------------+
|Qt for Android Automotive OS(QAA) | | | | X,R |
+-----------------------------------------------------------------------------+
|Qt Creator | X | X | X | X |
+-----------------------------------------------------------------------------+
|Qt Design Studio (Professional) | X | X | X | X |
+-----------------------------------------------------------------------------+
|androiddeployqt | X | X | X | X |
+-----------------------------------------------------------------------------+
|androidtestrunner | X | X | X | X |
+-----------------------------------------------------------------------------+
|canbusutil | X | X | X | X |
+-----------------------------------------------------------------------------+
|dumpcpp | X | X | X | X |
+-----------------------------------------------------------------------------+
|dumpdoc | X | X | X | X |
+-----------------------------------------------------------------------------+
|fixqt4headers.pl | X | X | X | X |
+-----------------------------------------------------------------------------+
|idc | X | X | X | X |
+-----------------------------------------------------------------------------+
|moc | X | X | X | X |
+-----------------------------------------------------------------------------+
|pixeltool | X | X | X | X |
+-----------------------------------------------------------------------------+
|qdbus | X | X | X | X |
+-----------------------------------------------------------------------------+
|qdbuscpp2xml | X | X | X | X |
+-----------------------------------------------------------------------------+
|qdbusviewer | X | X | X | X |
+-----------------------------------------------------------------------------+
|qdbusxml2cpp | X | X | X | X |
+-----------------------------------------------------------------------------+
|qdistancefieldgenerator | X | X | X | X |
+-----------------------------------------------------------------------------+
|qdoc | X | X | X | X |
+-----------------------------------------------------------------------------+
|qhelpgenerator | X | X | X | X |
+-----------------------------------------------------------------------------+
|qlalr | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmake | X | X | X | X |
+-----------------------------------------------------------------------------+
|qml | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmlcachegen | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmldom | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmleasing | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmlformat | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmllint | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmlpreview | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmlprofiler | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmlscene | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmltestrunner | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmltime | X | X | X | X |
+-----------------------------------------------------------------------------+
|qmlviewer | X | X | X | X |
+-----------------------------------------------------------------------------+
|qtdiag | X | X | X | X |
+-----------------------------------------------------------------------------+
|qtpaths | X | X | X | X |
+-----------------------------------------------------------------------------+
|qtplugininfo | X | X | X | X |
+-----------------------------------------------------------------------------+
|qvkgen | X | X | X | X |
+-----------------------------------------------------------------------------+
|rcc | X | X | X | X |
+-----------------------------------------------------------------------------+
|tracegen | X | X | X | X |
+-----------------------------------------------------------------------------+
|uic | X | X | X | X |
+-----------------------------------------------------------------------------+
|windeployqt | X | X | X | X |
+-----------------------------------------------------------------------------+
|Target toolchains | | | X | X |
+-----------------------------------------------------------------------------+
|Qt Debugging Bridge (QDB) Host Tools | | | X | X |
+-----------------------------------------------------------------------------+
|qtconfig-gui | | | X | X |
+-----------------------------------------------------------------------------+
|Qt Emulator | | | X | X |
+-----------------------------------------------------------------------------+
|Qt Creator VxWorks plugin | | | X | X |
+-----------------------------------------------------------------------------+
|qulrcc | | | X | X |
+-----------------------------------------------------------------------------+
|qmlinterfacegenerator | | | X | X |
+-----------------------------------------------------------------------------+
|qmltocpp | | | X | X |
+-----------------------------------------------------------------------------+
|qulfontcompiler | | | X | X |
+-----------------------------------------------------------------------------+
|qmlprojectexporter | | | X | X |
+-----------------------------------------------------------------------------+
|Qt Deployment Server | | | X | X |
+-----------------------------------------------------------------------------+
|Qt Creator plugin for | | | | |
|Qt Application Manager | | | X | X |
+-----------------------------------------------------------------------------+
Rights for Application and Device use cases
Following table summarizes the rights afforded by different products of the Licensed Software to create and distribute Applications and Devices as defined in this Appendix (X marks for rights):
+-----------------------------------------------------------------------------+
| | Applications | Devices |
+-----------------------------------------------------------------------------+
|ADP | X | |
+-----------------------------------------------------------------------------+
|ADE | X | |
+-----------------------------------------------------------------------------+
|DCP | X | X |
+-----------------------------------------------------------------------------+
|DCE | X | X |
+-----------------------------------------------------------------------------+
Redistributables and Tools - Data collection
Customer is responsible for Customers use of Licensed Software, including the developer modules and tools. Any use of modules and tools by Customer to track, access, process, or otherwise handle data (including telemetry data) is the responsibility of Customer and must be done in compliance with applicable laws. If Customer uses the Licensed Software to perform any operation or set of operations on personal data, The Qt Company has no access or visibility into such operations by Customer. The Qt Company in no way acts as a data processor to Customer.
Licensed Software: Designer tools and modules
The modules and/or tools that are included in the respective product Qt for Design Studio Professional (DSP), Qt for Design Studio Enterprise (DSE) - are marked with X in the below table.
+-----------------------------------------------------------------------------+
| | DSP | DSE |
+-----------------------------------------------------------------------------+
|Qt Design Studio | X | X |
+-----------------------------------------------------------------------------+
|Qt Design Bridges | | X |
+-----------------------------------------------------------------------------+
|QML Live on host | X | X |
+-----------------------------------------------------------------------------+
|QML Live on target | | X |
+-----------------------------------------------------------------------------+
|Variant Management | | X |
+-----------------------------------------------------------------------------+
|Shader creation tools | | X |
+-----------------------------------------------------------------------------+
|Profiling tools | | X |
+-----------------------------------------------------------------------------+
|Simulink support | | X |
+-----------------------------------------------------------------------------+
Designer tools include no Redistributables. Both DSP and DSE can be used to create an user interface for use cases covered by ADP, ADE, DCP and DCE.
EXHIBIT 2 Small Business Terms
1. This Exhibit applies to entities that qualify as a Qualified Small Business (defined below) and provides additional terms and conditions applicable to small business pricing and licensing. In the event that Customer is a Qualified Small Business and there is any conflict between the terms of this Exhibit and any other terms of the Agreement, the terms in this Exhibit shall take precedence.
2. APPLICABILITY FOR SMALL BUSINESS LICENSES. Any small business discounts applied require that Customer (including any Customer Affiliates or group entities) has an annual revenue (including annual capital funding) below 1 Million EUR, or the equivalent thereof, as approved by The Qt Company (each, a “Qualified Small Business”). The annual revenue, including funding, must be evidenced upon request by business records and approved by The Qt Company in its reasonable discretion.
3. SUPPORT. Support is limited to: (i) Install Support; and (ii) for any other Standard Support issue, five (5) support tickets annually.
4. LIMITATION ON NUMBER OF SMALL BUSINESS DEVELOPER LICENSES. Qualified Small Business discounts and purchasing structure may be applied to a maximum of three discounted developer licenses (either ADE or DCP) per Qualified Small Business. Any additional licenses purchased will be at The Qt Company list price in effect at the time.
5. LIMITATION FOR NUMBER OF INSTALLATIONS. Customer may install copies of the Licensed Software on two (2) computers per Designated User, provided that only the Designated Users who have a valid Development License may use the Licensed Software.
6. CONDITIONAL WAIVER OF DISTRIBUTION LICENSES. For Qualified Small Businesses, the Agreement requirements to purchase Distribution Licenses for Devices shall apply only when Customer ceases to be a Qualified Small Business (e.g., when annual revenue thresholds are bypassed).
7. ADDITIONAL TERMS FOR RENEWALS. The initial subscription purchase term for Qualified Small Business Licenses is twelve (12) months. Upon expiration of the initial twelve (12) month term, Customers Qualified Small Business Licenses may be renewed with applicable Qualified Small Business pricing so long as Customer remains a Qualified Small Business and accepts The Qt Companys terms and conditions at the time of renewal. If Customer ceases to be a Qualified Small Business, renewal pricing shall be at The Qt Company list price in effect at the time of renewal, or as agreed in writing between the parties.
8. ADDITIONAL AUDIT RIGHTS. In addition to the audit rights set forth in the Agreement, The Qt Company reserves the right to audit Customer financial records in order to determine whether Customer is a Qualified Small Business.

View File

@ -0,0 +1,7 @@
set(QT_REPO_MODULE_VERSION "6.8.3")
set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1")
set(QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_LEAN_HEADERS=1")
list(APPEND QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_AS_CONST=1")
list(APPEND QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_FOREACH=1")
list(APPEND QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_QSNPRINTF=1")

4
qtdeclarative/.gitmodules vendored Normal file
View File

@ -0,0 +1,4 @@
[submodule "tests/auto/qml/ecmascripttests/test262"]
path = tests/auto/qml/ecmascripttests/test262
url = ../qtdeclarative-testsuites.git
branch = snapshot-20180312-3c69133-based

1
qtdeclarative/.tag Normal file
View File

@ -0,0 +1 @@
cd56f4a2653c4aa84067378da61d39f12c5a4a16

View File

@ -0,0 +1,64 @@
# Copyright (C) 2022 The Qt Company Ltd.
# SPDX-License-Identifier: BSD-3-Clause
# Generated from qtdeclarative.pro.
cmake_minimum_required(VERSION 3.16)
include(.cmake.conf)
project(QtDeclarative # special case
VERSION "${QT_REPO_MODULE_VERSION}"
DESCRIPTION "Qt Declarative Libraries" # special case
HOMEPAGE_URL "https://qt.io/"
LANGUAGES CXX C
)
find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) # special case
find_package(Qt6 ${PROJECT_VERSION} QUIET CONFIG OPTIONAL_COMPONENTS Gui Network Widgets OpenGL OpenGLWidgets Sql Concurrent Test LanguageServerPrivate LinguistTools Svg ExamplesAssetDownloaderPrivate)
qt_internal_project_setup()
# Set up QT_HOST_PATH as an extra root path to look for the ShaderToolsTools package
# when cross-compiling.
if(NOT "${QT_HOST_PATH}" STREQUAL "")
set(_qt_backup_qtdeclarative_CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH})
set(_qt_backup_qtdeclarative_CMAKE_FIND_ROOT_PATH ${CMAKE_FIND_ROOT_PATH})
list(PREPEND CMAKE_PREFIX_PATH "${QT_HOST_PATH_CMAKE_DIR}")
list(PREPEND CMAKE_FIND_ROOT_PATH "${QT_HOST_PATH}")
endif()
# This can't use the find_package(Qt6 COMPONENTS) signature, because Qt6Config uses NO_DEFAULT and
# won't look at the prepend extra find root paths.
find_package(Qt6ShaderToolsTools ${PROJECT_VERSION} QUIET CONFIG
PATHS
${_qt_additional_packages_prefix_path}
${_qt_additional_packages_prefix_path_env}
)
if(NOT "${QT_HOST_PATH}" STREQUAL "")
set(CMAKE_PREFIX_PATH ${_qt_backup_qtdeclarative_CMAKE_PREFIX_PATH})
set(CMAKE_FIND_ROOT_PATH ${_qt_backup_qtdeclarative_CMAKE_FIND_ROOT_PATH})
endif()
# Optionally look for the target ShaderTools package to avoid warnings
# when configuring the project to build examples in-tree in a prefix Qt build.
# See QTBUG-96358 for details.
find_package(Qt6 ${PROJECT_VERSION} CONFIG OPTIONAL_COMPONENTS ShaderTools)
# special case begin
# export QT6_ADD_QML_MODULE to this project
include(src/qml/Qt6QmlMacros.cmake)
if(ANDROID)
include("${CMAKE_CURRENT_LIST_DIR}/src/qml/Qt6AndroidQmlMacros.cmake")
endif()
include("${CMAKE_CURRENT_LIST_DIR}/src/qml/Qt6QmlPublicCMakeHelpers.cmake")
# special case end
if(NOT QT_FEATURE_commandlineparser)
message(NOTICE "Skipping the build as the condition \"QT_FEATURE_commandlineparser\" is not met.")
return()
endif()
if(NOT QT_FEATURE_temporaryfile)
message(NOTICE "Skipping the build as the condition \"QT_FEATURE_temporaryfile\" is not met.")
return()
endif()
qt_build_repo()

View File

@ -0,0 +1,61 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
(a) You must give any other recipients of the Work or Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View File

@ -0,0 +1,10 @@
Copyright (c) <year> <owner>.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@ -0,0 +1,9 @@
Copyright (c) <year> <owner>.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@ -0,0 +1,319 @@
Creative Commons Legal Code
Attribution 3.0 Unported
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR
DAMAGES RESULTING FROM ITS USE.
License
THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
CONDITIONS.
1. Definitions
a. "Adaptation" means a work based upon the Work, or upon the Work and
other pre-existing works, such as a translation, adaptation,
derivative work, arrangement of music or other alterations of a
literary or artistic work, or phonogram or performance and includes
cinematographic adaptations or any other form in which the Work may be
recast, transformed, or adapted including in any form recognizably
derived from the original, except that a work that constitutes a
Collection will not be considered an Adaptation for the purpose of
this License. For the avoidance of doubt, where the Work is a musical
work, performance or phonogram, the synchronization of the Work in
timed-relation with a moving image ("synching") will be considered an
Adaptation for the purpose of this License.
b. "Collection" means a collection of literary or artistic works, such as
encyclopedias and anthologies, or performances, phonograms or
broadcasts, or other works or subject matter other than works listed
in Section 1(f) below, which, by reason of the selection and
arrangement of their contents, constitute intellectual creations, in
which the Work is included in its entirety in unmodified form along
with one or more other contributions, each constituting separate and
independent works in themselves, which together are assembled into a
collective whole. A work that constitutes a Collection will not be
considered an Adaptation (as defined above) for the purposes of this
License.
c. "Distribute" means to make available to the public the original and
copies of the Work or Adaptation, as appropriate, through sale or
other transfer of ownership.
d. "Licensor" means the individual, individuals, entity or entities that
offer(s) the Work under the terms of this License.
e. "Original Author" means, in the case of a literary or artistic work,
the individual, individuals, entity or entities who created the Work
or if no individual or entity can be identified, the publisher; and in
addition (i) in the case of a performance the actors, singers,
musicians, dancers, and other persons who act, sing, deliver, declaim,
play in, interpret or otherwise perform literary or artistic works or
expressions of folklore; (ii) in the case of a phonogram the producer
being the person or legal entity who first fixes the sounds of a
performance or other sounds; and, (iii) in the case of broadcasts, the
organization that transmits the broadcast.
f. "Work" means the literary and/or artistic work offered under the terms
of this License including without limitation any production in the
literary, scientific and artistic domain, whatever may be the mode or
form of its expression including digital form, such as a book,
pamphlet and other writing; a lecture, address, sermon or other work
of the same nature; a dramatic or dramatico-musical work; a
choreographic work or entertainment in dumb show; a musical
composition with or without words; a cinematographic work to which are
assimilated works expressed by a process analogous to cinematography;
a work of drawing, painting, architecture, sculpture, engraving or
lithography; a photographic work to which are assimilated works
expressed by a process analogous to photography; a work of applied
art; an illustration, map, plan, sketch or three-dimensional work
relative to geography, topography, architecture or science; a
performance; a broadcast; a phonogram; a compilation of data to the
extent it is protected as a copyrightable work; or a work performed by
a variety or circus performer to the extent it is not otherwise
considered a literary or artistic work.
g. "You" means an individual or entity exercising rights under this
License who has not previously violated the terms of this License with
respect to the Work, or who has received express permission from the
Licensor to exercise rights under this License despite a previous
violation.
h. "Publicly Perform" means to perform public recitations of the Work and
to communicate to the public those public recitations, by any means or
process, including by wire or wireless means or public digital
performances; to make available to the public Works in such a way that
members of the public may access these Works from a place and at a
place individually chosen by them; to perform the Work to the public
by any means or process and the communication to the public of the
performances of the Work, including by public digital performance; to
broadcast and rebroadcast the Work by any means including signs,
sounds or images.
i. "Reproduce" means to make copies of the Work by any means including
without limitation by sound or visual recordings and the right of
fixation and reproducing fixations of the Work, including storage of a
protected performance or phonogram in digital form or other electronic
medium.
2. Fair Dealing Rights. Nothing in this License is intended to reduce,
limit, or restrict any uses free from copyright or rights arising from
limitations or exceptions that are provided for in connection with the
copyright protection under copyright law or other applicable laws.
3. License Grant. Subject to the terms and conditions of this License,
Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
perpetual (for the duration of the applicable copyright) license to
exercise the rights in the Work as stated below:
a. to Reproduce the Work, to incorporate the Work into one or more
Collections, and to Reproduce the Work as incorporated in the
Collections;
b. to create and Reproduce Adaptations provided that any such Adaptation,
including any translation in any medium, takes reasonable steps to
clearly label, demarcate or otherwise identify that changes were made
to the original Work. For example, a translation could be marked "The
original work was translated from English to Spanish," or a
modification could indicate "The original work has been modified.";
c. to Distribute and Publicly Perform the Work including as incorporated
in Collections; and,
d. to Distribute and Publicly Perform Adaptations.
e. For the avoidance of doubt:
i. Non-waivable Compulsory License Schemes. In those jurisdictions in
which the right to collect royalties through any statutory or
compulsory licensing scheme cannot be waived, the Licensor
reserves the exclusive right to collect such royalties for any
exercise by You of the rights granted under this License;
ii. Waivable Compulsory License Schemes. In those jurisdictions in
which the right to collect royalties through any statutory or
compulsory licensing scheme can be waived, the Licensor waives the
exclusive right to collect such royalties for any exercise by You
of the rights granted under this License; and,
iii. Voluntary License Schemes. The Licensor waives the right to
collect royalties, whether individually or, in the event that the
Licensor is a member of a collecting society that administers
voluntary licensing schemes, via that society, from any exercise
by You of the rights granted under this License.
The above rights may be exercised in all media and formats whether now
known or hereafter devised. The above rights include the right to make
such modifications as are technically necessary to exercise the rights in
other media and formats. Subject to Section 8(f), all rights not expressly
granted by Licensor are hereby reserved.
4. Restrictions. The license granted in Section 3 above is expressly made
subject to and limited by the following restrictions:
a. You may Distribute or Publicly Perform the Work only under the terms
of this License. You must include a copy of, or the Uniform Resource
Identifier (URI) for, this License with every copy of the Work You
Distribute or Publicly Perform. You may not offer or impose any terms
on the Work that restrict the terms of this License or the ability of
the recipient of the Work to exercise the rights granted to that
recipient under the terms of the License. You may not sublicense the
Work. You must keep intact all notices that refer to this License and
to the disclaimer of warranties with every copy of the Work You
Distribute or Publicly Perform. When You Distribute or Publicly
Perform the Work, You may not impose any effective technological
measures on the Work that restrict the ability of a recipient of the
Work from You to exercise the rights granted to that recipient under
the terms of the License. This Section 4(a) applies to the Work as
incorporated in a Collection, but this does not require the Collection
apart from the Work itself to be made subject to the terms of this
License. If You create a Collection, upon notice from any Licensor You
must, to the extent practicable, remove from the Collection any credit
as required by Section 4(b), as requested. If You create an
Adaptation, upon notice from any Licensor You must, to the extent
practicable, remove from the Adaptation any credit as required by
Section 4(b), as requested.
b. If You Distribute, or Publicly Perform the Work or any Adaptations or
Collections, You must, unless a request has been made pursuant to
Section 4(a), keep intact all copyright notices for the Work and
provide, reasonable to the medium or means You are utilizing: (i) the
name of the Original Author (or pseudonym, if applicable) if supplied,
and/or if the Original Author and/or Licensor designate another party
or parties (e.g., a sponsor institute, publishing entity, journal) for
attribution ("Attribution Parties") in Licensor's copyright notice,
terms of service or by other reasonable means, the name of such party
or parties; (ii) the title of the Work if supplied; (iii) to the
extent reasonably practicable, the URI, if any, that Licensor
specifies to be associated with the Work, unless such URI does not
refer to the copyright notice or licensing information for the Work;
and (iv) , consistent with Section 3(b), in the case of an Adaptation,
a credit identifying the use of the Work in the Adaptation (e.g.,
"French translation of the Work by Original Author," or "Screenplay
based on original Work by Original Author"). The credit required by
this Section 4 (b) may be implemented in any reasonable manner;
provided, however, that in the case of a Adaptation or Collection, at
a minimum such credit will appear, if a credit for all contributing
authors of the Adaptation or Collection appears, then as part of these
credits and in a manner at least as prominent as the credits for the
other contributing authors. For the avoidance of doubt, You may only
use the credit required by this Section for the purpose of attribution
in the manner set out above and, by exercising Your rights under this
License, You may not implicitly or explicitly assert or imply any
connection with, sponsorship or endorsement by the Original Author,
Licensor and/or Attribution Parties, as appropriate, of You or Your
use of the Work, without the separate, express prior written
permission of the Original Author, Licensor and/or Attribution
Parties.
c. Except as otherwise agreed in writing by the Licensor or as may be
otherwise permitted by applicable law, if You Reproduce, Distribute or
Publicly Perform the Work either by itself or as part of any
Adaptations or Collections, You must not distort, mutilate, modify or
take other derogatory action in relation to the Work which would be
prejudicial to the Original Author's honor or reputation. Licensor
agrees that in those jurisdictions (e.g. Japan), in which any exercise
of the right granted in Section 3(b) of this License (the right to
make Adaptations) would be deemed to be a distortion, mutilation,
modification or other derogatory action prejudicial to the Original
Author's honor and reputation, the Licensor will waive or not assert,
as appropriate, this Section, to the fullest extent permitted by the
applicable national law, to enable You to reasonably exercise Your
right under Section 3(b) of this License (right to make Adaptations)
but not otherwise.
5. Representations, Warranties and Disclaimer
UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION
OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE
LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR
ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES
ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS
BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
7. Termination
a. This License and the rights granted hereunder will terminate
automatically upon any breach by You of the terms of this License.
Individuals or entities who have received Adaptations or Collections
from You under this License, however, will not have their licenses
terminated provided such individuals or entities remain in full
compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
survive any termination of this License.
b. Subject to the above terms and conditions, the license granted here is
perpetual (for the duration of the applicable copyright in the Work).
Notwithstanding the above, Licensor reserves the right to release the
Work under different license terms or to stop distributing the Work at
any time; provided, however that any such election will not serve to
withdraw this License (or any other license that has been, or is
required to be, granted under the terms of this License), and this
License will continue in full force and effect unless terminated as
stated above.
8. Miscellaneous
a. Each time You Distribute or Publicly Perform the Work or a Collection,
the Licensor offers to the recipient a license to the Work on the same
terms and conditions as the license granted to You under this License.
b. Each time You Distribute or Publicly Perform an Adaptation, Licensor
offers to the recipient a license to the original Work on the same
terms and conditions as the license granted to You under this License.
c. If any provision of this License is invalid or unenforceable under
applicable law, it shall not affect the validity or enforceability of
the remainder of the terms of this License, and without further action
by the parties to this agreement, such provision shall be reformed to
the minimum extent necessary to make such provision valid and
enforceable.
d. No term or provision of this License shall be deemed waived and no
breach consented to unless such waiver or consent shall be in writing
and signed by the party to be charged with such waiver or consent.
e. This License constitutes the entire agreement between the parties with
respect to the Work licensed here. There are no understandings,
agreements or representations with respect to the Work not specified
here. Licensor shall not be bound by any additional provisions that
may appear in any communication from You. This License may not be
modified without the mutual written agreement of the Licensor and You.
f. The rights granted under, and the subject matter referenced, in this
License were drafted utilizing the terminology of the Berne Convention
for the Protection of Literary and Artistic Works (as amended on
September 28, 1979), the Rome Convention of 1961, the WIPO Copyright
Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996
and the Universal Copyright Convention (as revised on July 24, 1971).
These rights and subject matter take effect in the relevant
jurisdiction in which the License terms are sought to be enforced
according to the corresponding provisions of the implementation of
those treaty provisions in the applicable national law. If the
standard suite of rights granted under applicable copyright law
includes additional rights not granted under this License, such
additional rights are deemed to be included in the License; this
License is not intended to restrict the license of any rights under
applicable law.
Creative Commons Notice
Creative Commons is not a party to this License, and makes no warranty
whatsoever in connection with the Work. Creative Commons will not be
liable to You or any party on any legal theory for any damages
whatsoever, including without limitation any general, special,
incidental or consequential damages arising in connection to this
license. Notwithstanding the foregoing two (2) sentences, if Creative
Commons has expressly identified itself as the Licensor hereunder, it
shall have all rights and obligations of Licensor.
Except for the limited purpose of indicating to the public that the
Work is licensed under the CCPL, Creative Commons does not authorize
the use by either party of the trademark "Creative Commons" or any
related trademark or logo of Creative Commons without the prior
written consent of Creative Commons. Any permitted use will be in
compliance with Creative Commons' then-current trademark usage
guidelines, as may be published on its website or otherwise made
available upon request from time to time. For the avoidance of doubt,
this trademark restriction does not form part of this License.
Creative Commons may be contacted at https://creativecommons.org/.

View File

@ -0,0 +1,121 @@
Creative Commons Legal Code
CC0 1.0 Universal
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
HEREUNDER.
Statement of Purpose
The laws of most jurisdictions throughout the world automatically confer
exclusive Copyright and Related Rights (defined below) upon the creator
and subsequent owner(s) (each and all, an "owner") of an original work of
authorship and/or a database (each, a "Work").
Certain owners wish to permanently relinquish those rights to a Work for
the purpose of contributing to a commons of creative, cultural and
scientific works ("Commons") that the public can reliably and without fear
of later claims of infringement build upon, modify, incorporate in other
works, reuse and redistribute as freely as possible in any form whatsoever
and for any purposes, including without limitation commercial purposes.
These owners may contribute to the Commons to promote the ideal of a free
culture and the further production of creative, cultural and scientific
works, or to gain reputation or greater distribution for their Work in
part through the use and efforts of others.
For these and/or other purposes and motivations, and without any
expectation of additional consideration or compensation, the person
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
is an owner of Copyright and Related Rights in the Work, voluntarily
elects to apply CC0 to the Work and publicly distribute the Work under its
terms, with knowledge of his or her Copyright and Related Rights in the
Work and the meaning and intended legal effect of CC0 on those rights.
1. Copyright and Related Rights. A Work made available under CC0 may be
protected by copyright and related or neighboring rights ("Copyright and
Related Rights"). Copyright and Related Rights include, but are not
limited to, the following:
i. the right to reproduce, adapt, distribute, perform, display,
communicate, and translate a Work;
ii. moral rights retained by the original author(s) and/or performer(s);
iii. publicity and privacy rights pertaining to a person's image or
likeness depicted in a Work;
iv. rights protecting against unfair competition in regards to a Work,
subject to the limitations in paragraph 4(a), below;
v. rights protecting the extraction, dissemination, use and reuse of data
in a Work;
vi. database rights (such as those arising under Directive 96/9/EC of the
European Parliament and of the Council of 11 March 1996 on the legal
protection of databases, and under any national implementation
thereof, including any amended or successor version of such
directive); and
vii. other similar, equivalent or corresponding rights throughout the
world based on applicable law or treaty, and any national
implementations thereof.
2. Waiver. To the greatest extent permitted by, but not in contravention
of, applicable law, Affirmer hereby overtly, fully, permanently,
irrevocably and unconditionally waives, abandons, and surrenders all of
Affirmer's Copyright and Related Rights and associated claims and causes
of action, whether now known or unknown (including existing as well as
future claims and causes of action), in the Work (i) in all territories
worldwide, (ii) for the maximum duration provided by applicable law or
treaty (including future time extensions), (iii) in any current or future
medium and for any number of copies, and (iv) for any purpose whatsoever,
including without limitation commercial, advertising or promotional
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
member of the public at large and to the detriment of Affirmer's heirs and
successors, fully intending that such Waiver shall not be subject to
revocation, rescission, cancellation, termination, or any other legal or
equitable action to disrupt the quiet enjoyment of the Work by the public
as contemplated by Affirmer's express Statement of Purpose.
3. Public License Fallback. Should any part of the Waiver for any reason
be judged legally invalid or ineffective under applicable law, then the
Waiver shall be preserved to the maximum extent permitted taking into
account Affirmer's express Statement of Purpose. In addition, to the
extent the Waiver is so judged Affirmer hereby grants to each affected
person a royalty-free, non transferable, non sublicensable, non exclusive,
irrevocable and unconditional license to exercise Affirmer's Copyright and
Related Rights in the Work (i) in all territories worldwide, (ii) for the
maximum duration provided by applicable law or treaty (including future
time extensions), (iii) in any current or future medium and for any number
of copies, and (iv) for any purpose whatsoever, including without
limitation commercial, advertising or promotional purposes (the
"License"). The License shall be deemed effective as of the date CC0 was
applied by Affirmer to the Work. Should any part of the License for any
reason be judged legally invalid or ineffective under applicable law, such
partial invalidity or ineffectiveness shall not invalidate the remainder
of the License, and in such case Affirmer hereby affirms that he or she
will not (i) exercise any of his or her remaining Copyright and Related
Rights in the Work or (ii) assert any associated claims and causes of
action with respect to the Work, in either case contrary to Affirmer's
express Statement of Purpose.
4. Limitations and Disclaimers.
a. No trademark or patent rights held by Affirmer are waived, abandoned,
surrendered, licensed or otherwise affected by this document.
b. Affirmer offers the Work as-is and makes no representations or
warranties of any kind concerning the Work, express, implied,
statutory or otherwise, including without limitation warranties of
title, merchantability, fitness for a particular purpose, non
infringement, or the absence of latent or other defects, accuracy, or
the present or absence of errors, whether or not discoverable, all to
the greatest extent permissible under applicable law.
c. Affirmer disclaims responsibility for clearing rights of other persons
that may apply to the Work or any use thereof, including without
limitation any person's Copyright and Related Rights in the Work.
Further, Affirmer disclaims responsibility for obtaining any necessary
consents, permissions or other rights required for any use of the
Work.
d. Affirmer understands and acknowledges that Creative Commons is not a
party to this document and has no duty or obligation with respect to
this CC0 or use of the Work.

View File

@ -0,0 +1,451 @@
GNU Free Documentation License
Version 1.3, 3 November 2008
Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
<https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
0. PREAMBLE
The purpose of this License is to make a manual, textbook, or other
functional and useful document "free" in the sense of freedom: to
assure everyone the effective freedom to copy and redistribute it,
with or without modifying it, either commercially or noncommercially.
Secondarily, this License preserves for the author and publisher a way
to get credit for their work, while not being considered responsible
for modifications made by others.
This License is a kind of "copyleft", which means that derivative
works of the document must themselves be free in the same sense. It
complements the GNU General Public License, which is a copyleft
license designed for free software.
We have designed this License in order to use it for manuals for free
software, because free software needs free documentation: a free
program should come with manuals providing the same freedoms that the
software does. But this License is not limited to software manuals;
it can be used for any textual work, regardless of subject matter or
whether it is published as a printed book. We recommend this License
principally for works whose purpose is instruction or reference.
1. APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work, in any medium, that
contains a notice placed by the copyright holder saying it can be
distributed under the terms of this License. Such a notice grants a
world-wide, royalty-free license, unlimited in duration, to use that
work under the conditions stated herein. The "Document", below,
refers to any such manual or work. Any member of the public is a
licensee, and is addressed as "you". You accept the license if you
copy, modify or distribute the work in a way requiring permission
under copyright law.
A "Modified Version" of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
modifications and/or translated into another language.
A "Secondary Section" is a named appendix or a front-matter section of
the Document that deals exclusively with the relationship of the
publishers or authors of the Document to the Document's overall
subject (or to related matters) and contains nothing that could fall
directly within that overall subject. (Thus, if the Document is in
part a textbook of mathematics, a Secondary Section may not explain
any mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.
The "Invariant Sections" are certain Secondary Sections whose titles
are designated, as being those of Invariant Sections, in the notice
that says that the Document is released under this License. If a
section does not fit the above definition of Secondary then it is not
allowed to be designated as Invariant. The Document may contain zero
Invariant Sections. If the Document does not identify any Invariant
Sections then there are none.
The "Cover Texts" are certain short passages of text that are listed,
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
the Document is released under this License. A Front-Cover Text may
be at most 5 words, and a Back-Cover Text may be at most 25 words.
A "Transparent" copy of the Document means a machine-readable copy,
represented in a format whose specification is available to the
general public, that is suitable for revising the document
straightforwardly with generic text editors or (for images composed of
pixels) generic paint programs or (for drawings) some widely available
drawing editor, and that is suitable for input to text formatters or
for automatic translation to a variety of formats suitable for input
to text formatters. A copy made in an otherwise Transparent file
format whose markup, or absence of markup, has been arranged to thwart
or discourage subsequent modification by readers is not Transparent.
An image format is not Transparent if used for any substantial amount
of text. A copy that is not "Transparent" is called "Opaque".
Examples of suitable formats for Transparent copies include plain
ASCII without markup, Texinfo input format, LaTeX input format, SGML
or XML using a publicly available DTD, and standard-conforming simple
HTML, PostScript or PDF designed for human modification. Examples of
transparent image formats include PNG, XCF and JPG. Opaque formats
include proprietary formats that can be read and edited only by
proprietary word processors, SGML or XML for which the DTD and/or
processing tools are not generally available, and the
machine-generated HTML, PostScript or PDF produced by some word
processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the material
this License requires to appear in the title page. For works in
formats which do not have any title page as such, "Title Page" means
the text near the most prominent appearance of the work's title,
preceding the beginning of the body of the text.
The "publisher" means any person or entity that distributes copies of
the Document to the public.
A section "Entitled XYZ" means a named subunit of the Document whose
title either is precisely XYZ or contains XYZ in parentheses following
text that translates XYZ in another language. (Here XYZ stands for a
specific section name mentioned below, such as "Acknowledgements",
"Dedications", "Endorsements", or "History".) To "Preserve the Title"
of such a section when you modify the Document means that it remains a
section "Entitled XYZ" according to this definition.
The Document may include Warranty Disclaimers next to the notice which
states that this License applies to the Document. These Warranty
Disclaimers are considered to be included by reference in this
License, but only as regards disclaiming warranties: any other
implication that these Warranty Disclaimers may have is void and has
no effect on the meaning of this License.
2. VERBATIM COPYING
You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies
to the Document are reproduced in all copies, and that you add no
other conditions whatsoever to those of this License. You may not use
technical measures to obstruct or control the reading or further
copying of the copies you make or distribute. However, you may accept
compensation in exchange for copies. If you distribute a large enough
number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and
you may publicly display copies.
3. COPYING IN QUANTITY
If you publish printed copies (or copies in media that commonly have
printed covers) of the Document, numbering more than 100, and the
Document's license notice requires Cover Texts, you must enclose the
copies in covers that carry, clearly and legibly, all these Cover
Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
the back cover. Both covers must also clearly and legibly identify
you as the publisher of these copies. The front cover must present
the full title with all words of the title equally prominent and
visible. You may add other material on the covers in addition.
Copying with changes limited to the covers, as long as they preserve
the title of the Document and satisfy these conditions, can be treated
as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.
If you publish or distribute Opaque copies of the Document numbering
more than 100, you must either include a machine-readable Transparent
copy along with each Opaque copy, or state in or with each Opaque copy
a computer-network location from which the general network-using
public has access to download using public-standard network protocols
a complete Transparent copy of the Document, free of added material.
If you use the latter option, you must take reasonably prudent steps,
when you begin distribution of Opaque copies in quantity, to ensure
that this Transparent copy will remain thus accessible at the stated
location until at least one year after the last time you distribute an
Opaque copy (directly or through your agents or retailers) of that
edition to the public.
It is requested, but not required, that you contact the authors of the
Document well before redistributing any large number of copies, to
give them a chance to provide you with an updated version of the
Document.
4. MODIFICATIONS
You may copy and distribute a Modified Version of the Document under
the conditions of sections 2 and 3 above, provided that you release
the Modified Version under precisely this License, with the Modified
Version filling the role of the Document, thus licensing distribution
and modification of the Modified Version to whoever possesses a copy
of it. In addition, you must do these things in the Modified Version:
A. Use in the Title Page (and on the covers, if any) a title distinct
from that of the Document, and from those of previous versions
(which should, if there were any, be listed in the History section
of the Document). You may use the same title as a previous version
if the original publisher of that version gives permission.
B. List on the Title Page, as authors, one or more persons or entities
responsible for authorship of the modifications in the Modified
Version, together with at least five of the principal authors of the
Document (all of its principal authors, if it has fewer than five),
unless they release you from this requirement.
C. State on the Title page the name of the publisher of the
Modified Version, as the publisher.
D. Preserve all the copyright notices of the Document.
E. Add an appropriate copyright notice for your modifications
adjacent to the other copyright notices.
F. Include, immediately after the copyright notices, a license notice
giving the public permission to use the Modified Version under the
terms of this License, in the form shown in the Addendum below.
G. Preserve in that license notice the full lists of Invariant Sections
and required Cover Texts given in the Document's license notice.
H. Include an unaltered copy of this License.
I. Preserve the section Entitled "History", Preserve its Title, and add
to it an item stating at least the title, year, new authors, and
publisher of the Modified Version as given on the Title Page. If
there is no section Entitled "History" in the Document, create one
stating the title, year, authors, and publisher of the Document as
given on its Title Page, then add an item describing the Modified
Version as stated in the previous sentence.
J. Preserve the network location, if any, given in the Document for
public access to a Transparent copy of the Document, and likewise
the network locations given in the Document for previous versions
it was based on. These may be placed in the "History" section.
You may omit a network location for a work that was published at
least four years before the Document itself, or if the original
publisher of the version it refers to gives permission.
K. For any section Entitled "Acknowledgements" or "Dedications",
Preserve the Title of the section, and preserve in the section all
the substance and tone of each of the contributor acknowledgements
and/or dedications given therein.
L. Preserve all the Invariant Sections of the Document,
unaltered in their text and in their titles. Section numbers
or the equivalent are not considered part of the section titles.
M. Delete any section Entitled "Endorsements". Such a section
may not be included in the Modified Version.
N. Do not retitle any existing section to be Entitled "Endorsements"
or to conflict in title with any Invariant Section.
O. Preserve any Warranty Disclaimers.
If the Modified Version includes new front-matter sections or
appendices that qualify as Secondary Sections and contain no material
copied from the Document, you may at your option designate some or all
of these sections as invariant. To do this, add their titles to the
list of Invariant Sections in the Modified Version's license notice.
These titles must be distinct from any other section titles.
You may add a section Entitled "Endorsements", provided it contains
nothing but endorsements of your Modified Version by various
parties--for example, statements of peer review or that the text has
been approved by an organization as the authoritative definition of a
standard.
You may add a passage of up to five words as a Front-Cover Text, and a
passage of up to 25 words as a Back-Cover Text, to the end of the list
of Cover Texts in the Modified Version. Only one passage of
Front-Cover Text and one of Back-Cover Text may be added by (or
through arrangements made by) any one entity. If the Document already
includes a cover text for the same cover, previously added by you or
by arrangement made by the same entity you are acting on behalf of,
you may not add another; but you may replace the old one, on explicit
permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License
give permission to use their names for publicity for or to assert or
imply endorsement of any Modified Version.
5. COMBINING DOCUMENTS
You may combine the Document with other documents released under this
License, under the terms defined in section 4 above for modified
versions, provided that you include in the combination all of the
Invariant Sections of all of the original documents, unmodified, and
list them all as Invariant Sections of your combined work in its
license notice, and that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single
copy. If there are multiple Invariant Sections with the same name but
different contents, make the title of each such section unique by
adding at the end of it, in parentheses, the name of the original
author or publisher of that section if known, or else a unique number.
Make the same adjustment to the section titles in the list of
Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections Entitled "History"
in the various original documents, forming one section Entitled
"History"; likewise combine any sections Entitled "Acknowledgements",
and any sections Entitled "Dedications". You must delete all sections
Entitled "Endorsements".
6. COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other
documents released under this License, and replace the individual
copies of this License in the various documents with a single copy
that is included in the collection, provided that you follow the rules
of this License for verbatim copying of each of the documents in all
other respects.
You may extract a single document from such a collection, and
distribute it individually under this License, provided you insert a
copy of this License into the extracted document, and follow this
License in all other respects regarding verbatim copying of that
document.
7. AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other separate
and independent documents or works, in or on a volume of a storage or
distribution medium, is called an "aggregate" if the copyright
resulting from the compilation is not used to limit the legal rights
of the compilation's users beyond what the individual works permit.
When the Document is included in an aggregate, this License does not
apply to the other works in the aggregate which are not themselves
derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these
copies of the Document, then if the Document is less than one half of
the entire aggregate, the Document's Cover Texts may be placed on
covers that bracket the Document within the aggregate, or the
electronic equivalent of covers if the Document is in electronic form.
Otherwise they must appear on printed covers that bracket the whole
aggregate.
8. TRANSLATION
Translation is considered a kind of modification, so you may
distribute translations of the Document under the terms of section 4.
Replacing Invariant Sections with translations requires special
permission from their copyright holders, but you may include
translations of some or all Invariant Sections in addition to the
original versions of these Invariant Sections. You may include a
translation of this License, and all the license notices in the
Document, and any Warranty Disclaimers, provided that you also include
the original English version of this License and the original versions
of those notices and disclaimers. In case of a disagreement between
the translation and the original version of this License or a notice
or disclaimer, the original version will prevail.
If a section in the Document is Entitled "Acknowledgements",
"Dedications", or "History", the requirement (section 4) to Preserve
its Title (section 1) will typically require changing the actual
title.
9. TERMINATION
You may not copy, modify, sublicense, or distribute the Document
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense, or distribute it is void, and
will automatically terminate your rights under this License.
However, if you cease all violation of this License, then your license
from a particular copyright holder is reinstated (a) provisionally,
unless and until the copyright holder explicitly and finally
terminates your license, and (b) permanently, if the copyright holder
fails to notify you of the violation by some reasonable means prior to
60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, receipt of a copy of some or all of the same material does
not give you any rights to use it.
10. FUTURE REVISIONS OF THIS LICENSE
The Free Software Foundation may publish new, revised versions of the
GNU Free Documentation License from time to time. Such new versions
will be similar in spirit to the present version, but may differ in
detail to address new problems or concerns. See
https://www.gnu.org/licenses/.
Each version of the License is given a distinguishing version number.
If the Document specifies that a particular numbered version of this
License "or any later version" applies to it, you have the option of
following the terms and conditions either of that specified version or
of any later version that has been published (not as a draft) by the
Free Software Foundation. If the Document does not specify a version
number of this License, you may choose any version ever published (not
as a draft) by the Free Software Foundation. If the Document
specifies that a proxy can decide which future versions of this
License can be used, that proxy's public statement of acceptance of a
version permanently authorizes you to choose that version for the
Document.
11. RELICENSING
"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
World Wide Web server that publishes copyrightable works and also
provides prominent facilities for anybody to edit those works. A
public wiki that anybody can edit is an example of such a server. A
"Massive Multiauthor Collaboration" (or "MMC") contained in the site
means any set of copyrightable works thus published on the MMC site.
"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
license published by Creative Commons Corporation, a not-for-profit
corporation with a principal place of business in San Francisco,
California, as well as future copyleft versions of that license
published by that same organization.
"Incorporate" means to publish or republish a Document, in whole or in
part, as part of another Document.
An MMC is "eligible for relicensing" if it is licensed under this
License, and if all works that were first published under this License
somewhere other than this MMC, and subsequently incorporated in whole or
in part into the MMC, (1) had no cover texts or invariant sections, and
(2) were thus incorporated prior to November 1, 2008.
The operator of an MMC Site may republish an MMC contained in the site
under CC-BY-SA on the same site at any time before August 1, 2009,
provided the MMC is eligible for relicensing.
ADDENDUM: How to use this License for your documents
To use this License in a document you have written, include a copy of
the License in the document and put the following copyright and
license notices just after the title page:
Copyright (c) YEAR YOUR NAME.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU
Free Documentation License".
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
replace the "with...Texts." line with this:
with the Invariant Sections being LIST THEIR TITLES, with the
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
If you have Invariant Sections without Cover Texts, or some other
combination of the three, merge those two alternatives to suit the
situation.
If your document contains nontrivial examples of program code, we
recommend releasing these examples in parallel under your choice of
free software license, such as the GNU General Public License,
to permit their use in free software.

View File

@ -0,0 +1,339 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.

View File

@ -0,0 +1,674 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<http://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.

View File

@ -0,0 +1,165 @@
GNU LESSER GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
This version of the GNU Lesser General Public License incorporates
the terms and conditions of version 3 of the GNU General Public
License, supplemented by the additional permissions listed below.
0. Additional Definitions.
As used herein, "this License" refers to version 3 of the GNU Lesser
General Public License, and the "GNU GPL" refers to version 3 of the GNU
General Public License.
"The Library" refers to a covered work governed by this License,
other than an Application or a Combined Work as defined below.
An "Application" is any work that makes use of an interface provided
by the Library, but which is not otherwise based on the Library.
Defining a subclass of a class defined by the Library is deemed a mode
of using an interface provided by the Library.
A "Combined Work" is a work produced by combining or linking an
Application with the Library. The particular version of the Library
with which the Combined Work was made is also called the "Linked
Version".
The "Minimal Corresponding Source" for a Combined Work means the
Corresponding Source for the Combined Work, excluding any source code
for portions of the Combined Work that, considered in isolation, are
based on the Application, and not on the Linked Version.
The "Corresponding Application Code" for a Combined Work means the
object code and/or source code for the Application, including any data
and utility programs needed for reproducing the Combined Work from the
Application, but excluding the System Libraries of the Combined Work.
1. Exception to Section 3 of the GNU GPL.
You may convey a covered work under sections 3 and 4 of this License
without being bound by section 3 of the GNU GPL.
2. Conveying Modified Versions.
If you modify a copy of the Library, and, in your modifications, a
facility refers to a function or data to be supplied by an Application
that uses the facility (other than as an argument passed when the
facility is invoked), then you may convey a copy of the modified
version:
a) under this License, provided that you make a good faith effort to
ensure that, in the event an Application does not supply the
function or data, the facility still operates, and performs
whatever part of its purpose remains meaningful, or
b) under the GNU GPL, with none of the additional permissions of
this License applicable to that copy.
3. Object Code Incorporating Material from Library Header Files.
The object code form of an Application may incorporate material from
a header file that is part of the Library. You may convey such object
code under terms of your choice, provided that, if the incorporated
material is not limited to numerical parameters, data structure
layouts and accessors, or small macros, inline functions and templates
(ten or fewer lines in length), you do both of the following:
a) Give prominent notice with each copy of the object code that the
Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the object code with a copy of the GNU GPL and this license
document.
4. Combined Works.
You may convey a Combined Work under terms of your choice that,
taken together, effectively do not restrict modification of the
portions of the Library contained in the Combined Work and reverse
engineering for debugging such modifications, if you also do each of
the following:
a) Give prominent notice with each copy of the Combined Work that
the Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the Combined Work with a copy of the GNU GPL and this license
document.
c) For a Combined Work that displays copyright notices during
execution, include the copyright notice for the Library among
these notices, as well as a reference directing the user to the
copies of the GNU GPL and this license document.
d) Do one of the following:
0) Convey the Minimal Corresponding Source under the terms of this
License, and the Corresponding Application Code in a form
suitable for, and under terms that permit, the user to
recombine or relink the Application with a modified version of
the Linked Version to produce a modified Combined Work, in the
manner specified by section 6 of the GNU GPL for conveying
Corresponding Source.
1) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (a) uses at run time
a copy of the Library already present on the user's computer
system, and (b) will operate properly with a modified version
of the Library that is interface-compatible with the Linked
Version.
e) Provide Installation Information, but only if you would otherwise
be required to provide such information under section 6 of the
GNU GPL, and only to the extent that such information is
necessary to install and execute a modified version of the
Combined Work produced by recombining or relinking the
Application with a modified version of the Linked Version. (If
you use option 4d0, the Installation Information must accompany
the Minimal Corresponding Source and Corresponding Application
Code. If you use option 4d1, you must provide the Installation
Information in the manner specified by section 6 of the GNU GPL
for conveying Corresponding Source.)
5. Combined Libraries.
You may place library facilities that are a work based on the
Library side by side in a single library together with other library
facilities that are not Applications and are not covered by this
License, and convey such a combined library under terms of your
choice, if you do both of the following:
a) Accompany the combined library with a copy of the same work based
on the Library, uncombined with any other library facilities,
conveyed under the terms of this License.
b) Give prominent notice with the combined library that part of it
is a work based on the Library, and explaining where to find the
accompanying uncombined form of the same work.
6. Revised Versions of the GNU Lesser General Public License.
The Free Software Foundation may publish revised and/or new versions
of the GNU Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the
Library as you received it specifies that a certain numbered version
of the GNU Lesser General Public License "or any later version"
applies to it, you have the option of following the terms and
conditions either of that published version or of any later version
published by the Free Software Foundation. If the Library as you
received it does not specify a version number of the GNU Lesser
General Public License, you may choose any version of the GNU Lesser
General Public License ever published by the Free Software Foundation.
If the Library as you received it specifies that a proxy can decide
whether future versions of the GNU Lesser General Public License shall
apply, that proxy's public statement of acceptance of any version is
permanent authorization for you to choose that version for the
Library.

View File

@ -0,0 +1,8 @@
Licensees holding valid commercial Qt licenses may use this software in
accordance with the the terms contained in a written agreement between
you and The Qt Company. Alternatively, the terms and conditions that were
accepted by the licensee when buying and/or downloading the
software do apply.
For the latest licensing terms and conditions, see https://www.qt.io/terms-conditions.
For further information use the contact form at https://www.qt.io/contact-us.

View File

@ -0,0 +1,11 @@
MIT License
Copyright (c) <year> <copyright holders>
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice (including the next paragraph) shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -0,0 +1,97 @@
Copyright (c) <dates>, <Copyright Holder> (<URL|email>),
with Reserved Font Name <Reserved Font Name>.
Copyright (c) <dates>, <additional Copyright Holder> (<URL|email>),
with Reserved Font Name <additional Reserved Font Name>.
Copyright (c) <dates>, <additional Copyright Holder> (<URL|email>).
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
https://openfontlicense.org
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

View File

@ -0,0 +1,22 @@
The Qt Company GPL Exception 1.0
Exception 1:
As a special exception you may create a larger work which contains the
output of this application and distribute that work under terms of your
choice, so long as the work is not otherwise derived from or based on
this application and so long as the work does not in itself generate
output that contains the output from this application in its original
or modified form.
Exception 2:
As a special exception, you have permission to combine this application
with Plugins licensed under the terms of your choice, to produce an
executable, and to copy and distribute the resulting executable under
the terms of your choice. However, the executable must be accompanied
by a prominent notice offering all users of the executable the entire
source code to this application, excluding the source code of the
independent modules, but including any changes you have made to this
application, under the terms of this license.

View File

@ -0,0 +1,7 @@
This is free and unencumbered software released into the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.
In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

28
qtdeclarative/README.md Normal file
View File

@ -0,0 +1,28 @@
qtdeclarative
=============
The qtdeclarative repository is home to QML, Qt Quick and several related modules:
- [Qt QML](https://doc.qt.io/qt-6/qtqml-index.html)
- [Qt QML Core](https://doc.qt.io/qt-6/qtqmlcore-index.html)
- [Qt QML Models](https://doc.qt.io/qt-6/qtqml-models-qmlmodule.html)
- [Qt QML WorkerScript](https://doc.qt.io/qt-6/qml-qtqml-workerscript-workerscript.html)
- [Qt QML XmlListModel](https://doc.qt.io/qt-6/qml-qtqml-xmllistmodel-xmllistmodel.html)
- [Qt Quick](https://doc.qt.io/qt-6/qtquick-index.html)
- [Qt Quick Controls 2](https://doc.qt.io/qt-6/qtquickcontrols-index.html)
- [Qt Quick Layouts](https://doc.qt.io/qt-6/qtquicklayouts-index.html)
- [Qt Quick Local Storage](https://doc.qt.io/qt-6/qtquick-localstorage-qmlmodule.html)
- [Qt Quick Particles](https://doc.qt.io/qt-6/qtquick-particles-qmlmodule.html)
- [Qt Quick Shapes](https://doc.qt.io/qt-6/qtquick-shapes-qmlmodule.html)
- [Qt Quick Templates](https://doc.qt.io/qt-6/qtquick-templates2-qmlmodule.html)
- [Qt Quick Test](https://doc.qt.io/qt-6/qtquicktest-index.html)
In addition, there are several Qt Labs modules:
- [Qt Labs Animation](https://doc.qt.io/qt-6/qt-labs-animation-qmlmodule.html)
- [Qt Labs FolderListModel](https://doc.qt.io/qt-6/qml-qt-labs-folderlistmodel-folderlistmodel.html)
- [Qt Labs Platform](https://doc.qt.io/qt-6/qtlabsplatform-index.html)
- [Qt Labs Models](https://doc.qt.io/qt-6/qtqml-models-qmlmodule.html)
- [Qt Labs Settings](https://doc.qt.io/qt-6/qml-qt-labs-settings-settings.html)
- [Qt Labs Shared Image Provider](https://doc.qt.io/qt-6/qt-labs-sharedimage-qmlmodule.html)
- [Qt Labs WavefrontMesh](https://doc.qt.io/qt-6/qt-labs-wavefrontmesh-qmlmodule.html)

157
qtdeclarative/REUSE.toml Normal file
View File

@ -0,0 +1,157 @@
version = 1
[[annotations]]
path = ["tools/**", "src/plugins/qmlls/**", "src/plugins/qmllint/**",
"src/qmltyperegistrar/**"]
precedence = "closest"
comment = "tools"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"
[[annotations]]
path = ["tests/**"]
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GPL-3.0-only"
[[annotations]]
path = ["src/plugins/qmltooling/**.json",
"src/plugins/scenegraph/openvg/openvg.json"]
comment = "controls and dialogs."
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"
[[annotations]]
path = ["tests/manual/nodetypes_ng/compile.bat", "tests/auto/quick/scenegraph/data/compile.bat",
"tests/benchmarks/qml/binding/data/repeat.sh",
"tests/auto/quick/qquickshadereffect/data/compile.bat",
"tests/auto/quick/qquickitemlayer/data/buildshaders.bat"]
precedence = "closest"
comment = "tools"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"
[[annotations]]
path = ["**.prf", "**Info.plist", "**cmake.in", "src/**.in", "**/ci_config_linux.json", "**CMakeLists.txt", "**.cmake",
".cmake.conf", "**.yaml", "**.gradle", "src/quick/items/syncexcludes",
"**.cfg", "**.pro", "**.conf", ".gitmodules"]
comment = "build system"
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "BSD-3-Clause"
[[annotations]]
path = [".tag", "**/.gitattributes", "**.gitignore"]
precedence = "closest"
comment = "not sure at all"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "BSD-3-Clause"
[[annotations]]
path = ["**/snippets/**", "examples/**", "src/quick/doc/src/internal/*.puml",
"src/quick/doc/src/internal/*.svg", "src/quick/doc/src/internal/*.dot"]
comment = "this must be after the build system table because example and snippets take precedence over build system"
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR BSD-3-Clause"
[[annotations]]
path = ["**/doc/images/**", "qtdeclarative.doxy", "**.md", "**/README", "**/README.md",
"**/README.txt", "**/doc/**.qdocconf" ,
"**/doc/**.qdocinc", "**/doc/**.dox"]
comment = "documentation"
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"
[[annotations]]
path = ["src/quickcontrols/imagine/*",
"src/quickdialogs/quickdialogsquickimpl/images/**png",
"src/quickdialogs/quickdialogsquickimpl/images/**svg",
"src/quickcontrols/windows/images/*.png",
"src/quickcontrols/universal/images/*.png",
"src/quickdialogs/quickdialogsquickimpl/images/*.svg",
"src/quickcontrols/material/images/*.png",
"src/quickcontrols/material/images/*.svg",
"src/quickcontrols/macos/images/*.png",
"src/quickcontrols/macos/images/*.webp",
"src/quickcontrols/ios/images/*.png",
"src/quickcontrols/imagine/images/*.png",
"src/quickcontrols/imagine/images/*.webp",
"src/quickcontrols/fusion/images/*.png",
"src/quickcontrols/fusion/images/*.svg",
"src/quickcontrols/fluentwinui3/light/images/*.png",
"src/quickcontrols/fluentwinui3/dark/images/*.png",
"src/quickcontrols/fluentwinui3/icons/*.png",
"src/quickcontrols/designer/images/*.png",
"src/quickcontrols/basic/images/*.png",
"src/particles/particleresources/*.png"]
comment = "controls and dialogs."
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"
[[annotations]]
path = ["src/quick/doc/QtQuickDoc", "src/quickcontrols/qmldir"]
comment = "module"
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"
[[annotations]]
path = "tests/auto/quick/qquicktextdocument/data/hello.md"
comment = "test"
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GPL-3.0-only"
[[annotations]]
path = ["src/quickcontrols/universal/README.md"]
precedence = "closest"
comment = "to be confirmed"
SPDX-FileCopyrightText = "None"
SPDX-License-Identifier = "Unlicense"
[[annotations]]
path = ["**.toml", "licenseRule.json"]
precedence = "override"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"
[[annotations]]
path = ["**/qt_attribution.json"]
precedence = "override"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"
[[annotations]]
path = ["**LICENSE*"]
precedence = "override"
comment = "License file."
SPDX-FileCopyrightText = "None"
SPDX-License-Identifier = "CC0-1.0"
[[annotations]]
path = ["examples/quick/quickshapes/weatherforecast/assets/generate.bat"]
precedence = "override"
comment = "the SPDX expression in file cannot be parsed"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd"
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR BSD-3-Clause"
[[annotations]]
path = "examples/quick/vectorimage/generate.bat"
precedence = "override"
comment = "reuse cannot read it. override to avoid skipping the file"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR BSD-3-Clause"
[[annotations]]
path = "src/quick/doc/snippets/qquickrhiitem/qquickrhiitem_intro.vert"
precedence = "override"
comment = "example and snippets. Override needed here, unclear why."
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR BSD-3-Clause"

View File

@ -0,0 +1,80 @@
# Copyright (C) 2022 The Qt Company Ltd.
# SPDX-License-Identifier: BSD-3-Clause
# Create a header containing a hash that describes this library. For a
# released version of Qt, we'll use the .tag file that is updated by git
# archive with the tree hash. For unreleased versions, we'll ask git
# rev-parse. If none of this works, we use CMake to hash all the files
# in the src/qml/ directory.
# Skip recreation of the hash when doing a developer build.
function(qt_declarative_write_tag_header target_name)
set(out_file "${CMAKE_CURRENT_BINARY_DIR}/qml_compile_hash_p.h")
if(FEATURE_developer_build AND EXISTS "${out_file}")
target_sources(${target_name} PRIVATE "${out_file}")
set_source_files_properties("${out_file}" PROPERTIES GENERATED TRUE)
return()
endif()
set(tag_file "${CMAKE_CURRENT_SOURCE_DIR}/../../.tag")
set(tag_contents "")
if(EXISTS "${tag_file}")
file(READ "${tag_file}" tag_contents)
string(STRIP "${tag_contents}" tag_contents)
endif()
find_program(git_path git)
if(tag_contents AND NOT tag_contents STREQUAL "$Format:%T$")
set(QML_COMPILE_HASH "${tag_contents}")
elseif(git_path AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/../../.git")
execute_process(
COMMAND ${git_path} rev-parse HEAD
OUTPUT_VARIABLE QML_COMPILE_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
endif()
string(LENGTH "${QML_COMPILE_HASH}" QML_COMPILE_HASH_LENGTH)
if(QML_COMPILE_HASH_LENGTH EQUAL 0)
set(sources_hash "")
file(GLOB_RECURSE qtqml_source_files "${CMAKE_CURRENT_SOURCE_DIR}/*")
foreach(file IN LISTS qtqml_source_files)
file(SHA1 ${file} file_hash)
string(APPEND sources_hash ${file_hash})
endforeach()
string(SHA1 QML_COMPILE_HASH "${sources_hash}")
endif()
string(LENGTH "${QML_COMPILE_HASH}" QML_COMPILE_HASH_LENGTH)
if(QML_COMPILE_HASH_LENGTH GREATER 0)
configure_file("qml_compile_hash_p.h.in" "${out_file}")
else()
message(FATAL_ERROR "QML compile hash is empty! "
"You need either a valid git repository or a non-empty .tag file.")
endif()
target_sources(${target_name} PRIVATE "${out_file}")
set_source_files_properties("${out_file}" PROPERTIES GENERATED TRUE)
endfunction()
# Generate a header file containing a regular expression jit table.
function(qt_declarative_generate_reg_exp_jit_tables consuming_target)
set(generate_dir "${CMAKE_CURRENT_BINARY_DIR}/.generated")
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
string(APPEND generate_dir "/debug")
elseif(CMAKE_BUILD_TYPE STREQUAL "Release")
string(APPEND generate_dir "/release")
endif()
set(output_file "${generate_dir}/RegExpJitTables.h")
set(retgen_script_file "${CMAKE_CURRENT_SOURCE_DIR}/../3rdparty/masm/yarr/create_regex_tables")
add_custom_command(
OUTPUT "${output_file}"
COMMAND "${QT_INTERNAL_DECLARATIVE_PYTHON}" ${retgen_script_file} ${output_file}
MAIN_DEPENDENCY ${retgen_script_file}
VERBATIM
)
target_sources(${consuming_target} PRIVATE ${output_file})
target_include_directories(${consuming_target} PRIVATE $<BUILD_INTERFACE:${generate_dir}>)
set_source_files_properties(${output_file} PROPERTIES
GENERATED TRUE
_qt_non_module_header TRUE)
endfunction()

View File

@ -0,0 +1,47 @@
{
"Project": {
"BuildSystemIntegration": {
"child_order": [
"GCCSetup",
"CMake",
"LinkLibraries"
]
},
"CMake": {
"_active": true,
"_copy_from": "CMakeIntegration",
"build_environment": {},
"build_options": "-j4",
"generate_options": "--fresh",
"generator": "Ninja"
},
"GCCSetup": {
"_active": true,
"_copy_from": "Command",
"build_command": "gccsetup --cc gcc --cxx g++ --config ../../../axivion/"
},
"LinkLibraries": {
"_active": true,
"_copy_from": "AxivionLinker",
"input_files": [
"build/lib/lib*.so*.ir",
"build/qml/*/lib*.so*.ir",
"build/qml/*/*/lib*.so*.ir",
"build/qml/*/*/*/lib*.so*.ir",
"build/qml/*/*/*/*/lib*.so*.ir"
],
"ir": "build/$(env:TESTED_MODULE_COIN).ir",
"plugin_files": [
"build/plugins/*/lib*.so*.ir"
]
}
},
"_Format": "1.0",
"_Version": "7.6.2",
"_VersionNum": [
7,
6,
2,
12725
]
}

View File

@ -0,0 +1,23 @@
version: 2
tags: [git]
accept_configuration:
condition: property
property: features
not_contains_value: Disable
machine_type:
Build:
cores: 8
Test:
cores: 4
instructions:
Build:
- type: EnvironmentVariable
variableName: VERIFY_SOURCE_SBOM
variableValue: "ON"
- !include "{{qt/qtbase}}/coin_module_build_template_v2.yaml"
Test:
- !include "{{qt/qtbase}}/coin_module_test_template_v3.yaml"
- !include "{{qt/qtbase}}/coin_module_test_docs.yaml"

View File

@ -0,0 +1,24 @@
# Copyright (C) 2022 The Qt Company Ltd.
# SPDX-License-Identifier: BSD-3-Clause
#### Inputs
#### Libraries
#### Tests
#### Features
qt_extra_definition("QT_VERSION_STR" "\"${PROJECT_VERSION}\"" PUBLIC)
qt_extra_definition("QT_VERSION_MAJOR" ${PROJECT_VERSION_MAJOR} PUBLIC)
qt_extra_definition("QT_VERSION_MINOR" ${PROJECT_VERSION_MINOR} PUBLIC)
qt_extra_definition("QT_VERSION_PATCH" ${PROJECT_VERSION_PATCH} PUBLIC)

View File

@ -0,0 +1,16 @@
dependencies:
../qtbase:
ref: c07c2d5a527a644d36e7853d55132ae38921682f
required: true
../qtimageformats:
ref: 3b6b1fb96041f1bc85a8f42593bef2ee7bcdca6c
required: false
../qtlanguageserver:
ref: f38cd19f2a8b09e37f1050b0a9853a3e194936cc
required: false
../qtshadertools:
ref: 75786914936b73212ae342f83c9a27ae4a69f406
required: false
../qtsvg:
ref: c75099a75e81df35e7347a65e301bbf1011831a5
required: false

8
qtdeclarative/dist/REUSE.toml vendored Normal file
View File

@ -0,0 +1,8 @@
version = 1
[[annotations]]
path = ["**"]
precedence = "override"
comment = "Licensed as documentation."
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"

View File

@ -0,0 +1,166 @@
Qt 5.10 introduces many new features and improvements as well as bugfixes
over the 5.9.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.10 series is binary compatible with the 5.10.x series.
Applications compiled for 5.9 will continue to run with 5.10.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-58060] DialogButtonBox with Material style now uses the Android
button layout.
****************************************************************************
* Controls *
****************************************************************************
- AbstractButton:
* [QTBUG-49820] Added support for icons. The following properties are
now available for derived types to use: icon.name, icon.source,
icon.width, icon.height, icon.color.
* [QTBUG-49820] Added display property to allow control over how icons
and text are displayed within buttons, without having to implement
custom delegates.
* [QTBUG-50705] Added AbstractButton::action property.
- Action:
* [QTBUG-50705] Introduced Action, an abstract user interface action
that can have shortcuts and be assigned to buttons.
- ActionGroup:
* [QTBUG-50705] Introduced ActionGroup, a non-visual group of actions
that is mutually exclusive by default.
- ApplicationWindow:
* [QTBUG-61336] The attached activeFocusControl property has been made
functional with a plain QML Window to make the functionality available
when using QQuickWindow/View/Widget instead of ApplicationWindow.
* [QTBUG-61336] Deprecated the overlay grouped property in favor of the
newly introduced Overlay attached properties.
- ButtonGroup:
* Added exclusive property to allow creating non-exclusive button
groups.
- Container:
* Deprecated removeItem(int) in favor of removeItem(Item) and
takeItem(int) with clearer semantics. The former destroys the item,
whereas the latter transfers ownership to the caller.
- Dialog:
* Added "result" property that holds whether the dialog was previously
accepted or rejected.
* Added a standardButton() method for accessing the standard buttons in
the dialog's button box.
* [QTBUG-59423] Added missing applied(), discarded(), helpRequested(),
and reset() signals that are emitted when the respective standard
buttons are clicked.
- DialogButtonBox:
* [QTBUG-59423] Added missing applied(), reset(), and discarded()
signals.
- Menu:
* [QTBUG-50471] Added a popup() method that opens a menu at the mouse
cursor on desktop platforms that have a mouse cursor available, and
otherwise centers the menu over its parent item.
* Added support for declaring Actions. The new "delegate" property is
used to define a Component that is used to create menu items that
present the actions.
* Deprecated removeItem(int) in favor of removeItem(Item) and
takeItem(int) with clearer semantics. The former destroys the item,
whereas the latter transfers ownership to the caller.
* [QTBUG-60351] Added support for cascading sub-menus.
* Added addMenu(), insertMenu(), removeMenu(), and takeMenu() methods
for adding and removing sub-menus programmatically.
* Added addAction(), insertAction(), removeAction(), and takeAction()
methods for adding and removing actions programmatically.
* Added currentIndex property for styling purposes.
* Added actionAt() and menuAt() accessors.
* Added a dismiss() method. Unlike close() that only closes a menu and
its sub-menus, dismiss() closes the whole hierarchy of menus,
including the parent menus.
* Added "count" property.
- MenuBar:
* [QTBUG-60350] Introduced a MenuBar control.
- MenuItem:
* Added a "menu" property that provides access to the menu that contains
the menu item.
* Menu has been fixed to highlight its items while key navigating and
mouse hovering to ensure seamless item highlight between mouse hover
and key navigation. In order to provide appropriate highlighting that
works for key navigation and mouse hover, styles should bind their
visual highlight to MenuItem::highlighted instead of
Control::activeFocus or Control::hovered.
- Overlay:
* [QTBUG-61336] Introduced Overlay attached properties and signals that
supersede the overlay grouped property in Application Window. The
Overlay attached type allows providing background dimming for popups
without requiring an ApplicationWindow instance.
- Popup:
* Added an "opened" boolean property that holds whether a popup is fully
open. That is, the popup is visible and neither the enter nor exit
transitions are running.
* Added "enabled" property.
* Added a read-only "mirrored" property that is true when the popup's
locale is right-to-left.
- RangeSlider:
* Added horizontal and vertical properties to make it more convenient to
create orientation-dependent bindings in styles.
- ScrollBar:
* Added horizontal and vertical properties to make it more convenient to
create orientation-dependent bindings in styles.
- ScrollIndicator:
* Added horizontal and vertical properties to make it more convenient to
create orientation-dependent bindings in styles.
- Slider:
* Added horizontal and vertical properties to make it more convenient to
create orientation-dependent bindings in styles.
- SpinBox:
* [QTBUG-58760] Added wrap-property to allow wrapping circular
spinboxes.
- StackView:
* Allowed specifying a transition when clearing the stack view.
- SwipeView:
* Added horizontal and vertical properties to make it more convenient to
create orientation-dependent bindings in styles.
- TabBar:
* Added index/tabBar/position attached properties.
****************************************************************************
* Styles *
****************************************************************************
- Introduced a Fusion style that offers a platform agnostic
desktop-oriented look'n'feel.
- Added the Imagine style, which is based on image assets that can be
provided using a predefined naming convention.
- Added support for specifying the default font for different styles in
qtquickcontrols2.conf.
- Fixed the style selection mechanism so that now it is possible to
organize platform and locale-specific files into sub-directories, such
as "+linux", "+macos", and "+windows".

View File

@ -0,0 +1,49 @@
Qt 5.10.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.10.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.10 series is binary compatible with the 5.9.x series.
Applications compiled for 5.9 will continue to run with 5.10.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
This release contains all fixes included in the Qt 5.9.4 release.
****************************************************************************
* Qt 5.10.1 Changes *
****************************************************************************
Controls
--------
- AbstractButton:
* [QTBUG-65193] Made button's text win over action's when both are
specified.
- Action:
* [QTBUG-65108] Fixed an issue where a checkable action would toggle
twice when toggling an associated checkable button.
* [QTBUG-65889] Fixed shortcuts in Repeater.
Styles
------
- Imagine:
* [QTBUG-65500] Fixed to respect user font settings from
qtquickcontrols2.conf.
Third-Party Code
----------------
- [QTBUG-65409] Document constants from AngularJS in
src/imports/controls/material/ElevationEffect.qml

View File

@ -0,0 +1,161 @@
Qt 5.11 introduces many new features and improvements as well as bugfixes
over the 5.10.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.11 series is binary compatible with the 5.10.x series.
Applications compiled for 5.10 will continue to run with 5.11.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.11.0 Changes *
****************************************************************************
Important Behavior Changes
--------------------------
- [QTBUG-56295] CheckBox and CheckDelegate no longer force the tristate
property to true when setting checkState to Qt.PartiallyChecked. This
allows the controls to present a partially checked state without being
interactively tri-state.
- [QTBUG-56295] CheckBox and CheckDelegate no longer consider the partially
checked state as a checked state. This fixes check state cycling for non-
tri-state controls so that the check state goes from partially checked to
fully checked state.
Controls
--------
- AbstractButton:
* The autoRepeat property was promoted from Button to AbstractButton.
* Added autoRepeatDelay and autoRepeatInterval properties.
* [QTBUG-62811] Added pressX and pressY properties.
* [QTBUG-66625] Fixed the icon property group type registration.
- Action:
* [QTBUG-65193] Made AbstractButton's icon properties win over Action's
when both are set.
* [QTBUG-66625] Fixed the icon property group type registration.
- ButtonGroup:
* [QTBUG-56295][QTBUG-63782] Added checkState property that indicates
the combined check state of the entire group.
- CheckBox:
* [QTBUG-63238] Made it possible to implement nextCheckState() in QML.
- CheckDelegate:
* [QTBUG-63238] Made it possible to implement nextCheckState() in QML.
- ComboBox:
* [QTBUG-61348] Fixed key search in the popup.
* [QTBUG-66044] Fixed wheel event propagation.
- Control:
* [QTBUG-66133] Fixed focus scope controls, such as Frame, GroupBox,
Page, and Pane, to respect click focus policy by clearing a potential
sub-focus child. This makes it possible to close the virtual keyboard
by clicking the background of a Pane that has Qt.ClickFocus set as its
focusPolicy, for example.
* [QTBUG-66133] Fixed focus scope controls to respect wheel focus
policy.
- Dial:
* [QTBUG-66637] Fixed to keep mouse grab on mouse press.
- DialogButtonBox:
* [QTBUG-59719] Fixed implicit size calculation with one button.
- Drawer:
* [QTBUG-66637] Fixed to no steal mouse/touch grab when e.g. dragging a
horizontal Slider in a horizontal Drawer.
- Label:
* [QTBUG-65880] Fixed a background size regression caused by deferred
execution.
- Popup:
* [QTBUG-66113] Fixed restoring focus for popups that did not originally
request focus, but gained focus after opening.
* Fixed Shortcuts in Popups with window context not being activated.
- RangeSlider:
* [QTBUG-66637] Fixed to keep mouse grab on mouse press.
- ScrollBar:
* [QTBUG-56557] Added minimumSize, visualSize, and visualPosition
properties.
- ScrollIndicator:
* [QTBUG-56557] Added minimumSize, visualSize, and visualPosition
properties.
- Slider:
* [QTBUG-66637] Fixed to keep mouse grab on mouse press.
- SpinBox:
* Added a displayText property that allows styles to create a simple
and efficient QML binding to display the textual value instead of
calling the textFromValue() JS-function.
* [QTBUG-66044] Fixed wheel event propagation.
- StackView:
* [QTBUG-51321] Fixed to transfer focus to the current item.
* [QTBUG-67118] Fixed a crash with initialItem.
- TextArea:
* [QTBUG-67334] Fixed the background to not scroll when TextArea is
placed in a ScrollView.
* [QTBUG-65880] Fixed a background size regression caused by deferred
execution.
- TextField:
* [QTBUG-65880] Fixed a background size regression caused by deferred
execution.
Styles
------
- [QTBUG-66430] Fixed to not override/reset platform default fonts and
palettes if :/qtquickcontrols2.conf exists but doesn't define fonts
or palettes.
- Fusion:
* [QTBUG-66752] Fixed BusyIndicator to show up when running is set to
true after creation.
* [QTBUG-66276] Added missing plugins.qmltypes.
- Material:
* Decreased Dial's handle size from 14 to 10.
* [QTBUG-64872] Made BusyIndicator's line size adapt to the size of the
control.
* [QTBUG-58646] Fixed artifacts in ripple effects.
* [QTBUG-67442] Fixed CheckBox's, CheckDelegate's, RadioButton's and
RadioDelegate's indicator in disabled state.
- Universal:
* Decreased Dial's handle size from 20 to 14.
Platform
--------
- ColorDialog:
* [QT3DS-1363] Fixed currentColor to get correctly updated when opening
the dialog first time.
- Menu:
* [QTBUG-55251] Fixed positioning on high-DPI screens.
* [QTBUG-66876] Fixed menu titles not being visible if they were defined
using qsTr() or bindings.
* [QTBUG-66889] Fixed a crash on exist with sub-menus on Windows.
- MenuItem:
* [QTBUG-66386] Fixed checked state handling.

View File

@ -0,0 +1,25 @@
Qt 5.11.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.11.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.11 series is binary compatible with the 5.10.x series.
Applications compiled for 5.10 will continue to run with 5.11.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.11.1 Changes *
****************************************************************************
- [QTBUG-67684] ComboBox: don't block the escape/back key
- [QTBUG-67684] ComboBox: reset when hidden

View File

@ -0,0 +1,32 @@
Qt 5.11.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.11.0 through 5.11.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.11 series is binary compatible with the 5.10.x series.
Applications compiled for 5.10 will continue to run with 5.11.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.11.2 Changes *
****************************************************************************
- [QTBUG-69897] StackView: fixed a crash in viewItemTransitionFinished()
- [QTBUG-69839] ColorDialog: fixed a crash when initializing the platform dialog helper
- [QTBUG-69506] IconImage: prevented the color from being applied twice
- [QTBUG-66483] Popup: fixed a crash on exit when using a shader
- [QTBUG-68219] Styles: fixed handling of QRC paths in QT_QUICK_CONTROLS_STYLE_PATH
- [QTBUG-68858] Menu: fixed items not being scrollable when using Window
- [QTBUG-68737] Tumbler: fixed to respect currentIndex changes in onModelChanged
- [QTBUG-68769] TextArea, TextField: fixed to use the control's renderType in placeholder text
- SpinBox: fixed "function expressions as statements" warnings

View File

@ -0,0 +1,20 @@
Qt 5.11.3 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.11.0 through 5.11.2.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.11 series is binary compatible with the 5.10.x series.
Applications compiled for 5.10 will continue to run with 5.11.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
- This release contains only minor code improvements.

View File

@ -0,0 +1,171 @@
Qt 5.12 introduces many new features and improvements as well as bugfixes
over the 5.11.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- AbstractButton:
* Added implicitIndicatorWidth and implicitIndicatorHeight properties.
- ComboBox:
* Added implicitIndicatorWidth and implicitIndicatorHeight properties.
- Control:
* Added horizontalPadding and verticalPadding properties as a convenient
way to set both left and right, or top and bottom paddings in one go.
* Unless explicitly specified, baselineOffset is now automatically
updated based on the top padding of the control and the baselineOffset
of the contentItem. Styles no longer need to specify the
baselineOffset in QML.
* [QTBUG-60156] Added implicitBackgroundWidth and
implicitBackgroundHeight properties that can be used to simplify
complex implicit size bindings.
* Added implicitContentWidth and implicitContentHeight properties that
can be used to simplify complex implicit size bindings.
* [QTBUG-60156] Added topInset, bottomInset, leftInset, and rightInset
properties to control the geometry of the background similarly to how
paddings control the geometry of the contentItem.
- Dial:
* [QTBUG-56323] Added the inputMode property. This property controls how
the dial is interacted with. The circular input mode (default, old
behavior) operates on an absolute input system, whereas the horizontal
and vertical input modes use a relative input system.
- Dialog:
* Added implicitHeaderWidth, implicitHeaderHeight, implicitFooterWidth,
and implicitFooterHeight properties.
- DialogButtonBox:
* Added buttonLayout property that can be used to arrange the buttons.
* Added contentWidth and contentHeight properties.
- GroupBox:
* Added implicitLabelWidth and implicitLabelHeight properties.
- Label:
* Added implicitBackgroundWidth and implicitBackgroundHeight properties
that can be used to simplify complex implicit size bindings.
[ChangeLog][Controls][TextArea] Added implicitBackgroundWidth and
implicitBackgroundHeight properties that can be used to simplify
complex implicit size bindings. [ChangeLog][Controls][TextField] Added
implicitBackgroundWidth and implicitBackgroundHeight properties that
can be used to simplify complex implicit size bindings.
* Added topInset, bottomInset, leftInset, and rightInset properties to
control the geometry of the background similarly to how paddings
control the geometry of the contentItem.
- Page:
* Added implicitHeaderWidth, implicitHeaderHeight, implicitFooterWidth,
and implicitFooterHeight properties.
- Popup:
* Added horizontalPadding and verticalPadding properties as a convenient
way to set both left and right, or top and bottom paddings in one go.
* [QTBUG-60354] Added anchors.centerIn to Popup to allow a covenient way
of centering a popup.
* Added implicitBackgroundWidth, implicitBackgroundHeight,
implicitContentWidth, and implicitContentHeight properties.
* [QTBUG-60156] Added topInset, bottomInset, leftInset, and rightInset
properties to control the geometry of the background similarly to how
paddings control the geometry of the contentItem.
- QQuickStyle:
* [QTBUG-67062] Added stylePathList() and addStylePath() methods for
managing the list of directories where Qt Quick Controls 2 searches
for available styles.
- RangeSlider:
* [QTBUG-67311] Added a moved() signal to each handle (similar to the
Slider's moved() signal) to react to the values being interactively
changed by the user.
* [QTBUG-67317] Added a valueAt() function to allow accessing each
handle's value when the live property is set to false.
* Added first.implicitHandleWidth, first.implicitHandleHeight,
second.implicitHandleWidth, and second.implicitHandleHeight
properties.
* [QTBUG-62784] Added touchDragThreshold property for configuring the
threshold to initiate the touch 'drag' of the handle of the slider. The
mouse 'drag' won't be affected by the property.
- Slider:
* Added implicitHandleWidth and implicitHandleHeight properties.
* [QTBUG-62784] Added touchDragThreshold property for configuring the
threshold to initiate the touch 'drag' of the handle of the slider. The
mouse 'drag' won't be affected by the property.
- SpinBox:
* Added up.implicitIndicatorWidth, up.implicitIndicatorHeight,
down.implicitIndicatorWidth, and down.implicitIndicatorHeight
properties.
- SwipeView:
* Added contentWidth and contentHeight properties.
- TextArea:
* Added topInset, bottomInset, leftInset, and rightInset properties to
control the geometry of the background similarly to how paddings
control the geometry of the contentItem.
* Added placeholderTextColor property for user convenience to customize
the placeholderText color to fit the backgrounds.
- TextField:
* Added topInset, bottomInset, leftInset, and rightInset properties to
control the geometry of the background similarly to how paddings
control the geometry of the contentItem.
* [QTBUG-66260] Added placeholderTextColor property for user convenience
to customize the placeholderText color to fit the backgrounds.
- ToolTip:
* [QTBUG-62890] Added non-attached show() and hide() methods to make it
more flexible to meet certain requirements.
- Tumbler:
* [QTBUG-66358] Added positionViewAtIndex() function that calls the
respective PathView/ListView function, depending on the value of wrap.
This allows changing currentIndex without animations.
****************************************************************************
* Material *
****************************************************************************
- [QTBUG-51109] Added Dense variant of the Material style for use on
desktop platforms. Some controls are slightly smaller in height and use
smaller font sizes. The variant can be enabled by setting
QT_QUICK_CONTROLS_MATERIAL_VARIANT to Dense or setting Variant=Dense in
the qtquickcontrols.conf file.
****************************************************************************
* Platform *
****************************************************************************
- Menu:
* [QTBUG-67730] Deprecated iconName and iconSource properties in favor
of icon.name and icon.source grouped properties.
* [QTBUG-67730] Added icon.mask grouped property.
[ChangeLog][Platform][MenuItem] Added icon.mask grouped property.
[ChangeLog][Platform][SystemTrayIcon] Added icon.mask grouped
property.
- MenuItem:
* [QTBUG-67730] Deprecated iconName and iconSource properties in favor
of icon.name and icon.source grouped properties.
- SystemTrayIcon:
* [QTBUG-67730] Deprecated iconName and iconSource properties in favor
of icon.name and icon.source grouped properties.

View File

@ -0,0 +1,20 @@
Qt 5.12.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
- This release contains only minor code improvements.

View File

@ -0,0 +1,27 @@
Qt 5.12.10 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.9.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5.12/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- [QTBUG-84579] Fixed crash on exit when centering Popup within Overlay in
StackView item.
- [QTBUG-79464] QQuickPopup: fixed focus not being transferred to the
appropriate item when multiple popups were closing.

View File

@ -0,0 +1,60 @@
Qt 5.12.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0 through 5.12.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- [QTBUG-73849] Fixed incorrect documentation link to
Number.toLocaleString().
- [QTBUG-72536] Fixed bug with long text in ScrollView.
- [QTBUG-73447] Fixed Menu's appearance not changing when enabled state
changes
- [QTBUG-70181] Fixed disabled menu items getting focus.
- [QTBUG-69540] Fixed disabled sub-menu items being highlighted.
- [QTBUG-72023] Fixed font and palette settings in .conf files not being
respected.
- [QTBUG-69682] Fixed Menu not being dismissed when the triggered item
disables itself.
- [QTBUG-73412] Fixed Dial's new properties not being detected by Creator.
- [QTBUG-73202] Documented how to move active focus out of TextArea with
tab.
- [QTBUG-72786] Fixed palette colors not propagating to ComboBox's popup.
- [QTBUG-73179] Fixed Qt.labs.platform.FileDialog not honoring folder
property.
- [QTBUG-72811] Fixed AbstractButton's clicked() signal not being emitted
after long press.
- [QTBUG-72746] Fixed crash on exit when using popups.
- [QTBUG-72372] Fixed issue where a button would go outside of
DialogButtonBox.
- [QTBUG-71902] Fixed incorrect font size in certain styles on Windows.
- [QTBUG-72750] Fixed Slider's wheel event propagation.
****************************************************************************
* Controls *
****************************************************************************
Fusion
------
- [QTBUG-70819] Made Active and Disabled button colors closer to Widgets'
Fusion style.
- [QTBUG-70819] Use white ButtonText when a dark system theme is in use.
- [QTBUG-70652] Use system palette for highlightedText instead of a fixed
white color.

View File

@ -0,0 +1,46 @@
Qt 5.12.3 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0 through 5.12.2.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- [QTBUG-70451] DialogButtonBox: fixed buttons with equal roles being
randomly sorted.
- [QTBUG-70161] ComboBox: fixed popup immediately closing on iOS
- [QTBUG-72886] DialogButtonBox: fixed content size calculation
- [QTBUG-74226] Fixed attached ToolTips using the timeout of the last shown
tool tip
- [QTBUG-72536] ScrollView now respects the content size set on/by
the flickable
- [QTBUG-73354] Menu: enter/return can now be used to activate items,
rather than just space.
- [QTBUG-71290] Drawer: fixed infinite positioning loop
- [QTBUG-66494] Page: fixed binding loop
****************************************************************************
* Styles *
****************************************************************************
Default
--------
- [QTBUG-72786] Made ItemDelegate respect highlightedText and improved
highlightedText color so that text shows up against a highlighted background.
This also allows easily switching ComboBox to a dark style via palette
customization.

View File

@ -0,0 +1,20 @@
Qt 5.12.4 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0 through 5.12.3.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
- This release contains only minor code improvements.

View File

@ -0,0 +1,28 @@
Qt 5.12.5 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0 through 5.12.4.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- TextArea:
* [QTBUG-76369] Fixed rendering issue using the Material style.
- Container
* [QTBUG-76164] Fixed crash when removing items.

View File

@ -0,0 +1,33 @@
Qt 5.13 introduces many new features and improvements as well as bugfixes
over the 5.12.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.13 series is binary compatible with the 5.12.x series.
Applications compiled for 5.12 will continue to run with 5.13.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- Added SplitView, a control that lays out items horizontally or vertically
with a draggable splitter between each item.
- Added cache property to icon.
- [QTBUG-75072] ScrollBar: fixed value not changing when scrolling via
VoiceOver.
- [QTBUG-74661] QQuickComboBox: we no longer hide popup when it's focused.
- [QTBUG-69096] Doc: expanded upon Pane's Content Sizing section.
- [QTBUG-74902] Doc: added a Size section to explain StackView's sizing
behavior.
- [QTBUG-74688] SpinBox: fixed indicators being hovered when mouse is moved
while pressed.
- [QTBUG-74276] Fix SplitView crash when using certain attached properties.

View File

@ -0,0 +1,31 @@
Qt 5.13.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.13.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.13 series is binary compatible with the 5.12.x series.
Applications compiled for 5.12 will continue to run with 5.13.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- [QTBUG-76356] Accessibility: a Switch now has checkbox as its accessibleRole.
- [QTBUG-75572] Fixed an issue with transforming Shortcut.sequence to string.
- [QTBUG-75844] The text cursor no longer disappears while dragging it
around on iOS with the magnifier showing.
- [QTBUG-75972] The countChanged signal now will be emitted when a new
model is set on a ComboBox.
- [QTBUG-67343] It's now OK to use a ShaderEffect in a ComboBox delegate
(fixed in Qt Quick, tested in Controls 2)

View File

@ -0,0 +1,25 @@
Qt 5.13.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.13.0 through 5.13.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.13 series is binary compatible with the 5.12.x series.
Applications compiled for 5.12 will continue to run with 5.13.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- QQuickTextArea:
* Fixed rendering issue when using TextArea in a ScrollView.

View File

@ -0,0 +1,51 @@
Qt 5.14 introduces many new features and improvements as well as bugfixes
over the 5.13.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.14 series is binary compatible with the 5.13.x series.
Applications compiled for 5.13 will continue to run with 5.14.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- ComboBox:
* Added valueRole, currentValue and indexOfValue(). These allow
convenient management of data for a role associated with the text
role.
- QQuickMenuBar:
* Fixed issue with dynamically menu bar items not losing their highlight
when their menu was dismissed.
- QQuickPopup:
* Fixed the issue that Popup doesn't respond to CloseOnEscape if the
initial value of visible is true
- [QTBUG-79790] Fixed issue where font changes would result in an extra
signal being emitted.
- [QTBUG-59330] The documentation now advises against naming root resource
directories with the same name as a style name.
- [QTBUG-79302] SplitView: fix issue where Repeater items were not created.
- [QTBUG-79302] SplitView: fix cursor shape staying as Split*Cursor in some
cases.
- [QTBUG-79270] Fixed assertion failure when hiding a SplitView with only
one item.
****************************************************************************
* Universal *
****************************************************************************
- TabBar:
* Disabled wrapping. The Universal style TabBar now behaves like TabBar
from other styles.

View File

@ -0,0 +1,29 @@
Qt 5.14.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.14.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.14 series is binary compatible with the 5.13.x series.
Applications compiled for 5.13 will continue to run with 5.14.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- StackView:
* [QTBUG-80353] fixed crash when recursively removing items.
* [QTBUG-57267] fix an issue where the current item became hidden.
- SplitView:
* [QTBUG-79846] fixed hoverable child items breaking handle hover state.

View File

@ -0,0 +1,40 @@
Qt 5.14.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.14.0 through 5.14.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.14 series is binary compatible with the 5.13.x series.
Applications compiled for 5.13 will continue to run with 5.14.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- [QTBUG-82032] AbstractButton: fixed clicked() being emitted after
doubleClicked().
- [QTBUG-81935] ToolTip: fixed timeout not activating if opened during exit
transition.
- [QTBUG-77202] Control: we now account for when a touch event is
synthesized by Qt as a mouse event.
- [QTBUG-81796] DialogButtonBox: fixed explicitly set button text not being
rendered.
- [QTBUG-75682] Fixed issue where Qt Quick Designer was not able to work
with the module on WebAssembly/static builds.
- [QTBUG-80970] RangeSlider: fixed errors in the documentation's example
code.
- [QDS-456] placeholderText is now set by default in Qt Design Studio
instead of text when dragging a TextField or TextArea onto the form
editor.
- [QTBUG-81216] Fixed QQuickStyle::setFallbackStyle() not working on
Android.

View File

@ -0,0 +1,80 @@
Qt 5.15 introduces many new features and improvements as well as bugfixes
over the 5.14.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.15 series is binary compatible with the 5.14.x series.
Applications compiled for 5.14 will continue to run with 5.15.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
Qt 5.15 introduces many new features and improvements as well as bugfixes
over the 5.14.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5.15/index.html
The Qt version 5.15 series is binary compatible with the 5.14.x series.
Applications compiled for 5.14 will continue to run with 5.15.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-72085] Old delegate items (background, contentItem, etc.) are no
longer destroyed, as they are technically owned by user code. Instead,
they are hidden, unparented from the control (QQuickItem parent, not
QObject), and Accessible.ignored is set to true. This prevents them from
being unintentionally visible and interfering with the accessibility
tree when a new delegate item is set.
See the following page for more information:
https://doc.qt.io/qt-5/qtquickcontrols2-customize.html#considerations-for-custom-styles
****************************************************************************
* Controls *
****************************************************************************
- Added HorizontalHeaderView and VerticalHeaderView for use with TableView.
- Added selectTextByMouse property to ComboBox.
- [QTBUG-82473] Fixed Menu not taking padding into account when checking
if it is interactive.
- [QTBUG-73687] Fixed Menu positioning when a scale is set.
- [QTBUG-81867] Fixed hidden SplitView items causing visible items to not
be resizable.
- [QTBUG-82020] Fixed ComboBox text not being retranslated after a
translator is installed.
- [QTBUG-79501] Fixed keyboard navigation via tab in non-modal popups
(i.e. Drawer).
- [QTBUG-78858] Fixed Editable ComboBox's auto-completion performance.
****************************************************************************
* Styles *
****************************************************************************
Material
--------
- [QTBUG-70768] Added missing visual distinction between enabled and
disabled sliders.
- [QTBUG-70768] Aligned Slider's visuals closer to the Material Design
guidelines.
Imagine
-------
- [QTBUG-82463] Fixed squished Dial.

View File

@ -0,0 +1,49 @@
Qt 5.15.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.15.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5.15/index.html
The Qt version 5.15 series is binary compatible with the 5.14.x series.
Applications compiled for 5.14 will continue to run with 5.15.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- [QTBUG-64151] QQuickSpinBox: fixed "function expressions as statements"
warning.
- [QTBUG-85804] SwipeDelegate: fixed being able to call close() when
pressed. This conflicts with the behavior of SwipeDelegate. The
released() or clicked() signals should be used instead.
- [QTBUG-85806] SwipeDelegate: fixed closed() being emitted when already
closed.
- [QTBUG-85884] Fixed Dialog not releasing focus when it was hidden as a
result of losing focus.
- [QTBUG-84488] Fixed ComboBox popup position jumping when opened with
styles that user enter transitions.
- [QTBUG-84579] Fixed crash on exit when centering Popup within Overlay in
StackView item.
- [QTBUG-81976][QTBUG-86131] Fixed various "Cannot read property 'width'
of null" errors.
- [QTBUG-84381] StackView: fixed heap-use-after-free when pushing after clear.
- [QTBUG-83554] ComboBox: fixed currentValue not being updated on model
changes.
Platform
--------
- MenuItem:
* [QTBUG-84102] Fix MenuItem.icon.* properties not being accessible when
importing version 1.1.

View File

@ -0,0 +1,42 @@
Qt 5.15.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.15.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5.15/index.html
The Qt version 5.15 series is binary compatible with the 5.14.x series.
Applications compiled for 5.14 will continue to run with 5.15.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- [QTBUG-83698] Fixed issue where a menu opened by pressing enter (handled
via attached Keys property) would instantly trigger the first menu
item.
- [QTBUG-86851] QQuickMenu: fixed memory leak due to contentModel not being
deleted. Also fixed a heap-use-after-free that was exposed by the
previously mentioned fix.
- [QTBUG-85884] Fixed expected item not getting focus when a dialog closes.
- [QTBUG-85719] Fixed SpinBox failing to validate input correctly after
previous input was out of range.
****************************************************************************
* Styles *
****************************************************************************
Material
--------
- [QTBUG-85699] Fixed binding loops when binding between attached
properties.

View File

@ -0,0 +1,196 @@
Qt 5.7.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.7.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.7 series is binary compatible with the 5.6.x series.
Applications compiled for 5.6 will continue to run with 5.7.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- AbstractButton, Control, and Container now calculate their implicit size
based on the implicit size of the content item plus paddings, and the
implicit size of the background item. This makes it convenient to implement
custom controls and buttons, because the implicit size calculation for
these abstract/non-visual base types works as expected out of the box, but
may cause surprises if an application relies on the old behavior that a
custom control does not have any implicit size by default.
- Drawers have been changed to follow the same visibility rules than all
other types of popups do. This means that drawers no longer stay visible
at the window edge in order to intercept input events, because that caused
severe conflicts in input handling and stacking order between multiple
drawers and other popups.
- Popups have been fixed to respect explicitly set width and height.
Previously, explicitly set size was accidentally ignored when a popup had
implicit size set.
****************************************************************************
* Controls *
****************************************************************************
- ApplicationWindow:
* [QTBUG-55143] Fixed the content layout to take header and footer
visibility into account.
- ComboBox:
* [QTBUG-54573] Fixed a bug which caused ghost items, from outside the
popup's visible area, to appear in the popup.
* [QTBUG-55118] Fixed the display text to be properly updated on model
changes.
* [QTBUG-55050] Fixed the default delegates to respect the popup width.
* [QTBUG-55030] Fixed the highlighted item to be visible in the popup when
it is opened.
- Control:
* [QTBUG-56007] Fixed the hovered state to get cleared when hidden.
- Dial:
* [QTBUG-55228] Fixed step size and snap mode handling with ranges starting
from a non-zero value.
- Drawer:
* [QTBUG-54578] Fixed a closed drawer to not peek out from the window edge
while resizing the window.
* [QTBUG-54629] Fixed a bug in drag margin handling that allowed the user
to sometimes drag out the drawer even if dragging was disabled.
* Fixed a bug in the calculation of swipe velocity.
* [QTBUG-54800] Fixed conflicts between multiple drawers.
* [QTBUG-54794][QTBUG-55022] Fixed conflicts between drawers and other
popups.
* [QTBUG-55703] Fixed the stacking order of multiple drawers and popups.
* [QTBUG-55995] Fixed flickering on touch release.
* [QTBUG-55360] Made it possible to control the vertical position of
a horizontal drawer, and vice versa. This allows placing a drawer below
a header/toolbar, for instance.
- Page:
* [QTBUG-55143] Fixed the content layout to take header and footer
visibility into account.
- RangeSlider:
* [QTBUG-55015] Fixed step size and snap mode handling with ranges starting
from a non-zero value.
- Slider:
* [QTBUG-54140] Fixed step size and snap mode handling with ranges starting
from a non-zero value.
- Popup:
* [QTBUG-56025] Fixed to respect explicitly set width and height.
* [QTBUG-53419] Fixed hover events to not leak through popups or modal
background dimming.
* [QTBUG-55004] Fixed popups to appear above the QML-based dialogs from
QtQuick.Dialogs 1.x.
* [QTBUG-55347] Fixed a crash on dynamic parent item changes.
* [QTBUG-54797] Fixed the background dimming to update accordingly on
dynamic changes to the dim and modal properties.
* [QTBUG-55729] Fixed popups to close on touch events when using a plain
Window instead of ApplicationWindow.
* [QTBUG-54913] Fixed hover event delivery with plain Window.
* [QTBUG-55769] Fixed wheel events to not leak through modal background
dimming.
- ScrollIndicator:
* [QTBUG-55620] Fixed to respect the paddings when overshooting, so that
the indicator doesn't move outside the bounds of the attached flickable.
- SpinBox:
* [QTBUG-56215] Fixed valueFromText() to not get called for non-editable
spinboxes.
- StackView:
* Fixed the "unknown argument" warning when popping down to the current
item.
* [QTBUG-54552] Fixed to claim ownership of dynamically created items.
* [QTBUG-56158] Fixed a crash in pop() when attempting to pop an item that
is still activating from a previous popup.
* [QTBUG-55749] Allowed loading remote URLs.
- SwipeDelegate:
* [QTBUG-54648] Fixed the use of buttons or other interactive controls at
the sides or behind the delegate.
* [QTBUG-54660][QTBUG-54780] Fixed content re-layouting issues.
* [QTBUG-55040] Added a warning for conflicting anchors.
- Switch:
* [QTBUG-55647] Fixed focus on tap/click over the handle.
* Fixed missing pressed() and released() signals.
* Fixed dragging of the handle on touch.
- SwitchDelegate:
* Made the handle draggable.
- TabBar:
* [QTBUG-55129] Fixed a bug which caused ghost items, from outside the
tabbar's visible area, to appear in the tabbar.
* [QTBUG-55129] Improved the behavior of flickable tabs.
* [QTBUG-56265] Fixed mixing of fixed and implicitly resized tabs.
* Fixed to re-layout as appropriate when tabs are resized at run-time.
- TabButton:
* [QTBUG-55129] Fixed implicit width calculation.
- TextArea:
* [QTBUG-54615] Fixed mouse double click to select a word.
* [QTBUG-54897] Fixed to not intercept input events outside the visual
bounds when attached to a Flickable.
* Set a caret or ibeam mouse cursor, indicating that the control can accept
and display text input.
- TextField:
* [QTBUG-54615] Fixed mouse double click to select a word.
* Set a caret or ibeam mouse cursor, indicating that the control can accept
and display text input.
* [QTBUG-55684] Improved the implicit size calculation.
- ToolTip:
* Fixed the shared tooltip instance to get destructed when the associated
QML engine is destructed.
* [QTBUG-55347] Fixed attached properties to apply to the shared tooltip
instance only when the shared tooltip is visible for the respective item
that the property is attached to.
* [QTBUG-54206] Fixed a bug that caused the shared tooltip to sometimes
fade out when it should stay visible.
* [QTBUG-55572] Fixed delay and visibility handling for standlone tooltips.
Material
--------
- Fixed (optional) elevation effects for Frame, GroupBox, Pane, and TabBar.
- Fixed SpinBox text color in disabled state.
- [QTBUG-54269] Added documentation for Material.Shade and the related
parameter of Material.color().
- [QTBUG-54935] Fixed white text on white background in ComboBox that is
placed in a ToolBar.
- [QTBUG-54472] Fixed rendering issues with multiple BusyIndicators.
- [QTBUG-55366] Fixed the default foreground and background colors read from
:/qtquickcontrols2.conf or environment variables.
- [QTBUG-55687] Fixed several issues with accent and background inheritance.
- Fixed the accent color, where the shade depends on the theme, to update as
appropriate on run-time theme changes.
- [QTBUG-52631] Fixed style inheritance issues with popups.
- [QTBUG-53266] Fixed the background color of dialogs in the dark theme.
- Fixed text cursor blink period.
Universal
---------
- Fixed Dial press effect.
- [QTBUG-52738] Fixed editor colors in the dark theme.
- [QTBUG-55366] Fixed the default foreground and background colors read from
:/qtquickcontrols2.conf or environment variables.

View File

@ -0,0 +1,208 @@
Qt 5.8 introduces many new features and improvements as well as bugfixes
over the 5.7.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.8 series is binary compatible with the 5.7.x series.
Applications compiled for 5.7 will continue to run with 5.8.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- Control:
* Control::hoverEnabled has been made to inherit to children, to make it
possible to disable hover effects for a tree of controls in one place.
- Tumbler:
* Changed the default value of visibleItemCount to 5 to make it visually
clearer that it's a Tumbler.
* [QTBUG-53587] Changed the default value of wrap to be false when count
is less than visibleItemCount. Explicitly setting wrap overrides this
behavior.
****************************************************************************
* Controls *
****************************************************************************
- AbstractButton:
* A plain AbstractButton now calculates its implicit size based on the
implicit size of the content item plus paddings, and the implicit size
of the background item.
* [QTBUG-51554] The checkable property has been made accessible from
QML. Previously it was only exposed for Button and MenuItem, but it is
now available for any AbstractButton to make it possible to create
custom QML-based checkable buttons.
* [QTBUG-57085] Fixed auto-repeat to not cancel on the tiniest mouse/touch
move, but keep repeating until moved outside the button.
* Fixed press-and-hold for checkable buttons to not toggle the checked
state on release after press-and-hold.
- ButtonGroup:
* Added clicked(AbstractButton) signal for centralized click handling for
grouped buttons.
- ComboBox:
* [QTBUG-56884] Added handling for Home and End keys.
* [QTBUG-56884] Added missing keyboard search functionality.
* [QTBUG-54935] Added a flat property that provides more suitable looks
for using ComboBox in a ToolBar.
- Container:
* Added incrementCurrentIndex() and decrementCurrentIndex() methods for
changing the current index without losing its property binding.
* A plain Container now calculates its implicit size based on the
implicit size of the content item plus paddings, and the implicit size
of the background item.
- Control:
* A plain Control now calculates its implicit size based on the implicit
size of the content item plus paddings, and the implicit size of the
background item.
- Dialog:
* Added a new Dialog type to provide convenience for handling dialog
popups. Dialog integrates with DialogButtonBox, and provides convenient
accepted() and rejected() signals.
- DialogButtonBox:
* Added DialogButtonBox to provide convenience for handling dialog buttons.
DialogButtonBox is able to create a set of standard buttons with a single
line of QML code, and provides convenient accepted() and rejected() signals.
- Drawer:
* [QTBUG-55360] Made it possible to control the vertical position of a
horizontal drawer, and vice versa. This allows placing a drawer below
a header/toolbar, for instance.
- MenuSeparator:
* [QTBUG-54862] Added MenuSeparator to visually distinguish between groups
of items in a menu.
- Page:
* [QTBUG-56709] Page has been made to calculate its implicit size based
on the implicit size of the header, content, and footer plus paddings,
and the implicit size of the background item.
- Popup:
* [QTBUG-56025] Fixed to respect explicitly set width and height.
* [QTBUG-56562] The QML Shortcut type from QtQuick has been fixed to
respect modal popups from QtQuick Controls 2.
* [QTBUG-56755] Fixed binding loops with size-dependent positioning.
- RangeSlider:
* [QTBUG-50003] Added first.hovered and second.hovered properties that
hold whether the respective handles are hovered.
- RoundButton:
* [QTBUG-54967] Added RoundButton.
- Slider:
* [QTBUG-53847] Added valueAt() method for converting any position to a
value in the slider's range. It is also possible to use valueAt() to get
continuous value updates.
- SpinBox:
* [QTBUG-50003] Added up.hovered and down.hovered properties that hold
whether the respective buttons are hovered.
* [QTBUG-57085] Fixed auto-repeat to not cancel on the tiniest mouse/touch
move, but keep repeating until moved outside the button.
- StackView:
* Added attached StackView.activated(), StackView.deactivated(),
StackView.activating(), and StackView.deactivating() signals that are
convenient for initializing and cleaning up item-specific resources.
* [QTBUG-55405] Added StackView.removed() attached signal to provide a
way to delete items that StackView won't.
* Made it possible to choose the visual transition type for any operation.
This allows using for example push and pop transitions with replace(),
which allows implementing an "infinite" back and forward navigation
pattern while keeping the amount of instantiated items constant.
- SwipeDelegate:
* [QTBUG-54651] Added swipe.close() for setting swipe.position to 0.
* [QTBUG-54651] Added swipe.completed() for responding to completion of
swipes.
* [QTBUG-54651] Added attached SwipeDelegate.pressed property and
SwipeDelegate.clicked() signal for detecting when non-interactive
left/right/behind items are pressed and clicked.
* [QTBUG-56312][QTBUG-57285] Fixed spurious clicked() signal emission when
released outside the delegate.
* [QTBUG-57271] Fixed swipes that begin over a child item of a delegate.
- SwipeView:
* Added SwipeView.isNextItem and SwipeView.isPreviousItem attached
properties to make it straight-forward to use Loader for unloading
pages that are outside the reach.
* [QTBUG-54268] Added interactive property for controlling whether swipe
interaction is enabled.
- TextArea:
* [QTBUG-51009] Added pressed() and released() signals.
- TextField:
* [QTBUG-51009] Added pressed() and released() signals.
* Aligned the name of the pressAndHold() argument with TextArea
- ToolSeparator:
* [QTBUG-54862] Added ToolSeparator to visually distinguish between groups
of items in a toolbar by separating them with a line. It can be used in
horizontal or vertical toolbars.
- Tumbler:
* [QTBUG-53587] Added wrap property to control whether or not tumbler
wraps when it reaches the top and bottom.
****************************************************************************
* Styles *
****************************************************************************
- Added support for specifying the fallback style for custom styles via
:/qtquickcontrols2.conf, QT_QUICK_CONTROLS_FALLBACK_STYLE or
QQuickStyle::setFallbackStyle().
Material
--------
- [QTBUG-50003] Implemented ripple and hover effects.
- Fixed (optional) elevation effects for Frame, GroupBox, Pane, and
TabBar.
- Added Material.System theme enum value, that can be used to let the
Material style choose either the light or dark theme based on the
system theme colors.
Universal
---------
- [QTBUG-50003] Implemented hover effects
- Added Universal.System theme enum value, that can be used to let the
Universal style choose either the light or dark theme based on the
system theme colors.
****************************************************************************
* Platform *
****************************************************************************
- Introduced a new experimental Qt Labs Platform module that provides the
following native (Qt Widgets fallback when not available) QML types:
* ColorDialog
* FileDialog
* FolderDialog
* FontDialog
* Menu
* MenuBar
* MenuItem
* MenuItemGroup
* MenuSeparator
* MessageDialog
* StandardPaths
* SystemTrayIcon

View File

@ -0,0 +1,208 @@
Qt 5.9 introduces many new features and improvements as well as bugfixes
over the 5.8.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- Added multi-touch support for buttons and sliders. It is now possible to
touch-interact with multiple sliders and buttons at the same time.
- By popular demand, Slider, RangeSlider, and Dial have been changed to
report live value updates by default. This can be disabled by setting the
"live" property to false.
- [QTBUG-59920] Sliders and Dials now react immediately when using a
mouse. Now the initial drag threshold applies only on touch, to avoid
conflicting with flickables.
- [QTBUG-58667] ScrollBar now reacts immediately when using a mouse.
- [QTBUG-59629] Set explicit cursors on all interactive controls.
****************************************************************************
* Controls *
****************************************************************************
- AbstractButton:
* Added support for multi-touch.
* [QTBUG-57203] Added a toggled() signal that is emitted whenever a
checkable button is interactively toggled by the user by using either
touch, mouse, or keys.
- ApplicationWindow:
* [QTBUG-58932] The "data" property has been renamed to contentData, as it
was documented. Notice that a "data" property still exists in QML
Window, but is no longer overshadowed in ApplicationWindow.
- Control:
* [QTBUG-50992] Resolved the "Object destroyed during incubation" issue
that occurred randomly when customizing built-in delegates.
- ComboBox:
* [QTBUG-53876] Added "editable" property.
* Added "down" property.
- DelayButton:
* Added DelayButton that incorporates a delay before the button becomes
activated, to prevent accidental triggers.
- Dial:
* Added a "live" property that determines whether the dial provides live
updates for the "value" property while the handle is dragged.
* Added support for wheel handling when wheelEnabled is set to true.
* [QTBUG-57203] Added a moved() signal that is emitted whenever the dial
is interactively moved by the user by using either touch, mouse, or
keys.
* Fixed handling of inverted wheel events (natural touchpad scrolling
direction on macOS).
- Drawer:
* [QTBUG-53169] Added "interactive" property that specifies whether the
drawer reacts to swipes. This can be used to make drawer a
non-closable persistent side-bar.
- Menu:
* Fixed populating Menus with a Repeater.
- Popup:
* Allowed passing a Window as a parent when creating dynamic Popup
instances using eg. Component.createObject(). Previously, Popup
assumed the parent to be an Item, and would complain "cannot find
any window to open popup in" if a Window was passed.
* [QTBUG-58196] Allowed dynamic window changes after construction.
* Fixed the CloseOnRelease close policy for non-modal popups.
- RangeSlider:
* Added a "live" property that determines whether the range slider
provides live updates for the first.value and second.value properties
while the respective handle is dragged.
- ScrollBar:
* [QTBUG-56569] Added snapMode property for incremental or discrete
scrolling.
* Added an "interactive "property. A non-interactive ScrollBar is visually
and behaviorally similar to ScrollIndicator. This property is useful
for switching between typical mouse- and touch-orientated UIs with
interactive and non- interactive scroll bars, respectively.
* Added a "policy" property, which holds whether the scroll bar is shown
always/never/as needed (default).
- ScrollView:
* Added ScrollView. On touch, ScrollView enables flicking and makes
the scroll bars non-interactive. When interacted with a mouse device,
flicking is disabled and the scroll bars are interactive.
- Slider:
* Added support for multi-touch.
* Added a "live" property that determines whether the slider provides live
updates for the "value" property while the handle is dragged.
* [QTBUG-57203] Added a moved() signal that is emitted whenever the
slider is interactively moved by the user by using either touch,
mouse, wheel, or keys.
* Fixed handling of inverted wheel events (natural touchpad scrolling
direction on macOS).
- SpinBox:
* [QTBUG-56837] Added inputMethodHints and inputMethodComposing
properties for controlling the input method when using editable spin
boxes.
* [QTBUG-57203] Added a valueModified() signal that is emitted whenever
the value of a spin box has been interactively modified by the user by
using either touch, mouse, wheel, or keys.
* [QTBUG-60356] Forwarded focus to the internal editor of an editable
spin box.
- StackView:
* [QTBUG-56801] Added attached "StackView.visible" property that can be
used to control whether items below the top- most item are kept
visible.
* [QTBUG-57266] Prevented pushing duplicate items.
* [QTBUG-59034] Fixed pop/replace exit transition leak, sometimes leading
to random crashes since a transition could have been left running in the
background at destruction time.
* [QTBUG-59098] Prevented StackView filtering mouse ungrab events to avoid
MouseAreas being stuck in the pressed state.
* [QTBUG-59634] Improved component creation errors by using the standard
QML warning system that gives a context/location for the error.
- SwipeDelegate:
* [QTBUG-57192] Added "swipe.enabled" property to allow disabling of
swiping.
* Added swipe.open(side) method that can be used to programmatically
open the side item on the specified side, which can be either
SwipeDelegate.Left or SwipeDelegate.Right.
* Added swipe.opened() and swipe.closed() signals, which are emitted
when the delegate has been opened or closed by swipe, and the
respective transition has finished.
* Added a swipe.transition property that holds the transition that is
applied when a swipe is released, or swipe.open() or swipe.close() is
called.
- SwipeView:
* [QTBUG-56031] Added "orientation" property.
- TabBar:
* [QTBUG-57858] Added contentWidth and contentHeight properties that are
automatically calculated based on the total size of the tab items, but
can be manually overridden if desired. This fixes an issue that TabBar
was not able to reliably calculate an implicit size, and could in
certain scenarios enter an infinite loop due to a circular dependency
between the items' sizes and the tabbar's size.
- TextArea:
* [QTBUG-55999] Fixed the horizontal alignment of the placeholder text
in right-to-left UIs.
* TextArea has been made to work inside ScrollView, providing necessary
scroll bars out of the box.
- TextField:
* [QTBUG-55999] Fixed the horizontal alignment of the placeholder text
in right-to-left UIs.
- Tumbler:
* Added a "moving" property that describes whether the tumbler is
currently moving, due to the user either dragging or flicking the
tumbler.
****************************************************************************
* Styles *
****************************************************************************
- Added support for a QT_QUICK_CONTROLS_STYLE_PATH environment variable,
which can be used to specify lookup paths for Qt Quick Controls 2
styles. This allows device manufacturers and Linux distributions to
specify a system-wide style installation folder that may be located
outside the Qt installation tree.
- Added support for a QT_QUICK_CONTROLS_STYLE_CONF environment variable,
which can be used to override the default location of the Qt Quick
2 Controls configuration file (:/qtquickcontrols2.conf).
- QQuickStyle:
* Added availableStyles() method that returns the list of available
built-in styles.
Default
--------
- Visualized RangeSliders's range.
Material
--------
- [QTBUG-58797] Fixed cursor visibility for read-only editors.
****************************************************************************
* Platform *
****************************************************************************
- Menu:
* Fixed sub-menu handling when using the Qt Widgets fallbacks on
platforms that do not support native menus (Windows, for example).

View File

@ -0,0 +1,75 @@
Qt 5.9.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.9.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
- [QTBUG-58571] Enabled the use of QML caching at build time.
- [QTBUG-61144] Added a configure feature for disabling multi- touch
support (configure -no-feature-quicktemplates2-multitouch).
****************************************************************************
* Controls *
****************************************************************************
- ApplicationWindow:
* [QTBUG-60893] Fixed access to revisioned members in base classes.
- ComboBox:
* [QTBUG-60684] Fixed an empty popup being shown after model is cleared.
- Container:
* [QTBUG-61310] Fixed a crash that occurred with Repeater under certain
circumstances.
- Menu:
* Fixed key navigation to skip separators.
- Page:
* [QTBUG-61109] Fixed the initial content layouting of dynamically created
Page instances.
- Popup:
* [QTBUG-61114] Fixed font inheritance for popups.
- SpinBox:
* [QTBUG-61426] Fixed valueModified() to get emitted on repeated value
changes during long press.
- StackView:
* Fixed clear() to not emit depthChanged() when the view is empty.
****************************************************************************
* Styles *
****************************************************************************
- QQuickStyle:
* [QTBUG-60973] Fixed availableStyles() to exclude debug symbol folders
(.dSYM) on macOS.
Default
--------
- RangeSlider:
* Fixed the second handle to visualize its pressed state.
Material & Universal
--------------------
- ScrollBar:
* Fixed flashing when calling decrease() or increase() for key navigation.

View File

@ -0,0 +1,79 @@
Qt 5.9.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.9.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Controls *
****************************************************************************
- BusyIndicator:
* [QTBUG-61785] Fixed busy indicators to not block touch events.
- Control:
* [QTBUG-63119] Fixed font inheritance in item views.
- Drawer:
* [QTBUG-61581] Fixed multi-touch leaking through modal overlay.
* [QTBUG-59652] Fixed non-modal drawer drag/swipe open and close.
- Menu:
* [QTBUG-61608] Fixed press-and-hold support by removing OnReleaseOutside
from the default close policy, to avoid closing on release when opened
from an onPressAndHold signal handler.
- Popup:
* [QTBUG-61698] Fixed multi-touch leaking through modal overlay
* Fixed focus handling for chained popups. When a popup is closed, focus
is now restored to the next popup in chain instead of transferring focus
to the window content.
* [QTBUG-62158] Fixed popups to take Window::contentOrientation into
account.
- PageIndicator:
* Fixed interactive page indicators to work on touch.
* [QTBUG-61785] Fixed non-interactive page indicators to not block touch
events.
- ScrollIndicator:
* [QTBUG-61785] Fixed scroll indicators to not block touch events.
- SpinBox:
* [QTBUG-61426] Fixed to emit valueModified() on long press.
* [QTBUG-62508] Fixed initial value validation.
- StackView:
* [QTBUG-62153] Fixed a crash that would occur when pushing new items
from a StackView.onRemoved signal handler.
* Fixed resolving of the initialItem URL.
- TextArea:
- TextField:
* [QTBUG-62854] Improved the Default style.
- ToolTip:
* [QTBUG-60492] Fixed tooltips to not block shortcuts.
- Tumbler:
* [QTBUG-61374] Fixed a regression with currentIndex and currentItem.
****************************************************************************
* Calendar *
****************************************************************************
- MonthGrid:
* [QTBUG-61585] Fixed the clicked() signal to be emitted on touch.

View File

@ -0,0 +1,52 @@
Qt 5.9.3 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.9.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.9.3 Changes *
****************************************************************************
- ButtonGroup:
* [QTBUG-62946][QTBUG-63470] Fixed an issue in tracking of the currently
checked button that caused a crash under certain circumstances.
- DialogButtonBox:
* [QTBUG-63898] Fixed a potential crash when using DialogButtonBox without
a contentItem.
- Popup:
* [QTBUG-63672] Fixed a dangling QML context that was causing random
crashes in the QML engine debug service.
- ScrollView:
* [QTBUG-62325] Fixed a binding loop when using a wrapping TextArea as
content.
- StackView:
* Fixed a resource leak that occurred when the creation of the initial
item failed.
- TextArea & TextField:
* [QTBUG-62854] Improved the Default style.
- Removed top-level opacity assignments to allow full customization.
- Added more distinction between disabled and placeholder text.
- Made disabled text more visible.
- ToolTip:
* [QTBUG-63644] Disabled hover to avoid tooltips blocking hover events,
which are typically used for showing tooltips on desktop platforms.

View File

@ -0,0 +1,63 @@
Qt 5.9.4 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.9.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- As a fix to QTBUG-50992, execution of delegates, such as contentItem and
background, is deferred until the construction of a control is complete,
or a delegate is accessed. Consequently, if a delegate is replaced with
a custom delegate, the default delegate is not created. Previously, when
a default delegate was replaced by a custom delegate, the default
delegate was nevertheless created and destroyed during the construction
of the control.
****************************************************************************
* Controls *
****************************************************************************
- [QTBUG-64548] Fixed shortcuts in QQuickWidget
- [QTBUG-65016] Fixed QQuickStyle::setFallbackStyle() in static builds
- [QTBUG-50992] Fixed a bug which caused delegates of customized controls
to often be "destroyed during incubation" when asynchronously incubated
by item views or asynchronous loaders.
- BusyIndicator:
* [QTBUG-62874] Fixed busy animation in QQuickWidget
- ProgressBar:
* [QTBUG-62874] Fixed indeterminate animation in QQuickWidget
- StackView:
* [QTBUG-65084] Fixed to not block touch events.
- SwipeView:
* [QTBUG-62110] Fixed slow swiping in large views
- ToolButton:
* [QTBUG-65052] Fixed round ripple for square buttons in the Material style
- Tumbler:
* [QTBUG-65165] Made currentIndex animations take a constant amount of
time (1 second) regardless of how many items are in the model. This
prevents Tumblers with large amounts of items from scrolling too
slowly when changing the currentIndex.

View File

@ -0,0 +1,56 @@
Qt 5.9.5 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.9.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.9.5 Changes *
****************************************************************************
Controls
--------
- Control:
* [QTBUG-65880] Fixed a bug in deferred execution, that caused the
background item to not follow the size of the control under certain
circumstances, leading to a visually missing background.
* [QTBUG-66133] Fixed focus scope controls, such as Frame, GroupBox,
Page, and Pane, to respect click and wheel focus policies by clearing
a potential sub-focus child. This makes it possible to close the virtual
keyboard by clicking the background of a Pane that has Qt.ClickFocus
set as its focusPolicy, for example.
- ComboBox:
* [QTBUG-65962] Fixed a bug in deferred execution, that caused the popup's
bindings to not get finalized under certain circumstances, leading to
a visually missing popup.
- Popup:
* [QTBUG-66113] Fixed restoring focus to popups that did not request
focus when opened, but gained focus later.
Platform
--------
- Menu:
* [QTBUG-55251] Fixed opening position on high-DPI screens.
Third-Party Code
----------------
- [QTBUG-65409] Document constants from AngularJS in
src/imports/controls/material/ElevationEffect.qml

View File

@ -0,0 +1,39 @@
Qt 5.9.6 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.9.0 through 5.9.5.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.9.6 Changes *
****************************************************************************
Controls
--------
- Label:
* [QTBUG-65880] Fixed a background size regression caused by deferred
execution.
- TextArea:
* [QTBUG-67334] Fixed the background to not scroll when TextArea is
placed in a ScrollView.
* [QTBUG-65880] Fixed a background size regression caused by deferred
execution.
- TextField:
* [QTBUG-65880] Fixed a background size regression caused by deferred
execution.

View File

@ -0,0 +1,17 @@
Qt 6.0.0 is a new major version release of Qt. It is not binary compatible with
earlier Qt releases.
The goal has been to retain as much source compatibility with Qt 5.15 as
possible, but some changes were inevitable to make Qt a better framework.
To make it easier to port to Qt 6.0, we have created a porting guide to
summarize those changes and provide guidance to handle them. In the guide, you
can find links to articles about changes that may affect your application and
help you transition from Qt 5.15 to Qt 6.0:
https://doc.qt.io/qt-6/portingguide.html
For more details refer to the online documentation of Qt 6.0:
https://doc.qt.io/qt-6/index.html

71
qtdeclarative/dist/changes-5.0.1 vendored Normal file
View File

@ -0,0 +1,71 @@
Qt 5.0.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.0.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5.0/
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
- [QTBUG-23485, QTBUG-28611] Fix tst_qquicktextinput on Windows and Mac.
- Documentation for scene graph examples.
- Improve example with key navigation.
- qmltest: Added the possibility to use QApplication
- [QTBUG-28611] Quick tests: Introduce QQmlMessageHandler.
- Compile with QT_NO_WHEELEVENT.
- Various documentation improvements.
****************************************************************************
* Library *
****************************************************************************
- Don't try to grab Windows with invalid or a zero size
- Do not crash on some animation changes
****************************************************************************
* Platform Specific Changes *
****************************************************************************
Qt for Windows
--------------
- [QTBUG-28611] Stabilize QQuickLoader test on Windows.
- [QTBUG-28611] Fix tst_qqmlbundle on Windows.
- [QTBUG-28611] Fix tst_qqmllanguage for MSVC.
****************************************************************************
* Compiler Specific Changes *
****************************************************************************
- Fix other warnings in qtdeclarative found by GCC 4.7
- Fix warnings in QtQml due to ?: with enums of different types
- Fix compiler warnings in declarative tests.
****************************************************************************
* Tools *
****************************************************************************
- Modify qmlscene usage text to be consistent
****************************************************************************
* Plugins *
****************************************************************************
- Accessibility: Work with QQuickWindow
- Accessibility: Send value updates
- Accessibility: Improve interface handling in Quick

45
qtdeclarative/dist/changes-5.0.2 vendored Normal file
View File

@ -0,0 +1,45 @@
Qt 5.0.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.0.0 and 5.0.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5.0/
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
- Fix build when Qt is configured with -no-opengl.
- Various documentation improvements.
****************************************************************************
* Library *
****************************************************************************
- [QTBUG-29138] Strengthen reference to var properties during construction
so they can be used even if GC runs while the object is being created.
- [QTBUG-29176] Fix crash in PathView when path is empty.
- [QTBUG-29560] Fix Text and TextEdit embedding images in RichText mode.
****************************************************************************
* Platform Specific Changes *
****************************************************************************
Qt for Windows
--------------
- [QTBUG-28782] Enable sub-pixel anti-aliasing for default builds on Windows.

143
qtdeclarative/dist/changes-5.1.0 vendored Normal file
View File

@ -0,0 +1,143 @@
Qt 5.1 introduces many new features and improvements as well as bugfixes
over the 5.0.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5.1
The Qt version 5.1 series is binary compatible with the 5.0.x series.
Applications compiled for 5.0 will continue to run with 5.1.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
- The Qt.application object in QML has gained the following new members
* arguments property, containing any command line arguments of the application
* name property, containing the string of the application name
* version property, containing the string of the application version
* aboutToQuit() signal, allowing last-minute cleanup
- New Qt.platform.os property exposes the current platform.
Third party components
----------------------
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- A Window declared nested inside another Item or Window automatically
becomes transient for (centered upon) its parent's window, if x and y
were not explicitly specified
- The resources property of Item is now its own property independent
of QObject. It no longer returns all QObject children, or explicitly
sets QObject parent. The resources property now behaves as documented.
- As part of a fix for QTBUG-30555, ListView and GridView properties, such
as count, which are based off of the data model will no longer update
immediately if queried. Updates are batched to happen once per frame (or
when properties are being set). You may manually update using the
forceLayout() method, new in QtQuick 2.1.
- For QML tests, tryCompare now correctly fails when it only gets two parameters
- If a QObject has a property and a slot (or invokable method) with the same
name, in QML the previous behavior was to let the property obscure the
method; from Qt 5.1 things work in the opposite way, that is a property can
never obscure a method having the same name. This is especially important
for objects having dynamic properties, such as QQmlPropertyMap. This change
was a consequence of the fix for QTBUG-29836.
- The 'with' statement has been deprecated in the QML language. Using this
statement now produces a deprecation warning, and future versions of the
QML engine may not recognize it.
- The implicit import is now only loaded for QML files if there are
unresolved types after loading all explicit imports. Applications where
the implicit import triggered code other than the registration of types
will now need to add import "." to their QML files.
****************************************************************************
* Library *
****************************************************************************
QtQml
------
- New QML import version QtQml.Models 2.1 contains generic versions of the VisualModel
types. These new generic versions work with any QObject based delegate,
not just QQuickItem based delegates.
- New module version QtQml 2.1 provides the new Instantiator type, which
is a generic version of Repeater which works with any QObject based
delegate, not just QQuickItem based delegates.
- New convenience class QQmlApplicationEngine automatically provides
functionality common in the C++ shell of a primarily QML application.
- New qmlClearTypeRegistrations() function in qqml.h. This function drops all
static data generated by previous qmlRegisterType calls.
- New qmlRegisteredType function in qqml.h, allowing the registration of
composite types from C++.
- New baseUrl() accessor in QQmlExtensionPlugin, in case a plugin
needs to load QML or other assets from the same directory.
QtQuick
------
- New QML import version QtQuick 2.1 contains no new types, but adds new
properties, methods and signals to existing types. See the release notes
in the QtQuick documentation for details.
- QTBUG-30837: The Flickable type no longer fixes up the content area on
startup to move it inside the viewport.
- QTBUG-28086: Remote image URLs now work as a source for AnimatedSprite
****************************************************************************
* Database Drivers *
****************************************************************************
****************************************************************************
* Platform Specific Changes *
****************************************************************************
- New threaded render loop for Mac and Linux should lead to improved
graphical performance of QtQuick 2 on those platforms.
- New render loop on Windows should lead to smoother animations.
- assets: scheme supported on Android for urls inside QML
- Mac: "@2x" images are now loaded on "retina" systems.
****************************************************************************
* Compiler Specific Changes *
****************************************************************************
****************************************************************************
* Tools *
****************************************************************************
- qmlplugindump gains a -relocatable flag.
****************************************************************************
* Plugins *
****************************************************************************
- New QML import QtQuick.Dialogs 1.0 contains types for more easily adding
dialogs to an application. Initially comes with FileDialog and ColorDialog
- New QML import version QtQuick.Window 2.1 adds many new properties to both
the Screen and Window types. See the release notes in the QtQuick
documentation for further details.
- QTBUG-30915: Animating emitRate on Emitter no longer fails for specific
animation timings. As a side effect, when emitting infinite particles
changing the particle count will no longer have an effect after initial
emission (previously it no longer had an effect after a certain point
into the animation).

44
qtdeclarative/dist/changes-5.1.1 vendored Normal file
View File

@ -0,0 +1,44 @@
Qt 5.1.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.1.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5.1/
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
****************************************************************************
* Library *
****************************************************************************
- [QTBUG-32621][QTBUG-32572][QTBUG-32545] Multiple fixes for the new
QtQuick.Dialogs ColorDialog.
- [QTBUG-30908] XmlHttpRequest: Requests which receive a redirect now use
GET as per spec.
- [QTBUG-32332] QtQuick.ListView: Snap immediately once snapMode changes.
- [QTBUG-31647] QtQuick.Text: Maintain vertical position when height
changes.
****************************************************************************
* Platform Specific Changes *
****************************************************************************
Qt for Embedded
--------------
- [QTBUG-30908] Fix SceneGraph text rendering on certain OpenGL ES drivers

188
qtdeclarative/dist/changes-5.10.0 vendored Normal file
View File

@ -0,0 +1,188 @@
Qt 5.10 introduces many new features and improvements as well as bugfixes
over the 5.9.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.10 series is binary compatible with the 5.9.x series.
Applications compiled for 5.9 will continue to run with 5.10.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
- Added the QtQuick.Shapes plugin providing the Shape and ShapePath
types for rendering geometry-based stroked and filled paths.
Various types of Path existed already for defining movement trajectories
in PathView, but now they can be rendered too.
* PathLine, PathQuad, PathCubic, PathArc, PathCurve, and PathSvg
* Fill: solid color, linear, radial or conical gradients
* Stroke: colored and dashed lines
* Uses GL_NV_path_rendering on recent nVidia GPUs
- Added the Qt.labs.handlers plugin, providing a Tech Preview version
of Pointer Handlers. These are intended as an improved way of handling
gestures and events from pointing devices (mouse, touchpad, and
touchscreen so far; stylus devices are coming in a future release).
Properties acceptedButtons, acceptedModifiers, acceptedDevices, and
acceptedPointerTypes enable scoping their reaction for specific use
cases, but by default, they work equally well with mouse (as applicable)
and touch devices. So far we have four of them available in QML:
* TapHandler is for detecting clicks and taps, double-clicks,
multi-clicks and taps, and long presses.
* DragHandler provides a way of declaring an Item draggable, and also
has properties which can be used for bindings to achieve
less-mainstream use cases.
* PinchHandler can react to a pinch gesture using two or more fingers
(as configured via properties) or to a native pinch gesture from the OS.
Declaring an instance inside an Item is enough to support pinching to
scale, rotate and move that Item; and it also has properties available
for bindings to enable other use cases.
* PointHandler does not directly manipulate an Item, but just provides
information about individual touchpoints or the mouse, for binding
purposes. It is intended mainly for interactive feedback, orthogonal
to whichever Handler or Item currently has the exclusive grab.
Along with this, control over grabbing has gotten more fine-grained:
the grabPermissions property in a Pointer Handler sets rules for how
Pointer Handlers and Items negotiate for the exclusive grab; and some
Pointer Handlers are able to handle some kinds of interaction with a new
type of grab, the passive grab. There are several new logging categories
you can enable to see how event delivery is done, the grab transitions,
and so on.
As usual with Tech Preview material, we reserve the right to change it
substantially in future releases.
****************************************************************************
* Library *
****************************************************************************
QmlTest
-------
- The returned object from TestCase::grabImage now has 'width', 'height',
and 'size' properties for additional verification. In addition, there is
a save() method to be able to persist the grabbed image to disk (for
diagnostics purposes, for example).
Qt Quick
--------
- [QTBUG-58945] Added the properties ShaderEffectSource.samples and
Item.layer.samples to allow requesting MSAA rendering of an item
subtree, without enabling multisampling for the entire scene.
- [QTBUG-59462] Added support for samplerExternalOES sampler type in
ShaderEffect
- [QTBUG-60268] Added Qt.platform.pluginName property.
- [QTBUG-60268] Selecting software as default renderer moved from build
time to run time
- Resizing is done by setSize() in a couple of places, such that
the widthChanged() and heightChanged() are emitted after both
properties are updated.
- Flickable:
* [QTBUG-38515] Added a boundsMovement property that allows disabling
the default bounce effect and implementing custom edge effects.
- Item Views:
* [QTBUG-34576] ListView velocities remain correct during index-based
programmatic scrolling
- Important Behavior Change:
* [QTCREATORBUG-15000] The implicitWidthChanged2 and
implicitHeightChanged2 signals of QQuickImplicitSizeItem have been
removed. Although these were undocumented and hence private API, any
applications currently using them should use the public
implicitWidthChanged and implicitHeightChanged signals.
- Item:
* Add QQuickItem::size() and document QQuickItem::setSize().
* When subclassing QQuickItem, you should call setAcceptTouchEvents(true)
if you need the item to receive touch events. It will be required later on.
* Added a ItemEnabledHasChanged value to the ItemChange enum.
QQuickItem::itemChange(ItemEnabledHasChanged) gets called when the
item's effective enabled state has changed. The new enabled state is
stored in ItemChangeData::boolValue.
- Window:
* It is now possible to set the default render type of text-like
elements globally via the QQuickWindow::setTextRenderType() function.
If you were using the (undocumented) QT_QUICK_DEFAULT_TEXT_RENDER_TYPE
macro when building Qt Quick for the same purpose, note that the macro
value needs now to be set to the "NativeTextRendering" value, instead
of "NativeRendering".
- Screen:
* Added manufacturer, model and serial number.
- TextEdit:
* Added tabStopDistance property
- Text:
* [QTBUG-56728] Added "advance" property to Text element.
* [QTBUG-56728] Added "font.preferShaping" property to Text, TextEdit
and TextInput. This makes it possible to improve performance at the
expense of some cosmetic font features.
* [QTBUG-56728] Added "kerning" property to the font type to support
disabling kerning on text.
* [QTBUG-61984] Fixed an issue when the family of an application font
was hardcoded and applied to text before the font itself was loaded.
- Image:
* [QTBUG-59872][QTBUG-29451] Allow direct loading of pkm texture files
into Image. For example: Image { source: "myImage.pkm" }
- QtTest:
* [QTBUG-53381] Added keySequence() function in TestCase.
QtQml
-----
- [QTBUG-58493] "const" variable declarations are now available in JS as
well as QML mode.
- [QTBUG-58493] "const" variable declarations now require an initializer,
bringing them closer to the required spec behavior.
- [QTBUG-58493] "const" variable declarations now throw a SyntaxError if
multiple attempts to declare the same variable name are found. Note that
"const" is still not fully spec-compliant (i.e. reassignment at runtime
is not disallowed).
- Object.assign from the ES6 specification is now implemented.
- Number now contains the MAX_SAFE_INTEGER, MIN_SAFE_INTEGER, isInteger
and isSafeInteger properties from the ES6 specification.
- [QTBUG-24799] The instanceof keyword in JavaScript has been extended to
work on QML types and instances. This means that you are now able to use
it to verify that a var is indeed the type you expect (e.g. someVar
instanceof Rectangle).
- [QTBUG-54961] Support C++11 scoped enums in QML. These can now be
accessed as <TypeName>.<EnumName>.<EnumValue>
- The QML engine can now emit informational messages (in the
"qt.qml.binding.removal" logging category) whenever a binding is lost
due to an imperative assignment. This can be used to debug issues due to
broken bindings.
- [QTBUG-61599] Allow sending binary data, encoded as ArrayBuffer objects,
via XMLHttpRequest's send() method.
- [QTBUG-14861] Enums can now be declared directly in QML.
- [QTBUG-63464] Fix Number.isNaN() returning incorrect values with some
glibc versions.
- [QTBUG-52515] Qt.platform.os returns "qnx" when running on QNX
platforms.
- [QTBUG-60133] std::vector and QVector are now on par with QList as a
Q_INVOKABLE return type and as a property type
- QQmlEngine:
* [QTBUG-15602] Added retranslate() slot and QEvent::LanguageChange
support to refresh bindings when changing the language at runtime.
qmlscene
--------
- Added --core-profile option to request that type of OpenGL context
- Added --apptype option to set the application class (like the qml
runtime tool already had)

109
qtdeclarative/dist/changes-5.10.1 vendored Normal file
View File

@ -0,0 +1,109 @@
Qt 5.10.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.10.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.10 series is binary compatible with the 5.9.x series.
Applications compiled for 5.9 will continue to run with 5.10.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
This release contains all fixes included in the Qt 5.9.4 release.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
* A type that can be used for object declaration in QML must start with an
uppercase letter (this has always been the convention). Registration of
type names beginning with lowercase characters is now explicitly disallowed.
****************************************************************************
* Qt 5.10.1 Changes *
****************************************************************************
QtQml
-----
- [QTBUG-65924] Fixed namespaced builds with -no-qml-debug
- [QTBUG-65624] Fixed a crash with simple qsTr() bindings on var properties
- [QTBUG-36773] A qmldir file can be provided via a custom schema
- [QTBUG-64798] Property alias syntax error no longer causes a crash
- [QTBUG-44153] Fixed a crash when a property alias points to a deleted object
- [QTBUG-47321][QTBUG-51995][QTBUG-60344] We now avoid temporarily invalid
bindings (such as "Cannot read property of null") while unloading a Loader
- [QTBUG-66067] Fixed a bug with negative-valued enum values in singletons
- QML profiler:
* [QTBUG-64674] Re-enabled QML memory profiling
* [QTBUG-65190] QML profiler tracks signals globally to prevent duplication
- Platform Specific Changes:
* Fixed compilation on QNX 7.0
* Enabled x86-64 JIT for QNX
* Enabled ARM64 JIT for QNX
QtQuick
-------
- [QTBUG-50992] Fixed bugs related to deferred property bindings to avoid
item view delegate objects being destroyed during incubation or failing
to be created. This fixes a lot of related bugs in QtQuick Controls 2.
- [QTBUG-64548][QTBUG-62990][QTBUG-64367] Shortcut works in QQuickWidget
and QQuickRenderControl scenes
- [QTBUG-65789] An Image with an SVG source uses the SVG renderer to do
animorphic scaling sharply
- [QTBUG-64616] Fixed a bug with TextInput validators allowing invalid characters
- [QTBUG-52944] When a Loader loads a Window, its transient parent will now
be set to the Loader's window (i.e. the window manager should place it on top).
- Improved support for compressed textures
- Software rendering:
* [QTBUG-62867] Fixed bad clipping caused by incorrect background coordinates
- Item Views:
* [QTBUG-49218] Fixed an off-by-one layout error in GridView
* [QTBUG-64311] Fixed the removal transition animation when the last item
of a GridView or ListView is removed
- Shapes:
* [QTBUG-64951] Some rendering performance improvements; added
qt.shape.time.sync logging category
* [QTBUG-65173] Shapes work correctly in static builds
* [QTBUG-63105] Invisible Shapes can be used with OpacityMask and other
Qt Graphical Effects
- Pointer Handlers:
* [QTBUG-64692] Pointer Handlers receive events in the reverse of
declaration order, just as Items receive events in top-down Z order
* [QTBUG-65003] TapHandler consistently emits the canceled signal when
its passive or exclusive grab is taken over by another handler or item
* [QTBUG-64848] One pinch gesture cannot pinch two PinchHandlers at the
same time; to that end, we now test the target item's bounds correctly
when delivering native gesture events from trackpads
* A Pointer Handler with only a passive grab cannot prevent delivery to
other handlers by accepting all the points in the pointer event.
This enables Handlers to cooperatively modify behavior of existing controls.
* TapHandler.gesturePolicy is now DragThreshold by default (rather than
ReleaseWithinBounds), because this makes it easier for a TapHandler to
add additional onTapped behavior to existing controls. The reason is
that the DragThreshold policy only requires a passive grab, not an exclusive
grab, so it doesn't interfere with the pre-existing event delivery.
* Fixed a bug with target item translation in DragHandler
* Added plugins.qmltyles so that syntax highlighting and completion work
in Qt Creator
* Various improvements in the tests/manual/pointer manual tests
- Platform Specific Changes:
* [QTBUG-61882][QTBUG-65519] Fixed rendering of emoji on macOS
* [QTBUG-65663] Fixed re-rendering of window when dragged to a screen
with a different devicePixelRatio on macOS

167
qtdeclarative/dist/changes-5.11.0 vendored Normal file
View File

@ -0,0 +1,167 @@
Qt 5.11 introduces many new features and improvements as well as bugfixes
over the 5.10.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.11 series is binary compatible with the 5.10.x series.
Applications compiled for 5.10 will continue to run with 5.11.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
* QML module plugins used to be limited to type registrations in the
primary module namespace in the virtual registerTypes() function.
Module authors worked around this limitation by placing necessary
internal type registrations into initializeEngine() that may cause
memory leaks. Therefore this restriction has been moved and types in
any (non-protected) namespaces can be registered in the
registerTypes() function.
* In Qt 5.11 and newer versions, QML plugin modules are available with
the same minor version as the Qt release minor version number. For
example it's possible to import QtQuick.Window 2.11 or import
QtQuick.Layouts 1.11 even though there haven't been any API changes in
these modules for Qt 5.11, and the maximum possible import version
will automatically increment in future Qt versions. This is intended
to reduce confusion.
****************************************************************************
* Library *
****************************************************************************
QtQml
-----
- Qt Qml uses a completely new compiler pipeline to compile Javascript (and QML) first
into bytecode and then JIT heavily used functions into assembly.
* Lots of cleanups and performance improvement to the way function calls and Javascript
scopes are being handled.
* Improved performance of JS property lookups.
* A new bytecode format that is very compact, saving memory in many cases.
* significantly faster bytecode interpreter than in earlier versions of Qt, in many cases
reaching almost the performance of the old JIT.
* A new JIT that works on top of the bytecode interpreter and only compiles hot functions
into assembly.
* Overall test results show almost a doubling of the JS performance on platforms where we
can't use a JIT (iOS and WinRT) compared to 5.10.
* With the new JIT, JS performance is usually around 10-40% faster than in older Qt versions
(depending on the use case).
- The commercial only Qt Quick Compiler has been removed and replaced with a common solution
that works in both the open source and commercial version of Qt. No code changes are needed
for users of the old compiler.
- Fix qmlplugindump to work correctly with shadow builds.
- Fixed creation of QWidgets in QML.
- Various fixes to the debugging bridge.
- ListModel
* Support assignment of function declarations in ListElement, to allow for
models with actions.
QtQuick
-------
- QQuickWindow:
* [QTBUG-66329] We no longer synthesize redundant mouse events based on
touch events that come from a trackpad which can generate mouse events.
- Item:
* [QTBUG-20524] Added a containmentMask property. This allows any
QObject which defines Q_INVOKABLE bool contains(const QPointF &point)
(including a Shape) to mask the area of an Item that will be
sensitive to mouse and touch events.
- AnimatedSprite:
* [QTBUG-36341] AnimatedSprite's implicitWidth and implicitHeight are
now based on frameWidth and frameHeight, respectively. This means it
is no longer necessary to explicitly size AnimatedSprite.
- Image:
* [QTBUG-66127] Support detection of suitable file extension.
* Add support for ktx files containing compressed textures.
* Add experimental automatic atlasing of ETC-compressed
textures (can be enabled with QSG_ENABLE_COMPRESSED_ATLAS=1).
* [QTBUG-67019] SVG images are now scaled up if the source size is larger
than the original size.
* [QTBUG-65789] SVG images are rendered with the correct aspect ratio
when width or height is set to zero.
- AnimatedImage:
* Added a speed property. It's also OK to set it to 0 to pause
the animation.
* There is now an example to demonstrate usage of AnimatedImage.
* [QTBUG-62913] frameCount now has a NOTIFY signal to avoid binding warnings.
- Path:
* [QTBUG-62684] Add new PathAngleArc type.
- Shape:
* A containsMode property is added. If it is set to FillContains, then
Shape.contains() returns true only within the visible bounds, so its
Pointer Handlers also respond only within those bounds.
- ShapePath:
* Improved performance for complex paths.
- Text:
* [QTBUG-60328][QTBUG-67145] Fixed Text with ElideRight not being rendered
when reparented.
* [QTBUG-67007] Fixed non-integer scale factors with Text native rendering.
- Pointer Handlers:
* Added singleTapped and doubleTapped convenience signals to TapHandler.
* PointerHandlers implement QQmlParserStatus, so that subclasses can
have custom initialization in componentComplete() (just as Items can).
* [QTBUG-65651] Restore 5.9 behavior: if an Item has no PointerHandlers,
childMouseEventFilter() will not be called during post-delivery of
an unhandled event.
* TapHandler.gesturePolicy is now DragThreshold by default.
* DragHandler with target: null no longer crashes.
* [QTBUG-64852] DragHandler enforces its axis constraints even when
the parent coordinate system changes during the drag. For example
the knob of a DragHandler-based slider inside a Flickable doesn't
come out of its "groove" if you manage to drag the slider and the
Flickable at the same time.
- Loader:
* [QTBUG-63729] Avoid evaluating bindings during destruction, to
avoid some spurious errors.
* [QTBUG-66822] When deactivating a loader, do not immediately clear
its context.
- Software renderer
* [QTBUG-63185][QTBUG-65975] QSGLayer::grab now works correctly.
* [QTBUG-66381] Fixed a crash when a Window has a QObject parent
(such as Loader).
* [QTBUG-65934] Fixed renering of rounded rectangles with floating point
pixel device ratios.
- Platform Specific Changes:
* [QTBUG-67460] Fixed a problem with jumping back to the highlight
while slowly scrolling a ListView on macOS.
QtQuickTest
-----------
- [QTBUG-50064] Added QUICK_TEST_MAIN_WITH_SETUP macro to allow executing
C++ before a QML test (such as registering context properties).
QQuickWidget
------------
- [QTBUG-45641] Tab presses are now passed on to the root item to be
handled first. When not handled by the root item, it will be handled
like a standard QWidget.

56
qtdeclarative/dist/changes-5.11.1 vendored Normal file
View File

@ -0,0 +1,56 @@
Qt 5.11.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.11.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.11 series is binary compatible with the 5.10.x series.
Applications compiled for 5.10 will continue to run with 5.11.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.11.1 Changes *
****************************************************************************
QtQml
-----
- Fix regression with .import in .js files not working when using
CONFIG+=qtquickcompiler.
- Fix QML declared enums with CONFIG+=qtquickcompiler.
- Enabled JIT on INTEGRITY ARM64.
- [QTBUG-68416] Fixed a crash when incubating objects with non-existent
initial properties.
- [QTBUG-68369] Fixed a crash when modifying objects used as prototypes.
- [QTBUG-68513] Fixed a crash in the modulus operation.
- [QTBUG-68522][QTBUG-68463][QTBUG-68474][QTBUG-68474] Fixed several QML
debugging issues.
- [QTBUG-68025] Fixed loading of composite singletons from resources.
- [QTBUG-65723] Fixed repeated loading of resources with slightly
different URLs.
QtQuick
-------
- [QTBUG-68490][QTBUG-68582] Fixed incorrect high-DPI scaling in the
sprite engine which was causing AnimatedSprite to render the wrong
region of the source image, or not at all.
- [QTBUG-65648][QTBUG-68030] Ungrabbing the touch or mouse event is now
more reliable in certain situations.
- [QTBUG-67960] Fixed an issue with Canvas Context2D createRadialGradient.
- [QTBUG-67427] Fixed a crash when changing the source of AnimatedImage
after a frame change.
- [QTBUG-40366] Fixed BorderImage high-DPI with the software renderer.
- [QTBUG-67024] Fixed a crash in mapToGlobal().
- [QTBUG-44976] Fixed a DnD crash with Drag.Automatic when dragging
on a touchscreen.
- [QTBUG-59852] Fixed ListView.snapMode with non-zero ListView.spacing.

60
qtdeclarative/dist/changes-5.11.2 vendored Normal file
View File

@ -0,0 +1,60 @@
Qt 5.11.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.11.0 through 5.11.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.11 series is binary compatible with the 5.10.x series.
Applications compiled for 5.10 will continue to run with 5.11.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.11.2 Changes *
****************************************************************************
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-69328] Fixed crashes with unaligned memory access on ARM.
- [QTBUG-69475] Fixed quadratic GC behavior when allocating very large
objects.
- [QTBUG-68323] qmlRegisterType, qmlRegisterUncreateableType etc. will
now show error messages when they fail.
****************************************************************************
* QtQuick *
****************************************************************************
- Events:
* [QTBUG-61749] Fixed a warning about unregistered datatype
QQuickPointerDevice.
- Image:
* [QTBUG-66116] Fixed a memory leak when updating images in an
invisible window.
- Item Views:
* [QTBUG-67460] Fixed ListView getting stuck while scrolling after
setting currentIndex.
- Loader:
* Fixed a leak of Components when changing source url.
* [QTBUG-68738] Fixed a crash when using setSource() in an asynchronous
Loader.
- Layouts:
* [QTBUG-63269] Fixed items in layouts not being rendered when layers
are used.
- Localization and internationalization:
* [QTBUG-69196] Improved l10n and i18n in examples.

58
qtdeclarative/dist/changes-5.11.3 vendored Normal file
View File

@ -0,0 +1,58 @@
Qt 5.11.3 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.11.0 through 5.11.2.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.11 series is binary compatible with the 5.10.x series.
Applications compiled for 5.10 will continue to run with 5.11.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qt 5.11.3 Changes *
****************************************************************************
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-69973] Fixed QML comma operator property lookup failure.
- [QTBUG-70350] Fixed allocation of multi-page executable memory for
INTEGRITY.
- [QTBUG-69996] Fixed undefined behavior in MASM on 64bit architectures.
- [QTBUG-70460] Fixed deadlock in qmlplugindump.
****************************************************************************
* QtQuick *
****************************************************************************
- Accessibility: The StaticText role for Text items is now only used if
there is no explicit role set.
- Scene Graph: Fixed Leaking of resources in the OpenVG backend.
- [QTBUG-69290] Fixed leaking of textures and animation resources in
software backend.
- [QTBUG-58924] Added a warning message for the case of too many tiles in
a BorderImage.
- [QTBUG-70898] Fixed a crash on nested delivery of mouse or touch presses.
- [QTBUG-64402] Fixed a crash in QQuickAnimatorProxyJob.
- [QTBUG-69059][QTBUG-61144] Fixed confusion about mouse grabbing when
delivering pointer events to a QQuickWindow.
- [QTBUG-59620] Prevented PathView's parent from stealing mouse grabs
during double-flick.
****************************************************************************
* Building *
****************************************************************************
- [QTBUG-70414] Disabled building of XmlListModel if the "qml-network"
feature is unavailable.
- Enabled building without the "filesystemwatcher" feature.

245
qtdeclarative/dist/changes-5.12.0 vendored Normal file
View File

@ -0,0 +1,245 @@
Qt 5.12 introduces many new features and improvements as well as bugfixes
over the 5.11.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
- [QTBUG-51710] Added TableView with a similar architecture as ListView
(inheriting Flickable and using QQmlInstanceModel internally)
but 2-dimensional. It works best with a QAbstractItemModel that defines
multiple columns and rows (i.e. it's the QtQuick counterpart to QTableView)
but can also present a single-column view of other model types.
As an optimization, it maintains a pool of the delegate instances that
are visible (plus a few extras); during scrolling, as delegates fall
out of view, they are re-bound to show cells that have just come into view.
- [QTBUG-26681] Added DelegateChooser, a new type of Component to choose
different delegates in an Item View (e.g. TableView) depending on model
roles. DelegateChoice instances specify the available choices.
- Pointer Handlers and the Keys handler are now collectively called
Input Handlers [QTBUG-66651], and are fully supported as part of
Qt Quick 2.12 and forward. The Qt.labs.handlers import is now removed.
- [QTBUG-68072] Added HoverHandler to detect the position of the
hovering mouse or stylus pointer.
- The JavaScript engine now supports ECMAScript 7.
- ECMAScript modules can now be loaded directly with QJSEngine::importModule()
and imported in .qml files when using the .mjs file extension.
- Qt Quick applications can now be deployed via WebAssembly.
- The new Qt.labs.wavefrontmesh import provides an experimental
WavefrontMesh type which can read a Wavefront .obj file containing
a 2D shape, and generate a 2D mesh for use with ShaderEffect.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-7329][QTBUG-41977][QTBUG-69196] The automatic translation loading
in qml, qmlscene and QQmlApplicationEngine now tries to load
translations for all languages in QLocale::uiLanguages(). This might
require shipping an empty translation for the source language.
****************************************************************************
* QtQml *
****************************************************************************
- LoggingCategory:
* [QTBUG-67094] Added defaultLogLevel property. It is possible to define
default log level that LoggingCategory is enabled for.
- QJSEngine:
* [QTBUG-39041] Added API to throw run-time errors.
* Added function to import ECMASCript modules from the file system or
the Qt resource system.
* [QTBUG-71083] Fixed a stack overflow in the parser.
* [QTBUG-70632] It's now OK to declare a class in a .mjs module.
* [QTBUG-69475] Fixed quadratic behavior when allocating large objects.
- QQmlEngine:
* [QTBUG-56150] QML cache files are now always stored in the
application's cache directory when being generated at run-time. If
precompiled QML files exist at the source location, then they are
loaded and no cache file is being generated. The application's
uninstaller is responsible for cleaning up the cache during removal.
* [QTBUG-39970] Added API to access singletons associated with a
QQmlEngine.
* [QTBUG-53111] The onStatusChanged signal from the incubator object
that is returned from Component.incubateObject() is more reliable.
* [QTBUG-70425] Fixed translation contexts for paths with drive letters
on Windows
* [QTBUG-68350] Fix QQmlEngine::retranslate() with ListElement objects
that use translation functions such as qsTr.
* [QTBUG-51581] Properties of the JS global object will now be looked up
after local properties in the QML object. This can lead to runtime
incompatibilities if your qml file is named the same as a property of
the global object (e.g. Date.qml).
* [QTBUG-71184] Enums in subclasses can overwrite inherited enums.
* Added option to disable unscoped registration of enum classes.
* [QTBUG-69884] Fixed the visibility of the Connections.enabled property
to appear only when importing QtQml/QtQuick >= 2.3, which was introduced
with Qt 5.7. Otherwise it would accidentally shadow an "enabled"
context property, for example.
- QtTest:
* We now call cleanupTestCase() on the object given to QUICK_TEST_MAIN
before starting destruction.
* Add test init function to be called when application object is
available.
* [QTBUG-47111] ignoreWarning now supports ignoring regular expressions
as well as strings.
****************************************************************************
* QtQuick *
****************************************************************************
- Input Handlers:
* The QQuickEventPoint::GrabState enum is renamed to GrabTransition.
* [QTBUG-68941] PinchHandler.scale is now persistent between gestures,
i.e. it's the same as the target Item's scale property if there is a
target. Added an activeScale property to provide the scaling value
during a single pinch gesture (activeScale will be 1.0 whenever the
PinchHandler is not active, whereas the scale property was unintuitively
behaving that way in previous versions). This change is intended to
increase flexibility when the scaling is not done by setting an Item's
scale property, but by other means.
* [QTBUG-68077] The pointDistanceThreshold property is renamed to
margin, and now allows activating any pointer handler within a margin
around the parent Item. This makes it easier to pinch a PinchHandler
on a small item, makes it easier to comply with Fitts's Law when
a button with a TapHandler is near a screen edge, etc. If margin
is set, it overrides the parent Item's containmentMask, if any.
* [QTBUG-68106] DragHandler is now a multi-point handler: if
declared with minimumPointCount: 2 for example, it will require
two fingers to initiate the drag. This is especially useful with
target: null to handle 2-finger-drag for some alternate purpose.
* DragHandler and PinchHandler (and other future MultiPointHandler
subclasses) now have a centroid property, since that is usually
the focal point of the action or gesture being performed.
* [QTBUG-68101] QQuickHandlerPoint (i.e. a handler's centroid or
other exposed point property) includes a modifiers property so
that you can see which keyboard modifiers are being held.
* [QTBUG-61749][QTBUG-64847] The TapHandler.tapped signal includes an
eventPoint parameter so that you can see which button was tapped.
* [QTBUG-68074] The PointerHandler.grabChanged signal includes a
stateChange parameter so that you can see whether the grab was
acquired or lost.
* [QTBUG-70075] PinchHandler.centroid now has correct property values
on a macOS trackpad.
* [QTBUG-70292] The PinchHandler.pinchOrigin property is removed.
* [QTBUG-66360] PointHandler handles presses and releases of multiple
mouse buttons correctly.
* [QTBUG-69607] DragHandler doesn't react to mouse wheel events.
* [QTBUG-65012] TapHandler doesn't emit longPressed if the point
is dragged.
- AnimatedSprite:
* Added finished() signal to AnimatedSprite as a convenient way to react
to an animation finishing.
- Animation:
* Added finished() signal to Animation as a convenient way to react to
an animation finishing naturally.
- Canvas:
* [QTBUG-31807] Added set/get lineDash and lineDashOffset to Context2D
to allow non solid lines to be drawn.
- Image:
* [QTBUG-66116] Fixed a memory leak in Image in an invisible window.
- Item:
* There's now a warning whenever an Item has multiple states with the
same name.
* [QTBUG-68271] Fixed an infinite loop in tab focus chain when visiting
invisible items.
- MultiPointTouchArea:
* [QTBUG-70258] Avoid emitting gestureStarted until the drag threshold
is actually exceeded. In a QML onGestureStarted callback,
gesture.touchPoints[0].startX and startY now have correct values.
- Rectangle:
* Added support for horizontal gradients.
- Repeater:
* [QTBUG-54752] If the model is an integer, it must be less than
100,000,000 to avoid running out of memory.
- Shape:
* [QTBUG-66843][QTBUG-66457] The Shape item will not try to use
GL_NV_path_rendering by default, unless explicitly requested.
Thus the default value of enableVendorExtensions is now false.
- Flickable and Item Views:
* [QTBUG-62902] Added a synchronousDrag property that makes the content
jump to the position it would have had if there was no drag threshold,
as soon as dragging begins.
* [QTBUG-70742][QTBUG-70941] We now cancel flicking when the model is
reset, and when programmatically positioning the content, to avoid
wasting time instantiating irrelevant delegates.
* [QTBUG-49224] Fixed a crash by avoiding movement during layout.
* [QTBUG-67051] Improved interaction between snapping and sections.
* [QTBUG-69863] GridView LeftMargin and RightMargin are taken into
account when calculating positions and columns.
* [QTBUG-69059][QTBUG-61144] Fixed the regression that when a
mouse-handling Item or Control is used in a Flickable with a
pressDelay, the delegate item did not receive touchscreen taps
(in the form of mouse clicks). This fix was in 5.9.4 but somehow
did not get merged forward into 5.10 and 5.11.
* [QTBUG-59620] PathView calls setKeepMouseGrab() so that a parent
Flickable will not steal the grab from it.
- Text:
* [QTBUG-53279] Fixed an issue where updating text inside a layout would
not cause it to correctly adapt to its new width.
* [QTBUG-69356] Support pregenerated loading distance field glyph caches
to decrease startup time for applications with large amounts of text.
- QQuickWindow:
* [QTBUG-52748] You can now disable touch->mouse event synthesis in
QtQuick by calling
qGuiApp.setAttribute(Qt::AA_SynthesizeMouseForUnhandledTouchEvents,
false). This will simplify and speed up event delivery, and it will
also prevent any and all interaction with mouse-only items like
MouseArea and Flickable on a touchscreen.
* [QTBUG-70998] Touch->mouse synthesis is canceled when the touch
is ungrabbed, rather than when a new touchpoint is pressed. Thus
if you are using one finger to interact with a legacy mouse-handling
Item, and you press a second finger, the first interaction doesn't
necessarily end right away, unless some other handler steals the
grab from the first Item.
* [QTBUG-70898] Emit a warning rather than crashing if user code
calls sendEvent() while a pointer event is being delivered.
Nested event delivery is not possible because of the way that
the QQuickPointerEvent instances are reused for subsequent events.
- FolderListModel:
* [QTBUG-48757][QTBUG-70212] Added a sortCaseSensitive property that
can be set to false to sort filenames in a case-insensitive manner.
- Software renderer:
* [QTBUG-70740] Fixed a memory leak.
* Fixed QSGImageNode with QSGLayer.
* [QTBUG-68085] Italic text is no longer cut improperly due to line wrap.
* [QTBUG-70422] If Qt is built without support for threads, single-threaded
rendering is used. (This includes the WebAssembly use case.)
- Platform Specific Changes:
* [QTBUG-63026][QTBUG-65160] Now that macOS provides a proper
ScrollMomentum phase in QWheelEvent, Flickable responds more
precisely when simulated momentum on the trackpad comes to an
end, rather than using a timer to wait for it to end. This improves
robustness in some cases where scrolling was jumpy in older versions.

81
qtdeclarative/dist/changes-5.12.1 vendored Normal file
View File

@ -0,0 +1,81 @@
Qt 5.12.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Qml *
****************************************************************************
- [QTBUG-71829] Qt Quick Compiler works correctly with CMake on Windows.
- Empty resource files will not be passed to Qt Quick Compiler to be
handled when using CMake.
- [QTBUG-58454] You can now pass enum values tagged with Q_ENUM in one
class as parameters to function of a different class exposed to QML.
- [QTBUG-66976] Disk caching of compiled QML code works now for modules
with multiple QML singletons.
- [QTBUG-71138] You can extend built-in JavaScript classes with
user-defined methods.
- [QTBUG-71817] Inserting the same QObject as the same context property
multiple times does not leak memory anymore.
- [QTBUG-67292] qmlplugindump will correctly report versions of components
defined in qmldir files that also contain singletons.
- [QTBUG-71195] You can create more than the previous limit of about 2500
QML elements in the same file.
- [QTBUG-68736] On android the QML engine will not load stale cache files
anymore.
- [QTBUG-71524] JavaScript files included via Qt.include() are now parsed
as JavaScript, not as QML.
- [QTBUG-72674] Running URLs through JSON.stringify() will produce a proper
JSON string.
****************************************************************************
* Qml Tooling *
****************************************************************************
- [QTBUG-71515] The Qml profiling plugin now inserts memory events in the
correct order. This is important for the client to show a meaningful
memory profile.
- [QTBUG-71768] The qmlpreview tool does a better job at watching files for
changes, especially in the common case that editors replace files, rather
than change them in place.
- [QTBUG-71037] The QML debugger will not crash the application on
encountering certain dynamically created objects anymore.
****************************************************************************
* QtQuick *
****************************************************************************
- [QTBUG-71972] PinchHandler and DragHandler activate only when they grab points.
- [QTBUG-71466][QTBUG-71970] TapHandler resets state when giving up grab.
- [QTBUG-71431] PointHandler distributes simultaneous touch presses properly.
- [QTBUG-71955] TapHandler ignores scroll events and native gestures.
- [QTBUG-71317] Event Handlers can now be used in Windows and Dialogs.
- [QTBUG-71427] Event Handlers now function properly when created dynamically.
- [QTBUG-73137] The PinchHandler {min,max}imum{X,Y} properties that were
unintentionally included in the 5.12.0 release have now been deprecated.
Please use the xAxis and yAxis properties instead.
- [QTBUG-72376] In Text with StyledText textFormat, <s></s> and <del></del>
tags will now be interpreted as strikethrough style.
- [QTBUG-59310] Fixed vertical alignment of images in a text document.
- [QTBUG-68863] Fixed updating of text nodes in QQuickTextEdit.
- [QTBUG-71684] QQuickText: Signal content height/width changes also when resetting.
- [QTBUG-72603] Fixed regression in border-top with high-dpi.
- [QTBUG-65077] Fixed invalidation of m_cache while iterating qquickpixmapcache.
- [QTBUG-71322] Disabled antialiased clipping when painting images.
- [QTBUG-69290] Fixed leaking textures and animation resources in software backend.
- [QTBUG-65236][QTBUG-71705] Fixed null pointer access in material cache.

101
qtdeclarative/dist/changes-5.12.2 vendored Normal file
View File

@ -0,0 +1,101 @@
Qt 5.12.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0 through 5.12.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* QtQml *
****************************************************************************
- Important Behavior Changes:
* The parameters passed to C++ functions from QML are now checked for
compatibility with the expected arguments. If they cannot be
converted, a warning is printed. In future versions of Qt a type error
will be thrown in JavaScript and the function will not be invoked.
* [QTBUG-73239] Removed revisions from the new Qt.labs.settings methods
and properties that were introduced in 5.12. Qt.labs plugins are
intended to always have revision 1.0 until they graduate.
- QQmlApplicationEngine:
* [QTBUG-73649] QQmlApplicationEngine connects quit() and exit() signals
with queued connections to avoid problems with AutoConnection, when
connecting to QCoreApplication slots.
- [QTBUG-69340] QML cache files are not unnecessarily re-generated.
- [QTBUG-71325] Fixed a crash in V4 string to number conversion on 32-bit
platforms.
- [QTBUG-72137] Fixed a crash in QML garbage collector when accessing
other items from Component.onDestruction.
- [QTBUG-72352] QML can be built with -no-feature-translation.
- [QTBUG-72407] We now annotate stack traces when frames are elided
through tail calls.
- [QTBUG-72734] Fixed a crash in the parser on certain kinds of bad input.
- [QTBUG-72858] Exception handlers are correctly scoped for try blocks and
for "for ... in" loops.
- [QTBUG-72908] QML can be built with -c++std=c++11 again.
- [QTBUG-72972] QQmlMetaType deletes attached properties in its destructor
to avoid a crash.
- [QTBUG-73009] Fixed a crash with qt.qml.binding.removal.info=true.
- [QTBUG-73013] If a signal sender is deleted during the handling of the
signal in QML, the QML engine won't crash anymore.
- [QTBUG-73152] Brought behavior of String.replace() in line with other
JS engines: "x".replace("x", "$1") gives "$1" in both JSC and V8, as there
are no captures that could be used as a replacement for $1. Two-digit
captures ($nm) get applied if $nm captures exist. If there are less than nm
but more than n captures available $n is replaced by the n'th capture and m
is copied over verbatim.
- [QTBUG-73425] Fixed allocation of large arrays at startup.
- [QTBUG-73733] Fixed an access-after-delete crash in DelegateModel.
- [QTBUG-73734] When a Q_GADGET type, marked as a primitive type with
Q_DECLARE_METATYPE, is emitted with a signal, it can now be accessed in QML.
- [QTBUG-73750] Fixed undefined Q_ENUM value in QML Connections object.
- [QTBUG-73821] Fixed a failing assert on 32bit platforms.
- The JIT compiler is disabled for the IPL32 (or X32) ABI. It did not work
before.
- The tail call optimization correctly counts method arguments on 32bit
platforms now.
- The JavaScript engine now tolerates UINT_MAX as array index.
****************************************************************************
* QtQuick *
****************************************************************************
- TextInput/security:
* When the TextInput is used for password input, preallocate a buffer
for the string that stores the entered value and zero-out the string
on TextInput destruction to avoid leaking sensitive data to process
memory
- [QTBUG-63271] If a MouseArea sets itself invisible or disabled while
handling a mouse press, it does not acquire the exclusive grab
- [QTBUG-71887] TapHandler now consistently forgets touchpoints that occur
outside its parent's bounds. This eliminates the warning "pointId is
missing from current event, but was neither canceled nor released" when
tapping quickly and having some of the taps fall out of bounds.
(The warning still exists though, in case there are other scenarios where
Handlers remember "wanting" certain touchpoints and then they go missing.)
- [QTBUG-72822] PinchHandler now correctly holds its target in place when
axes are disabled.
- [QTBUG-71918] PointerHandlers are declared as direct children of
Flickable (ListView, TableView etc.) now get the pointer events properly.
- [QTBUG-42155] Canvas now handles switching between object and string
based colors
- [QTBUG-73113] Fixed a crash when reparenting QML Canvas items
- [QTBUG-73013] Fixed a crash in QuickView on setSource while deleting
the sender.
- [QT3DS-1419] Improved quality of Qt 3D Studio text labels.

75
qtdeclarative/dist/changes-5.12.3 vendored Normal file
View File

@ -0,0 +1,75 @@
Qt 5.12.3 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0 through 5.12.2.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-74677] Avoid redundant slashes and handle redundant enums when
converting resource URLs.
- [QTBUG-74190] Fixed a crash related to freezing properties.
- [QTBUG-58559] Fixed a memory leak when deleting dynamic properties on
JS objects (trigger garbage collection).
- [QTBUG-74532] qmlcachegen output is now independent of TranslationData
and thus more deterministic.
- [QTBUG-69898] Made several performance improvements with property lookups.
- [QTBUG-74476] Fixed a logic bug involving inversion of non-reflexive
comparison binops, which resulted in incorrect evaluation of some if statements.
- [QTBUG-73843] When QQmlAbstractUrlInterceptor intercepts the loading of
the qmldir file, we now use the intercepted URL to load additional files
in that import.
- [QTBUG-74058] Fixed a GC bug resulting in invalid memory read.
- [QTBUG-74148] Fixed a propertyCache memory leak with Loader and PageIndicator.
- [QTBUG-74087] Deeper recursion is now possible, and less stack space is used
during code generation. The "Maximum statement or expression depth exceeded"
error is now less likely when using 3rd party JavaScript libraries.
- [QTBUG-74188] Fixed a crash when deleting properties, due to shared ownership
of SparseArrayNode.
- [QTBUG-72807] Disabled tail calls for functions called with more arguments
than formals.
- [QTBUG-73999] Fixed number to string conversion with radix.
- [QTBUG-73985] Fixed a crash during unwinding in QJSEngine::evaluate.
- [QTBUG-33179] QML revisioning now works for grouped properties.
****************************************************************************
* QtQuick *
****************************************************************************
- [QT3DS-3238] Fixed a surface format bug on macOS.
- [QTBUG-74508] Fixed incorrect PathView.currentIndex assignment with
StrictlyEnforceRange.
- [QTBUG-72457] Text now renders HTML table cell background colors properly,
and does correct layout of table cells with percentage-based widths.
- [QDS-263] qmlpreview now does better window placement on Windows.
- [QTBUG-71042] Fixed a bug in setting dynamic anchors to parents
in PropertyChanges.
- [QTBUG-73723] Fixed leaking of QML QQuickItemGrabResult objects
afterQQuickItem::grabToImage() is called from QML.
- [QTBUG-74008] Fixed a crash when one touch event contains a point that
begins acting as the synthetic mouse, and then that point is missing
from a subsequent event. (This is unexpected from most touchscreens.)
- [QTBUG-74128] Fixed binding loop warnings while using bi-directional
property bindings with Flickable contentX/Y properties.
- [QTBUG-73819] Fixed a crash when Loader unloads an Item or Event Handler
that currently has a grab.
- [QTBUG-41045] When a window is hidden and the visible content under
the mouse cursor in another window has a different cursor, it will
now change as it should.
- [QTBUG-70031] Fixed issues caused by adding the new row and column
properties in QQmlDelegateModel.

90
qtdeclarative/dist/changes-5.12.4 vendored Normal file
View File

@ -0,0 +1,90 @@
Qt 5.12.4 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0 through 5.12.3.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-14769] TextEdit now uses the I-beam cursor by default, and the
pointing hand cursor for links. However in C++ it's still possible to
override with a custom cursor.
- [QTBUG-70826] The QML Runtime tool now has an updated application icon
and a default window icon. QtQuick applications can still use
QWindow::setIcon() to override the window icon.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-75880] An anonymous function's "name" now comes directly from the
surrounding object pattern if applicable. This fixes some ecmascript tests
where functions were assigned to the key "eval" in an object.
- [QTBUG-75896] Fixed lookups of properties in QML singletons.
- [QTBUG-48809] We now print a warning when encountering a non-relative URL
in a qmldir file. You should use relative paths.
- [QTBUG-75609] Improved the cache for looking up attached properties objects,
to fix a performance regression in Qt Quick Layouts.
- [QTBUG-75392] Fixed a crash caused by std::function.
- [QTBUG-74048] Fixed a crash in QJSEngine::evaluate.
- [QTBUG-75501] lupdate now works better with the Qt Quick compiler.
- [QTBUG-75393] Fixed debugging of named signal arguments in Connections.
- [QTBUG-75410] Fixed maximum call stack depth for clang ASAN builds.
- [QTBUG-74815] We now allow creation of variants from non-singleton
QQmlTypeWrappers.
- [QTBUG-74815] Unknown types are no longer mis-identified as "null".
- [QTBUG-75335] Fixed a crash related to optimized heap lookups.
- [QTBUG-73217] The "QML debugging is enabled" warning is printed
normally rather than via a log message, which works better with
static builds.
- [QTBUG-75176] Fixed a crash on exit related to attached properties
on static builds.
- [QTBUG-75203] Fixed a crash when accessing invalid properties through
QObjectWrapper
- [QTBUG-71116] Errors in fetchOrCreateTypeForUrl are no longer fatal.
- [QTBUG-75121] Fixed an invalid capture in ECMAScript
string.replace(RegExp, backref)
- [QTBUG-74876] Fixed a crash in LinkBuffer's performFinalization.
- [QTBUG-74876] Fixed a memory leak when emitting QImage or QPixmap
as a signal argument.
- [QDS-589] qmlscene now supports file selectors.
- [QTBUG-74867] We now detect and reject cyclic aliases to avoid
infinite recursion.
- [QTBUG-74884] Configuration with -no-feature-delegate-model now works.
- [QTBUG-75030] Fixed an arithmetic exception related to bindings.
****************************************************************************
* QtQuick *
****************************************************************************
- [QTBUG-73768] Fixed a failing assertion in BorderImage when any border size
exceeds source image size.
- [QTBUG-75770] MouseArea no longer mis-identifies fast drags as double clicks.
- [QTBUG-75002] Accessibility: StaticText nodes are now properly marked as
read-only.
- [QTBUG-70083] Replaced PinchHandler qCInfo messages with qCDebug.
- [QTBUG-70083] Fixed the "no points" warning when using native gestures.
- [QTBUG-73182] Fixed a memory leak by optimizing storage of
QQuickEventPoint instances.
- [QTBUG-65761] Fixed input handling in QWebEngineView on eglfs.
- [QTBUG-51993] Canvas3D now works properly inside QQuickWidget.
- [QTBUG-74966] DragHandler no longer makes its target jump if you
start dragging in the margin area.
- [QTBUG-74679] Touch cancel now results in an ungrab event, so that
any parent flickable can filter the event, reset its state and be ready
to scroll again.

89
qtdeclarative/dist/changes-5.12.5 vendored Normal file
View File

@ -0,0 +1,89 @@
Qt 5.12.5 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.12.0 through 5.12.4.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.12 series is binary compatible with the 5.11.x series.
Applications compiled for 5.11 will continue to run with 5.12.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-76871] TapHandler.point now holds the release position while the
tapped() signal is emitted.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-76018] Readonly QML properties can now be templates such as
list<...>.
- [QTBUG-76085] QQmlApplication engine now automatically loads translation
files from resource directories.
- [QTBUG-75939] Instances of QJSValue can now safely be passed between
threads and destroyed in a different thread.
- [QTBUG-75642] Fixed an invalid memory read caused by the JIT compiler.
- [QTBUG-71387] Fixed a use-after-free condition caused by calling
qmlClearTypeRegistrations().
- [QTBUG-76656] Made sure JavaScript "this" points to the right object when
calling scope and context properties through lookups.
- [QTBUG-76796] Fixed bindings to typeof(<name>) to get re-evaluated when
<name> gets defined.
- [QTBUG-55407] Avoid invalid memory access when calling setData() on a
QQmlComponent constructed without an engine.
- [QTBUG-76441] Fixed importing "qrc:/" (with exactly one slash).
- [QTBUG-71329] Implemented the missing bits of JavaScript promise chains.
- [QTBUG-75983] Fixed null pointer dereference in QQmlXmlHttpRequest.
- [QTBUG-77012] Fixed static build issue: multiple definitions of
qtPositionAttributeName().
- [QTBUG-77102] The component versioning is not enforced when loading
singletons.
****************************************************************************
* QtQuick *
****************************************************************************
- Item Views:
* [QTBUG-76487] We now properly populate delegates with the populate
transition when the view is resized after componentComplete.
* [QTBUG-31677] A ListView footer is now positioned correctly after the
last item is removed.
* [QTBUG-76433][QTBUG-44308] Fixed a crash while doing fast flicking in
transitions that use Animators.
* [QTBUG-76254] Fixed a crash in QQmlDelegateModel.
- Input:
* [QTBUG-75399] Fixed a crash when using the KeyNavigation attached property.
* [QTBUG-76875] DragHandler now respects acceptedButtons.
* [QTBUG-71218] If a Controls 2 Button has a DragHandler, the button is
now released when the drag begins.
- Scene graph:
* [QTBUG-76603] qmlscene now sets the default surface format earlier
and correctly.
* [QTBUG-68566] Fixed rendering freeze when using software rendering
of WebEngine in QQuickWidget.
* [QTBUG-66810] Software rendering: repaint everything when moving
between HiDpi and lower-resolution screens.
- Text:
* [QTBUG-77217] Fixed a bug where aligning an image to "top" or "bottom"
could cause a crash under certain circumstances.
* [QTBUG-76528] Fixed missing glyphs and in some cases crashes when
displaying many characters from the same font on a system with a
low maximum texture size.
* [QTBUG-76528] Fixed a bug when displaying many characters from the same
font on a system with a low maximum texture size.
* [QTBUG-74761] Added support for text color when using color fonts.

98
qtdeclarative/dist/changes-5.13.0 vendored Normal file
View File

@ -0,0 +1,98 @@
Qt 5.13 introduces many new features and improvements as well as bugfixes
over the 5.12.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.13 series is binary compatible with the 5.12.x series.
Applications compiled for 5.12 will continue to run with 5.13.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-68278] The Canvas requestAnimationFrame callback now gets passed a
millisecond timestamp instead of seconds.
****************************************************************************
* QtQml *
****************************************************************************
- Nested arrays are not flattened anymore when printed through console.log()
and friends.
- [QTBUG-72098] Assigning JavaScript null to incompatibly typed properties
generates a compile warning now. In future versions of Qt this will
become an error.
- [QTBUG-60057] QVariant's debug stream operator is now used in console.log()
and friends. This often includes more information than before, and
works better for custom types.
- [QTBUG-74068] Qt.include() is deprecated in favor of ECMAScript modules.
- [QTBUG-60338] Added support for QSequentialIterable in QML, meaning
that the engine understands many sequential value types (such as lists
of Q_GADGETS) and is able to convert them to JS arrays.
- [QTBUG-66504] QmlDebug has new features to improve integration with
external tools and IDEs.
- [QTBUG-50061] Global exception handlers are now called reliably by
unwinding JIT-generated code via a function table.
- [QTBUG-72294] Fixed a function table error on WinRT.
- [QTBUG-72430] Added the QTQUICK_COMPILER_RETAINED_RESOURCES option to
retain sources when generating QML cache files.
- [QTBUG-72930] A Component can no longer be assigned to properties of other types.
- [QTBUG-71838] LocalStorage now returns the new database version
from changeVersion() without reopening the connection.
- qml:
* [QTBUG-70826][QTBUG-74662] The QML Runtime tool now has an updated
application icon and a default window icon. QtQuick applications can
still use QWindow::setIcon() to override the window icon.
- qmlscene:
* [QDS-589] qmlscene now supports file selectors.
****************************************************************************
* QtQuick *
****************************************************************************
- Item Views:
* Added itemAtIndex() to GridView, ListView and PathView to fetch a visible
delegate by index.
- TableView:
* Added support for hiding rows and columns by setting their size to 0 from
the columnsWidthProvider/rowHeightProvider.
- Text:
* [QTBUG-32525][QTBUG-70748] Inline images in a QTextDocumentLayout are
now displayed in Text and friends.
* [QTBUG-68711] Fixed Keys.onShortcutOverride for TextEdit
* [QTBUG-50587] Fixed persistentSelection for readonly TextEdit
* [QTBUG-72736] Text wrapping no longer breaks on the last line if right
elide is enabled
- Window:
* [QTBUG-67903] Added the Window.transientParent property. QtQuick normally
guesses the transient parent relationship from the nesting of declarations,
but now you can override this "magic" by setting it explicitly.
* [QTBUG-73929] Fixed a race condition when closing windows.
****************************************************************************
* QtQuickTest *
****************************************************************************
- [QTBUG-71224] Added QQuickTest::qWaitForItemPolished() for verifying that
updatePolish() was called on an item.
- [QTBUG-71224] Added qIsPolishScheduled() function to allow checking if
updatePolish() has been called on an item since the last call to its
polish() function. This is useful to verify that a polish has been
scheduled.
- Added TestCase.isPolishScheduled() function to allow checking whether
updatePolish() has been called on an item since the last call to its polish()
function. This is useful to verify that a polish has been scheduled.

107
qtdeclarative/dist/changes-5.13.1 vendored Normal file
View File

@ -0,0 +1,107 @@
Qt 5.13.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.13.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.13 series is binary compatible with the 5.12.x series.
Applications compiled for 5.12 will continue to run with 5.13.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-76871] TapHandler.point now holds the release position while the
tapped() signal is emitted.
- [QTBUG-14769][QTBUG-50482] TextEdit now uses the I-beam cursor by default,
and the pointing cursor for links. But if user code sets a custom cursor,
we restore it when the mouse is no longer hovering a link.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-56264] Fixed segfault on Sparc64.
- [QTBUG-77102] Fix bug with singletons not being imported from modules when
using older versions.
- [QTBUG-77047] Fixed crash when creating arrays using the spread operator.
- [QTBUG-75983] Fixed crash in XMLHttpRequest.open.
- [QTBUG-77012] Fixed static build issue: multiple definitions of
qtPositionAttributeName().
- [QTBUG-71329] Fixed promise chaining.
- [QTBUG-76441] Fix support for import statements using qrc:/ urls.
- [QTBUG-55407] Fixed a crash when setData or create is called after a user
mistakenly used the internal constructor of QQmlComponent which does
not take an engine.
- [QTBUG-76796] Fixed late binding re-evaluation when using typeof(name).
- [QTBUG-76627] qmlplugindump now finds enums in composite types.
- [QTBUG-76656] Fixed resolution of 'this' when using the call operator on scope and context
properties.
- [QTBUG-71387] Fixed a crash after calling qmlClearTypeRegistrations().
- [QTBUG-75642] Fixed an invalid memory read in JIT with template literals.
- [QTBUG-75939] Fix crash when destroying QJSValues from other threads.
- [QTBUG-76085] Fixed automatic loading of translations from resources.
- [QTBUG-76018] Fixed grammar to permit readonly list properties.
- [QTBUG-75880] Fix accidental implicit creation of local variable when using anonymous functions
in object literals.
- [QTBUG-67343] Fixed assertion when having a ShaderEffect as a delegate
in a ComboBox.
- [QTBUG-75896] Fixed property lookup in QML singletons.
- [QTBUG-75392] Fixed a crash by working around a compiler bug.
- [QTBUG-48809] Print a warning when using absolute paths in qmldir files.
- [QTBUG-75609] Fixed a performance regression with attached properties.
- [QTBUG-76074] Loader now frees custom qml types when unloading.
****************************************************************************
* QtQuick *
****************************************************************************
- Item Views:
* [QTBUG-76487] We now properly populate delegates with the populate
transition when the view is resized after componentComplete.
* [QTBUG-31677] A ListView footer is now positioned correctly after the
last item is removed.
* [QTBUG-76433][QTBUG-44308] Fixed a crash while doing fast flicking in
transitions that use Animators.
* [QTBUG-76254] Fixed a crash in QQmlDelegateModel.
* [QTBUG-71581] Fixed a crash in ListView when closing an application that
dynamically creates and appends items to an ObjectModel.
- Input:
* [QTBUG-75399] Fixed a crash when using the KeyNavigation attached property.
* [QTBUG-76875] DragHandler now respects acceptedButtons.
* [QTBUG-71218] If a Controls 2 Button has a DragHandler, the button is
now released when the drag begins.
* [QTBUG-75770] MouseArea now respects QPlatformTheme::TouchDoubleTapDistance
to avoid generating double-clicks while moving and clicking the mouse quickly.
- Scene graph:
* [QTBUG-76603] qmlscene now sets the default surface format earlier
and correctly.
* [QTBUG-68566] Fixed rendering freeze when using software rendering
of WebEngine in QQuickWidget.
* [QTBUG-73768] Fixed an assert in BorderImage when any border size
exceeds source image size.
* [QTBUG-66810] Software rendering: repaint everything when moving
between HiDpi and lower-resolution screens.
* [QTBUG-74348] Fixed leaking scene graph rendering contexts when using
the threaded render loop.
* [QTBUG-76055] Cleaned up error messages in shadereffect.
- Text:
* [QTBUG-74761] Added support for text color when using color fonts.
* [QTBUG-76528] Fixed missing glyphs and in some cases crashes when
displaying many characters from the same font on a system with a
low maximum texture size.
* [QTBUG-75002] Accessibility: StaticText nodes are announced as
read-only rather than editable in Windows Narrator.

63
qtdeclarative/dist/changes-5.13.2 vendored Normal file
View File

@ -0,0 +1,63 @@
Qt 5.13.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.13.0 through 5.13.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.13 series is binary compatible with the 5.12.x series.
Applications compiled for 5.12 will continue to run with 5.13.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-77761] EcmaScript modules are loaded correctly now when using the
Qt Quick Compiler.
- [QTBUG-74087] Various JavaScript list-like constructs are parsed
iteratively rather than recursively now, avoiding stack overflows.
- [QTBUG-78554] Exceptions thrown from a promise's resolve or reject
handler are forwarded correctly now.
- [QTBUG-78996] MakeDay() and getDay() now behave more correctly.
****************************************************************************
* QtQuick *
****************************************************************************
- [QTBUG-79084] The QQuickWindow::afterAnimating signal is now emitted
properly when using QQuickRenderControl.
- [QTBUG-79011] Fix an odd 1px offset when rendering an Image with
fillMode: PreserveAspectFit.
- [QTBUG-78468] Fixed the hanging native pictures dialog on iOS.
- Item Views:
* [QTBUG-77074] Fixed a bug when TableView columnWidthProvider calculates
the widths of columns after a previously-hidden row is shown again.
* [QTBUG-77173] If you click or tap a PathView while it's moving,
it will come to rest with the nearest delegate aligned properly.
* [QTBUG-77418] ListView highlightRangeMode works correctly after
currentIndex is changed.
- Text:
* If the alpha of a text background is 0, the background rectangle node
is now omitted from the scene graph.
* [QTBUG-77389] Fixed TextEdit paragraph-selection triple click feature.
- OpenVG rendering:
* [QTBUG-77019] Fixed sprites leaking textures.
* [QTBUG-76526] Fixed per-frame delivery of touch events.
* [QTBUG-76806] The sceneGraphInitialized and sceneGraphInvalidated
signals are now emitted properly.
* [QTBUG-76589] Fixed rendering of non-affine transformed rectangles.

372
qtdeclarative/dist/changes-5.14.0 vendored Normal file
View File

@ -0,0 +1,372 @@
Qt 5.14 introduces many new features and improvements as well as bugfixes
over the 5.13.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.14 series is binary compatible with the 5.13.x series.
Applications compiled for 5.13 will continue to run with 5.14.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* QtQml *
****************************************************************************
- On Android, QML plugins are loaded directly from the APK libs dir and
use qrc:/android_rcc_bundle/qml to search for QML files.
- [QTBUG-38913] Added ability to import static qml plugins with CMake
builds using the new QT5_IMPORT_QML_PLUGINS function.
- The NaN obtained by Math.pow(+/-1, +/-infinity) and
(+/-1)**(+/-infinity) is now quiet rather than signalling.
- It is now possible to specify types for method parameters and their
return value in QML (basic and object types), using TypeScript-like
syntax with a colon separator. The syntax for QML declared signals
supports the same style.
- QML Binding elements now support restoring previous values
of the bound property when the binding is disabled. This will be the
default behavior in Qt 6.0. Reliance on the old behavior of only
restoring binding, not literal values will results in a warning beginning
with Qt 5.15.
- The regular expression engine was updated, causing somewhat better
compliance with the ECMAScript specification.
- [QTBUG-74190] Fixed a crash due to combination of aggressive GC with logging.
Also, the qt.qml.gc.* logging rules don't produce false warnings about huge
amounts of lost memory anymore.
- [QTBUG-75007] Usage of singletons from QML engines in different threads
does not cause race conditions anymore.
- The JIT compiler is now a configurable feature. You can pass
-no-feature-qml-jit to configure in order to skip it, or -feature-qml-jit
in order to build it for platforms where it's disabled by default, e.g.
iOS and tvOS.
- [QTBUG-49080][QTBUG-78955] You can now interrupt a QJSEngine running a
JavaScript program by setting its isInterrupted flag from a different thread.
- qmlscene will not run into an infinite loop anymore if you pass a QML
document without any executable code.
- You can configure the maximum sizes of the JavaScript and the garbage
collector stacks now, using the QV4_JS_MAX_STACK_SIZE and
QV4_GC_MAX_STACK_SIZE environment variables.
- [QTBUG-76346] Context properties carrying QObjects are automatically
reset when the objects are destroyed now.
- [QTBUG-40487] You can now use Component properties in Binding elements.
- [QTBUG-76932] Changing sourceComponent in a Loader does not delete
C++-owned objects anymore.
- qmllint can now check for unqualified access to to properties of the
root object and undeclared signal parameters.
- [QTBUG-77096] You can use generator functions in QML components now.
- You can and should use plain JavaScript functions as signal handlers in
Connections elements now. This avoids the overhead of the custom parser
that otherwise needs to run for each Connections element, and forces you
to specify the signal parameters you are going to use.
- You can pass a set of initial properties to QQmlApplicationEngine,
QQmlComponent, and QQuickView now. Those will be used as defaults in any
subsequent instantiation of top-level QML objects.
- Anonymous types should be registered via the new qmlRegisterAnonymousType()
function now, rather than via the parameter-less qmlRegisterType(). That
is, you should specify a URI and a major version for your type.
- [QTBUG-74087] The QML parser can parse more complex JavaScript code now
without overflowing the stack. This allows for deeper list nesting in QML.
- [QTBUG-76021] instanceof does not confuse derived types with no additional
properties with their parent types anymore.
- [QTBUG-78943] Binding elements will not randomly convert strings to other
types anymore.
- [QTBUG-48150] You can use aliases of "depth" 2 now. That is, something like
"property alias topMargin: myItem.anchors.topMargin" works now.
- [QTBUG-78325] The "color" type has a property "valid" now.
- [QTBUG-78044] The qmlprofiler command line tool's interactive mode is more
stable now.
- [QTBUG-48809] Fixed a warning about non-relative paths in qmldir files.
We now permit the use of resource urls in qmldir files to allow a plugin
to include its .qml files in resources, optionally compiled ahead of time.
- [QTBUG-79614] QQmlProperty now handles reads of QQmlPropertyMap correctly.
- [QTBUG-79443] In the debugger, we now avoid loading cache files, so that
JavaScript breakpoints keep working after the first run.
- [QTBUG-55259] qmlimportscanner now scans resources in qrc files.
- [QTBUG-78486] Calling a function with 14 arguments no longer crashes.
- [QTBUG-78721] Fixed handling of properties with interface type in bindings.
- [QTBUG-71078] Increased the QML loader thread's stack size to avoid problems
parsing deeply nested QML/JS files on some platforms.
- [QTBUG-72442] Fixed float value binding to an integer (including NaN values).
- [QTBUG-78566] A warning is emitted when overriding a declared Binding from
elsewhere. The Binding stays active and updates the target property again
on the next change.
- [QTBUG-77027] Fixed nullptr handling in Binding.
- [QTBUG-78859] Fixed a property cache memory leak.
- [QTBUG-78865] Fixed a memory leak due to declaring unused scripts in
qmldir files.
- [QTBUG-78706] Fixed inconsistent daylight saving time behavior by
converting QTime to V4 Date on a date with no DST in force.
- [QTBUG-78098] QQmlTypeLoader now prevents more trivial cycles.
- [QTBUG-77751] Fixed the translation context in Qt.include()d JS files.
- [QTBUG-76514] Avoid duplicate singleton creation.
- [QTBUG-77237] Using an enum in a switch statement performs much better.
- [QTBUG-76866] Fixed a crash due to inconsistency between
isValueType() and valueType()'s return value.
- [QTBUG-77954] Semicolon is always allowed after property declaration.
- [QTBUG-73512] Fixed a bug with use of resource paths in
QQmlEngine::setImportPathList().
- [QTBUG-76303] When converting from number to string, we now keep
double precision if the number of significant digits exceeds six, so that
precision isn't lost if the string is converted back to a number.
- [QTBUG-76838] Binding.when is stored as boolean to support primitive values.
- [QTBUG-76033] Fixed several bugs in frozen(), sealed(), nonExtensible()
and propertiesFrozen().
- [QTBUG-75983] Fixed a crash in XMLHttpRequest::open().
- [QTBUG-49975] Warn rather than crashing in case of invalid top-level
parallel states.
- [QTBUG-73786] We now filter out duplicate entries in Object.keys().
- [QTBUG-73491] Added QQmlInstanceModel::variantValue() to enable ComboBox.valueRole.
- [QTBUG-74348] Fixed memory leaks due to value type provider deletion order.
- There are two new functions to register singleton types and help you to
get rid of context properties:
* qmlRegisterSingletonType() has an overload taking a std::function now,
instead of a bare function pointer. Therefore, you can capture context
now when creating singletons.
* qmlRegisterSingletonInstance() directly passes a single instance of the
type to be used in all QML engines. No QML engine assumes ownership of
such a singleton and any concurrent access has to be handled by the
object itself.
- qml Runtime tool:
* [QTBUG-53557] The QML Runtime tool now accepts command-line arguments
in double-dash GNU style as well as the old single-dash style.
* [QTBUG-53557] The QML Runtime tool now has default behavior matching
qmlscene when the root QML object is an Item: it will be wrapped in a
Window which will resize the Item when the Window is resized. But you
can alternatively use the --config resizeToItem option, resulting in
the same behavior as qmlscene --resizeToRoot: resizing the root Item
programmatically causes the wrapping Window to be resized. Behavior
can still be customized in other ways using the --config option with
an external QML configuration file.
* The QML Runtime tool --quiet option now disables categorized logging
in addition to qDebug, qInfo, qWarning and qFatal, except for some
early QPA-level categorized logging that occurs during application
construction. You can still override specific categories by setting
QT_LOGGING_CONF or QT_LOGGING_RULES.
* [QTBUG-78828] Fixed a crash at exit when the qmldebugger channel is
connected.
- qmlplugindump:
* [QTBUG-78745] If given a "--strict" argument, qmlplugindump will check
the URI as exact match; whereas by default it will ignore the given
major version, as before.
* [QTBUG-78744] qmlplugindump no longer ignores base classes of QML files
registered as components.
- Important Behavior Changes:
* QRegularExpression is now supported the same way QRegExp was in QML.
QJSValue::toVariant() creates a QRegularExpression variant rather than
a QRegExp one from a JavaScript regular expression now.
* The accidentally exported function qmlRegisterBaseTypes() was removed.
* QJSEngine::toScriptValue will now return correct JavaScript objects in
more cases, for example, for gadget types like QPointF.
* QJSEngine::toScriptValue now uses the same behavior as the rest of the
engine when building JavaScript values, which will cause the types of
some returned JavaScript objects to change. For instance, string lists
are now returned as sequence objects, not array objects, and QChar now
constructs a JavaScript string.
* [QTBUG-75176] Attached properties are internally not identified by
integer IDs anymore, but rather by the functions used to produce them.
Using the integer indexes is a bad idea because the same metatype can
be registered as several different QML types and the integer IDs refer
to the QML types. Therefore, qmlAttachedPropertiesObjectById() and the
overload of qmlAttachedPropertiesObject() taking an integer ID are
deprecated.
* We expect QMetaObject revisions and import minor versions to be equal.
That is, when registering a revision X of a metaobject as QML type for
a version Y.Z of your module, X should equal Z. This is not enforced,
yet, but future versions of Qt will build on this assumption.
****************************************************************************
* QtQuick *
****************************************************************************
- Qt Quick is now able to render via Vulkan, Metal, and Direct 3D 11. The
new rendering path is currently a preview feature and has to be opted-in
to explicitly.
- Drag and Drop:
* [QTBUG-30305] When DropAreas intersect, the higher z-order item now
steals the drop.
* [QTBUG-72045] Fixed a crash when using an image provider url with Drag.
- DelegateModel:
* [QTBUG-63477] DelegateModel.delegate is now a notifying property,
and an Item View with model: DelegateModel { } is now refilled when
the delegate is changed.
- Event Handlers:
* Added WheelHandler, which handles mouse wheel rotation by modifying
arbitrary Item properties.
* [QTBUG-75661] Added DragHandler.snapMode which can be used to configure
conditions under which the dragged item is snapped to the cursor. The
default mode is SnapAuto. The old behavior can be obtained through the
SnapIfPressedOutsideTarget mode.
- Image:
* [QTBUG-77506] Image and BorderImage now have currentFrame and
frameCount properties which can be used to step through the frames of
multi-page image formats such as TIFF, WEBP and ICO (and PDF in the
future).
* [QTBUG-55027] Any URL interceptor is applied to the source binding.
* [QTBUG-76527] ImageProvider is kept alive while in use.
- FolderListModel:
* update the values of some properties when setting new values to them
- Layouts:
* [QTBUG-67204] GridLayout now warns rather than asserting when an
invalid row or column is specified.
* [QTBUG-79359] GridLayout now emits appropriate signals for
layoutDirection, columnSpacing, and rowSpacing changes.
- ListModel:
* [QTBUG-63569] We now emit a warning if an object with an undefined or
null member is added.
* [QTBUG-79083] JSON.stringify(model.get(i)) now works correctly when the
row contains a nested list model.
- Loader:
* [QTBUG-79435] Loader now clears all initial properties when changing source.
- MouseArea:
* [QTBUG-75993] mouseX and mouseY will now be synchronized after dragging
the target item.
* [QTBUG-77983] The containsMouse property will not become true when an
invisible mousearea become visible, if the enabled property is false or
its parent item is not enabled.
- MultiPointTouchArea:
* [QTBUG-77142] When a stationary touchpoint contains some "interesting"
property change (pressure or velocity, so far), it is delivered normally,
and MultiPointTouchArea will react to that.
- Particles:
* [QTBUG-54673] Fixed image particle flickering due to dynamic creation
of Emitter objects.
- Path and Shapes:
* Added Path.scale property to scale a path prior to rendering via
Shape or to scale the movement in PathView. The width and height
can be different, to achieve anisotropic scaling.
* Added PathPolyline, to render an array, list or vector of QPointF,
or a single QPolygonF.
* Added PathMultiLine, to render an array, list or vector of
polylines or QPolygonF.
* Exposed QQuickPath::pointAtPercent as invokable in QML.
* [QTBUG-77332] Fixed incorrect colors when shapes change scene.
- PathView:
* [QTBUG-77173] When the mouse is pressed while PathView is already moving,
PathView now grabs rather than allowing the delegate to handle it. The
position will then snap to the nearest delegate on release, as usual.
* [QTBUG-77173] If the user drags quickly, pauses, and then releases,
the calculated velocity is reduced according to a linear decay model
up to 50ms (and zero after that), to prevent excessive movement when
the user intended the pause to stop the movement.
- TableView:
* [QTBUG-79395] forceLayout() now rebuilds the table if the size of the
model has changed, to avoid a crash.
- Text:
* Markdown (GitHub dialect by default) is now a supported format, when
textFormat: Text.MarkdownText is declared. All features such as
hyperlinks, images, tables, lists, checklists, etc. are supported.
- TextEdit:
* Markdown (GitHub dialect by default) is now a supported format, when
textFormat: TextEdit.MarkdownText is declared. If it contains checkboxes,
the user can click on them to toggle the states.
* [QTBUG-14769][QTBUG-50482] The mouse cursor is now IBeamCursor by default,
or PointingHandCursor when the mouse is hovering over a checkbox or a
hyperlink. However this can be overridden in C++.
* [QTBUG-74745] Fixed overlapping text after line deletion.
- TextInput:
* [QTBUG-77814] Fixed text selection logic after insert() and remove().
- [QTBUG-79573] Fixed application deadlock when an item is reparented
to contentItem in a user-defined windowChanged handler, e.g. on exit.
- [QTBUG-78304] A ShortCutOverride event is now sent even when receiving a
non-spontaneous key press (e.g. from sendEvent()), so that Shortcut reacts.
- [QTBUG-76749] Fixed a crash when using an animation while destroying an item.
****************************************************************************
* Qt Labs Animation *
****************************************************************************
- Added the BoundaryRule QML type, a PropertyValueInterceptor that
restricts the range of values a numeric property can have, applies
"resistance" when the value is overshooting, and provides the ability to
animate it back within range. This is especially useful in combination
with WheelHandler to limit its range of motion or adjustment.
****************************************************************************
* Qt Labs QML Models *
****************************************************************************
- Added the TableModel QML type, a JavaScript-based model for the new
TableView.

89
qtdeclarative/dist/changes-5.14.1 vendored Normal file
View File

@ -0,0 +1,89 @@
Qt 5.14.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.14.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.14 series is binary compatible with the 5.13.x series.
Applications compiled for 5.13 will continue to run with 5.14.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-81109] Don't crash when iterating invalid Proxy objects
- [QTBUG-81108] Don't crash when sorting arrays with non-stringifyable entries
- [QTBUG-81105] Support printing arrays with circular references
- [QTBUG-81104] Array.includes now works even with large arrays.
- [QTBUG-81037] Fixed oob access on Array.concat.
- [QTBUG-81093] Emit QQmlEngine::warnings when load fails instead of
simply qWarning.
- [QTBUG-81055] XMLHttpRequest works correctly in a QML WorkerThread.
- [QTBUG-80963] Fixed a crash in QQmlAdaptorModel.
- [QTBUG-80609] Fixed a crash related to the use of QSequentialIterable
as a JS container type.
- [QTBUG-80511] The compiler now supports larger stack slots to avoid
crashing when passing long lists or vectors.
- [QTBUG-30467] QQmlTypeLoader no longer parses qmldir content multiple times.
It can be told to forget the qmldir contents via QQmlTypeLoader::clearCache(),
as before.
****************************************************************************
* QtQuick *
****************************************************************************
- [QTBUG-71193] Fixed two crashes and a memory leak in ItemParticle.
- [QTBUG-34779] Fixed a crash in QQuickWindow that was discovered during
fuzz testing.
- [QTBUG-80505] TableView now resets its content size to empty if the
model becomes empty.
- [QTBUG-80505][QTBUG-71374] Fixed crashes in TableView when deleting or
setting the model to null.
- [QTBUG-80534] TableView behaves better when both a delegate and an
ObjectModel or DelegateModel are declared.
- [QTBUG-67986] ObjectModel items are now re-rendered when moved between models.
- [QTBUG-78297] DelegateModel and DelegateChoice now work together better.
- [QTBUG-79163] If a MouseArea has its preventStealing flag set,
a Pointer Handler that is a child is not allowed to steal the grab.
- [QTBUG-77624] MouseArea now reacts to touch ungrab, so that it will
know the interaction has been cancelled if the user begins dragging
after the press, and a DragHandler takes over.
- [QTBUG-68232] ListView now emits currentIndexChanged (to indicate a
value of -1) if an empty model is assigned.
- [QTBUG-66163] If the populate animation runs as a result of model assignment,
the viewport should not move.
- [QTBUG-79592] PathView now continues animating to the nearest
detent, as usual, when ungrabMouse() is called.
- [QTBUG-76954] Multiple TapHandlers (again) are able to react to
multiple touchpoints simultaneously, without losing the active state
when one of the points is stationary.
- [QTBUG-64138] Particle effects can now run continuously over longer
periods of time.
- [QTBUG-80190] We no longer emit TextInput.inputMaskChanged when you are
setting the same input mask again.
- [QTBUG-80070] When an animation is set on an Item which is loaded by a
Loader, it will no longer crash when the animation is deleted.
- [QTBUG-80364] Attempting to call QSGTexture::bind() outside the direct
OpenGL rendering path now generates a warning.
- [QTBUG-80297] QRhi now follows non-integer scaling fixes for native text.
- [QTBUG-75750] MultiPointTouchArea no longer ignores Qt-synthesized mouse
events. It's now possible to use a stylus with Qt Virtual Keyboard
because MPTA will react to the synth-mouse event that occurs after the
QTabletEvent was not handled. In the case that a touch event is sent,
MPTA will accept it; so a synth-mouse event is not expected afterwards.
If Flickable has pressDelay set, and intercepts a touch press, it will
send the delayed press in the form of a mouse press, and MPTA will now
react, which is useful in case MPTA is used in an item view delegate.
But it will also receive a touch release after the synthetic delayed press,
so now it checks whether the touchpoint ID is the same as the synth-mouse
touch ID, to verify that the touch release corresponds with the synth-mouse
press that arrived earlier, and react to it.

56
qtdeclarative/dist/changes-5.14.2 vendored Normal file
View File

@ -0,0 +1,56 @@
Qt 5.14.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.14.0 through 5.14.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.14 series is binary compatible with the 5.13.x series.
Applications compiled for 5.13 will continue to run with 5.14.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-82000] Fixed leaking metatypes in QQmlTableInstanceModel.
- [QTBUG-82017] QQmlProperty and Connections now work for properties
that start with '_'.
- [QTBUG-81945] Fixed an invalid type bug when using an array of strings
as a ListView model.
- [QTBUG-80916] Conversion between container types and QJSValue arrays is
now bidirectionally supported.
- [QTBUG-81699] Fixed the "qmlRegisterType requires absolute URLs." error.
- [QTBUG-79553] Fixed a crash by avoiding storage of user-created objects
in QQmlValueType.
- [QTBUG-81581] We now check for exceptions before using the result of a
JS function call.
****************************************************************************
* QtQuick *
****************************************************************************
- [QTBUG-73683] Fix a layout bug that caused an infinite loop when the width
of a RowLayout containing Text with WrapAtWordBoundaryOrAnywhere changed.
- [QTBUG-78284] Fixed VoiceOver in QtWebEngine and other cases in which
the focused item must be discovered recursively for accessibility.
- [QTBUG-76362] Fix some bugs with snapping in a ListView with a header.
- [QTBUG-81098] Fixed division by zero in Flickable with binding to visibleArea.
- [QTBUG-82002] QQuickLoader emits statusChanged only when it really changed.
****************************************************************************
* Platform Specific Changes *
****************************************************************************
- [QTBUG-81021] Plugins built with debug info with *d.dll filenames are
again found at runtime on Windows.
- [QTBUG-80843] Fixed a cmake problem with qt5_import_qml_plugins()
- [QTBUG-38296] qmlimportscanner and androiddeployqt now detect when the
Particles module is needed, so it's no longer an explicit dependency
on Android.

283
qtdeclarative/dist/changes-5.15.0 vendored Normal file
View File

@ -0,0 +1,283 @@
Qt 5.15 introduces many new features and improvements as well as bugfixes
over the 5.14.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
https://doc.qt.io/qt-5/index.html
The Qt version 5.15 series is binary compatible with the 5.14.x series.
Applications compiled for 5.14 will continue to run with 5.15.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-74137] CMake: Added a Qt6 forward compatible CMake API. Using this,
you can define projects that work with either Qt5 or Qt6, without further
changes.
- [QTBUG-79331] If you register the same revision of the same type multiple
times, the last registration is the one QML will use. This allows you to
override qmlRegisterSingleton*() calls, for example in order to register a
singleton instance for a type tagged with QML_SINGLETON. Previously, the
first registration would take effect.
- [QTBUG-79868] Using instanceof to check whether an instance has the type of
QObject or one of its derived classes used to raise a TypeError, if the
instance was not derived from QObject. Now, it instead returns false, which
is more in line with the ECMAScript semantic.
- The QML ObjectModel type had an undocumented "feature" which made it sort
items in list views into sections according to context properties of the QML
context the created objects belong to. Instead of context properties, object
properties are used now.
- [QTBUG-73669] Using the Qt Quick Compiler would exclude the original .qml
files from the resource system. This made it impossible to change the Qt
library binary later as the program binary was tied the to the exact Qt
version. In addition sometimes unrelated files (QTBUG-73669) were removed.
For the latter scenario, retain and skip options were added for the Qt
Quick Compiler. In Qt 5.15 the Qt Quick Compiler does not remove the input
files anymore. All files are retained and the compiler merely adds the
more efficient binary representation to the application.
****************************************************************************
* Deprecation Notice *
****************************************************************************
- The qmlmin tool is deprecated and not needed anymore. The built-in caching of
qml files addresses the needs and unfortunately the tool does not work with
more advanced concepts such as required properties or the ES 7 yield
statement. It will be removed in Qt 6.
- qmlRegisterExtendedType() without URI or version, is deprecated. You should
state the module the type belongs to, by supplying a URI and version.
- qmlRegisterInterface(const char *typeName) without URI or version, is
deprecated. You should state the module the type belongs to, but supplying a
URI and version. Conversely, the typeName is redundant as the type itself
is already supplied as template parameter. None of the other registration
functions allow overriding the name for the metatype registration.
- QQmlIncubationController::incubateWhile(volatile bool *flag, int msecs) is
deprecated. The volatile parameter is used as a poor man's atomic bool, with
all the well known downsides of such a practice. A replacement method
taking an actual atomic is provided.
- In QML Connections elements, the handlers should be defined as plain
JavaScript functions, not as "onPropertyChanged properties".
- You can currently access local files from QML via XMLHttpRequest using
"file://..." URLs. This will not be allowed by default anymore in Qt6. If
you actually need this behavior, you can set the environment variables
QML_XHR_ALLOW_FILE_READ and/or QML_XHR_ALLOW_FILE_WRITE to 1. You can also
set them to 0 when using Qt 5.15 to prevent local file access.
- [QTBUG-78596] The class QSGEngine is now deprecated.
****************************************************************************
* QtQml *
****************************************************************************
- QML allows a new attribute "required" to be attached to properties. Such
properties have to be set when instantiating a component. The various models
and views use this as the preferred way of communicating model data to
delegates. The old way of passing model data via context properties should
be avoided in new code.
- The qmllint tool has been extended to check for patterns considered to be
potentially problematic in Qt6, and suggest better solutions. Pass the -U
command line option to enable the checks.
- The new qmlformat tool can be used to pretty-print a QML file according to
the recommended code style.
- QML supports type assertions similar to typescript. So far this is only used
to make the intended type of an expression known to qmllint. At run time,
type assertions are ignored.
- C++ types can and should be registered to QML at compile time now. For this
purpose there are a number of macros available in qqml.h that can be added
to a class declaration. A new tool, qmltyperegistrar, will evaluate them and
generate the actual registrations. You should not need to call any
qmlRegister* function manually anymore in new code.
- New classes QQmlEngineExtensionInterface and QQmlEngineExtensionPlugin are
available and should be used in place of QQmlExtensionInterface and
QQmlExtensionPlugin. The new classes do not offer a virtual registerTypes()
method as types should be registered at compile time.
- [QTBUG-81631] Qt.formatDateTime, Qt.formatDate and Qt.formatTime now support
formatting according to a locale and an optional locale format type. If
locale dependent formatting is desired, this method should be used instead
of the locale-related DateFormat enum members.
- [QTBUG-77926] Nullish coalescing is now implemented as specified in
https://github.com/tc39/proposal-nullish-coalescing.
- It is now possible to declare new QML components in a QML file via the
component keyword. They can be used just as if they were declared in another
file, with the only difference that the type name needs to be prefixed with
the name of the containing type outside of the file were the inline
component has been declared.
- The Qt.uiLanguage and QJSEngine::uiLanguage properties were added. They can
be used to dynamically change the translation language from both QML and C++.
QQmlApplicationEngine does this automatically. When using other engines, you
need to listen for changes of QJSEngine::uiLanguage and load the respective
translator in response.
- [QTBUG-82743] Assigning to a QSet property from JS works again.
- [QTBUG-74087] There is now an option to disable the (necessarily)
conservative stack size checks when parsing and executing JavaScript. If the
environment variable QV4_CRASH_ON_STACKOVERFLOW is set, JavaScript stack
overflows crash the program the same way C++ stack overflows do. On the flip
side, more stack space is made available that way.
- [QTBUG-81714] You can add annotations, prefixed by "@" to QML elements now,
similar to Java type annotations. These annotations have to be written in QML
and are ignored by the QML interpreter. Tools processing QML can evaluate
them.
- [QTBUG-82843] Fixed a crash caused by creating QQmlValueTypeWrapper from
an invalid Q_GADGET type.
- [QTBUG-82150] QML Debugger now shows correct values for color objects.
- [QTBUG-81970] QQmlCustomParser now resolves import namespaces.
- [QTBUG-81678] Fixed qml loading problems caused by cycles.
- [QTBUG-81825] Array.includes now works with value types such as point.
- [QTBUG-79263] QQmlListProperty now has replace and removeLast functions.
- [QTBUG-81123] Fixed a crash in QQmlListProperty if a contained object is deleted.
- [QTBUG-58858] The path for storing QML cache files can now be customized.
- [QTBUG-80030] Implemented TypedArray.from()
- [QTBUG-80413] WorkerScript now has a ready property.
- [QTBUG-75110] Locale NumberOptions are now exposed to QML.
- [QTBUG-41087] Primitive self-references in composite types are now supported.
- [QTBUG-76074] Custom QML types can now be freed when unloading plugins.
- [QTBUG-73669] Fixed link errors when enabling CONFIG+=qtquickcompiler
on non-QML projects.
- [QTBUG-60908] Removed an unnecessary assert when setting a binding to alias.
- qml: The QML Runtime tool --selector option now allows defining a custom
QQmlFileSelector.
****************************************************************************
* QtQuick *
****************************************************************************
- Animations:
* [QTBUG-48193] Fixed signal emission order for zero-duration animations.
- AnimatedSprite:
* [QTBUG-59090] Added finishBehavior to allow a sprite to finish on the
last frame.
- Behavior:
* [QTBUG-70964] Behavior now has a targetProperty property to allow custom
logic based on the target property's object or name.
- Event handlers:
* [QTBUG-68073] Pointer Handlers now have a cursorShape property to set the
cursor when the handler is active and the mouse or a tablet stylus is hovering,
and restore to the previous cursor when the pointing device leaves.
* [QTBUG-79660] QTabletEvents are now delivered to pointer handlers.
For example PointHandler { acceptedPointerTypes: PointerDevice.Pen }
is one way of receiving stroke information for drawing via Canvas or Shapes,
and HoverHandler can use the new cursorShape property to show when a
stylus is in use.
* [QTBUG-68075] Pointer Handlers now have a dragThreshold property to
define the distance at which DragHandler will activate and TapHandler
will deactiveate, for example.
- FolderListModel:
* [QTBUG-82298] The fileUrl property was added to replace the fileURL
property, which is now deprecated.
- Image:
* Image now has a sourceClipRect property to render a clipped image from a
region of the sourceSize.
* [QTBUG-80616] Image now has a colorSpace property.
- Item:
* Item.mapToItem() and mapFromItem() now work with QPointF and QRectF types
as well as with raw numbers.
* Item.mapToGlobal() and mapFromGlobal() now work with QPointF as well as
with raw numeric coordinates.
- Item Views:
* [QTBUG-81580] DelegateChooser now supports using a property name as
roleValue when an array of QObject instances is used as the model for a
* [QTBUG-74046] ListView no longer allows the user to press on an Overlay or
PullBack header or footer and start scrolling, but only on the content
delegates.
* [QTBUG-80507] ListView now has support for reusing delegate items. This can
be switched on by setting the reuseItems property of ListView to true.
- MouseArea:
* [QTBUG-74987] MouseArea no longer gets stuck in pressed state if it
is set invisible on press.
- MultiPointTouchArea:
* [QTBUG-81944] The TouchPoint.x and y properties are updated together
before the change signals are emitted.
- Particles:
* [QTBUG-76827] QQuickItemParticle::give() is now implemented.
- RHI / scene graph:
* [QTBUG-82927] QSGRenderNode is now usable in Quick3D.
* [QTBUG-78570] Added API to get the platform specific texture handle.
* [QTBUG-80690] Fixed invalid core profile shader code.
* [QTBUG-80498] We now avoid unnecessary rendering of an extra frame with QSG_RHI=1
* [QTBUG-80365] Initialization failure now results in a sensible error dialog
rather than an infinite loop.
* [QTBUG-82988] QSGSimpleMaterial and QSGSimpleMaterialShader are now
deprecated.
- Shapes:
* Added PathText path element which can be used together with Qt Quick Shapes
to get text rendering that does not cache glyphs in a texture, but
triangulates the outlines of the glyphs instead.
- Text:
* [QTBUG-78277] Added new API that exposes implicitWidth, and isLast on the
QQuickTextLine for use in the lineLaidOut signal. This allows the user to
layout other items relative to the lines of text.
* [QTBUG-80759] Reduced redundant renderering of glyphs, thus fixing incorrect
rendering of superscripts.
- TextInput:
* [QTBUG-76320] Inputmask X character now requires non-blank input.
- QQuickItem:
* [QTBUG-68176] ParentChange now avoids roundoff error when restoring the old position.
- QQuickWidget:
* [QTBUG-78323] When QQuickWidget is resized, an in-scene dialog or other
content that is rendered into an offscreen window is now resized correctly.
- QQuickWindow:
* [QTBUG-78141] LanguageChange events are now delivered to items to enable
them to update translations.
* [QTBUG-79268] createTextureFromId() is now deprecated.

159
qtdeclarative/dist/changes-5.15.1 vendored Normal file
View File

@ -0,0 +1,159 @@
Qt 5.15.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.15.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5.15/index.html
The Qt version 5.15 series is binary compatible with the 5.14.x series.
Applications compiled for 5.14 will continue to run with 5.15.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-83384] Fixed various failing assertions in the JIT compiler.
- [QTBUG-85605] QQmlObjectCreator: fixed member func call with this == nullptr
- [QTBUG-84104] Fixed a regression in QMetaType::registerConverter()
with converting JS arrays to sequence<T> types.
- [QTBUG-84447] Invokable methods of Q_GADGET objects are now fully accessible.
- [QTBUG-84095] Fixed an invalid memory read in QQmlContextData::emitDestruction()
- [QTBUG-84692] Fixed a race condition in QQmlData::createPropertyCache
- [QTBUG-84237] Fixed a bug which prevented inline components from accessing
inner objects in some cases.
- [QTBUG-83121] QQmlEngine::baseUrl() no longer returns an empty url
if the current path is the root directory.
- [QTBUG-83214] Fixed a memory leak in a StateMachine with signal handler.
- [QTBUG-84474] On all platforms other than Windows, QTimeZone::systemTimeZone()
is now used when converting from times such as QTime(0, 0, 0), to avoid
incorrect daylight-saving accounting in the BST timezone.
- [QTBUG-83352] Fixed a crash caused by QQmlDelegateModel items being
deleted while being removed from the cache.
- [QTBUG-83354] We now warn about circular dependencies between QML types while loading.
- qmlformat tool:
* [QTBUG-85321] Fixed handling of empty blocks.
* [QTBUG-85035] Nested functions no longer get moved to the top level.
* [QTBUG-85077] Braces are no longer removed from nested if's.
* [QTBUG-85003] Fixed the trailing newline in if blocks so that the
formatting is stable during repeated runs.
* [QTBUG-85189] Inline components are now formatted correctly.
* [QTBUG-85289] Bindings that take up multiple lines are now formatted correctly.
* [QTBUG-84599] String literals are not reformatted: thus unicode
escape sequences are now preserved.
- Qt Quick Compiler:
* [QTBUG-85243] Revived QTQUICK_COMPILER_SKIPPED_RESOURCES for cases when
some resources should not be compiled with qmlcachegen.
* [QTBUG-84901] Fixed compilation from a different drive on Windows
by converting the colon after the drive letter to an underscore.
****************************************************************************
* QtQuick *
****************************************************************************
- Accessibility:
* [QTBUG-83738] Fixed a crash when the Accessible attached property was
accessed on ApplicationWindow or another non-Item object.
* [QTBUG-82433] Screen readers (such as Windows Narrator) no longer
spell out the characters in TextInput { echoMode: TextInput.Password }
- AnimatedSprite:
* [QTBUG-63942] AnimatedSprite now resumes playback when it becomes
visible again, if it was playing when it was hidden.
- Event Handlers:
* [QTBUG-85303] In a HoverHandler with a margin and a cursorShape, the
cursor now changes within the margin area.
- Flickable:
* [QTBUG-31905] With AutoFlickDirection and AutoFlickIfNeeded,
we now take margins into account to avoid unnecessary scrolling.
- Item:
* [QTBUG-55879] grabToImage() now works with QQuickRenderControl.
* [QTBUG-40220] If polish() is called within updatePolish(), or a polish
loop occurs for some other reason, the detection is now more correct, and
the warning occurs after 1000 such loops. The loop is broken after
100,000 times, to avoid the application becoming unresponsive.
- Item views:
* [QTBUG-82989] Since the parent of a delegate can end up being null during
its lifetime, developers are now advised against using it in bindings.
* [QTBUG-83956] TableView now allows negative spacing, which is useful
to cause delegates with borders to overlap and make a single-pixel grid.
* [QTBUG-84046] During layout, TableView now sets item width before height.
This works better with text items like TextEdit which calculate implicit
height based on the assigned width, (because of word-wrap.
* [QTBUG-84604] Fixed a culling regression when using ListView with ObjectModel.
- Layouts:
* [QTBUG-71839] Performance improvements to Qt Quick Layouts. This has the
small side-effect that size hint (implicitWidth/implicithHeight etc)
changes are not immediately emitted after a layout has been modified.
- MouseArea:
* [QTBUG-82382] Dragging can no longer be started with non-accepted mouse buttons.
* [QTBUG-85111] Fixed a regression in mouseX/mouseY calculations during
dragging of a MouseArea whose position is not 0,0.
- Rectangle:
* [QTBUG-84069] Named preset gradients are working again.
- Repeater:
* [QTBUG-83356] keyboard.left/keyboard.right navigation now works when
setting up navigation to Repeater-created siblings.
- RHI / scene graph:
* [QTBUG-85965] If the first node in a batch becomes invisible due to opacity
change, it now triggers rebuilding the batch.
* [QTBUG-85996] Fixed a crash in QSGBatchRenderer::Renderer::updateStencilClip()
due to clipNext being null.
* [QTBUG-65170] Fixed a crash when QSGTexture is deleted in rc->endSync()
* [QTBUG-83319] Fixed a crash in QQuickWidget when failing to make the OpenGL
context current in createFramebufferObject() during resizing.
- Shapes:
* [QTBUG-82371] Fixed a crash on eglfs.
- Window:
* Pass input method events on to the focus item.
* [QTBUG-82815] A transient Window declared in an Item which is shown via
QQuickWidget now becomes visible even though the parent window is offscreen.
- Text:
* [QTBUG-69301] Fixed Outline style on connected glyphs, especially visible
in e.g. Arabic and Indic writing systems.
* [QTBUG-85514] Fixed a regression in antialiasing on outlined text.
* [QTBUG-81810] Fixed a bug where we would sometimes resolve the wrong fonts
inside .ttc font collections.
* [QTBUG-49646][QTBUG-84021] Fixed kerning with horizontalAlignment: center.
* [QTBUG-84454] Fixed an offset on text position when combining
NativeRendering with high-dpi scaling.
* [QTBUG-80180] Fixed a clipping bug in software-rendered text.
* [QTBUG-83819] If the selection color is transparent, it is not
rendered, to avoid problems with blending.
* [QTBUG-84981] Fixed the vertical alignment of images in a text document
to align with the HTML standard as much as possible: AlignMiddle
is between AlignTop and AlignBottom.
* [QTBUG-84351] Optimized text glyph geometry updating by doing it
only when necesssary rather than in scene graph preprocessing.
****************************************************************************
* Platform Specific Changes *
****************************************************************************
- [QTBUG-84497] Fixed build issue on Windows when using nmake
(RegExpJitTables.h was not generated correctly).
- [QTBUG-83115] On webOS, Images with the same source are now shared even if
the cache property is false.
- [QTBUG-83119] On webOS, synthetic hover events are no longer sent on
frame update.

91
qtdeclarative/dist/changes-5.15.2 vendored Normal file
View File

@ -0,0 +1,91 @@
Qt 5.15.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.15.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5.15/index.html
The Qt version 5.15 series is binary compatible with the 5.14.x series.
Applications compiled for 5.14 will continue to run with 5.15.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* QtQuick *
****************************************************************************
- Animations:
* [QTBUG-82890] alwaysRunToEnd==true does not prevent complex Animations
from stopping anymore.
- Drag and drop:
* [QTBUG-82157] Fixed a crash when changing supportedActions in Drag.
- Item Views:
* [QTBUG-87821] TableView: The sync view is rebuilt even when flicking on
a sync view child now.
* [QTBUG-87680] TableView: The content size is always updated upon model
changes now.
* [QTBUG-74046][QTBUG-85302] ListView: Floating headers and footers
containing mouse-handling items work again when the listview is clipped.
- Layouts:
* [QTBUG-62989] We follow layoutMirroring in Layout margins now.
- Loader:
* [QTBUG-85938] QQuickLoader: The status property changes properly now when
setSource() is called.
- RHI / scene graph:
* [QTBUG-86402] Fixed a crash in QQuickShaderEffect when hiding a parent.
* [QTBUG-86524] We don't leak memory from QQuickView's QOpenGLContextGroup
object anymore.
- Text:
* [QTBUG-61475] You can use different input methods on TextEdit in
QQuickWidget now.
****************************************************************************
* Tooling *
****************************************************************************
- [QTBUG-87222] qmlformat: Computed property names work correctly now.
- [QTBUG-86980] qmlformat: for...of loops using array variables are
formatted correctly now.
- [QTBUG-86979] qmlformat: Inline components are formatted correctly now.
- [QTBUG-85317] qmlformat: Template literals are correctly formatted now.
****************************************************************************
* Examples *
****************************************************************************
- [QTBUG-87150] The lineedit example uses the correct QML_NAMED_ELEMENT
macro now.
- [QTBUG-85724] The Screen example does not attempt to shadow final
properties with required properties anymore.
****************************************************************************
* QtQml *
****************************************************************************
- [QTBUG-87721] qtquick_compiler_add_resources now takes OPTIONS into
account.
- [QTBUG-86989] You can define more than one inline component in a QML file
now.
- [QTBUG-75777] The QML Engine does not deadlock in its destructor anymore
under some conditions when asynchronous loaders are used.
****************************************************************************
* Platform Specific Changes *
****************************************************************************
- WebOS:
* [QTBUG-83361] You can have activeFocus on multiple windows,
if there is a single window per screen on eglfs.

186
qtdeclarative/dist/changes-5.2.0 vendored Normal file
View File

@ -0,0 +1,186 @@
Qt 5.2 introduces many new features and improvements as well as bugfixes
over the 5.1.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5.2
The Qt version 5.2 series is binary compatible with the 5.1.x series.
Applications compiled for 5.1 will continue to run with 5.2.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
Third party components
----------------------
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- QSGMaterialShader::compile() will not be called on all instances anymore.
To enforce the old behavior, set the QSGMaterial::CustomCompilation flag.
- QSGMaterialShader::activate() and QSGMaterialShader::deactivate() are
no longer responsible for calling glEnableVertexAttribPointer(),
glDisableVertexAttribPointer() and binding the shader program. This is
now done by the renderer. Reimplementations of these functions which
are not calling the baseclass will need to take this into account.
- The scene graph now requires a call to QSGNode::markDirty() with the
flag QSGNode::DirtySubtreeBlocked whenever the state of
QSGNode::isSubtreeBlocked() is changed.
- When assigning double precision floating point values to integer properties,
the engine now truncates instead of rounding. This is consistent with the
ECMAScript specification's way of converting doubles to ints.
- Comparing value based types with the JS strictly equal operator will
now behave similar to the corresponding C++ == operator. Ie. two
QPoints exposed on the JS side will be strictly equal if their values
are equal. This brings the behavior of value based types in JS closer
to what one would expect and more inline with primitive values in
Javascript.
- QTBUG-32838: Setting the model property of ListView, GridView or PathView to
an empty model will now correctly reset currentIndex to -1. In prior versions
currentIndex was set to 0 regardless of the actual number of rows in the model
when the model property was changed after the view's initialization.
- QtQuick.Window will now correctly use Window.AutomaticVisibility by
default, analogous to QWindow::show(), resulting in eg. maximized
windows by default on iOS/Android.
- QtQuick.Window will now warn when setting conflicting visible and visibility
properties, as this use-case is broken with the current QWindow implementation
of the two properties.
****************************************************************************
* Library *
****************************************************************************
QtQml
------
New types and properties in this version can be accessed using
"import QtQml 2.2".
- New class QQmlFileSelectors allows applying a QFileSelector to QML assets
and types. One is automatically set on QQmlApplicationEngines from now on,
plain QQmlEngines must set their own in order to be affected.
- QML Singletons can now be defined in QML using the "pragma Singleton"
directive, combined with a singleton entry in a qmldir file.
- The Locale type (from Qt.local()) is now available from the QtQml import as
well as from the QtQuick import.
- New qmlProtectModule function for preventing type injection into built-in
QML modules.
- Qt.application gained several new members
* enumeration "state" replaces boolean "active", so as to indicate more
states than just active/inactive
* strings "organization" and "domain" added, exposing those properties
from QCoreApplication.
QtQuick
------
New types and properties in this version can be accessed using
"import QtQuick 2.2".
- New scene graph renderer should reduce state changes, number of draw calls,
CPU->GPU bandwidth and generally improve performance.
- QTBUG-33993: There is now one render thread per window in QtQuick.
- Textures in the scene graph can now be entered into an atlas, facilitating
in better batching in the renderer. Atlas textures are enabled by passing
QQuickWindow::TextureCanUseAtlas to QQuickWindow::createTextureFromImage()
- New "Animator" types available for running QtQuick animations on the render
thread. This allows certain animations to continue when the GUI thread is
blocked.
- Text gained a hoveredLink signal.
- TextEdit gained an append method for easier programmatic text controls.
- TextInput gained an editingFinished signal.
- Drag and DropArea elements now handle drag'n'drop from other applications.
- Screen type gained a pixelDensity property, deprecating logicalPixelDensity,
as logicalPixelDensity is less portable across some mobile platforms.
- QTBUG-34368: Click signals are no longer propagated to disabled MouseAreas
- QTBUG-33644: Windows created dynamically now respond appropriately when
modality is set.
- QTBUG-33699: PathView now follows the same pattern as Flickable for
grabbing the mouse.
- QTBUG-32078: qmlClearTypeRegistrations now works when using QtQuick.
- QTBUG-33112: Setting an items state too early no longer crashes.
- QTBUG-32920: Dragging a MouseArea nested in a Flickable now works with touch
to mouse translation.
- QTBUG-32513: Crash fix when changing image source repeatedly.
- QTBUG-32750: Fix over-clipping text on smaller fonts.
****************************************************************************
* Database Drivers *
****************************************************************************
****************************************************************************
* Platform Specific Changes *
****************************************************************************
****************************************************************************
* Compiler Specific Changes *
****************************************************************************
****************************************************************************
* Tools *
****************************************************************************
- qmltestrunner: qtest context property is deprecated. Use QTestRootObject
from Qt.test.qtestroot instead.
****************************************************************************
* Plugins *
****************************************************************************
- A new experimental QML Settings type provides means for applications to
manage persistent settings in a platform-independent manner. The type is
made available by importing the Qt.labs.settings 1.0 module. Note: types in
the Qt.labs module are not guaranteed to remain compatible in future
versions.
- Qt.labs.folderlistmodel FolderListModel type gained showFiles and
showHidden properties in Qt.labs.folderlistmodel 2.1.
- QML-backed plugins, like QtQuick.Dialogs, now only deploy QML files in debug
mode. In release mode QML files are built into the plugin and referenced via
qrc URLs.
- New FontDialog and MessageDialog types available in QtQuick.Dialogs 1.1
- ColorDialog added currentColor property in QtQuick.Dialogs 1.1

38
qtdeclarative/dist/changes-5.2.1 vendored Normal file
View File

@ -0,0 +1,38 @@
Qt 5.2.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.2.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5.2
The Qt version 5.2 series is binary compatible with the 5.1.x series.
Applications compiled for 5.1 will continue to run with 5.2.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Library *
****************************************************************************
QtQml
-----
- [QTBUG-35979] Fixed JavaScript Array.pop() not updating the
internal array length correctly
QtQuick
-------
- [QTBUG-35128] Fixed TextInput to call fixup() on its validator when
being accepted or losing focus, and the validator reports that the input
is in "intermediate" state ie. the input should be fixed up.
- [QTBUG-34517] Fixed an issue that caused QQuickTextInput to not
accept delete/home/backspace/left/right keys when the key was used
in a shortcut.

94
qtdeclarative/dist/changes-5.3.0 vendored Normal file
View File

@ -0,0 +1,94 @@
Qt 5.3 introduces many new features and improvements as well as bugfixes
over the 5.2.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5
The Qt version 5.3 series is binary compatible with the 5.2.x series.
Applications compiled for 5.2 will continue to run with 5.3.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
Third party components
----------------------
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- Signals declared in QML that take "var" parameters, are now using QJSValue
as C++ type for these parameters, instead of QVariant.
- [QTBUG-35913] A QQuick Item is now strongly referenced by its visual
parent item, so it doesn't require a QObject parent to stay alive.
- [QTBUG-37924] Keys.forwardTo no longer propagates key events to the
target item's parents. This makes Keys.forwardTo act more as expected,
like an event filter. This way Keys.forwardTo becomes usable for
composite types that want to enable the Keys attached property
handling by forwarding key events from an internal editor.
****************************************************************************
* Library *
****************************************************************************
QtQml
-----
- [QTBUG-36491] Fixed JavaScript Array.push() not working on QStringList
properties.
- [QTBUG-38430] Fixed a bug that caused a crash when the item is deleted but
is not removed from the QQmlDelegateModel's cache.
QtQuickWidgets
-------
- Introduced QQuickWidget. This is the equivalent of QQuickView in the
QWidget world. It allows easy and flexible embedding of QtQuick
scenes into widget-based application windows without the
restrictions imposed by QWidget::createWindowContainer().
QtQuick
-------
- Added displayMarginBeginning/End to ListView and GridView.
- Added a new sceneGraphError() signal to QQuickWindow which applications
can use to detect errors like OpenGL context creation failures and react
in their own custom ways.
- Moved dialog implementations from qtdeclarative repository to
qtquickcontrols repository due to dependencies. QML import remains unchanged.
- [QTBUG-18946] Added Text::linkAt(x,y) method.
- [QTBUG-18946] Added TextEdit::linkAt(x,y) method.
- [QTBUG-19961] Added Image.mipmap property to enable mipmap filtering when
scaled or transformed.
- [QTBUG-38004] Mac: any editable text input will get tab focus when "Text
boxes and lists only" option was selected.
- [QTBUG-21549] Fixed a bug where Behavior would trigger when the tracked
value has not changed.
- [QTBUG-35073] QQuickWindow will now emit the afterAnimating() signal
from the gui thread before each scenegraph sync request.
- [QTBUG-36749] Fixed wrong baseline alignment for TextInput
- [QTBUG-31047] handles mouse as a touchpoint; added mouseEnabled
property to permit transparent pass-through to mouse-sensitive items
- [QTBUG-31830] "updatePolish" is not called for invisible items any more.
- [QTBUG-35772] Changed QSGGeometry::lineWidth to also affect point size
(glPointSize) when drawing GL_POINTS, in addition to the existing
behavior of affecting line width when drawing GL_LINES, GL_LINE_STRIP,
and GL_LINE_LOOP.
- [QTBUG-36069] Fixed TextEdit not vertically aligning its text after
having its height changed.

31
qtdeclarative/dist/changes-5.3.1 vendored Normal file
View File

@ -0,0 +1,31 @@
Qt 5.3.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.3.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5.3
The Qt version 5.3 series is binary compatible with the 5.2.x series.
Applications compiled for 5.2 will continue to run with 5.3.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Library *
****************************************************************************
QtQuick
-------
- Platform Specific Changes:
* Added canPaste property to TextInput element also on platforms that
don't support a clipboard (QT_NO_CLIPBOARD is defined).

41
qtdeclarative/dist/changes-5.3.2 vendored Normal file
View File

@ -0,0 +1,41 @@
Qt 5.3.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.3.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5.3
The Qt version 5.3 series is binary compatible with the 5.2.x series.
Applications compiled for 5.2 will continue to run with 5.3.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Library *
****************************************************************************
QtQuick
-------
- Bug fixes:
* QTBUG-37859 Synchronize PathView gesture grabbing with other items
* QTBUG-38485 Add support for disabling @2x behavior with QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING.
* QTBUG-40000 Fix crash in Flickble with pressDelay
* QTBUG-33436 Avoid double deletion of QQuickWindow
QtQml
-----
- Bug fixes:
* QTBUG-40685 Avoid double deletion when deleting an incubating component.
* QTBUG-40369 Fix crash when loading invalid QML with behavior on invalid group property
* QTBUG-40448 Fix crash in QQmlData::wasDeleted()
* QTBUG-38635 Fix crash in QObjectWrapper

144
qtdeclarative/dist/changes-5.4.0 vendored Normal file
View File

@ -0,0 +1,144 @@
Qt 5.4 introduces many new features and improvements as well as bugfixes
over the 5.3.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5
The Qt version 5.4 series is binary compatible with the 5.3.x series.
Applications compiled for 5.3 will continue to run with 5.4.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
- The Declarative State Machine Framework extends Qt's State Machine
Framework (QSM) into QML. This gives you the power of deterministic
state machines, but declaratively.
- Added QML linter tool.
Third party components
----------------------
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-40431] When a JavaScript object/array is passed to C++ through
a QVariant, the engine no longer immediately converts the object
recursively into a QVariantMap or QVariantList but instead stores a
QJSValue in the QVariant. This prevents a loss of data when the JS
object contains non-primitive types such as function objects for
example. Code that expects the variant type to be exactly
QVariant::Map or QVariant::List may need to be adapted. Registered
conversion functions however ensure that code that merely calls
toMap() or toList() continues to work.
- [QTBUG-39971] Qt 5.3 changed the mapping of "var" parameters in QML
declared signals to QJSValue. This was reverted to the behavior of
earlier Qt versions to use QVariant. The original issue of not being
able to pass function objects through var parameters of QML declared
signals is solved by wrapping a QJSValue inside the QVariant.
****************************************************************************
* Library *
****************************************************************************
QtQml
-----
- qmldir:
[QTBUG-41489] added the ability to declare dependencies on other
modules in a module definition qmldir file
QtQuick
-------
- Accessibility for Qt Quick is now included in the qtquick library
instead of being a separate plugin.
- QQuickWindow will compresses touch events and delivers at most one touch
event per frame.
- [QTBUG-38539] Added property MouseArea.drag.smoothed for toggling
whether the drag target is moved to the current mouse position after a
drag operation has started.
- [QTBUG-37944] Introduced QQuickRenderControl as a public API.
- [QTBUG-37589] Added QQuickWidget::grabFramebuffer() for capturing the
content into a QImage.
- tools and examples consistently use the QtProject organization name
- [QTBUG-40130] Add containsPress property to MouseArea
- Added QQuickFontMetrics, which provides a subset of QFontMetricsF's API.
- Added QQuickTextMetrics, which provides a declarative API for the
functions in QFontMetricsF which take arguments.
- Introduced OpenGLInfo attached type that provides information about the
currently used OpenGL version.
- Images exceeding GL_MAX_TEXTURE_SIZE will be downscaled to fit so they
will still show.
- [QTBUG-42096] Fixed nodes sometimes disappearing when adding many new
nodes to the tree.
- Canvas:
* Implement antialiasing on FramebufferObject based render targets
through super-sampling (SSAA) when framebuffer multisampling is not
available.
- Important Behavior Changes:
* Drag and Drop events now propagate to child items before their
parents.
* [QTBUG-40329] TextInput::displayText now includes also partial input
from an input method and thus matches with the actual displayed text.
- Item:
* Added functions QQuickItem::grabToImage() and Item::grabToImage() to
allow grabbing of items into system-memory images.
* When Item.opacity is set to a value outside the range of 0 to 1, it
will be clamped.
- ListView:
* Introduced headerPositioning and footerPositioning properties to
control whether header and footer are positioned inline, as overlays,
or so that they slide away and can be pulled back regardless of the
content position.
- QQuickItem:
* Added signals sceneGraphInitialized and sceneGraphInvalidated
- QQuickWindow:
* Added QQuickWindow::scheduleRenderJob(), a convenience alternative to
the equivalent signals for one-shot tasks.
- SceneGraph:
* There might not be an OpenGL context bound when
QQuickWindow::sceneGraphInvalidated() is emitted if an error occurs
while cleaning up the scene graph (such as EGL_CONTEXT_LOST). This is
according to the documentation, but has never occurred in practice
before.
- TextInput:
* Added passwordMaskDelay property
* [QTBUG-38934] Added TextInput::ensureVisible(int pos) method to be
able to control the scrolling position of a TextInput that has
automatic scrolling enabled.
- Window:
* Added Item.Window attached property
QtQuick.Dialogs
---------------
- [QTBUG-39365] FontDialog: support keyboard navigation
- [QTBUG-39231] FileDialog: added sidebarVisible property and button

50
qtdeclarative/dist/changes-5.4.1 vendored Normal file
View File

@ -0,0 +1,50 @@
Qt 5.4.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.4.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5.4
The Qt version 5.4 series is binary compatible with the 5.3.x series.
Applications compiled for 5.3 will continue to run with 5.4.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Library *
****************************************************************************
Qt Quick
--------
- [QTBUG-42148] Fixed uncommon artifacts in rendering of distance field
glyphs.
- [QTBUG-43063] Setting item as its own parent should error out instead of
hanging.
- [QTBUG-43104] Add retina support in AnimatedImage.
- [QTBUG-42677] Add input method support to QQuickWidget.
- [QTBUG-42050] Fix Text alignment when lineHeight is set.
QtQml
-----
- [QTBUG-42831] Fix inspecting objects in QML/JS console in different
frames.
- Fixed invalidly opportunistic truncating of non-integer values for
additions/subtractions/multiplications in JavaScript and binding
expressions.
- [QTBUG-38011] Fix JavaScript Date parsing to correctly accept RC2822
dates.
- Windows:
* [QTBUG-43171] V4 JIT was re-enabled after it was disabled by mistake
in 5.4.0.

49
qtdeclarative/dist/changes-5.4.2 vendored Normal file
View File

@ -0,0 +1,49 @@
Qt 5.4.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.4.1.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5.4
The Qt version 5.4 series is binary compatible with the 5.3.x series.
Applications compiled for 5.3 will continue to run with 5.4.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Library *
****************************************************************************
Qt Quick
--------
- [QTBUG-40920] Fix crash due to embedded QQuickView with WA_DeleteOnClose
- [QTBUG-43376] Fix crash due to deleted items in the dirty list
- [QTBUG-43129] Fix crash in overdraw and change visualizers
- [QTBUG-42913] Fix crash in QQuickWindow::updatePolish()
- [QTBUG-34351] Fix crash when removing items from QQmlDelegateModel
- [QTBUG-38528] Fix vertical positioning of the first image in Text
- [QTBUG-42878] Ensure that Canvas has correct size with complex bindings
- [QTBUG-42222] Fix crash in Canvas destructor
- [QTBUG-42861] Better text rendering in QQuickWidget on OS X
- [QTBUG-44049] Use @2x HiDPI images from QRC without a file extension
- [QTBUG-43847][QTBUG-40789] Scale mipmapped npot images when not supported
- Fix width/height property assignment during animations
- TextInput: update the baseline offset when vertical alignment changes
QtQml
-----
- [QTBUG-42759] Fix compilation on x32 ABI (don't use JIT)
- [QTBUG-43885][QTBUG-44039] Correct ToFixed rounding for 0 fraction digits
- [QTBUG-44026] Update Timer running property at the same time the
triggered signal is emitted
- Fix crash on FreeBSD when computing stack limits

105
qtdeclarative/dist/changes-5.5.0 vendored Normal file
View File

@ -0,0 +1,105 @@
Qt 5.5 introduces many new features and improvements as well as bugfixes
over the 5.4.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5
The Qt version 5.5 series is binary compatible with the 5.4.x series.
Applications compiled for 5.4 will continue to run with 5.5.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
QtQml
-----
* [QTBUG-44934] Assigning a char to a string will now create a string
with the actual character instead of a string representation of the
character's code-point. A side effect of this change is that a
one-character string also can be assigned to a character type.
QtQuick
-------
* Flickable.DragAndOvershootBounds value changed from 2 to 3. This will
only affect you if you've worked around enum type checking and have
the integer value explicitly in your code.
****************************************************************************
* Library *
****************************************************************************
Android
-------
- [QTBUG-43515] Fixed a vertex shader compilation issue on certain OpenGL
drivers.
QtQml
-----
- [QTBUG-29769] Custom C++ value types annotated with Q_GADGET are now
fully accessible in the QML and QJSEngine JavaScript environment.
- Added qjsEngine(QObject*) getter similar to qmlEngine(object) that
allows retrieving the engine for an exposed object.
- Added Qt.hsva() function
- XMLHttpRequest:
* [QTBUG-35892] XMLHttpRequest now supports the OPTION method in
HTTP requests.
* QQmlXMLHttpRequest now supports "arraybuffer" binary response type.
* Support for synchronous requests
QtQuick
-------
- BorderImage: Add support for @2x HiDPI border images. This means, no more need to
multiply the border sizes by the device pixel ratio.
- [QTBUG-37946] Image: An autoTransform property has been added to control
whether metadata image transforms such as EXIF orientation are
automatically applied. By default it enabled for TIFF images and
disabled for JPEG.
- Changed to use the threaded render loop by default on Windows when
running with desktop OpenGL (opengl32.dll).
- [QTBUG-42813] QQuickRenderControl can now be used to render the Qt Quick
scene on a dedicated render thread, similarly to how the built-in
threaded render loop operates.
- Added Window.width and Window.height attached properties
- Added a Shortcut utility type for catching keyboard shortcuts
- Flickable:
* Introduced Flickable.OvershootBounds behavior that allows content
overshooting the boundary when flicked, but does not allow dragging
content beyond the boundary of Flickable.
* [QTBUG-22407] Flickable handles pixel deltas from trackpad gestures as
drags, for a more native feel
- PinchArea:
* Pinch gestures are recognized by the operating system on OSX
* Fix infinite recursion when TouchCancel events are received.
- TextInput:
* SetFocusOnTouchRelease is honored
- [QTBUG-44743] Text: Fixed assert when setting an invalid width or height on an
<img> tag in a text element.
- TextEdit:
* [QTBUG-44492] Fixed positioning of text decoration with some fonts.
* [QTBUG-45032] Fixed issues with using other vertical alignments than
AlignTop.

158
qtdeclarative/dist/changes-5.6.0 vendored Normal file
View File

@ -0,0 +1,158 @@
Qt 5.6 introduces many new features and improvements as well as bugfixes
over the 5.5.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://qt-project.org/doc/qt-5
The Qt version 5.6 series is binary compatible with the 5.5.x series.
Applications compiled for 5.5 will continue to run with 5.6.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
http://bugreports.qt-project.org/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Library *
****************************************************************************
QtQml
-----
- Enabled Just-In-Time compilation for JavaScript on MIPS
- ObjectModel:
* Added get(), append(), insert(), move() and remove() methods.
- Profiling:
* QtQml can now write additional information so that perf is able to give
function names of JavaScript methods when profiling. To enable this, set
the environment variable QV4_PROFILE_WRITE_PERF_MAP=1 when running the
process in question.
- XMLHttpRequest:
* Added support for the PROPFIND method in HTTP requests.
* Added support for the "json" binary response type.
* Fixed a memory leak in the use of the responseXML property.
- qml tool:
* The qml tool now quits immediately if Qt.quit() is called before all scenes
complete creation.
* Make it possible to make script without .qml suffix
- QJSEngine:
* Introduced an extension API that allows installing various function and
object extensions (qsTr(), console.log(), etc.) to QJSEngine.
installTranslatorFunctions() was deprecated in favor of the new extension
API (see installExtensions()).
- QQmlComponent:
* Synchronously complete the loading of an asynchronous QQmlComponent, if a
PreferSynchronous QQmlComponent is created for the same url (provided that
this url does support synchronous loading).
- URLs from Qt.include() are now passed through the URL interceptor (if
present).
QtQuick
-------
- Added padding, leftPadding, topPadding, rightPadding and bottomPadding
properties to Text, TextInput, TextEdit in addition to all positioning items,
such as Column, Row, Grid, and Flow.
- Items may now listen for the ItemDevicePixelRatioHasChanged event in
QQuickItem::itemChange() in order to become aware of when DPI scaling has
changed (for instance, when the window has moved to a different screen).
Text elements take advantage of this in order to rerender when the DPI has
changed.
- Images now support looking for higher pixel ratios, not just @2x.
- Added the possibility to mirror the generated OpenGL texture via the newly
added Item::layer.textureMirroring and ShaderEffectSource::textureMirroring
properties.
- QQuickFramebufferObject:
* Added a mirrorVertically property to QQuickFramebufferObject.
- Shortcut:
* Added Shortcut.nativeText and portableText properties to read back the key
sequence as a string
* Added Shortcut.sequenceString property to read back the key sequence as a
displayable string
- Flickable:
* The movement related signals and properties are now updated for flicks
started via the flick function.
* Mouse wheel movement will no longer cause Flickable to overshoot past its
boundaries.
- Flipable:
* Flipable now toggles the 'enabled' property on whichever side is active.
This restores broken behavior compatibility with QtQuick1, and blocks
input to whichever side is not active.
- Item:
* Added EnterKey attached property that allows to change the appearance of
the Enter key on an on-screen keyboard.
- MultiPointTouchArea:
* Fixed released() signal duplication on mouseReleaseEvent.
- QQuickPaintedItem:
* Implement high-dpi support and add function textureSize. This obsoletes
the existing contentsSize, contentsScale and contentsBoundingRect
functions.
* A QQuickPaintedItem with Item.layer set will now include child items in the
layer.
- QQuickWindow:
* Add TextureIsOpaque option to createTextureFromImage()
* Added a render job stage: NoStage. This allows scheduling jobs for
execution on the render thread.
- Repeater:
* Positioners will now always ignore Repeaters. Previously, Repeaters were
ignored by positioners when their width or height were 0.
- Text:
* Fixed baseline of Text elements where the vertical alignment was something
other than top.
- TextEdit:
* Add an editingFinished signal, emitted when the text edit loses focus. This
mirrors the same signal already available on TextInput since Qt 5.2.
- Item Views:
* positionViewAtIndex() will now reliably work on a view with a sticky
header/footer set.
* ListView no longer ends up with "holes" between delegates (or missing
delegates) under some circumstances.
QuickTest
---------
- TestCase:
* Added equals() function to image object returned from TestCase's
grabImage() function.
* Key events in TestCase are now sent to the window with active focus,
meaning that tests that create custom windows can receive key events.
QtQuick.Particles
-----------------
- Turbulence:
* Noise source image is now correctly read from QRC files as well as local
files.
Qt.labs.folderlistmodel
-----------------------
- FolderListModel:
* Add an indexOf(file) function to determine the index of a given file.

53
qtdeclarative/dist/changes-5.6.1 vendored Normal file
View File

@ -0,0 +1,53 @@
Qt 5.6.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.6.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qt-5.6
The Qt version 5.6 series is binary compatible with the 5.5.x series.
Applications compiled for 5.5 will continue to run with 5.6.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
* [QTBUG-51746] When matching the method signature of a invokable method to
the slot in the metaobject, the matching function now assigns the best
match to a QJSValue if the parameter actually is a QJSValue. This corrects
the previous behavior, where QJSValue and int were given the same match
score even though QJSValue would have been the best match.
* [QTBUG-50604] Assigning NaN to an Item's x or y previously had the side effect
of making the item invisible (as well as warning about a bad
QTransform::translate call). Setting NaN will now be ignored (as it already
was for width and height), and no longer have any visual effect.
* [QTBUG-51231] TextInput with a non-Normal echoMode can now no longer cut or
copy text.
****************************************************************************
* Library *
****************************************************************************
QtQuick
-----------------
- QQuickPaintedItem: When the device pixel ratio is changed for the screen the item is rendered
on then the item will be updated.
- [QTBUG-50085] Canvas: Fix crash when item has a negative width or height.
- [QTBUG-48870] GridView: Don't get "holes" in the grid if model updates occur
frequently.
QtQml
-----
- [QTBUG-52065] Fix crash with Array.unshift()

80
qtdeclarative/dist/changes-5.6.2 vendored Normal file
View File

@ -0,0 +1,80 @@
Qt 5.6.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.6.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.6 series is binary compatible with the 5.5.x series.
Applications compiled for 5.5 will continue to run with 5.6.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
QtQml
-----
- [QTBUG-53412] Fix mapping of null JS values to null SQL values instead
of empty strings.
- [QTBUG-53794] Fix crash when using the "with" statement with an
expression that throws an exception.
- [QTBUG-54589] Fix assertion when deleting properties of JS objects
- Fix crash when incubating objects asynchronously with initial properties.
- Fix support for QJSValue parameters in QML signal handlers.
- Fix crash on 64-bit big endian architectures.
- Fix literal string assignments to QVector2D and QQuaternion properties.
- Fix crashes when using Component.onDestruction handlers.
- [QTBUG-49232] Fix assignment of values to quint8 properties.
- [QTBUG-48136] Fix QQmlPropertyMap emitting valueChanged when the value had
not actually changed, causing side effects such as causing fake binding loops.
- [QTBUG-55238] Work around miscompilations with Visual Studio 2015 Update 3
- [QTBUG-55482] Work around a crash in release mode with GCC 6 related to dead
store elimination
QtQuick
-------
- Fix QtQuick scenegraph waiting up to a full vsync duration before rendering
the first frame.
- ShaderEffect: Fix a crash when a ShaderEffect and an Image both share the
same texture via supportsAtlasTextures.
- [QTBUG-53726] Flickable: Fix widthRatio and heightRatio being incorrect when
the content is smaller than the view.
- [QTBUG-42928] MultiPointTouchArea: Fix touch points remaining pressed when
the MultiPointTouchArea is hidden or disabled.
- [QTBUG-53937] AnimatedSprite: Fix a potential infinite loop when changing
image source.
- [QTBUG-53263] ListView: Fix items not always rendering when inserting many
items into a model.
- [QTBUG-52901] Fixed QQuickPaintedItem not scaling correctly for high DPI when
using a renderTarget of FramebufferObject
- [QTBUG-52534] MouseArea: Fix drag.threshold when preventStealing is in use.
- QQuickWidget now properly repaints text on high-DPI screen changes.
- [QTBUG-54238] qt.scenegraph.info logging category got renamed to
qt.scenegraph.general.
- QQuickItem:
* [QTBUG-31861] Fixed issue with mouse button events being sent even
when they were disabled by setAcceptedMouseButtons.
* [QTBUG-40145] Fix multiple items gaining activeFocus incorrectly.
- Text:
* [QTBUG-54075] Fix positioning of inline images when using StyledText.
* [QTBUG-52389] Fixed clipping of glyphs that extend beyond font's em
square.
* Fix mouse presses being eaten when textFormat was PlainText. In this
case, the item cannot possibly make use of a press (as there are no
hyperlinks), but deprives other items of the opportunity to take the press.
- PathView:
* [QTBUG-53464] PathView: Fix items not being correctly created in some
circumstances.
* [QTBUG-37815] PathView: Fix infinite loop when creating items in some
circumstances.

78
qtdeclarative/dist/changes-5.6.3 vendored Normal file
View File

@ -0,0 +1,78 @@
Qt 5.6.3 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.6.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.6 series is binary compatible with the 5.5.x series.
Applications compiled for 5.5 will continue to run with 5.6.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
QQuickWindow
------------
- The relevant child item is now sent a hover event when the window
receives a QEnterEvent, making sure hovering is recognized without
waiting for mouse movement.
- [QTBUG-56075] Wheel events retain their timestamps during delivery.
QtQml
-----
- Fixed reading of enum properties from gadgets / value types when the
enum was registered with qRegisterMetaType().
- [QTBUG-56271] Fixed a crash on big-endian architecture.
- [QTBUG-50592] JSON.stringify() uses QVariant::toString() so that URLs
and other types which are stored as variants will not be omitted.
- [QTBUG-56658] Fixed a crash in the Qt Quick compiler.
- [QTBUG-56830] Fixed conversion of long numeric strings to integers.
- [QTBUG-52356] Fixed binding re-evaluation when list model properties change.
- [QTBUG-58133] Fixed a crash when emitting a signal with an undefined QJSValue.
- [QTBUG-57633][QTBUG-46263] Fix crash with QObjects exposed to multiple QML engines.
- [QTBUG-58271] Fix PropertyChanges element to restore bindings on aliases.
- [QTBUG-56499] Fix Connection element not disconnecting when target became null.
- Work around crashes with gcc 5/6 caused by dead-store eliminations.
- Fix memory leak with QQmlExpression.
- [QTBUG-53261] Fix memory corruption when changing JS object properties in
certain ways.
- [QTBUG-39888] Fix crash with QQuickItem objects that do not have a parent but
should be kept alive by the JS garbage collector.
- [QTBUG-54822] Fix support for address space configurations where the kernel uses
more bits in pointer addressing
- [QTBUG-56551] Fix crash with Connection element and non-existent objects
QtQuick
-------
- [QTBUG-39888] Fixed crash with QQuickItems created via JavaScript being
garbage collected sometimes when they're not assigned to a window.
- [QTBUG-44038] TextInput no longer emits editingFinished twice on iOS.
- [QTBUG-55871][QTBUG-55886] Flickable::movementEnding and movementEnded
are emitted reliably at the right times on macOS.
- [QTBUG-55779] Text padding now has the proper effect on height when
there is more than one line of text.
- [QTBUG-37095] Canvas is rendered at high resolution if the scene is
initially rendered on a high-DPI screen.
- [QTBUG-56657] Fixed a bug resulting in invisible images in some cases.
- [QTBUG-58852] Large amounts of text are now rendered properly with
Text.NativeRendering.
QuickTest
---------
- [QTBUG-56223] Mouse events now include timestamps.
QtWidgets
---------
- [QTBUG-42074][QTBUG-57003] Support characters in Private Use Area, as
well as zero-width joiners and zero-width non-joiners in input in
TextInput and TextEdit.

114
qtdeclarative/dist/changes-5.7.0 vendored Normal file
View File

@ -0,0 +1,114 @@
Qt 5.7 introduces many new features and improvements as well as bugfixes
over the 5.6.x series. Also, there is a change in the licensing terms.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.7 series is binary compatible with the 5.6.x series.
Applications compiled for 5.6 will continue to run with 5.7.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important License Changes *
****************************************************************************
This module is no longer available under LGPLv2.1. The libraries are
now available under the following licenses:
* Commercial License
* GNU General Public License v2.0 (LICENSE.GPL2) and later
* GNU Lesser General Public License v3.0 (LICENSE.LGPL3)
The tools are now available under the following licenses:
* Commercial License
* GNU General Public License 3.0 (LICENSE.GPL3) with exceptions
described in The Qt Company GPL Exception 1.0 (LICENSE.GPL3-EXCEPT)
****************************************************************************
* Important Behavior Changes *
****************************************************************************
QtQuick
-------
* [QTBUG-41833] QQuickItem::childAt was incorrectly including any child
whose right or bottom edge was adjacent to the point being checked,
as if it had width+1 and height+1. An Item with a width of 100
covers pixels from x=0..x=99, and likewise with height; so now,
calling childAt(100, 100) on its parent will not return it.
* [QTBUG-51115] TextEdit and TextInput now clear their selection when
becoming read-only.
* QtQuick.Layouts moved to the qtdeclarative repository.
****************************************************************************
* Library *
****************************************************************************
QtQml
-----
- [QTBUG-52556] Made the QML Engine capable of locating QML sub-modules
from within a versioned parent module path. For example, QtQml.Models
2.x can be either in QT_INSTALL_QML/QtQml/Models.2 or in
QT_INSTALL_QML/QtQml.2/Models.
- [QTBUG-36350] Added Connections::enabled property to allow toggling of the
signal handlers inside a Connections element.
- Enabled JIT for x86/x64 targets on Windows 10 and later.
- Enabled JIT for Aarch64.
QtQuick
-------
- Window:
* Added Window.window attached property, allowing access to the QQuickWindow
an Item belongs to.
- GridView & ListView:
* [QTBUG-17051] Added keyNavigationEnabled property to allow mouse and
keyboard interaction to be selectively enabled/disabled.
* Sticky headers or footers are now correctly positioned in the case of
an empty view.
- MouseArea:
* Added mouse.source property to enable distinguishing genuine mouse
events from those that are synthesized from touch or tablet events.
- PathView:
* Added PathView::movementDirection, which sets the direction in which items
move when setting currentIndex.
- QQuickItem:
* Added isAncestorOf() to determine if an item is the ancestor of another
item (i.e. the parent, or a parent further up the item tree).
* [QTBUG-28668] Added support for mapping item's coordinates to and from global
screen coordinates, in the form of Item::mapToGlobal() and
Item::mapFromGlobal().
- TextEdit/TextInput:
* [QTBUG-49503] Added TextEdit::preeditText & TextInput::preeditText,
which allow access to partial (uncommitted) text from an input method.
* [QTBUG-50428] Added TextEdit::clear() and TextInput::clear() which sets the
text to an empty string, but in addition, also clears partial (uncommitted)
text.
- Loader:
* [QTBUG-29789] Object creation previously started asynchronously can be
forced to complete synchronously by changing the "asynchronous" property
from true to false.
Qt.labs.folderlistmodel
-----------------------
- FolderListModel
* [QTBUG-45566] Added FolderListModel::caseSensitive, to control whether or
not filtering is applied case sensitively.

64
qtdeclarative/dist/changes-5.7.1 vendored Normal file
View File

@ -0,0 +1,64 @@
Qt 5.7.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.7.0.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.7 series is binary compatible with the 5.6.x series.
Applications compiled for 5.6 will continue to run with 5.7.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-55935] AnimatedSprite will no longer cause scenegraph updates when not
visible
- [QTBUG-46263] Fix QObjects becoming undefined when used in multiple QML
engines
- [QTBUG-54238] qt.scenegraph.info logging category got renamed to
qt.scenegraph.general.
- [QTBUG-50592] QVariants (e.g. QUrl) will now be better handled by
JSON.stringify
- [QTBUG-37095] Canvas now properly supports high-DPI screens
- QQuickWidget now properly repaints text on high-DPI screen changes.
****************************************************************************
* Library *
****************************************************************************
QtQml
-----
- [QTBUG-53412] Fix mapping of null JS values to null SQL values instead
of empty strings.
- [QTBUG-53794] Fix crash when using the "with" statement with an
expression that throws an exception.
- [QTBUG-54589] Fix assertion when deleting properties of JS objects
- [QTBUG-56658] Fix a crash in the QML compiler
- [QTBUG-53672] Fix crash caused by passing 0 to Array.join
QtQuick
-------
- The relevant child item is now sent a hover event when the window
receives a QEnterEvent, making sure hovering is recognized without
waiting for mouse movement.
- The threaded scene graph renderer does not sleep up to one vsync
interval before the first frame anymore.
- [QTBUG-56056] Fix crash when cancelling a QQuickImageResponse
- [QTBUG-39888] Fix crash with QQuickItems created via JavaScript being
garbage collected sometimes when they're not assigned to a window.
- [QTBUG-31861] Item: Fixed issue with mouse button events being sent even
when they were disabled by setAcceptedMouseButtons.
- [QTBUG-52389] Text: Fixed clipping of glyphs that extend beyond font's em
square.

172
qtdeclarative/dist/changes-5.8.0 vendored Normal file
View File

@ -0,0 +1,172 @@
Qt 5.8 introduces many new features and improvements as well as bugfixes
over the 5.7.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:
http://doc.qt.io/qt-5/index.html
The Qt version 5.8 series is binary compatible with the 5.7.x series.
Applications compiled for 5.7 will continue to run with 5.8.
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* General *
****************************************************************************
- [QTBUG-54982] Add qmlRegisterUncreatableMetaObject convenience function
needed to register Q_NAMESPACE QMetaObjects.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- [QTBUG-52012] When the engine looks for QML modules / extension
plugins in statically linked applications, the plugins are not
instantiated in the qml loader thread anymore. For this to work
however it is necessary for plugins to use
Q_PLUGIN_METADATA(IID_QQmlExtensionInterface_iid) in their class
declaration instead of hardcoding the interface id as a string literal.
- A JS null value converted to a QVariant now has type
QMetaType::Nullptr rather than QMetaType::VoidStar.
- To improve the start-up time and reduce memory consumption, the QML engine
attempts to cache the code and data structures generated during loading of
.qml and .js files. Cache files are - if possible - written to disk in the
directory next to the source file with the .qmlc/.jsc extension. If that
is not possible, they are written to QStandardPaths::CacheLocation.
****************************************************************************
* Library *
****************************************************************************
QtQml
-----
- [QTBUG-53412] Fix mapping of null JS values to null SQL values instead
of empty strings.
- [QTBUG-53794] Fix crash when using the "with" statement with an
expression that throws an exception.
- [QTBUG-54589] Fix assertion when deleting properties of JS objects
- [QTBUG-54360] Added exit(int retCode) method to the Qt global object. An
application can call Qt.exit to specify a return code of the engine.
- QQmlXMLHttpRequest:
* [QTBUG-38175] QQmlXMLHttpRequest now supports the PATCH method in HTTP
requests.
- Fix reading of enum properties from gadgets / value types when the
enum was registered with qRegisterMetaType().
- Fixed support for using namespaces in property types, signal parameter names
and list types
- Fixed support for declaring default properties of type list<T>
QtQuick
-------
- QQuickWindow:
* The relevant child item is now sent a hover event when the window
receives a QEnterEvent, making sure hovering is recognized without
waiting for mouse movement.
- [QTBUG-50298] Added Qt.application.font property.
- QQuickWidget now properly repaints text on high-DPI screen changes.
- [QTBUG-54238] qt.scenegraph.info logging category got renamed to
qt.scenegraph.general.
- ShaderEffect with OpenGL now supports reading GLSL shader sources from
local files and from the resource system. Whenever a fragmentShader or
vertexShader property is a valid such URL, the value is treated as a
file specification instead of actual source code.
- The threaded scene graph renderer does not sleep up to one vsync
interval before the first frame anymore.
- [QTBUG-48723] Added properties to access color values for the HSV and
HSL color models to the basic QML color type.
- MouseArea no longer thinks it's pressed when it does not accept the
press event. When a press event is not accepted, MouseArea also no
longer receives a cancel event.
- Touch events are now delivered in a well defined order: New touch points
are delivered first to items under the finger which was first touching
the screen. Then to items that are under the second finger and finally
to common ancestors. This means that items that are "on top" will get a
chance to grab touch points before any items in the background.
- [QTBUG-39888] Fix crash with QQuickItems created via JavaScript being
garbage collected sometimes when they're not assigned to a window.
- Drag:
* [QTBUG-37366] Added imageSource property to attached Drag object: this
allows drag sources to specify the pixmap to be drawn next to the
mouse cursor when starting a drag and drop operation.
- Important Behavior Changes:
* [QTBUG-54133] QQuickWidget now follows the same behavior as
QQuickWindow when it comes to the persistent scenegraph setting
controlled by QQuickWindow::setPersistentSceneGraph(). In earlier
releases the setting was ignored and the scenegraph was torn down on
every hide event. This is not the case anymore.
* [QTBUG-54133] QQuickWidget now behaves identically to QOpenGLWidget
when it comes to handling window changes when reparenting the widget
into a hierarchy belonging to another top-level widget. Previously the
OpenGL context always got destroyed and recreated in order to ensure
texture resource sharing with the new top-level widget. From now on
this is only true when when AA_ShareOpenGLContexts it not set.
- LayoutMirroring:
* [QTBUG-55517] Made it possible to attach LayoutMirroring to a Window.
- MouseArea:
* [QTBUG-40475][QTBUG-42194][QTBUG-33982][QTBUG-42578][QTBUG-52537]
Hover state is now updated once per frame. This means that
MouseArea::containsMouse property will now be correct even if the
mouse is not moving, but items move under the cursor. Likewise the
mouse position properties and positionChanged signal will act as if
the mouse had moved.
- QQuickItem:
* [QTBUG-31861] Fixed issue with mouse button events being sent even
when they were disabled by setAcceptedMouseButtons.
- QQuickWindow:
* QQuickWindow::sendEvent() is deprecated. Use
QCoreApplication::sendEvent() directly instead.
- ShaderEffect:
* Add new mesh type BorderImageMesh. BorderImageMesh provides an
optimized way to use BorderImage-type images with ShaderEffect.
- Text:
* [QTBUG-52389] Fixed clipping of glyphs that extend beyond font's em
square.
* [QTBUG-54723] Fixed a performance regression when rendering a rich
text item with scaled images.
* [QTBUG-43133] Fixed placement of flowing text objects in the start of
a right-to-left block.
QML Elements
------------
- Added a LoggingCategory type and added support for it to the console
object
- Binding:
* Add delayed property to Binding as a way to avoid potentially expensive
or unexpected intermediate values.
- Text, TextEdit, TextInput:
* Added "hintingPreference" property
- Platform Specific Changes:
* [Windows][QTBUG-45321] Worked around an issue with fonts that have corrupt
cmap tables.
QtTest
------
- TestCase:
* [QTBUG-19708] Added tryVerify() function to allow verification of
asynchronous conditions that can't be tested using tryCompare().

Some files were not shown because too many files have changed in this diff Show More