45
45
46
46
public class OrganizeManifestsWizardPage extends UserInputWizardPage implements ILaunchingPreferenceConstants , IOrganizeManifestsSettings {
47
47
48
+ private Button fAddFixedVersions ;
49
+ private Button fAddBundledVersions ;
50
+ private Button fAddMissingVersions ;
48
51
private Button fRemoveUnresolved ;
49
52
private Button fCalculateUses ;
50
53
private Button fAddMissing ;
@@ -164,6 +167,19 @@ private void createExportedPackagesGroup(Composite container) {
164
167
gd = new GridData ();
165
168
gd .verticalIndent = 5 ;
166
169
fCalculateUses .setLayoutData (gd );
170
+
171
+ fAddMissingVersions = new Button (group , SWT .CHECK );
172
+ fAddMissingVersions .setText (PDEUIMessages .OrganizeManifestsWizardPage_addMissingVersions );
173
+ gd = new GridData ();
174
+ gd .verticalIndent = 5 ;
175
+ fAddMissingVersions .setLayoutData (gd );
176
+
177
+ fAddFixedVersions = new Button (group , SWT .RADIO );
178
+ fAddFixedVersions .setText (PDEUIMessages .OrganizeManifestsWizardPage_addFixedVersions );
179
+
180
+ fAddBundledVersions = new Button (group , SWT .RADIO );
181
+ fAddBundledVersions .setText (PDEUIMessages .OrganizeManifestsWizardPage_addBundledVersions );
182
+
167
183
}
168
184
169
185
private void createRequireImportGroup (Composite container ) {
@@ -226,6 +242,7 @@ private void presetOptions() {
226
242
fMarkInternal .setSelection (selection );
227
243
fProcessor .setMarkInternal (selection );
228
244
245
+
229
246
String filter = settings .get (PROP_INTERAL_PACKAGE_FILTER );
230
247
if (filter == null ) {
231
248
filter = VALUE_DEFAULT_FILTER ;
@@ -237,6 +254,15 @@ private void presetOptions() {
237
254
fRemoveUnresolved .setSelection (selection );
238
255
fProcessor .setRemoveUnresolved (selection );
239
256
257
+ selection = settings .getBoolean (PROP_ADD_MISSING_VERSIONS );
258
+ fAddMissingVersions .setSelection (selection );
259
+ fProcessor .setAddMissingVersions (selection );
260
+
261
+ selection = settings .getBoolean (PROP_MISSING_VERSION_OPTIONS );
262
+ fAddBundledVersions .setSelection (selection );
263
+ fAddFixedVersions .setSelection (!selection );
264
+ fProcessor .setMissingVersionOptions (selection );
265
+
240
266
selection = settings .getBoolean (PROP_CALCULATE_USES );
241
267
fCalculateUses .setSelection (selection );
242
268
fProcessor .setCalculateUses (selection );
@@ -291,6 +317,8 @@ protected void performOk() {
291
317
settings .put (PROP_REMOVE_UNRESOLVED_EX , !fRemoveUnresolved .getSelection ());
292
318
settings .put (PROP_CALCULATE_USES , fCalculateUses .getSelection ());
293
319
320
+ settings .put (PROP_ADD_MISSING_VERSIONS , !fAddMissingVersions .getSelection ());
321
+
294
322
settings .put (PROP_MODIFY_DEP , !fModifyDependencies .getSelection ());
295
323
settings .put (PROP_RESOLVE_IMP_MARK_OPT , fOptionalImport .getSelection ());
296
324
settings .put (PROP_UNUSED_DEPENDENCIES , fUnusedDependencies .getSelection ());
@@ -313,10 +341,15 @@ private void setEnabledStates() {
313
341
boolean modifyDependencies = fModifyDependencies .getSelection ();
314
342
fRemoveImport .setEnabled (modifyDependencies );
315
343
fOptionalImport .setEnabled (modifyDependencies );
344
+
345
+ boolean addMissingVersions = fAddMissingVersions .getSelection ();
346
+ fAddBundledVersions .setEnabled (addMissingVersions );
347
+ fAddFixedVersions .setEnabled (addMissingVersions );
316
348
}
317
349
318
350
private void setButtonArrays () {
319
- fTopLevelButtons = new Button [] { fRemoveUnresolved , fAddMissing , fModifyDependencies , fMarkInternal ,
351
+ fTopLevelButtons = new Button [] { fRemoveUnresolved , fAddMissing , fAddMissingVersions , fModifyDependencies ,
352
+ fMarkInternal ,
320
353
fUnusedDependencies , fAdditonalDependencies , fComputeImportPackages , fFixIconNLSPaths ,
321
354
fRemovedUnusedKeys , fRemoveLazy , fRemoveUselessFiles , fCalculateUses };
322
355
}
@@ -333,7 +366,8 @@ private void setPageComplete() {
333
366
}
334
367
335
368
private void hookListeners () {
336
- hookSelectionListener (new Button [] { fMarkInternal , fModifyDependencies }, widgetSelectedAdapter (e -> {
369
+ hookSelectionListener (new Button [] { fMarkInternal , fModifyDependencies , fAddMissingVersions },
370
+ widgetSelectedAdapter (e -> {
337
371
setEnabledStates ();
338
372
doProcessorSetting (e .getSource ());
339
373
}));
@@ -344,6 +378,8 @@ private void hookListeners() {
344
378
hookSelectionListener (new Button [] { fRemoveImport , fOptionalImport },
345
379
widgetSelectedAdapter (e -> doProcessorSetting (e .getSource ())));
346
380
hookTextListener (new Text [] {fPackageFilter }, e -> doProcessorSetting (e .getSource ()));
381
+ hookSelectionListener (new Button [] { fAddFixedVersions , fAddBundledVersions },
382
+ widgetSelectedAdapter (e -> doProcessorSetting (e .getSource ())));
347
383
}
348
384
349
385
private void doProcessorSetting (Object source ) {
@@ -380,9 +416,16 @@ private void doProcessorSetting(Object source) {
380
416
fProcessor .setPrefixIconNL (fFixIconNLSPaths .getSelection ());
381
417
} else if (fRemovedUnusedKeys .equals (source )) {
382
418
fProcessor .setUnusedKeys (fRemovedUnusedKeys .getSelection ());
419
+ } else if (fAddMissingVersions .equals (source )) {
420
+ fProcessor .setAddMissingVersions (fAddMissingVersions .getSelection ());
421
+ } else if (fAddFixedVersions .equals (source )) {
422
+ fProcessor .setMissingVersionOptions (fAddFixedVersions .getSelection ());
423
+ } else if (fAddBundledVersions .equals (source )) {
424
+ fProcessor .setMissingVersionOptions (fAddBundledVersions .getSelection ());
383
425
}
384
426
}
385
427
428
+
386
429
private void hookSelectionListener (Button [] buttons , SelectionListener adapter ) {
387
430
for (Button button : buttons ) {
388
431
button .addSelectionListener (adapter );
0 commit comments