Highlight of this release is a major restructuring on how WindowBuilder handles relative and absolute coordinates. This was done to take advantage of the GEF API that determines the IFigure/EditPart underneath the cursor.
Doing so also allows us to integrate plain Draw2D figures directly, without them having to extend our "Designer" figure.
What's Changed
- Update target platform and projects for 2025-09 development cycle by @ptziegler in #1111
- Bump eclipse-dash/dash-licenses from 510ef299d8c61582c0cdb41e5936d566832bd856 to cbd9bd5d78742d3c9772ace91b129424b418c342 by @dependabot[bot] in #1110
- Repair and execute the Swing Databinding tests by @ptziegler in #1108
- Adapt tests to changed copy-paste functionality by @ptziegler in #1114
- Migrate tests to JUnit 5 by @ptziegler in #1115
- Replace deprecated SubProgressMonitor with SubMonitor by @ptziegler in #1116
- [Draw2D] Extract custom tool-tip handling from Draw2D Figure by @ptziegler in #1117
- [Draw2D] Harmonize tool-tip handling of WindowBuilder figures by @ptziegler in #1118
- [Draw2D] Change type of field 'm_cursorFigure' from Figure to IFigure by @ptziegler in #1119
- [Draw2D] Correct mouse coordinates in GEF event dispatcher by @ptziegler in #1120
- [GEF] RootEditPart should implement the LayerManager interface by @ptziegler in #1121
- [GEF] Remove obsolete getLayer(String) method from IEditPartViewer by @ptziegler in #1123
- [GEF] Generalize decorateChild/undecorateChild in LayoutEditPolicy by @ptziegler in #1124
- [GEF] Avoid overloading of getChildren() method in EditPart by @ptziegler in #1126
- [GEF] Streamline Handle lookup in GEF viewer by @ptziegler in #1128
- [GEF] TargetingTool#getExclusionSet() should return a IFigure's by @ptziegler in #1129
- Cleanup documentation for Wizards by @ptziegler in #1132
- Use 3.24.0 release repository in target platform by @ptziegler in #1134
- [GEF] Rename getLocation() and getStartLocation() in Tool by @ptziegler in #1133
- Try to stabilize MigLayoutConstraintsTest by @ptziegler in #1122
- Remove AMS component tests by @ptziegler in #1135
- Remove obsolete ASM test package by @ptziegler in #1136
- Cleanup AsciiDoc images & links in Core Features documentation by @ptziegler in #1102
- Increase bottom right margin of design viewer by @ptziegler in #1137
- [GEF] Calculate target handle using findFigureAt() by @ptziegler in #1131
- [GEF] Harmonize EditDomain event methods by @ptziegler in #1138
- [GEF] Remove explicit type cast in getTargetEditPart() by @ptziegler in #1139
- [GEF] Harmonize findTargetEditPart method by @ptziegler in #1140
- Stabilize MigLayoutConstraintTest.test_contextMenu_ConstraintsAction by @ptziegler in #1143
- [GEF] Replace executeCommand() in EditDomain with CommandStack by @ptziegler in #1142
- [GEF] Use declaring class as qualifier for EditPolicy constants by @ptziegler in #1145
- [GEF] Implement "finder" methods in GraphicalViewer using Draw2D methods by @ptziegler in #1130
- [GEF] Avoid usage of TargetFigureFindVisitor in Designer palette by @ptziegler in #1146
- [GEF] Generalize GraphicalEditPolicy to work with IFigures by @ptziegler in #1144
- [GEF] Remove excessive getFigureCanvas() method from Figure by @ptziegler in #1147
- [GEF] Generalize IFeedbackProxy to work with IFigures by @ptziegler in #1148
- Reactivate BindingsTest and adapt Bindings classes to expected behavior by @ptziegler in #1149
- Restrict execution of dash-license tool by @ptziegler in #1152
- Try to fix sporadic "Resource already exists" exception by @ptziegler in #1150
- Stabilize SourceCompositeTests to avoid occasional SEGFAULT by @ptziegler in #1154
- Try to fix sporadic "Build path contains duplicate entry" exception by @ptziegler in #1157
- [Draw2D] Determine figure under cursor using Draw2D API by @ptziegler in #1155
- [GEF] Generalize AbstractComponentEditPart to work with IFigures by @ptziegler in #1156
- [GEF] Generalize GraphicalEditPart to work with IFigures by @ptziegler in #1158
- Try to stabilize NewSourceDialogTest by @ptziegler in #1159
- Replace deprecated ViewerSorter with ViewerComparator by @ptziegler in #1161
- [GEF] Cleanup WindowBuilder Figure in Core Components by @ptziegler in #1160
- Convert AWT Image to ImageDescriptor without creating SWT Image by @ptziegler in #1151
- [Draw2D] Delete now obsolete FigureVisitor by @ptziegler in #1164
- [GEF] Cleanup usage of WindowBuilder Figure in Swing Components by @ptziegler in #1162
- [GEF] Cleanup usage of WindowBuilder Figure in SWT/RCP Components by @ptziegler in #1163
- [GEF] Use IFigure in IFeedbacksHelper where possible by @ptziegler in #1165
- Use plain Draw2D for column/row header edit parts by @ptziegler in #1169
- Add missing
@Deprecatedannotations by @ptziegler in #1168 - Avoid usage of deprecated Draw2D API by @ptziegler in #1167
- Refactor Box edit-parts to use plain Draw2D Figures by @ptziegler in #1170
- Remove usage of deprecated ArrayUtils methods by @ptziegler in #1171
- Migrate TextFeedback to use plain Draw2D labels by @ptziegler in #1173
- Avoid usage of deprecated newInstance() method by @ptziegler in #1172
- Remove obsolete Label figure by @ptziegler in #1174
- Avoid usage of deprecated ResourceManager methods by @ptziegler in #1175
- Repair and execute PropertyTableTooltipTest by @ptziegler in #1153
- Cleanup "Installation" doc page by @ptziegler in #1177
- Avoid usage of deprecated Locale constructor by @ptziegler in #1176
- Repair and execute disabled Core tests by @ptziegler in #1109
- Cleanup "preferences" doc page by @ptziegler in #1178
- Avoid usage of NumberUtils.isNumber(...) by @ptziegler in #1181
- Avoid usage of deprecated StringUtils.chomp(...) method by @ptziegler in #1179
- Mark CompositeClassLoader.getPackage(...) as deprecated by @ptziegler in #1180
- Improve access to JDT preference store by @ptziegler in #1183
- Remove obsolete files in doc plugin by @ptziegler in #1182
- Fix various broken links in AsciiDoc files by @ptziegler in #1185
- Disable "Basic UI" mode by default by @ptziegler in #1187
- Cleanup root AsciiDoc files by @ptziegler in #1186
- Avoid usage of deprecated getType() method of IClassFile interface by @ptziegler in #1184
- Try to stabilize "test_grid_emptyRow_whenPack()" test case by @ptziegler in #1189
- Repair and execute Editor tests by @ptziegler in #1188
- Bump eclipse-dash/dash-licenses from cbd9bd5d78742d3c9772ace91b129424b418c342 to 646710d2aab93c88e20121597596740fc1a5eb20 by @dependabot[bot] in #1190
- Stabilize UndoManagerTest.test_expandRemembered_bug_0 by @ptziegler in #1194
- Fix: "Unlikely Argument: ControlInfo" warning in LayoutAssistant by @ptziegler in #1192
- Cleanup "user interface" doc pages by @ptziegler in #1193
- Mark methods using the deprecated ComponentAttachmentInfo as deprecated by @ptziegler in #1195
- Enable "Baseline", "Above baseline" and "Below baseline" for GBL by @ptziegler in #1196
- Repair and execute SwingX tests by @ptziegler in #1197
- Repair image-related Swing tests by @ptziegler in #1198
- Bump eclipse-dash/dash-licenses from 646710d2aab93c88e20121597596740fc1a5eb20 to 82298640031508f56d15419e8320bf63e4e5ce3e by @dependabot[bot] in #1199
- Bump actions/checkout from 4.2.2 to 5.0.0 by @dependabot[bot] in #1200
- Create SVGs for Swing Container Icons by @ptziegler in #1201
Full Changelog: V1.20.0...V1.21.0