View Full Version : make singals private

11th July 2012, 09:51

I've started using doxygen to document the interfaces of my classes...

I have signals which I only use inside of the class. So they should not belong to the classes interface.

I have noticed that doxygen documented this signals, too. But doxygen has acted correctly because this signals are accecible form outside of this class.

How can I make a signal private (also in terms of information hiding)?

11th July 2012, 12:28
Not sure, but shouldn't work EXCLUDE_SYMBOLS for that. And - also unsure - since "private Q_SLOTS:" also doesn't make the functions private, I doubt you can make a signal real private.

11th July 2012, 12:44
Signals always have the "protected" access scope. There is no way of changing that.

13th July 2012, 07:09
Okay, then I have to accept that signals are always protected...

Even though this is not really a Qt topic but more a doxygen topic: Can anybody tell me how to use EXCLUDE_SYMBOLS so that some signals will not be documented?

Google couldn't really help me....

13th July 2012, 07:34

13th July 2012, 08:28
Excuse me?

16th July 2012, 16:09

16th July 2012, 16:26
I once needed private signals. I chose to move them to a helper class declared in a separate header file. E.g. MyClass is declared in myclass.h, its implementation is in myclass.cpp, the helper class MyClassPrivate is declared in myclass_p.h (which will be parsed by moc). Only myclass.cpp includes myclass_p.h. The users just include myclass.h.