The JADE 2022 release meets tomorrow’s business demands.
If I have an abstract base class and then implement concrete classes it would be nice if there were a way of showing all the abstract methods that aren't implemented on the concrete class.
Bonus points for adding skeleton methods that implement the abstract superclass methods.
Perhaps, but rather than making the class browser more complicated, I'm now wondering if this is something that would be better solved using a dialog for selecting/adding multiple stub/skeleton methods. There was also another idea (https://jedi.ideas.jadeworld.com/ideas/JAD-I-154) to improve how we could select/re-implement methods, which may already help in this scenario, but we won't know until the changes made for that idea are released.
Kevin - Maybe they could do both. So those of us who would prefer a targeted list when looking for non-reimplemented abstract methods can see a list of just those methods which already reimplement or potentially need to reimplement asbstract methods, and those who like the combined approach can simply go to the end of the standard method list(s) to see them there?
Rather than introducing a new tab, what about showing them as a group at end of the relevant list where they'll ultimately be shown? (All/Instance/Type). After selecting/implementing, their position would ideally remain static so you can easily move onto implementing others, until the entire list is refreshed at which point they'd become part of the main group.
Possibly another tab on the top of the methods list, to go along with the existing All / Form Events / Cntrl Events / Instance / Type / Interface tabs?
Then, it could list the unimplemented methods to click on and easily implement, like the event methods, with possibly a way to differentiate abstract methods which have already been reimplemented in an intervening superclass and ones that have no intervening implementation - although if view inherited is turned on the intermediate implementations could be listed with suitable class name separators as per other method views.
It may also be good when there is an intervening concrete implementation if it could automatically add the "inheritMethod" statement?!?
Perhaps they could be shown like event methods, where any inherited abstract methods which need to be implemented are shown in grey alongside other methods in general.
+1 for skeleton methods