D11934: KDevelop : "Reparse Entire Project" action in the project manager context menu

René J.V. Bertin noreply at phabricator.kde.org
Tue Feb 5 11:01:07 GMT 2019

rjvbb added inline comments.


> rjvbb wrote in parseprojectjob.h:36
> I can imagine, I had to figure it out for myself again too :-/

In fact, what do you think of making this

  explicit ParseProjectJob(KDevelop::IProject* project, bool forceUpdate = false, bool forceAll = ICore::self()->projectController()->parseAllProjectSources() );

You'd need to include 2 icore headers in this file but it'd make the behaviour of the option easier to explain. But we'd probably also need to do the same thing for the corresponding new argument to ProjectController::reparseProject() (but not iProjectController::reparseProjet(), I think)?

> mwolff wrote in projectcontroller.cpp:247
> what do you mean by direct access to a specific element? by index? or do you want to get the first or last item?

Well, the routine always checked if only a single project was selected because opening multiple project config dialogs isn't a very good idea (if not only because they're modal dialogs AFAICT).

So the answer to your question is "yes" :) We need access to the first, last, one-and-only element.

To be honest, I'm not convinced by the idea of making this collection a QSet. I doubt a performance argument carries much weight here and a QList seems more logical; elsewhere this information is used to loops over the projects. I for one always expect some influence of the order in which I select targets on the order in which commands are executed. I know that isn't always true but if it's not the execution order is usually the order in which the targets are displayed in the list. With a QSet the execution order will be unspecified.

> mwolff wrote in projectcontroller.cpp:1141
> sure, but that's fine - we can break API/ABI in master as much as we want

Is there any other reason why this could not go into the current release branch?

  R32 KDevelop


To: rjvbb, #kdevelop, mwolff
Cc: mwolff, kdevelop-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20190205/b71a8c01/attachment-0001.html>

More information about the KDevelop-devel mailing list