Menu

#69 Enable possibility to subclass QwtPlotLayout

None
wont-fix
nobody
None
5
2015-03-24
2015-03-24
Anonymous
No

From what I understand the class QwtPlotLayout is designed to be subclassed. At least the following comment from the functions setScaleRect, setCanvasRect, setTitleRect, ... suggest this:

"This method is intended to be used from derived layouts overloading activate()"

Unfortunatly subclassing QwtPlotLayout is not possible, since a derived class can not access the private data (PrivateData) of QwtPlotLayout.

My current workaround is to copy the class QwtPlotLayout, rename it and then make the small changes that I would otherwise have done in the derived class.

Discussion

  • Uwe Rathmann

    Uwe Rathmann - 2015-03-24

    Derived classes can access public and protected methods, but never private methods. Nothing special about QwtPlotLayout and derived classes - nothing that prevents you from subclassing.

    But what you are probably asking for is to have more APIs in the protected section, that are in the private ( or hidden in PrivateData ) section today.

    Guess I don't need to explain, why having all methods/members in the public/protected sections is no acceptable class design and you need to be more explicit about what you need to access and what you want to achieve.

    Closing this request as being too unspecific, we can reopen a more specific one later - if necessary.

    Please continue with the discussion at the mailing list or the Qwt forum.

     
  • Uwe Rathmann

    Uwe Rathmann - 2015-03-24
    • status: open --> wont-fix
    • Group: -->
     

Anonymous
Anonymous

Add attachments
Cancel