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

(Re-)create a stable QAbstractFileEngine-ish interface

    XMLWordPrintable

Details

    • Task
    • Resolution: Unresolved
    • Not Evaluated
    • None
    • None
    • Core: I/O
    • None

    Description

      QAbstractFileEngine was public for a while until it was made private for Qt 5 in https://codereview.qt-project.org/c/qt/qtbase/+/15236.

      This is, however, useful API, used by Qt Creator and in the wild[1,2] and repeatedly asked for after its disappearance[3,4,5,6]. While using the private class is possible (and grudgingly done e.g. by Qt Creator), this comes with severe penalties, like pinning to a specific Qt version[7] or extra maintenance effort[8]

      It would be good to have a stable interface to this functionality again.

      This does not necessary mean to revert the change the hiding of QAbstractFileEngine, but could be some e.g. be some separate public class with a similar interface holding and redirecting to a suitable QAFEngine member (pimpled when needed). Or any other
      mechanims to the same effect.

      [1] https://www.denondj.com/products/dj-players.html
      [2] https://www.airmusictech.com/virtual-instruments.html
      [3] https://www.qtcentre.org/threads/71831-What-is-replacement-for-QAbstractFileEngine 
      [4] https://stackoverflow.com/questions/46427908/removing-modifying-static-qt-resources-in-run-time [5] https://stackoverflow.com/questions/64486344/using-qsettings-with-data-stored-in-a-qbytearray-or-qiodevice
      [6] https://softwareengineering.stackexchange.com/questions/409967/fake-filesystem-for-unit-tests
      [7] https://codereview.qt-project.org/c/qt-creator/qt-creator/+/554977
      [8] https://codereview.qt-project.org/c/qt-creator/qt-creator/+/547029

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              cnn Qt Core & Network
              hjk hjk
              Votes:
              2 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes