<table><tr><td style="">kossebau created this revision.<br />Restricted Application added a subscriber: kdevelop-devel.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D5604" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>There were lots of Q_SCRIPTABLE tags which once were added for Kross,<br />
but no longer serve any purpose, besides a few being picked up/reused<br />
for interfaces exposed to QML or D-Bus.</p>

<p>This patch removes any such tags which were not used or useful (due<br />
to incomplete types) from QML and D-Bus.<br />
For access to KDevelop::ICore's projectController from QML instead<br />
a QObject property is now noted. And the methods of IProjectController<br />
used from QML are tagged as Q_INVOKABLE, so they are not included<br />
in the D-Bus interface.</p>

<p>It will also remove the console warnings during start-up <br />
"<br />
Invalid return type in method "core"<br />
"<br />
which are from method generateInterfaceXml(...) in<br />
qtbase/src/dbus/qdbusxmlgenerator.cpp when it generates<br />
the interface for ExternalScriptPlugin, which inherits<br />
KDevelop::IPlugin, which had its method<br />
ICore *core() const; tagged with Q_SCRIPTABLE,<br />
and as the ExternalScriptPlugin registers itself as<br />
object to the bus using QDBusConnection::ExportScriptableSlots<br />
that method was included in the interface, but without ICore*<br />
being known.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R33 KDevPlatform</div></div></div><br /><div><strong>BRANCH</strong><div><div>cleanupQ_SCRIPTABLE</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D5604" rel="noreferrer">https://phabricator.kde.org/D5604</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>interfaces/icompletionsettings.h<br />
interfaces/icore.h<br />
interfaces/idocumentcontroller.h<br />
interfaces/ilanguagecontroller.h<br />
interfaces/iplugin.h<br />
interfaces/iplugincontroller.h<br />
interfaces/iproject.h<br />
interfaces/iprojectcontroller.h<br />
interfaces/iruncontroller.h<br />
language/backgroundparser/backgroundparser.h<br />
language/backgroundparser/parsejob.h<br />
language/duchain/duchain.h<br />
plugins/welcomepage/qml/Develop.qml<br />
plugins/welcomepage/qml/plugins/Branches.qml<br />
plugins/welcomepage/qml/plugins/Projects.qml<br />
shell/documentcontroller.h<br />
shell/languagecontroller.h</div></div></div><br /><div><strong>To: </strong>kossebau, KDevelop<br /><strong>Cc: </strong>kdevelop-devel<br /></div>