Signal/slot mechanism

Post Reply
baraujo
Posts: 6
Joined: Fri Feb 14 2020 2:47 pm

Signal/slot mechanism

Post by baraujo »

First of all congratulations on this project. Seems to address many issues in Qt and to reunite the C++ developers.
I have question about signal/slot mechanism.
Looking at your kitchensink code seems you still use macro based signal/slot mechanism:

connect(grabFrameBufferAct, SIGNAL(triggered()), this, SLOT(grabFrameBuffer()));

https://wiki.qt.io/New_Signal_Slot_Syntax
Is the new also supported?

I would say even drop old macro system which was a big source of bugs anyway. The string-based SIGNAL and SLOT syntax would only detect type mismatches at runtime.

barbara
Posts: 135
Joined: Sat Apr 04 2015 2:32 am

Re: Signal/slot mechanism

Post by barbara »

First of all congratulations on this project. Seems to address many issues in Qt and to reunite the C++ developers.
Thank you for the lovely feedback. It has been our goal from day one to create a set of GUI libraries which embrace C++.
Looking at your kitchensink code seems you still use macro based signal/slot mechanism:
We do the macros in some places and the method pointer syntax in other places in KitchenSink. Since we have developers moving from Qt to CopperSpice it is a bit much for them to change everything in a first pass. I will add that our internal code for the macro syntax has been cleaned up a bit since we not limited by moc.

You are correct, additional compile time type checking occurs with the method pointer syntax and is preferred in production code.

Barbara

baraujo
Posts: 6
Joined: Fri Feb 14 2020 2:47 pm

Re: Signal/slot mechanism

Post by baraujo »

Thanks for your response.

Is CopperSpice stable at this time?
I will certainly use it for my open source projects but was wondering if stable enough to be used in company environment.

I think it is ideal time to switch from Qt to CopperSpice as Qt is restricting licensing.

barbara
Posts: 135
Joined: Sat Apr 04 2015 2:32 am

Re: Signal/slot mechanism

Post by barbara »

Is CopperSpice stable at this time?
We have customers who are are using CopperSpice and we believe it is ready for production use. The CopperSpice team is continuing to improve the libraries which is why we have people working on profiling, networking/crypto changes, and tracking down areas which need a redesign. Moving to C++17 last year has given us many opportunities to improve the code.

CopperSpice is open source and will always be available as such. For those individuals or companies who are interested in a subscription policy for priority support, we have this option but it will never be a requirement in order to use CopperSpice.

Barbara

Post Reply