Hi list,
While implementing QgsLegendInterface for the Python API, I ran into
another problem: QgsLegend inherits from QTreeWidget, which inherits
from QObject. As QgsLegendInterface should have signals and slots, it
should inherit from QObject, too. When QgsLegend implements
QgsLegendInterface, I get the diamond problem: Both,
QgsLegendInterface and QTreeWidget inherit from QObject. How should I
handle that? Up to now, there are three possibilities:
1. QgsLegendInterface inherits from QTreeWidget and QgsLegend only
implements QgsLegendInterface. Not a very nice solution, and the
members of QTreeWidget would be exposed to the python scripter.
2. QgsLegendInterface is a "wrapper" class for QgsLegend. It holds a
pointer to the QgsLegend and inherits from QObject.
3. Split up QgsLegend, so the part that doesn't inherit from
QTreeWidget could implement QgsLegendInterface. QgsLegend is a huge
class, so it would be a lot of work to do that.
Do you have any other solutions? Or could you recommend one of the above?
Regards
Andres
_______________________________________________
Qgis-developer mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/qgis-developer