Re: error in layout code?
Brought to you by:
rathmann
From: Paul H. <har...@gm...> - 2011-09-28 23:23:51
|
On 26 September 2011 14:06, Uwe Rathmann <Uwe...@ti...> wrote: > On 09/23/2011 04:53 AM, Paul Harris wrote: > > > > There is probably a lot of things trapped in PrivateData that will > > need to be exposed in order to properly support extending the legends > > properly... for example, what if I don't want it to be inside a scroll > > area? > > QwtAbstractLegend will have no layout code ( the scroll area is part of > that ) at all. > > > I will follow the path of implementing an independent legend system so > > I can use it elsewhere (now that i think about it, should be very > > useful, so this is a good change in direction), > > That's what I meant: it doesn't make too much sense to tweak the default > legend system, because there won't be much left. > > > Putting all that aside, did you check out the original layout problem > > I mentioned? > > The problem is noted but to be honest not on top of my priority list. > Please upload a bug report and some compilable demo code the project > page, so that it doesn't get lost. > > I would normally love to submit a bug report + patches (and I have in the past), but in this case, I'm not really sure what to say or do in the bug report, because the changes need to be so wide-ranging. For example, I have implemented my legend system - now I can have more than one legend (the item controls which legend(s) it lives in). However, to attach and detach from a plot+legend, you typically call item.attach(plot). attach() and detach are non-virtual, so I can't override those to also attach to my legends. Nor can I override plot->attachItem() which is in QwtPlotDict and is also non-virtual. So instead, I'll have to implement a parallel set of functions, eg attach_legend(plot), which does the extra legend work. I'll also have to check where attach()/detach() are called (eg in QwtPlotItem destructor) to also ensure that I call my own parallel attach methods. I'll try and submit a bug report once I'm done. You said its not a high priority for you, so if I have to patch the QWT code for whatever reason, I'll just have to manage those patches at my end. cheers Paul |