Maybe I am wrong, but it looks like there are many classes and code in rubric that are the same as in the old Text classes.
Rub is used in GT and now in the Core image. Shouldn't we clean this up before it used everywhere? Some examples: All TextLink classes looks the same (TextClassLink <-> RubTextClassLink) MorphAnnouncement subclass: #RubMorphAnnouncement RubMorphAnnouncment adds nothing FindReplaceService <-> RubFindReplaceService They look very similar, I don't understand why so much code is just the same in both, why not extract that into a base class? (and the same for RubFindReplaceDialogWindow/ FindReplaceDialogWindow and some many too) RubEditingState / EditingState. What this makes it even worse, Rubs class comment doesn't indicate how they differ from the old other one. It is really difficult to understand, - which (Rub)classes were created just because the old TextApi has them, but aren't actually used in the current Rubric framework. - wich classes are used but could be replaced with the existing one (TextLink for example) - which classes had to be changed, and therefore only the Rub-classes can work with rubric. - which classes are similiar named like the old Text classes and share some code but may work totally different. (For example TextEditor vs. RubTextEditor there are some methods in both that aren't used anywhere, it looks like RubTextEditor is just - a copy from TextEditor, - changed where it was needed - unchanged otherwise Rubric really adds some great new things and if you look at where it is used, it is really a great step forward, but the code is in a bad state. This needs to be cleaned up.
