1. 23 Feb, 2018 - 3 commits
    • Martin Smith's avatar
      qdoc: Generate correct links to QML properties · 9dfdfdf5
      Martin Smith authored
      
      When a QML type is marked \qmlabstract, the documentation for
      its properties is included on the reference page for each QML
      type that inherits the abstract QML type. This means that when
      using the link command to link to one of these properties in
      HTML, qdoc must first obtain the correct file name. It was not
      getting the correct file name, when the link command appeared
      in documentation for a QML type that didn't inherit the QML
      type marked abstract. This update corrects that bug.
      
      Change-Id: I91ccb34e43618b7bbc1909026cbdf0c1b719df87
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      v5.11.0-beta1
      9dfdfdf5
    • Martin Smith's avatar
      qdoc: Remove a useless #ifdef · a4074919
      Martin Smith authored
      
      QDOC2_COMPAT is no longer meaningful.
      
      Change-Id: I7ba96cef2002ffeaccb333d4938f9f415569850a
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      a4074919
    • Martin Smith's avatar
      qdoc: Fix bugs in resolving inheritance and finding overridden functions · 88472204
      Martin Smith authored
      
      A class node must have pointers to the class nodes of its base classes, but these
      pointers might not exist when qdoc creates the class node for the class. They might
      not exist until all the index files and include files have been parsewd. qdoc was
      trying to resolve the base classes too early. This update lets qdoc wait until it
      is known that everything has been built before attempting to resolve inheritance.
      
      This update also delays finding the pointer to the function node for the overridden
      function for a function marked "override" until the pointer is needed. Instead of
      storing the pointer to the node, the qualification path to the function is stored
      as a string, and the string is used to look up the overridden function when it is
      needed, which is only when the \reimp command is processed during output.
      
      The function that resolves the pointer to the overridden function was moved to the
      function node class, where it makes more sense. The way a few qdoc warnings are
      reported was also changed.
      
      Change-Id: Ia54642d11242386ae75139065f481e5d30f79fb5
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      88472204
  2. 19 Feb, 2018 - 2 commits
  3. 18 Feb, 2018 - 1 commit
  4. 16 Feb, 2018 - 1 commit
    • Martin Smith's avatar
      doc: Add short page users about qdoc's clang dependency · 359dad81
      Martin Smith authored
      
      From Qt 5.11, QDoc requires clang from LLVM 3.9 or later.
      This new dependency must be listed in the Qt documentation.
      This update adds a short page to the QDoc User Guide that
      provides basic (preliminary) information for users intending
      to build and/or run QDoc.
      
      Change-Id: I7e86d6515d05b4d993fb91889e6f060c6aa0706e
      Task-number: QTBUG-65762
      Reviewed-by: default avatarMitch Curtis <mitch.curtis@qt.io>
      359dad81
  5. 14 Feb, 2018 - 2 commits
  6. 13 Feb, 2018 - 2 commits
  7. 12 Feb, 2018 - 2 commits
  8. 08 Feb, 2018 - 1 commit
  9. 07 Feb, 2018 - 1 commit
  10. 06 Feb, 2018 - 2 commits
  11. 05 Feb, 2018 - 2 commits
    • Martin Smith's avatar
      qdoc: Fix regression for wrongly reporting multiple topics · afe94fcd
      Martin Smith authored
      
      We have the case where multiple different topic commands can
      appear in a qdoc comment in a .cpp file, when C++ is being
      documented as QML. Specifically, a \qmlpropertygroup command
      can be used with multiple \qmlproperty commands. The clang
      code parser was reporting this as an error, even though clang
      would never see these commaqndes because they are parsed by
      the old qdoc command parser. The hasTooManyTopics() function
      was changed to allow this case. It fixes many qdoc warnings
      in QtDeclarative.
      
      Change-Id: Iaea9a4b9c531f022544749819f65a48111ad0cc1
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      afe94fcd
    • Martin Smith's avatar
      qdoc: Hide clang errors for \fn commands in prepare phase · af023844
      Martin Smith authored
      
      When clang parsing errors were detected in the prepare phase, they were
      being printed without the preceding qdoc warning that shows where they
      occur in the source file. The qdoc warning was not printed because qdoc
      was running in the prepare phase, but the clang errors were printed, and
      that was wrong. This update ensures that the clang parsing errors are only
      printed in the generate phase (or in singleexec mode).
      
      Change-Id: I011fa06626a5e9930fde329113d2bbac8830473b
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      af023844
  12. 02 Feb, 2018 - 2 commits
  13. 01 Feb, 2018 - 1 commit
  14. 31 Jan, 2018 - 6 commits
    • Friedemann Kleint's avatar
      Qt Designer: Fix deprecation warning · d85e8637
      Friedemann Kleint authored
      
      Use QDesktopWidget::availableGeometry(QWidget *) instead
      of QDesktopWidget::availableGeometry(int), fixing:
      
      shared\previewmanager.cpp:784:102: warning: 'const QRect QDesktopWidget::availableGeometry(int) const' is deprecated: Use QGuiApplication::screens() [-Wdeprecated-declarations]
                   const QRect availGeometry = desktop->availableGeometry(desktop->screenNumber(lastPreview));
                                                                                                            ^
      
      Change-Id: Iac3a5fe4931503c42c94428ac19cd1dcbfb277aa
      Reviewed-by: default avatarJarek Kobus <jaroslaw.kobus@qt.io>
      d85e8637
    • Martin Smith's avatar
      qdoc: Delay ignoring of qt_xxx names until output · de0db5ed
      Martin Smith authored
      
      The ignoreSymbol() function in class ClangVisitor was told
      to return true for every name that starts with "qt_". This
      was too aggressive, so the test is now done at output time.
      If a function name that starts with "qt_" has no documentation,
      qdoc does not warn with "No documentation for qt_..."
      because almost all such names are not to be documented. But
      they can be documented, so that's why the test is performed
      at the last moment.
      
      Change-Id: I2f322bed32dcae43336ead0735490560190d8095
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      de0db5ed
    • Martin Smith's avatar
      qdoc: Write contents elements to index file for collections · cd61091f
      Martin Smith authored
      
      When the CollectionNode class was changed from an Aggregate to a LeafNode,
      its output to the index file was not updated. This change ensures that the
      contents elements in collection nodes are output to the index file correctly.
      
      Change-Id: Id19a1c974c10d54f6ff1d3499726bbfa1b98beda
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      cd61091f
    • Martin Smith's avatar
      qdoc: Reformat giant switch statement according to Qt Coding Style · adaec07e
      Martin Smith authored
      
      This is a WS-only change to correct a lot of indentations, uses
      of curly braces, and placement of else keywords. It had grown a
      bit ugly.
      
      Change-Id: Ic3c17765e3651738532653eeb653661d46bba35c
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      adaec07e
    • Martin Smith's avatar
      qdoc: Remove test that disallowed macro without params · 0fae3fad
      Martin Smith authored
      
      A findFunctionNode() tree search function was testing whether a matching
      node was a macro without parameters and refusing to return it if it was.
      This test is now removed. Even if the test was necessary in some strange
      situation, this was the wrong place to do it.
      
      Change-Id: I40b2293f5643d2d752c05e16f85782f57c0ccbf3
      Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
      0fae3fad
    • Friedemann Kleint's avatar
      qdoc: Add a logging category · 5b205769
      Friedemann Kleint authored
      
      Remove the debug functionality from the Generator class and add
      a logging category instead. Add some debug statements outputting
      the command line arguments and clang arguments.
      
      This makes it possible to obtain logging output by setting for
      example QT_LOGGING_RULES=qt.qdoc.debug=true .
      
      Task-number: PYSIDE-363
      Change-Id: I3ecfe548e14aa3e2d03f19d07fc61a2647b75111
      Reviewed-by: default avatarMartin Smith <martin.smith@qt.io>
      5b205769
  15. 27 Jan, 2018 - 2 commits
  16. 26 Jan, 2018 - 3 commits
    • Martin Smith's avatar
      qdoc: Remove test that skipped parsing \fn commands in prepare phase · a419399c
      Martin Smith authored
      
      It was thought unnecessary to parse the \fn commands during the prepare
      phase, but it is required to determine whether the functions should be
      marked internal and private. Without parsing the \fn commands during
      the prepare phase, the documentation can't be assigned to the function,
      so it looks like it is undocumented and is marked internal and private
      in the index file. That was wrong, so now qdoc calls clang to parse the
      \fn commands, even during the prepare phase. Unfortunately, this slows
      qdoc by a significant amount.
      
      Change-Id: I51ab621bb9d4ffff0a245d3a842d6e7b4558ca84
      Reviewed-by: default avatarMartin Smith <martin.smith@qt.io>
      a419399c
    • Martin Smith's avatar
      qdoc: Fix handling of shared comment nodes in generate phase · b2fe71d1
      Martin Smith authored
      
      Shared comments nodes were not detected and handled correctly in
      certain cases. This update fixes those problems to avoid trying
      to output documentation for the individual nodes, when they are
      sharing a comment. Only the shared comment node should cause
      documentation to be generated for the nodes sharing the comment.
      
      Change-Id: I4ad7afc0964b1b6836dd5a140aa874784974b139
      Reviewed-by: default avatarMartin Smith <martin.smith@qt.io>
      b2fe71d1
    • Martin Smith's avatar
      qdoc: Make setRelates() work for SharedCommentNode · b02913d9
      Martin Smith authored
      
      When the \fn commands in a shared comment are global functions
      that relate to some class or namespace, the shared comment node
      and all the nodes sharing the comment must be marked as relating
      to the class or namespace. This update makes the setRelates()
      function virtual, and implements a special override in the
      SharedCommentNode to mark all the nodes in the collective as
      related to the class or namespace.
      
      Also added hasSharedDoc() to return true if a node is
      sharing a comment and the shared comment is not empty.
      It might be the case that it can never return false if
      the node is sharing a comment, but the function is
      convenient anyway.
      
      Change-Id: Ie064364e72fd150eacdd51a0131fe730311ee892
      Reviewed-by: default avatarMartin Smith <martin.smith@qt.io>
      b02913d9
  17. 24 Jan, 2018 - 1 commit
  18. 23 Jan, 2018 - 2 commits
    • Kai Koehne's avatar
      qtattributionsscanner: Always write UTF-8 files · 9712582e
      Kai Koehne authored
      
      Both JSON and qdoc output files should be generated in UTF-8.
      
      Change-Id: I7d60d9042bcc1e8d69e164691fcc4129d4e95fb6
      Reviewed-by: default avatarFriedemann Kleint <Friedemann.Kleint@qt.io>
      9712582e
    • Samuel Gaist's avatar
      macdeployqt: Implement selection of file system for .dmg file · b6713898
      Samuel Gaist authored
      
      With macOS High Sierra, Apple machines using SSD see their file
      system changed for APFS automatically.
      
      hdiutil by default uses the current file system to build the dmg file
      which in this case makes them unusable on older version of macOS that
      don't have support for APFS.
      
      This patch adds an additional option to macdeployqt to select the
      file system to use when building the .dmg. It defaults to HFS+ which
      was the official file system used until now for all currently
      supported version of macOS.
      
      [ChangeLog][macdeployqt][feature] Added support for selecting the
      file system type to use when building a .dmg file. Defaults to HFS+
      to support a wider range of macOS versions.
      
      Task-number: QTBUG-65844
      Change-Id: Ic66856344f96c6536b224d13d309715b34eb0874
      Reviewed-by: default avatarAndré Hartmann <aha_1980@gmx.de>
      b6713898
  19. 22 Jan, 2018 - 1 commit
  20. 20 Jan, 2018 - 1 commit
  21. 18 Jan, 2018 - 2 commits