Summary: | [api][rulers] Allow to subclass ruler columns | ||
---|---|---|---|
Product: | [Eclipse Project] Platform | Reporter: | Lubomir Marinov <lubomir.marinov> |
Component: | Text | Assignee: | Platform-Text-Inbox <platform-text-inbox> |
Status: | ASSIGNED --- | QA Contact: | |
Severity: | enhancement | ||
Priority: | P3 | ||
Version: | 3.3 | ||
Target Milestone: | --- | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: |
Description
Lubomir Marinov
2007-04-12 14:01:10 EDT
No plans to change this. You can create your own subclasses of those ruler columns and then let your editor create your own subclasses. I've considered extending these classes and while it works for AnnotationRulerColumn because AbstractDecoratedTextEditor uses a deprecated extender that suggests using its super class, I don't think that extending works for LineNumberRulerColumn in this case. AbstractDecoratedTextEditor uses LineNumberChangeRulerColumn which is non-trivial, is defined final and uses classes internal to org.eclipse.jface.text. Sorry we won't change this. What we could do is allowing to subclass LineNumberChangeRulerColumn as well (i.e. remove 'final'). Try this out and report back whether this would work for you. There's no chance we forward the paint event. I've already tried subclassing LineNumberChangeRulerColumn (after patching it to make it non-final) and it works for me. If it's not a problem, could you please give a brief explanation why forwarding the redraw request to the Control of the IVerticalRulerColumn is not acceptable? I hope I'm not getting on your nerves by asking for such information because this is not my intention and I just want to make sure that I correctly understand the design decisions of IVerticalRulerColumn and do not make such unacceptable suggestions any more. Thank you in advance for your understanding and help. I'm sorry I'm reopening this bug again but I'm not sure how you want me to "report back" so I want to make sure that you notice my response. >If it's not a problem, could you please give a brief explanation why forwarding >the redraw request to the Control of the IVerticalRulerColumn is not >acceptable? Main reason is performance and second is keeping the control over "our" rulers that we use. If we allow this and want to do our own painting in the future we'll get bug reports that we broke those that used the pain listener. >I hope I'm not getting on your nerves Don't worry ;-) >I'm sorry I'm reopening this bug again but I'm not sure how you want me to >"report back" so I want to make sure that you notice my response. We get notified if you add comments, so no need to reopen just to notify. But in this case we could change the summary to something like "allow to subclass ruler columns". Agreed? (In reply to comment #5) > >If it's not a problem, could you please give a brief explanation why forwarding > >the redraw request to the Control of the IVerticalRulerColumn is not > >acceptable? > Main reason is performance and second is keeping the control over "our" rulers > that we use. If we allow this and want to do our own painting in the future > we'll get bug reports that we broke those that used the pain listener. > > >I hope I'm not getting on your nerves > Don't worry ;-) Thank you. > >I'm sorry I'm reopening this bug again but I'm not sure how you want me to > >"report back" so I want to make sure that you notice my response. > We get notified if you add comments, so no need to reopen just to notify. But > in this case we could change the summary to something like "allow to subclass > ruler columns". Agreed? Agreed. Thank you. This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant. |