Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.11.1
-
None
-
Fedora 28
-
-
023a818738d64da01ebecc5d4a26356055ba0021
Description
http://doc.qt.io/qt-5/qdbusadaptorexample.html
src/dbus/doc/snippets/code/doc_src_qdbusadaptors.cpp
This example code does not actually build.
This embarrasses beginners.
After adding
#include <QApplication>
#include <QDBusAbstractAdaptor>
#include <QDBusConnection>
Following error shown:
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtCore -I. -isystem /usr/include/libdrm -I/usr/lib64/qt5/mkspecs/linux-g++ -o dbusadaptor.o dbusadaptor.cpp
dbusadaptor.cpp: In member function 'QString MainApplicationAdaptor::caption()':
dbusadaptor.cpp:77:18: error: 'class QApplication' has no member named 'hasMainWindow'; did you mean 'activeWindow'?
if (app->hasMainWindow())
^~~~~~~~~~~~~
activeWindow
dbusadaptor.cpp:78:25: error: 'class QApplication' has no member named 'mainWindow'; did you mean 'allWindows'?
return app->mainWindow()->caption();
^~~~~~~~~~
allWindows
dbusadaptor.cpp: In member function 'void MainApplicationAdaptor::setCaption(const QString&)':
dbusadaptor.cpp:84:18: error: 'class QApplication' has no member named 'hasMainWindow'; did you mean 'activeWindow'?
if (app->hasMainWindow())
^~~~~~~~~~~~~
activeWindow
dbusadaptor.cpp:85:18: error: 'class QApplication' has no member named 'mainWindow'; did you mean 'allWindows'?
app->mainWindow()->setCaption(newCaption);
^~~~~~~~~~
allWindows
dbusadaptor.cpp: In member function 'void MainApplicationAdaptor::reparseConfiguration()':
dbusadaptor.cpp:103:12: error: 'class QApplication' has no member named 'reparseConfiguration'
{ app->reparseConfiguration(); }
^~~~~~~~~~~~~~~~~~~~
dbusadaptor.cpp: In member function 'QString MainApplicationAdaptor::mainWindowObject()':
dbusadaptor.cpp:107:18: error: 'class QApplication' has no member named 'hasMainWindow'; did you mean 'activeWindow'?
if (app->hasMainWindow())
^~~~~~~~~~~~~
activeWindow
dbusadaptor.cpp: In member function 'void MainApplicationAdaptor::setSessionManagement(bool)':
dbusadaptor.cpp:115:17: error: 'class QApplication' has no member named 'enableSessionManagement'
app->enableSessionManagement();
^~~~~~~~~~~~~~~~~~~~~~~
dbusadaptor.cpp:117:17: error: 'class QApplication' has no member named 'disableSessionManagement'
app->disableSessionManagement();
^~~~~~~~~~~~~~~~~~~~~~~~
dbusadaptor.cpp: In member function 'void MainApplicationAdaptor::focusChangedSlot(QWidget*, QWidget*)':
dbusadaptor.cpp:123:25: error: 'class QApplication' has no member named 'mainWindow'; did you mean 'allWindows'?
if (now == app->mainWindow())
^~~~~~~~~~
allWindows
dbusadaptor.cpp: At global scope:
dbusadaptor.cpp:135:1: error: 'interface' does not name a type
interface org.kde.DBus.MainApplication
^~~~~~~~~
dbusadaptor.cpp: In function 'int main(int, char**)':
dbusadaptor.cpp:159:35: error: no matching function for call to 'MainApplicationAdaptor::MainApplicationAdaptor(QApplication&)'
new MainApplicationAdaptor(app);
^
dbusadaptor.cpp:67:5: note: candidate: 'MainApplicationAdaptor::MainApplicationAdaptor(QApplication*)'
MainApplicationAdaptor(QApplication *application)
^~~~~~~~~~~~~~~~~~~~~~
dbusadaptor.cpp:67:5: note: no known conversion for argument 1 from 'QApplication' to 'QApplication*'
dbusadaptor.cpp:165:6: error: expected identifier before '...' token
[...]
^~~
dbusadaptor.cpp: In lambda function:
dbusadaptor.cpp:167:5: error: expected '{' before 'app'
app.exec();
^~~
dbusadaptor.cpp: In function 'int main(int, char**)':
dbusadaptor.cpp:165:10: error: expected ';' before 'app'
[...]
^
;
dbusadaptor.cpp:167:5:
app.exec();
~~~
dbusadaptor.cpp: At global scope:
dbusadaptor.cpp:173:7: error: redefinition of 'class MainApplicationAdaptor'
class MainApplicationAdaptor: public QDBusAbstractAdaptor
^~~~~~~~~~~~~~~~~~~~~~
dbusadaptor.cpp:55:7: note: previous definition of 'class MainApplicationAdaptor'
class MainApplicationAdaptor: public QDBusAbstractAdaptor
^~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/qt5/QtCore/qglobal.h:99,
from /usr/include/qt5/QtGui/qtguiglobal.h:43,
from /usr/include/qt5/QtWidgets/qtwidgetsglobal.h:43,
from /usr/include/qt5/QtWidgets/qapplication.h:43,
from /usr/include/qt5/QtWidgets/QApplication:1,
from dbusadaptor.cpp:50:
dbusadaptor.cpp:175:5: error: expected unqualified-id before end of line
Q_OBJECT
^~~~~~~~
dbusadaptor.cpp:175:5: error: expected declaration before end of line
make: *** [Makefile:419: dbusadaptor.o] Error 1
Attachments
Issue Links
- resulted in
-
QTBUG-69190 Doc: Investigate possible stale examples
- Open
-
QTBUG-69191 Doc: Add references to implementation example in QDBusAbstractAdaptor documentation
- Closed