D15140: Fix random order in "Analyze Current File/Project With" menus
Friedrich W. H. Kossebau
noreply at phabricator.kde.org
Tue Sep 11 14:26:39 BST 2018
kossebau added a comment.
In D15140#323991 <https://phabricator.kde.org/D15140#323991>, @antonanikin wrote:
> Hi, Friedrich.
>
> Thanks for your review. I think about ordering problem and found another interesting solution. We can use `KXMLGUIClient::plugActionList()` <https://api.kde.org/frameworks/kxmlgui/html/classKXMLGUIClient.html#a6bb023822002f53370e7c2858d3042ff> method to solve our case. We can implement common base class, for example `ICodeAnalyzerPlugin`, with appropriate methods which return file/project analyze actions and use them to (re)build sorted menus and plug them into our main menubar. Such approach can be also used for another plugins, like Heaptrack/Valgrind (run-time checkers/analyzers).
>
> What are you think about such way?
Actions added with `KXMLGUIClient::plugActionList()` are not properly known to KXMLGUI, which e.g. means they cannot be added to the toolbar persistently or (not sure) be edited in the key shortcut dialog. Not sure if those loses are worth the gain.
Right now I would favour your initial proposal.
And for the future I would see us extending KXMLGUI to support some flag for action groups, which define some order (or perhaps even a callback id, so we can inject custom sorting algorithms).
Having a random/undefined order in the menu on adding other XmlGuiClients is a generic challenge, so other users of KXmlGui might find the option to define orders good to have as well.
REPOSITORY
R32 KDevelop
REVISION DETAIL
https://phabricator.kde.org/D15140
To: antonanikin, #kdevelop
Cc: kossebau, kdevelop-devel, antismap, iodelay, vbspam, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20180911/060d17d6/attachment.html>
More information about the KDevelop-devel
mailing list