Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-74840

Implement QmlDom in Qt

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: P2: Important P2: Important
    • 6.5
    • None
    • QML: Tooling

      Implement QmlDom in Qt that can serve as a replacement for big parts of the QML rewriter in Qt Creator/Qt Quick Designer.

      The QMLDom should have a public API

      If the Qt Quick Designer is not supposed to interact with the 'private' AST directly, the only natural solution I currently see is a QMLDom.
      This QMLDom provides read/write functionality for QML files/text buffers, similar to an XML Dom. The QMLDom would interact with the QML code model and provide also type information.

      The availability of a public QMLDom would make developing tools around QML a lot easier. Tools that generate QML from third-party data could use it and also tools for verifying QML would heavily benefit from a public QMLDom.
      The user could write powerful QML generation or verification tools on top of QMLDom.

      Most of the heavy lifting of the Rewriter in the Qt Quick Designer would have to be done by the QMLDom, though.
      Qt Quick Designer would benefit heavily from such a QMLDom with a well maintained public API. Updates of the AST, language would not directly impact Qt Creator and Qt Quick Designer anymore.

      The rewriter reoganizes the code, but can track where things end up, and update locations without a reparse.
      Things comments are preserved, and associated with the various elements (enabling better rewrite).

        For Gerrit Dashboard: QTBUG-74840
        # Subject Branch Project Status CR V

            fawzi Fawzi Mohamed
            thohartm Thomas Hartmann
            Votes:
            1 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes