On 2020/01/18 21:32, Dirk Hohndel wrote:
Hi Willem,
On Jan 18, 2020, at 3:48 AM, Willem Ferguson
<[email protected]
<mailto:[email protected]>> wrote:
My formulation, reflecting my strong deficiencies in Qt coding but
following the above, for the new connection is:
connect(this,
ui.timeDiffEdit->timeChanged(ui.timeDiffEdit->time()),this,
this->timeDiffEditChanged());
The second parameter needs to be a pointer, for which I used
ui.timeDiffEdit. The timeChanged() signal needs a QTime value, so I
provided that with ui.timeDeffEdit->time(), the actual amount of time
by which the timeDiffEdit has been changed.
The last parameter also needs an address, provided by
this->timeDiffEditChanged() is the response to the signal
fromtimeDiffEdit->timeChanged(). It is a void function and the source
of build problems. The compiler generates an error:
/home/willem/src/subsurface/desktop-widgets/importgps.cpp:30:104:
error: invalid use of void expression
connect(this, ui.timeDiffEdit->timeChanged(ui.timeDiffEdit->time()),
this, this->timeDiffEditChanged());
^
Obviously, accessing the pointer this->timeDiffEditChanged() should
not return a void value. I have no idea of how to respond to this
error. Any suggestions are very welcome.
How about
connect(this, &QTimeEdit::timeChanged, this,
&ImportGPS::timeDiffEditChanged);
That seems like it would follow the syntax suggested above, right?
/D
Thank you very much for your time.
For Dirk's suggestion I get:
/home/willem/src/subsurface/desktop-widgets/importgps.cpp: In
constructor ‘ImportGPS::ImportGPS(QWidget*, QString,
Ui::LocationInformation*)’:
/home/willem/src/subsurface/desktop-widgets/importgps.cpp:30:78: error:
no matching function for call to ‘ImportGPS::connect(ImportGPS*, void
(QDateTimeEdit::*)(const QTime&), ImportGPS*, void (ImportGPS::*)())’
connect(this, &QTimeEdit::timeChanged, this,
&ImportGPS::timeDiffEditChanged);
^
I suspect this means that there is a problem in the types of parameters
in the call to connect() ??
For Bill's formulation there is an apparent problem with the signal part
of the call to connect():
/home/willem/src/subsurface/desktop-widgets/importgps.cpp:31:88: error:
invalid use of non-static member function ‘void
QDateTimeEdit::timeChanged(const QTime&)’
connect(ui.timeDiffEdit, ui.timeDiffEdit->timeChanged, this,
this->timeDiffEditChanged)
^
I just do not know how to proceed.
Kind regards,
willem
--
This message and attachments are subject to a disclaimer.
Please refer to
http://upnet.up.ac.za/services/it/documentation/docs/004167.pdf
<http://upnet.up.ac.za/services/it/documentation/docs/004167.pdf> for
full
details.
_______________________________________________
subsurface mailing list
[email protected]
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface