Bug 455985 - [Contributions] org.eclipse.ui.editorActions should not be deprecated without a replacement
Summary: [Contributions] org.eclipse.ui.editorActions should not be deprecated without...
Status: RESOLVED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: IDE (show other bugs)
Version: 4.5   Edit
Hardware: PC Windows NT
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Platform UI Triaged CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 533254
  Show dependency tree
 
Reported: 2014-12-22 13:31 EST by Ed Willink CLA
Modified: 2019-04-25 05:00 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ed Willink CLA 2014-12-22 13:31:06 EST
IMHO deprecation requires a practical replacement.

org.eclipse.ui.editorActions is still in use by JDT so that provides no exemplary way forward.

For my own code I'm trying to move on but have given up and raise this Bug instead.

a) the schema description has an old example. This should be augmented by the an example rewrite using org.eclipse.ui.commands.

b) org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate should have comments that explain how to use it in a post-deprecation world.
Comment 1 Ed Willink CLA 2018-04-05 06:40:34 EDT
Ping.

org.eclipse.ui.editorActions is still in use by org.eclipse.ui.editors, notably to use actionID="RulerDoubleClick" for which no alternative seems to be available.

I note that in M6, the menu rendering of accelerators in the ruler menu may show "Ctrl+Double Click" suggesting that the "Double Click" event is being reified as a key, but attempting to use "Double Click" or "DOUBLE_CLICK" in a key sequence gives a parsing error. Certainly no sign of "DOUBLE_CLICK" in the source.

How is a RulerDoubleClick bound to a Command/Handler without using deprecated plugin.xml declarations?
Comment 2 Ed Willink CLA 2018-04-05 06:46:17 EDT
MAJOR

a) because good Eclipse citizens who try to eliminate deprecations waste time failing to do so

b) because use of deprecated UI by the platform undermines the credibility of the platform.

Either provide the replacements or suspend the deprecation.
Comment 3 Lars Vogel CLA 2019-04-25 04:20:06 EDT
(In reply to Ed Willink from comment #2)
> Either provide the replacements or suspend the deprecation.

The deprecation help new implementations to avoid using these outdated constructs. Updating existing code in the Eclipse project is desired but not always possible due to resource constraints. Contributions are welcome.
Comment 4 Christian Dietrich CLA 2019-04-25 04:21:27 EDT
The problem I (and I assume Ed as well) have is to find suitable replacements
Comment 5 Lars Vogel CLA 2019-04-25 04:30:52 EDT
(In reply to Christian Dietrich from comment #4)
> The problem I (and I assume Ed as well) have is to find suitable replacements

I suggest to open a new bug for a usage for RulerDoubleClick and ask to replace it with a new construct.
Comment 6 Ed Willink CLA 2019-04-25 04:45:31 EDT
This is the bug. Deprecations were applied without replacements. We still need guidance on the replacments of which RulerDoubleClick is just one.

Proper deprecations e.g. org.eclipse.ui.commands. Priority have

 * @deprecated This concept is now captured in the <code>ISources</code> integer
 *             constants.

When I gave up waiting for guidance, I found that recoding RulerToggleBreakpointActionDelegate was rather easy and resulted in simpler code. But why isn't this shared centrally?

When I tried to recode RulerDoubleClick, I failed, probably because the number of internal classes that I needed to rip-off to workaround private/package access limitations became untenable.
Comment 7 Lars Vogel CLA 2019-04-25 05:00:04 EDT
(In reply to Ed Willink from comment #6)
> This is the bug. 

No this bug is too general and it says: "org.eclipse.ui.editorActions" should not be deprecated without a replacement".

That is a WONTFIX. 

Please open a new bug for an individual usage of "org.eclipse.ui.editorActions" in platform code.