KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > ca > mcgill > sable > soot > ui > PhaseOptionsDialog


1
2
3 /*
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the
16  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17  * Boston, MA 02111-1307, USA.
18  *
19  * This class is generated automajically from xml - DO NOT EDIT - as
20  * changes will be over written
21  *
22  * The purpose of this class is to automajically generate a options
23  * dialog in the event that options change
24  *
25  * Taking options away - should not damage the dialog
26  * Adding new sections of options - should not damage the dialog
27  * Adding new otpions to sections (of known option type) - should not
28  * damage the dialog
29  *
30  * Adding new option types will break the dialog (option type widgets
31  * will need to be created)
32  *
33  */

34
35 package ca.mcgill.sable.soot.ui;
36
37 //import org.eclipse.jface.dialogs.IDialogSettings;
38
import org.eclipse.swt.widgets.*;
39 import org.eclipse.swt.*;
40 import org.eclipse.swt.layout.*;
41 //import ca.mcgill.sable.soot.SootPlugin;
42
//import ca.mcgill.sable.soot.util.*;
43
import ca.mcgill.sable.soot.ui.*;
44 import java.util.*;
45 import org.eclipse.swt.events.*;
46
47 public class PhaseOptionsDialog extends AbstractOptionsDialog implements SelectionListener {
48
49     public PhaseOptionsDialog(Shell parentShell) {
50         super(parentShell);
51     }
52     
53     /**
54      * each section gets initialize as a stack layer in pageContainer
55      * the area containing the options
56      */

57     protected void initializePageContainer() {
58
59
60         
61 Composite General_OptionsChild = General_OptionsCreate(getPageContainer());
62
63 Composite Input_OptionsChild = Input_OptionsCreate(getPageContainer());
64
65 Composite Output_OptionsChild = Output_OptionsCreate(getPageContainer());
66
67 Composite Processing_OptionsChild = Processing_OptionsCreate(getPageContainer());
68
69 Composite Application_Mode_OptionsChild = Application_Mode_OptionsCreate(getPageContainer());
70
71 Composite Input_Attribute_OptionsChild = Input_Attribute_OptionsCreate(getPageContainer());
72
73 Composite Annotation_OptionsChild = Annotation_OptionsCreate(getPageContainer());
74
75 Composite Miscellaneous_OptionsChild = Miscellaneous_OptionsCreate(getPageContainer());
76
77 Composite jbChild = jbCreate(getPageContainer());
78
79 Composite jjChild = jjCreate(getPageContainer());
80
81 Composite cgChild = cgCreate(getPageContainer());
82
83 Composite wstpChild = wstpCreate(getPageContainer());
84
85 Composite wsopChild = wsopCreate(getPageContainer());
86
87 Composite wjtpChild = wjtpCreate(getPageContainer());
88
89 Composite wjopChild = wjopCreate(getPageContainer());
90
91 Composite wjapChild = wjapCreate(getPageContainer());
92
93 Composite shimpleChild = shimpleCreate(getPageContainer());
94
95 Composite stpChild = stpCreate(getPageContainer());
96
97 Composite sopChild = sopCreate(getPageContainer());
98
99 Composite jtpChild = jtpCreate(getPageContainer());
100
101 Composite jopChild = jopCreate(getPageContainer());
102
103 Composite japChild = japCreate(getPageContainer());
104
105 Composite gbChild = gbCreate(getPageContainer());
106
107 Composite gopChild = gopCreate(getPageContainer());
108
109 Composite bbChild = bbCreate(getPageContainer());
110
111 Composite bopChild = bopCreate(getPageContainer());
112
113 Composite tagChild = tagCreate(getPageContainer());
114
115 Composite dbChild = dbCreate(getPageContainer());
116
117 Composite jbjb_lsChild = jbjb_lsCreate(getPageContainer());
118
119 Composite jbjb_aChild = jbjb_aCreate(getPageContainer());
120
121 Composite jbjb_uleChild = jbjb_uleCreate(getPageContainer());
122
123 Composite jbjb_trChild = jbjb_trCreate(getPageContainer());
124
125 Composite jbjb_ulpChild = jbjb_ulpCreate(getPageContainer());
126
127 Composite jbjb_lnsChild = jbjb_lnsCreate(getPageContainer());
128
129 Composite jbjb_cpChild = jbjb_cpCreate(getPageContainer());
130
131 Composite jbjb_daeChild = jbjb_daeCreate(getPageContainer());
132
133 Composite jbjb_cp_uleChild = jbjb_cp_uleCreate(getPageContainer());
134
135 Composite jbjb_lpChild = jbjb_lpCreate(getPageContainer());
136
137 Composite jbjb_neChild = jbjb_neCreate(getPageContainer());
138
139 Composite jbjb_uceChild = jbjb_uceCreate(getPageContainer());
140
141 Composite jbjb_ttChild = jbjb_ttCreate(getPageContainer());
142
143 Composite jjjj_lsChild = jjjj_lsCreate(getPageContainer());
144
145 Composite jjjj_aChild = jjjj_aCreate(getPageContainer());
146
147 Composite jjjj_uleChild = jjjj_uleCreate(getPageContainer());
148
149 Composite jjjj_trChild = jjjj_trCreate(getPageContainer());
150
151 Composite jjjj_ulpChild = jjjj_ulpCreate(getPageContainer());
152
153 Composite jjjj_lnsChild = jjjj_lnsCreate(getPageContainer());
154
155 Composite jjjj_cpChild = jjjj_cpCreate(getPageContainer());
156
157 Composite jjjj_daeChild = jjjj_daeCreate(getPageContainer());
158
159 Composite jjjj_cp_uleChild = jjjj_cp_uleCreate(getPageContainer());
160
161 Composite jjjj_lpChild = jjjj_lpCreate(getPageContainer());
162
163 Composite jjjj_neChild = jjjj_neCreate(getPageContainer());
164
165 Composite jjjj_uceChild = jjjj_uceCreate(getPageContainer());
166
167 Composite cgcg_chaChild = cgcg_chaCreate(getPageContainer());
168
169 Composite cgcg_sparkChild = cgcg_sparkCreate(getPageContainer());
170
171 Composite cgcg_paddleChild = cgcg_paddleCreate(getPageContainer());
172
173 Composite cgSpark_General_OptionsChild = cgSpark_General_OptionsCreate(getPageContainer());
174
175 Composite cgSpark_Pointer_Assignment_Graph_Building_OptionsChild = cgSpark_Pointer_Assignment_Graph_Building_OptionsCreate(getPageContainer());
176
177 Composite cgSpark_Pointer_Assignment_Graph_Simplification_OptionsChild = cgSpark_Pointer_Assignment_Graph_Simplification_OptionsCreate(getPageContainer());
178
179 Composite cgSpark_Points_To_Set_Flowing_OptionsChild = cgSpark_Points_To_Set_Flowing_OptionsCreate(getPageContainer());
180
181 Composite cgSpark_Output_OptionsChild = cgSpark_Output_OptionsCreate(getPageContainer());
182
183 Composite cgPaddle_General_OptionsChild = cgPaddle_General_OptionsCreate(getPageContainer());
184
185 Composite cgPaddle_Context_Sensitivity_OptionsChild = cgPaddle_Context_Sensitivity_OptionsCreate(getPageContainer());
186
187 Composite cgPaddle_Pointer_Assignment_Graph_Building_OptionsChild = cgPaddle_Pointer_Assignment_Graph_Building_OptionsCreate(getPageContainer());
188
189 Composite cgPaddle_Points_To_Set_Flowing_OptionsChild = cgPaddle_Points_To_Set_Flowing_OptionsCreate(getPageContainer());
190
191 Composite cgPaddle_Output_OptionsChild = cgPaddle_Output_OptionsCreate(getPageContainer());
192
193 Composite wjopwjop_smbChild = wjopwjop_smbCreate(getPageContainer());
194
195 Composite wjopwjop_siChild = wjopwjop_siCreate(getPageContainer());
196
197 Composite wjapwjap_raChild = wjapwjap_raCreate(getPageContainer());
198
199 Composite wjapwjap_umtChild = wjapwjap_umtCreate(getPageContainer());
200
201 Composite wjapwjap_uftChild = wjapwjap_uftCreate(getPageContainer());
202
203 Composite wjapwjap_tqtChild = wjapwjap_tqtCreate(getPageContainer());
204
205 Composite wjapwjap_cggChild = wjapwjap_cggCreate(getPageContainer());
206
207 Composite wjapwjap_purityChild = wjapwjap_purityCreate(getPageContainer());
208
209 Composite sopsop_cpfChild = sopsop_cpfCreate(getPageContainer());
210
211 Composite jopjop_cseChild = jopjop_cseCreate(getPageContainer());
212
213 Composite jopjop_bcmChild = jopjop_bcmCreate(getPageContainer());
214
215 Composite jopjop_lcmChild = jopjop_lcmCreate(getPageContainer());
216
217 Composite jopjop_cpChild = jopjop_cpCreate(getPageContainer());
218
219 Composite jopjop_cpfChild = jopjop_cpfCreate(getPageContainer());
220
221 Composite jopjop_cbfChild = jopjop_cbfCreate(getPageContainer());
222
223 Composite jopjop_daeChild = jopjop_daeCreate(getPageContainer());
224
225 Composite jopjop_uce1Child = jopjop_uce1Create(getPageContainer());
226
227 Composite jopjop_ubf1Child = jopjop_ubf1Create(getPageContainer());
228
229 Composite jopjop_uce2Child = jopjop_uce2Create(getPageContainer());
230
231 Composite jopjop_ubf2Child = jopjop_ubf2Create(getPageContainer());
232
233 Composite jopjop_uleChild = jopjop_uleCreate(getPageContainer());
234
235 Composite japjap_npcChild = japjap_npcCreate(getPageContainer());
236
237 Composite japjap_npcolorerChild = japjap_npcolorerCreate(getPageContainer());
238
239 Composite japjap_abcChild = japjap_abcCreate(getPageContainer());
240
241 Composite japjap_profilingChild = japjap_profilingCreate(getPageContainer());
242
243 Composite japjap_seaChild = japjap_seaCreate(getPageContainer());
244
245 Composite japjap_fieldrwChild = japjap_fieldrwCreate(getPageContainer());
246
247 Composite japjap_cgtaggerChild = japjap_cgtaggerCreate(getPageContainer());
248
249 Composite japjap_parityChild = japjap_parityCreate(getPageContainer());
250
251 Composite japjap_patChild = japjap_patCreate(getPageContainer());
252
253 Composite japjap_lvtaggerChild = japjap_lvtaggerCreate(getPageContainer());
254
255 Composite japjap_rdtaggerChild = japjap_rdtaggerCreate(getPageContainer());
256
257 Composite japjap_cheChild = japjap_cheCreate(getPageContainer());
258
259 Composite japjap_umtChild = japjap_umtCreate(getPageContainer());
260
261 Composite japjap_litChild = japjap_litCreate(getPageContainer());
262
263 Composite japjap_aetChild = japjap_aetCreate(getPageContainer());
264
265 Composite japjap_dmtChild = japjap_dmtCreate(getPageContainer());
266
267 Composite gbgb_a1Child = gbgb_a1Create(getPageContainer());
268
269 Composite gbgb_cfChild = gbgb_cfCreate(getPageContainer());
270
271 Composite gbgb_a2Child = gbgb_a2Create(getPageContainer());
272
273 Composite gbgb_uleChild = gbgb_uleCreate(getPageContainer());
274
275 Composite bbbb_lsoChild = bbbb_lsoCreate(getPageContainer());
276
277 Composite bbbb_phoChild = bbbb_phoCreate(getPageContainer());
278
279 Composite bbbb_uleChild = bbbb_uleCreate(getPageContainer());
280
281 Composite bbbb_lpChild = bbbb_lpCreate(getPageContainer());
282
283 Composite tagtag_lnChild = tagtag_lnCreate(getPageContainer());
284
285 Composite tagtag_anChild = tagtag_anCreate(getPageContainer());
286
287 Composite tagtag_depChild = tagtag_depCreate(getPageContainer());
288
289 Composite tagtag_fieldrwChild = tagtag_fieldrwCreate(getPageContainer());
290
291 Composite dbdb_transformationsChild = dbdb_transformationsCreate(getPageContainer());
292
293 Composite dbdb_renamerChild = dbdb_renamerCreate(getPageContainer());
294
295 Composite dbdb_deobfuscateChild = dbdb_deobfuscateCreate(getPageContainer());
296
297 Composite dbdb_force_recompileChild = dbdb_force_recompileCreate(getPageContainer());
298
299
300         addOtherPages(getPageContainer());
301         initializeRadioGroups();
302         initializeEnableGroups();
303         
304     }
305
306     private void initializeRadioGroups(){
307         setRadioGroups(new HashMap());
308         int counter = 0;
309         ArrayList buttonList;
310
311         
312         buttonList = new ArrayList();
313
314             
315         if (isEnableButton("enabled")) {
316             buttonList.add(getcgcg_chaenabled_widget());
317             getcgcg_chaenabled_widget().getButton().addSelectionListener(this);
318         }
319
320             
321         if (isEnableButton("verbose")) {
322             buttonList.add(getcgcg_chaverbose_widget());
323             getcgcg_chaverbose_widget().getButton().addSelectionListener(this);
324         }
325
326             
327         if (isEnableButton("enabled")) {
328             buttonList.add(getcgcg_sparkenabled_widget());
329             getcgcg_sparkenabled_widget().getButton().addSelectionListener(this);
330         }
331
332             
333         if (isEnableButton("enabled")) {
334             buttonList.add(getcgcg_paddleenabled_widget());
335             getcgcg_paddleenabled_widget().getButton().addSelectionListener(this);
336         }
337
338         
339         getRadioGroups().put(new Integer JavaDoc(counter), buttonList);
340
341         counter++;
342         
343     }
344
345     
346     
347     private void initializeEnableGroups(){
348         setEnableGroups(new ArrayList());
349         
350         
351         
352         makeNewEnableGroup("jb");
353         
354         
355         addToEnableGroup("jb", getjbenabled_widget(), "enabled");
356         
357         
358         addToEnableGroup("jb", getjbuse_original_names_widget(), "use-original-names");
359         
360         
361         getjbenabled_widget().getButton().addSelectionListener(this);
362         
363         getjbuse_original_names_widget().getButton().addSelectionListener(this);
364         
365         
366         makeNewEnableGroup("jb", "jb.ls");
367         
368         
369         addToEnableGroup("jb", "jb.ls", getjbjb_lsenabled_widget(), "enabled");
370         
371         getjbjb_lsenabled_widget().getButton().addSelectionListener(this);
372         
373         
374         makeNewEnableGroup("jb", "jb.a");
375         
376         
377         addToEnableGroup("jb", "jb.a", getjbjb_aenabled_widget(), "enabled");
378         
379         addToEnableGroup("jb", "jb.a", getjbjb_aonly_stack_locals_widget(), "only-stack-locals");
380         
381         getjbjb_aenabled_widget().getButton().addSelectionListener(this);
382         
383         getjbjb_aonly_stack_locals_widget().getButton().addSelectionListener(this);
384         
385         
386         makeNewEnableGroup("jb", "jb.ule");
387         
388         
389         addToEnableGroup("jb", "jb.ule", getjbjb_uleenabled_widget(), "enabled");
390         
391         getjbjb_uleenabled_widget().getButton().addSelectionListener(this);
392         
393         
394         makeNewEnableGroup("jb", "jb.tr");
395         
396         
397         addToEnableGroup("jb", "jb.tr", getjbjb_trenabled_widget(), "enabled");
398         
399         getjbjb_trenabled_widget().getButton().addSelectionListener(this);
400         
401         
402         makeNewEnableGroup("jb", "jb.ulp");
403         
404         
405         addToEnableGroup("jb", "jb.ulp", getjbjb_ulpenabled_widget(), "enabled");
406         
407         addToEnableGroup("jb", "jb.ulp", getjbjb_ulpunsplit_original_locals_widget(), "unsplit-original-locals");
408         
409         getjbjb_ulpenabled_widget().getButton().addSelectionListener(this);
410         
411         getjbjb_ulpunsplit_original_locals_widget().getButton().addSelectionListener(this);
412         
413         
414         makeNewEnableGroup("jb", "jb.lns");
415         
416         
417         addToEnableGroup("jb", "jb.lns", getjbjb_lnsenabled_widget(), "enabled");
418         
419         addToEnableGroup("jb", "jb.lns", getjbjb_lnsonly_stack_locals_widget(), "only-stack-locals");
420         
421         getjbjb_lnsenabled_widget().getButton().addSelectionListener(this);
422         
423         getjbjb_lnsonly_stack_locals_widget().getButton().addSelectionListener(this);
424         
425         
426         makeNewEnableGroup("jb", "jb.cp");
427         
428         
429         addToEnableGroup("jb", "jb.cp", getjbjb_cpenabled_widget(), "enabled");
430         
431         addToEnableGroup("jb", "jb.cp", getjbjb_cponly_regular_locals_widget(), "only-regular-locals");
432         
433         addToEnableGroup("jb", "jb.cp", getjbjb_cponly_stack_locals_widget(), "only-stack-locals");
434         
435         getjbjb_cpenabled_widget().getButton().addSelectionListener(this);
436         
437         getjbjb_cponly_regular_locals_widget().getButton().addSelectionListener(this);
438         
439         getjbjb_cponly_stack_locals_widget().getButton().addSelectionListener(this);
440         
441         
442         makeNewEnableGroup("jb", "jb.dae");
443         
444         
445         addToEnableGroup("jb", "jb.dae", getjbjb_daeenabled_widget(), "enabled");
446         
447         addToEnableGroup("jb", "jb.dae", getjbjb_daeonly_stack_locals_widget(), "only-stack-locals");
448         
449         getjbjb_daeenabled_widget().getButton().addSelectionListener(this);
450         
451         getjbjb_daeonly_stack_locals_widget().getButton().addSelectionListener(this);
452         
453         
454         makeNewEnableGroup("jb", "jb.cp-ule");
455         
456         
457         addToEnableGroup("jb", "jb.cp-ule", getjbjb_cp_uleenabled_widget(), "enabled");
458         
459         getjbjb_cp_uleenabled_widget().getButton().addSelectionListener(this);
460         
461         
462         makeNewEnableGroup("jb", "jb.lp");
463         
464         
465         addToEnableGroup("jb", "jb.lp", getjbjb_lpenabled_widget(), "enabled");
466         
467         addToEnableGroup("jb", "jb.lp", getjbjb_lpunsplit_original_locals_widget(), "unsplit-original-locals");
468         
469         getjbjb_lpenabled_widget().getButton().addSelectionListener(this);
470         
471         getjbjb_lpunsplit_original_locals_widget().getButton().addSelectionListener(this);
472         
473         
474         makeNewEnableGroup("jb", "jb.ne");
475         
476         
477         addToEnableGroup("jb", "jb.ne", getjbjb_neenabled_widget(), "enabled");
478         
479         getjbjb_neenabled_widget().getButton().addSelectionListener(this);
480         
481         
482         makeNewEnableGroup("jb", "jb.uce");
483         
484         
485         addToEnableGroup("jb", "jb.uce", getjbjb_uceenabled_widget(), "enabled");
486         
487         addToEnableGroup("jb", "jb.uce", getjbjb_uceremove_unreachable_traps_widget(), "remove-unreachable-traps");
488         
489         getjbjb_uceenabled_widget().getButton().addSelectionListener(this);
490         
491         getjbjb_uceremove_unreachable_traps_widget().getButton().addSelectionListener(this);
492         
493         
494         makeNewEnableGroup("jb", "jb.tt");
495         
496         
497         addToEnableGroup("jb", "jb.tt", getjbjb_ttenabled_widget(), "enabled");
498         
499         getjbjb_ttenabled_widget().getButton().addSelectionListener(this);
500         
501         
502         makeNewEnableGroup("jj");
503         
504         
505         addToEnableGroup("jj", getjjenabled_widget(), "enabled");
506         
507         
508         addToEnableGroup("jj", getjjuse_original_names_widget(), "use-original-names");
509         
510         
511         getjjenabled_widget().getButton().addSelectionListener(this);
512         
513         getjjuse_original_names_widget().getButton().addSelectionListener(this);
514         
515         
516         makeNewEnableGroup("jj", "jj.ls");
517         
518         
519         addToEnableGroup("jj", "jj.ls", getjjjj_lsenabled_widget(), "enabled");
520         
521         getjjjj_lsenabled_widget().getButton().addSelectionListener(this);
522         
523         
524         makeNewEnableGroup("jj", "jj.a");
525         
526         
527         addToEnableGroup("jj", "jj.a", getjjjj_aenabled_widget(), "enabled");
528         
529         addToEnableGroup("jj", "jj.a", getjjjj_aonly_stack_locals_widget(), "only-stack-locals");
530         
531         getjjjj_aenabled_widget().getButton().addSelectionListener(this);
532         
533         getjjjj_aonly_stack_locals_widget().getButton().addSelectionListener(this);
534         
535         
536         makeNewEnableGroup("jj", "jj.ule");
537         
538         
539         addToEnableGroup("jj", "jj.ule", getjjjj_uleenabled_widget(), "enabled");
540         
541         getjjjj_uleenabled_widget().getButton().addSelectionListener(this);
542         
543         
544         makeNewEnableGroup("jj", "jj.tr");
545         
546         
547         addToEnableGroup("jj", "jj.tr", getjjjj_trenabled_widget(), "enabled");
548         
549         getjjjj_trenabled_widget().getButton().addSelectionListener(this);
550         
551         
552         makeNewEnableGroup("jj", "jj.ulp");
553         
554         
555         addToEnableGroup("jj", "jj.ulp", getjjjj_ulpenabled_widget(), "enabled");
556         
557         addToEnableGroup("jj", "jj.ulp", getjjjj_ulpunsplit_original_locals_widget(), "unsplit-original-locals");
558         
559         getjjjj_ulpenabled_widget().getButton().addSelectionListener(this);
560         
561         getjjjj_ulpunsplit_original_locals_widget().getButton().addSelectionListener(this);
562         
563         
564         makeNewEnableGroup("jj", "jj.lns");
565         
566         
567         addToEnableGroup("jj", "jj.lns", getjjjj_lnsenabled_widget(), "enabled");
568         
569         addToEnableGroup("jj", "jj.lns", getjjjj_lnsonly_stack_locals_widget(), "only-stack-locals");
570         
571         getjjjj_lnsenabled_widget().getButton().addSelectionListener(this);
572         
573         getjjjj_lnsonly_stack_locals_widget().getButton().addSelectionListener(this);
574         
575         
576         makeNewEnableGroup("jj", "jj.cp");
577         
578         
579         addToEnableGroup("jj", "jj.cp", getjjjj_cpenabled_widget(), "enabled");
580         
581         addToEnableGroup("jj", "jj.cp", getjjjj_cponly_regular_locals_widget(), "only-regular-locals");
582         
583         addToEnableGroup("jj", "jj.cp", getjjjj_cponly_stack_locals_widget(), "only-stack-locals");
584         
585         getjjjj_cpenabled_widget().getButton().addSelectionListener(this);
586         
587         getjjjj_cponly_regular_locals_widget().getButton().addSelectionListener(this);
588         
589         getjjjj_cponly_stack_locals_widget().getButton().addSelectionListener(this);
590         
591         
592         makeNewEnableGroup("jj", "jj.dae");
593         
594         
595         addToEnableGroup("jj", "jj.dae", getjjjj_daeenabled_widget(), "enabled");
596         
597         addToEnableGroup("jj", "jj.dae", getjjjj_daeonly_stack_locals_widget(), "only-stack-locals");
598         
599         getjjjj_daeenabled_widget().getButton().addSelectionListener(this);
600         
601         getjjjj_daeonly_stack_locals_widget().getButton().addSelectionListener(this);
602         
603         
604         makeNewEnableGroup("jj", "jj.cp-ule");
605         
606         
607         addToEnableGroup("jj", "jj.cp-ule", getjjjj_cp_uleenabled_widget(), "enabled");
608         
609         getjjjj_cp_uleenabled_widget().getButton().addSelectionListener(this);
610         
611         
612         makeNewEnableGroup("jj", "jj.lp");
613         
614         
615         addToEnableGroup("jj", "jj.lp", getjjjj_lpenabled_widget(), "enabled");
616         
617         addToEnableGroup("jj", "jj.lp", getjjjj_lpunsplit_original_locals_widget(), "unsplit-original-locals");
618         
619         getjjjj_lpenabled_widget().getButton().addSelectionListener(this);
620         
621         getjjjj_lpunsplit_original_locals_widget().getButton().addSelectionListener(this);
622         
623         
624         makeNewEnableGroup("jj", "jj.ne");
625         
626         
627         addToEnableGroup("jj", "jj.ne", getjjjj_neenabled_widget(), "enabled");
628         
629         getjjjj_neenabled_widget().getButton().addSelectionListener(this);
630         
631         
632         makeNewEnableGroup("jj", "jj.uce");
633         
634         
635         addToEnableGroup("jj", "jj.uce", getjjjj_uceenabled_widget(), "enabled");
636         
637         getjjjj_uceenabled_widget().getButton().addSelectionListener(this);
638         
639         
640         makeNewEnableGroup("cg");
641         
642         
643         addToEnableGroup("cg", getcgenabled_widget(), "enabled");
644         
645         
646         addToEnableGroup("cg", getcgsafe_forname_widget(), "safe-forname");
647         
648         
649         addToEnableGroup("cg", getcgsafe_newinstance_widget(), "safe-newinstance");
650         
651         
652         addToEnableGroup("cg", getcgverbose_widget(), "verbose");
653         
654         
655         addToEnableGroup("cg", getcgjdkver_widget(), "jdkver");
656         
657         
658         addToEnableGroup("cg", getcgall_reachable_widget(), "all-reachable");
659         
660         
661         addToEnableGroup("cg", getcgimplicit_entry_widget(), "implicit-entry");
662         
663         
664         addToEnableGroup("cg", getcgtrim_clinit_widget(), "trim-clinit");
665         
666         
667         getcgenabled_widget().getButton().addSelectionListener(this);
668         
669         getcgsafe_forname_widget().getButton().addSelectionListener(this);
670         
671         getcgsafe_newinstance_widget().getButton().addSelectionListener(this);
672         
673         getcgverbose_widget().getButton().addSelectionListener(this);
674         
675         getcgall_reachable_widget().getButton().addSelectionListener(this);
676         
677         getcgimplicit_entry_widget().getButton().addSelectionListener(this);
678         
679         getcgtrim_clinit_widget().getButton().addSelectionListener(this);
680         
681         
682         makeNewEnableGroup("cg", "cg.cha");
683         
684         
685         addToEnableGroup("cg", "cg.cha", getcgcg_chaenabled_widget(), "enabled");
686         
687         addToEnableGroup("cg", "cg.cha", getcgcg_chaverbose_widget(), "verbose");
688         
689         getcgcg_chaenabled_widget().getButton().addSelectionListener(this);
690         
691         getcgcg_chaverbose_widget().getButton().addSelectionListener(this);
692         
693         
694         makeNewEnableGroup("cg", "cg.spark");
695         
696         
697         addToEnableGroup("cg", "cg.spark", getcgcg_sparkenabled_widget(), "enabled");
698         
699         getcgcg_sparkenabled_widget().getButton().addSelectionListener(this);
700         
701         addToEnableGroup("cg", "cg.spark", getcgcg_sparkverbose_widget(), "verbose");
702
703         
704         addToEnableGroup("cg", "cg.spark", getcgcg_sparkignore_types_widget(), "ignore-types");
705
706         
707         addToEnableGroup("cg", "cg.spark", getcgcg_sparkforce_gc_widget(), "force-gc");
708
709         
710         addToEnableGroup("cg", "cg.spark", getcgcg_sparkpre_jimplify_widget(), "pre-jimplify");
711
712         
713         addToEnableGroup("cg", "cg.spark", getcgcg_sparkvta_widget(), "vta");
714
715         
716         addToEnableGroup("cg", "cg.spark", getcgcg_sparkrta_widget(), "rta");
717
718         
719         addToEnableGroup("cg", "cg.spark", getcgcg_sparkfield_based_widget(), "field-based");
720
721         
722         addToEnableGroup("cg", "cg.spark", getcgcg_sparktypes_for_sites_widget(), "types-for-sites");
723
724         
725         addToEnableGroup("cg", "cg.spark", getcgcg_sparkmerge_stringbuffer_widget(), "merge-stringbuffer");
726
727         
728         addToEnableGroup("cg", "cg.spark", getcgcg_sparkstring_constants_widget(), "string-constants");
729
730         
731         addToEnableGroup("cg", "cg.spark", getcgcg_sparksimulate_natives_widget(), "simulate-natives");
732
733         
734         addToEnableGroup("cg", "cg.spark", getcgcg_sparksimple_edges_bidirectional_widget(), "simple-edges-bidirectional");
735
736         
737         addToEnableGroup("cg", "cg.spark", getcgcg_sparkon_fly_cg_widget(), "on-fly-cg");
738
739         
740         addToEnableGroup("cg", "cg.spark", getcgcg_sparksimplify_offline_widget(), "simplify-offline");
741
742         
743         addToEnableGroup("cg", "cg.spark", getcgcg_sparksimplify_sccs_widget(), "simplify-sccs");
744
745         
746         addToEnableGroup("cg", "cg.spark", getcgcg_sparkignore_types_for_sccs_widget(), "ignore-types-for-sccs");
747
748         
749         addToEnableGroup("cg", "cg.spark", getcgcg_sparkpropagator_widget(), "propagator");
750
751         
752         addToEnableGroup("cg", "cg.spark", getcgcg_sparkset_impl_widget(), "set-impl");
753
754         
755         addToEnableGroup("cg", "cg.spark", getcgcg_sparkdouble_set_old_widget(), "double-set-old");
756
757         
758         addToEnableGroup("cg", "cg.spark", getcgcg_sparkdouble_set_new_widget(), "double-set-new");
759
760         
761         addToEnableGroup("cg", "cg.spark", getcgcg_sparkdump_html_widget(), "dump-html");
762
763         
764         addToEnableGroup("cg", "cg.spark", getcgcg_sparkdump_pag_widget(), "dump-pag");
765
766         
767         addToEnableGroup("cg", "cg.spark", getcgcg_sparkdump_solution_widget(), "dump-solution");
768
769         
770         addToEnableGroup("cg", "cg.spark", getcgcg_sparktopo_sort_widget(), "topo-sort");
771
772         
773         addToEnableGroup("cg", "cg.spark", getcgcg_sparkdump_types_widget(), "dump-types");
774
775         
776         addToEnableGroup("cg", "cg.spark", getcgcg_sparkclass_method_var_widget(), "class-method-var");
777
778         
779         addToEnableGroup("cg", "cg.spark", getcgcg_sparkdump_answer_widget(), "dump-answer");
780
781         
782         addToEnableGroup("cg", "cg.spark", getcgcg_sparkadd_tags_widget(), "add-tags");
783
784         
785         addToEnableGroup("cg", "cg.spark", getcgcg_sparkset_mass_widget(), "set-mass");
786
787         
788         
789         makeNewEnableGroup("cg", "cg.paddle");
790         
791         
792         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleenabled_widget(), "enabled");
793         
794         getcgcg_paddleenabled_widget().getButton().addSelectionListener(this);
795         
796         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleverbose_widget(), "verbose");
797
798         
799         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleconf_widget(), "conf");
800
801         
802         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlebdd_widget(), "bdd");
803
804         
805         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleorder_widget(), "order");
806
807         
808         addToEnableGroup("cg", "cg.paddle", getcgcg_paddledynamic_order_widget(), "dynamic-order");
809
810         
811         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleprofile_widget(), "profile");
812
813         
814         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleq_widget(), "q");
815
816         
817         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlebackend_widget(), "backend");
818
819         
820         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleignore_types_widget(), "ignore-types");
821
822         
823         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlepre_jimplify_widget(), "pre-jimplify");
824
825         
826         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlecontext_widget(), "context");
827
828         
829         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlek_widget(), "k");
830
831         
832         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlecontext_heap_widget(), "context-heap");
833
834         
835         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlerta_widget(), "rta");
836
837         
838         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlefield_based_widget(), "field-based");
839
840         
841         addToEnableGroup("cg", "cg.paddle", getcgcg_paddletypes_for_sites_widget(), "types-for-sites");
842
843         
844         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlemerge_stringbuffer_widget(), "merge-stringbuffer");
845
846         
847         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlestring_constants_widget(), "string-constants");
848
849         
850         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlesimulate_natives_widget(), "simulate-natives");
851
852         
853         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleglobal_nodes_in_natives_widget(), "global-nodes-in-natives");
854
855         
856         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlesimple_edges_bidirectional_widget(), "simple-edges-bidirectional");
857
858         
859         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlethis_edges_widget(), "this-edges");
860
861         
862         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleprecise_newinstance_widget(), "precise-newinstance");
863
864         
865         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlepropagator_widget(), "propagator");
866
867         
868         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleset_impl_widget(), "set-impl");
869
870         
871         addToEnableGroup("cg", "cg.paddle", getcgcg_paddledouble_set_old_widget(), "double-set-old");
872
873         
874         addToEnableGroup("cg", "cg.paddle", getcgcg_paddledouble_set_new_widget(), "double-set-new");
875
876         
877         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlecontext_counts_widget(), "context-counts");
878
879         
880         addToEnableGroup("cg", "cg.paddle", getcgcg_paddletotal_context_counts_widget(), "total-context-counts");
881
882         
883         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlemethod_context_counts_widget(), "method-context-counts");
884
885         
886         addToEnableGroup("cg", "cg.paddle", getcgcg_paddleset_mass_widget(), "set-mass");
887
888         
889         addToEnableGroup("cg", "cg.paddle", getcgcg_paddlenumber_nodes_widget(), "number-nodes");
890
891         
892         
893         makeNewEnableGroup("wstp");
894         
895         
896         addToEnableGroup("wstp", getwstpenabled_widget(), "enabled");
897         
898         
899         getwstpenabled_widget().getButton().addSelectionListener(this);
900         
901         
902         makeNewEnableGroup("wsop");
903         
904         
905         addToEnableGroup("wsop", getwsopenabled_widget(), "enabled");
906         
907         
908         getwsopenabled_widget().getButton().addSelectionListener(this);
909         
910         
911         makeNewEnableGroup("wjtp");
912         
913         
914         addToEnableGroup("wjtp", getwjtpenabled_widget(), "enabled");
915         
916         
917         getwjtpenabled_widget().getButton().addSelectionListener(this);
918         
919         
920         makeNewEnableGroup("wjop");
921         
922         
923         addToEnableGroup("wjop", getwjopenabled_widget(), "enabled");
924         
925         
926         getwjopenabled_widget().getButton().addSelectionListener(this);
927         
928         
929         makeNewEnableGroup("wjop", "wjop.smb");
930         
931         
932         addToEnableGroup("wjop", "wjop.smb", getwjopwjop_smbenabled_widget(), "enabled");
933         
934         addToEnableGroup("wjop", "wjop.smb", getwjopwjop_smbinsert_null_checks_widget(), "insert-null-checks");
935         
936         addToEnableGroup("wjop", "wjop.smb", getwjopwjop_smbinsert_redundant_casts_widget(), "insert-redundant-casts");
937         
938         addToEnableGroup("wjop", "wjop.smb", getwjopwjop_smballowed_modifier_changes_widget(), "allowed-modifier-changes");
939         
940         getwjopwjop_smbenabled_widget().getButton().addSelectionListener(this);
941         
942         getwjopwjop_smbinsert_null_checks_widget().getButton().addSelectionListener(this);
943         
944         getwjopwjop_smbinsert_redundant_casts_widget().getButton().addSelectionListener(this);
945         
946         
947         makeNewEnableGroup("wjop", "wjop.si");
948         
949         
950         addToEnableGroup("wjop", "wjop.si", getwjopwjop_sienabled_widget(), "enabled");
951         
952         addToEnableGroup("wjop", "wjop.si", getwjopwjop_sirerun_jb_widget(), "rerun-jb");
953         
954         addToEnableGroup("wjop", "wjop.si", getwjopwjop_siinsert_null_checks_widget(), "insert-null-checks");
955         
956         addToEnableGroup("wjop", "wjop.si", getwjopwjop_siinsert_redundant_casts_widget(), "insert-redundant-casts");
957         
958         addToEnableGroup("wjop", "wjop.si", getwjopwjop_siallowed_modifier_changes_widget(), "allowed-modifier-changes");
959         
960         addToEnableGroup("wjop", "wjop.si", getwjopwjop_siexpansion_factor_widget(), "expansion-factor");
961         
962         addToEnableGroup("wjop", "wjop.si", getwjopwjop_simax_container_size_widget(), "max-container-size");
963         
964         addToEnableGroup("wjop", "wjop.si", getwjopwjop_simax_inlinee_size_widget(), "max-inlinee-size");
965         
966         getwjopwjop_sienabled_widget().getButton().addSelectionListener(this);
967         
968         getwjopwjop_sirerun_jb_widget().getButton().addSelectionListener(this);
969         
970         getwjopwjop_siinsert_null_checks_widget().getButton().addSelectionListener(this);
971         
972         getwjopwjop_siinsert_redundant_casts_widget().getButton().addSelectionListener(this);
973         
974         
975         makeNewEnableGroup("wjap");
976         
977         
978         addToEnableGroup("wjap", getwjapenabled_widget(), "enabled");
979         
980         
981         getwjapenabled_widget().getButton().addSelectionListener(this);
982         
983         
984         makeNewEnableGroup("wjap", "wjap.ra");
985         
986         
987         addToEnableGroup("wjap", "wjap.ra", getwjapwjap_raenabled_widget(), "enabled");
988         
989         getwjapwjap_raenabled_widget().getButton().addSelectionListener(this);
990         
991         
992         makeNewEnableGroup("wjap", "wjap.umt");
993         
994         
995         addToEnableGroup("wjap", "wjap.umt", getwjapwjap_umtenabled_widget(), "enabled");
996         
997         getwjapwjap_umtenabled_widget().getButton().addSelectionListener(this);
998         
999         
1000        makeNewEnableGroup("wjap", "wjap.uft");
1001        
1002        
1003        addToEnableGroup("wjap", "wjap.uft", getwjapwjap_uftenabled_widget(), "enabled");
1004        
1005        getwjapwjap_uftenabled_widget().getButton().addSelectionListener(this);
1006        
1007        
1008        makeNewEnableGroup("wjap", "wjap.tqt");
1009        
1010        
1011        addToEnableGroup("wjap", "wjap.tqt", getwjapwjap_tqtenabled_widget(), "enabled");
1012        
1013        getwjapwjap_tqtenabled_widget().getButton().addSelectionListener(this);
1014        
1015        
1016        makeNewEnableGroup("wjap", "wjap.cgg");
1017        
1018        
1019        addToEnableGroup("wjap", "wjap.cgg", getwjapwjap_cggenabled_widget(), "enabled");
1020        
1021        addToEnableGroup("wjap", "wjap.cgg", getwjapwjap_cggshow_lib_meths_widget(), "show-lib-meths");
1022        
1023        getwjapwjap_cggenabled_widget().getButton().addSelectionListener(this);
1024        
1025        getwjapwjap_cggshow_lib_meths_widget().getButton().addSelectionListener(this);
1026        
1027        
1028        makeNewEnableGroup("wjap", "wjap.purity");
1029        
1030        
1031        addToEnableGroup("wjap", "wjap.purity", getwjapwjap_purityenabled_widget(), "enabled");
1032        
1033        addToEnableGroup("wjap", "wjap.purity", getwjapwjap_puritydump_summaries_widget(), "dump-summaries");
1034        
1035        addToEnableGroup("wjap", "wjap.purity", getwjapwjap_puritydump_cg_widget(), "dump-cg");
1036        
1037        addToEnableGroup("wjap", "wjap.purity", getwjapwjap_puritydump_intra_widget(), "dump-intra");
1038        
1039        addToEnableGroup("wjap", "wjap.purity", getwjapwjap_purityprint_widget(), "print");
1040        
1041        addToEnableGroup("wjap", "wjap.purity", getwjapwjap_purityverbose_widget(), "verbose");
1042        
1043        getwjapwjap_purityenabled_widget().getButton().addSelectionListener(this);
1044        
1045        getwjapwjap_puritydump_summaries_widget().getButton().addSelectionListener(this);
1046        
1047        getwjapwjap_puritydump_cg_widget().getButton().addSelectionListener(this);
1048        
1049        getwjapwjap_puritydump_intra_widget().getButton().addSelectionListener(this);
1050        
1051        getwjapwjap_purityprint_widget().getButton().addSelectionListener(this);
1052        
1053        getwjapwjap_purityverbose_widget().getButton().addSelectionListener(this);
1054        
1055        
1056        makeNewEnableGroup("shimple");
1057        
1058        
1059        addToEnableGroup("shimple", getshimpleenabled_widget(), "enabled");
1060        
1061        
1062        addToEnableGroup("shimple", getshimplenode_elim_opt_widget(), "node-elim-opt");
1063        
1064        
1065        addToEnableGroup("shimple", getshimplestandard_local_names_widget(), "standard-local-names");
1066        
1067        
1068        addToEnableGroup("shimple", getshimpleextended_widget(), "extended");
1069        
1070        
1071        addToEnableGroup("shimple", getshimpledebug_widget(), "debug");
1072        
1073        
1074        getshimpleenabled_widget().getButton().addSelectionListener(this);
1075        
1076        getshimplenode_elim_opt_widget().getButton().addSelectionListener(this);
1077        
1078        getshimplestandard_local_names_widget().getButton().addSelectionListener(this);
1079        
1080        getshimpleextended_widget().getButton().addSelectionListener(this);
1081        
1082        getshimpledebug_widget().getButton().addSelectionListener(this);
1083        
1084        
1085        makeNewEnableGroup("stp");
1086        
1087        
1088        addToEnableGroup("stp", getstpenabled_widget(), "enabled");
1089        
1090        
1091        getstpenabled_widget().getButton().addSelectionListener(this);
1092        
1093        
1094        makeNewEnableGroup("sop");
1095        
1096        
1097        addToEnableGroup("sop", getsopenabled_widget(), "enabled");
1098        
1099        
1100        getsopenabled_widget().getButton().addSelectionListener(this);
1101        
1102        
1103        makeNewEnableGroup("sop", "sop.cpf");
1104        
1105        
1106        addToEnableGroup("sop", "sop.cpf", getsopsop_cpfenabled_widget(), "enabled");
1107        
1108        addToEnableGroup("sop", "sop.cpf", getsopsop_cpfprune_cfg_widget(), "prune-cfg");
1109        
1110        getsopsop_cpfenabled_widget().getButton().addSelectionListener(this);
1111        
1112        getsopsop_cpfprune_cfg_widget().getButton().addSelectionListener(this);
1113        
1114        
1115        makeNewEnableGroup("jtp");
1116        
1117        
1118        addToEnableGroup("jtp", getjtpenabled_widget(), "enabled");
1119        
1120        
1121        getjtpenabled_widget().getButton().addSelectionListener(this);
1122        
1123        
1124        makeNewEnableGroup("jop");
1125        
1126        
1127        addToEnableGroup("jop", getjopenabled_widget(), "enabled");
1128        
1129        
1130        getjopenabled_widget().getButton().addSelectionListener(this);
1131        
1132        
1133        makeNewEnableGroup("jop", "jop.cse");
1134        
1135        
1136        addToEnableGroup("jop", "jop.cse", getjopjop_cseenabled_widget(), "enabled");
1137        
1138        addToEnableGroup("jop", "jop.cse", getjopjop_csenaive_side_effect_widget(), "naive-side-effect");
1139        
1140        getjopjop_cseenabled_widget().getButton().addSelectionListener(this);
1141        
1142        getjopjop_csenaive_side_effect_widget().getButton().addSelectionListener(this);
1143        
1144        
1145        makeNewEnableGroup("jop", "jop.bcm");
1146        
1147        
1148        addToEnableGroup("jop", "jop.bcm", getjopjop_bcmenabled_widget(), "enabled");
1149        
1150        addToEnableGroup("jop", "jop.bcm", getjopjop_bcmnaive_side_effect_widget(), "naive-side-effect");
1151        
1152        getjopjop_bcmenabled_widget().getButton().addSelectionListener(this);
1153        
1154        getjopjop_bcmnaive_side_effect_widget().getButton().addSelectionListener(this);
1155        
1156        
1157        makeNewEnableGroup("jop", "jop.lcm");
1158        
1159        
1160        addToEnableGroup("jop", "jop.lcm", getjopjop_lcmenabled_widget(), "enabled");
1161        
1162        addToEnableGroup("jop", "jop.lcm", getjopjop_lcmsafety_widget(), "safety");
1163        
1164        addToEnableGroup("jop", "jop.lcm", getjopjop_lcmunroll_widget(), "unroll");
1165        
1166        addToEnableGroup("jop", "jop.lcm", getjopjop_lcmnaive_side_effect_widget(), "naive-side-effect");
1167        
1168        getjopjop_lcmenabled_widget().getButton().addSelectionListener(this);
1169        
1170        getjopjop_lcmunroll_widget().getButton().addSelectionListener(this);
1171        
1172        getjopjop_lcmnaive_side_effect_widget().getButton().addSelectionListener(this);
1173        
1174        
1175        makeNewEnableGroup("jop", "jop.cp");
1176        
1177        
1178        addToEnableGroup("jop", "jop.cp", getjopjop_cpenabled_widget(), "enabled");
1179        
1180        addToEnableGroup("jop", "jop.cp", getjopjop_cponly_regular_locals_widget(), "only-regular-locals");
1181        
1182        addToEnableGroup("jop", "jop.cp", getjopjop_cponly_stack_locals_widget(), "only-stack-locals");
1183        
1184        getjopjop_cpenabled_widget().getButton().addSelectionListener(this);
1185        
1186        getjopjop_cponly_regular_locals_widget().getButton().addSelectionListener(this);
1187        
1188        getjopjop_cponly_stack_locals_widget().getButton().addSelectionListener(this);
1189        
1190        
1191        makeNewEnableGroup("jop", "jop.cpf");
1192        
1193        
1194        addToEnableGroup("jop", "jop.cpf", getjopjop_cpfenabled_widget(), "enabled");
1195        
1196        getjopjop_cpfenabled_widget().getButton().addSelectionListener(this);
1197        
1198        
1199        makeNewEnableGroup("jop", "jop.cbf");
1200        
1201        
1202        addToEnableGroup("jop", "jop.cbf", getjopjop_cbfenabled_widget(), "enabled");
1203        
1204        getjopjop_cbfenabled_widget().getButton().addSelectionListener(this);
1205        
1206        
1207        makeNewEnableGroup("jop", "jop.dae");
1208        
1209        
1210        addToEnableGroup("jop", "jop.dae", getjopjop_daeenabled_widget(), "enabled");
1211        
1212        addToEnableGroup("jop", "jop.dae", getjopjop_daeonly_tag_widget(), "only-tag");
1213        
1214        addToEnableGroup("jop", "jop.dae", getjopjop_daeonly_stack_locals_widget(), "only-stack-locals");
1215        
1216        getjopjop_daeenabled_widget().getButton().addSelectionListener(this);
1217        
1218        getjopjop_daeonly_tag_widget().getButton().addSelectionListener(this);
1219        
1220        getjopjop_daeonly_stack_locals_widget().getButton().addSelectionListener(this);
1221        
1222        
1223        makeNewEnableGroup("jop", "jop.uce1");
1224        
1225        
1226        addToEnableGroup("jop", "jop.uce1", getjopjop_uce1enabled_widget(), "enabled");
1227        
1228        addToEnableGroup("jop", "jop.uce1", getjopjop_uce1remove_unreachable_traps_widget(), "remove-unreachable-traps");
1229        
1230        getjopjop_uce1enabled_widget().getButton().addSelectionListener(this);
1231        
1232        getjopjop_uce1remove_unreachable_traps_widget().getButton().addSelectionListener(this);
1233        
1234        
1235        makeNewEnableGroup("jop", "jop.ubf1");
1236        
1237        
1238        addToEnableGroup("jop", "jop.ubf1", getjopjop_ubf1enabled_widget(), "enabled");
1239        
1240        getjopjop_ubf1enabled_widget().getButton().addSelectionListener(this);
1241        
1242        
1243        makeNewEnableGroup("jop", "jop.uce2");
1244        
1245        
1246        addToEnableGroup("jop", "jop.uce2", getjopjop_uce2enabled_widget(), "enabled");
1247        
1248        addToEnableGroup("jop", "jop.uce2", getjopjop_uce2remove_unreachable_traps_widget(), "remove-unreachable-traps");
1249        
1250        getjopjop_uce2enabled_widget().getButton().addSelectionListener(this);
1251        
1252        getjopjop_uce2remove_unreachable_traps_widget().getButton().addSelectionListener(this);
1253        
1254        
1255        makeNewEnableGroup("jop", "jop.ubf2");
1256        
1257        
1258        addToEnableGroup("jop", "jop.ubf2", getjopjop_ubf2enabled_widget(), "enabled");
1259        
1260        getjopjop_ubf2enabled_widget().getButton().addSelectionListener(this);
1261        
1262        
1263        makeNewEnableGroup("jop", "jop.ule");
1264        
1265        
1266        addToEnableGroup("jop", "jop.ule", getjopjop_uleenabled_widget(), "enabled");
1267        
1268        getjopjop_uleenabled_widget().getButton().addSelectionListener(this);
1269        
1270        
1271        makeNewEnableGroup("jap");
1272        
1273        
1274        addToEnableGroup("jap", getjapenabled_widget(), "enabled");
1275        
1276        
1277        getjapenabled_widget().getButton().addSelectionListener(this);
1278        
1279        
1280        makeNewEnableGroup("jap", "jap.npc");
1281        
1282        
1283        addToEnableGroup("jap", "jap.npc", getjapjap_npcenabled_widget(), "enabled");
1284        
1285        addToEnableGroup("jap", "jap.npc", getjapjap_npconly_array_ref_widget(), "only-array-ref");
1286        
1287        addToEnableGroup("jap", "jap.npc", getjapjap_npcprofiling_widget(), "profiling");
1288        
1289        getjapjap_npcenabled_widget().getButton().addSelectionListener(this);
1290        
1291        getjapjap_npconly_array_ref_widget().getButton().addSelectionListener(this);
1292        
1293        getjapjap_npcprofiling_widget().getButton().addSelectionListener(this);
1294        
1295        
1296        makeNewEnableGroup("jap", "jap.npcolorer");
1297        
1298        
1299        addToEnableGroup("jap", "jap.npcolorer", getjapjap_npcolorerenabled_widget(), "enabled");
1300        
1301        getjapjap_npcolorerenabled_widget().getButton().addSelectionListener(this);
1302        
1303        
1304        makeNewEnableGroup("jap", "jap.abc");
1305        
1306        
1307        addToEnableGroup("jap", "jap.abc", getjapjap_abcenabled_widget(), "enabled");
1308        
1309        addToEnableGroup("jap", "jap.abc", getjapjap_abcwith_all_widget(), "with-all");
1310        
1311        addToEnableGroup("jap", "jap.abc", getjapjap_abcwith_cse_widget(), "with-cse");
1312        
1313        addToEnableGroup("jap", "jap.abc", getjapjap_abcwith_arrayref_widget(), "with-arrayref");
1314        
1315        addToEnableGroup("jap", "jap.abc", getjapjap_abcwith_fieldref_widget(), "with-fieldref");
1316        
1317        addToEnableGroup("jap", "jap.abc", getjapjap_abcwith_classfield_widget(), "with-classfield");
1318        
1319        addToEnableGroup("jap", "jap.abc", getjapjap_abcwith_rectarray_widget(), "with-rectarray");
1320        
1321        addToEnableGroup("jap", "jap.abc", getjapjap_abcprofiling_widget(), "profiling");
1322        
1323        addToEnableGroup("jap", "jap.abc", getjapjap_abcadd_color_tags_widget(), "add-color-tags");
1324        
1325        getjapjap_abcenabled_widget().getButton().addSelectionListener(this);
1326        
1327        getjapjap_abcwith_all_widget().getButton().addSelectionListener(this);
1328        
1329        getjapjap_abcwith_cse_widget().getButton().addSelectionListener(this);
1330        
1331        getjapjap_abcwith_arrayref_widget().getButton().addSelectionListener(this);
1332        
1333        getjapjap_abcwith_fieldref_widget().getButton().addSelectionListener(this);
1334        
1335        getjapjap_abcwith_classfield_widget().getButton().addSelectionListener(this);
1336        
1337        getjapjap_abcwith_rectarray_widget().getButton().addSelectionListener(this);
1338        
1339        getjapjap_abcprofiling_widget().getButton().addSelectionListener(this);
1340        
1341        getjapjap_abcadd_color_tags_widget().getButton().addSelectionListener(this);
1342        
1343        
1344        makeNewEnableGroup("jap", "jap.profiling");
1345        
1346        
1347        addToEnableGroup("jap", "jap.profiling", getjapjap_profilingenabled_widget(), "enabled");
1348        
1349        addToEnableGroup("jap", "jap.profiling", getjapjap_profilingnotmainentry_widget(), "notmainentry");
1350        
1351        getjapjap_profilingenabled_widget().getButton().addSelectionListener(this);
1352        
1353        getjapjap_profilingnotmainentry_widget().getButton().addSelectionListener(this);
1354        
1355        
1356        makeNewEnableGroup("jap", "jap.sea");
1357        
1358        
1359        addToEnableGroup("jap", "jap.sea", getjapjap_seaenabled_widget(), "enabled");
1360        
1361        addToEnableGroup("jap", "jap.sea", getjapjap_seanaive_widget(), "naive");
1362        
1363        getjapjap_seaenabled_widget().getButton().addSelectionListener(this);
1364        
1365        getjapjap_seanaive_widget().getButton().addSelectionListener(this);
1366        
1367        
1368        makeNewEnableGroup("jap", "jap.fieldrw");
1369        
1370        
1371        addToEnableGroup("jap", "jap.fieldrw", getjapjap_fieldrwenabled_widget(), "enabled");
1372        
1373        addToEnableGroup("jap", "jap.fieldrw", getjapjap_fieldrwthreshold_widget(), "threshold");
1374        
1375        getjapjap_fieldrwenabled_widget().getButton().addSelectionListener(this);
1376        
1377        
1378        makeNewEnableGroup("jap", "jap.cgtagger");
1379        
1380        
1381        addToEnableGroup("jap", "jap.cgtagger", getjapjap_cgtaggerenabled_widget(), "enabled");
1382        
1383        getjapjap_cgtaggerenabled_widget().getButton().addSelectionListener(this);
1384        
1385        
1386        makeNewEnableGroup("jap", "jap.parity");
1387        
1388        
1389        addToEnableGroup("jap", "jap.parity", getjapjap_parityenabled_widget(), "enabled");
1390        
1391        getjapjap_parityenabled_widget().getButton().addSelectionListener(this);
1392        
1393        
1394        makeNewEnableGroup("jap", "jap.pat");
1395        
1396        
1397        addToEnableGroup("jap", "jap.pat", getjapjap_patenabled_widget(), "enabled");
1398        
1399        getjapjap_patenabled_widget().getButton().addSelectionListener(this);
1400        
1401        
1402        makeNewEnableGroup("jap", "jap.lvtagger");
1403        
1404        
1405        addToEnableGroup("jap", "jap.lvtagger", getjapjap_lvtaggerenabled_widget(), "enabled");
1406        
1407        getjapjap_lvtaggerenabled_widget().getButton().addSelectionListener(this);
1408        
1409        
1410        makeNewEnableGroup("jap", "jap.rdtagger");
1411        
1412        
1413        addToEnableGroup("jap", "jap.rdtagger", getjapjap_rdtaggerenabled_widget(), "enabled");
1414        
1415        getjapjap_rdtaggerenabled_widget().getButton().addSelectionListener(this);
1416        
1417        
1418        makeNewEnableGroup("jap", "jap.che");
1419        
1420        
1421        addToEnableGroup("jap", "jap.che", getjapjap_cheenabled_widget(), "enabled");
1422        
1423        getjapjap_cheenabled_widget().getButton().addSelectionListener(this);
1424        
1425        
1426        makeNewEnableGroup("jap", "jap.umt");
1427        
1428        
1429        addToEnableGroup("jap", "jap.umt", getjapjap_umtenabled_widget(), "enabled");
1430        
1431        getjapjap_umtenabled_widget().getButton().addSelectionListener(this);
1432        
1433        
1434        makeNewEnableGroup("jap", "jap.lit");
1435        
1436        
1437        addToEnableGroup("jap", "jap.lit", getjapjap_litenabled_widget(), "enabled");
1438        
1439        getjapjap_litenabled_widget().getButton().addSelectionListener(this);
1440        
1441        
1442        makeNewEnableGroup("jap", "jap.aet");
1443        
1444        
1445        addToEnableGroup("jap", "jap.aet", getjapjap_aetenabled_widget(), "enabled");
1446        
1447        addToEnableGroup("jap", "jap.aet", getjapjap_aetkind_widget(), "kind");
1448        
1449        getjapjap_aetenabled_widget().getButton().addSelectionListener(this);
1450        
1451        
1452        makeNewEnableGroup("jap", "jap.dmt");
1453        
1454        
1455        addToEnableGroup("jap", "jap.dmt", getjapjap_dmtenabled_widget(), "enabled");
1456        
1457        getjapjap_dmtenabled_widget().getButton().addSelectionListener(this);
1458        
1459        
1460        makeNewEnableGroup("gb");
1461        
1462        
1463        addToEnableGroup("gb", getgbenabled_widget(), "enabled");
1464        
1465        
1466        getgbenabled_widget().getButton().addSelectionListener(this);
1467        
1468        
1469        makeNewEnableGroup("gb", "gb.a1");
1470        
1471        
1472        addToEnableGroup("gb", "gb.a1", getgbgb_a1enabled_widget(), "enabled");
1473        
1474        addToEnableGroup("gb", "gb.a1", getgbgb_a1only_stack_locals_widget(), "only-stack-locals");
1475        
1476        getgbgb_a1enabled_widget().getButton().addSelectionListener(this);
1477        
1478        getgbgb_a1only_stack_locals_widget().getButton().addSelectionListener(this);
1479        
1480        
1481        makeNewEnableGroup("gb", "gb.cf");
1482        
1483        
1484        addToEnableGroup("gb", "gb.cf", getgbgb_cfenabled_widget(), "enabled");
1485        
1486        getgbgb_cfenabled_widget().getButton().addSelectionListener(this);
1487        
1488        
1489        makeNewEnableGroup("gb", "gb.a2");
1490        
1491        
1492        addToEnableGroup("gb", "gb.a2", getgbgb_a2enabled_widget(), "enabled");
1493        
1494        addToEnableGroup("gb", "gb.a2", getgbgb_a2only_stack_locals_widget(), "only-stack-locals");
1495        
1496        getgbgb_a2enabled_widget().getButton().addSelectionListener(this);
1497        
1498        getgbgb_a2only_stack_locals_widget().getButton().addSelectionListener(this);
1499        
1500        
1501        makeNewEnableGroup("gb", "gb.ule");
1502        
1503        
1504        addToEnableGroup("gb", "gb.ule", getgbgb_uleenabled_widget(), "enabled");
1505        
1506        getgbgb_uleenabled_widget().getButton().addSelectionListener(this);
1507        
1508        
1509        makeNewEnableGroup("gop");
1510        
1511        
1512        addToEnableGroup("gop", getgopenabled_widget(), "enabled");
1513        
1514        
1515        getgopenabled_widget().getButton().addSelectionListener(this);
1516        
1517        
1518        makeNewEnableGroup("bb");
1519        
1520        
1521        addToEnableGroup("bb", getbbenabled_widget(), "enabled");
1522        
1523        
1524        getbbenabled_widget().getButton().addSelectionListener(this);
1525        
1526        
1527        makeNewEnableGroup("bb", "bb.lso");
1528        
1529        
1530        addToEnableGroup("bb", "bb.lso", getbbbb_lsoenabled_widget(), "enabled");
1531        
1532        addToEnableGroup("bb", "bb.lso", getbbbb_lsodebug_widget(), "debug");
1533        
1534        addToEnableGroup("bb", "bb.lso", getbbbb_lsointer_widget(), "inter");
1535        
1536        addToEnableGroup("bb", "bb.lso", getbbbb_lsosl_widget(), "sl");
1537        
1538        addToEnableGroup("bb", "bb.lso", getbbbb_lsosl2_widget(), "sl2");
1539        
1540        addToEnableGroup("bb", "bb.lso", getbbbb_lsosll_widget(), "sll");
1541        
1542        addToEnableGroup("bb", "bb.lso", getbbbb_lsosll2_widget(), "sll2");
1543        
1544        getbbbb_lsoenabled_widget().getButton().addSelectionListener(this);
1545        
1546        getbbbb_lsodebug_widget().getButton().addSelectionListener(this);
1547        
1548        getbbbb_lsointer_widget().getButton().addSelectionListener(this);
1549        
1550        getbbbb_lsosl_widget().getButton().addSelectionListener(this);
1551        
1552        getbbbb_lsosl2_widget().getButton().addSelectionListener(this);
1553        
1554        getbbbb_lsosll_widget().getButton().addSelectionListener(this);
1555        
1556        getbbbb_lsosll2_widget().getButton().addSelectionListener(this);
1557        
1558        
1559        makeNewEnableGroup("bb", "bb.pho");
1560        
1561        
1562        addToEnableGroup("bb", "bb.pho", getbbbb_phoenabled_widget(), "enabled");
1563        
1564        getbbbb_phoenabled_widget().getButton().addSelectionListener(this);
1565        
1566        
1567        makeNewEnableGroup("bb", "bb.ule");
1568        
1569        
1570        addToEnableGroup("bb", "bb.ule", getbbbb_uleenabled_widget(), "enabled");
1571        
1572        getbbbb_uleenabled_widget().getButton().addSelectionListener(this);
1573        
1574        
1575        makeNewEnableGroup("bb", "bb.lp");
1576        
1577        
1578        addToEnableGroup("bb", "bb.lp", getbbbb_lpenabled_widget(), "enabled");
1579        
1580        addToEnableGroup("bb", "bb.lp", getbbbb_lpunsplit_original_locals_widget(), "unsplit-original-locals");
1581        
1582        getbbbb_lpenabled_widget().getButton().addSelectionListener(this);
1583        
1584        getbbbb_lpunsplit_original_locals_widget().getButton().addSelectionListener(this);
1585        
1586        
1587        makeNewEnableGroup("bop");
1588        
1589        
1590        addToEnableGroup("bop", getbopenabled_widget(), "enabled");
1591        
1592        
1593        getbopenabled_widget().getButton().addSelectionListener(this);
1594        
1595        
1596        makeNewEnableGroup("tag");
1597        
1598        
1599        addToEnableGroup("tag", gettagenabled_widget(), "enabled");
1600        
1601        
1602        gettagenabled_widget().getButton().addSelectionListener(this);
1603        
1604        
1605        makeNewEnableGroup("tag", "tag.ln");
1606        
1607        
1608        addToEnableGroup("tag", "tag.ln", gettagtag_lnenabled_widget(), "enabled");
1609        
1610        gettagtag_lnenabled_widget().getButton().addSelectionListener(this);
1611        
1612        
1613        makeNewEnableGroup("tag", "tag.an");
1614        
1615        
1616        addToEnableGroup("tag", "tag.an", gettagtag_anenabled_widget(), "enabled");
1617        
1618        gettagtag_anenabled_widget().getButton().addSelectionListener(this);
1619        
1620        
1621        makeNewEnableGroup("tag", "tag.dep");
1622        
1623        
1624        addToEnableGroup("tag", "tag.dep", gettagtag_depenabled_widget(), "enabled");
1625        
1626        gettagtag_depenabled_widget().getButton().addSelectionListener(this);
1627        
1628        
1629        makeNewEnableGroup("tag", "tag.fieldrw");
1630        
1631        
1632        addToEnableGroup("tag", "tag.fieldrw", gettagtag_fieldrwenabled_widget(), "enabled");
1633        
1634        gettagtag_fieldrwenabled_widget().getButton().addSelectionListener(this);
1635        
1636        
1637        makeNewEnableGroup("db");
1638        
1639        
1640        addToEnableGroup("db", getdbenabled_widget(), "enabled");
1641        
1642        
1643        getdbenabled_widget().getButton().addSelectionListener(this);
1644        
1645        
1646        makeNewEnableGroup("db", "db.transformations");
1647        
1648        
1649        addToEnableGroup("db", "db.transformations", getdbdb_transformationsenabled_widget(), "enabled");
1650        
1651        getdbdb_transformationsenabled_widget().getButton().addSelectionListener(this);
1652        
1653        
1654        makeNewEnableGroup("db", "db.renamer");
1655        
1656        
1657        addToEnableGroup("db", "db.renamer", getdbdb_renamerenabled_widget(), "enabled");
1658        
1659        addToEnableGroup("db", "db.renamer", getdbdb_renamerremove_fully_qualified_widget(), "remove-fully-qualified");
1660        
1661        getdbdb_renamerenabled_widget().getButton().addSelectionListener(this);
1662        
1663        getdbdb_renamerremove_fully_qualified_widget().getButton().addSelectionListener(this);
1664        
1665        
1666        makeNewEnableGroup("db", "db.deobfuscate");
1667        
1668        
1669        addToEnableGroup("db", "db.deobfuscate", getdbdb_deobfuscateenabled_widget(), "enabled");
1670        
1671        getdbdb_deobfuscateenabled_widget().getButton().addSelectionListener(this);
1672        
1673        
1674        makeNewEnableGroup("db", "db.force-recompile");
1675        
1676        
1677        addToEnableGroup("db", "db.force-recompile", getdbdb_force_recompileenabled_widget(), "enabled");
1678        
1679        getdbdb_force_recompileenabled_widget().getButton().addSelectionListener(this);
1680        
1681
1682        updateAllEnableGroups();
1683    }
1684    
1685    public void widgetSelected(SelectionEvent e){
1686        handleWidgetSelected(e);
1687    }
1688
1689    public void widgetDefaultSelected(SelectionEvent e){
1690    }
1691    
1692    /**
1693     * all options get saved as <alias, value> pair
1694     */

1695    protected void okPressed() {
1696        createNewConfig();
1697        super.okPressed();
1698    }
1699
1700    private void createNewConfig() {
1701    
1702        setConfig(new HashMap());
1703        
1704        boolean boolRes = false;
1705        String JavaDoc stringRes = "";
1706        boolean defBoolRes = false;
1707        String JavaDoc defStringRes = "";
1708        StringTokenizer listOptTokens;
1709        String JavaDoc nextListToken;
1710    
1711        
1712        boolRes = getGeneral_Optionshelp_widget().getButton().getSelection();
1713        
1714        
1715        defBoolRes = false;
1716        
1717
1718        if (boolRes != defBoolRes) {
1719            getConfig().put(getGeneral_Optionshelp_widget().getAlias(), new Boolean JavaDoc(boolRes));
1720        }
1721        
1722        boolRes = getGeneral_Optionsphase_list_widget().getButton().getSelection();
1723        
1724        
1725        defBoolRes = false;
1726        
1727
1728        if (boolRes != defBoolRes) {
1729            getConfig().put(getGeneral_Optionsphase_list_widget().getAlias(), new Boolean JavaDoc(boolRes));
1730        }
1731        
1732        boolRes = getGeneral_Optionsversion_widget().getButton().getSelection();
1733        
1734        
1735        defBoolRes = false;
1736        
1737
1738        if (boolRes != defBoolRes) {
1739            getConfig().put(getGeneral_Optionsversion_widget().getAlias(), new Boolean JavaDoc(boolRes));
1740        }
1741        
1742        boolRes = getGeneral_Optionsverbose_widget().getButton().getSelection();
1743        
1744        
1745        defBoolRes = false;
1746        
1747
1748        if (boolRes != defBoolRes) {
1749            getConfig().put(getGeneral_Optionsverbose_widget().getAlias(), new Boolean JavaDoc(boolRes));
1750        }
1751        
1752        boolRes = getGeneral_Optionsinteractive_mode_widget().getButton().getSelection();
1753        
1754        
1755        defBoolRes = false;
1756        
1757
1758        if (boolRes != defBoolRes) {
1759            getConfig().put(getGeneral_Optionsinteractive_mode_widget().getAlias(), new Boolean JavaDoc(boolRes));
1760        }
1761        
1762        boolRes = getGeneral_Optionsapp_widget().getButton().getSelection();
1763        
1764        
1765        defBoolRes = false;
1766        
1767
1768        if (boolRes != defBoolRes) {
1769            getConfig().put(getGeneral_Optionsapp_widget().getAlias(), new Boolean JavaDoc(boolRes));
1770        }
1771        
1772        boolRes = getGeneral_Optionswhole_program_widget().getButton().getSelection();
1773        
1774        
1775        defBoolRes = false;
1776        
1777
1778        if (boolRes != defBoolRes) {
1779            getConfig().put(getGeneral_Optionswhole_program_widget().getAlias(), new Boolean JavaDoc(boolRes));
1780        }
1781        
1782        boolRes = getGeneral_Optionswhole_shimple_widget().getButton().getSelection();
1783        
1784        
1785        defBoolRes = false;
1786        
1787
1788        if (boolRes != defBoolRes) {
1789            getConfig().put(getGeneral_Optionswhole_shimple_widget().getAlias(), new Boolean JavaDoc(boolRes));
1790        }
1791        
1792        boolRes = getGeneral_Optionsvalidate_widget().getButton().getSelection();
1793        
1794        
1795        defBoolRes = false;
1796        
1797
1798        if (boolRes != defBoolRes) {
1799            getConfig().put(getGeneral_Optionsvalidate_widget().getAlias(), new Boolean JavaDoc(boolRes));
1800        }
1801        
1802        boolRes = getGeneral_Optionsdebug_widget().getButton().getSelection();
1803        
1804        
1805        defBoolRes = false;
1806        
1807
1808        if (boolRes != defBoolRes) {
1809            getConfig().put(getGeneral_Optionsdebug_widget().getAlias(), new Boolean JavaDoc(boolRes));
1810        }
1811        
1812        boolRes = getGeneral_Optionsdebug_resolver_widget().getButton().getSelection();
1813        
1814        
1815        defBoolRes = false;
1816        
1817
1818        if (boolRes != defBoolRes) {
1819            getConfig().put(getGeneral_Optionsdebug_resolver_widget().getAlias(), new Boolean JavaDoc(boolRes));
1820        }
1821        
1822        stringRes = getGeneral_Optionsphase_help_widget().getText().getText();
1823        
1824        defStringRes = "";
1825        
1826
1827            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
1828            getConfig().put(getGeneral_Optionsphase_help_widget().getAlias(), stringRes);
1829        }
1830        
1831        boolRes = getInput_Optionsast_metrics_widget().getButton().getSelection();
1832        
1833        
1834        defBoolRes = false;
1835        
1836
1837        if (boolRes != defBoolRes) {
1838            getConfig().put(getInput_Optionsast_metrics_widget().getAlias(), new Boolean JavaDoc(boolRes));
1839        }
1840        
1841        boolRes = getInput_Optionsfull_resolver_widget().getButton().getSelection();
1842        
1843        
1844        defBoolRes = false;
1845        
1846
1847        if (boolRes != defBoolRes) {
1848            getConfig().put(getInput_Optionsfull_resolver_widget().getAlias(), new Boolean JavaDoc(boolRes));
1849        }
1850        
1851        boolRes = getInput_Optionsallow_phantom_refs_widget().getButton().getSelection();
1852        
1853        
1854        defBoolRes = false;
1855        
1856
1857        if (boolRes != defBoolRes) {
1858            getConfig().put(getInput_Optionsallow_phantom_refs_widget().getAlias(), new Boolean JavaDoc(boolRes));
1859        }
1860        
1861        boolRes = getInput_Optionsuse_old_type_assigner_widget().getButton().getSelection();
1862        
1863        
1864        defBoolRes = false;
1865        
1866
1867        if (boolRes != defBoolRes) {
1868            getConfig().put(getInput_Optionsuse_old_type_assigner_widget().getAlias(), new Boolean JavaDoc(boolRes));
1869        }
1870        
1871        stringRes = getInput_Optionssoot_classpath_widget().getText().getText();
1872        
1873        defStringRes = "";
1874        
1875
1876            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
1877            getConfig().put(getInput_Optionssoot_classpath_widget().getAlias(), stringRes);
1878        }
1879        
1880        stringRes = getInput_Optionsprocess_dir_widget().getText().getText();
1881        
1882        defStringRes = "";
1883        
1884
1885            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
1886            getConfig().put(getInput_Optionsprocess_dir_widget().getAlias(), stringRes);
1887        }
1888        
1889        stringRes = getInput_Optionsmain_class_widget().getText().getText();
1890        
1891        defStringRes = "";
1892        
1893
1894            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
1895            getConfig().put(getInput_Optionsmain_class_widget().getAlias(), stringRes);
1896        }
1897         
1898        stringRes = getInput_Optionssrc_prec_widget().getSelectedAlias();
1899
1900        
1901        defStringRes = "c";
1902        
1903
1904        if (!stringRes.equals(defStringRes)) {
1905            getConfig().put(getInput_Optionssrc_prec_widget().getAlias(), stringRes);
1906        }
1907        
1908        boolRes = getOutput_Optionsoutput_jar_widget().getButton().getSelection();
1909        
1910        
1911        defBoolRes = false;
1912        
1913
1914        if (boolRes != defBoolRes) {
1915            getConfig().put(getOutput_Optionsoutput_jar_widget().getAlias(), new Boolean JavaDoc(boolRes));
1916        }
1917        
1918        boolRes = getOutput_Optionsxml_attributes_widget().getButton().getSelection();
1919        
1920        
1921        defBoolRes = false;
1922        
1923
1924        if (boolRes != defBoolRes) {
1925            getConfig().put(getOutput_Optionsxml_attributes_widget().getAlias(), new Boolean JavaDoc(boolRes));
1926        }
1927        
1928        boolRes = getOutput_Optionsprint_tags_in_output_widget().getButton().getSelection();
1929        
1930        
1931        defBoolRes = false;
1932        
1933
1934        if (boolRes != defBoolRes) {
1935            getConfig().put(getOutput_Optionsprint_tags_in_output_widget().getAlias(), new Boolean JavaDoc(boolRes));
1936        }
1937        
1938        boolRes = getOutput_Optionsno_output_source_file_attribute_widget().getButton().getSelection();
1939        
1940        
1941        defBoolRes = false;
1942        
1943
1944        if (boolRes != defBoolRes) {
1945            getConfig().put(getOutput_Optionsno_output_source_file_attribute_widget().getAlias(), new Boolean JavaDoc(boolRes));
1946        }
1947        
1948        boolRes = getOutput_Optionsno_output_inner_classes_attribute_widget().getButton().getSelection();
1949        
1950        
1951        defBoolRes = false;
1952        
1953
1954        if (boolRes != defBoolRes) {
1955            getConfig().put(getOutput_Optionsno_output_inner_classes_attribute_widget().getAlias(), new Boolean JavaDoc(boolRes));
1956        }
1957        
1958        boolRes = getOutput_Optionsshow_exception_dests_widget().getButton().getSelection();
1959        
1960        
1961        defBoolRes = true;
1962        
1963
1964        if (boolRes != defBoolRes) {
1965            getConfig().put(getOutput_Optionsshow_exception_dests_widget().getAlias(), new Boolean JavaDoc(boolRes));
1966        }
1967        
1968        boolRes = getOutput_Optionsgzip_widget().getButton().getSelection();
1969        
1970        
1971        defBoolRes = false;
1972        
1973
1974        if (boolRes != defBoolRes) {
1975            getConfig().put(getOutput_Optionsgzip_widget().getAlias(), new Boolean JavaDoc(boolRes));
1976        }
1977        
1978        stringRes = getOutput_Optionsoutput_dir_widget().getText().getText();
1979        
1980        defStringRes = "./sootOutput";
1981        
1982
1983            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
1984            getConfig().put(getOutput_Optionsoutput_dir_widget().getAlias(), stringRes);
1985        }
1986        
1987        stringRes = getOutput_Optionsdump_body_widget().getText().getText();
1988        
1989        defStringRes = "";
1990        
1991
1992            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
1993            getConfig().put(getOutput_Optionsdump_body_widget().getAlias(), stringRes);
1994        }
1995        
1996        stringRes = getOutput_Optionsdump_cfg_widget().getText().getText();
1997        
1998        defStringRes = "";
1999        
2000
2001            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
2002            getConfig().put(getOutput_Optionsdump_cfg_widget().getAlias(), stringRes);
2003        }
2004         
2005        stringRes = getOutput_Optionsoutput_format_widget().getSelectedAlias();
2006
2007        
2008        defStringRes = "c";
2009        
2010
2011        if (!stringRes.equals(defStringRes)) {
2012            getConfig().put(getOutput_Optionsoutput_format_widget().getAlias(), stringRes);
2013        }
2014        
2015        boolRes = getProcessing_Optionsoptimize_widget().getButton().getSelection();
2016        
2017        
2018        defBoolRes = false;
2019        
2020
2021        if (boolRes != defBoolRes) {
2022            getConfig().put(getProcessing_Optionsoptimize_widget().getAlias(), new Boolean JavaDoc(boolRes));
2023        }
2024        
2025        boolRes = getProcessing_Optionswhole_optimize_widget().getButton().getSelection();
2026        
2027        
2028        defBoolRes = false;
2029        
2030
2031        if (boolRes != defBoolRes) {
2032            getConfig().put(getProcessing_Optionswhole_optimize_widget().getAlias(), new Boolean JavaDoc(boolRes));
2033        }
2034        
2035        boolRes = getProcessing_Optionsvia_grimp_widget().getButton().getSelection();
2036        
2037        
2038        defBoolRes = false;
2039        
2040
2041        if (boolRes != defBoolRes) {
2042            getConfig().put(getProcessing_Optionsvia_grimp_widget().getAlias(), new Boolean JavaDoc(boolRes));
2043        }
2044        
2045        boolRes = getProcessing_Optionsvia_shimple_widget().getButton().getSelection();
2046        
2047        
2048        defBoolRes = false;
2049        
2050
2051        if (boolRes != defBoolRes) {
2052            getConfig().put(getProcessing_Optionsvia_shimple_widget().getAlias(), new Boolean JavaDoc(boolRes));
2053        }
2054        
2055        boolRes = getProcessing_Optionsomit_excepting_unit_edges_widget().getButton().getSelection();
2056        
2057        
2058        defBoolRes = false;
2059        
2060
2061        if (boolRes != defBoolRes) {
2062            getConfig().put(getProcessing_Optionsomit_excepting_unit_edges_widget().getAlias(), new Boolean JavaDoc(boolRes));
2063        }
2064        
2065        boolRes = getProcessing_Optionstrim_cfgs_widget().getButton().getSelection();
2066        
2067        
2068        defBoolRes = false;
2069        
2070
2071        if (boolRes != defBoolRes) {
2072            getConfig().put(getProcessing_Optionstrim_cfgs_widget().getAlias(), new Boolean JavaDoc(boolRes));
2073        }
2074         
2075        stringRes = getProcessing_Optionsthrow_analysis_widget().getSelectedAlias();
2076
2077        
2078        defStringRes = "pedantic";
2079        
2080
2081        if (!stringRes.equals(defStringRes)) {
2082            getConfig().put(getProcessing_Optionsthrow_analysis_widget().getAlias(), stringRes);
2083        }
2084        
2085        boolRes = getjbenabled_widget().getButton().getSelection();
2086        
2087        
2088        defBoolRes = true;
2089        
2090
2091        if (boolRes != defBoolRes) {
2092            getConfig().put(getjbenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2093        }
2094        
2095        boolRes = getjbuse_original_names_widget().getButton().getSelection();
2096        
2097        
2098        defBoolRes = false;
2099        
2100
2101        if (boolRes != defBoolRes) {
2102            getConfig().put(getjbuse_original_names_widget().getAlias(), new Boolean JavaDoc(boolRes));
2103        }
2104        
2105        boolRes = getjbjb_lsenabled_widget().getButton().getSelection();
2106        
2107        
2108        defBoolRes = true;
2109        
2110
2111        if (boolRes != defBoolRes) {
2112            getConfig().put(getjbjb_lsenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2113        }
2114        
2115        boolRes = getjbjb_aenabled_widget().getButton().getSelection();
2116        
2117        
2118        defBoolRes = true;
2119        
2120
2121        if (boolRes != defBoolRes) {
2122            getConfig().put(getjbjb_aenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2123        }
2124        
2125        boolRes = getjbjb_aonly_stack_locals_widget().getButton().getSelection();
2126        
2127        
2128        defBoolRes = true;
2129        
2130
2131        if (boolRes != defBoolRes) {
2132            getConfig().put(getjbjb_aonly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2133        }
2134        
2135        boolRes = getjbjb_uleenabled_widget().getButton().getSelection();
2136        
2137        
2138        defBoolRes = true;
2139        
2140
2141        if (boolRes != defBoolRes) {
2142            getConfig().put(getjbjb_uleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2143        }
2144        
2145        boolRes = getjbjb_trenabled_widget().getButton().getSelection();
2146        
2147        
2148        defBoolRes = true;
2149        
2150
2151        if (boolRes != defBoolRes) {
2152            getConfig().put(getjbjb_trenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2153        }
2154        
2155        boolRes = getjbjb_ulpenabled_widget().getButton().getSelection();
2156        
2157        
2158        defBoolRes = true;
2159        
2160
2161        if (boolRes != defBoolRes) {
2162            getConfig().put(getjbjb_ulpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2163        }
2164        
2165        boolRes = getjbjb_ulpunsplit_original_locals_widget().getButton().getSelection();
2166        
2167        
2168        defBoolRes = true;
2169        
2170
2171        if (boolRes != defBoolRes) {
2172            getConfig().put(getjbjb_ulpunsplit_original_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2173        }
2174        
2175        boolRes = getjbjb_lnsenabled_widget().getButton().getSelection();
2176        
2177        
2178        defBoolRes = true;
2179        
2180
2181        if (boolRes != defBoolRes) {
2182            getConfig().put(getjbjb_lnsenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2183        }
2184        
2185        boolRes = getjbjb_lnsonly_stack_locals_widget().getButton().getSelection();
2186        
2187        
2188        defBoolRes = false;
2189        
2190
2191        if (boolRes != defBoolRes) {
2192            getConfig().put(getjbjb_lnsonly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2193        }
2194        
2195        boolRes = getjbjb_cpenabled_widget().getButton().getSelection();
2196        
2197        
2198        defBoolRes = true;
2199        
2200
2201        if (boolRes != defBoolRes) {
2202            getConfig().put(getjbjb_cpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2203        }
2204        
2205        boolRes = getjbjb_cponly_regular_locals_widget().getButton().getSelection();
2206        
2207        
2208        defBoolRes = false;
2209        
2210
2211        if (boolRes != defBoolRes) {
2212            getConfig().put(getjbjb_cponly_regular_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2213        }
2214        
2215        boolRes = getjbjb_cponly_stack_locals_widget().getButton().getSelection();
2216        
2217        
2218        defBoolRes = true;
2219        
2220
2221        if (boolRes != defBoolRes) {
2222            getConfig().put(getjbjb_cponly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2223        }
2224        
2225        boolRes = getjbjb_daeenabled_widget().getButton().getSelection();
2226        
2227        
2228        defBoolRes = true;
2229        
2230
2231        if (boolRes != defBoolRes) {
2232            getConfig().put(getjbjb_daeenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2233        }
2234        
2235        boolRes = getjbjb_daeonly_stack_locals_widget().getButton().getSelection();
2236        
2237        
2238        defBoolRes = true;
2239        
2240
2241        if (boolRes != defBoolRes) {
2242            getConfig().put(getjbjb_daeonly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2243        }
2244        
2245        boolRes = getjbjb_cp_uleenabled_widget().getButton().getSelection();
2246        
2247        
2248        defBoolRes = true;
2249        
2250
2251        if (boolRes != defBoolRes) {
2252            getConfig().put(getjbjb_cp_uleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2253        }
2254        
2255        boolRes = getjbjb_lpenabled_widget().getButton().getSelection();
2256        
2257        
2258        defBoolRes = false;
2259        
2260
2261        if (boolRes != defBoolRes) {
2262            getConfig().put(getjbjb_lpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2263        }
2264        
2265        boolRes = getjbjb_lpunsplit_original_locals_widget().getButton().getSelection();
2266        
2267        
2268        defBoolRes = false;
2269        
2270
2271        if (boolRes != defBoolRes) {
2272            getConfig().put(getjbjb_lpunsplit_original_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2273        }
2274        
2275        boolRes = getjbjb_neenabled_widget().getButton().getSelection();
2276        
2277        
2278        defBoolRes = true;
2279        
2280
2281        if (boolRes != defBoolRes) {
2282            getConfig().put(getjbjb_neenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2283        }
2284        
2285        boolRes = getjbjb_uceenabled_widget().getButton().getSelection();
2286        
2287        
2288        defBoolRes = true;
2289        
2290
2291        if (boolRes != defBoolRes) {
2292            getConfig().put(getjbjb_uceenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2293        }
2294        
2295        boolRes = getjbjb_uceremove_unreachable_traps_widget().getButton().getSelection();
2296        
2297        
2298        defBoolRes = false;
2299        
2300
2301        if (boolRes != defBoolRes) {
2302            getConfig().put(getjbjb_uceremove_unreachable_traps_widget().getAlias(), new Boolean JavaDoc(boolRes));
2303        }
2304        
2305        boolRes = getjbjb_ttenabled_widget().getButton().getSelection();
2306        
2307        
2308        defBoolRes = false;
2309        
2310
2311        if (boolRes != defBoolRes) {
2312            getConfig().put(getjbjb_ttenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2313        }
2314        
2315        boolRes = getjjenabled_widget().getButton().getSelection();
2316        
2317        
2318        defBoolRes = true;
2319        
2320
2321        if (boolRes != defBoolRes) {
2322            getConfig().put(getjjenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2323        }
2324        
2325        boolRes = getjjuse_original_names_widget().getButton().getSelection();
2326        
2327        
2328        defBoolRes = true;
2329        
2330
2331        if (boolRes != defBoolRes) {
2332            getConfig().put(getjjuse_original_names_widget().getAlias(), new Boolean JavaDoc(boolRes));
2333        }
2334        
2335        boolRes = getjjjj_lsenabled_widget().getButton().getSelection();
2336        
2337        
2338        defBoolRes = false;
2339        
2340
2341        if (boolRes != defBoolRes) {
2342            getConfig().put(getjjjj_lsenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2343        }
2344        
2345        boolRes = getjjjj_aenabled_widget().getButton().getSelection();
2346        
2347        
2348        defBoolRes = true;
2349        
2350
2351        if (boolRes != defBoolRes) {
2352            getConfig().put(getjjjj_aenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2353        }
2354        
2355        boolRes = getjjjj_aonly_stack_locals_widget().getButton().getSelection();
2356        
2357        
2358        defBoolRes = true;
2359        
2360
2361        if (boolRes != defBoolRes) {
2362            getConfig().put(getjjjj_aonly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2363        }
2364        
2365        boolRes = getjjjj_uleenabled_widget().getButton().getSelection();
2366        
2367        
2368        defBoolRes = true;
2369        
2370
2371        if (boolRes != defBoolRes) {
2372            getConfig().put(getjjjj_uleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2373        }
2374        
2375        boolRes = getjjjj_trenabled_widget().getButton().getSelection();
2376        
2377        
2378        defBoolRes = false;
2379        
2380
2381        if (boolRes != defBoolRes) {
2382            getConfig().put(getjjjj_trenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2383        }
2384        
2385        boolRes = getjjjj_ulpenabled_widget().getButton().getSelection();
2386        
2387        
2388        defBoolRes = false;
2389        
2390
2391        if (boolRes != defBoolRes) {
2392            getConfig().put(getjjjj_ulpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2393        }
2394        
2395        boolRes = getjjjj_ulpunsplit_original_locals_widget().getButton().getSelection();
2396        
2397        
2398        defBoolRes = false;
2399        
2400
2401        if (boolRes != defBoolRes) {
2402            getConfig().put(getjjjj_ulpunsplit_original_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2403        }
2404        
2405        boolRes = getjjjj_lnsenabled_widget().getButton().getSelection();
2406        
2407        
2408        defBoolRes = true;
2409        
2410
2411        if (boolRes != defBoolRes) {
2412            getConfig().put(getjjjj_lnsenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2413        }
2414        
2415        boolRes = getjjjj_lnsonly_stack_locals_widget().getButton().getSelection();
2416        
2417        
2418        defBoolRes = false;
2419        
2420
2421        if (boolRes != defBoolRes) {
2422            getConfig().put(getjjjj_lnsonly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2423        }
2424        
2425        boolRes = getjjjj_cpenabled_widget().getButton().getSelection();
2426        
2427        
2428        defBoolRes = true;
2429        
2430
2431        if (boolRes != defBoolRes) {
2432            getConfig().put(getjjjj_cpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2433        }
2434        
2435        boolRes = getjjjj_cponly_regular_locals_widget().getButton().getSelection();
2436        
2437        
2438        defBoolRes = false;
2439        
2440
2441        if (boolRes != defBoolRes) {
2442            getConfig().put(getjjjj_cponly_regular_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2443        }
2444        
2445        boolRes = getjjjj_cponly_stack_locals_widget().getButton().getSelection();
2446        
2447        
2448        defBoolRes = true;
2449        
2450
2451        if (boolRes != defBoolRes) {
2452            getConfig().put(getjjjj_cponly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2453        }
2454        
2455        boolRes = getjjjj_daeenabled_widget().getButton().getSelection();
2456        
2457        
2458        defBoolRes = true;
2459        
2460
2461        if (boolRes != defBoolRes) {
2462            getConfig().put(getjjjj_daeenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2463        }
2464        
2465        boolRes = getjjjj_daeonly_stack_locals_widget().getButton().getSelection();
2466        
2467        
2468        defBoolRes = true;
2469        
2470
2471        if (boolRes != defBoolRes) {
2472            getConfig().put(getjjjj_daeonly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2473        }
2474        
2475        boolRes = getjjjj_cp_uleenabled_widget().getButton().getSelection();
2476        
2477        
2478        defBoolRes = true;
2479        
2480
2481        if (boolRes != defBoolRes) {
2482            getConfig().put(getjjjj_cp_uleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2483        }
2484        
2485        boolRes = getjjjj_lpenabled_widget().getButton().getSelection();
2486        
2487        
2488        defBoolRes = false;
2489        
2490
2491        if (boolRes != defBoolRes) {
2492            getConfig().put(getjjjj_lpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2493        }
2494        
2495        boolRes = getjjjj_lpunsplit_original_locals_widget().getButton().getSelection();
2496        
2497        
2498        defBoolRes = false;
2499        
2500
2501        if (boolRes != defBoolRes) {
2502            getConfig().put(getjjjj_lpunsplit_original_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
2503        }
2504        
2505        boolRes = getjjjj_neenabled_widget().getButton().getSelection();
2506        
2507        
2508        defBoolRes = true;
2509        
2510
2511        if (boolRes != defBoolRes) {
2512            getConfig().put(getjjjj_neenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2513        }
2514        
2515        boolRes = getjjjj_uceenabled_widget().getButton().getSelection();
2516        
2517        
2518        defBoolRes = true;
2519        
2520
2521        if (boolRes != defBoolRes) {
2522            getConfig().put(getjjjj_uceenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2523        }
2524        
2525        boolRes = getcgenabled_widget().getButton().getSelection();
2526        
2527        
2528        defBoolRes = true;
2529        
2530
2531        if (boolRes != defBoolRes) {
2532            getConfig().put(getcgenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2533        }
2534        
2535        boolRes = getcgsafe_forname_widget().getButton().getSelection();
2536        
2537        
2538        defBoolRes = false;
2539        
2540
2541        if (boolRes != defBoolRes) {
2542            getConfig().put(getcgsafe_forname_widget().getAlias(), new Boolean JavaDoc(boolRes));
2543        }
2544        
2545        boolRes = getcgsafe_newinstance_widget().getButton().getSelection();
2546        
2547        
2548        defBoolRes = false;
2549        
2550
2551        if (boolRes != defBoolRes) {
2552            getConfig().put(getcgsafe_newinstance_widget().getAlias(), new Boolean JavaDoc(boolRes));
2553        }
2554        
2555        boolRes = getcgverbose_widget().getButton().getSelection();
2556        
2557        
2558        defBoolRes = false;
2559        
2560
2561        if (boolRes != defBoolRes) {
2562            getConfig().put(getcgverbose_widget().getAlias(), new Boolean JavaDoc(boolRes));
2563        }
2564        
2565        boolRes = getcgall_reachable_widget().getButton().getSelection();
2566        
2567        
2568        defBoolRes = false;
2569        
2570
2571        if (boolRes != defBoolRes) {
2572            getConfig().put(getcgall_reachable_widget().getAlias(), new Boolean JavaDoc(boolRes));
2573        }
2574        
2575        boolRes = getcgimplicit_entry_widget().getButton().getSelection();
2576        
2577        
2578        defBoolRes = true;
2579        
2580
2581        if (boolRes != defBoolRes) {
2582            getConfig().put(getcgimplicit_entry_widget().getAlias(), new Boolean JavaDoc(boolRes));
2583        }
2584        
2585        boolRes = getcgtrim_clinit_widget().getButton().getSelection();
2586        
2587        
2588        defBoolRes = true;
2589        
2590
2591        if (boolRes != defBoolRes) {
2592            getConfig().put(getcgtrim_clinit_widget().getAlias(), new Boolean JavaDoc(boolRes));
2593        }
2594        
2595        stringRes = getcgjdkver_widget().getText().getText();
2596        
2597        defStringRes = "3";
2598        
2599
2600            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
2601            getConfig().put(getcgjdkver_widget().getAlias(), stringRes);
2602        }
2603        
2604        boolRes = getcgcg_chaenabled_widget().getButton().getSelection();
2605        
2606        
2607        defBoolRes = true;
2608        
2609
2610        if (boolRes != defBoolRes) {
2611            getConfig().put(getcgcg_chaenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2612        }
2613        
2614        boolRes = getcgcg_chaverbose_widget().getButton().getSelection();
2615        
2616        
2617        defBoolRes = false;
2618        
2619
2620        if (boolRes != defBoolRes) {
2621            getConfig().put(getcgcg_chaverbose_widget().getAlias(), new Boolean JavaDoc(boolRes));
2622        }
2623        
2624        boolRes = getcgcg_sparkenabled_widget().getButton().getSelection();
2625        
2626        
2627        defBoolRes = false;
2628        
2629
2630        if (boolRes != defBoolRes) {
2631            getConfig().put(getcgcg_sparkenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2632        }
2633        
2634        boolRes = getcgcg_sparkverbose_widget().getButton().getSelection();
2635        
2636        
2637        defBoolRes = false;
2638        
2639
2640        if (boolRes != defBoolRes) {
2641            getConfig().put(getcgcg_sparkverbose_widget().getAlias(), new Boolean JavaDoc(boolRes));
2642        }
2643        
2644        boolRes = getcgcg_sparkignore_types_widget().getButton().getSelection();
2645        
2646        
2647        defBoolRes = false;
2648        
2649
2650        if (boolRes != defBoolRes) {
2651            getConfig().put(getcgcg_sparkignore_types_widget().getAlias(), new Boolean JavaDoc(boolRes));
2652        }
2653        
2654        boolRes = getcgcg_sparkforce_gc_widget().getButton().getSelection();
2655        
2656        
2657        defBoolRes = false;
2658        
2659
2660        if (boolRes != defBoolRes) {
2661            getConfig().put(getcgcg_sparkforce_gc_widget().getAlias(), new Boolean JavaDoc(boolRes));
2662        }
2663        
2664        boolRes = getcgcg_sparkpre_jimplify_widget().getButton().getSelection();
2665        
2666        
2667        defBoolRes = false;
2668        
2669
2670        if (boolRes != defBoolRes) {
2671            getConfig().put(getcgcg_sparkpre_jimplify_widget().getAlias(), new Boolean JavaDoc(boolRes));
2672        }
2673        
2674        boolRes = getcgcg_sparkvta_widget().getButton().getSelection();
2675        
2676        
2677        defBoolRes = false;
2678        
2679
2680        if (boolRes != defBoolRes) {
2681            getConfig().put(getcgcg_sparkvta_widget().getAlias(), new Boolean JavaDoc(boolRes));
2682        }
2683        
2684        boolRes = getcgcg_sparkrta_widget().getButton().getSelection();
2685        
2686        
2687        defBoolRes = false;
2688        
2689
2690        if (boolRes != defBoolRes) {
2691            getConfig().put(getcgcg_sparkrta_widget().getAlias(), new Boolean JavaDoc(boolRes));
2692        }
2693        
2694        boolRes = getcgcg_sparkfield_based_widget().getButton().getSelection();
2695        
2696        
2697        defBoolRes = false;
2698        
2699
2700        if (boolRes != defBoolRes) {
2701            getConfig().put(getcgcg_sparkfield_based_widget().getAlias(), new Boolean JavaDoc(boolRes));
2702        }
2703        
2704        boolRes = getcgcg_sparktypes_for_sites_widget().getButton().getSelection();
2705        
2706        
2707        defBoolRes = false;
2708        
2709
2710        if (boolRes != defBoolRes) {
2711            getConfig().put(getcgcg_sparktypes_for_sites_widget().getAlias(), new Boolean JavaDoc(boolRes));
2712        }
2713        
2714        boolRes = getcgcg_sparkmerge_stringbuffer_widget().getButton().getSelection();
2715        
2716        
2717        defBoolRes = true;
2718        
2719
2720        if (boolRes != defBoolRes) {
2721            getConfig().put(getcgcg_sparkmerge_stringbuffer_widget().getAlias(), new Boolean JavaDoc(boolRes));
2722        }
2723        
2724        boolRes = getcgcg_sparkstring_constants_widget().getButton().getSelection();
2725        
2726        
2727        defBoolRes = false;
2728        
2729
2730        if (boolRes != defBoolRes) {
2731            getConfig().put(getcgcg_sparkstring_constants_widget().getAlias(), new Boolean JavaDoc(boolRes));
2732        }
2733        
2734        boolRes = getcgcg_sparksimulate_natives_widget().getButton().getSelection();
2735        
2736        
2737        defBoolRes = true;
2738        
2739
2740        if (boolRes != defBoolRes) {
2741            getConfig().put(getcgcg_sparksimulate_natives_widget().getAlias(), new Boolean JavaDoc(boolRes));
2742        }
2743        
2744        boolRes = getcgcg_sparksimple_edges_bidirectional_widget().getButton().getSelection();
2745        
2746        
2747        defBoolRes = false;
2748        
2749
2750        if (boolRes != defBoolRes) {
2751            getConfig().put(getcgcg_sparksimple_edges_bidirectional_widget().getAlias(), new Boolean JavaDoc(boolRes));
2752        }
2753        
2754        boolRes = getcgcg_sparkon_fly_cg_widget().getButton().getSelection();
2755        
2756        
2757        defBoolRes = true;
2758        
2759
2760        if (boolRes != defBoolRes) {
2761            getConfig().put(getcgcg_sparkon_fly_cg_widget().getAlias(), new Boolean JavaDoc(boolRes));
2762        }
2763        
2764        boolRes = getcgcg_sparksimplify_offline_widget().getButton().getSelection();
2765        
2766        
2767        defBoolRes = false;
2768        
2769
2770        if (boolRes != defBoolRes) {
2771            getConfig().put(getcgcg_sparksimplify_offline_widget().getAlias(), new Boolean JavaDoc(boolRes));
2772        }
2773        
2774        boolRes = getcgcg_sparksimplify_sccs_widget().getButton().getSelection();
2775        
2776        
2777        defBoolRes = false;
2778        
2779
2780        if (boolRes != defBoolRes) {
2781            getConfig().put(getcgcg_sparksimplify_sccs_widget().getAlias(), new Boolean JavaDoc(boolRes));
2782        }
2783        
2784        boolRes = getcgcg_sparkignore_types_for_sccs_widget().getButton().getSelection();
2785        
2786        
2787        defBoolRes = false;
2788        
2789
2790        if (boolRes != defBoolRes) {
2791            getConfig().put(getcgcg_sparkignore_types_for_sccs_widget().getAlias(), new Boolean JavaDoc(boolRes));
2792        }
2793         
2794        stringRes = getcgcg_sparkpropagator_widget().getSelectedAlias();
2795
2796        
2797        defStringRes = "worklist";
2798        
2799
2800        if (!stringRes.equals(defStringRes)) {
2801            getConfig().put(getcgcg_sparkpropagator_widget().getAlias(), stringRes);
2802        }
2803         
2804        stringRes = getcgcg_sparkset_impl_widget().getSelectedAlias();
2805
2806        
2807        defStringRes = "double";
2808        
2809
2810        if (!stringRes.equals(defStringRes)) {
2811            getConfig().put(getcgcg_sparkset_impl_widget().getAlias(), stringRes);
2812        }
2813         
2814        stringRes = getcgcg_sparkdouble_set_old_widget().getSelectedAlias();
2815
2816        
2817        defStringRes = "hybrid";
2818        
2819
2820        if (!stringRes.equals(defStringRes)) {
2821            getConfig().put(getcgcg_sparkdouble_set_old_widget().getAlias(), stringRes);
2822        }
2823         
2824        stringRes = getcgcg_sparkdouble_set_new_widget().getSelectedAlias();
2825
2826        
2827        defStringRes = "hybrid";
2828        
2829
2830        if (!stringRes.equals(defStringRes)) {
2831            getConfig().put(getcgcg_sparkdouble_set_new_widget().getAlias(), stringRes);
2832        }
2833        
2834        boolRes = getcgcg_sparkdump_html_widget().getButton().getSelection();
2835        
2836        
2837        defBoolRes = false;
2838        
2839
2840        if (boolRes != defBoolRes) {
2841            getConfig().put(getcgcg_sparkdump_html_widget().getAlias(), new Boolean JavaDoc(boolRes));
2842        }
2843        
2844        boolRes = getcgcg_sparkdump_pag_widget().getButton().getSelection();
2845        
2846        
2847        defBoolRes = false;
2848        
2849
2850        if (boolRes != defBoolRes) {
2851            getConfig().put(getcgcg_sparkdump_pag_widget().getAlias(), new Boolean JavaDoc(boolRes));
2852        }
2853        
2854        boolRes = getcgcg_sparkdump_solution_widget().getButton().getSelection();
2855        
2856        
2857        defBoolRes = false;
2858        
2859
2860        if (boolRes != defBoolRes) {
2861            getConfig().put(getcgcg_sparkdump_solution_widget().getAlias(), new Boolean JavaDoc(boolRes));
2862        }
2863        
2864        boolRes = getcgcg_sparktopo_sort_widget().getButton().getSelection();
2865        
2866        
2867        defBoolRes = false;
2868        
2869
2870        if (boolRes != defBoolRes) {
2871            getConfig().put(getcgcg_sparktopo_sort_widget().getAlias(), new Boolean JavaDoc(boolRes));
2872        }
2873        
2874        boolRes = getcgcg_sparkdump_types_widget().getButton().getSelection();
2875        
2876        
2877        defBoolRes = true;
2878        
2879
2880        if (boolRes != defBoolRes) {
2881            getConfig().put(getcgcg_sparkdump_types_widget().getAlias(), new Boolean JavaDoc(boolRes));
2882        }
2883        
2884        boolRes = getcgcg_sparkclass_method_var_widget().getButton().getSelection();
2885        
2886        
2887        defBoolRes = true;
2888        
2889
2890        if (boolRes != defBoolRes) {
2891            getConfig().put(getcgcg_sparkclass_method_var_widget().getAlias(), new Boolean JavaDoc(boolRes));
2892        }
2893        
2894        boolRes = getcgcg_sparkdump_answer_widget().getButton().getSelection();
2895        
2896        
2897        defBoolRes = false;
2898        
2899
2900        if (boolRes != defBoolRes) {
2901            getConfig().put(getcgcg_sparkdump_answer_widget().getAlias(), new Boolean JavaDoc(boolRes));
2902        }
2903        
2904        boolRes = getcgcg_sparkadd_tags_widget().getButton().getSelection();
2905        
2906        
2907        defBoolRes = false;
2908        
2909
2910        if (boolRes != defBoolRes) {
2911            getConfig().put(getcgcg_sparkadd_tags_widget().getAlias(), new Boolean JavaDoc(boolRes));
2912        }
2913        
2914        boolRes = getcgcg_sparkset_mass_widget().getButton().getSelection();
2915        
2916        
2917        defBoolRes = false;
2918        
2919
2920        if (boolRes != defBoolRes) {
2921            getConfig().put(getcgcg_sparkset_mass_widget().getAlias(), new Boolean JavaDoc(boolRes));
2922        }
2923        
2924        boolRes = getcgcg_paddleenabled_widget().getButton().getSelection();
2925        
2926        
2927        defBoolRes = false;
2928        
2929
2930        if (boolRes != defBoolRes) {
2931            getConfig().put(getcgcg_paddleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
2932        }
2933        
2934        boolRes = getcgcg_paddleverbose_widget().getButton().getSelection();
2935        
2936        
2937        defBoolRes = false;
2938        
2939
2940        if (boolRes != defBoolRes) {
2941            getConfig().put(getcgcg_paddleverbose_widget().getAlias(), new Boolean JavaDoc(boolRes));
2942        }
2943        
2944        boolRes = getcgcg_paddlebdd_widget().getButton().getSelection();
2945        
2946        
2947        defBoolRes = false;
2948        
2949
2950        if (boolRes != defBoolRes) {
2951            getConfig().put(getcgcg_paddlebdd_widget().getAlias(), new Boolean JavaDoc(boolRes));
2952        }
2953        
2954        boolRes = getcgcg_paddledynamic_order_widget().getButton().getSelection();
2955        
2956        
2957        defBoolRes = false;
2958        
2959
2960        if (boolRes != defBoolRes) {
2961            getConfig().put(getcgcg_paddledynamic_order_widget().getAlias(), new Boolean JavaDoc(boolRes));
2962        }
2963        
2964        boolRes = getcgcg_paddleprofile_widget().getButton().getSelection();
2965        
2966        
2967        defBoolRes = false;
2968        
2969
2970        if (boolRes != defBoolRes) {
2971            getConfig().put(getcgcg_paddleprofile_widget().getAlias(), new Boolean JavaDoc(boolRes));
2972        }
2973        
2974        boolRes = getcgcg_paddleignore_types_widget().getButton().getSelection();
2975        
2976        
2977        defBoolRes = false;
2978        
2979
2980        if (boolRes != defBoolRes) {
2981            getConfig().put(getcgcg_paddleignore_types_widget().getAlias(), new Boolean JavaDoc(boolRes));
2982        }
2983        
2984        boolRes = getcgcg_paddlepre_jimplify_widget().getButton().getSelection();
2985        
2986        
2987        defBoolRes = false;
2988        
2989
2990        if (boolRes != defBoolRes) {
2991            getConfig().put(getcgcg_paddlepre_jimplify_widget().getAlias(), new Boolean JavaDoc(boolRes));
2992        }
2993        
2994        stringRes = getcgcg_paddleorder_widget().getText().getText();
2995        
2996        defStringRes = "32";
2997        
2998
2999            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
3000            getConfig().put(getcgcg_paddleorder_widget().getAlias(), stringRes);
3001        }
3002         
3003        stringRes = getcgcg_paddleconf_widget().getSelectedAlias();
3004
3005        
3006        defStringRes = "ofcg";
3007        
3008
3009        if (!stringRes.equals(defStringRes)) {
3010            getConfig().put(getcgcg_paddleconf_widget().getAlias(), stringRes);
3011        }
3012         
3013        stringRes = getcgcg_paddleq_widget().getSelectedAlias();
3014
3015        
3016        defStringRes = "auto";
3017        
3018
3019        if (!stringRes.equals(defStringRes)) {
3020            getConfig().put(getcgcg_paddleq_widget().getAlias(), stringRes);
3021        }
3022         
3023        stringRes = getcgcg_paddlebackend_widget().getSelectedAlias();
3024
3025        
3026        defStringRes = "buddy";
3027        
3028
3029        if (!stringRes.equals(defStringRes)) {
3030            getConfig().put(getcgcg_paddlebackend_widget().getAlias(), stringRes);
3031        }
3032        
3033        boolRes = getcgcg_paddlecontext_heap_widget().getButton().getSelection();
3034        
3035        
3036        defBoolRes = false;
3037        
3038
3039        if (boolRes != defBoolRes) {
3040            getConfig().put(getcgcg_paddlecontext_heap_widget().getAlias(), new Boolean JavaDoc(boolRes));
3041        }
3042        
3043        stringRes = getcgcg_paddlek_widget().getText().getText();
3044        
3045        defStringRes = "2";
3046        
3047
3048            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
3049            getConfig().put(getcgcg_paddlek_widget().getAlias(), stringRes);
3050        }
3051         
3052        stringRes = getcgcg_paddlecontext_widget().getSelectedAlias();
3053
3054        
3055        defStringRes = "insens";
3056        
3057
3058        if (!stringRes.equals(defStringRes)) {
3059            getConfig().put(getcgcg_paddlecontext_widget().getAlias(), stringRes);
3060        }
3061        
3062        boolRes = getcgcg_paddlerta_widget().getButton().getSelection();
3063        
3064        
3065        defBoolRes = false;
3066        
3067
3068        if (boolRes != defBoolRes) {
3069            getConfig().put(getcgcg_paddlerta_widget().getAlias(), new Boolean JavaDoc(boolRes));
3070        }
3071        
3072        boolRes = getcgcg_paddlefield_based_widget().getButton().getSelection();
3073        
3074        
3075        defBoolRes = false;
3076        
3077
3078        if (boolRes != defBoolRes) {
3079            getConfig().put(getcgcg_paddlefield_based_widget().getAlias(), new Boolean JavaDoc(boolRes));
3080        }
3081        
3082        boolRes = getcgcg_paddletypes_for_sites_widget().getButton().getSelection();
3083        
3084        
3085        defBoolRes = false;
3086        
3087
3088        if (boolRes != defBoolRes) {
3089            getConfig().put(getcgcg_paddletypes_for_sites_widget().getAlias(), new Boolean JavaDoc(boolRes));
3090        }
3091        
3092        boolRes = getcgcg_paddlemerge_stringbuffer_widget().getButton().getSelection();
3093        
3094        
3095        defBoolRes = true;
3096        
3097
3098        if (boolRes != defBoolRes) {
3099            getConfig().put(getcgcg_paddlemerge_stringbuffer_widget().getAlias(), new Boolean JavaDoc(boolRes));
3100        }
3101        
3102        boolRes = getcgcg_paddlestring_constants_widget().getButton().getSelection();
3103        
3104        
3105        defBoolRes = false;
3106        
3107
3108        if (boolRes != defBoolRes) {
3109            getConfig().put(getcgcg_paddlestring_constants_widget().getAlias(), new Boolean JavaDoc(boolRes));
3110        }
3111        
3112        boolRes = getcgcg_paddlesimulate_natives_widget().getButton().getSelection();
3113        
3114        
3115        defBoolRes = true;
3116        
3117
3118        if (boolRes != defBoolRes) {
3119            getConfig().put(getcgcg_paddlesimulate_natives_widget().getAlias(), new Boolean JavaDoc(boolRes));
3120        }
3121        
3122        boolRes = getcgcg_paddleglobal_nodes_in_natives_widget().getButton().getSelection();
3123        
3124        
3125        defBoolRes = false;
3126        
3127
3128        if (boolRes != defBoolRes) {
3129            getConfig().put(getcgcg_paddleglobal_nodes_in_natives_widget().getAlias(), new Boolean JavaDoc(boolRes));
3130        }
3131        
3132        boolRes = getcgcg_paddlesimple_edges_bidirectional_widget().getButton().getSelection();
3133        
3134        
3135        defBoolRes = false;
3136        
3137
3138        if (boolRes != defBoolRes) {
3139            getConfig().put(getcgcg_paddlesimple_edges_bidirectional_widget().getAlias(), new Boolean JavaDoc(boolRes));
3140        }
3141        
3142        boolRes = getcgcg_paddlethis_edges_widget().getButton().getSelection();
3143        
3144        
3145        defBoolRes = false;
3146        
3147
3148        if (boolRes != defBoolRes) {
3149            getConfig().put(getcgcg_paddlethis_edges_widget().getAlias(), new Boolean JavaDoc(boolRes));
3150        }
3151        
3152        boolRes = getcgcg_paddleprecise_newinstance_widget().getButton().getSelection();
3153        
3154        
3155        defBoolRes = true;
3156        
3157
3158        if (boolRes != defBoolRes) {
3159            getConfig().put(getcgcg_paddleprecise_newinstance_widget().getAlias(), new Boolean JavaDoc(boolRes));
3160        }
3161         
3162        stringRes = getcgcg_paddlepropagator_widget().getSelectedAlias();
3163
3164        
3165        defStringRes = "auto";
3166        
3167
3168        if (!stringRes.equals(defStringRes)) {
3169            getConfig().put(getcgcg_paddlepropagator_widget().getAlias(), stringRes);
3170        }
3171         
3172        stringRes = getcgcg_paddleset_impl_widget().getSelectedAlias();
3173
3174        
3175        defStringRes = "double";
3176        
3177
3178        if (!stringRes.equals(defStringRes)) {
3179            getConfig().put(getcgcg_paddleset_impl_widget().getAlias(), stringRes);
3180        }
3181         
3182        stringRes = getcgcg_paddledouble_set_old_widget().getSelectedAlias();
3183
3184        
3185        defStringRes = "hybrid";
3186        
3187
3188        if (!stringRes.equals(defStringRes)) {
3189            getConfig().put(getcgcg_paddledouble_set_old_widget().getAlias(), stringRes);
3190        }
3191         
3192        stringRes = getcgcg_paddledouble_set_new_widget().getSelectedAlias();
3193
3194        
3195        defStringRes = "hybrid";
3196        
3197
3198        if (!stringRes.equals(defStringRes)) {
3199            getConfig().put(getcgcg_paddledouble_set_new_widget().getAlias(), stringRes);
3200        }
3201        
3202        boolRes = getcgcg_paddlecontext_counts_widget().getButton().getSelection();
3203        
3204        
3205        defBoolRes = false;
3206        
3207
3208        if (boolRes != defBoolRes) {
3209            getConfig().put(getcgcg_paddlecontext_counts_widget().getAlias(), new Boolean JavaDoc(boolRes));
3210        }
3211        
3212        boolRes = getcgcg_paddletotal_context_counts_widget().getButton().getSelection();
3213        
3214        
3215        defBoolRes = false;
3216        
3217
3218        if (boolRes != defBoolRes) {
3219            getConfig().put(getcgcg_paddletotal_context_counts_widget().getAlias(), new Boolean JavaDoc(boolRes));
3220        }
3221        
3222        boolRes = getcgcg_paddlemethod_context_counts_widget().getButton().getSelection();
3223        
3224        
3225        defBoolRes = false;
3226        
3227
3228        if (boolRes != defBoolRes) {
3229            getConfig().put(getcgcg_paddlemethod_context_counts_widget().getAlias(), new Boolean JavaDoc(boolRes));
3230        }
3231        
3232        boolRes = getcgcg_paddleset_mass_widget().getButton().getSelection();
3233        
3234        
3235        defBoolRes = false;
3236        
3237
3238        if (boolRes != defBoolRes) {
3239            getConfig().put(getcgcg_paddleset_mass_widget().getAlias(), new Boolean JavaDoc(boolRes));
3240        }
3241        
3242        boolRes = getcgcg_paddlenumber_nodes_widget().getButton().getSelection();
3243        
3244        
3245        defBoolRes = true;
3246        
3247
3248        if (boolRes != defBoolRes) {
3249            getConfig().put(getcgcg_paddlenumber_nodes_widget().getAlias(), new Boolean JavaDoc(boolRes));
3250        }
3251        
3252        boolRes = getwstpenabled_widget().getButton().getSelection();
3253        
3254        
3255        defBoolRes = true;
3256        
3257
3258        if (boolRes != defBoolRes) {
3259            getConfig().put(getwstpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3260        }
3261        
3262        boolRes = getwsopenabled_widget().getButton().getSelection();
3263        
3264        
3265        defBoolRes = false;
3266        
3267
3268        if (boolRes != defBoolRes) {
3269            getConfig().put(getwsopenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3270        }
3271        
3272        boolRes = getwjtpenabled_widget().getButton().getSelection();
3273        
3274        
3275        defBoolRes = true;
3276        
3277
3278        if (boolRes != defBoolRes) {
3279            getConfig().put(getwjtpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3280        }
3281        
3282        boolRes = getwjopenabled_widget().getButton().getSelection();
3283        
3284        
3285        defBoolRes = false;
3286        
3287
3288        if (boolRes != defBoolRes) {
3289            getConfig().put(getwjopenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3290        }
3291        
3292        boolRes = getwjopwjop_smbenabled_widget().getButton().getSelection();
3293        
3294        
3295        defBoolRes = false;
3296        
3297
3298        if (boolRes != defBoolRes) {
3299            getConfig().put(getwjopwjop_smbenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3300        }
3301        
3302        boolRes = getwjopwjop_smbinsert_null_checks_widget().getButton().getSelection();
3303        
3304        
3305        defBoolRes = true;
3306        
3307
3308        if (boolRes != defBoolRes) {
3309            getConfig().put(getwjopwjop_smbinsert_null_checks_widget().getAlias(), new Boolean JavaDoc(boolRes));
3310        }
3311        
3312        boolRes = getwjopwjop_smbinsert_redundant_casts_widget().getButton().getSelection();
3313        
3314        
3315        defBoolRes = true;
3316        
3317
3318        if (boolRes != defBoolRes) {
3319            getConfig().put(getwjopwjop_smbinsert_redundant_casts_widget().getAlias(), new Boolean JavaDoc(boolRes));
3320        }
3321         
3322        stringRes = getwjopwjop_smballowed_modifier_changes_widget().getSelectedAlias();
3323
3324        
3325        defStringRes = "unsafe";
3326        
3327
3328        if (!stringRes.equals(defStringRes)) {
3329            getConfig().put(getwjopwjop_smballowed_modifier_changes_widget().getAlias(), stringRes);
3330        }
3331        
3332        boolRes = getwjopwjop_sienabled_widget().getButton().getSelection();
3333        
3334        
3335        defBoolRes = true;
3336        
3337
3338        if (boolRes != defBoolRes) {
3339            getConfig().put(getwjopwjop_sienabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3340        }
3341        
3342        boolRes = getwjopwjop_sirerun_jb_widget().getButton().getSelection();
3343        
3344        
3345        defBoolRes = true;
3346        
3347
3348        if (boolRes != defBoolRes) {
3349            getConfig().put(getwjopwjop_sirerun_jb_widget().getAlias(), new Boolean JavaDoc(boolRes));
3350        }
3351        
3352        boolRes = getwjopwjop_siinsert_null_checks_widget().getButton().getSelection();
3353        
3354        
3355        defBoolRes = true;
3356        
3357
3358        if (boolRes != defBoolRes) {
3359            getConfig().put(getwjopwjop_siinsert_null_checks_widget().getAlias(), new Boolean JavaDoc(boolRes));
3360        }
3361        
3362        boolRes = getwjopwjop_siinsert_redundant_casts_widget().getButton().getSelection();
3363        
3364        
3365        defBoolRes = true;
3366        
3367
3368        if (boolRes != defBoolRes) {
3369            getConfig().put(getwjopwjop_siinsert_redundant_casts_widget().getAlias(), new Boolean JavaDoc(boolRes));
3370        }
3371        
3372        stringRes = getwjopwjop_siexpansion_factor_widget().getText().getText();
3373        
3374        defStringRes = "3";
3375        
3376
3377            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
3378            getConfig().put(getwjopwjop_siexpansion_factor_widget().getAlias(), stringRes);
3379        }
3380        
3381        stringRes = getwjopwjop_simax_container_size_widget().getText().getText();
3382        
3383        defStringRes = "5000";
3384        
3385
3386            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
3387            getConfig().put(getwjopwjop_simax_container_size_widget().getAlias(), stringRes);
3388        }
3389        
3390        stringRes = getwjopwjop_simax_inlinee_size_widget().getText().getText();
3391        
3392        defStringRes = "20";
3393        
3394
3395            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
3396            getConfig().put(getwjopwjop_simax_inlinee_size_widget().getAlias(), stringRes);
3397        }
3398         
3399        stringRes = getwjopwjop_siallowed_modifier_changes_widget().getSelectedAlias();
3400
3401        
3402        defStringRes = "unsafe";
3403        
3404
3405        if (!stringRes.equals(defStringRes)) {
3406            getConfig().put(getwjopwjop_siallowed_modifier_changes_widget().getAlias(), stringRes);
3407        }
3408        
3409        boolRes = getwjapenabled_widget().getButton().getSelection();
3410        
3411        
3412        defBoolRes = true;
3413        
3414
3415        if (boolRes != defBoolRes) {
3416            getConfig().put(getwjapenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3417        }
3418        
3419        boolRes = getwjapwjap_raenabled_widget().getButton().getSelection();
3420        
3421        
3422        defBoolRes = false;
3423        
3424
3425        if (boolRes != defBoolRes) {
3426            getConfig().put(getwjapwjap_raenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3427        }
3428        
3429        boolRes = getwjapwjap_umtenabled_widget().getButton().getSelection();
3430        
3431        
3432        defBoolRes = false;
3433        
3434
3435        if (boolRes != defBoolRes) {
3436            getConfig().put(getwjapwjap_umtenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3437        }
3438        
3439        boolRes = getwjapwjap_uftenabled_widget().getButton().getSelection();
3440        
3441        
3442        defBoolRes = false;
3443        
3444
3445        if (boolRes != defBoolRes) {
3446            getConfig().put(getwjapwjap_uftenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3447        }
3448        
3449        boolRes = getwjapwjap_tqtenabled_widget().getButton().getSelection();
3450        
3451        
3452        defBoolRes = false;
3453        
3454
3455        if (boolRes != defBoolRes) {
3456            getConfig().put(getwjapwjap_tqtenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3457        }
3458        
3459        boolRes = getwjapwjap_cggenabled_widget().getButton().getSelection();
3460        
3461        
3462        defBoolRes = false;
3463        
3464
3465        if (boolRes != defBoolRes) {
3466            getConfig().put(getwjapwjap_cggenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3467        }
3468        
3469        boolRes = getwjapwjap_cggshow_lib_meths_widget().getButton().getSelection();
3470        
3471        
3472        defBoolRes = false;
3473        
3474
3475        if (boolRes != defBoolRes) {
3476            getConfig().put(getwjapwjap_cggshow_lib_meths_widget().getAlias(), new Boolean JavaDoc(boolRes));
3477        }
3478        
3479        boolRes = getwjapwjap_purityenabled_widget().getButton().getSelection();
3480        
3481        
3482        defBoolRes = false;
3483        
3484
3485        if (boolRes != defBoolRes) {
3486            getConfig().put(getwjapwjap_purityenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3487        }
3488        
3489        boolRes = getwjapwjap_puritydump_summaries_widget().getButton().getSelection();
3490        
3491        
3492        defBoolRes = true;
3493        
3494
3495        if (boolRes != defBoolRes) {
3496            getConfig().put(getwjapwjap_puritydump_summaries_widget().getAlias(), new Boolean JavaDoc(boolRes));
3497        }
3498        
3499        boolRes = getwjapwjap_puritydump_cg_widget().getButton().getSelection();
3500        
3501        
3502        defBoolRes = false;
3503        
3504
3505        if (boolRes != defBoolRes) {
3506            getConfig().put(getwjapwjap_puritydump_cg_widget().getAlias(), new Boolean JavaDoc(boolRes));
3507        }
3508        
3509        boolRes = getwjapwjap_puritydump_intra_widget().getButton().getSelection();
3510        
3511        
3512        defBoolRes = false;
3513        
3514
3515        if (boolRes != defBoolRes) {
3516            getConfig().put(getwjapwjap_puritydump_intra_widget().getAlias(), new Boolean JavaDoc(boolRes));
3517        }
3518        
3519        boolRes = getwjapwjap_purityprint_widget().getButton().getSelection();
3520        
3521        
3522        defBoolRes = true;
3523        
3524
3525        if (boolRes != defBoolRes) {
3526            getConfig().put(getwjapwjap_purityprint_widget().getAlias(), new Boolean JavaDoc(boolRes));
3527        }
3528        
3529        boolRes = getwjapwjap_purityverbose_widget().getButton().getSelection();
3530        
3531        
3532        defBoolRes = false;
3533        
3534
3535        if (boolRes != defBoolRes) {
3536            getConfig().put(getwjapwjap_purityverbose_widget().getAlias(), new Boolean JavaDoc(boolRes));
3537        }
3538        
3539        boolRes = getshimpleenabled_widget().getButton().getSelection();
3540        
3541        
3542        defBoolRes = true;
3543        
3544
3545        if (boolRes != defBoolRes) {
3546            getConfig().put(getshimpleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3547        }
3548        
3549        boolRes = getshimplenode_elim_opt_widget().getButton().getSelection();
3550        
3551        
3552        defBoolRes = true;
3553        
3554
3555        if (boolRes != defBoolRes) {
3556            getConfig().put(getshimplenode_elim_opt_widget().getAlias(), new Boolean JavaDoc(boolRes));
3557        }
3558        
3559        boolRes = getshimplestandard_local_names_widget().getButton().getSelection();
3560        
3561        
3562        defBoolRes = false;
3563        
3564
3565        if (boolRes != defBoolRes) {
3566            getConfig().put(getshimplestandard_local_names_widget().getAlias(), new Boolean JavaDoc(boolRes));
3567        }
3568        
3569        boolRes = getshimpleextended_widget().getButton().getSelection();
3570        
3571        
3572        defBoolRes = false;
3573        
3574
3575        if (boolRes != defBoolRes) {
3576            getConfig().put(getshimpleextended_widget().getAlias(), new Boolean JavaDoc(boolRes));
3577        }
3578        
3579        boolRes = getshimpledebug_widget().getButton().getSelection();
3580        
3581        
3582        defBoolRes = false;
3583        
3584
3585        if (boolRes != defBoolRes) {
3586            getConfig().put(getshimpledebug_widget().getAlias(), new Boolean JavaDoc(boolRes));
3587        }
3588        
3589        boolRes = getstpenabled_widget().getButton().getSelection();
3590        
3591        
3592        defBoolRes = true;
3593        
3594
3595        if (boolRes != defBoolRes) {
3596            getConfig().put(getstpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3597        }
3598        
3599        boolRes = getsopenabled_widget().getButton().getSelection();
3600        
3601        
3602        defBoolRes = false;
3603        
3604
3605        if (boolRes != defBoolRes) {
3606            getConfig().put(getsopenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3607        }
3608        
3609        boolRes = getsopsop_cpfenabled_widget().getButton().getSelection();
3610        
3611        
3612        defBoolRes = true;
3613        
3614
3615        if (boolRes != defBoolRes) {
3616            getConfig().put(getsopsop_cpfenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3617        }
3618        
3619        boolRes = getsopsop_cpfprune_cfg_widget().getButton().getSelection();
3620        
3621        
3622        defBoolRes = true;
3623        
3624
3625        if (boolRes != defBoolRes) {
3626            getConfig().put(getsopsop_cpfprune_cfg_widget().getAlias(), new Boolean JavaDoc(boolRes));
3627        }
3628        
3629        boolRes = getjtpenabled_widget().getButton().getSelection();
3630        
3631        
3632        defBoolRes = true;
3633        
3634
3635        if (boolRes != defBoolRes) {
3636            getConfig().put(getjtpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3637        }
3638        
3639        boolRes = getjopenabled_widget().getButton().getSelection();
3640        
3641        
3642        defBoolRes = false;
3643        
3644
3645        if (boolRes != defBoolRes) {
3646            getConfig().put(getjopenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3647        }
3648        
3649        boolRes = getjopjop_cseenabled_widget().getButton().getSelection();
3650        
3651        
3652        defBoolRes = false;
3653        
3654
3655        if (boolRes != defBoolRes) {
3656            getConfig().put(getjopjop_cseenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3657        }
3658        
3659        boolRes = getjopjop_csenaive_side_effect_widget().getButton().getSelection();
3660        
3661        
3662        defBoolRes = false;
3663        
3664
3665        if (boolRes != defBoolRes) {
3666            getConfig().put(getjopjop_csenaive_side_effect_widget().getAlias(), new Boolean JavaDoc(boolRes));
3667        }
3668        
3669        boolRes = getjopjop_bcmenabled_widget().getButton().getSelection();
3670        
3671        
3672        defBoolRes = false;
3673        
3674
3675        if (boolRes != defBoolRes) {
3676            getConfig().put(getjopjop_bcmenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3677        }
3678        
3679        boolRes = getjopjop_bcmnaive_side_effect_widget().getButton().getSelection();
3680        
3681        
3682        defBoolRes = false;
3683        
3684
3685        if (boolRes != defBoolRes) {
3686            getConfig().put(getjopjop_bcmnaive_side_effect_widget().getAlias(), new Boolean JavaDoc(boolRes));
3687        }
3688        
3689        boolRes = getjopjop_lcmenabled_widget().getButton().getSelection();
3690        
3691        
3692        defBoolRes = false;
3693        
3694
3695        if (boolRes != defBoolRes) {
3696            getConfig().put(getjopjop_lcmenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3697        }
3698        
3699        boolRes = getjopjop_lcmunroll_widget().getButton().getSelection();
3700        
3701        
3702        defBoolRes = true;
3703        
3704
3705        if (boolRes != defBoolRes) {
3706            getConfig().put(getjopjop_lcmunroll_widget().getAlias(), new Boolean JavaDoc(boolRes));
3707        }
3708        
3709        boolRes = getjopjop_lcmnaive_side_effect_widget().getButton().getSelection();
3710        
3711        
3712        defBoolRes = false;
3713        
3714
3715        if (boolRes != defBoolRes) {
3716            getConfig().put(getjopjop_lcmnaive_side_effect_widget().getAlias(), new Boolean JavaDoc(boolRes));
3717        }
3718         
3719        stringRes = getjopjop_lcmsafety_widget().getSelectedAlias();
3720
3721        
3722        defStringRes = "safe";
3723        
3724
3725        if (!stringRes.equals(defStringRes)) {
3726            getConfig().put(getjopjop_lcmsafety_widget().getAlias(), stringRes);
3727        }
3728        
3729        boolRes = getjopjop_cpenabled_widget().getButton().getSelection();
3730        
3731        
3732        defBoolRes = true;
3733        
3734
3735        if (boolRes != defBoolRes) {
3736            getConfig().put(getjopjop_cpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3737        }
3738        
3739        boolRes = getjopjop_cponly_regular_locals_widget().getButton().getSelection();
3740        
3741        
3742        defBoolRes = false;
3743        
3744
3745        if (boolRes != defBoolRes) {
3746            getConfig().put(getjopjop_cponly_regular_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
3747        }
3748        
3749        boolRes = getjopjop_cponly_stack_locals_widget().getButton().getSelection();
3750        
3751        
3752        defBoolRes = false;
3753        
3754
3755        if (boolRes != defBoolRes) {
3756            getConfig().put(getjopjop_cponly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
3757        }
3758        
3759        boolRes = getjopjop_cpfenabled_widget().getButton().getSelection();
3760        
3761        
3762        defBoolRes = true;
3763        
3764
3765        if (boolRes != defBoolRes) {
3766            getConfig().put(getjopjop_cpfenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3767        }
3768        
3769        boolRes = getjopjop_cbfenabled_widget().getButton().getSelection();
3770        
3771        
3772        defBoolRes = true;
3773        
3774
3775        if (boolRes != defBoolRes) {
3776            getConfig().put(getjopjop_cbfenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3777        }
3778        
3779        boolRes = getjopjop_daeenabled_widget().getButton().getSelection();
3780        
3781        
3782        defBoolRes = true;
3783        
3784
3785        if (boolRes != defBoolRes) {
3786            getConfig().put(getjopjop_daeenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3787        }
3788        
3789        boolRes = getjopjop_daeonly_tag_widget().getButton().getSelection();
3790        
3791        
3792        defBoolRes = false;
3793        
3794
3795        if (boolRes != defBoolRes) {
3796            getConfig().put(getjopjop_daeonly_tag_widget().getAlias(), new Boolean JavaDoc(boolRes));
3797        }
3798        
3799        boolRes = getjopjop_daeonly_stack_locals_widget().getButton().getSelection();
3800        
3801        
3802        defBoolRes = false;
3803        
3804
3805        if (boolRes != defBoolRes) {
3806            getConfig().put(getjopjop_daeonly_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
3807        }
3808        
3809        boolRes = getjopjop_uce1enabled_widget().getButton().getSelection();
3810        
3811        
3812        defBoolRes = true;
3813        
3814
3815        if (boolRes != defBoolRes) {
3816            getConfig().put(getjopjop_uce1enabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3817        }
3818        
3819        boolRes = getjopjop_uce1remove_unreachable_traps_widget().getButton().getSelection();
3820        
3821        
3822        defBoolRes = false;
3823        
3824
3825        if (boolRes != defBoolRes) {
3826            getConfig().put(getjopjop_uce1remove_unreachable_traps_widget().getAlias(), new Boolean JavaDoc(boolRes));
3827        }
3828        
3829        boolRes = getjopjop_ubf1enabled_widget().getButton().getSelection();
3830        
3831        
3832        defBoolRes = true;
3833        
3834
3835        if (boolRes != defBoolRes) {
3836            getConfig().put(getjopjop_ubf1enabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3837        }
3838        
3839        boolRes = getjopjop_uce2enabled_widget().getButton().getSelection();
3840        
3841        
3842        defBoolRes = true;
3843        
3844
3845        if (boolRes != defBoolRes) {
3846            getConfig().put(getjopjop_uce2enabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3847        }
3848        
3849        boolRes = getjopjop_uce2remove_unreachable_traps_widget().getButton().getSelection();
3850        
3851        
3852        defBoolRes = false;
3853        
3854
3855        if (boolRes != defBoolRes) {
3856            getConfig().put(getjopjop_uce2remove_unreachable_traps_widget().getAlias(), new Boolean JavaDoc(boolRes));
3857        }
3858        
3859        boolRes = getjopjop_ubf2enabled_widget().getButton().getSelection();
3860        
3861        
3862        defBoolRes = true;
3863        
3864
3865        if (boolRes != defBoolRes) {
3866            getConfig().put(getjopjop_ubf2enabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3867        }
3868        
3869        boolRes = getjopjop_uleenabled_widget().getButton().getSelection();
3870        
3871        
3872        defBoolRes = true;
3873        
3874
3875        if (boolRes != defBoolRes) {
3876            getConfig().put(getjopjop_uleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3877        }
3878        
3879        boolRes = getjapenabled_widget().getButton().getSelection();
3880        
3881        
3882        defBoolRes = true;
3883        
3884
3885        if (boolRes != defBoolRes) {
3886            getConfig().put(getjapenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3887        }
3888        
3889        boolRes = getjapjap_npcenabled_widget().getButton().getSelection();
3890        
3891        
3892        defBoolRes = false;
3893        
3894
3895        if (boolRes != defBoolRes) {
3896            getConfig().put(getjapjap_npcenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3897        }
3898        
3899        boolRes = getjapjap_npconly_array_ref_widget().getButton().getSelection();
3900        
3901        
3902        defBoolRes = false;
3903        
3904
3905        if (boolRes != defBoolRes) {
3906            getConfig().put(getjapjap_npconly_array_ref_widget().getAlias(), new Boolean JavaDoc(boolRes));
3907        }
3908        
3909        boolRes = getjapjap_npcprofiling_widget().getButton().getSelection();
3910        
3911        
3912        defBoolRes = false;
3913        
3914
3915        if (boolRes != defBoolRes) {
3916            getConfig().put(getjapjap_npcprofiling_widget().getAlias(), new Boolean JavaDoc(boolRes));
3917        }
3918        
3919        boolRes = getjapjap_npcolorerenabled_widget().getButton().getSelection();
3920        
3921        
3922        defBoolRes = false;
3923        
3924
3925        if (boolRes != defBoolRes) {
3926            getConfig().put(getjapjap_npcolorerenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3927        }
3928        
3929        boolRes = getjapjap_abcenabled_widget().getButton().getSelection();
3930        
3931        
3932        defBoolRes = false;
3933        
3934
3935        if (boolRes != defBoolRes) {
3936            getConfig().put(getjapjap_abcenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
3937        }
3938        
3939        boolRes = getjapjap_abcwith_all_widget().getButton().getSelection();
3940        
3941        
3942        defBoolRes = false;
3943        
3944
3945        if (boolRes != defBoolRes) {
3946            getConfig().put(getjapjap_abcwith_all_widget().getAlias(), new Boolean JavaDoc(boolRes));
3947        }
3948        
3949        boolRes = getjapjap_abcwith_cse_widget().getButton().getSelection();
3950        
3951        
3952        defBoolRes = false;
3953        
3954
3955        if (boolRes != defBoolRes) {
3956            getConfig().put(getjapjap_abcwith_cse_widget().getAlias(), new Boolean JavaDoc(boolRes));
3957        }
3958        
3959        boolRes = getjapjap_abcwith_arrayref_widget().getButton().getSelection();
3960        
3961        
3962        defBoolRes = false;
3963        
3964
3965        if (boolRes != defBoolRes) {
3966            getConfig().put(getjapjap_abcwith_arrayref_widget().getAlias(), new Boolean JavaDoc(boolRes));
3967        }
3968        
3969        boolRes = getjapjap_abcwith_fieldref_widget().getButton().getSelection();
3970        
3971        
3972        defBoolRes = false;
3973        
3974
3975        if (boolRes != defBoolRes) {
3976            getConfig().put(getjapjap_abcwith_fieldref_widget().getAlias(), new Boolean JavaDoc(boolRes));
3977        }
3978        
3979        boolRes = getjapjap_abcwith_classfield_widget().getButton().getSelection();
3980        
3981        
3982        defBoolRes = false;
3983        
3984
3985        if (boolRes != defBoolRes) {
3986            getConfig().put(getjapjap_abcwith_classfield_widget().getAlias(), new Boolean JavaDoc(boolRes));
3987        }
3988        
3989        boolRes = getjapjap_abcwith_rectarray_widget().getButton().getSelection();
3990        
3991        
3992        defBoolRes = false;
3993        
3994
3995        if (boolRes != defBoolRes) {
3996            getConfig().put(getjapjap_abcwith_rectarray_widget().getAlias(), new Boolean JavaDoc(boolRes));
3997        }
3998        
3999        boolRes = getjapjap_abcprofiling_widget().getButton().getSelection();
4000        
4001        
4002        defBoolRes = false;
4003        
4004
4005        if (boolRes != defBoolRes) {
4006            getConfig().put(getjapjap_abcprofiling_widget().getAlias(), new Boolean JavaDoc(boolRes));
4007        }
4008        
4009        boolRes = getjapjap_abcadd_color_tags_widget().getButton().getSelection();
4010        
4011        
4012        defBoolRes = false;
4013        
4014
4015        if (boolRes != defBoolRes) {
4016            getConfig().put(getjapjap_abcadd_color_tags_widget().getAlias(), new Boolean JavaDoc(boolRes));
4017        }
4018        
4019        boolRes = getjapjap_profilingenabled_widget().getButton().getSelection();
4020        
4021        
4022        defBoolRes = false;
4023        
4024
4025        if (boolRes != defBoolRes) {
4026            getConfig().put(getjapjap_profilingenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4027        }
4028        
4029        boolRes = getjapjap_profilingnotmainentry_widget().getButton().getSelection();
4030        
4031        
4032        defBoolRes = false;
4033        
4034
4035        if (boolRes != defBoolRes) {
4036            getConfig().put(getjapjap_profilingnotmainentry_widget().getAlias(), new Boolean JavaDoc(boolRes));
4037        }
4038        
4039        boolRes = getjapjap_seaenabled_widget().getButton().getSelection();
4040        
4041        
4042        defBoolRes = false;
4043        
4044
4045        if (boolRes != defBoolRes) {
4046            getConfig().put(getjapjap_seaenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4047        }
4048        
4049        boolRes = getjapjap_seanaive_widget().getButton().getSelection();
4050        
4051        
4052        defBoolRes = false;
4053        
4054
4055        if (boolRes != defBoolRes) {
4056            getConfig().put(getjapjap_seanaive_widget().getAlias(), new Boolean JavaDoc(boolRes));
4057        }
4058        
4059        boolRes = getjapjap_fieldrwenabled_widget().getButton().getSelection();
4060        
4061        
4062        defBoolRes = false;
4063        
4064
4065        if (boolRes != defBoolRes) {
4066            getConfig().put(getjapjap_fieldrwenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4067        }
4068        
4069        stringRes = getjapjap_fieldrwthreshold_widget().getText().getText();
4070        
4071        defStringRes = "100";
4072        
4073
4074            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
4075            getConfig().put(getjapjap_fieldrwthreshold_widget().getAlias(), stringRes);
4076        }
4077        
4078        boolRes = getjapjap_cgtaggerenabled_widget().getButton().getSelection();
4079        
4080        
4081        defBoolRes = false;
4082        
4083
4084        if (boolRes != defBoolRes) {
4085            getConfig().put(getjapjap_cgtaggerenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4086        }
4087        
4088        boolRes = getjapjap_parityenabled_widget().getButton().getSelection();
4089        
4090        
4091        defBoolRes = false;
4092        
4093
4094        if (boolRes != defBoolRes) {
4095            getConfig().put(getjapjap_parityenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4096        }
4097        
4098        boolRes = getjapjap_patenabled_widget().getButton().getSelection();
4099        
4100        
4101        defBoolRes = false;
4102        
4103
4104        if (boolRes != defBoolRes) {
4105            getConfig().put(getjapjap_patenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4106        }
4107        
4108        boolRes = getjapjap_lvtaggerenabled_widget().getButton().getSelection();
4109        
4110        
4111        defBoolRes = false;
4112        
4113
4114        if (boolRes != defBoolRes) {
4115            getConfig().put(getjapjap_lvtaggerenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4116        }
4117        
4118        boolRes = getjapjap_rdtaggerenabled_widget().getButton().getSelection();
4119        
4120        
4121        defBoolRes = false;
4122        
4123
4124        if (boolRes != defBoolRes) {
4125            getConfig().put(getjapjap_rdtaggerenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4126        }
4127        
4128        boolRes = getjapjap_cheenabled_widget().getButton().getSelection();
4129        
4130        
4131        defBoolRes = false;
4132        
4133
4134        if (boolRes != defBoolRes) {
4135            getConfig().put(getjapjap_cheenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4136        }
4137        
4138        boolRes = getjapjap_umtenabled_widget().getButton().getSelection();
4139        
4140        
4141        defBoolRes = false;
4142        
4143
4144        if (boolRes != defBoolRes) {
4145            getConfig().put(getjapjap_umtenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4146        }
4147        
4148        boolRes = getjapjap_litenabled_widget().getButton().getSelection();
4149        
4150        
4151        defBoolRes = false;
4152        
4153
4154        if (boolRes != defBoolRes) {
4155            getConfig().put(getjapjap_litenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4156        }
4157        
4158        boolRes = getjapjap_aetenabled_widget().getButton().getSelection();
4159        
4160        
4161        defBoolRes = false;
4162        
4163
4164        if (boolRes != defBoolRes) {
4165            getConfig().put(getjapjap_aetenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4166        }
4167         
4168        stringRes = getjapjap_aetkind_widget().getSelectedAlias();
4169
4170        
4171        defStringRes = "optimistic";
4172        
4173
4174        if (!stringRes.equals(defStringRes)) {
4175            getConfig().put(getjapjap_aetkind_widget().getAlias(), stringRes);
4176        }
4177        
4178        boolRes = getjapjap_dmtenabled_widget().getButton().getSelection();
4179        
4180        
4181        defBoolRes = false;
4182        
4183
4184        if (boolRes != defBoolRes) {
4185            getConfig().put(getjapjap_dmtenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4186        }
4187        
4188        boolRes = getgbenabled_widget().getButton().getSelection();
4189        
4190        
4191        defBoolRes = true;
4192        
4193
4194        if (boolRes != defBoolRes) {
4195            getConfig().put(getgbenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4196        }
4197        
4198        boolRes = getgbgb_a1enabled_widget().getButton().getSelection();
4199        
4200        
4201        defBoolRes = true;
4202        
4203
4204        if (boolRes != defBoolRes) {
4205            getConfig().put(getgbgb_a1enabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4206        }
4207        
4208        boolRes = getgbgb_a1only_stack_locals_widget().getButton().getSelection();
4209        
4210        
4211        defBoolRes = true;
4212        
4213
4214        if (boolRes != defBoolRes) {
4215            getConfig().put(getgbgb_a1only_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
4216        }
4217        
4218        boolRes = getgbgb_cfenabled_widget().getButton().getSelection();
4219        
4220        
4221        defBoolRes = true;
4222        
4223
4224        if (boolRes != defBoolRes) {
4225            getConfig().put(getgbgb_cfenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4226        }
4227        
4228        boolRes = getgbgb_a2enabled_widget().getButton().getSelection();
4229        
4230        
4231        defBoolRes = true;
4232        
4233
4234        if (boolRes != defBoolRes) {
4235            getConfig().put(getgbgb_a2enabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4236        }
4237        
4238        boolRes = getgbgb_a2only_stack_locals_widget().getButton().getSelection();
4239        
4240        
4241        defBoolRes = true;
4242        
4243
4244        if (boolRes != defBoolRes) {
4245            getConfig().put(getgbgb_a2only_stack_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
4246        }
4247        
4248        boolRes = getgbgb_uleenabled_widget().getButton().getSelection();
4249        
4250        
4251        defBoolRes = true;
4252        
4253
4254        if (boolRes != defBoolRes) {
4255            getConfig().put(getgbgb_uleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4256        }
4257        
4258        boolRes = getgopenabled_widget().getButton().getSelection();
4259        
4260        
4261        defBoolRes = false;
4262        
4263
4264        if (boolRes != defBoolRes) {
4265            getConfig().put(getgopenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4266        }
4267        
4268        boolRes = getbbenabled_widget().getButton().getSelection();
4269        
4270        
4271        defBoolRes = true;
4272        
4273
4274        if (boolRes != defBoolRes) {
4275            getConfig().put(getbbenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4276        }
4277        
4278        boolRes = getbbbb_lsoenabled_widget().getButton().getSelection();
4279        
4280        
4281        defBoolRes = true;
4282        
4283
4284        if (boolRes != defBoolRes) {
4285            getConfig().put(getbbbb_lsoenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4286        }
4287        
4288        boolRes = getbbbb_lsodebug_widget().getButton().getSelection();
4289        
4290        
4291        defBoolRes = false;
4292        
4293
4294        if (boolRes != defBoolRes) {
4295            getConfig().put(getbbbb_lsodebug_widget().getAlias(), new Boolean JavaDoc(boolRes));
4296        }
4297        
4298        boolRes = getbbbb_lsointer_widget().getButton().getSelection();
4299        
4300        
4301        defBoolRes = false;
4302        
4303
4304        if (boolRes != defBoolRes) {
4305            getConfig().put(getbbbb_lsointer_widget().getAlias(), new Boolean JavaDoc(boolRes));
4306        }
4307        
4308        boolRes = getbbbb_lsosl_widget().getButton().getSelection();
4309        
4310        
4311        defBoolRes = true;
4312        
4313
4314        if (boolRes != defBoolRes) {
4315            getConfig().put(getbbbb_lsosl_widget().getAlias(), new Boolean JavaDoc(boolRes));
4316        }
4317        
4318        boolRes = getbbbb_lsosl2_widget().getButton().getSelection();
4319        
4320        
4321        defBoolRes = false;
4322        
4323
4324        if (boolRes != defBoolRes) {
4325            getConfig().put(getbbbb_lsosl2_widget().getAlias(), new Boolean JavaDoc(boolRes));
4326        }
4327        
4328        boolRes = getbbbb_lsosll_widget().getButton().getSelection();
4329        
4330        
4331        defBoolRes = true;
4332        
4333
4334        if (boolRes != defBoolRes) {
4335            getConfig().put(getbbbb_lsosll_widget().getAlias(), new Boolean JavaDoc(boolRes));
4336        }
4337        
4338        boolRes = getbbbb_lsosll2_widget().getButton().getSelection();
4339        
4340        
4341        defBoolRes = false;
4342        
4343
4344        if (boolRes != defBoolRes) {
4345            getConfig().put(getbbbb_lsosll2_widget().getAlias(), new Boolean JavaDoc(boolRes));
4346        }
4347        
4348        boolRes = getbbbb_phoenabled_widget().getButton().getSelection();
4349        
4350        
4351        defBoolRes = true;
4352        
4353
4354        if (boolRes != defBoolRes) {
4355            getConfig().put(getbbbb_phoenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4356        }
4357        
4358        boolRes = getbbbb_uleenabled_widget().getButton().getSelection();
4359        
4360        
4361        defBoolRes = true;
4362        
4363
4364        if (boolRes != defBoolRes) {
4365            getConfig().put(getbbbb_uleenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4366        }
4367        
4368        boolRes = getbbbb_lpenabled_widget().getButton().getSelection();
4369        
4370        
4371        defBoolRes = true;
4372        
4373
4374        if (boolRes != defBoolRes) {
4375            getConfig().put(getbbbb_lpenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4376        }
4377        
4378        boolRes = getbbbb_lpunsplit_original_locals_widget().getButton().getSelection();
4379        
4380        
4381        defBoolRes = false;
4382        
4383
4384        if (boolRes != defBoolRes) {
4385            getConfig().put(getbbbb_lpunsplit_original_locals_widget().getAlias(), new Boolean JavaDoc(boolRes));
4386        }
4387        
4388        boolRes = getbopenabled_widget().getButton().getSelection();
4389        
4390        
4391        defBoolRes = false;
4392        
4393
4394        if (boolRes != defBoolRes) {
4395            getConfig().put(getbopenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4396        }
4397        
4398        boolRes = gettagenabled_widget().getButton().getSelection();
4399        
4400        
4401        defBoolRes = true;
4402        
4403
4404        if (boolRes != defBoolRes) {
4405            getConfig().put(gettagenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4406        }
4407        
4408        boolRes = gettagtag_lnenabled_widget().getButton().getSelection();
4409        
4410        
4411        defBoolRes = true;
4412        
4413
4414        if (boolRes != defBoolRes) {
4415            getConfig().put(gettagtag_lnenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4416        }
4417        
4418        boolRes = gettagtag_anenabled_widget().getButton().getSelection();
4419        
4420        
4421        defBoolRes = false;
4422        
4423
4424        if (boolRes != defBoolRes) {
4425            getConfig().put(gettagtag_anenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4426        }
4427        
4428        boolRes = gettagtag_depenabled_widget().getButton().getSelection();
4429        
4430        
4431        defBoolRes = false;
4432        
4433
4434        if (boolRes != defBoolRes) {
4435            getConfig().put(gettagtag_depenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4436        }
4437        
4438        boolRes = gettagtag_fieldrwenabled_widget().getButton().getSelection();
4439        
4440        
4441        defBoolRes = false;
4442        
4443
4444        if (boolRes != defBoolRes) {
4445            getConfig().put(gettagtag_fieldrwenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4446        }
4447        
4448        boolRes = getdbenabled_widget().getButton().getSelection();
4449        
4450        
4451        defBoolRes = true;
4452        
4453
4454        if (boolRes != defBoolRes) {
4455            getConfig().put(getdbenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4456        }
4457        
4458        boolRes = getdbdb_transformationsenabled_widget().getButton().getSelection();
4459        
4460        
4461        defBoolRes = true;
4462        
4463
4464        if (boolRes != defBoolRes) {
4465            getConfig().put(getdbdb_transformationsenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4466        }
4467        
4468        boolRes = getdbdb_renamerenabled_widget().getButton().getSelection();
4469        
4470        
4471        defBoolRes = false;
4472        
4473
4474        if (boolRes != defBoolRes) {
4475            getConfig().put(getdbdb_renamerenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4476        }
4477        
4478        boolRes = getdbdb_renamerremove_fully_qualified_widget().getButton().getSelection();
4479        
4480        
4481        defBoolRes = false;
4482        
4483
4484        if (boolRes != defBoolRes) {
4485            getConfig().put(getdbdb_renamerremove_fully_qualified_widget().getAlias(), new Boolean JavaDoc(boolRes));
4486        }
4487        
4488        boolRes = getdbdb_deobfuscateenabled_widget().getButton().getSelection();
4489        
4490        
4491        defBoolRes = true;
4492        
4493
4494        if (boolRes != defBoolRes) {
4495            getConfig().put(getdbdb_deobfuscateenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4496        }
4497        
4498        boolRes = getdbdb_force_recompileenabled_widget().getButton().getSelection();
4499        
4500        
4501        defBoolRes = true;
4502        
4503
4504        if (boolRes != defBoolRes) {
4505            getConfig().put(getdbdb_force_recompileenabled_widget().getAlias(), new Boolean JavaDoc(boolRes));
4506        }
4507        
4508        boolRes = getApplication_Mode_Optionsinclude_all_widget().getButton().getSelection();
4509        
4510        
4511        defBoolRes = false;
4512        
4513
4514        if (boolRes != defBoolRes) {
4515            getConfig().put(getApplication_Mode_Optionsinclude_all_widget().getAlias(), new Boolean JavaDoc(boolRes));
4516        }
4517        
4518        stringRes = getApplication_Mode_Optionsinclude_widget().getText().getText();
4519        
4520        defStringRes = "";
4521        
4522
4523            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
4524            getConfig().put(getApplication_Mode_Optionsinclude_widget().getAlias(), stringRes);
4525        }
4526        
4527        stringRes = getApplication_Mode_Optionsexclude_widget().getText().getText();
4528        
4529        defStringRes = "";
4530        
4531
4532            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
4533            getConfig().put(getApplication_Mode_Optionsexclude_widget().getAlias(), stringRes);
4534        }
4535        
4536        stringRes = getApplication_Mode_Optionsdynamic_class_widget().getText().getText();
4537        
4538        defStringRes = "";
4539        
4540
4541            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
4542            getConfig().put(getApplication_Mode_Optionsdynamic_class_widget().getAlias(), stringRes);
4543        }
4544        
4545        stringRes = getApplication_Mode_Optionsdynamic_dir_widget().getText().getText();
4546        
4547        defStringRes = "";
4548        
4549
4550            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
4551            getConfig().put(getApplication_Mode_Optionsdynamic_dir_widget().getAlias(), stringRes);
4552        }
4553        
4554        stringRes = getApplication_Mode_Optionsdynamic_package_widget().getText().getText();
4555        
4556        defStringRes = "";
4557        
4558
4559            if ( (!(stringRes.equals(defStringRes))) && (stringRes != null) && (stringRes.length() != 0)) {
4560            getConfig().put(getApplication_Mode_Optionsdynamic_package_widget().getAlias(), stringRes);
4561        }
4562        
4563        boolRes = getInput_Attribute_Optionskeep_line_number_widget().getButton().getSelection();
4564        
4565        
4566        defBoolRes = false;
4567        
4568
4569        if (boolRes != defBoolRes) {
4570            getConfig().put(getInput_Attribute_Optionskeep_line_number_widget().getAlias(), new Boolean JavaDoc(boolRes));
4571        }
4572        
4573        boolRes = getInput_Attribute_Optionskeep_offset_widget().getButton().getSelection();
4574        
4575        
4576        defBoolRes = false;
4577        
4578
4579        if (boolRes != defBoolRes) {
4580            getConfig().put(getInput_Attribute_Optionskeep_offset_widget().getAlias(), new Boolean JavaDoc(boolRes));
4581        }
4582        
4583        boolRes = getAnnotation_Optionsannot_purity_widget().getButton().getSelection();
4584        
4585        
4586        defBoolRes = false;
4587        
4588
4589        if (boolRes != defBoolRes) {
4590            getConfig().put(getAnnotation_Optionsannot_purity_widget().getAlias(), new Boolean JavaDoc(boolRes));
4591        }
4592        
4593        boolRes = getAnnotation_Optionsannot_nullpointer_widget().getButton().getSelection();
4594        
4595        
4596        defBoolRes = false;
4597        
4598
4599        if (boolRes != defBoolRes) {
4600            getConfig().put(getAnnotation_Optionsannot_nullpointer_widget().getAlias(), new Boolean JavaDoc(boolRes));
4601        }
4602        
4603        boolRes = getAnnotation_Optionsannot_arraybounds_widget().getButton().getSelection();
4604        
4605        
4606        defBoolRes = false;
4607        
4608
4609        if (boolRes != defBoolRes) {
4610            getConfig().put(getAnnotation_Optionsannot_arraybounds_widget().getAlias(), new Boolean JavaDoc(boolRes));
4611        }
4612        
4613        boolRes = getAnnotation_Optionsannot_side_effect_widget().getButton().getSelection();
4614        
4615        
4616        defBoolRes = false;
4617        
4618
4619        if (boolRes != defBoolRes) {
4620            getConfig().put(getAnnotation_Optionsannot_side_effect_widget().getAlias(), new Boolean JavaDoc(boolRes));
4621        }
4622        
4623        boolRes = getAnnotation_Optionsannot_fieldrw_widget().getButton().getSelection();
4624        
4625        
4626        defBoolRes = false;
4627        
4628
4629        if (boolRes != defBoolRes) {
4630            getConfig().put(getAnnotation_Optionsannot_fieldrw_widget().getAlias(), new Boolean JavaDoc(boolRes));
4631        }
4632        
4633        boolRes = getMiscellaneous_Optionstime_widget().getButton().getSelection();
4634        
4635        
4636        defBoolRes = false;
4637        
4638
4639        if (boolRes != defBoolRes) {
4640            getConfig().put(getMiscellaneous_Optionstime_widget().getAlias(), new Boolean JavaDoc(boolRes));
4641        }
4642        
4643        boolRes = getMiscellaneous_Optionssubtract_gc_widget().getButton().getSelection();
4644        
4645        
4646        defBoolRes = false;
4647        
4648
4649        if (boolRes != defBoolRes) {
4650            getConfig().put(getMiscellaneous_Optionssubtract_gc_widget().getAlias(), new Boolean JavaDoc(boolRes));
4651        }
4652        
4653        
4654        setSootMainClass(getSootMainClassWidget().getText().getText());
4655    }
4656
4657    protected HashMap savePressed() {
4658
4659        createNewConfig();
4660        
4661        return getConfig();
4662    }
4663    
4664
4665
4666    /**
4667     * the initial input of selection tree corresponds to each section
4668     * at some point sections will have sub-sections which will be
4669     * children of branches (ie phase - options)
4670     */

4671    protected SootOption getInitialInput() {
4672        SootOption root = new SootOption("", "");
4673        SootOption parent;
4674        SootOption subParent;
4675        SootOption subSectParent;
4676        
4677
4678        
4679        SootOption General_Options_branch = new SootOption("General Options", "General_Options");
4680        root.addChild(General_Options_branch);
4681        parent = General_Options_branch;
4682        
4683        SootOption Input_Options_branch = new SootOption("Input Options", "Input_Options");
4684        root.addChild(Input_Options_branch);
4685        parent = Input_Options_branch;
4686        
4687        SootOption Output_Options_branch = new SootOption("Output Options", "Output_Options");
4688        root.addChild(Output_Options_branch);
4689        parent = Output_Options_branch;
4690        
4691        SootOption Processing_Options_branch = new SootOption("Processing Options", "Processing_Options");
4692        root.addChild(Processing_Options_branch);
4693        parent = Processing_Options_branch;
4694        
4695        SootOption Phase_Options_branch = new SootOption("Phase Options", "p");
4696        root.addChild(Phase_Options_branch);
4697
4698        parent = Phase_Options_branch;
4699
4700        
4701        
4702        //Phase Options
4703
//Jimple Body Creation
4704
SootOption jb_branch = new SootOption("Jimple Body Creation", "jb");
4705            parent.addChild(jb_branch);
4706            subParent = jb_branch;
4707
4708
4709            
4710            SootOption jb_jb_ls_branch = new SootOption("Local Splitter", "jbjb_ls");
4711            subParent.addChild(jb_jb_ls_branch);
4712
4713
4714            
4715
4716            
4717            subSectParent = jb_jb_ls_branch;
4718            
4719            
4720            SootOption jb_jb_a_branch = new SootOption("Jimple Local Aggregator", "jbjb_a");
4721            subParent.addChild(jb_jb_a_branch);
4722
4723
4724            
4725
4726            
4727            subSectParent = jb_jb_a_branch;
4728            
4729            
4730            SootOption jb_jb_ule_branch = new SootOption("Unused Local Eliminator", "jbjb_ule");
4731            subParent.addChild(jb_jb_ule_branch);
4732
4733
4734            
4735
4736            
4737            subSectParent = jb_jb_ule_branch;
4738            
4739            
4740            SootOption jb_jb_tr_branch = new SootOption("Type Assigner", "jbjb_tr");
4741            subParent.addChild(jb_jb_tr_branch);
4742
4743
4744            
4745
4746            
4747            subSectParent = jb_jb_tr_branch;
4748            
4749            
4750            SootOption jb_jb_ulp_branch = new SootOption("Unsplit-originals Local Packer", "jbjb_ulp");
4751            subParent.addChild(jb_jb_ulp_branch);
4752
4753
4754            
4755
4756            
4757            subSectParent = jb_jb_ulp_branch;
4758            
4759            
4760            SootOption jb_jb_lns_branch = new SootOption("Local Name Standardizer", "jbjb_lns");
4761            subParent.addChild(jb_jb_lns_branch);
4762
4763
4764            
4765
4766            
4767            subSectParent = jb_jb_lns_branch;
4768            
4769            
4770            SootOption jb_jb_cp_branch = new SootOption("Copy Propagator", "jbjb_cp");
4771            subParent.addChild(jb_jb_cp_branch);
4772
4773
4774            
4775
4776            
4777            subSectParent = jb_jb_cp_branch;
4778            
4779            
4780            SootOption jb_jb_dae_branch = new SootOption("Dead Assignment Eliminator", "jbjb_dae");
4781            subParent.addChild(jb_jb_dae_branch);
4782
4783
4784            
4785
4786            
4787            subSectParent = jb_jb_dae_branch;
4788            
4789            
4790            SootOption jb_jb_cp_ule_branch = new SootOption("Post-copy propagation Unused Local Eliminator", "jbjb_cp_ule");
4791            subParent.addChild(jb_jb_cp_ule_branch);
4792
4793
4794            
4795
4796            
4797            subSectParent = jb_jb_cp_ule_branch;
4798            
4799            
4800            SootOption jb_jb_lp_branch = new SootOption("Local Packer", "jbjb_lp");
4801            subParent.addChild(jb_jb_lp_branch);
4802
4803
4804            
4805
4806            
4807            subSectParent = jb_jb_lp_branch;
4808            
4809            
4810            SootOption jb_jb_ne_branch = new SootOption("Nop Eliminator", "jbjb_ne");
4811            subParent.addChild(jb_jb_ne_branch);
4812
4813
4814            
4815
4816            
4817            subSectParent = jb_jb_ne_branch;
4818            
4819            
4820            SootOption jb_jb_uce_branch = new SootOption("Unreachable Code Eliminator", "jbjb_uce");
4821            subParent.addChild(jb_jb_uce_branch);
4822
4823
4824            
4825
4826            
4827            subSectParent = jb_jb_uce_branch;
4828            
4829            
4830            SootOption jb_jb_tt_branch = new SootOption("Trap Tightener", "jbjb_tt");
4831            subParent.addChild(jb_jb_tt_branch);
4832
4833
4834            
4835
4836            
4837            subSectParent = jb_jb_tt_branch;
4838            
4839            
4840            //Java To Jimple Body Creation
4841
SootOption jj_branch = new SootOption("Java To Jimple Body Creation", "jj");
4842            parent.addChild(jj_branch);
4843            subParent = jj_branch;
4844
4845
4846            
4847            SootOption jj_jj_ls_branch = new SootOption("Local Splitter", "jjjj_ls");
4848            subParent.addChild(jj_jj_ls_branch);
4849
4850
4851            
4852
4853            
4854            subSectParent = jj_jj_ls_branch;
4855            
4856            
4857            SootOption jj_jj_a_branch = new SootOption("Jimple Local Aggregator", "jjjj_a");
4858            subParent.addChild(jj_jj_a_branch);
4859
4860
4861            
4862
4863            
4864            subSectParent = jj_jj_a_branch;
4865            
4866            
4867            SootOption jj_jj_ule_branch = new SootOption("Unused Local Eliminator", "jjjj_ule");
4868            subParent.addChild(jj_jj_ule_branch);
4869
4870
4871            
4872
4873            
4874            subSectParent = jj_jj_ule_branch;
4875            
4876            
4877            SootOption jj_jj_tr_branch = new SootOption("Type Assigner", "jjjj_tr");
4878            subParent.addChild(jj_jj_tr_branch);
4879
4880
4881            
4882
4883            
4884            subSectParent = jj_jj_tr_branch;
4885            
4886            
4887            SootOption jj_jj_ulp_branch = new SootOption("Unsplit-originals Local Packer", "jjjj_ulp");
4888            subParent.addChild(jj_jj_ulp_branch);
4889
4890
4891            
4892
4893            
4894            subSectParent = jj_jj_ulp_branch;
4895            
4896            
4897            SootOption jj_jj_lns_branch = new SootOption("Local Name Standardizer", "jjjj_lns");
4898            subParent.addChild(jj_jj_lns_branch);
4899
4900
4901            
4902
4903            
4904            subSectParent = jj_jj_lns_branch;
4905            
4906            
4907            SootOption jj_jj_cp_branch = new SootOption("Copy Propagator", "jjjj_cp");
4908            subParent.addChild(jj_jj_cp_branch);
4909
4910
4911            
4912
4913            
4914            subSectParent = jj_jj_cp_branch;
4915            
4916            
4917            SootOption jj_jj_dae_branch = new SootOption("Dead Assignment Eliminator", "jjjj_dae");
4918            subParent.addChild(jj_jj_dae_branch);
4919
4920
4921            
4922
4923            
4924            subSectParent = jj_jj_dae_branch;
4925            
4926            
4927            SootOption jj_jj_cp_ule_branch = new SootOption("Post-copy propagation Unused Local Eliminator", "jjjj_cp_ule");
4928            subParent.addChild(jj_jj_cp_ule_branch);
4929
4930
4931            
4932
4933            
4934            subSectParent = jj_jj_cp_ule_branch;
4935            
4936            
4937            SootOption jj_jj_lp_branch = new SootOption("Local Packer", "jjjj_lp");
4938            subParent.addChild(jj_jj_lp_branch);
4939
4940
4941            
4942
4943            
4944            subSectParent = jj_jj_lp_branch;
4945            
4946            
4947            SootOption jj_jj_ne_branch = new SootOption("Nop Eliminator", "jjjj_ne");
4948            subParent.addChild(jj_jj_ne_branch);
4949
4950
4951            
4952
4953            
4954            subSectParent = jj_jj_ne_branch;
4955            
4956            
4957            SootOption jj_jj_uce_branch = new SootOption("Unreachable Code Eliminator", "jjjj_uce");
4958            subParent.addChild(jj_jj_uce_branch);
4959
4960
4961            
4962
4963            
4964            subSectParent = jj_jj_uce_branch;
4965            
4966            
4967            //Call Graph Constructor
4968
SootOption cg_branch = new SootOption("Call Graph Constructor", "cg");
4969            parent.addChild(cg_branch);
4970            subParent = cg_branch;
4971
4972
4973            
4974            SootOption cg_cg_cha_branch = new SootOption("Class Hierarchy Analysis", "cgcg_cha");
4975            subParent.addChild(cg_cg_cha_branch);
4976
4977
4978            
4979
4980            
4981            subSectParent = cg_cg_cha_branch;
4982            
4983            
4984            SootOption cg_cg_spark_branch = new SootOption("Spark", "cgcg_spark");
4985            subParent.addChild(cg_cg_spark_branch);
4986
4987
4988            
4989
4990            
4991            subSectParent = cg_cg_spark_branch;
4992            
4993            
4994            SootOption cg_Spark_General_Options_branch = new SootOption("Spark General Options", "cgSpark_General_Options");
4995
4996            subSectParent.addChild(cg_Spark_General_Options_branch);
4997            
4998            SootOption cg_Spark_Pointer_Assignment_Graph_Building_Options_branch = new SootOption("Spark Pointer Assignment Graph Building Options", "cgSpark_Pointer_Assignment_Graph_Building_Options");
4999
5000            subSectParent.addChild(cg_Spark_Pointer_Assignment_Graph_Building_Options_branch);
5001            
5002            SootOption cg_Spark_Pointer_Assignment_Graph_Simplification_Options_branch = new SootOption("Spark Pointer Assignment Graph Simplification Options", "cgSpark_Pointer_Assignment_Graph_Simplification_Options");
5003
5004            subSectParent.addChild(cg_Spark_Pointer_Assignment_Graph_Simplification_Options_branch);
5005            
5006            SootOption cg_Spark_Points_To_Set_Flowing_Options_branch = new SootOption("Spark Points-To Set Flowing Options", "cgSpark_Points_To_Set_Flowing_Options");
5007
5008            subSectParent.addChild(cg_Spark_Points_To_Set_Flowing_Options_branch);
5009            
5010            SootOption cg_Spark_Output_Options_branch = new SootOption("Spark Output Options", "cgSpark_Output_Options");
5011
5012            subSectParent.addChild(cg_Spark_Output_Options_branch);
5013            
5014            SootOption cg_cg_paddle_branch = new SootOption("Paddle", "cgcg_paddle");
5015            subParent.addChild(cg_cg_paddle_branch);
5016
5017
5018            
5019
5020            
5021            subSectParent = cg_cg_paddle_branch;
5022            
5023            
5024            SootOption cg_Paddle_General_Options_branch = new SootOption("Paddle General Options", "cgPaddle_General_Options");
5025
5026            subSectParent.addChild(cg_Paddle_General_Options_branch);
5027            
5028            SootOption cg_Paddle_Context_Sensitivity_Options_branch = new SootOption("Paddle Context Sensitivity Options", "cgPaddle_Context_Sensitivity_Options");
5029
5030            subSectParent.addChild(cg_Paddle_Context_Sensitivity_Options_branch);
5031            
5032            SootOption cg_Paddle_Pointer_Assignment_Graph_Building_Options_branch = new SootOption("Paddle Pointer Assignment Graph Building Options", "cgPaddle_Pointer_Assignment_Graph_Building_Options");
5033
5034            subSectParent.addChild(cg_Paddle_Pointer_Assignment_Graph_Building_Options_branch);
5035            
5036            SootOption cg_Paddle_Points_To_Set_Flowing_Options_branch = new SootOption("Paddle Points-To Set Flowing Options", "cgPaddle_Points_To_Set_Flowing_Options");
5037
5038            subSectParent.addChild(cg_Paddle_Points_To_Set_Flowing_Options_branch);
5039            
5040            SootOption cg_Paddle_Output_Options_branch = new SootOption("Paddle Output Options", "cgPaddle_Output_Options");
5041
5042            subSectParent.addChild(cg_Paddle_Output_Options_branch);
5043            
5044            //Whole Shimple Transformation Pack
5045
SootOption wstp_branch = new SootOption("Whole Shimple Transformation Pack", "wstp");
5046            parent.addChild(wstp_branch);
5047            subParent = wstp_branch;
5048
5049
5050            
5051            //Whole Shimple Optimization Pack
5052
SootOption wsop_branch = new SootOption("Whole Shimple Optimization Pack", "wsop");
5053            parent.addChild(wsop_branch);
5054            subParent = wsop_branch;
5055
5056
5057            
5058            //Whole-Jimple Transformation Pack
5059
SootOption wjtp_branch = new SootOption("Whole-Jimple Transformation Pack", "wjtp");
5060            parent.addChild(wjtp_branch);
5061            subParent = wjtp_branch;
5062
5063
5064            
5065            //Whole-Jimple Optimization Pack
5066
SootOption wjop_branch = new SootOption("Whole-Jimple Optimization Pack", "wjop");
5067            parent.addChild(wjop_branch);
5068            subParent = wjop_branch;
5069
5070
5071            
5072            SootOption wjop_wjop_smb_branch = new SootOption("Static Method Binder", "wjopwjop_smb");
5073            subParent.addChild(wjop_wjop_smb_branch);
5074
5075
5076            
5077
5078            
5079            subSectParent = wjop_wjop_smb_branch;
5080            
5081            
5082            SootOption wjop_wjop_si_branch = new SootOption("Static Inliner", "wjopwjop_si");
5083            subParent.addChild(wjop_wjop_si_branch);
5084
5085
5086            
5087
5088            
5089            subSectParent = wjop_wjop_si_branch;
5090            
5091            
5092            //Whole-Jimple Annotation Pack
5093
SootOption wjap_branch = new SootOption("Whole-Jimple Annotation Pack", "wjap");
5094            parent.addChild(wjap_branch);
5095            subParent = wjap_branch;
5096
5097
5098            
5099            SootOption wjap_wjap_ra_branch = new SootOption("Rectangular Array Finder", "wjapwjap_ra");
5100            subParent.addChild(wjap_wjap_ra_branch);
5101
5102
5103            
5104
5105            
5106            subSectParent = wjap_wjap_ra_branch;
5107            
5108            
5109            SootOption wjap_wjap_umt_branch = new SootOption("Unreachable Method Tagger", "wjapwjap_umt");
5110            subParent.addChild(wjap_wjap_umt_branch);
5111
5112
5113            
5114
5115            
5116            subSectParent = wjap_wjap_umt_branch;
5117            
5118            
5119            SootOption wjap_wjap_uft_branch = new SootOption("Unreachable Fields Tagger", "wjapwjap_uft");
5120            subParent.addChild(wjap_wjap_uft_branch);
5121
5122
5123            
5124
5125            
5126            subSectParent = wjap_wjap_uft_branch;
5127            
5128            
5129            SootOption wjap_wjap_tqt_branch = new SootOption("Tightest Qualifiers Tagger", "wjapwjap_tqt");
5130            subParent.addChild(wjap_wjap_tqt_branch);
5131
5132
5133            
5134
5135            
5136            subSectParent = wjap_wjap_tqt_branch;
5137            
5138            
5139            SootOption wjap_wjap_cgg_branch = new SootOption("Call Graph Grapher", "wjapwjap_cgg");
5140            subParent.addChild(wjap_wjap_cgg_branch);
5141
5142
5143            
5144
5145            
5146            subSectParent = wjap_wjap_cgg_branch;
5147            
5148            
5149            SootOption wjap_wjap_purity_branch = new SootOption("Purity Analysis [AM]", "wjapwjap_purity");
5150            subParent.addChild(wjap_wjap_purity_branch);
5151
5152
5153            
5154
5155            
5156            subSectParent = wjap_wjap_purity_branch;
5157            
5158            
5159            //Shimple Control
5160
SootOption shimple_branch = new SootOption("Shimple Control", "shimple");
5161            parent.addChild(shimple_branch);
5162            subParent = shimple_branch;
5163
5164
5165            
5166            //Shimple Transformation Pack
5167
SootOption stp_branch = new SootOption("Shimple Transformation Pack", "stp");
5168            parent.addChild(stp_branch);
5169            subParent = stp_branch;
5170
5171
5172            
5173            //Shimple Optimization Pack
5174
SootOption sop_branch = new SootOption("Shimple Optimization Pack", "sop");
5175            parent.addChild(sop_branch);
5176            subParent = sop_branch;
5177
5178
5179            
5180            SootOption sop_sop_cpf_branch = new SootOption("Shimple Constant Propagator and Folder", "sopsop_cpf");
5181            subParent.addChild(sop_sop_cpf_branch);
5182
5183
5184            
5185
5186            
5187            subSectParent = sop_sop_cpf_branch;
5188            
5189            
5190            //Jimple Transformation Pack
5191
SootOption jtp_branch = new SootOption("Jimple Transformation Pack", "jtp");
5192            parent.addChild(jtp_branch);
5193            subParent = jtp_branch;
5194
5195
5196            
5197            //Jimple Optimization Pack
5198
SootOption jop_branch = new SootOption("Jimple Optimization Pack", "jop");
5199            parent.addChild(jop_branch);
5200            subParent = jop_branch;
5201
5202
5203            
5204            SootOption jop_jop_cse_branch = new SootOption("Common Subexpression Eliminator", "jopjop_cse");
5205            subParent.addChild(jop_jop_cse_branch);
5206
5207
5208            
5209
5210            
5211            subSectParent = jop_jop_cse_branch;
5212            
5213            
5214            SootOption jop_jop_bcm_branch = new SootOption("Busy Code Motion", "jopjop_bcm");
5215            subParent.addChild(jop_jop_bcm_branch);
5216
5217
5218            
5219
5220            
5221            subSectParent = jop_jop_bcm_branch;
5222            
5223            
5224            SootOption jop_jop_lcm_branch = new SootOption("Lazy Code Motion", "jopjop_lcm");
5225            subParent.addChild(jop_jop_lcm_branch);
5226
5227
5228            
5229
5230            
5231            subSectParent = jop_jop_lcm_branch;
5232            
5233            
5234            SootOption jop_jop_cp_branch = new SootOption("Copy Propagator", "jopjop_cp");
5235            subParent.addChild(jop_jop_cp_branch);
5236
5237
5238            
5239
5240            
5241            subSectParent = jop_jop_cp_branch;
5242            
5243            
5244            SootOption jop_jop_cpf_branch = new SootOption("Jimple Constant Propagator and Folder", "jopjop_cpf");
5245            subParent.addChild(jop_jop_cpf_branch);
5246
5247
5248            
5249
5250            
5251            subSectParent = jop_jop_cpf_branch;
5252            
5253            
5254            SootOption jop_jop_cbf_branch = new SootOption("Conditional Branch Folder", "jopjop_cbf");
5255            subParent.addChild(jop_jop_cbf_branch);
5256
5257
5258            
5259
5260            
5261            subSectParent = jop_jop_cbf_branch;
5262            
5263            
5264            SootOption jop_jop_dae_branch = new SootOption("Dead Assignment Eliminator", "jopjop_dae");
5265            subParent.addChild(jop_jop_dae_branch);
5266
5267
5268            
5269
5270            
5271            subSectParent = jop_jop_dae_branch;
5272            
5273            
5274            SootOption jop_jop_uce1_branch = new SootOption("Unreachable Code Eliminator 1", "jopjop_uce1");
5275            subParent.addChild(jop_jop_uce1_branch);
5276
5277
5278            
5279
5280            
5281            subSectParent = jop_jop_uce1_branch;
5282            
5283            
5284            SootOption jop_jop_ubf1_branch = new SootOption("Unconditional Branch Folder 1", "jopjop_ubf1");
5285            subParent.addChild(jop_jop_ubf1_branch);
5286
5287
5288            
5289
5290            
5291            subSectParent = jop_jop_ubf1_branch;
5292            
5293            
5294            SootOption jop_jop_uce2_branch = new SootOption("Unreachable Code Eliminator 2", "jopjop_uce2");
5295            subParent.addChild(jop_jop_uce2_branch);
5296
5297
5298            
5299
5300            
5301            subSectParent = jop_jop_uce2_branch;
5302            
5303            
5304            SootOption jop_jop_ubf2_branch = new SootOption("Unconditional Branch Folder 2", "jopjop_ubf2");
5305            subParent.addChild(jop_jop_ubf2_branch);
5306
5307
5308            
5309
5310            
5311            subSectParent = jop_jop_ubf2_branch;
5312            
5313            
5314            SootOption jop_jop_ule_branch = new SootOption("Unused Local Eliminator", "jopjop_ule");
5315            subParent.addChild(jop_jop_ule_branch);
5316
5317
5318            
5319
5320            
5321            subSectParent = jop_jop_ule_branch;
5322            
5323            
5324            //Jimple Annotation Pack
5325
SootOption jap_branch = new SootOption("Jimple Annotation Pack", "jap");
5326            parent.addChild(jap_branch);
5327            subParent = jap_branch;
5328
5329
5330            
5331            SootOption jap_jap_npc_branch = new SootOption("Null Pointer Checker", "japjap_npc");
5332            subParent.addChild(jap_jap_npc_branch);
5333
5334
5335            
5336
5337            
5338            subSectParent = jap_jap_npc_branch;
5339            
5340            
5341            SootOption jap_jap_npcolorer_branch = new SootOption("Null Pointer Colourer", "japjap_npcolorer");
5342            subParent.addChild(jap_jap_npcolorer_branch);
5343
5344
5345            
5346
5347            
5348            subSectParent = jap_jap_npcolorer_branch;
5349            
5350            
5351            SootOption jap_jap_abc_branch = new SootOption("Array Bound Checker", "japjap_abc");
5352            subParent.addChild(jap_jap_abc_branch);
5353
5354
5355            
5356
5357            
5358            subSectParent = jap_jap_abc_branch;
5359            
5360            
5361            SootOption jap_jap_profiling_branch = new SootOption("Profiling Generator", "japjap_profiling");
5362            subParent.addChild(jap_jap_profiling_branch);
5363
5364
5365            
5366
5367            
5368            subSectParent = jap_jap_profiling_branch;
5369            
5370            
5371            SootOption jap_jap_sea_branch = new SootOption("Side Effect tagger", "japjap_sea");
5372            subParent.addChild(jap_jap_sea_branch);
5373
5374
5375            
5376
5377            
5378            subSectParent = jap_jap_sea_branch;
5379            
5380            
5381            SootOption jap_jap_fieldrw_branch = new SootOption("Field Read/Write Tagger", "japjap_fieldrw");
5382            subParent.addChild(jap_jap_fieldrw_branch);
5383
5384
5385            
5386
5387            
5388            subSectParent = jap_jap_fieldrw_branch;
5389            
5390            
5391            SootOption jap_jap_cgtagger_branch = new SootOption("Call Graph Tagger", "japjap_cgtagger");
5392            subParent.addChild(jap_jap_cgtagger_branch);
5393
5394
5395            
5396
5397            
5398            subSectParent = jap_jap_cgtagger_branch;
5399            
5400            
5401            SootOption jap_jap_parity_branch = new SootOption("Parity Tagger", "japjap_parity");
5402            subParent.addChild(jap_jap_parity_branch);
5403
5404
5405            
5406
5407            
5408            subSectParent = jap_jap_parity_branch;
5409            
5410            
5411            SootOption jap_jap_pat_branch = new SootOption("Parameter Alias Tagger", "japjap_pat");
5412            subParent.addChild(jap_jap_pat_branch);
5413
5414
5415            
5416
5417            
5418            subSectParent = jap_jap_pat_branch;
5419            
5420            
5421            SootOption jap_jap_lvtagger_branch = new SootOption("Live Variables Tagger", "japjap_lvtagger");
5422            subParent.addChild(jap_jap_lvtagger_branch);
5423
5424
5425            
5426
5427            
5428            subSectParent = jap_jap_lvtagger_branch;
5429            
5430            
5431            SootOption jap_jap_rdtagger_branch = new SootOption("Reaching Defs Tagger", "japjap_rdtagger");
5432            subParent.addChild(jap_jap_rdtagger_branch);
5433
5434
5435            
5436
5437            
5438            subSectParent = jap_jap_rdtagger_branch;
5439            
5440            
5441            SootOption jap_jap_che_branch = new SootOption("Cast Elimination Check Tagger", "japjap_che");
5442            subParent.addChild(jap_jap_che_branch);
5443
5444
5445            
5446
5447            
5448            subSectParent = jap_jap_che_branch;
5449            
5450            
5451            SootOption jap_jap_umt_branch = new SootOption("Unreachable Method Transformer", "japjap_umt");
5452            subParent.addChild(jap_jap_umt_branch);
5453
5454
5455            
5456
5457            
5458            subSectParent = jap_jap_umt_branch;
5459            
5460            
5461            SootOption jap_jap_lit_branch = new SootOption("Loop Invariant Tagger", "japjap_lit");
5462            subParent.addChild(jap_jap_lit_branch);
5463
5464
5465            
5466
5467            
5468            subSectParent = jap_jap_lit_branch;
5469            
5470            
5471            SootOption jap_jap_aet_branch = new SootOption("Available Expressions Tagger", "japjap_aet");
5472            subParent.addChild(jap_jap_aet_branch);
5473
5474
5475            
5476
5477            
5478            subSectParent = jap_jap_aet_branch;
5479            
5480            
5481            SootOption jap_jap_dmt_branch = new SootOption("Dominators Tagger", "japjap_dmt");
5482            subParent.addChild(jap_jap_dmt_branch);
5483
5484
5485            
5486
5487            
5488            subSectParent = jap_jap_dmt_branch;
5489            
5490            
5491            //Grimp Body Creation
5492
SootOption gb_branch = new SootOption("Grimp Body Creation", "gb");
5493            parent.addChild(gb_branch);
5494            subParent = gb_branch;
5495
5496
5497            
5498            SootOption gb_gb_a1_branch = new SootOption("Grimp Pre-folding Aggregator", "gbgb_a1");
5499            subParent.addChild(gb_gb_a1_branch);
5500
5501
5502            
5503
5504            
5505            subSectParent = gb_gb_a1_branch;
5506            
5507            
5508            SootOption gb_gb_cf_branch = new SootOption("Grimp Constructor Folder", "gbgb_cf");
5509            subParent.addChild(gb_gb_cf_branch);
5510
5511
5512            
5513
5514            
5515            subSectParent = gb_gb_cf_branch;
5516            
5517            
5518            SootOption gb_gb_a2_branch = new SootOption("Grimp Post-folding Aggregator", "gbgb_a2");
5519            subParent.addChild(gb_gb_a2_branch);
5520
5521
5522            
5523
5524            
5525            subSectParent = gb_gb_a2_branch;
5526            
5527            
5528            SootOption gb_gb_ule_branch = new SootOption("Grimp Unused Local Eliminator", "gbgb_ule");
5529            subParent.addChild(gb_gb_ule_branch);
5530
5531
5532            
5533
5534            
5535            subSectParent = gb_gb_ule_branch;
5536            
5537            
5538            //Grimp Optimization
5539
SootOption gop_branch = new SootOption("Grimp Optimization", "gop");
5540            parent.addChild(gop_branch);
5541            subParent = gop_branch;
5542
5543
5544            
5545            //Baf Body Creation
5546
SootOption bb_branch = new SootOption("Baf Body Creation", "bb");
5547            parent.addChild(bb_branch);
5548            subParent = bb_branch;
5549
5550
5551            
5552            SootOption bb_bb_lso_branch = new SootOption("Load Store Optimizer", "bbbb_lso");
5553            subParent.addChild(bb_bb_lso_branch);
5554
5555
5556            
5557
5558            
5559            subSectParent = bb_bb_lso_branch;
5560            
5561            
5562            SootOption bb_bb_pho_branch = new SootOption("Peephole Optimizer", "bbbb_pho");
5563            subParent.addChild(bb_bb_pho_branch);
5564
5565
5566            
5567
5568            
5569            subSectParent = bb_bb_pho_branch;
5570            
5571            
5572            SootOption bb_bb_ule_branch = new SootOption("Unused Local Eliminator", "bbbb_ule");
5573            subParent.addChild(bb_bb_ule_branch);
5574
5575
5576            
5577
5578            
5579            subSectParent = bb_bb_ule_branch;
5580            
5581            
5582            SootOption bb_bb_lp_branch = new SootOption("Local Packer", "bbbb_lp");
5583            subParent.addChild(bb_bb_lp_branch);
5584
5585
5586            
5587
5588            
5589            subSectParent = bb_bb_lp_branch;
5590            
5591            
5592            //Baf Optimization
5593
SootOption bop_branch = new SootOption("Baf Optimization", "bop");
5594            parent.addChild(bop_branch);
5595            subParent = bop_branch;
5596
5597
5598            
5599            //Tag Aggregator
5600
SootOption tag_branch = new SootOption("Tag Aggregator", "tag");
5601            parent.addChild(tag_branch);
5602            subParent = tag_branch;
5603
5604
5605            
5606            SootOption tag_tag_ln_branch = new SootOption("Line Number Tag Aggregator", "tagtag_ln");
5607            subParent.addChild(tag_tag_ln_branch);
5608
5609
5610            
5611
5612            
5613            subSectParent = tag_tag_ln_branch;
5614            
5615            
5616            SootOption tag_tag_an_branch = new SootOption("Array Bounds and Null Pointer Check Tag Aggregator", "tagtag_an");
5617            subParent.addChild(tag_tag_an_branch);
5618
5619
5620            
5621
5622            
5623            subSectParent = tag_tag_an_branch;
5624            
5625            
5626            SootOption tag_tag_dep_branch = new SootOption("Dependence Tag Aggregator", "tagtag_dep");
5627            subParent.addChild(tag_tag_dep_branch);
5628
5629
5630            
5631
5632            
5633            subSectParent = tag_tag_dep_branch;
5634            
5635            
5636            SootOption tag_tag_fieldrw_branch = new SootOption("Field Read/Write Tag Aggregator", "tagtag_fieldrw");
5637            subParent.addChild(tag_tag_fieldrw_branch);
5638
5639
5640            
5641
5642            
5643            subSectParent = tag_tag_fieldrw_branch;
5644            
5645            
5646            //Dava Body Creation
5647
SootOption db_branch = new SootOption("Dava Body Creation", "db");
5648            parent.addChild(db_branch);
5649            subParent = db_branch;
5650
5651
5652            
5653            SootOption db_db_transformations_branch = new SootOption("Transformations", "dbdb_transformations");
5654            subParent.addChild(db_db_transformations_branch);
5655
5656
5657            
5658
5659            
5660            subSectParent = db_db_transformations_branch;
5661            
5662            
5663            SootOption db_db_renamer_branch = new SootOption("Renamer", "dbdb_renamer");
5664            subParent.addChild(db_db_renamer_branch);
5665
5666
5667            
5668
5669            
5670            subSectParent = db_db_renamer_branch;
5671            
5672            
5673            SootOption db_db_deobfuscate_branch = new SootOption("De-obfuscate", "dbdb_deobfuscate");
5674            subParent.addChild(db_db_deobfuscate_branch);
5675
5676
5677            
5678
5679            
5680            subSectParent = db_db_deobfuscate_branch;
5681            
5682            
5683            SootOption db_db_force_recompile_branch = new SootOption("Force Recompilability", "dbdb_force_recompile");
5684            subParent.addChild(db_db_force_recompile_branch);
5685
5686
5687            
5688
5689            
5690            subSectParent = db_db_force_recompile_branch;
5691            
5692            
5693        SootOption Application_Mode_Options_branch = new SootOption("Application Mode Options", "Application_Mode_Options");
5694        root.addChild(Application_Mode_Options_branch);
5695        parent = Application_Mode_Options_branch;
5696        
5697        SootOption Input_Attribute_Options_branch = new SootOption("Input Attribute Options", "Input_Attribute_Options");
5698        root.addChild(Input_Attribute_Options_branch);
5699        parent = Input_Attribute_Options_branch;
5700        
5701        SootOption Annotation_Options_branch = new SootOption("Annotation Options", "Annotation_Options");
5702        root.addChild(Annotation_Options_branch);
5703        parent = Annotation_Options_branch;
5704        
5705        SootOption Miscellaneous_Options_branch = new SootOption("Miscellaneous Options", "Miscellaneous_Options");
5706        root.addChild(Miscellaneous_Options_branch);
5707        parent = Miscellaneous_Options_branch;
5708        
5709
5710        addOtherBranches(root);
5711        return root;
5712    
5713    }
5714
5715
5716        
5717        
5718    private BooleanOptionWidget General_Optionshelp_widget;
5719    
5720    private void setGeneral_Optionshelp_widget(BooleanOptionWidget widget) {
5721        General_Optionshelp_widget = widget;
5722    }
5723    
5724    public BooleanOptionWidget getGeneral_Optionshelp_widget() {
5725        return General_Optionshelp_widget;
5726    }
5727    
5728    private BooleanOptionWidget General_Optionsphase_list_widget;
5729    
5730    private void setGeneral_Optionsphase_list_widget(BooleanOptionWidget widget) {
5731        General_Optionsphase_list_widget = widget;
5732    }
5733    
5734    public BooleanOptionWidget getGeneral_Optionsphase_list_widget() {
5735        return General_Optionsphase_list_widget;
5736    }
5737    
5738    private BooleanOptionWidget General_Optionsversion_widget;
5739    
5740    private void setGeneral_Optionsversion_widget(BooleanOptionWidget widget) {
5741        General_Optionsversion_widget = widget;
5742    }
5743    
5744    public BooleanOptionWidget getGeneral_Optionsversion_widget() {
5745        return General_Optionsversion_widget;
5746    }
5747    
5748    private BooleanOptionWidget General_Optionsverbose_widget;
5749    
5750    private void setGeneral_Optionsverbose_widget(BooleanOptionWidget widget) {
5751        General_Optionsverbose_widget = widget;
5752    }
5753    
5754    public BooleanOptionWidget getGeneral_Optionsverbose_widget() {
5755        return General_Optionsverbose_widget;
5756    }
5757    
5758    private BooleanOptionWidget General_Optionsinteractive_mode_widget;
5759    
5760    private void setGeneral_Optionsinteractive_mode_widget(BooleanOptionWidget widget) {
5761        General_Optionsinteractive_mode_widget = widget;
5762    }
5763    
5764    public BooleanOptionWidget getGeneral_Optionsinteractive_mode_widget() {
5765        return General_Optionsinteractive_mode_widget;
5766    }
5767    
5768    private BooleanOptionWidget General_Optionsapp_widget;
5769    
5770    private void setGeneral_Optionsapp_widget(BooleanOptionWidget widget) {
5771        General_Optionsapp_widget = widget;
5772    }
5773    
5774    public BooleanOptionWidget getGeneral_Optionsapp_widget() {
5775        return General_Optionsapp_widget;
5776    }
5777    
5778    private BooleanOptionWidget General_Optionswhole_program_widget;
5779    
5780    private void setGeneral_Optionswhole_program_widget(BooleanOptionWidget widget) {
5781        General_Optionswhole_program_widget = widget;
5782    }
5783    
5784    public BooleanOptionWidget getGeneral_Optionswhole_program_widget() {
5785        return General_Optionswhole_program_widget;
5786    }
5787    
5788    private BooleanOptionWidget General_Optionswhole_shimple_widget;
5789    
5790    private void setGeneral_Optionswhole_shimple_widget(BooleanOptionWidget widget) {
5791        General_Optionswhole_shimple_widget = widget;
5792    }
5793    
5794    public BooleanOptionWidget getGeneral_Optionswhole_shimple_widget() {
5795        return General_Optionswhole_shimple_widget;
5796    }
5797    
5798    private BooleanOptionWidget General_Optionsvalidate_widget;
5799    
5800    private void setGeneral_Optionsvalidate_widget(BooleanOptionWidget widget) {
5801        General_Optionsvalidate_widget = widget;
5802    }
5803    
5804    public BooleanOptionWidget getGeneral_Optionsvalidate_widget() {
5805        return General_Optionsvalidate_widget;
5806    }
5807    
5808    private BooleanOptionWidget General_Optionsdebug_widget;
5809    
5810    private void setGeneral_Optionsdebug_widget(BooleanOptionWidget widget) {
5811        General_Optionsdebug_widget = widget;
5812    }
5813    
5814    public BooleanOptionWidget getGeneral_Optionsdebug_widget() {
5815        return General_Optionsdebug_widget;
5816    }
5817    
5818    private BooleanOptionWidget General_Optionsdebug_resolver_widget;
5819    
5820    private void setGeneral_Optionsdebug_resolver_widget(BooleanOptionWidget widget) {
5821        General_Optionsdebug_resolver_widget = widget;
5822    }
5823    
5824    public BooleanOptionWidget getGeneral_Optionsdebug_resolver_widget() {
5825        return General_Optionsdebug_resolver_widget;
5826    }
5827    
5828
5829    private ListOptionWidget General_Optionsphase_help_widget;
5830    
5831    private void setGeneral_Optionsphase_help_widget(ListOptionWidget widget) {
5832        General_Optionsphase_help_widget = widget;
5833    }
5834    
5835    public ListOptionWidget getGeneral_Optionsphase_help_widget() {
5836        return General_Optionsphase_help_widget;
5837    }
5838    
5839    
5840    private BooleanOptionWidget Input_Optionsast_metrics_widget;
5841    
5842    private void setInput_Optionsast_metrics_widget(BooleanOptionWidget widget) {
5843        Input_Optionsast_metrics_widget = widget;
5844    }
5845    
5846    public BooleanOptionWidget getInput_Optionsast_metrics_widget() {
5847        return Input_Optionsast_metrics_widget;
5848    }
5849    
5850    private BooleanOptionWidget Input_Optionsfull_resolver_widget;
5851    
5852    private void setInput_Optionsfull_resolver_widget(BooleanOptionWidget widget) {
5853        Input_Optionsfull_resolver_widget = widget;
5854    }
5855    
5856    public BooleanOptionWidget getInput_Optionsfull_resolver_widget() {
5857        return Input_Optionsfull_resolver_widget;
5858    }
5859    
5860    private BooleanOptionWidget Input_Optionsallow_phantom_refs_widget;
5861    
5862    private void setInput_Optionsallow_phantom_refs_widget(BooleanOptionWidget widget) {
5863        Input_Optionsallow_phantom_refs_widget = widget;
5864    }
5865    
5866    public BooleanOptionWidget getInput_Optionsallow_phantom_refs_widget() {
5867        return Input_Optionsallow_phantom_refs_widget;
5868    }
5869    
5870    private BooleanOptionWidget Input_Optionsuse_old_type_assigner_widget;
5871    
5872    private void setInput_Optionsuse_old_type_assigner_widget(BooleanOptionWidget widget) {
5873        Input_Optionsuse_old_type_assigner_widget = widget;
5874    }
5875    
5876    public BooleanOptionWidget getInput_Optionsuse_old_type_assigner_widget() {
5877        return Input_Optionsuse_old_type_assigner_widget;
5878    }
5879    
5880
5881    private ListOptionWidget Input_Optionsprocess_dir_widget;
5882    
5883    private void setInput_Optionsprocess_dir_widget(ListOptionWidget widget) {
5884        Input_Optionsprocess_dir_widget = widget;
5885    }
5886    
5887    public ListOptionWidget getInput_Optionsprocess_dir_widget() {
5888        return Input_Optionsprocess_dir_widget;
5889    }
5890    
5891    
5892    
5893    private StringOptionWidget Input_Optionssoot_classpath_widget;
5894    
5895    private void setInput_Optionssoot_classpath_widget(StringOptionWidget widget) {
5896        Input_Optionssoot_classpath_widget = widget;
5897    }
5898    
5899    public StringOptionWidget getInput_Optionssoot_classpath_widget() {
5900        return Input_Optionssoot_classpath_widget;
5901    }
5902    
5903    
5904    
5905    private StringOptionWidget Input_Optionsmain_class_widget;
5906    
5907    private void setInput_Optionsmain_class_widget(StringOptionWidget widget) {
5908        Input_Optionsmain_class_widget = widget;
5909    }
5910    
5911    public StringOptionWidget getInput_Optionsmain_class_widget() {
5912        return Input_Optionsmain_class_widget;
5913    }
5914    
5915    
5916    
5917    private MultiOptionWidget Input_Optionssrc_prec_widget;
5918    
5919    private void setInput_Optionssrc_prec_widget(MultiOptionWidget widget) {
5920        Input_Optionssrc_prec_widget = widget;
5921    }
5922    
5923    public MultiOptionWidget getInput_Optionssrc_prec_widget() {
5924        return Input_Optionssrc_prec_widget;
5925    }
5926    
5927    
5928    private BooleanOptionWidget Output_Optionsoutput_jar_widget;
5929    
5930    private void setOutput_Optionsoutput_jar_widget(BooleanOptionWidget widget) {
5931        Output_Optionsoutput_jar_widget = widget;
5932    }
5933    
5934    public BooleanOptionWidget getOutput_Optionsoutput_jar_widget() {
5935        return Output_Optionsoutput_jar_widget;
5936    }
5937    
5938    private BooleanOptionWidget Output_Optionsxml_attributes_widget;
5939    
5940    private void setOutput_Optionsxml_attributes_widget(BooleanOptionWidget widget) {
5941        Output_Optionsxml_attributes_widget = widget;
5942    }
5943    
5944    public BooleanOptionWidget getOutput_Optionsxml_attributes_widget() {
5945        return Output_Optionsxml_attributes_widget;
5946    }
5947    
5948    private BooleanOptionWidget Output_Optionsprint_tags_in_output_widget;
5949    
5950    private void setOutput_Optionsprint_tags_in_output_widget(BooleanOptionWidget widget) {
5951        Output_Optionsprint_tags_in_output_widget = widget;
5952    }
5953    
5954    public BooleanOptionWidget getOutput_Optionsprint_tags_in_output_widget() {
5955        return Output_Optionsprint_tags_in_output_widget;
5956    }
5957    
5958    private BooleanOptionWidget Output_Optionsno_output_source_file_attribute_widget;
5959    
5960    private void setOutput_Optionsno_output_source_file_attribute_widget(BooleanOptionWidget widget) {
5961        Output_Optionsno_output_source_file_attribute_widget = widget;
5962    }
5963    
5964    public BooleanOptionWidget getOutput_Optionsno_output_source_file_attribute_widget() {
5965        return Output_Optionsno_output_source_file_attribute_widget;
5966    }
5967    
5968    private BooleanOptionWidget Output_Optionsno_output_inner_classes_attribute_widget;
5969    
5970    private void setOutput_Optionsno_output_inner_classes_attribute_widget(BooleanOptionWidget widget) {
5971        Output_Optionsno_output_inner_classes_attribute_widget = widget;
5972    }
5973    
5974    public BooleanOptionWidget getOutput_Optionsno_output_inner_classes_attribute_widget() {
5975        return Output_Optionsno_output_inner_classes_attribute_widget;
5976    }
5977    
5978    private BooleanOptionWidget Output_Optionsshow_exception_dests_widget;
5979    
5980    private void setOutput_Optionsshow_exception_dests_widget(BooleanOptionWidget widget) {
5981        Output_Optionsshow_exception_dests_widget = widget;
5982    }
5983    
5984    public BooleanOptionWidget getOutput_Optionsshow_exception_dests_widget() {
5985        return Output_Optionsshow_exception_dests_widget;
5986    }
5987    
5988    private BooleanOptionWidget Output_Optionsgzip_widget;
5989    
5990    private void setOutput_Optionsgzip_widget(BooleanOptionWidget widget) {
5991        Output_Optionsgzip_widget = widget;
5992    }
5993    
5994    public BooleanOptionWidget getOutput_Optionsgzip_widget() {
5995        return Output_Optionsgzip_widget;
5996    }
5997    
5998
5999    private ListOptionWidget Output_Optionsdump_body_widget;
6000    
6001    private void setOutput_Optionsdump_body_widget(ListOptionWidget widget) {
6002        Output_Optionsdump_body_widget = widget;
6003    }
6004    
6005    public ListOptionWidget getOutput_Optionsdump_body_widget() {
6006        return Output_Optionsdump_body_widget;
6007    }
6008    
6009    
6010
6011    private ListOptionWidget Output_Optionsdump_cfg_widget;
6012    
6013    private void setOutput_Optionsdump_cfg_widget(ListOptionWidget widget) {
6014        Output_Optionsdump_cfg_widget = widget;
6015    }
6016    
6017    public ListOptionWidget getOutput_Optionsdump_cfg_widget() {
6018        return Output_Optionsdump_cfg_widget;
6019    }
6020    
6021    
6022    
6023    private StringOptionWidget Output_Optionsoutput_dir_widget;
6024    
6025    private void setOutput_Optionsoutput_dir_widget(StringOptionWidget widget) {
6026        Output_Optionsoutput_dir_widget = widget;
6027    }
6028    
6029    public StringOptionWidget getOutput_Optionsoutput_dir_widget() {
6030        return Output_Optionsoutput_dir_widget;
6031    }
6032    
6033    
6034    
6035    private MultiOptionWidget Output_Optionsoutput_format_widget;
6036    
6037    private void setOutput_Optionsoutput_format_widget(MultiOptionWidget widget) {
6038        Output_Optionsoutput_format_widget = widget;
6039    }
6040    
6041    public MultiOptionWidget getOutput_Optionsoutput_format_widget() {
6042        return Output_Optionsoutput_format_widget;
6043    }
6044    
6045    
6046    private BooleanOptionWidget Processing_Optionsoptimize_widget;
6047    
6048    private void setProcessing_Optionsoptimize_widget(BooleanOptionWidget widget) {
6049        Processing_Optionsoptimize_widget = widget;
6050    }
6051    
6052    public BooleanOptionWidget getProcessing_Optionsoptimize_widget() {
6053        return Processing_Optionsoptimize_widget;
6054    }
6055    
6056    private BooleanOptionWidget Processing_Optionswhole_optimize_widget;
6057    
6058    private void setProcessing_Optionswhole_optimize_widget(BooleanOptionWidget widget) {
6059        Processing_Optionswhole_optimize_widget = widget;
6060    }
6061    
6062    public BooleanOptionWidget getProcessing_Optionswhole_optimize_widget() {
6063        return Processing_Optionswhole_optimize_widget;
6064    }
6065    
6066    private BooleanOptionWidget Processing_Optionsvia_grimp_widget;
6067    
6068    private void setProcessing_Optionsvia_grimp_widget(BooleanOptionWidget widget) {
6069        Processing_Optionsvia_grimp_widget = widget;
6070    }
6071    
6072    public BooleanOptionWidget getProcessing_Optionsvia_grimp_widget() {
6073        return Processing_Optionsvia_grimp_widget;
6074    }
6075    
6076    private BooleanOptionWidget Processing_Optionsvia_shimple_widget;
6077    
6078    private void setProcessing_Optionsvia_shimple_widget(BooleanOptionWidget widget) {
6079        Processing_Optionsvia_shimple_widget = widget;
6080    }
6081    
6082    public BooleanOptionWidget getProcessing_Optionsvia_shimple_widget() {
6083        return Processing_Optionsvia_shimple_widget;
6084    }
6085    
6086    private BooleanOptionWidget Processing_Optionsomit_excepting_unit_edges_widget;
6087    
6088    private void setProcessing_Optionsomit_excepting_unit_edges_widget(BooleanOptionWidget widget) {
6089        Processing_Optionsomit_excepting_unit_edges_widget = widget;
6090    }
6091    
6092    public BooleanOptionWidget getProcessing_Optionsomit_excepting_unit_edges_widget() {
6093        return Processing_Optionsomit_excepting_unit_edges_widget;
6094    }
6095    
6096    private BooleanOptionWidget Processing_Optionstrim_cfgs_widget;
6097    
6098    private void setProcessing_Optionstrim_cfgs_widget(BooleanOptionWidget widget) {
6099        Processing_Optionstrim_cfgs_widget = widget;
6100    }
6101    
6102    public BooleanOptionWidget getProcessing_Optionstrim_cfgs_widget() {
6103        return Processing_Optionstrim_cfgs_widget;
6104    }
6105    
6106    
6107    private MultiOptionWidget Processing_Optionsthrow_analysis_widget;
6108    
6109    private void setProcessing_Optionsthrow_analysis_widget(MultiOptionWidget widget) {
6110        Processing_Optionsthrow_analysis_widget = widget;
6111    }
6112    
6113    public MultiOptionWidget getProcessing_Optionsthrow_analysis_widget() {
6114        return Processing_Optionsthrow_analysis_widget;
6115    }
6116    
6117    
6118    private BooleanOptionWidget jbenabled_widget;
6119    
6120    private void setjbenabled_widget(BooleanOptionWidget widget) {
6121        jbenabled_widget = widget;
6122    }
6123    
6124    public BooleanOptionWidget getjbenabled_widget() {
6125        return jbenabled_widget;
6126    }
6127    
6128    private BooleanOptionWidget jbuse_original_names_widget;
6129    
6130    private void setjbuse_original_names_widget(BooleanOptionWidget widget) {
6131        jbuse_original_names_widget = widget;
6132    }
6133    
6134    public BooleanOptionWidget getjbuse_original_names_widget() {
6135        return jbuse_original_names_widget;
6136    }
6137    
6138    private BooleanOptionWidget jbjb_lsenabled_widget;
6139    
6140    private void setjbjb_lsenabled_widget(BooleanOptionWidget widget) {
6141        jbjb_lsenabled_widget = widget;
6142    }
6143    
6144    public BooleanOptionWidget getjbjb_lsenabled_widget() {
6145        return jbjb_lsenabled_widget;
6146    }
6147    
6148    private BooleanOptionWidget jbjb_aenabled_widget;
6149    
6150    private void setjbjb_aenabled_widget(BooleanOptionWidget widget) {
6151        jbjb_aenabled_widget = widget;
6152    }
6153    
6154    public BooleanOptionWidget getjbjb_aenabled_widget() {
6155        return jbjb_aenabled_widget;
6156    }
6157    
6158    private BooleanOptionWidget jbjb_aonly_stack_locals_widget;
6159    
6160    private void setjbjb_aonly_stack_locals_widget(BooleanOptionWidget widget) {
6161        jbjb_aonly_stack_locals_widget = widget;
6162    }
6163    
6164    public BooleanOptionWidget getjbjb_aonly_stack_locals_widget() {
6165        return jbjb_aonly_stack_locals_widget;
6166    }
6167    
6168    private BooleanOptionWidget jbjb_uleenabled_widget;
6169    
6170    private void setjbjb_uleenabled_widget(BooleanOptionWidget widget) {
6171        jbjb_uleenabled_widget = widget;
6172    }
6173    
6174    public BooleanOptionWidget getjbjb_uleenabled_widget() {
6175        return jbjb_uleenabled_widget;
6176    }
6177    
6178    private BooleanOptionWidget jbjb_trenabled_widget;
6179    
6180    private void setjbjb_trenabled_widget(BooleanOptionWidget widget) {
6181        jbjb_trenabled_widget = widget;
6182    }
6183    
6184    public BooleanOptionWidget getjbjb_trenabled_widget() {
6185        return jbjb_trenabled_widget;
6186    }
6187    
6188    private BooleanOptionWidget jbjb_ulpenabled_widget;
6189    
6190    private void setjbjb_ulpenabled_widget(BooleanOptionWidget widget) {
6191        jbjb_ulpenabled_widget = widget;
6192    }
6193    
6194    public BooleanOptionWidget getjbjb_ulpenabled_widget() {
6195        return jbjb_ulpenabled_widget;
6196    }
6197    
6198    private BooleanOptionWidget jbjb_ulpunsplit_original_locals_widget;
6199    
6200    private void setjbjb_ulpunsplit_original_locals_widget(BooleanOptionWidget widget) {
6201        jbjb_ulpunsplit_original_locals_widget = widget;
6202    }
6203    
6204    public BooleanOptionWidget getjbjb_ulpunsplit_original_locals_widget() {
6205        return jbjb_ulpunsplit_original_locals_widget;
6206    }
6207    
6208    private BooleanOptionWidget jbjb_lnsenabled_widget;
6209    
6210    private void setjbjb_lnsenabled_widget(BooleanOptionWidget widget) {
6211        jbjb_lnsenabled_widget = widget;
6212    }
6213    
6214    public BooleanOptionWidget getjbjb_lnsenabled_widget() {
6215        return jbjb_lnsenabled_widget;
6216    }
6217    
6218    private BooleanOptionWidget jbjb_lnsonly_stack_locals_widget;
6219    
6220    private void setjbjb_lnsonly_stack_locals_widget(BooleanOptionWidget widget) {
6221        jbjb_lnsonly_stack_locals_widget = widget;
6222    }
6223    
6224    public BooleanOptionWidget getjbjb_lnsonly_stack_locals_widget() {
6225        return jbjb_lnsonly_stack_locals_widget;
6226    }
6227    
6228    private BooleanOptionWidget jbjb_cpenabled_widget;
6229    
6230    private void setjbjb_cpenabled_widget(BooleanOptionWidget widget) {
6231        jbjb_cpenabled_widget = widget;
6232    }
6233    
6234    public BooleanOptionWidget getjbjb_cpenabled_widget() {
6235        return jbjb_cpenabled_widget;
6236    }
6237    
6238    private BooleanOptionWidget jbjb_cponly_regular_locals_widget;
6239    
6240    private void setjbjb_cponly_regular_locals_widget(BooleanOptionWidget widget) {
6241        jbjb_cponly_regular_locals_widget = widget;
6242    }
6243    
6244    public BooleanOptionWidget getjbjb_cponly_regular_locals_widget() {
6245        return jbjb_cponly_regular_locals_widget;
6246    }
6247    
6248    private BooleanOptionWidget jbjb_cponly_stack_locals_widget;
6249    
6250    private void setjbjb_cponly_stack_locals_widget(BooleanOptionWidget widget) {
6251        jbjb_cponly_stack_locals_widget = widget;
6252    }
6253    
6254    public BooleanOptionWidget getjbjb_cponly_stack_locals_widget() {
6255        return jbjb_cponly_stack_locals_widget;
6256    }
6257    
6258    private BooleanOptionWidget jbjb_daeenabled_widget;
6259    
6260    private void setjbjb_daeenabled_widget(BooleanOptionWidget widget) {
6261        jbjb_daeenabled_widget = widget;
6262    }
6263    
6264    public BooleanOptionWidget getjbjb_daeenabled_widget() {
6265        return jbjb_daeenabled_widget;
6266    }
6267    
6268    private BooleanOptionWidget jbjb_daeonly_stack_locals_widget;
6269    
6270    private void setjbjb_daeonly_stack_locals_widget(BooleanOptionWidget widget) {
6271        jbjb_daeonly_stack_locals_widget = widget;
6272    }
6273    
6274    public BooleanOptionWidget getjbjb_daeonly_stack_locals_widget() {
6275        return jbjb_daeonly_stack_locals_widget;
6276    }
6277    
6278    private BooleanOptionWidget jbjb_cp_uleenabled_widget;
6279    
6280    private void setjbjb_cp_uleenabled_widget(BooleanOptionWidget widget) {
6281        jbjb_cp_uleenabled_widget = widget;
6282    }
6283    
6284    public BooleanOptionWidget getjbjb_cp_uleenabled_widget() {
6285        return jbjb_cp_uleenabled_widget;
6286    }
6287    
6288    private BooleanOptionWidget jbjb_lpenabled_widget;
6289    
6290    private void setjbjb_lpenabled_widget(BooleanOptionWidget widget) {
6291        jbjb_lpenabled_widget = widget;
6292    }
6293    
6294    public BooleanOptionWidget getjbjb_lpenabled_widget() {
6295        return jbjb_lpenabled_widget;
6296    }
6297    
6298    private BooleanOptionWidget jbjb_lpunsplit_original_locals_widget;
6299    
6300    private void setjbjb_lpunsplit_original_locals_widget(BooleanOptionWidget widget) {
6301        jbjb_lpunsplit_original_locals_widget = widget;
6302    }
6303    
6304    public BooleanOptionWidget getjbjb_lpunsplit_original_locals_widget() {
6305        return jbjb_lpunsplit_original_locals_widget;
6306    }
6307    
6308    private BooleanOptionWidget jbjb_neenabled_widget;
6309    
6310    private void setjbjb_neenabled_widget(BooleanOptionWidget widget) {
6311        jbjb_neenabled_widget = widget;
6312    }
6313    
6314    public BooleanOptionWidget getjbjb_neenabled_widget() {
6315        return jbjb_neenabled_widget;
6316    }
6317    
6318    private BooleanOptionWidget jbjb_uceenabled_widget;
6319    
6320    private void setjbjb_uceenabled_widget(BooleanOptionWidget widget) {
6321        jbjb_uceenabled_widget = widget;
6322    }
6323    
6324    public BooleanOptionWidget getjbjb_uceenabled_widget() {
6325        return jbjb_uceenabled_widget;
6326    }
6327    
6328    private BooleanOptionWidget jbjb_uceremove_unreachable_traps_widget;
6329    
6330    private void setjbjb_uceremove_unreachable_traps_widget(BooleanOptionWidget widget) {
6331        jbjb_uceremove_unreachable_traps_widget = widget;
6332    }
6333    
6334    public BooleanOptionWidget getjbjb_uceremove_unreachable_traps_widget() {
6335        return jbjb_uceremove_unreachable_traps_widget;
6336    }
6337    
6338    private BooleanOptionWidget jbjb_ttenabled_widget;
6339    
6340    private void setjbjb_ttenabled_widget(BooleanOptionWidget widget) {
6341        jbjb_ttenabled_widget = widget;
6342    }
6343    
6344    public BooleanOptionWidget getjbjb_ttenabled_widget() {
6345        return jbjb_ttenabled_widget;
6346    }
6347    
6348    private BooleanOptionWidget jjenabled_widget;
6349    
6350    private void setjjenabled_widget(BooleanOptionWidget widget) {
6351        jjenabled_widget = widget;
6352    }
6353    
6354    public BooleanOptionWidget getjjenabled_widget() {
6355        return jjenabled_widget;
6356    }
6357    
6358    private BooleanOptionWidget jjuse_original_names_widget;
6359    
6360    private void setjjuse_original_names_widget(BooleanOptionWidget widget) {
6361        jjuse_original_names_widget = widget;
6362    }
6363    
6364    public BooleanOptionWidget getjjuse_original_names_widget() {
6365        return jjuse_original_names_widget;
6366    }
6367    
6368    private BooleanOptionWidget jjjj_lsenabled_widget;
6369    
6370    private void setjjjj_lsenabled_widget(BooleanOptionWidget widget) {
6371        jjjj_lsenabled_widget = widget;
6372    }
6373    
6374    public BooleanOptionWidget getjjjj_lsenabled_widget() {
6375        return jjjj_lsenabled_widget;
6376    }
6377    
6378    private BooleanOptionWidget jjjj_aenabled_widget;
6379    
6380    private void setjjjj_aenabled_widget(BooleanOptionWidget widget) {
6381        jjjj_aenabled_widget = widget;
6382    }
6383    
6384    public BooleanOptionWidget getjjjj_aenabled_widget() {
6385        return jjjj_aenabled_widget;
6386    }
6387    
6388    private BooleanOptionWidget jjjj_aonly_stack_locals_widget;
6389    
6390    private void setjjjj_aonly_stack_locals_widget(BooleanOptionWidget widget) {
6391        jjjj_aonly_stack_locals_widget = widget;
6392    }
6393    
6394    public BooleanOptionWidget getjjjj_aonly_stack_locals_widget() {
6395        return jjjj_aonly_stack_locals_widget;
6396    }
6397    
6398    private BooleanOptionWidget jjjj_uleenabled_widget;
6399    
6400    private void setjjjj_uleenabled_widget(BooleanOptionWidget widget) {
6401        jjjj_uleenabled_widget = widget;
6402    }
6403    
6404    public BooleanOptionWidget getjjjj_uleenabled_widget() {
6405        return jjjj_uleenabled_widget;
6406    }
6407    
6408    private BooleanOptionWidget jjjj_trenabled_widget;
6409    
6410    private void setjjjj_trenabled_widget(BooleanOptionWidget widget) {
6411        jjjj_trenabled_widget = widget;
6412    }
6413    
6414    public BooleanOptionWidget getjjjj_trenabled_widget() {
6415        return jjjj_trenabled_widget;
6416    }
6417    
6418    private BooleanOptionWidget jjjj_ulpenabled_widget;
6419    
6420    private void setjjjj_ulpenabled_widget(BooleanOptionWidget widget) {
6421        jjjj_ulpenabled_widget = widget;
6422    }
6423    
6424    public BooleanOptionWidget getjjjj_ulpenabled_widget() {
6425        return jjjj_ulpenabled_widget;
6426    }
6427    
6428    private BooleanOptionWidget jjjj_ulpunsplit_original_locals_widget;
6429    
6430    private void setjjjj_ulpunsplit_original_locals_widget(BooleanOptionWidget widget) {
6431        jjjj_ulpunsplit_original_locals_widget = widget;
6432    }
6433    
6434    public BooleanOptionWidget getjjjj_ulpunsplit_original_locals_widget() {
6435        return jjjj_ulpunsplit_original_locals_widget;
6436    }
6437    
6438    private BooleanOptionWidget jjjj_lnsenabled_widget;
6439    
6440    private void setjjjj_lnsenabled_widget(BooleanOptionWidget widget) {
6441        jjjj_lnsenabled_widget = widget;
6442    }
6443    
6444    public BooleanOptionWidget getjjjj_lnsenabled_widget() {
6445        return jjjj_lnsenabled_widget;
6446    }
6447    
6448    private BooleanOptionWidget jjjj_lnsonly_stack_locals_widget;
6449    
6450    private void setjjjj_lnsonly_stack_locals_widget(BooleanOptionWidget widget) {
6451        jjjj_lnsonly_stack_locals_widget = widget;
6452    }
6453    
6454    public BooleanOptionWidget getjjjj_lnsonly_stack_locals_widget() {
6455        return jjjj_lnsonly_stack_locals_widget;
6456    }
6457    
6458    private BooleanOptionWidget jjjj_cpenabled_widget;
6459    
6460    private void setjjjj_cpenabled_widget(BooleanOptionWidget widget) {
6461        jjjj_cpenabled_widget = widget;
6462    }
6463    
6464    public BooleanOptionWidget getjjjj_cpenabled_widget() {
6465        return jjjj_cpenabled_widget;
6466    }
6467    
6468    private BooleanOptionWidget jjjj_cponly_regular_locals_widget;
6469    
6470    private void setjjjj_cponly_regular_locals_widget(BooleanOptionWidget widget) {
6471        jjjj_cponly_regular_locals_widget = widget;
6472    }
6473    
6474    public BooleanOptionWidget getjjjj_cponly_regular_locals_widget() {
6475        return jjjj_cponly_regular_locals_widget;
6476    }
6477    
6478    private BooleanOptionWidget jjjj_cponly_stack_locals_widget;
6479    
6480    private void setjjjj_cponly_stack_locals_widget(BooleanOptionWidget widget) {
6481        jjjj_cponly_stack_locals_widget = widget;
6482    }
6483    
6484    public BooleanOptionWidget getjjjj_cponly_stack_locals_widget() {
6485        return jjjj_cponly_stack_locals_widget;
6486    }
6487    
6488    private BooleanOptionWidget jjjj_daeenabled_widget;
6489    
6490    private void setjjjj_daeenabled_widget(BooleanOptionWidget widget) {
6491        jjjj_daeenabled_widget = widget;
6492    }
6493    
6494    public BooleanOptionWidget getjjjj_daeenabled_widget() {
6495        return jjjj_daeenabled_widget;
6496    }
6497    
6498    private BooleanOptionWidget jjjj_daeonly_stack_locals_widget;
6499    
6500    private void setjjjj_daeonly_stack_locals_widget(BooleanOptionWidget widget) {
6501        jjjj_daeonly_stack_locals_widget = widget;
6502    }
6503    
6504    public BooleanOptionWidget getjjjj_daeonly_stack_locals_widget() {
6505        return jjjj_daeonly_stack_locals_widget;
6506    }
6507    
6508    private BooleanOptionWidget jjjj_cp_uleenabled_widget;
6509    
6510    private void setjjjj_cp_uleenabled_widget(BooleanOptionWidget widget) {
6511        jjjj_cp_uleenabled_widget = widget;
6512    }
6513    
6514    public BooleanOptionWidget getjjjj_cp_uleenabled_widget() {
6515        return jjjj_cp_uleenabled_widget;
6516    }
6517    
6518    private BooleanOptionWidget jjjj_lpenabled_widget;
6519    
6520    private void setjjjj_lpenabled_widget(BooleanOptionWidget widget) {
6521        jjjj_lpenabled_widget = widget;
6522    }
6523    
6524    public BooleanOptionWidget getjjjj_lpenabled_widget() {
6525        return jjjj_lpenabled_widget;
6526    }
6527    
6528    private BooleanOptionWidget jjjj_lpunsplit_original_locals_widget;
6529    
6530    private void setjjjj_lpunsplit_original_locals_widget(BooleanOptionWidget widget) {
6531        jjjj_lpunsplit_original_locals_widget = widget;
6532    }
6533    
6534    public BooleanOptionWidget getjjjj_lpunsplit_original_locals_widget() {
6535        return jjjj_lpunsplit_original_locals_widget;
6536    }
6537    
6538    private BooleanOptionWidget jjjj_neenabled_widget;
6539    
6540    private void setjjjj_neenabled_widget(BooleanOptionWidget widget) {
6541        jjjj_neenabled_widget = widget;
6542    }
6543    
6544    public BooleanOptionWidget getjjjj_neenabled_widget() {
6545        return jjjj_neenabled_widget;
6546    }
6547    
6548    private BooleanOptionWidget jjjj_uceenabled_widget;
6549    
6550    private void setjjjj_uceenabled_widget(BooleanOptionWidget widget) {
6551        jjjj_uceenabled_widget = widget;
6552    }
6553    
6554    public BooleanOptionWidget getjjjj_uceenabled_widget() {
6555        return jjjj_uceenabled_widget;
6556    }
6557    
6558    private BooleanOptionWidget cgenabled_widget;
6559    
6560    private void setcgenabled_widget(BooleanOptionWidget widget) {
6561        cgenabled_widget = widget;
6562    }
6563    
6564    public BooleanOptionWidget getcgenabled_widget() {
6565        return cgenabled_widget;
6566    }
6567    
6568    private BooleanOptionWidget cgsafe_forname_widget;
6569    
6570    private void setcgsafe_forname_widget(BooleanOptionWidget widget) {
6571        cgsafe_forname_widget = widget;
6572    }
6573    
6574    public BooleanOptionWidget getcgsafe_forname_widget() {
6575        return cgsafe_forname_widget;
6576    }
6577    
6578    private BooleanOptionWidget cgsafe_newinstance_widget;
6579    
6580    private void setcgsafe_newinstance_widget(BooleanOptionWidget widget) {
6581        cgsafe_newinstance_widget = widget;
6582    }
6583    
6584    public BooleanOptionWidget getcgsafe_newinstance_widget() {
6585        return cgsafe_newinstance_widget;
6586    }
6587    
6588    private BooleanOptionWidget cgverbose_widget;
6589    
6590    private void setcgverbose_widget(BooleanOptionWidget widget) {
6591        cgverbose_widget = widget;
6592    }
6593    
6594    public BooleanOptionWidget getcgverbose_widget() {
6595        return cgverbose_widget;
6596    }
6597    
6598    private BooleanOptionWidget cgall_reachable_widget;
6599    
6600    private void setcgall_reachable_widget(BooleanOptionWidget widget) {
6601        cgall_reachable_widget = widget;
6602    }
6603    
6604    public BooleanOptionWidget getcgall_reachable_widget() {
6605        return cgall_reachable_widget;
6606    }
6607    
6608    private BooleanOptionWidget cgimplicit_entry_widget;
6609    
6610    private void setcgimplicit_entry_widget(BooleanOptionWidget widget) {
6611        cgimplicit_entry_widget = widget;
6612    }
6613    
6614    public BooleanOptionWidget getcgimplicit_entry_widget() {
6615        return cgimplicit_entry_widget;
6616    }
6617    
6618    private BooleanOptionWidget cgtrim_clinit_widget;
6619    
6620    private void setcgtrim_clinit_widget(BooleanOptionWidget widget) {
6621        cgtrim_clinit_widget = widget;
6622    }
6623    
6624    public BooleanOptionWidget getcgtrim_clinit_widget() {
6625        return cgtrim_clinit_widget;
6626    }
6627    
6628    
6629    private StringOptionWidget cgjdkver_widget;
6630    
6631    private void setcgjdkver_widget(StringOptionWidget widget) {
6632        cgjdkver_widget = widget;
6633    }
6634    
6635    public StringOptionWidget getcgjdkver_widget() {
6636        return cgjdkver_widget;
6637    }
6638    
6639    
6640    private BooleanOptionWidget cgcg_chaenabled_widget;
6641    
6642    private void setcgcg_chaenabled_widget(BooleanOptionWidget widget) {
6643        cgcg_chaenabled_widget = widget;
6644    }
6645    
6646    public BooleanOptionWidget getcgcg_chaenabled_widget() {
6647        return cgcg_chaenabled_widget;
6648    }
6649    
6650    private BooleanOptionWidget cgcg_chaverbose_widget;
6651    
6652    private void setcgcg_chaverbose_widget(BooleanOptionWidget widget) {
6653        cgcg_chaverbose_widget = widget;
6654    }
6655    
6656    public BooleanOptionWidget getcgcg_chaverbose_widget() {
6657        return cgcg_chaverbose_widget;
6658    }
6659    
6660    private BooleanOptionWidget cgcg_sparkenabled_widget;
6661    
6662    private void setcgcg_sparkenabled_widget(BooleanOptionWidget widget) {
6663        cgcg_sparkenabled_widget = widget;
6664    }
6665    
6666    public BooleanOptionWidget getcgcg_sparkenabled_widget() {
6667        return cgcg_sparkenabled_widget;
6668    }
6669    
6670    private BooleanOptionWidget cgcg_sparkverbose_widget;
6671    
6672    private void setcgcg_sparkverbose_widget(BooleanOptionWidget widget) {
6673        cgcg_sparkverbose_widget = widget;
6674    }
6675    
6676    public BooleanOptionWidget getcgcg_sparkverbose_widget() {
6677        return cgcg_sparkverbose_widget;
6678    }
6679    
6680    private BooleanOptionWidget cgcg_sparkignore_types_widget;
6681    
6682    private void setcgcg_sparkignore_types_widget(BooleanOptionWidget widget) {
6683        cgcg_sparkignore_types_widget = widget;
6684    }
6685    
6686    public BooleanOptionWidget getcgcg_sparkignore_types_widget() {
6687        return cgcg_sparkignore_types_widget;
6688    }
6689    
6690    private BooleanOptionWidget cgcg_sparkforce_gc_widget;
6691    
6692    private void setcgcg_sparkforce_gc_widget(BooleanOptionWidget widget) {
6693        cgcg_sparkforce_gc_widget = widget;
6694    }
6695    
6696    public BooleanOptionWidget getcgcg_sparkforce_gc_widget() {
6697        return cgcg_sparkforce_gc_widget;
6698    }
6699    
6700    private BooleanOptionWidget cgcg_sparkpre_jimplify_widget;
6701    
6702    private void setcgcg_sparkpre_jimplify_widget(BooleanOptionWidget widget) {
6703        cgcg_sparkpre_jimplify_widget = widget;
6704    }
6705    
6706    public BooleanOptionWidget getcgcg_sparkpre_jimplify_widget() {
6707        return cgcg_sparkpre_jimplify_widget;
6708    }
6709    
6710    private BooleanOptionWidget cgcg_sparkvta_widget;
6711    
6712    private void setcgcg_sparkvta_widget(BooleanOptionWidget widget) {
6713        cgcg_sparkvta_widget = widget;
6714    }
6715    
6716    public BooleanOptionWidget getcgcg_sparkvta_widget() {
6717        return cgcg_sparkvta_widget;
6718    }
6719    
6720    private BooleanOptionWidget cgcg_sparkrta_widget;
6721    
6722    private void setcgcg_sparkrta_widget(BooleanOptionWidget widget) {
6723        cgcg_sparkrta_widget = widget;
6724    }
6725    
6726    public BooleanOptionWidget getcgcg_sparkrta_widget() {
6727        return cgcg_sparkrta_widget;
6728    }
6729    
6730    private BooleanOptionWidget cgcg_sparkfield_based_widget;
6731    
6732    private void setcgcg_sparkfield_based_widget(BooleanOptionWidget widget) {
6733        cgcg_sparkfield_based_widget = widget;
6734    }
6735    
6736    public BooleanOptionWidget getcgcg_sparkfield_based_widget() {
6737        return cgcg_sparkfield_based_widget;
6738    }
6739    
6740    private BooleanOptionWidget cgcg_sparktypes_for_sites_widget;
6741    
6742    private void setcgcg_sparktypes_for_sites_widget(BooleanOptionWidget widget) {
6743        cgcg_sparktypes_for_sites_widget = widget;
6744    }
6745    
6746    public BooleanOptionWidget getcgcg_sparktypes_for_sites_widget() {
6747        return cgcg_sparktypes_for_sites_widget;
6748    }
6749    
6750    private BooleanOptionWidget cgcg_sparkmerge_stringbuffer_widget;
6751    
6752    private void setcgcg_sparkmerge_stringbuffer_widget(BooleanOptionWidget widget) {
6753        cgcg_sparkmerge_stringbuffer_widget = widget;
6754    }
6755    
6756    public BooleanOptionWidget getcgcg_sparkmerge_stringbuffer_widget() {
6757        return cgcg_sparkmerge_stringbuffer_widget;
6758    }
6759    
6760    private BooleanOptionWidget cgcg_sparkstring_constants_widget;
6761    
6762    private void setcgcg_sparkstring_constants_widget(BooleanOptionWidget widget) {
6763        cgcg_sparkstring_constants_widget = widget;
6764    }
6765    
6766    public BooleanOptionWidget getcgcg_sparkstring_constants_widget() {
6767        return cgcg_sparkstring_constants_widget;
6768    }
6769    
6770    private BooleanOptionWidget cgcg_sparksimulate_natives_widget;
6771    
6772    private void setcgcg_sparksimulate_natives_widget(BooleanOptionWidget widget) {
6773        cgcg_sparksimulate_natives_widget = widget;
6774    }
6775    
6776    public BooleanOptionWidget getcgcg_sparksimulate_natives_widget() {
6777        return cgcg_sparksimulate_natives_widget;
6778    }
6779    
6780    private BooleanOptionWidget cgcg_sparksimple_edges_bidirectional_widget;
6781    
6782    private void setcgcg_sparksimple_edges_bidirectional_widget(BooleanOptionWidget widget) {
6783        cgcg_sparksimple_edges_bidirectional_widget = widget;
6784    }
6785    
6786    public BooleanOptionWidget getcgcg_sparksimple_edges_bidirectional_widget() {
6787        return cgcg_sparksimple_edges_bidirectional_widget;
6788    }
6789    
6790    private BooleanOptionWidget cgcg_sparkon_fly_cg_widget;
6791    
6792    private void setcgcg_sparkon_fly_cg_widget(BooleanOptionWidget widget) {
6793        cgcg_sparkon_fly_cg_widget = widget;
6794    }
6795    
6796    public BooleanOptionWidget getcgcg_sparkon_fly_cg_widget() {
6797        return cgcg_sparkon_fly_cg_widget;
6798    }
6799    
6800    private BooleanOptionWidget cgcg_sparksimplify_offline_widget;
6801    
6802    private void setcgcg_sparksimplify_offline_widget(BooleanOptionWidget widget) {
6803        cgcg_sparksimplify_offline_widget = widget;
6804    }
6805    
6806    public BooleanOptionWidget getcgcg_sparksimplify_offline_widget() {
6807        return cgcg_sparksimplify_offline_widget;
6808    }
6809    
6810    private BooleanOptionWidget cgcg_sparksimplify_sccs_widget;
6811    
6812    private void setcgcg_sparksimplify_sccs_widget(BooleanOptionWidget widget) {
6813        cgcg_sparksimplify_sccs_widget = widget;
6814    }
6815    
6816    public BooleanOptionWidget getcgcg_sparksimplify_sccs_widget() {
6817        return cgcg_sparksimplify_sccs_widget;
6818    }
6819    
6820    private BooleanOptionWidget cgcg_sparkignore_types_for_sccs_widget;
6821    
6822    private void setcgcg_sparkignore_types_for_sccs_widget(BooleanOptionWidget widget) {
6823        cgcg_sparkignore_types_for_sccs_widget = widget;
6824    }
6825    
6826    public BooleanOptionWidget getcgcg_sparkignore_types_for_sccs_widget() {
6827        return cgcg_sparkignore_types_for_sccs_widget;
6828    }
6829    
6830    
6831    private MultiOptionWidget cgcg_sparkpropagator_widget;
6832    
6833    private void setcgcg_sparkpropagator_widget(MultiOptionWidget widget) {
6834        cgcg_sparkpropagator_widget = widget;
6835    }
6836    
6837    public MultiOptionWidget getcgcg_sparkpropagator_widget() {
6838        return cgcg_sparkpropagator_widget;
6839    }
6840    
6841    
6842    
6843    private MultiOptionWidget cgcg_sparkset_impl_widget;
6844    
6845    private void setcgcg_sparkset_impl_widget(MultiOptionWidget widget) {
6846        cgcg_sparkset_impl_widget = widget;
6847    }
6848    
6849    public MultiOptionWidget getcgcg_sparkset_impl_widget() {
6850        return cgcg_sparkset_impl_widget;
6851    }
6852    
6853    
6854    
6855    private MultiOptionWidget cgcg_sparkdouble_set_old_widget;
6856    
6857    private void setcgcg_sparkdouble_set_old_widget(MultiOptionWidget widget) {
6858        cgcg_sparkdouble_set_old_widget = widget;
6859    }
6860    
6861    public MultiOptionWidget getcgcg_sparkdouble_set_old_widget() {
6862        return cgcg_sparkdouble_set_old_widget;
6863    }
6864    
6865    
6866    
6867    private MultiOptionWidget cgcg_sparkdouble_set_new_widget;
6868    
6869    private void setcgcg_sparkdouble_set_new_widget(MultiOptionWidget widget) {
6870        cgcg_sparkdouble_set_new_widget = widget;
6871    }
6872    
6873    public MultiOptionWidget getcgcg_sparkdouble_set_new_widget() {
6874        return cgcg_sparkdouble_set_new_widget;
6875    }
6876    
6877    
6878    private BooleanOptionWidget cgcg_sparkdump_html_widget;
6879    
6880    private void setcgcg_sparkdump_html_widget(BooleanOptionWidget widget) {
6881        cgcg_sparkdump_html_widget = widget;
6882    }
6883    
6884    public BooleanOptionWidget getcgcg_sparkdump_html_widget() {
6885        return cgcg_sparkdump_html_widget;
6886    }
6887    
6888    private BooleanOptionWidget cgcg_sparkdump_pag_widget;
6889    
6890    private void setcgcg_sparkdump_pag_widget(BooleanOptionWidget widget) {
6891        cgcg_sparkdump_pag_widget = widget;
6892    }
6893    
6894    public BooleanOptionWidget getcgcg_sparkdump_pag_widget() {
6895        return cgcg_sparkdump_pag_widget;
6896    }
6897    
6898    private BooleanOptionWidget cgcg_sparkdump_solution_widget;
6899    
6900    private void setcgcg_sparkdump_solution_widget(BooleanOptionWidget widget) {
6901        cgcg_sparkdump_solution_widget = widget;
6902    }
6903    
6904    public BooleanOptionWidget getcgcg_sparkdump_solution_widget() {
6905        return cgcg_sparkdump_solution_widget;
6906    }
6907    
6908    private BooleanOptionWidget cgcg_sparktopo_sort_widget;
6909    
6910    private void setcgcg_sparktopo_sort_widget(BooleanOptionWidget widget) {
6911        cgcg_sparktopo_sort_widget = widget;
6912    }
6913    
6914    public BooleanOptionWidget getcgcg_sparktopo_sort_widget() {
6915        return cgcg_sparktopo_sort_widget;
6916    }
6917    
6918    private BooleanOptionWidget cgcg_sparkdump_types_widget;
6919    
6920    private void setcgcg_sparkdump_types_widget(BooleanOptionWidget widget) {
6921        cgcg_sparkdump_types_widget = widget;
6922    }
6923    
6924    public BooleanOptionWidget getcgcg_sparkdump_types_widget() {
6925        return cgcg_sparkdump_types_widget;
6926    }
6927    
6928    private BooleanOptionWidget cgcg_sparkclass_method_var_widget;
6929    
6930    private void setcgcg_sparkclass_method_var_widget(BooleanOptionWidget widget) {
6931        cgcg_sparkclass_method_var_widget = widget;
6932    }
6933    
6934    public BooleanOptionWidget getcgcg_sparkclass_method_var_widget() {
6935        return cgcg_sparkclass_method_var_widget;
6936    }
6937    
6938    private BooleanOptionWidget cgcg_sparkdump_answer_widget;
6939    
6940    private void setcgcg_sparkdump_answer_widget(BooleanOptionWidget widget) {
6941        cgcg_sparkdump_answer_widget = widget;
6942    }
6943    
6944    public BooleanOptionWidget getcgcg_sparkdump_answer_widget() {
6945        return cgcg_sparkdump_answer_widget;
6946    }
6947    
6948    private BooleanOptionWidget cgcg_sparkadd_tags_widget;
6949    
6950    private void setcgcg_sparkadd_tags_widget(BooleanOptionWidget widget) {
6951        cgcg_sparkadd_tags_widget = widget;
6952    }
6953    
6954    public BooleanOptionWidget getcgcg_sparkadd_tags_widget() {
6955        return cgcg_sparkadd_tags_widget;
6956    }
6957    
6958    private BooleanOptionWidget cgcg_sparkset_mass_widget;
6959    
6960    private void setcgcg_sparkset_mass_widget(BooleanOptionWidget widget) {
6961        cgcg_sparkset_mass_widget = widget;
6962    }
6963    
6964    public BooleanOptionWidget getcgcg_sparkset_mass_widget() {
6965        return cgcg_sparkset_mass_widget;
6966    }
6967    
6968    private BooleanOptionWidget cgcg_paddleenabled_widget;
6969    
6970    private void setcgcg_paddleenabled_widget(BooleanOptionWidget widget) {
6971        cgcg_paddleenabled_widget = widget;
6972    }
6973    
6974    public BooleanOptionWidget getcgcg_paddleenabled_widget() {
6975        return cgcg_paddleenabled_widget;
6976    }
6977    
6978    private BooleanOptionWidget cgcg_paddleverbose_widget;
6979    
6980    private void setcgcg_paddleverbose_widget(BooleanOptionWidget widget) {
6981        cgcg_paddleverbose_widget = widget;
6982    }
6983    
6984    public BooleanOptionWidget getcgcg_paddleverbose_widget() {
6985        return cgcg_paddleverbose_widget;
6986    }
6987    
6988    private BooleanOptionWidget cgcg_paddlebdd_widget;
6989    
6990    private void setcgcg_paddlebdd_widget(BooleanOptionWidget widget) {
6991        cgcg_paddlebdd_widget = widget;
6992    }
6993    
6994    public BooleanOptionWidget getcgcg_paddlebdd_widget() {
6995        return cgcg_paddlebdd_widget;
6996    }
6997    
6998    private BooleanOptionWidget cgcg_paddledynamic_order_widget;
6999    
7000    private void setcgcg_paddledynamic_order_widget(BooleanOptionWidget widget) {
7001        cgcg_paddledynamic_order_widget = widget;
7002    }
7003    
7004    public BooleanOptionWidget getcgcg_paddledynamic_order_widget() {
7005        return cgcg_paddledynamic_order_widget;
7006    }
7007    
7008    private BooleanOptionWidget cgcg_paddleprofile_widget;
7009    
7010    private void setcgcg_paddleprofile_widget(BooleanOptionWidget widget) {
7011        cgcg_paddleprofile_widget = widget;
7012    }
7013    
7014    public BooleanOptionWidget getcgcg_paddleprofile_widget() {
7015        return cgcg_paddleprofile_widget;
7016    }
7017    
7018    private BooleanOptionWidget cgcg_paddleignore_types_widget;
7019    
7020    private void setcgcg_paddleignore_types_widget(BooleanOptionWidget widget) {
7021        cgcg_paddleignore_types_widget = widget;
7022    }
7023    
7024    public BooleanOptionWidget getcgcg_paddleignore_types_widget() {
7025        return cgcg_paddleignore_types_widget;
7026    }
7027    
7028    private BooleanOptionWidget cgcg_paddlepre_jimplify_widget;
7029    
7030    private void setcgcg_paddlepre_jimplify_widget(BooleanOptionWidget widget) {
7031        cgcg_paddlepre_jimplify_widget = widget;
7032    }
7033    
7034    public BooleanOptionWidget getcgcg_paddlepre_jimplify_widget() {
7035        return cgcg_paddlepre_jimplify_widget;
7036    }
7037    
7038    
7039    private StringOptionWidget cgcg_paddleorder_widget;
7040    
7041    private void setcgcg_paddleorder_widget(StringOptionWidget widget) {
7042        cgcg_paddleorder_widget = widget;
7043    }
7044    
7045    public StringOptionWidget getcgcg_paddleorder_widget() {
7046        return cgcg_paddleorder_widget;
7047    }
7048    
7049    
7050    
7051    private MultiOptionWidget cgcg_paddleconf_widget;
7052    
7053    private void setcgcg_paddleconf_widget(MultiOptionWidget widget) {
7054        cgcg_paddleconf_widget = widget;
7055    }
7056    
7057    public MultiOptionWidget getcgcg_paddleconf_widget() {
7058        return cgcg_paddleconf_widget;
7059    }
7060    
7061    
7062    
7063    private MultiOptionWidget cgcg_paddleq_widget;
7064    
7065    private void setcgcg_paddleq_widget(MultiOptionWidget widget) {
7066        cgcg_paddleq_widget = widget;
7067    }
7068    
7069    public MultiOptionWidget getcgcg_paddleq_widget() {
7070        return cgcg_paddleq_widget;
7071    }
7072    
7073    
7074    
7075    private MultiOptionWidget cgcg_paddlebackend_widget;
7076    
7077    private void setcgcg_paddlebackend_widget(MultiOptionWidget widget) {
7078        cgcg_paddlebackend_widget = widget;
7079    }
7080    
7081    public MultiOptionWidget getcgcg_paddlebackend_widget() {
7082        return cgcg_paddlebackend_widget;
7083    }
7084    
7085    
7086    private BooleanOptionWidget cgcg_paddlecontext_heap_widget;
7087    
7088    private void setcgcg_paddlecontext_heap_widget(BooleanOptionWidget widget) {
7089        cgcg_paddlecontext_heap_widget = widget;
7090    }
7091    
7092    public BooleanOptionWidget getcgcg_paddlecontext_heap_widget() {
7093        return cgcg_paddlecontext_heap_widget;
7094    }
7095    
7096    
7097    private StringOptionWidget cgcg_paddlek_widget;
7098    
7099    private void setcgcg_paddlek_widget(StringOptionWidget widget) {
7100        cgcg_paddlek_widget = widget;
7101    }
7102    
7103    public StringOptionWidget getcgcg_paddlek_widget() {
7104        return cgcg_paddlek_widget;
7105    }
7106    
7107    
7108    
7109    private MultiOptionWidget cgcg_paddlecontext_widget;
7110    
7111    private void setcgcg_paddlecontext_widget(MultiOptionWidget widget) {
7112        cgcg_paddlecontext_widget = widget;
7113    }
7114    
7115    public MultiOptionWidget getcgcg_paddlecontext_widget() {
7116        return cgcg_paddlecontext_widget;
7117    }
7118    
7119    
7120    private BooleanOptionWidget cgcg_paddlerta_widget;
7121    
7122    private void setcgcg_paddlerta_widget(BooleanOptionWidget widget) {
7123        cgcg_paddlerta_widget = widget;
7124    }
7125    
7126    public BooleanOptionWidget getcgcg_paddlerta_widget() {
7127        return cgcg_paddlerta_widget;
7128    }
7129    
7130    private BooleanOptionWidget cgcg_paddlefield_based_widget;
7131    
7132    private void setcgcg_paddlefield_based_widget(BooleanOptionWidget widget) {
7133        cgcg_paddlefield_based_widget = widget;
7134    }
7135    
7136    public BooleanOptionWidget getcgcg_paddlefield_based_widget() {
7137        return cgcg_paddlefield_based_widget;
7138    }
7139    
7140    private BooleanOptionWidget cgcg_paddletypes_for_sites_widget;
7141    
7142    private void setcgcg_paddletypes_for_sites_widget(BooleanOptionWidget widget) {
7143        cgcg_paddletypes_for_sites_widget = widget;
7144    }
7145    
7146    public BooleanOptionWidget getcgcg_paddletypes_for_sites_widget() {
7147        return cgcg_paddletypes_for_sites_widget;
7148    }
7149    
7150    private BooleanOptionWidget cgcg_paddlemerge_stringbuffer_widget;
7151    
7152    private void setcgcg_paddlemerge_stringbuffer_widget(BooleanOptionWidget widget) {
7153        cgcg_paddlemerge_stringbuffer_widget = widget;
7154    }
7155    
7156    public BooleanOptionWidget getcgcg_paddlemerge_stringbuffer_widget() {
7157        return cgcg_paddlemerge_stringbuffer_widget;
7158    }
7159    
7160    private BooleanOptionWidget cgcg_paddlestring_constants_widget;
7161    
7162    private void setcgcg_paddlestring_constants_widget(BooleanOptionWidget widget) {
7163        cgcg_paddlestring_constants_widget = widget;
7164    }
7165    
7166    public BooleanOptionWidget getcgcg_paddlestring_constants_widget() {
7167        return cgcg_paddlestring_constants_widget;
7168    }
7169    
7170    private BooleanOptionWidget cgcg_paddlesimulate_natives_widget;
7171    
7172    private void setcgcg_paddlesimulate_natives_widget(BooleanOptionWidget widget) {
7173        cgcg_paddlesimulate_natives_widget = widget;
7174    }
7175    
7176    public BooleanOptionWidget getcgcg_paddlesimulate_natives_widget() {
7177        return cgcg_paddlesimulate_natives_widget;
7178    }
7179    
7180    private BooleanOptionWidget cgcg_paddleglobal_nodes_in_natives_widget;
7181    
7182    private void setcgcg_paddleglobal_nodes_in_natives_widget(BooleanOptionWidget widget) {
7183        cgcg_paddleglobal_nodes_in_natives_widget = widget;
7184    }
7185    
7186    public BooleanOptionWidget getcgcg_paddleglobal_nodes_in_natives_widget() {
7187        return cgcg_paddleglobal_nodes_in_natives_widget;
7188    }
7189    
7190    private BooleanOptionWidget cgcg_paddlesimple_edges_bidirectional_widget;
7191    
7192    private void setcgcg_paddlesimple_edges_bidirectional_widget(BooleanOptionWidget widget) {
7193        cgcg_paddlesimple_edges_bidirectional_widget = widget;
7194    }
7195    
7196    public BooleanOptionWidget getcgcg_paddlesimple_edges_bidirectional_widget() {
7197        return cgcg_paddlesimple_edges_bidirectional_widget;
7198    }
7199    
7200    private BooleanOptionWidget cgcg_paddlethis_edges_widget;
7201    
7202    private void setcgcg_paddlethis_edges_widget(BooleanOptionWidget widget) {
7203        cgcg_paddlethis_edges_widget = widget;
7204    }
7205    
7206    public BooleanOptionWidget getcgcg_paddlethis_edges_widget() {
7207        return cgcg_paddlethis_edges_widget;
7208    }
7209    
7210    private BooleanOptionWidget cgcg_paddleprecise_newinstance_widget;
7211    
7212    private void setcgcg_paddleprecise_newinstance_widget(BooleanOptionWidget widget) {
7213        cgcg_paddleprecise_newinstance_widget = widget;
7214    }
7215    
7216    public BooleanOptionWidget getcgcg_paddleprecise_newinstance_widget() {
7217        return cgcg_paddleprecise_newinstance_widget;
7218    }
7219    
7220    
7221    private MultiOptionWidget cgcg_paddlepropagator_widget;
7222    
7223    private void setcgcg_paddlepropagator_widget(MultiOptionWidget widget) {
7224        cgcg_paddlepropagator_widget = widget;
7225    }
7226    
7227    public MultiOptionWidget getcgcg_paddlepropagator_widget() {
7228        return cgcg_paddlepropagator_widget;
7229    }
7230    
7231    
7232    
7233    private MultiOptionWidget cgcg_paddleset_impl_widget;
7234    
7235    private void setcgcg_paddleset_impl_widget(MultiOptionWidget widget) {
7236        cgcg_paddleset_impl_widget = widget;
7237    }
7238    
7239    public MultiOptionWidget getcgcg_paddleset_impl_widget() {
7240        return cgcg_paddleset_impl_widget;
7241    }
7242    
7243    
7244    
7245    private MultiOptionWidget cgcg_paddledouble_set_old_widget;
7246    
7247    private void setcgcg_paddledouble_set_old_widget(MultiOptionWidget widget) {
7248        cgcg_paddledouble_set_old_widget = widget;
7249    }
7250    
7251    public MultiOptionWidget getcgcg_paddledouble_set_old_widget() {
7252        return cgcg_paddledouble_set_old_widget;
7253    }
7254    
7255    
7256    
7257    private MultiOptionWidget cgcg_paddledouble_set_new_widget;
7258    
7259    private void setcgcg_paddledouble_set_new_widget(MultiOptionWidget widget) {
7260        cgcg_paddledouble_set_new_widget = widget;
7261    }
7262    
7263    public MultiOptionWidget getcgcg_paddledouble_set_new_widget() {
7264        return cgcg_paddledouble_set_new_widget;
7265    }
7266    
7267    
7268    private BooleanOptionWidget cgcg_paddlecontext_counts_widget;
7269    
7270    private void setcgcg_paddlecontext_counts_widget(BooleanOptionWidget widget) {
7271        cgcg_paddlecontext_counts_widget = widget;
7272    }
7273    
7274    public BooleanOptionWidget getcgcg_paddlecontext_counts_widget() {
7275        return cgcg_paddlecontext_counts_widget;
7276    }
7277    
7278    private BooleanOptionWidget cgcg_paddletotal_context_counts_widget;
7279    
7280    private void setcgcg_paddletotal_context_counts_widget(BooleanOptionWidget widget) {
7281        cgcg_paddletotal_context_counts_widget = widget;
7282    }
7283    
7284    public BooleanOptionWidget getcgcg_paddletotal_context_counts_widget() {
7285        return cgcg_paddletotal_context_counts_widget;
7286    }
7287    
7288    private BooleanOptionWidget cgcg_paddlemethod_context_counts_widget;
7289    
7290    private void setcgcg_paddlemethod_context_counts_widget(BooleanOptionWidget widget) {
7291        cgcg_paddlemethod_context_counts_widget = widget;
7292    }
7293    
7294    public BooleanOptionWidget getcgcg_paddlemethod_context_counts_widget() {
7295        return cgcg_paddlemethod_context_counts_widget;
7296    }
7297    
7298    private BooleanOptionWidget cgcg_paddleset_mass_widget;
7299    
7300    private void setcgcg_paddleset_mass_widget(BooleanOptionWidget widget) {
7301        cgcg_paddleset_mass_widget = widget;
7302    }
7303    
7304    public BooleanOptionWidget getcgcg_paddleset_mass_widget() {
7305        return cgcg_paddleset_mass_widget;
7306    }
7307    
7308    private BooleanOptionWidget cgcg_paddlenumber_nodes_widget;
7309    
7310    private void setcgcg_paddlenumber_nodes_widget(BooleanOptionWidget widget) {
7311        cgcg_paddlenumber_nodes_widget = widget;
7312    }
7313    
7314    public BooleanOptionWidget getcgcg_paddlenumber_nodes_widget() {
7315        return cgcg_paddlenumber_nodes_widget;
7316    }
7317    
7318    private BooleanOptionWidget wstpenabled_widget;
7319    
7320    private void setwstpenabled_widget(BooleanOptionWidget widget) {
7321        wstpenabled_widget = widget;
7322    }
7323    
7324    public BooleanOptionWidget getwstpenabled_widget() {
7325        return wstpenabled_widget;
7326    }
7327    
7328    private BooleanOptionWidget wsopenabled_widget;
7329    
7330    private void setwsopenabled_widget(BooleanOptionWidget widget) {
7331        wsopenabled_widget = widget;
7332    }
7333    
7334    public BooleanOptionWidget getwsopenabled_widget() {
7335        return wsopenabled_widget;
7336    }
7337    
7338    private BooleanOptionWidget wjtpenabled_widget;
7339    
7340    private void setwjtpenabled_widget(BooleanOptionWidget widget) {
7341        wjtpenabled_widget = widget;
7342    }
7343    
7344    public BooleanOptionWidget getwjtpenabled_widget() {
7345        return wjtpenabled_widget;
7346    }
7347    
7348    private BooleanOptionWidget wjopenabled_widget;
7349    
7350    private void setwjopenabled_widget(BooleanOptionWidget widget) {
7351        wjopenabled_widget = widget;
7352    }
7353    
7354    public BooleanOptionWidget getwjopenabled_widget() {
7355        return wjopenabled_widget;
7356    }
7357    
7358    private BooleanOptionWidget wjopwjop_smbenabled_widget;
7359    
7360    private void setwjopwjop_smbenabled_widget(BooleanOptionWidget widget) {
7361        wjopwjop_smbenabled_widget = widget;
7362    }
7363    
7364    public BooleanOptionWidget getwjopwjop_smbenabled_widget() {
7365        return wjopwjop_smbenabled_widget;
7366    }
7367    
7368    private BooleanOptionWidget wjopwjop_smbinsert_null_checks_widget;
7369    
7370    private void setwjopwjop_smbinsert_null_checks_widget(BooleanOptionWidget widget) {
7371        wjopwjop_smbinsert_null_checks_widget = widget;
7372    }
7373    
7374    public BooleanOptionWidget getwjopwjop_smbinsert_null_checks_widget() {
7375        return wjopwjop_smbinsert_null_checks_widget;
7376    }
7377    
7378    private BooleanOptionWidget wjopwjop_smbinsert_redundant_casts_widget;
7379    
7380    private void setwjopwjop_smbinsert_redundant_casts_widget(BooleanOptionWidget widget) {
7381        wjopwjop_smbinsert_redundant_casts_widget = widget;
7382    }
7383    
7384    public BooleanOptionWidget getwjopwjop_smbinsert_redundant_casts_widget() {
7385        return wjopwjop_smbinsert_redundant_casts_widget;
7386    }
7387    
7388    
7389    private MultiOptionWidget wjopwjop_smballowed_modifier_changes_widget;
7390    
7391    private void setwjopwjop_smballowed_modifier_changes_widget(MultiOptionWidget widget) {
7392        wjopwjop_smballowed_modifier_changes_widget = widget;
7393    }
7394    
7395    public MultiOptionWidget getwjopwjop_smballowed_modifier_changes_widget() {
7396        return wjopwjop_smballowed_modifier_changes_widget;
7397    }
7398    
7399    
7400    private BooleanOptionWidget wjopwjop_sienabled_widget;
7401    
7402    private void setwjopwjop_sienabled_widget(BooleanOptionWidget widget) {
7403        wjopwjop_sienabled_widget = widget;
7404    }
7405    
7406    public BooleanOptionWidget getwjopwjop_sienabled_widget() {
7407        return wjopwjop_sienabled_widget;
7408    }
7409    
7410    private BooleanOptionWidget wjopwjop_sirerun_jb_widget;
7411    
7412    private void setwjopwjop_sirerun_jb_widget(BooleanOptionWidget widget) {
7413        wjopwjop_sirerun_jb_widget = widget;
7414    }
7415    
7416    public BooleanOptionWidget getwjopwjop_sirerun_jb_widget() {
7417        return wjopwjop_sirerun_jb_widget;
7418    }
7419    
7420    private BooleanOptionWidget wjopwjop_siinsert_null_checks_widget;
7421    
7422    private void setwjopwjop_siinsert_null_checks_widget(BooleanOptionWidget widget) {
7423        wjopwjop_siinsert_null_checks_widget = widget;
7424    }
7425    
7426    public BooleanOptionWidget getwjopwjop_siinsert_null_checks_widget() {
7427        return wjopwjop_siinsert_null_checks_widget;
7428    }
7429    
7430    private BooleanOptionWidget wjopwjop_siinsert_redundant_casts_widget;
7431    
7432    private void setwjopwjop_siinsert_redundant_casts_widget(BooleanOptionWidget widget) {
7433        wjopwjop_siinsert_redundant_casts_widget = widget;
7434    }
7435    
7436    public BooleanOptionWidget getwjopwjop_siinsert_redundant_casts_widget() {
7437        return wjopwjop_siinsert_redundant_casts_widget;
7438    }
7439    
7440    
7441    private StringOptionWidget wjopwjop_siexpansion_factor_widget;
7442    
7443    private void setwjopwjop_siexpansion_factor_widget(StringOptionWidget widget) {
7444        wjopwjop_siexpansion_factor_widget = widget;
7445    }
7446    
7447    public StringOptionWidget getwjopwjop_siexpansion_factor_widget() {
7448        return wjopwjop_siexpansion_factor_widget;
7449    }
7450    
7451    
7452    
7453    private StringOptionWidget wjopwjop_simax_container_size_widget;
7454    
7455    private void setwjopwjop_simax_container_size_widget(StringOptionWidget widget) {
7456        wjopwjop_simax_container_size_widget = widget;
7457    }
7458    
7459    public StringOptionWidget getwjopwjop_simax_container_size_widget() {
7460        return wjopwjop_simax_container_size_widget;
7461    }
7462    
7463    
7464    
7465    private StringOptionWidget wjopwjop_simax_inlinee_size_widget;
7466    
7467    private void setwjopwjop_simax_inlinee_size_widget(StringOptionWidget widget) {
7468        wjopwjop_simax_inlinee_size_widget = widget;
7469    }
7470    
7471    public StringOptionWidget getwjopwjop_simax_inlinee_size_widget() {
7472        return wjopwjop_simax_inlinee_size_widget;
7473    }
7474    
7475    
7476    
7477    private MultiOptionWidget wjopwjop_siallowed_modifier_changes_widget;
7478    
7479    private void setwjopwjop_siallowed_modifier_changes_widget(MultiOptionWidget widget) {
7480        wjopwjop_siallowed_modifier_changes_widget = widget;
7481    }
7482    
7483    public MultiOptionWidget getwjopwjop_siallowed_modifier_changes_widget() {
7484        return wjopwjop_siallowed_modifier_changes_widget;
7485    }
7486    
7487    
7488    private BooleanOptionWidget wjapenabled_widget;
7489    
7490    private void setwjapenabled_widget(BooleanOptionWidget widget) {
7491        wjapenabled_widget = widget;
7492    }
7493    
7494    public BooleanOptionWidget getwjapenabled_widget() {
7495        return wjapenabled_widget;
7496    }
7497    
7498    private BooleanOptionWidget wjapwjap_raenabled_widget;
7499    
7500    private void setwjapwjap_raenabled_widget(BooleanOptionWidget widget) {
7501        wjapwjap_raenabled_widget = widget;
7502    }
7503    
7504    public BooleanOptionWidget getwjapwjap_raenabled_widget() {
7505        return wjapwjap_raenabled_widget;
7506    }
7507    
7508    private BooleanOptionWidget wjapwjap_umtenabled_widget;
7509    
7510    private void setwjapwjap_umtenabled_widget(BooleanOptionWidget widget) {
7511        wjapwjap_umtenabled_widget = widget;
7512    }
7513    
7514    public BooleanOptionWidget getwjapwjap_umtenabled_widget() {
7515        return wjapwjap_umtenabled_widget;
7516    }
7517    
7518    private BooleanOptionWidget wjapwjap_uftenabled_widget;
7519    
7520    private void setwjapwjap_uftenabled_widget(BooleanOptionWidget widget) {
7521        wjapwjap_uftenabled_widget = widget;
7522    }
7523    
7524    public BooleanOptionWidget getwjapwjap_uftenabled_widget() {
7525        return wjapwjap_uftenabled_widget;
7526    }
7527    
7528    private BooleanOptionWidget wjapwjap_tqtenabled_widget;
7529    
7530    private void setwjapwjap_tqtenabled_widget(BooleanOptionWidget widget) {
7531        wjapwjap_tqtenabled_widget = widget;
7532    }
7533    
7534    public BooleanOptionWidget getwjapwjap_tqtenabled_widget() {
7535        return wjapwjap_tqtenabled_widget;
7536    }
7537    
7538    private BooleanOptionWidget wjapwjap_cggenabled_widget;
7539    
7540    private void setwjapwjap_cggenabled_widget(BooleanOptionWidget widget) {
7541        wjapwjap_cggenabled_widget = widget;
7542    }
7543    
7544    public BooleanOptionWidget getwjapwjap_cggenabled_widget() {
7545        return wjapwjap_cggenabled_widget;
7546    }
7547    
7548    private BooleanOptionWidget wjapwjap_cggshow_lib_meths_widget;
7549    
7550    private void setwjapwjap_cggshow_lib_meths_widget(BooleanOptionWidget widget) {
7551        wjapwjap_cggshow_lib_meths_widget = widget;
7552    }
7553    
7554    public BooleanOptionWidget getwjapwjap_cggshow_lib_meths_widget() {
7555        return wjapwjap_cggshow_lib_meths_widget;
7556    }
7557    
7558    private BooleanOptionWidget wjapwjap_purityenabled_widget;
7559    
7560    private void setwjapwjap_purityenabled_widget(BooleanOptionWidget widget) {
7561        wjapwjap_purityenabled_widget = widget;
7562    }
7563    
7564    public BooleanOptionWidget getwjapwjap_purityenabled_widget() {
7565        return wjapwjap_purityenabled_widget;
7566    }
7567    
7568    private BooleanOptionWidget wjapwjap_puritydump_summaries_widget;
7569    
7570    private void setwjapwjap_puritydump_summaries_widget(BooleanOptionWidget widget) {
7571        wjapwjap_puritydump_summaries_widget = widget;
7572    }
7573    
7574    public BooleanOptionWidget getwjapwjap_puritydump_summaries_widget() {
7575        return wjapwjap_puritydump_summaries_widget;
7576    }
7577    
7578    private BooleanOptionWidget wjapwjap_puritydump_cg_widget;
7579    
7580    private void setwjapwjap_puritydump_cg_widget(BooleanOptionWidget widget) {
7581        wjapwjap_puritydump_cg_widget = widget;
7582    }
7583    
7584    public BooleanOptionWidget getwjapwjap_puritydump_cg_widget() {
7585        return wjapwjap_puritydump_cg_widget;
7586    }
7587    
7588    private BooleanOptionWidget wjapwjap_puritydump_intra_widget;
7589    
7590    private void setwjapwjap_puritydump_intra_widget(BooleanOptionWidget widget) {
7591        wjapwjap_puritydump_intra_widget = widget;
7592    }
7593    
7594    public BooleanOptionWidget getwjapwjap_puritydump_intra_widget() {
7595        return wjapwjap_puritydump_intra_widget;
7596    }
7597    
7598    private BooleanOptionWidget wjapwjap_purityprint_widget;
7599    
7600    private void setwjapwjap_purityprint_widget(BooleanOptionWidget widget) {
7601        wjapwjap_purityprint_widget = widget;
7602    }
7603    
7604    public BooleanOptionWidget getwjapwjap_purityprint_widget() {
7605        return wjapwjap_purityprint_widget;
7606    }
7607    
7608    private BooleanOptionWidget wjapwjap_purityverbose_widget;
7609    
7610    private void setwjapwjap_purityverbose_widget(BooleanOptionWidget widget) {
7611        wjapwjap_purityverbose_widget = widget;
7612    }
7613    
7614    public BooleanOptionWidget getwjapwjap_purityverbose_widget() {
7615        return wjapwjap_purityverbose_widget;
7616    }
7617    
7618    private BooleanOptionWidget shimpleenabled_widget;
7619    
7620    private void setshimpleenabled_widget(BooleanOptionWidget widget) {
7621        shimpleenabled_widget = widget;
7622    }
7623    
7624    public BooleanOptionWidget getshimpleenabled_widget() {
7625        return shimpleenabled_widget;
7626    }
7627    
7628    private BooleanOptionWidget shimplenode_elim_opt_widget;
7629    
7630    private void setshimplenode_elim_opt_widget(BooleanOptionWidget widget) {
7631        shimplenode_elim_opt_widget = widget;
7632    }
7633    
7634    public BooleanOptionWidget getshimplenode_elim_opt_widget() {
7635        return shimplenode_elim_opt_widget;
7636    }
7637    
7638    private BooleanOptionWidget shimplestandard_local_names_widget;
7639    
7640    private void setshimplestandard_local_names_widget(BooleanOptionWidget widget) {
7641        shimplestandard_local_names_widget = widget;
7642    }
7643    
7644    public BooleanOptionWidget getshimplestandard_local_names_widget() {
7645        return shimplestandard_local_names_widget;
7646    }
7647    
7648    private BooleanOptionWidget shimpleextended_widget;
7649    
7650    private void setshimpleextended_widget(BooleanOptionWidget widget) {
7651        shimpleextended_widget = widget;
7652    }
7653    
7654    public BooleanOptionWidget getshimpleextended_widget() {
7655        return shimpleextended_widget;
7656    }
7657    
7658    private BooleanOptionWidget shimpledebug_widget;
7659    
7660    private void setshimpledebug_widget(BooleanOptionWidget widget) {
7661        shimpledebug_widget = widget;
7662    }
7663    
7664    public BooleanOptionWidget getshimpledebug_widget() {
7665        return shimpledebug_widget;
7666    }
7667    
7668    private BooleanOptionWidget stpenabled_widget;
7669    
7670    private void setstpenabled_widget(BooleanOptionWidget widget) {
7671        stpenabled_widget = widget;
7672    }
7673    
7674    public BooleanOptionWidget getstpenabled_widget() {
7675        return stpenabled_widget;
7676    }
7677    
7678    private BooleanOptionWidget sopenabled_widget;
7679    
7680    private void setsopenabled_widget(BooleanOptionWidget widget) {
7681        sopenabled_widget = widget;
7682    }
7683    
7684    public BooleanOptionWidget getsopenabled_widget() {
7685        return sopenabled_widget;
7686    }
7687    
7688    private BooleanOptionWidget sopsop_cpfenabled_widget;
7689    
7690    private void setsopsop_cpfenabled_widget(BooleanOptionWidget widget) {
7691        sopsop_cpfenabled_widget = widget;
7692    }
7693    
7694    public BooleanOptionWidget getsopsop_cpfenabled_widget() {
7695        return sopsop_cpfenabled_widget;
7696    }
7697    
7698    private BooleanOptionWidget sopsop_cpfprune_cfg_widget;
7699    
7700    private void setsopsop_cpfprune_cfg_widget(BooleanOptionWidget widget) {
7701        sopsop_cpfprune_cfg_widget = widget;
7702    }
7703    
7704    public BooleanOptionWidget getsopsop_cpfprune_cfg_widget() {
7705        return sopsop_cpfprune_cfg_widget;
7706    }
7707    
7708    private BooleanOptionWidget jtpenabled_widget;
7709    
7710    private void setjtpenabled_widget(BooleanOptionWidget widget) {
7711        jtpenabled_widget = widget;
7712    }
7713    
7714    public BooleanOptionWidget getjtpenabled_widget() {
7715        return jtpenabled_widget;
7716    }
7717    
7718    private BooleanOptionWidget jopenabled_widget;
7719    
7720    private void setjopenabled_widget(BooleanOptionWidget widget) {
7721        jopenabled_widget = widget;
7722    }
7723    
7724    public BooleanOptionWidget getjopenabled_widget() {
7725        return jopenabled_widget;
7726    }
7727    
7728    private BooleanOptionWidget jopjop_cseenabled_widget;
7729    
7730    private void setjopjop_cseenabled_widget(BooleanOptionWidget widget) {
7731        jopjop_cseenabled_widget = widget;
7732    }
7733    
7734    public BooleanOptionWidget getjopjop_cseenabled_widget() {
7735        return jopjop_cseenabled_widget;
7736    }
7737    
7738    private BooleanOptionWidget jopjop_csenaive_side_effect_widget;
7739    
7740    private void setjopjop_csenaive_side_effect_widget(BooleanOptionWidget widget) {
7741        jopjop_csenaive_side_effect_widget = widget;
7742    }
7743    
7744    public BooleanOptionWidget getjopjop_csenaive_side_effect_widget() {
7745        return jopjop_csenaive_side_effect_widget;
7746    }
7747    
7748    private BooleanOptionWidget jopjop_bcmenabled_widget;
7749    
7750    private void setjopjop_bcmenabled_widget(BooleanOptionWidget widget) {
7751        jopjop_bcmenabled_widget = widget;
7752    }
7753    
7754    public BooleanOptionWidget getjopjop_bcmenabled_widget() {
7755        return jopjop_bcmenabled_widget;
7756    }
7757    
7758    private BooleanOptionWidget jopjop_bcmnaive_side_effect_widget;
7759    
7760    private void setjopjop_bcmnaive_side_effect_widget(BooleanOptionWidget widget) {
7761        jopjop_bcmnaive_side_effect_widget = widget;
7762    }
7763    
7764    public BooleanOptionWidget getjopjop_bcmnaive_side_effect_widget() {
7765        return jopjop_bcmnaive_side_effect_widget;
7766    }
7767    
7768    private BooleanOptionWidget jopjop_lcmenabled_widget;
7769    
7770    private void setjopjop_lcmenabled_widget(BooleanOptionWidget widget) {
7771        jopjop_lcmenabled_widget = widget;
7772    }
7773    
7774    public BooleanOptionWidget getjopjop_lcmenabled_widget() {
7775        return jopjop_lcmenabled_widget;
7776    }
7777    
7778    private BooleanOptionWidget jopjop_lcmunroll_widget;
7779    
7780    private void setjopjop_lcmunroll_widget(BooleanOptionWidget widget) {
7781        jopjop_lcmunroll_widget = widget;
7782    }
7783    
7784    public BooleanOptionWidget getjopjop_lcmunroll_widget() {
7785        return jopjop_lcmunroll_widget;
7786    }
7787    
7788    private BooleanOptionWidget jopjop_lcmnaive_side_effect_widget;
7789    
7790    private void setjopjop_lcmnaive_side_effect_widget(BooleanOptionWidget widget) {
7791        jopjop_lcmnaive_side_effect_widget = widget;
7792    }
7793    
7794    public BooleanOptionWidget getjopjop_lcmnaive_side_effect_widget() {
7795        return jopjop_lcmnaive_side_effect_widget;
7796    }
7797    
7798    
7799    private MultiOptionWidget jopjop_lcmsafety_widget;
7800    
7801    private void setjopjop_lcmsafety_widget(MultiOptionWidget widget) {
7802        jopjop_lcmsafety_widget = widget;
7803    }
7804    
7805    public MultiOptionWidget getjopjop_lcmsafety_widget() {
7806        return jopjop_lcmsafety_widget;
7807    }
7808    
7809    
7810    private BooleanOptionWidget jopjop_cpenabled_widget;
7811    
7812    private void setjopjop_cpenabled_widget(BooleanOptionWidget widget) {
7813        jopjop_cpenabled_widget = widget;
7814    }
7815    
7816    public BooleanOptionWidget getjopjop_cpenabled_widget() {
7817        return jopjop_cpenabled_widget;
7818    }
7819    
7820    private BooleanOptionWidget jopjop_cponly_regular_locals_widget;
7821    
7822    private void setjopjop_cponly_regular_locals_widget(BooleanOptionWidget widget) {
7823        jopjop_cponly_regular_locals_widget = widget;
7824    }
7825    
7826    public BooleanOptionWidget getjopjop_cponly_regular_locals_widget() {
7827        return jopjop_cponly_regular_locals_widget;
7828    }
7829    
7830    private BooleanOptionWidget jopjop_cponly_stack_locals_widget;
7831    
7832    private void setjopjop_cponly_stack_locals_widget(BooleanOptionWidget widget) {
7833        jopjop_cponly_stack_locals_widget = widget;
7834    }
7835    
7836    public BooleanOptionWidget getjopjop_cponly_stack_locals_widget() {
7837        return jopjop_cponly_stack_locals_widget;
7838    }
7839    
7840    private BooleanOptionWidget jopjop_cpfenabled_widget;
7841    
7842    private void setjopjop_cpfenabled_widget(BooleanOptionWidget widget) {
7843        jopjop_cpfenabled_widget = widget;
7844    }
7845    
7846    public BooleanOptionWidget getjopjop_cpfenabled_widget() {
7847        return jopjop_cpfenabled_widget;
7848    }
7849    
7850    private BooleanOptionWidget jopjop_cbfenabled_widget;
7851    
7852    private void setjopjop_cbfenabled_widget(BooleanOptionWidget widget) {
7853        jopjop_cbfenabled_widget = widget;
7854    }
7855    
7856    public BooleanOptionWidget getjopjop_cbfenabled_widget() {
7857        return jopjop_cbfenabled_widget;
7858    }
7859    
7860    private BooleanOptionWidget jopjop_daeenabled_widget;
7861    
7862    private void setjopjop_daeenabled_widget(BooleanOptionWidget widget) {
7863        jopjop_daeenabled_widget = widget;
7864    }
7865    
7866    public BooleanOptionWidget getjopjop_daeenabled_widget() {
7867        return jopjop_daeenabled_widget;
7868    }
7869    
7870    private BooleanOptionWidget jopjop_daeonly_tag_widget;
7871    
7872    private void setjopjop_daeonly_tag_widget(BooleanOptionWidget widget) {
7873        jopjop_daeonly_tag_widget = widget;
7874    }
7875    
7876    public BooleanOptionWidget getjopjop_daeonly_tag_widget() {
7877        return jopjop_daeonly_tag_widget;
7878    }
7879    
7880    private BooleanOptionWidget jopjop_daeonly_stack_locals_widget;
7881    
7882    private void setjopjop_daeonly_stack_locals_widget(BooleanOptionWidget widget) {
7883        jopjop_daeonly_stack_locals_widget = widget;
7884    }
7885    
7886    public BooleanOptionWidget getjopjop_daeonly_stack_locals_widget() {
7887        return jopjop_daeonly_stack_locals_widget;
7888    }
7889    
7890    private BooleanOptionWidget jopjop_uce1enabled_widget;
7891    
7892    private void setjopjop_uce1enabled_widget(BooleanOptionWidget widget) {
7893        jopjop_uce1enabled_widget = widget;
7894    }
7895    
7896    public BooleanOptionWidget getjopjop_uce1enabled_widget() {
7897        return jopjop_uce1enabled_widget;
7898    }
7899    
7900    private BooleanOptionWidget jopjop_uce1remove_unreachable_traps_widget;
7901    
7902    private void setjopjop_uce1remove_unreachable_traps_widget(BooleanOptionWidget widget) {
7903        jopjop_uce1remove_unreachable_traps_widget = widget;
7904    }
7905    
7906    public BooleanOptionWidget getjopjop_uce1remove_unreachable_traps_widget() {
7907        return jopjop_uce1remove_unreachable_traps_widget;
7908    }
7909    
7910    private BooleanOptionWidget jopjop_ubf1enabled_widget;
7911    
7912    private void setjopjop_ubf1enabled_widget(BooleanOptionWidget widget) {
7913        jopjop_ubf1enabled_widget = widget;
7914    }
7915    
7916    public BooleanOptionWidget getjopjop_ubf1enabled_widget() {
7917        return jopjop_ubf1enabled_widget;
7918    }
7919    
7920    private BooleanOptionWidget jopjop_uce2enabled_widget;
7921    
7922    private void setjopjop_uce2enabled_widget(BooleanOptionWidget widget) {
7923        jopjop_uce2enabled_widget = widget;
7924    }
7925    
7926    public BooleanOptionWidget getjopjop_uce2enabled_widget() {
7927        return jopjop_uce2enabled_widget;
7928    }
7929    
7930    private BooleanOptionWidget jopjop_uce2remove_unreachable_traps_widget;
7931    
7932    private void setjopjop_uce2remove_unreachable_traps_widget(BooleanOptionWidget widget) {
7933        jopjop_uce2remove_unreachable_traps_widget = widget;
7934    }
7935    
7936    public BooleanOptionWidget getjopjop_uce2remove_unreachable_traps_widget() {
7937        return jopjop_uce2remove_unreachable_traps_widget;
7938    }
7939    
7940    private BooleanOptionWidget jopjop_ubf2enabled_widget;
7941    
7942    private void setjopjop_ubf2enabled_widget(BooleanOptionWidget widget) {
7943        jopjop_ubf2enabled_widget = widget;
7944    }
7945    
7946    public BooleanOptionWidget getjopjop_ubf2enabled_widget() {
7947        return jopjop_ubf2enabled_widget;
7948    }
7949    
7950    private BooleanOptionWidget jopjop_uleenabled_widget;
7951    
7952    private void setjopjop_uleenabled_widget(BooleanOptionWidget widget) {
7953        jopjop_uleenabled_widget = widget;
7954    }
7955    
7956    public BooleanOptionWidget getjopjop_uleenabled_widget() {
7957        return jopjop_uleenabled_widget;
7958    }
7959    
7960    private BooleanOptionWidget japenabled_widget;
7961    
7962    private void setjapenabled_widget(BooleanOptionWidget widget) {
7963        japenabled_widget = widget;
7964    }
7965    
7966    public BooleanOptionWidget getjapenabled_widget() {
7967        return japenabled_widget;
7968    }
7969    
7970    private BooleanOptionWidget japjap_npcenabled_widget;
7971    
7972    private void setjapjap_npcenabled_widget(BooleanOptionWidget widget) {
7973        japjap_npcenabled_widget = widget;
7974    }
7975    
7976    public BooleanOptionWidget getjapjap_npcenabled_widget() {
7977        return japjap_npcenabled_widget;
7978    }
7979    
7980    private BooleanOptionWidget japjap_npconly_array_ref_widget;
7981    
7982    private void setjapjap_npconly_array_ref_widget(BooleanOptionWidget widget) {
7983        japjap_npconly_array_ref_widget = widget;
7984    }
7985    
7986    public BooleanOptionWidget getjapjap_npconly_array_ref_widget() {
7987        return japjap_npconly_array_ref_widget;
7988    }
7989    
7990    private BooleanOptionWidget japjap_npcprofiling_widget;
7991    
7992    private void setjapjap_npcprofiling_widget(BooleanOptionWidget widget) {
7993        japjap_npcprofiling_widget = widget;
7994    }
7995    
7996    public BooleanOptionWidget getjapjap_npcprofiling_widget() {
7997        return japjap_npcprofiling_widget;
7998    }
7999    
8000    private BooleanOptionWidget japjap_npcolorerenabled_widget;
8001    
8002    private void setjapjap_npcolorerenabled_widget(BooleanOptionWidget widget) {
8003        japjap_npcolorerenabled_widget = widget;
8004    }
8005    
8006    public BooleanOptionWidget getjapjap_npcolorerenabled_widget() {
8007        return japjap_npcolorerenabled_widget;
8008    }
8009    
8010    private BooleanOptionWidget japjap_abcenabled_widget;
8011    
8012    private void setjapjap_abcenabled_widget(BooleanOptionWidget widget) {
8013        japjap_abcenabled_widget = widget;
8014    }
8015    
8016    public BooleanOptionWidget getjapjap_abcenabled_widget() {
8017        return japjap_abcenabled_widget;
8018    }
8019    
8020    private BooleanOptionWidget japjap_abcwith_all_widget;
8021    
8022    private void setjapjap_abcwith_all_widget(BooleanOptionWidget widget) {
8023        japjap_abcwith_all_widget = widget;
8024    }
8025    
8026    public BooleanOptionWidget getjapjap_abcwith_all_widget() {
8027        return japjap_abcwith_all_widget;
8028    }
8029    
8030    private BooleanOptionWidget japjap_abcwith_cse_widget;
8031    
8032    private void setjapjap_abcwith_cse_widget(BooleanOptionWidget widget) {
8033        japjap_abcwith_cse_widget = widget;
8034    }
8035    
8036    public BooleanOptionWidget getjapjap_abcwith_cse_widget() {
8037        return japjap_abcwith_cse_widget;
8038    }
8039    
8040    private BooleanOptionWidget japjap_abcwith_arrayref_widget;
8041    
8042    private void setjapjap_abcwith_arrayref_widget(BooleanOptionWidget widget) {
8043        japjap_abcwith_arrayref_widget = widget;
8044    }
8045    
8046    public BooleanOptionWidget getjapjap_abcwith_arrayref_widget() {
8047        return japjap_abcwith_arrayref_widget;
8048    }
8049    
8050    private BooleanOptionWidget japjap_abcwith_fieldref_widget;
8051    
8052    private void setjapjap_abcwith_fieldref_widget(BooleanOptionWidget widget) {
8053        japjap_abcwith_fieldref_widget = widget;
8054    }
8055    
8056    public BooleanOptionWidget getjapjap_abcwith_fieldref_widget() {
8057        return japjap_abcwith_fieldref_widget;
8058    }
8059    
8060    private BooleanOptionWidget japjap_abcwith_classfield_widget;
8061    
8062    private void setjapjap_abcwith_classfield_widget(BooleanOptionWidget widget) {
8063        japjap_abcwith_classfield_widget = widget;
8064    }
8065    
8066    public BooleanOptionWidget getjapjap_abcwith_classfield_widget() {
8067        return japjap_abcwith_classfield_widget;
8068    }
8069    
8070    private BooleanOptionWidget japjap_abcwith_rectarray_widget;
8071    
8072    private void setjapjap_abcwith_rectarray_widget(BooleanOptionWidget widget) {
8073        japjap_abcwith_rectarray_widget = widget;
8074    }
8075    
8076    public BooleanOptionWidget getjapjap_abcwith_rectarray_widget() {
8077        return japjap_abcwith_rectarray_widget;
8078    }
8079    
8080    private BooleanOptionWidget japjap_abcprofiling_widget;
8081    
8082    private void setjapjap_abcprofiling_widget(BooleanOptionWidget widget) {
8083        japjap_abcprofiling_widget = widget;
8084    }
8085    
8086    public BooleanOptionWidget getjapjap_abcprofiling_widget() {
8087        return japjap_abcprofiling_widget;
8088    }
8089    
8090    private BooleanOptionWidget japjap_abcadd_color_tags_widget;
8091    
8092    private void setjapjap_abcadd_color_tags_widget(BooleanOptionWidget widget) {
8093        japjap_abcadd_color_tags_widget = widget;
8094    }
8095    
8096    public BooleanOptionWidget getjapjap_abcadd_color_tags_widget() {
8097        return japjap_abcadd_color_tags_widget;
8098    }
8099    
8100    private BooleanOptionWidget japjap_profilingenabled_widget;
8101    
8102    private void setjapjap_profilingenabled_widget(BooleanOptionWidget widget) {
8103        japjap_profilingenabled_widget = widget;
8104    }
8105    
8106    public BooleanOptionWidget getjapjap_profilingenabled_widget() {
8107        return japjap_profilingenabled_widget;
8108    }
8109    
8110    private BooleanOptionWidget japjap_profilingnotmainentry_widget;
8111    
8112    private void setjapjap_profilingnotmainentry_widget(BooleanOptionWidget widget) {
8113        japjap_profilingnotmainentry_widget = widget;
8114    }
8115    
8116    public BooleanOptionWidget getjapjap_profilingnotmainentry_widget() {
8117        return japjap_profilingnotmainentry_widget;
8118    }
8119    
8120    private BooleanOptionWidget japjap_seaenabled_widget;
8121    
8122    private void setjapjap_seaenabled_widget(BooleanOptionWidget widget) {
8123        japjap_seaenabled_widget = widget;
8124    }
8125    
8126    public BooleanOptionWidget getjapjap_seaenabled_widget() {
8127        return japjap_seaenabled_widget;
8128    }
8129    
8130    private BooleanOptionWidget japjap_seanaive_widget;
8131    
8132    private void setjapjap_seanaive_widget(BooleanOptionWidget widget) {
8133        japjap_seanaive_widget = widget;
8134    }
8135    
8136    public BooleanOptionWidget getjapjap_seanaive_widget() {
8137        return japjap_seanaive_widget;
8138    }
8139    
8140    private BooleanOptionWidget japjap_fieldrwenabled_widget;
8141    
8142    private void setjapjap_fieldrwenabled_widget(BooleanOptionWidget widget) {
8143        japjap_fieldrwenabled_widget = widget;
8144    }
8145    
8146    public BooleanOptionWidget getjapjap_fieldrwenabled_widget() {
8147        return japjap_fieldrwenabled_widget;
8148    }
8149    
8150    
8151    private StringOptionWidget japjap_fieldrwthreshold_widget;
8152    
8153    private void setjapjap_fieldrwthreshold_widget(StringOptionWidget widget) {
8154        japjap_fieldrwthreshold_widget = widget;
8155    }
8156    
8157    public StringOptionWidget getjapjap_fieldrwthreshold_widget() {
8158        return japjap_fieldrwthreshold_widget;
8159    }
8160    
8161    
8162    private BooleanOptionWidget japjap_cgtaggerenabled_widget;
8163    
8164    private void setjapjap_cgtaggerenabled_widget(BooleanOptionWidget widget) {
8165        japjap_cgtaggerenabled_widget = widget;
8166    }
8167    
8168    public BooleanOptionWidget getjapjap_cgtaggerenabled_widget() {
8169        return japjap_cgtaggerenabled_widget;
8170    }
8171    
8172    private BooleanOptionWidget japjap_parityenabled_widget;
8173    
8174    private void setjapjap_parityenabled_widget(BooleanOptionWidget widget) {
8175        japjap_parityenabled_widget = widget;
8176    }
8177    
8178    public BooleanOptionWidget getjapjap_parityenabled_widget() {
8179        return japjap_parityenabled_widget;
8180    }
8181    
8182    private BooleanOptionWidget japjap_patenabled_widget;
8183    
8184    private void setjapjap_patenabled_widget(BooleanOptionWidget widget) {
8185        japjap_patenabled_widget = widget;
8186    }
8187    
8188    public BooleanOptionWidget getjapjap_patenabled_widget() {
8189        return japjap_patenabled_widget;
8190    }
8191    
8192    private BooleanOptionWidget japjap_lvtaggerenabled_widget;
8193    
8194    private void setjapjap_lvtaggerenabled_widget(BooleanOptionWidget widget) {
8195        japjap_lvtaggerenabled_widget = widget;
8196    }
8197    
8198    public BooleanOptionWidget getjapjap_lvtaggerenabled_widget() {
8199        return japjap_lvtaggerenabled_widget;
8200    }
8201    
8202    private BooleanOptionWidget japjap_rdtaggerenabled_widget;
8203    
8204    private void setjapjap_rdtaggerenabled_widget(BooleanOptionWidget widget) {
8205        japjap_rdtaggerenabled_widget = widget;
8206    }
8207    
8208    public BooleanOptionWidget getjapjap_rdtaggerenabled_widget() {
8209        return japjap_rdtaggerenabled_widget;
8210    }
8211    
8212    private BooleanOptionWidget japjap_cheenabled_widget;
8213    
8214    private void setjapjap_cheenabled_widget(BooleanOptionWidget widget) {
8215        japjap_cheenabled_widget = widget;
8216    }
8217    
8218    public BooleanOptionWidget getjapjap_cheenabled_widget() {
8219        return japjap_cheenabled_widget;
8220    }
8221    
8222    private BooleanOptionWidget japjap_umtenabled_widget;
8223    
8224    private void setjapjap_umtenabled_widget(BooleanOptionWidget widget) {
8225        japjap_umtenabled_widget = widget;
8226    }
8227    
8228    public BooleanOptionWidget getjapjap_umtenabled_widget() {
8229        return japjap_umtenabled_widget;
8230    }
8231    
8232    private BooleanOptionWidget japjap_litenabled_widget;
8233    
8234    private void setjapjap_litenabled_widget(BooleanOptionWidget widget) {
8235        japjap_litenabled_widget = widget;
8236    }
8237    
8238    public BooleanOptionWidget getjapjap_litenabled_widget() {
8239        return japjap_litenabled_widget;
8240    }
8241    
8242    private BooleanOptionWidget japjap_aetenabled_widget;
8243    
8244    private void setjapjap_aetenabled_widget(BooleanOptionWidget widget) {
8245        japjap_aetenabled_widget = widget;
8246    }
8247    
8248    public BooleanOptionWidget getjapjap_aetenabled_widget() {
8249        return japjap_aetenabled_widget;
8250    }
8251    
8252    
8253    private MultiOptionWidget japjap_aetkind_widget;
8254    
8255    private void setjapjap_aetkind_widget(MultiOptionWidget widget) {
8256        japjap_aetkind_widget = widget;
8257    }
8258    
8259    public MultiOptionWidget getjapjap_aetkind_widget() {
8260        return japjap_aetkind_widget;
8261    }
8262    
8263    
8264    private BooleanOptionWidget japjap_dmtenabled_widget;
8265    
8266    private void setjapjap_dmtenabled_widget(BooleanOptionWidget widget) {
8267        japjap_dmtenabled_widget = widget;
8268    }
8269    
8270    public BooleanOptionWidget getjapjap_dmtenabled_widget() {
8271        return japjap_dmtenabled_widget;
8272    }
8273    
8274    private BooleanOptionWidget gbenabled_widget;
8275    
8276    private void setgbenabled_widget(BooleanOptionWidget widget) {
8277        gbenabled_widget = widget;
8278    }
8279    
8280    public BooleanOptionWidget getgbenabled_widget() {
8281        return gbenabled_widget;
8282    }
8283    
8284    private BooleanOptionWidget gbgb_a1enabled_widget;
8285    
8286    private void setgbgb_a1enabled_widget(BooleanOptionWidget widget) {
8287        gbgb_a1enabled_widget = widget;
8288    }
8289    
8290    public BooleanOptionWidget getgbgb_a1enabled_widget() {
8291        return gbgb_a1enabled_widget;
8292    }
8293    
8294    private BooleanOptionWidget gbgb_a1only_stack_locals_widget;
8295    
8296    private void setgbgb_a1only_stack_locals_widget(BooleanOptionWidget widget) {
8297        gbgb_a1only_stack_locals_widget = widget;
8298    }
8299    
8300    public BooleanOptionWidget getgbgb_a1only_stack_locals_widget() {
8301        return gbgb_a1only_stack_locals_widget;
8302    }
8303    
8304    private BooleanOptionWidget gbgb_cfenabled_widget;
8305    
8306    private void setgbgb_cfenabled_widget(BooleanOptionWidget widget) {
8307        gbgb_cfenabled_widget = widget;
8308    }
8309    
8310    public BooleanOptionWidget getgbgb_cfenabled_widget() {
8311        return gbgb_cfenabled_widget;
8312    }
8313    
8314    private BooleanOptionWidget gbgb_a2enabled_widget;
8315    
8316    private void setgbgb_a2enabled_widget(BooleanOptionWidget widget) {
8317        gbgb_a2enabled_widget = widget;
8318    }
8319    
8320    public BooleanOptionWidget getgbgb_a2enabled_widget() {
8321        return gbgb_a2enabled_widget;
8322    }
8323    
8324    private BooleanOptionWidget gbgb_a2only_stack_locals_widget;
8325    
8326    private void setgbgb_a2only_stack_locals_widget(BooleanOptionWidget widget) {
8327        gbgb_a2only_stack_locals_widget = widget;
8328    }
8329    
8330    public BooleanOptionWidget getgbgb_a2only_stack_locals_widget() {
8331        return gbgb_a2only_stack_locals_widget;
8332    }
8333    
8334    private BooleanOptionWidget gbgb_uleenabled_widget;
8335    
8336    private void setgbgb_uleenabled_widget(BooleanOptionWidget widget) {
8337        gbgb_uleenabled_widget = widget;
8338    }
8339    
8340    public BooleanOptionWidget getgbgb_uleenabled_widget() {
8341        return gbgb_uleenabled_widget;
8342    }
8343    
8344    private BooleanOptionWidget gopenabled_widget;
8345    
8346    private void setgopenabled_widget(BooleanOptionWidget widget) {
8347        gopenabled_widget = widget;
8348    }
8349    
8350    public BooleanOptionWidget getgopenabled_widget() {
8351        return gopenabled_widget;
8352    }
8353    
8354    private BooleanOptionWidget bbenabled_widget;
8355    
8356    private void setbbenabled_widget(BooleanOptionWidget widget) {
8357        bbenabled_widget = widget;
8358    }
8359    
8360    public BooleanOptionWidget getbbenabled_widget() {
8361        return bbenabled_widget;
8362    }
8363    
8364    private BooleanOptionWidget bbbb_lsoenabled_widget;
8365    
8366    private void setbbbb_lsoenabled_widget(BooleanOptionWidget widget) {
8367        bbbb_lsoenabled_widget = widget;
8368    }
8369    
8370    public BooleanOptionWidget getbbbb_lsoenabled_widget() {
8371        return bbbb_lsoenabled_widget;
8372    }
8373    
8374    private BooleanOptionWidget bbbb_lsodebug_widget;
8375    
8376    private void setbbbb_lsodebug_widget(BooleanOptionWidget widget) {
8377        bbbb_lsodebug_widget = widget;
8378    }
8379    
8380    public BooleanOptionWidget getbbbb_lsodebug_widget() {
8381        return bbbb_lsodebug_widget;
8382    }
8383    
8384    private BooleanOptionWidget bbbb_lsointer_widget;
8385    
8386    private void setbbbb_lsointer_widget(BooleanOptionWidget widget) {
8387        bbbb_lsointer_widget = widget;
8388    }
8389    
8390    public BooleanOptionWidget getbbbb_lsointer_widget() {
8391        return bbbb_lsointer_widget;
8392    }
8393    
8394    private BooleanOptionWidget bbbb_lsosl_widget;
8395    
8396    private void setbbbb_lsosl_widget(BooleanOptionWidget widget) {
8397        bbbb_lsosl_widget = widget;
8398    }
8399    
8400    public BooleanOptionWidget getbbbb_lsosl_widget() {
8401        return bbbb_lsosl_widget;
8402    }
8403    
8404    private BooleanOptionWidget bbbb_lsosl2_widget;
8405    
8406    private void setbbbb_lsosl2_widget(BooleanOptionWidget widget) {
8407        bbbb_lsosl2_widget = widget;
8408    }
8409    
8410    public BooleanOptionWidget getbbbb_lsosl2_widget() {
8411        return bbbb_lsosl2_widget;
8412    }
8413    
8414    private BooleanOptionWidget bbbb_lsosll_widget;
8415    
8416    private void setbbbb_lsosll_widget(BooleanOptionWidget widget) {
8417        bbbb_lsosll_widget = widget;
8418    }
8419    
8420    public BooleanOptionWidget getbbbb_lsosll_widget() {
8421        return bbbb_lsosll_widget;
8422    }
8423    
8424    private BooleanOptionWidget bbbb_lsosll2_widget;
8425    
8426    private void setbbbb_lsosll2_widget(BooleanOptionWidget widget) {
8427        bbbb_lsosll2_widget = widget;
8428    }
8429    
8430    public BooleanOptionWidget getbbbb_lsosll2_widget() {
8431        return bbbb_lsosll2_widget;
8432    }
8433    
8434    private BooleanOptionWidget bbbb_phoenabled_widget;
8435    
8436    private void setbbbb_phoenabled_widget(BooleanOptionWidget widget) {
8437        bbbb_phoenabled_widget = widget;
8438    }
8439    
8440    public BooleanOptionWidget getbbbb_phoenabled_widget() {
8441        return bbbb_phoenabled_widget;
8442    }
8443    
8444    private BooleanOptionWidget bbbb_uleenabled_widget;
8445    
8446    private void setbbbb_uleenabled_widget(BooleanOptionWidget widget) {
8447        bbbb_uleenabled_widget = widget;
8448    }
8449    
8450    public BooleanOptionWidget getbbbb_uleenabled_widget() {
8451        return bbbb_uleenabled_widget;
8452    }
8453    
8454    private BooleanOptionWidget bbbb_lpenabled_widget;
8455    
8456    private void setbbbb_lpenabled_widget(BooleanOptionWidget widget) {
8457        bbbb_lpenabled_widget = widget;
8458    }
8459    
8460    public BooleanOptionWidget getbbbb_lpenabled_widget() {
8461        return bbbb_lpenabled_widget;
8462    }
8463    
8464    private BooleanOptionWidget bbbb_lpunsplit_original_locals_widget;
8465    
8466    private void setbbbb_lpunsplit_original_locals_widget(BooleanOptionWidget widget) {
8467        bbbb_lpunsplit_original_locals_widget = widget;
8468    }
8469    
8470    public BooleanOptionWidget getbbbb_lpunsplit_original_locals_widget() {
8471        return bbbb_lpunsplit_original_locals_widget;
8472    }
8473    
8474    private BooleanOptionWidget bopenabled_widget;
8475    
8476    private void setbopenabled_widget(BooleanOptionWidget widget) {
8477        bopenabled_widget = widget;
8478    }
8479    
8480    public BooleanOptionWidget getbopenabled_widget() {
8481        return bopenabled_widget;
8482    }
8483    
8484    private BooleanOptionWidget tagenabled_widget;
8485    
8486    private void settagenabled_widget(BooleanOptionWidget widget) {
8487        tagenabled_widget = widget;
8488    }
8489    
8490    public BooleanOptionWidget gettagenabled_widget() {
8491        return tagenabled_widget;
8492    }
8493    
8494    private BooleanOptionWidget tagtag_lnenabled_widget;
8495    
8496    private void settagtag_lnenabled_widget(BooleanOptionWidget widget) {
8497        tagtag_lnenabled_widget = widget;
8498    }
8499    
8500    public BooleanOptionWidget gettagtag_lnenabled_widget() {
8501        return tagtag_lnenabled_widget;
8502    }
8503    
8504    private BooleanOptionWidget tagtag_anenabled_widget;
8505    
8506    private void settagtag_anenabled_widget(BooleanOptionWidget widget) {
8507        tagtag_anenabled_widget = widget;
8508    }
8509    
8510    public BooleanOptionWidget gettagtag_anenabled_widget() {
8511        return tagtag_anenabled_widget;
8512    }
8513    
8514    private BooleanOptionWidget tagtag_depenabled_widget;
8515    
8516    private void settagtag_depenabled_widget(BooleanOptionWidget widget) {
8517        tagtag_depenabled_widget = widget;
8518    }
8519    
8520    public BooleanOptionWidget gettagtag_depenabled_widget() {
8521        return tagtag_depenabled_widget;
8522    }
8523    
8524    private BooleanOptionWidget tagtag_fieldrwenabled_widget;
8525    
8526    private void settagtag_fieldrwenabled_widget(BooleanOptionWidget widget) {
8527        tagtag_fieldrwenabled_widget = widget;
8528    }
8529    
8530    public BooleanOptionWidget gettagtag_fieldrwenabled_widget() {
8531        return tagtag_fieldrwenabled_widget;
8532    }
8533    
8534    private BooleanOptionWidget dbenabled_widget;
8535    
8536    private void setdbenabled_widget(BooleanOptionWidget widget) {
8537        dbenabled_widget = widget;
8538    }
8539    
8540    public BooleanOptionWidget getdbenabled_widget() {
8541        return dbenabled_widget;
8542    }
8543    
8544    private BooleanOptionWidget dbdb_transformationsenabled_widget;
8545    
8546    private void setdbdb_transformationsenabled_widget(BooleanOptionWidget widget) {
8547        dbdb_transformationsenabled_widget = widget;
8548    }
8549    
8550    public BooleanOptionWidget getdbdb_transformationsenabled_widget() {
8551        return dbdb_transformationsenabled_widget;
8552    }
8553    
8554    private BooleanOptionWidget dbdb_renamerenabled_widget;
8555    
8556    private void setdbdb_renamerenabled_widget(BooleanOptionWidget widget) {
8557        dbdb_renamerenabled_widget = widget;
8558    }
8559    
8560    public BooleanOptionWidget getdbdb_renamerenabled_widget() {
8561        return dbdb_renamerenabled_widget;
8562    }
8563    
8564    private BooleanOptionWidget dbdb_renamerremove_fully_qualified_widget;
8565    
8566    private void setdbdb_renamerremove_fully_qualified_widget(BooleanOptionWidget widget) {
8567        dbdb_renamerremove_fully_qualified_widget = widget;
8568    }
8569    
8570    public BooleanOptionWidget getdbdb_renamerremove_fully_qualified_widget() {
8571        return dbdb_renamerremove_fully_qualified_widget;
8572    }
8573    
8574    private BooleanOptionWidget dbdb_deobfuscateenabled_widget;
8575    
8576    private void setdbdb_deobfuscateenabled_widget(BooleanOptionWidget widget) {
8577        dbdb_deobfuscateenabled_widget = widget;
8578    }
8579    
8580    public BooleanOptionWidget getdbdb_deobfuscateenabled_widget() {
8581        return dbdb_deobfuscateenabled_widget;
8582    }
8583    
8584    private BooleanOptionWidget dbdb_force_recompileenabled_widget;
8585    
8586    private void setdbdb_force_recompileenabled_widget(BooleanOptionWidget widget) {
8587        dbdb_force_recompileenabled_widget = widget;
8588    }
8589    
8590    public BooleanOptionWidget getdbdb_force_recompileenabled_widget() {
8591        return dbdb_force_recompileenabled_widget;
8592    }
8593    
8594    private BooleanOptionWidget Application_Mode_Optionsinclude_all_widget;
8595    
8596    private void setApplication_Mode_Optionsinclude_all_widget(BooleanOptionWidget widget) {
8597        Application_Mode_Optionsinclude_all_widget = widget;
8598    }
8599    
8600    public BooleanOptionWidget getApplication_Mode_Optionsinclude_all_widget() {
8601        return Application_Mode_Optionsinclude_all_widget;
8602    }
8603    
8604
8605    private ListOptionWidget Application_Mode_Optionsinclude_widget;
8606    
8607    private void setApplication_Mode_Optionsinclude_widget(ListOptionWidget widget) {
8608        Application_Mode_Optionsinclude_widget = widget;
8609    }
8610    
8611    public ListOptionWidget getApplication_Mode_Optionsinclude_widget() {
8612        return Application_Mode_Optionsinclude_widget;
8613    }
8614    
8615    
8616
8617    private ListOptionWidget Application_Mode_Optionsexclude_widget;
8618    
8619    private void setApplication_Mode_Optionsexclude_widget(ListOptionWidget widget) {
8620        Application_Mode_Optionsexclude_widget = widget;
8621    }
8622    
8623    public ListOptionWidget getApplication_Mode_Optionsexclude_widget() {
8624        return Application_Mode_Optionsexclude_widget;
8625    }
8626    
8627    
8628
8629    private ListOptionWidget Application_Mode_Optionsdynamic_class_widget;
8630    
8631    private void setApplication_Mode_Optionsdynamic_class_widget(ListOptionWidget widget) {
8632        Application_Mode_Optionsdynamic_class_widget = widget;
8633    }
8634    
8635    public ListOptionWidget getApplication_Mode_Optionsdynamic_class_widget() {
8636        return Application_Mode_Optionsdynamic_class_widget;
8637    }
8638    
8639    
8640
8641    private ListOptionWidget Application_Mode_Optionsdynamic_dir_widget;
8642    
8643    private void setApplication_Mode_Optionsdynamic_dir_widget(ListOptionWidget widget) {
8644        Application_Mode_Optionsdynamic_dir_widget = widget;
8645    }
8646    
8647    public ListOptionWidget getApplication_Mode_Optionsdynamic_dir_widget() {
8648        return Application_Mode_Optionsdynamic_dir_widget;
8649    }
8650    
8651    
8652
8653    private ListOptionWidget Application_Mode_Optionsdynamic_package_widget;
8654    
8655    private void setApplication_Mode_Optionsdynamic_package_widget(ListOptionWidget widget) {
8656        Application_Mode_Optionsdynamic_package_widget = widget;
8657    }
8658    
8659    public ListOptionWidget getApplication_Mode_Optionsdynamic_package_widget() {
8660        return Application_Mode_Optionsdynamic_package_widget;
8661    }
8662    
8663    
8664    private BooleanOptionWidget Input_Attribute_Optionskeep_line_number_widget;
8665    
8666    private void setInput_Attribute_Optionskeep_line_number_widget(BooleanOptionWidget widget) {
8667        Input_Attribute_Optionskeep_line_number_widget = widget;
8668    }
8669    
8670    public BooleanOptionWidget getInput_Attribute_Optionskeep_line_number_widget() {
8671        return Input_Attribute_Optionskeep_line_number_widget;
8672    }
8673    
8674    private BooleanOptionWidget Input_Attribute_Optionskeep_offset_widget;
8675    
8676    private void setInput_Attribute_Optionskeep_offset_widget(BooleanOptionWidget widget) {
8677        Input_Attribute_Optionskeep_offset_widget = widget;
8678    }
8679    
8680    public BooleanOptionWidget getInput_Attribute_Optionskeep_offset_widget() {
8681        return Input_Attribute_Optionskeep_offset_widget;
8682    }
8683    
8684    private BooleanOptionWidget Annotation_Optionsannot_purity_widget;
8685    
8686    private void setAnnotation_Optionsannot_purity_widget(BooleanOptionWidget widget) {
8687        Annotation_Optionsannot_purity_widget = widget;
8688    }
8689    
8690    public BooleanOptionWidget getAnnotation_Optionsannot_purity_widget() {
8691        return Annotation_Optionsannot_purity_widget;
8692    }
8693    
8694    private BooleanOptionWidget Annotation_Optionsannot_nullpointer_widget;
8695    
8696    private void setAnnotation_Optionsannot_nullpointer_widget(BooleanOptionWidget widget) {
8697        Annotation_Optionsannot_nullpointer_widget = widget;
8698    }
8699    
8700    public BooleanOptionWidget getAnnotation_Optionsannot_nullpointer_widget() {
8701        return Annotation_Optionsannot_nullpointer_widget;
8702    }
8703    
8704    private BooleanOptionWidget Annotation_Optionsannot_arraybounds_widget;
8705    
8706    private void setAnnotation_Optionsannot_arraybounds_widget(BooleanOptionWidget widget) {
8707        Annotation_Optionsannot_arraybounds_widget = widget;
8708    }
8709    
8710    public BooleanOptionWidget getAnnotation_Optionsannot_arraybounds_widget() {
8711        return Annotation_Optionsannot_arraybounds_widget;
8712    }
8713    
8714    private BooleanOptionWidget Annotation_Optionsannot_side_effect_widget;
8715    
8716    private void setAnnotation_Optionsannot_side_effect_widget(BooleanOptionWidget widget) {
8717        Annotation_Optionsannot_side_effect_widget = widget;
8718    }
8719    
8720    public BooleanOptionWidget getAnnotation_Optionsannot_side_effect_widget() {
8721        return Annotation_Optionsannot_side_effect_widget;
8722    }
8723    
8724    private BooleanOptionWidget Annotation_Optionsannot_fieldrw_widget;
8725    
8726    private void setAnnotation_Optionsannot_fieldrw_widget(BooleanOptionWidget widget) {
8727        Annotation_Optionsannot_fieldrw_widget = widget;
8728    }
8729    
8730    public BooleanOptionWidget getAnnotation_Optionsannot_fieldrw_widget() {
8731        return Annotation_Optionsannot_fieldrw_widget;
8732    }
8733    
8734    private BooleanOptionWidget Miscellaneous_Optionstime_widget;
8735    
8736    private void setMiscellaneous_Optionstime_widget(BooleanOptionWidget widget) {
8737        Miscellaneous_Optionstime_widget = widget;
8738    }
8739    
8740    public BooleanOptionWidget getMiscellaneous_Optionstime_widget() {
8741        return Miscellaneous_Optionstime_widget;
8742    }
8743    
8744    private BooleanOptionWidget Miscellaneous_Optionssubtract_gc_widget;
8745    
8746    private void setMiscellaneous_Optionssubtract_gc_widget(BooleanOptionWidget widget) {
8747        Miscellaneous_Optionssubtract_gc_widget = widget;
8748    }
8749    
8750    public BooleanOptionWidget getMiscellaneous_Optionssubtract_gc_widget() {
8751        return Miscellaneous_Optionssubtract_gc_widget;
8752    }
8753    
8754
8755    private Composite General_OptionsCreate(Composite parent) {
8756        String JavaDoc defKey;
8757        String JavaDoc defaultString;
8758        boolean defaultBool = false;
8759        String JavaDoc defaultArray;
8760       
8761        Group editGroupGeneral_Options = new Group(parent, SWT.NONE);
8762        GridLayout layout = new GridLayout();
8763        editGroupGeneral_Options.setLayout(layout);
8764    
8765        editGroupGeneral_Options.setText("General Options");
8766        
8767        editGroupGeneral_Options.setData("id", "General_Options");
8768        
8769        String JavaDoc descGeneral_Options = "";
8770        if (descGeneral_Options.length() > 0) {
8771            Label descLabelGeneral_Options = new Label(editGroupGeneral_Options, SWT.WRAP);
8772            descLabelGeneral_Options.setText(descGeneral_Options);
8773        }
8774        OptionData [] data;
8775        
8776        
8777        
8778        
8779        defKey = ""+" "+""+" "+"h";
8780        defKey = defKey.trim();
8781
8782        if (isInDefList(defKey)) {
8783            defaultBool = getBoolDef(defKey);
8784        }
8785        else {
8786            
8787            defaultBool = false;
8788            
8789        }
8790
8791        setGeneral_Optionshelp_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Help", "", "","h", "\nDisplay the textual help message and exit immediately without \nfurther processing. ", defaultBool)));
8792        
8793        
8794        
8795        defKey = ""+" "+""+" "+"pl";
8796        defKey = defKey.trim();
8797
8798        if (isInDefList(defKey)) {
8799            defaultBool = getBoolDef(defKey);
8800        }
8801        else {
8802            
8803            defaultBool = false;
8804            
8805        }
8806
8807        setGeneral_Optionsphase_list_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Phase List", "", "","pl", "\nPrint a list of the available phases and sub-phases, then exit. \n", defaultBool)));
8808        
8809        
8810        
8811        defKey = ""+" "+""+" "+"version";
8812        defKey = defKey.trim();
8813
8814        if (isInDefList(defKey)) {
8815            defaultBool = getBoolDef(defKey);
8816        }
8817        else {
8818            
8819            defaultBool = false;
8820            
8821        }
8822
8823        setGeneral_Optionsversion_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Version", "", "","version", "\nDisplay information about the version of Soot being run, then \nexit without further processing. ", defaultBool)));
8824        
8825        
8826        
8827        defKey = ""+" "+""+" "+"v";
8828        defKey = defKey.trim();
8829
8830        if (isInDefList(defKey)) {
8831            defaultBool = getBoolDef(defKey);
8832        }
8833        else {
8834            
8835            defaultBool = false;
8836            
8837        }
8838
8839        setGeneral_Optionsverbose_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Verbose", "", "","v", "\nProvide detailed information about what Soot is doing as it \nruns. ", defaultBool)));
8840        
8841        
8842        
8843        defKey = ""+" "+""+" "+"interactive-mode";
8844        defKey = defKey.trim();
8845
8846        if (isInDefList(defKey)) {
8847            defaultBool = getBoolDef(defKey);
8848        }
8849        else {
8850            
8851            defaultBool = false;
8852            
8853        }
8854
8855        setGeneral_Optionsinteractive_mode_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Interactive Mode", "", "","interactive-mode", "\nRuns interactively, with Soot providing detailed information as \nit iterates through intra-procedural analyses. ", defaultBool)));
8856        
8857        
8858        
8859        defKey = ""+" "+""+" "+"app";
8860        defKey = defKey.trim();
8861
8862        if (isInDefList(defKey)) {
8863            defaultBool = getBoolDef(defKey);
8864        }
8865        else {
8866            
8867            defaultBool = false;
8868            
8869        }
8870
8871        setGeneral_Optionsapp_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Application Mode", "", "","app", "\nRun in application mode, processing all classes referenced by \nargument classes.", defaultBool)));
8872        
8873        
8874        
8875        defKey = ""+" "+""+" "+"w";
8876        defKey = defKey.trim();
8877
8878        if (isInDefList(defKey)) {
8879            defaultBool = getBoolDef(defKey);
8880        }
8881        else {
8882            
8883            defaultBool = false;
8884            
8885        }
8886
8887        setGeneral_Optionswhole_program_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Whole-Program Mode", "", "","w", "\nRun in whole program mode, taking into consideration the whole \nprogram when performing analyses and transformations. Soot uses \nthe Call Graph Constructor to build a call graph for the \nprogram, then applies enabled transformations in the \nWhole-Jimple Transformation, Whole-Jimple Optimization, and \nWhole-Jimple Annotation packs before applying enabled \nintraprocedural transformations. Note that the Whole-Jimple \nOptimization pack is normally disabled (and thus not applied by \nwhole program mode), unless you also specify the Whole Program \nOptimize option.", defaultBool)));
8888        
8889        
8890        
8891        defKey = ""+" "+""+" "+"ws";
8892        defKey = defKey.trim();
8893
8894        if (isInDefList(defKey)) {
8895            defaultBool = getBoolDef(defKey);
8896        }
8897        else {
8898            
8899            defaultBool = false;
8900            
8901        }
8902
8903        setGeneral_Optionswhole_shimple_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Whole-Shimple Mode", "", "","ws", "\nRun in whole shimple mode, taking into consideration the whole \nprogram when performing Shimple analyses and transformations. \nSoot uses the Call Graph Constructor to build a call graph for \nthe program, then applies enabled transformations in the \nWhole-Shimple Transformation and Whole-Shimple Optimization \nbefore applying enabled intraprocedural transformations. Note \nthat the Whole-Shimple Optimization pack is normally disabled \n(and thus not applied by whole shimple mode), unless you also \nspecify the Whole Program Optimize option.", defaultBool)));
8904        
8905        
8906        
8907        defKey = ""+" "+""+" "+"validate";
8908        defKey = defKey.trim();
8909
8910        if (isInDefList(defKey)) {
8911            defaultBool = getBoolDef(defKey);
8912        }
8913        else {
8914            
8915            defaultBool = false;
8916            
8917        }
8918
8919        setGeneral_Optionsvalidate_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Validate", "", "","validate", "\nCauses internal checks to be done on bodies in the various Soot \nIRs, to make sure the transformations have not done something \nstrange. This option may degrade Soot's performance. ", defaultBool)));
8920        
8921        
8922        
8923        defKey = ""+" "+""+" "+"debug";
8924        defKey = defKey.trim();
8925
8926        if (isInDefList(defKey)) {
8927            defaultBool = getBoolDef(defKey);
8928        }
8929        else {
8930            
8931            defaultBool = false;
8932            
8933        }
8934
8935        setGeneral_Optionsdebug_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Debug", "", "","debug", "\nPrint various debugging information as Soot runs, particularly \nfrom the Baf Body Phase and the Jimple Annotation Pack Phase. ", defaultBool)));
8936        
8937        
8938        
8939        defKey = ""+" "+""+" "+"debug-resolver";
8940        defKey = defKey.trim();
8941
8942        if (isInDefList(defKey)) {
8943            defaultBool = getBoolDef(defKey);
8944        }
8945        else {
8946            
8947            defaultBool = false;
8948            
8949        }
8950
8951        setGeneral_Optionsdebug_resolver_widget(new BooleanOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Debug Resolver", "", "","debug-resolver", "\nPrint debugging information about class resolving. ", defaultBool)));
8952        
8953        
8954
8955        defKey = ""+" "+""+" "+"ph";
8956        defKey = defKey.trim();
8957
8958        if (isInDefList(defKey)) {
8959            defaultString = getArrayDef(defKey);
8960        }
8961        else {
8962            
8963            defaultString = "";
8964            
8965        }
8966
8967        setGeneral_Optionsphase_help_widget(new ListOptionWidget(editGroupGeneral_Options, SWT.NONE, new OptionData("Phase Help", "", "","ph", "\nPrint a help message about the phase or sub-phase named PHASE, \nthen exit. To see the help message of more than one phase, \nspecify multiple phase-help options. ", defaultString)));
8968        
8969
8970        
8971        return editGroupGeneral_Options;
8972    }
8973
8974
8975
8976    private Composite Input_OptionsCreate(Composite parent) {
8977        String JavaDoc defKey;
8978        String JavaDoc defaultString;
8979        boolean defaultBool = false;
8980        String JavaDoc defaultArray;
8981       
8982        Group editGroupInput_Options = new Group(parent, SWT.NONE);
8983        GridLayout layout = new GridLayout();
8984        editGroupInput_Options.setLayout(layout);
8985    
8986        editGroupInput_Options.setText("Input Options");
8987        
8988        editGroupInput_Options.setData("id", "Input_Options");
8989        
8990        String JavaDoc descInput_Options = "";
8991        if (descInput_Options.length() > 0) {
8992            Label descLabelInput_Options = new Label(editGroupInput_Options, SWT.WRAP);
8993            descLabelInput_Options.setText(descInput_Options);
8994        }
8995        OptionData [] data;
8996        
8997        
8998        
8999        
9000        defKey = ""+" "+""+" "+"ast-metrics";
9001        defKey = defKey.trim();
9002
9003        if (isInDefList(defKey)) {
9004            defaultBool = getBoolDef(defKey);
9005        }
9006        else {
9007            
9008            defaultBool = false;
9009            
9010        }
9011
9012        setInput_Optionsast_metrics_widget(new BooleanOptionWidget(editGroupInput_Options, SWT.NONE, new OptionData("Compute AST Metrics", "", "","ast-metrics", "\n If this flag is set and soot converts java to jimple then \nAST metrics will be computed. ", defaultBool)));
9013        
9014        
9015        
9016        defKey = ""+" "+""+" "+"full-resolver";
9017        defKey = defKey.trim();
9018
9019        if (isInDefList(defKey)) {
9020            defaultBool = getBoolDef(defKey);
9021        }
9022        else {
9023            
9024            defaultBool = false;
9025            
9026        }
9027
9028        setInput_Optionsfull_resolver_widget(new BooleanOptionWidget(editGroupInput_Options, SWT.NONE, new OptionData("Force complete resolver", "", "","full-resolver", "\nNormally, Soot resolves only that application classes and any \nclasses that they refer to, along with any classes it needs for \nthe Jimple typing, but it does not transitively resolve \nreferences in these additional classes that were resolved only \nbecause they were referenced. This switch forces full transitive \nresolution of all references found in all classes that are \nresolved, regardless of why they were resolved. In \nwhole-program mode, class resolution is always fully transitive. \nTherefore, in whole-program mode, this switch has no effect, and \nclass resolution is always performed as if it were turned on. ", defaultBool)));
9029        
9030        
9031        
9032        defKey = ""+" "+""+" "+"allow-phantom-refs";
9033        defKey = defKey.trim();
9034
9035        if (isInDefList(defKey)) {
9036            defaultBool = getBoolDef(defKey);
9037        }
9038        else {
9039            
9040            defaultBool = false;
9041            
9042        }
9043
9044        setInput_Optionsallow_phantom_refs_widget(new BooleanOptionWidget(editGroupInput_Options, SWT.NONE, new OptionData("Allow Phantom References", "", "","allow-phantom-refs", "\nAllow Soot to process a class even if it cannot find all \nclasses referenced by that class. This may cause Soot to produce \nincorrect results. ", defaultBool)));
9045        
9046        
9047        
9048        defKey = ""+" "+""+" "+"use-old-type-assigner";
9049        defKey = defKey.trim();
9050
9051        if (isInDefList(defKey)) {
9052            defaultBool = getBoolDef(defKey);
9053        }
9054        else {
9055            
9056            defaultBool = false;
9057            
9058        }
9059
9060        setInput_Optionsuse_old_type_assigner_widget(new BooleanOptionWidget(editGroupInput_Options, SWT.NONE, new OptionData("Use old Type Assigner ", "", "","use-old-type-assigner", "\nDisable the reimplemented type assigner. This uses improved \ndata structures to provide a significant performance benefit, \nbut has not yet been thoroughly tested. ", defaultBool)));
9061        
9062        
9063        
9064        data = new OptionData [] {
9065        
9066        new OptionData("Class File",
9067        "c",
9068        "\nTry to resolve classes first from .class files found in the \nSoot classpath. Fall back to .jimple files only when unable to \nfind a .class file. ",
9069        
9070        true),
9071        
9072        new OptionData("Only Class File",
9073        "only-class",
9074        "\nTry to resolve classes first from .class files found in the \nSoot classpath. Do not try any other types of files even when \nunable to find a .class file. ",
9075        
9076        false),
9077        
9078        new OptionData("Jimple File",
9079        "J",
9080        "\nTry to resolve classes first from .jimple files found in the \nSoot classpath. Fall back to .class files only when unable to \nfind a .jimple file. ",
9081        
9082        false),
9083        
9084        new OptionData("Java File",
9085        "java",
9086        "\nTry to resolve classes first from .java files found in the Soot \nclasspath. Fall back to .class files only when unable to find a \n.java file. ",
9087        
9088        false),
9089        
9090        };
9091        
9092                                        
9093        setInput_Optionssrc_prec_widget(new MultiOptionWidget(editGroupInput_Options, SWT.NONE, data, new OptionData("Input Source Precedence", "", "","src-prec", "\nSets FORMAT as Soot's preference for the type of source files \nto read when it looks for a class. ")));
9094        
9095        defKey = ""+" "+""+" "+"src-prec";
9096        defKey = defKey.trim();
9097        
9098        if (isInDefList(defKey)) {
9099            defaultString = getStringDef(defKey);
9100        
9101            getInput_Optionssrc_prec_widget().setDef(defaultString);
9102        }
9103        
9104        
9105
9106        defKey = ""+" "+""+" "+"process-dir";
9107        defKey = defKey.trim();
9108
9109        if (isInDefList(defKey)) {
9110            defaultString = getArrayDef(defKey);
9111        }
9112        else {
9113            
9114            defaultString = "";
9115            
9116        }
9117
9118        setInput_Optionsprocess_dir_widget(new ListOptionWidget(editGroupInput_Options, SWT.NONE, new OptionData("Process Directories", "", "","process-dir", "\nAdd all classes found in DIR to the set of argument classes \nwhich is analyzed and transformed by Soot. You can specify the \noption more than once, to add argument classes from multiple \ndirectories. If subdirectories of DIR contain .class or .jimple \nfiles, Soot assumes that the subdirectory names correspond to \ncomponents of the classes' package names. If DIR contains \nsubA/subB/MyClass.class, for instance, then Soot assumes MyClass \nis in package subA.subB.", defaultString)));
9119        
9120        
9121        defKey = ""+" "+""+" "+"cp";
9122        defKey = defKey.trim();
9123        
9124        if (isInDefList(defKey)) {
9125            defaultString = getStringDef(defKey);
9126        }
9127        else {
9128            
9129            defaultString = "";
9130            
9131        }
9132
9133        setInput_Optionssoot_classpath_widget(new StringOptionWidget(editGroupInput_Options, SWT.NONE, new OptionData("Soot Classpath", "", "","cp", "\nUse PATH as the list of directories in which Soot should search \nfor classes. PATH should be a series of directories, separated \nby the path separator character for your system. If no classpath \nis set on the command line, but the system property \nsoot.class.path has been set, Soot uses its value as the \nclasspath. If neither the command line nor the system properties \nspecify a Soot classpath, Soot falls back on a default classpath \nconsisting of the value of the system property java.class.path \nfollowed java.home/lib/rt.jar, where java.home stands for the \ncontents of the system property java.home and / stands for the \nsystem file separator.", defaultString)));
9134        
9135        
9136        defKey = ""+" "+""+" "+"main-class";
9137        defKey = defKey.trim();
9138        
9139        if (isInDefList(defKey)) {
9140            defaultString = getStringDef(defKey);
9141        }
9142        else {
9143            
9144            defaultString = "";
9145            
9146        }
9147
9148        setInput_Optionsmain_class_widget(new StringOptionWidget(editGroupInput_Options, SWT.NONE, new OptionData("Main Class", "", "","main-class", "\nBy default, the first class mentioned on the command-line is \ntreated as the main class (entry point) in whole-program \nanalysis. This option overrides this default. ", defaultString)));
9149        
9150
9151        
9152        return editGroupInput_Options;
9153    }
9154
9155
9156
9157    private Composite Output_OptionsCreate(Composite parent) {
9158        String JavaDoc defKey;
9159        String JavaDoc defaultString;
9160        boolean defaultBool = false;
9161        String JavaDoc defaultArray;
9162       
9163        Group editGroupOutput_Options = new Group(parent, SWT.NONE);
9164        GridLayout layout = new GridLayout();
9165        editGroupOutput_Options.setLayout(layout);
9166    
9167        editGroupOutput_Options.setText("Output Options");
9168        
9169        editGroupOutput_Options.setData("id", "Output_Options");
9170        
9171        String JavaDoc descOutput_Options = "";
9172        if (descOutput_Options.length() > 0) {
9173            Label descLabelOutput_Options = new Label(editGroupOutput_Options, SWT.WRAP);
9174            descLabelOutput_Options.setText(descOutput_Options);
9175        }
9176        OptionData [] data;
9177        
9178        
9179        
9180        
9181        defKey = ""+" "+""+" "+"outjar";
9182        defKey = defKey.trim();
9183
9184        if (isInDefList(defKey)) {
9185            defaultBool = getBoolDef(defKey);
9186        }
9187        else {
9188            
9189            defaultBool = false;
9190            
9191        }
9192
9193        setOutput_Optionsoutput_jar_widget(new BooleanOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("Output Jar File", "", "","outjar", "\nSaves output files into a Jar file instead of a directory. The \noutput Jar file name should be specified using the Output \nDirectory (output-dir) option. Note that if the output Jar file \nexists before Soot runs, any files inside it will first be \nremoved. ", defaultBool)));
9194        
9195        
9196        
9197        defKey = ""+" "+""+" "+"xml-attributes";
9198        defKey = defKey.trim();
9199
9200        if (isInDefList(defKey)) {
9201            defaultBool = getBoolDef(defKey);
9202        }
9203        else {
9204            
9205            defaultBool = false;
9206            
9207        }
9208
9209        setOutput_Optionsxml_attributes_widget(new BooleanOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("Save Tags to XML", "", "","xml-attributes", "\nSave in XML format a variety of tags which Soot has attached to \nits internal representations of the application classes. The XML \nfile can then be read by the Soot plug-in for the Eclipse IDE, \nwhich can display the annotations together with the program \nsource, to aid program understanding. ", defaultBool)));
9210        
9211        
9212        
9213        defKey = ""+" "+""+" "+"print-tags";
9214        defKey = defKey.trim();
9215
9216        if (isInDefList(defKey)) {
9217            defaultBool = getBoolDef(defKey);
9218        }
9219        else {
9220            
9221            defaultBool = false;
9222            
9223        }
9224
9225        setOutput_Optionsprint_tags_in_output_widget(new BooleanOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("Print Tags in Output", "", "","print-tags", "\nPrint in output files (either in Jimple or Dave) a variety of \ntags which Soot has attached to its internal representations of \nthe application classes. The tags will be printed on the line \nsucceeding the stmt that they are attached to. ", defaultBool)));
9226        
9227        
9228        
9229        defKey = ""+" "+""+" "+"no-output-source-file-attribute";
9230        defKey = defKey.trim();
9231
9232        if (isInDefList(defKey)) {
9233            defaultBool = getBoolDef(defKey);
9234        }
9235        else {
9236            
9237            defaultBool = false;
9238            
9239        }
9240
9241        setOutput_Optionsno_output_source_file_attribute_widget(new BooleanOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("Don't Output Source File Attribute", "", "","no-output-source-file-attribute", "\nDon't output Source File Attribute when producing class files. ", defaultBool)));
9242        
9243        
9244        
9245        defKey = ""+" "+""+" "+"no-output-inner-classes-attribute";
9246        defKey = defKey.trim();
9247
9248        if (isInDefList(defKey)) {
9249            defaultBool = getBoolDef(defKey);
9250        }
9251        else {
9252            
9253            defaultBool = false;
9254            
9255        }
9256
9257        setOutput_Optionsno_output_inner_classes_attribute_widget(new BooleanOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("Don't Output Inner Classes Attribute", "", "","no-output-inner-classes-attribute", "\nDon't output inner classes attribute in class \nfiles. ", defaultBool)));
9258        
9259        
9260        
9261        defKey = ""+" "+""+" "+"show-exception-dests";
9262        defKey = defKey.trim();
9263
9264        if (isInDefList(defKey)) {
9265            defaultBool = getBoolDef(defKey);
9266        }
9267        else {
9268            
9269            defaultBool = true;
9270            
9271        }
9272
9273        setOutput_Optionsshow_exception_dests_widget(new BooleanOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("Show Exception Destinations", "", "","show-exception-dests", "\nIndicate whether to show exception destination edges as well as \ncontrol flow edges in dumps of exceptional control flow graphs. ", defaultBool)));
9274        
9275        
9276        
9277        defKey = ""+" "+""+" "+"gzip";
9278        defKey = defKey.trim();
9279
9280        if (isInDefList(defKey)) {
9281            defaultBool = getBoolDef(defKey);
9282        }
9283        else {
9284            
9285            defaultBool = false;
9286            
9287        }
9288
9289        setOutput_Optionsgzip_widget(new BooleanOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("GZipped IR output", "", "","gzip", "\nThis option causes Soot to compress output files of \nintermediate representations with GZip. It does not apply to \nclass files output by Soot. ", defaultBool)));
9290        
9291        
9292        
9293        data = new OptionData [] {
9294        
9295        new OptionData("Jimple File",
9296        "J",
9297        "\nProduce .jimple files, which contain a textual form of Soot's \nJimple internal representation. ",
9298        
9299        false),
9300        
9301        new OptionData("Jimp File",
9302        "j",
9303        "\nProduce .jimp files, which contain an abbreviated form of \nJimple. ",
9304        
9305        false),
9306        
9307        new OptionData("Shimple File",
9308        "S",
9309        "\nProduce .shimple files, containing a textual form of Soot's SSA \nShimple internal representation. Shimple adds Phi nodes to \nJimple. ",
9310        
9311        false),
9312        
9313        new OptionData("Shimp File",
9314        "s",
9315        "\nProduce .shimp files, which contain an abbreviated form of \nShimple. ",
9316        
9317        false),
9318        
9319        new OptionData("Baf File",
9320        "B",
9321        "\nProduce .baf files, which contain a textual form of Soot's Baf \ninternal representation. ",
9322        
9323        false),
9324        
9325        new OptionData("Abbreviated Baf File",
9326        "b",
9327        "\nProduce .b files, which contain an abbreviated form of Baf. ",
9328        
9329        false),
9330        
9331        new OptionData("Grimp File",
9332        "G",
9333        "\nProduce .grimple files, which contain a textual form of Soot's \nGrimp internal representation. ",
9334        
9335        false),
9336        
9337        new OptionData("Abbreviated Grimp File",
9338        "g",
9339        "\nProduce .grimp files, which contain an abbreviated form of \nGrimp. ",
9340        
9341        false),
9342        
9343        new OptionData("Xml File",
9344        "X",
9345        "\nProduce .xml files containing an annotated version of the \nSoot's Jimple internal representation. ",
9346        
9347        false),
9348        
9349        new OptionData("No Output File",
9350        "n",
9351        "\nProduce no output files. ",
9352        
9353        false),
9354        
9355        new OptionData("Jasmin File",
9356        "jasmin",
9357        "\nProduce .jasmin files, suitable as input to the jasmin bytecode \nassembler. ",
9358        
9359        false),
9360        
9361        new OptionData("Class File",
9362        "c",
9363        "\nProduce Java .class files, executable by any Java Virtual \nMachine. ",
9364        
9365        true),
9366        
9367        new OptionData("Dava Decompiled File",
9368        "d",
9369        "\nProduce .java files generated by the Dava decompiler. ",
9370        
9371        false),
9372        
9373        };
9374        
9375                                        
9376        setOutput_Optionsoutput_format_widget(new MultiOptionWidget(editGroupOutput_Options, SWT.NONE, data, new OptionData("Output Format", "", "","f", "\nSpecify the format of output files Soot should produce, if any. \nNote that while the abbreviated formats (jimp, shimp, b, and \ngrimp) are easier to read than their unabbreviated counterparts \n(jimple, shimple, baf, and grimple), they may contain \nambiguities. Method signatures in the abbreviated formats, for \ninstance, are not uniquely determined.")));
9377        
9378        defKey = ""+" "+""+" "+"f";
9379        defKey = defKey.trim();
9380        
9381        if (isInDefList(defKey)) {
9382            defaultString = getStringDef(defKey);
9383        
9384            getOutput_Optionsoutput_format_widget().setDef(defaultString);
9385        }
9386        
9387        
9388
9389        defKey = ""+" "+""+" "+"dump-body";
9390        defKey = defKey.trim();
9391
9392        if (isInDefList(defKey)) {
9393            defaultString = getArrayDef(defKey);
9394        }
9395        else {
9396            
9397            defaultString = "";
9398            
9399        }
9400
9401        setOutput_Optionsdump_body_widget(new ListOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("Body Dumping Phases", "", "","dump-body", "\nSpecify that PHASENAME is one of the phases to be dumped. For \nexample -dump-body jb -dump-body jb.a would dump each method \nbefore and after the jb and jb.a phases. The pseudo phase name \n``ALL'' causes all phases to be dumped. Output files appear in \nsubdirectories under the soot output directory, with names like \nclassName/methodSignature/phasename-graphType-number.in and \nclassName/methodSignature/phasename-graphType-number.out. The \n``in'' and ``out'' suffixes distinguish the internal \nrepresentations of the method before and after the phase \nexecuted.", defaultString)));
9402        
9403
9404        defKey = ""+" "+""+" "+"dump-cfg";
9405        defKey = defKey.trim();
9406
9407        if (isInDefList(defKey)) {
9408            defaultString = getArrayDef(defKey);
9409        }
9410        else {
9411            
9412            defaultString = "";
9413            
9414        }
9415
9416        setOutput_Optionsdump_cfg_widget(new ListOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("CFG Dumping Phases", "", "","dump-cfg", "\nSpecify that any control flow graphs constructed during the \nPHASENAME phases should be dumped. For example -dump-cfg jb \n-dump-cfg bb.lso would dump all CFGs constructed during the jb \nand bb.lso phases. The pseudo phase name ``ALL'' causes CFGs \nconstructed in all phases to be dumped.The control flow graphs \nare dumped in the form of a file containing input to dot graph \nvisualization tool. Output dot files are stored beneath the \nsoot output directory, in files with names like: \nclassName/methodSignature/phasename-graphType-number.dot, where \nnumber serves to distinguish graphs in phases that produce more \nthan one (for example, the Aggregator may produce multiple \nExceptionalUnitGraphs).", defaultString)));
9417        
9418        
9419        defKey = ""+" "+""+" "+"d";
9420        defKey = defKey.trim();
9421        
9422        if (isInDefList(defKey)) {
9423            defaultString = getStringDef(defKey);
9424        }
9425        else {
9426            
9427            defaultString = "./sootOutput";
9428            
9429        }
9430
9431        setOutput_Optionsoutput_dir_widget(new StringOptionWidget(editGroupOutput_Options, SWT.NONE, new OptionData("Output Directory", "", "","d", "\nStore output files in DIR. DIR may be relative to the working \ndirectory. ", defaultString)));
9432        
9433
9434        
9435        return editGroupOutput_Options;
9436    }
9437
9438
9439
9440    private Composite Processing_OptionsCreate(Composite parent) {
9441        String JavaDoc defKey;
9442        String JavaDoc defaultString;
9443        boolean defaultBool = false;
9444        String JavaDoc defaultArray;
9445       
9446        Group editGroupProcessing_Options = new Group(parent, SWT.NONE);
9447        GridLayout layout = new GridLayout();
9448        editGroupProcessing_Options.setLayout(layout);
9449    
9450        editGroupProcessing_Options.setText("Processing Options");
9451        
9452        editGroupProcessing_Options.setData("id", "Processing_Options");
9453        
9454        String JavaDoc descProcessing_Options = "";
9455        if (descProcessing_Options.length() > 0) {
9456            Label descLabelProcessing_Options = new Label(editGroupProcessing_Options, SWT.WRAP);
9457            descLabelProcessing_Options.setText(descProcessing_Options);
9458        }
9459        OptionData [] data;
9460        
9461        
9462        
9463        
9464        defKey = ""+" "+""+" "+"O";
9465        defKey = defKey.trim();
9466
9467        if (isInDefList(defKey)) {
9468            defaultBool = getBoolDef(defKey);
9469        }
9470        else {
9471            
9472            defaultBool = false;
9473            
9474        }
9475
9476        setProcessing_Optionsoptimize_widget(new BooleanOptionWidget(editGroupProcessing_Options, SWT.NONE, new OptionData("Optimize", "", "","O", "\nPerform intraprocedural optimizations on the application \nclasses. ", defaultBool)));
9477        
9478        
9479        
9480        defKey = ""+" "+""+" "+"W";
9481        defKey = defKey.trim();
9482
9483        if (isInDefList(defKey)) {
9484            defaultBool = getBoolDef(defKey);
9485        }
9486        else {
9487            
9488            defaultBool = false;
9489            
9490        }
9491
9492        setProcessing_Optionswhole_optimize_widget(new BooleanOptionWidget(editGroupProcessing_Options, SWT.NONE, new OptionData("Whole Program Optimize", "", "","W", "\nPerform whole program optimizations on the application classes. \nThis enables the Whole-Jimple Optimization pack as well as whole \nprogram mode and intraprocedural optimizations. ", defaultBool)));
9493        
9494        
9495        
9496        defKey = ""+" "+""+" "+"via-grimp";
9497        defKey = defKey.trim();
9498
9499        if (isInDefList(defKey)) {
9500            defaultBool = getBoolDef(defKey);
9501        }
9502        else {
9503            
9504            defaultBool = false;
9505            
9506        }
9507
9508        setProcessing_Optionsvia_grimp_widget(new BooleanOptionWidget(editGroupProcessing_Options, SWT.NONE, new OptionData("Via Grimp", "", "","via-grimp", "\nConvert Jimple to bytecode via the Grimp intermediate \nrepresentation instead of via the Baf intermediate \nrepresentation. ", defaultBool)));
9509        
9510        
9511        
9512        defKey = ""+" "+""+" "+"via-shimple";
9513        defKey = defKey.trim();
9514
9515        if (isInDefList(defKey)) {
9516            defaultBool = getBoolDef(defKey);
9517        }
9518        else {
9519            
9520            defaultBool = false;
9521            
9522        }
9523
9524        setProcessing_Optionsvia_shimple_widget(new BooleanOptionWidget(editGroupProcessing_Options, SWT.NONE, new OptionData("Via Shimple", "", "","via-shimple", "\nEnable Shimple, Soot's SSA representation. This generates \nShimple bodies for the application classes, optionally \ntransforms them with analyses that run on SSA form, then turns \nthem back into Jimple for processing by the rest of Soot. For \nmore information, see the documentation for the shimp, stp, and \nsop phases. ", defaultBool)));
9525        
9526        
9527        
9528        defKey = ""+" "+""+" "+"omit-excepting-unit-edges";
9529        defKey = defKey.trim();
9530
9531        if (isInDefList(defKey)) {
9532            defaultBool = getBoolDef(defKey);
9533        }
9534        else {
9535            
9536            defaultBool = false;
9537            
9538        }
9539
9540        setProcessing_Optionsomit_excepting_unit_edges_widget(new BooleanOptionWidget(editGroupProcessing_Options, SWT.NONE, new OptionData("Omit Excepting Unit Edges", "", "","omit-excepting-unit-edges", "\nWhen constructing an ExceptionalUnitGraph or \nExceptionalBlockGraph, include edges to an exception handler \nonly from the predecessors of an instruction which may throw an \nexception to the handler, and not from the excepting instruction \nitself, unless the excepting instruction has potential side \neffects. Omitting edges from excepting units allows more \naccurate flow analyses (since if an instruction without side \neffects throws an exception, it has not changed the state of the \ncomputation). This accuracy, though, could lead optimizations to \ngenerate unverifiable code, since the dataflow analyses \nperformed by bytecode verifiers might include paths to exception \nhandlers from all protected instructions, regardless of whether \nthe instructions have side effects. (In practice, the pedantic \nthrow analysis suffices to pass verification in all VMs tested \nwith Soot to date, but the JVM specification does allow for less \ndiscriminating verifiers which would reject some code that might \nbe generated using the pedantic throw analysis without also \nadding edges from all excepting units.)", defaultBool)));
9541        
9542        
9543        
9544        defKey = ""+" "+""+" "+"trim-cfgs";
9545        defKey = defKey.trim();
9546
9547        if (isInDefList(defKey)) {
9548            defaultBool = getBoolDef(defKey);
9549        }
9550        else {
9551            
9552            defaultBool = false;
9553            
9554        }
9555
9556        setProcessing_Optionstrim_cfgs_widget(new BooleanOptionWidget(editGroupProcessing_Options, SWT.NONE, new OptionData("Trim CFGs", "", "","trim-cfgs", "\nWhen constructing CFGs which include exceptional edges, \nminimize the number of edges leading to exception handlers by \nanalyzing which instructions might actually be executed before \nan exception is thrown, instead of assuming that every \ninstruction protected by a handler has the potential to throw an \nexception the handler catches. -trim-cfgs is shorthand for \n-throw-analysis unit -omit-excepting-unit-edges -p jb.tt \nenabled:true.", defaultBool)));
9557        
9558        
9559        
9560        data = new OptionData [] {
9561        
9562        new OptionData("Pedantic",
9563        "pedantic",
9564        "\nSays that any instruction may throw any Throwable whatsoever. \nStrictly speaking this is correct, since the Java libraries \ninclude the Thread.stop(Throwable) method, which allows other \nthreads to cause arbitrary exceptions to occur at arbitrary \npoints in the execution of a victim thread. ",
9565        
9566        true),
9567        
9568        new OptionData("Unit",
9569        "unit",
9570        "\nSays that each statement in the intermediate representation may \nthrow those exception types associated with the corresponding \nJava bytecode instructions in the JVM Specification. The \nanalysis deals with each statement in isolation, without regard \nto the surrounding program. ",
9571        
9572        false),
9573        
9574        };
9575        
9576                                        
9577        setProcessing_Optionsthrow_analysis_widget(new MultiOptionWidget(editGroupProcessing_Options, SWT.NONE, data, new OptionData("Default ThrowAnalysis", "", "","throw-analysis", "\nThis option specifies how to estimate the exceptions which each \nstatement may throw when constructing exceptional CFGs. ")));
9578        
9579        defKey = ""+" "+""+" "+"throw-analysis";
9580        defKey = defKey.trim();
9581        
9582        if (isInDefList(defKey)) {
9583            defaultString = getStringDef(defKey);
9584        
9585            getProcessing_Optionsthrow_analysis_widget().setDef(defaultString);
9586        }
9587        
9588        
9589
9590        
9591        return editGroupProcessing_Options;
9592    }
9593
9594
9595
9596    private Composite jbCreate(Composite parent) {
9597        String JavaDoc defKey;
9598        String JavaDoc defaultString;
9599        boolean defaultBool = false;
9600        String JavaDoc defaultArray;
9601       
9602        Group editGroupjb = new Group(parent, SWT.NONE);
9603        GridLayout layout = new GridLayout();
9604        editGroupjb.setLayout(layout);
9605    
9606        editGroupjb.setText("Jimple Body Creation");
9607        
9608        editGroupjb.setData("id", "jb");
9609        
9610        String JavaDoc descjb = "Creates a JimpleBody for each method";
9611        if (descjb.length() > 0) {
9612            Label descLabeljb = new Label(editGroupjb, SWT.WRAP);
9613            descLabeljb.setText(descjb);
9614        }
9615        OptionData [] data;
9616        
9617        
9618        
9619        
9620        defKey = "p"+" "+"jb"+" "+"enabled";
9621        defKey = defKey.trim();
9622
9623        if (isInDefList(defKey)) {
9624            defaultBool = getBoolDef(defKey);
9625        }
9626        else {
9627            
9628            defaultBool = true;
9629            
9630        }
9631
9632        setjbenabled_widget(new BooleanOptionWidget(editGroupjb, SWT.NONE, new OptionData("Enabled", "p", "jb","enabled", "\n", defaultBool)));
9633        
9634        
9635        
9636        defKey = "p"+" "+"jb"+" "+"use-original-names";
9637        defKey = defKey.trim();
9638
9639        if (isInDefList(defKey)) {
9640            defaultBool = getBoolDef(defKey);
9641        }
9642        else {
9643            
9644            defaultBool = false;
9645            
9646        }
9647
9648        setjbuse_original_names_widget(new BooleanOptionWidget(editGroupjb, SWT.NONE, new OptionData("Use Original Names", "p", "jb","use-original-names", "\nRetain the original names for local variables when the source \nincludes those names. Otherwise, Soot gives variables generic \nnames based on their types. ", defaultBool)));
9649        
9650        
9651
9652        
9653        return editGroupjb;
9654    }
9655
9656
9657
9658    private Composite jbjb_lsCreate(Composite parent) {
9659        String JavaDoc defKey;
9660        String JavaDoc defaultString;
9661        boolean defaultBool = false;
9662        String JavaDoc defaultArray;
9663       
9664        Group editGroupjbjb_ls = new Group(parent, SWT.NONE);
9665        GridLayout layout = new GridLayout();
9666        editGroupjbjb_ls.setLayout(layout);
9667    
9668        editGroupjbjb_ls.setText("Local Splitter");
9669        
9670        editGroupjbjb_ls.setData("id", "jbjb_ls");
9671        
9672        String JavaDoc descjbjb_ls = "Local splitter: one local per DU-UD web";
9673        if (descjbjb_ls.length() > 0) {
9674            Label descLabeljbjb_ls = new Label(editGroupjbjb_ls, SWT.WRAP);
9675            descLabeljbjb_ls.setText(descjbjb_ls);
9676        }
9677        OptionData [] data;
9678        
9679        
9680        
9681        
9682        defKey = "p"+" "+"jb.ls"+" "+"enabled";
9683        defKey = defKey.trim();
9684
9685        if (isInDefList(defKey)) {
9686            defaultBool = getBoolDef(defKey);
9687        }
9688        else {
9689            
9690            defaultBool = true;
9691            
9692        }
9693
9694        setjbjb_lsenabled_widget(new BooleanOptionWidget(editGroupjbjb_ls, SWT.NONE, new OptionData("Enabled", "p", "jb.ls","enabled", "\n", defaultBool)));
9695        
9696        
9697
9698        
9699        return editGroupjbjb_ls;
9700    }
9701
9702
9703
9704    private Composite jbjb_aCreate(Composite parent) {
9705        String JavaDoc defKey;
9706        String JavaDoc defaultString;
9707        boolean defaultBool = false;
9708        String JavaDoc defaultArray;
9709       
9710        Group editGroupjbjb_a = new Group(parent, SWT.NONE);
9711        GridLayout layout = new GridLayout();
9712        editGroupjbjb_a.setLayout(layout);
9713    
9714        editGroupjbjb_a.setText("Jimple Local Aggregator");
9715        
9716        editGroupjbjb_a.setData("id", "jbjb_a");
9717        
9718        String JavaDoc descjbjb_a = "Aggregator: removes some unnecessary copies";
9719        if (descjbjb_a.length() > 0) {
9720            Label descLabeljbjb_a = new Label(editGroupjbjb_a, SWT.WRAP);
9721            descLabeljbjb_a.setText(descjbjb_a);
9722        }
9723        OptionData [] data;
9724        
9725        
9726        
9727        
9728        defKey = "p"+" "+"jb.a"+" "+"enabled";
9729        defKey = defKey.trim();
9730
9731        if (isInDefList(defKey)) {
9732            defaultBool = getBoolDef(defKey);
9733        }
9734        else {
9735            
9736            defaultBool = true;
9737            
9738        }
9739
9740        setjbjb_aenabled_widget(new BooleanOptionWidget(editGroupjbjb_a, SWT.NONE, new OptionData("Enabled", "p", "jb.a","enabled", "\n", defaultBool)));
9741        
9742        
9743        
9744        defKey = "p"+" "+"jb.a"+" "+"only-stack-locals";
9745        defKey = defKey.trim();
9746
9747        if (isInDefList(defKey)) {
9748            defaultBool = getBoolDef(defKey);
9749        }
9750        else {
9751            
9752            defaultBool = true;
9753            
9754        }
9755
9756        setjbjb_aonly_stack_locals_widget(new BooleanOptionWidget(editGroupjbjb_a, SWT.NONE, new OptionData("Only Stack Locals", "p", "jb.a","only-stack-locals", "\nOnly aggregate locals that represent stack locations in the \noriginal bytecode. (Stack locals can be distinguished in Jimple \nby the character with which their names begin.) ", defaultBool)));
9757        
9758        
9759
9760        
9761        return editGroupjbjb_a;
9762    }
9763
9764
9765
9766    private Composite jbjb_uleCreate(Composite parent) {
9767        String JavaDoc defKey;
9768        String JavaDoc defaultString;
9769        boolean defaultBool = false;
9770        String JavaDoc defaultArray;
9771       
9772        Group editGroupjbjb_ule = new Group(parent, SWT.NONE);
9773        GridLayout layout = new GridLayout();
9774        editGroupjbjb_ule.setLayout(layout);
9775    
9776        editGroupjbjb_ule.setText("Unused Local Eliminator");
9777        
9778        editGroupjbjb_ule.setData("id", "jbjb_ule");
9779        
9780        String JavaDoc descjbjb_ule = "Unused local eliminator";
9781        if (descjbjb_ule.length() > 0) {
9782            Label descLabeljbjb_ule = new Label(editGroupjbjb_ule, SWT.WRAP);
9783            descLabeljbjb_ule.setText(descjbjb_ule);
9784        }
9785        OptionData [] data;
9786        
9787        
9788        
9789        
9790        defKey = "p"+" "+"jb.ule"+" "+"enabled";
9791        defKey = defKey.trim();
9792
9793        if (isInDefList(defKey)) {
9794            defaultBool = getBoolDef(defKey);
9795        }
9796        else {
9797            
9798            defaultBool = true;
9799            
9800        }
9801
9802        setjbjb_uleenabled_widget(new BooleanOptionWidget(editGroupjbjb_ule, SWT.NONE, new OptionData("Enabled", "p", "jb.ule","enabled", "\n", defaultBool)));
9803        
9804        
9805
9806        
9807        return editGroupjbjb_ule;
9808    }
9809
9810
9811
9812    private Composite jbjb_trCreate(Composite parent) {
9813        String JavaDoc defKey;
9814        String JavaDoc defaultString;
9815        boolean defaultBool = false;
9816        String JavaDoc defaultArray;
9817       
9818        Group editGroupjbjb_tr = new Group(parent, SWT.NONE);
9819        GridLayout layout = new GridLayout();
9820        editGroupjbjb_tr.setLayout(layout);
9821    
9822        editGroupjbjb_tr.setText("Type Assigner");
9823        
9824        editGroupjbjb_tr.setData("id", "jbjb_tr");
9825        
9826        String JavaDoc descjbjb_tr = "Assigns types to locals";
9827        if (descjbjb_tr.length() > 0) {
9828            Label descLabeljbjb_tr = new Label(editGroupjbjb_tr, SWT.WRAP);
9829            descLabeljbjb_tr.setText(descjbjb_tr);
9830        }
9831        OptionData [] data;
9832        
9833        
9834        
9835        
9836        defKey = "p"+" "+"jb.tr"+" "+"enabled";
9837        defKey = defKey.trim();
9838
9839        if (isInDefList(defKey)) {
9840            defaultBool = getBoolDef(defKey);
9841        }
9842        else {
9843            
9844            defaultBool = true;
9845            
9846        }
9847
9848        setjbjb_trenabled_widget(new BooleanOptionWidget(editGroupjbjb_tr, SWT.NONE, new OptionData("Enabled", "p", "jb.tr","enabled", "\n", defaultBool)));
9849        
9850        
9851
9852        
9853        return editGroupjbjb_tr;
9854    }
9855
9856
9857
9858    private Composite jbjb_ulpCreate(Composite parent) {
9859        String JavaDoc defKey;
9860        String JavaDoc defaultString;
9861        boolean defaultBool = false;
9862        String JavaDoc defaultArray;
9863       
9864        Group editGroupjbjb_ulp = new Group(parent, SWT.NONE);
9865        GridLayout layout = new GridLayout();
9866        editGroupjbjb_ulp.setLayout(layout);
9867    
9868        editGroupjbjb_ulp.setText("Unsplit-originals Local Packer");
9869        
9870        editGroupjbjb_ulp.setData("id", "jbjb_ulp");
9871        
9872        String JavaDoc descjbjb_ulp = "Local packer: minimizes number of locals";
9873        if (descjbjb_ulp.length() > 0) {
9874            Label descLabeljbjb_ulp = new Label(editGroupjbjb_ulp, SWT.WRAP);
9875            descLabeljbjb_ulp.setText(descjbjb_ulp);
9876        }
9877        OptionData [] data;
9878        
9879        
9880        
9881        
9882        defKey = "p"+" "+"jb.ulp"+" "+"enabled";
9883        defKey = defKey.trim();
9884
9885        if (isInDefList(defKey)) {
9886            defaultBool = getBoolDef(defKey);
9887        }
9888        else {
9889            
9890            defaultBool = true;
9891            
9892        }
9893
9894        setjbjb_ulpenabled_widget(new BooleanOptionWidget(editGroupjbjb_ulp, SWT.NONE, new OptionData("Enabled", "p", "jb.ulp","enabled", "\n", defaultBool)));
9895        
9896        
9897        
9898        defKey = "p"+" "+"jb.ulp"+" "+"unsplit-original-locals";
9899        defKey = defKey.trim();
9900
9901        if (isInDefList(defKey)) {
9902            defaultBool = getBoolDef(defKey);
9903        }
9904        else {
9905            
9906            defaultBool = true;
9907            
9908        }
9909
9910        setjbjb_ulpunsplit_original_locals_widget(new BooleanOptionWidget(editGroupjbjb_ulp, SWT.NONE, new OptionData("Unsplit Original Locals", "p", "jb.ulp","unsplit-original-locals", "\nUse the variable names in the original source as a guide when \ndetermining how to share local variables among non-interfering \nvariable usages. This recombines named locals which were split \nby the Local Splitter. ", defaultBool)));
9911        
9912        
9913
9914        
9915        return editGroupjbjb_ulp;
9916    }
9917
9918
9919
9920    private Composite jbjb_lnsCreate(Composite parent) {
9921        String JavaDoc defKey;
9922        String JavaDoc defaultString;
9923        boolean defaultBool = false;
9924        String JavaDoc defaultArray;
9925       
9926        Group editGroupjbjb_lns = new Group(parent, SWT.NONE);
9927        GridLayout layout = new GridLayout();
9928        editGroupjbjb_lns.setLayout(layout);
9929    
9930        editGroupjbjb_lns.setText("Local Name Standardizer");
9931        
9932        editGroupjbjb_lns.setData("id", "jbjb_lns");
9933        
9934        String JavaDoc descjbjb_lns = "Local name standardizer";
9935        if (descjbjb_lns.length() > 0) {
9936            Label descLabeljbjb_lns = new Label(editGroupjbjb_lns, SWT.WRAP);
9937            descLabeljbjb_lns.setText(descjbjb_lns);
9938        }
9939        OptionData [] data;
9940        
9941        
9942        
9943        
9944        defKey = "p"+" "+"jb.lns"+" "+"enabled";
9945        defKey = defKey.trim();
9946
9947        if (isInDefList(defKey)) {
9948            defaultBool = getBoolDef(defKey);
9949        }
9950        else {
9951            
9952            defaultBool = true;
9953            
9954        }
9955
9956        setjbjb_lnsenabled_widget(new BooleanOptionWidget(editGroupjbjb_lns, SWT.NONE, new OptionData("Enabled", "p", "jb.lns","enabled", "\n", defaultBool)));
9957        
9958        
9959        
9960        defKey = "p"+" "+"jb.lns"+" "+"only-stack-locals";
9961        defKey = defKey.trim();
9962
9963        if (isInDefList(defKey)) {
9964            defaultBool = getBoolDef(defKey);
9965        }
9966        else {
9967            
9968            defaultBool = false;
9969            
9970        }
9971
9972        setjbjb_lnsonly_stack_locals_widget(new BooleanOptionWidget(editGroupjbjb_lns, SWT.NONE, new OptionData("Only Stack Locals", "p", "jb.lns","only-stack-locals", "\nOnly standardizes the names of variables that represent stack \nlocations in the original bytecode. This becomes the default \nwhen the `use-original-names' option is specified for the `jb' \nphase. ", defaultBool)));
9973        
9974        
9975
9976        
9977        return editGroupjbjb_lns;
9978    }
9979
9980
9981
9982    private Composite jbjb_cpCreate(Composite parent) {
9983        String JavaDoc defKey;
9984        String JavaDoc defaultString;
9985        boolean defaultBool = false;
9986        String JavaDoc defaultArray;
9987       
9988        Group editGroupjbjb_cp = new Group(parent, SWT.NONE);
9989        GridLayout layout = new GridLayout();
9990        editGroupjbjb_cp.setLayout(layout);
9991    
9992        editGroupjbjb_cp.setText("Copy Propagator");
9993        
9994        editGroupjbjb_cp.setData("id", "jbjb_cp");
9995        
9996        String JavaDoc descjbjb_cp = "Copy propagator";
9997        if (descjbjb_cp.length() > 0) {
9998            Label descLabeljbjb_cp = new Label(editGroupjbjb_cp, SWT.WRAP);
9999            descLabeljbjb_cp.setText(descjbjb_cp);
0000        }
0001        OptionData [] data;
0002        
0003        
0004        
0005        
0006        defKey = "p"+" "+"jb.cp"+" "+"enabled";
0007        defKey = defKey.trim();
0008
0009        if (isInDefList(defKey)) {
0010            defaultBool = getBoolDef(defKey);
0011        }
0012        else {
0013            
0014            defaultBool = true;
0015            
0016        }
0017
0018        setjbjb_cpenabled_widget(new BooleanOptionWidget(editGroupjbjb_cp, SWT.NONE, new OptionData("Enabled", "p", "jb.cp","enabled", "\n", defaultBool)));
0019        
0020        
0021        
0022        defKey = "p"+" "+"jb.cp"+" "+"only-regular-locals";
0023        defKey = defKey.trim();
0024
0025        if (isInDefList(defKey)) {
0026            defaultBool = getBoolDef(defKey);
0027        }
0028        else {
0029            
0030            defaultBool = false;
0031            
0032        }
0033
0034        setjbjb_cponly_regular_locals_widget(new BooleanOptionWidget(editGroupjbjb_cp, SWT.NONE, new OptionData("Only Regular Locals", "p", "jb.cp","only-regular-locals", "\nOnly propagate copies through ``regular'' locals, that is, \nthose declared in the source bytecode. ", defaultBool)));
0035        
0036        
0037        
0038        defKey = "p"+" "+"jb.cp"+" "+"only-stack-locals";
0039        defKey = defKey.trim();
0040
0041        if (isInDefList(defKey)) {
0042            defaultBool = getBoolDef(defKey);
0043        }
0044        else {
0045            
0046            defaultBool = true;
0047            
0048        }
0049
0050        setjbjb_cponly_stack_locals_widget(new BooleanOptionWidget(editGroupjbjb_cp, SWT.NONE, new OptionData("Only Stack Locals", "p", "jb.cp","only-stack-locals", "\nOnly propagate copies through locals that represent stack \nlocations in the original bytecode. ", defaultBool)));
0051        
0052        
0053
0054        
0055        return editGroupjbjb_cp;
0056    }
0057
0058
0059
0060    private Composite jbjb_daeCreate(Composite parent) {
0061        String JavaDoc defKey;
0062        String JavaDoc defaultString;
0063        boolean defaultBool = false;
0064        String JavaDoc defaultArray;
0065       
0066        Group editGroupjbjb_dae = new Group(parent, SWT.NONE);
0067        GridLayout layout = new GridLayout();
0068        editGroupjbjb_dae.setLayout(layout);
0069    
0070        editGroupjbjb_dae.setText("Dead Assignment Eliminator");
0071        
0072        editGroupjbjb_dae.setData("id", "jbjb_dae");
0073        
0074        String JavaDoc descjbjb_dae = "Dead assignment eliminator";
0075        if (descjbjb_dae.length() > 0) {
0076            Label descLabeljbjb_dae = new Label(editGroupjbjb_dae, SWT.WRAP);
0077            descLabeljbjb_dae.setText(descjbjb_dae);
0078        }
0079        OptionData [] data;
0080        
0081        
0082        
0083        
0084        defKey = "p"+" "+"jb.dae"+" "+"enabled";
0085        defKey = defKey.trim();
0086
0087        if (isInDefList(defKey)) {
0088            defaultBool = getBoolDef(defKey);
0089        }
0090        else {
0091            
0092            defaultBool = true;
0093            
0094        }
0095
0096        setjbjb_daeenabled_widget(new BooleanOptionWidget(editGroupjbjb_dae, SWT.NONE, new OptionData("Enabled", "p", "jb.dae","enabled", "\n", defaultBool)));
0097        
0098        
0099        
0100        defKey = "p"+" "+"jb.dae"+" "+"only-stack-locals";
0101        defKey = defKey.trim();
0102
0103        if (isInDefList(defKey)) {
0104            defaultBool = getBoolDef(defKey);
0105        }
0106        else {
0107            
0108            defaultBool = true;
0109            
0110        }
0111
0112        setjbjb_daeonly_stack_locals_widget(new BooleanOptionWidget(editGroupjbjb_dae, SWT.NONE, new OptionData("Only Stack Locals", "p", "jb.dae","only-stack-locals", "\nOnly eliminate dead assignments to locals that represent stack \nlocations in the original bytecode. ", defaultBool)));
0113        
0114        
0115
0116        
0117        return editGroupjbjb_dae;
0118    }
0119
0120
0121
0122    private Composite jbjb_cp_uleCreate(Composite parent) {
0123        String JavaDoc defKey;
0124        String JavaDoc defaultString;
0125        boolean defaultBool = false;
0126        String JavaDoc defaultArray;
0127       
0128        Group editGroupjbjb_cp_ule = new Group(parent, SWT.NONE);
0129        GridLayout layout = new GridLayout();
0130        editGroupjbjb_cp_ule.setLayout(layout);
0131    
0132        editGroupjbjb_cp_ule.setText("Post-copy propagation Unused Local Eliminator");
0133        
0134        editGroupjbjb_cp_ule.setData("id", "jbjb_cp_ule");
0135        
0136        String JavaDoc descjbjb_cp_ule = "Post-copy propagation unused local eliminator";
0137        if (descjbjb_cp_ule.length() > 0) {
0138            Label descLabeljbjb_cp_ule = new Label(editGroupjbjb_cp_ule, SWT.WRAP);
0139            descLabeljbjb_cp_ule.setText(descjbjb_cp_ule);
0140        }
0141        OptionData [] data;
0142        
0143        
0144        
0145        
0146        defKey = "p"+" "+"jb.cp-ule"+" "+"enabled";
0147        defKey = defKey.trim();
0148
0149        if (isInDefList(defKey)) {
0150            defaultBool = getBoolDef(defKey);
0151        }
0152        else {
0153            
0154            defaultBool = true;
0155            
0156        }
0157
0158        setjbjb_cp_uleenabled_widget(new BooleanOptionWidget(editGroupjbjb_cp_ule, SWT.NONE, new OptionData("Enabled", "p", "jb.cp-ule","enabled", "\n", defaultBool)));
0159        
0160        
0161
0162        
0163        return editGroupjbjb_cp_ule;
0164    }
0165
0166
0167
0168    private Composite jbjb_lpCreate(Composite parent) {
0169        String JavaDoc defKey;
0170        String JavaDoc defaultString;
0171        boolean defaultBool = false;
0172        String JavaDoc defaultArray;
0173       
0174        Group editGroupjbjb_lp = new Group(parent, SWT.NONE);
0175        GridLayout layout = new GridLayout();
0176        editGroupjbjb_lp.setLayout(layout);
0177    
0178        editGroupjbjb_lp.setText("Local Packer");
0179        
0180        editGroupjbjb_lp.setData("id", "jbjb_lp");
0181        
0182        String JavaDoc descjbjb_lp = "Local packer: minimizes number of locals";
0183        if (descjbjb_lp.length() > 0) {
0184            Label descLabeljbjb_lp = new Label(editGroupjbjb_lp, SWT.WRAP);
0185            descLabeljbjb_lp.setText(descjbjb_lp);
0186        }
0187        OptionData [] data;
0188        
0189        
0190        
0191        
0192        defKey = "p"+" "+"jb.lp"+" "+"enabled";
0193        defKey = defKey.trim();
0194
0195        if (isInDefList(defKey)) {
0196            defaultBool = getBoolDef(defKey);
0197        }
0198        else {
0199            
0200            defaultBool = false;
0201            
0202        }
0203
0204        setjbjb_lpenabled_widget(new BooleanOptionWidget(editGroupjbjb_lp, SWT.NONE, new OptionData("Enabled", "p", "jb.lp","enabled", "\n", defaultBool)));
0205        
0206        
0207        
0208        defKey = "p"+" "+"jb.lp"+" "+"unsplit-original-locals";
0209        defKey = defKey.trim();
0210
0211        if (isInDefList(defKey)) {
0212            defaultBool = getBoolDef(defKey);
0213        }
0214        else {
0215            
0216            defaultBool = false;
0217            
0218        }
0219
0220        setjbjb_lpunsplit_original_locals_widget(new BooleanOptionWidget(editGroupjbjb_lp, SWT.NONE, new OptionData("Unsplit Original Locals", "p", "jb.lp","unsplit-original-locals", "\nUse the variable names in the original source as a guide when \ndetermining how to share local variables across non-interfering \nvariable usages. This recombines named locals which were split \nby the Local Splitter. ", defaultBool)));
0221        
0222        
0223
0224        
0225        return editGroupjbjb_lp;
0226    }
0227
0228
0229
0230    private Composite jbjb_neCreate(Composite parent) {
0231        String JavaDoc defKey;
0232        String JavaDoc defaultString;
0233        boolean defaultBool = false;
0234        String JavaDoc defaultArray;
0235       
0236        Group editGroupjbjb_ne = new Group(parent, SWT.NONE);
0237        GridLayout layout = new GridLayout();
0238        editGroupjbjb_ne.setLayout(layout);
0239    
0240        editGroupjbjb_ne.setText("Nop Eliminator");
0241        
0242        editGroupjbjb_ne.setData("id", "jbjb_ne");
0243        
0244        String JavaDoc descjbjb_ne = "Nop eliminator";
0245        if (descjbjb_ne.length() > 0) {
0246            Label descLabeljbjb_ne = new Label(editGroupjbjb_ne, SWT.WRAP);
0247            descLabeljbjb_ne.setText(descjbjb_ne);
0248        }
0249        OptionData [] data;
0250        
0251        
0252        
0253        
0254        defKey = "p"+" "+"jb.ne"+" "+"enabled";
0255        defKey = defKey.trim();
0256
0257        if (isInDefList(defKey)) {
0258            defaultBool = getBoolDef(defKey);
0259        }
0260        else {
0261            
0262            defaultBool = true;
0263            
0264        }
0265
0266        setjbjb_neenabled_widget(new BooleanOptionWidget(editGroupjbjb_ne, SWT.NONE, new OptionData("Enabled", "p", "jb.ne","enabled", "\n", defaultBool)));
0267        
0268        
0269
0270        
0271        return editGroupjbjb_ne;
0272    }
0273
0274
0275
0276    private Composite jbjb_uceCreate(Composite parent) {
0277        String JavaDoc defKey;
0278        String JavaDoc defaultString;
0279        boolean defaultBool = false;
0280        String JavaDoc defaultArray;
0281       
0282        Group editGroupjbjb_uce = new Group(parent, SWT.NONE);
0283        GridLayout layout = new GridLayout();
0284        editGroupjbjb_uce.setLayout(layout);
0285    
0286        editGroupjbjb_uce.setText("Unreachable Code Eliminator");
0287        
0288        editGroupjbjb_uce.setData("id", "jbjb_uce");
0289        
0290        String JavaDoc descjbjb_uce = "Unreachable code eliminator";
0291        if (descjbjb_uce.length() > 0) {
0292            Label descLabeljbjb_uce = new Label(editGroupjbjb_uce, SWT.WRAP);
0293            descLabeljbjb_uce.setText(descjbjb_uce);
0294        }
0295        OptionData [] data;
0296        
0297        
0298        
0299        
0300        defKey = "p"+" "+"jb.uce"+" "+"enabled";
0301        defKey = defKey.trim();
0302
0303        if (isInDefList(defKey)) {
0304            defaultBool = getBoolDef(defKey);
0305        }
0306        else {
0307            
0308            defaultBool = true;
0309            
0310        }
0311
0312        setjbjb_uceenabled_widget(new BooleanOptionWidget(editGroupjbjb_uce, SWT.NONE, new OptionData("Enabled", "p", "jb.uce","enabled", "\n", defaultBool)));
0313        
0314        
0315        
0316        defKey = "p"+" "+"jb.uce"+" "+"remove-unreachable-traps";
0317        defKey = defKey.trim();
0318
0319        if (isInDefList(defKey)) {
0320            defaultBool = getBoolDef(defKey);
0321        }
0322        else {
0323            
0324            defaultBool = false;
0325            
0326        }
0327
0328        setjbjb_uceremove_unreachable_traps_widget(new BooleanOptionWidget(editGroupjbjb_uce, SWT.NONE, new OptionData("Remove unreachable traps", "p", "jb.uce","remove-unreachable-traps", "\nRemove exception table entries when none of the protected \ninstructions can throw the exception being caught. ", defaultBool)));
0329        
0330        
0331
0332        
0333        return editGroupjbjb_uce;
0334    }
0335
0336
0337
0338    private Composite jbjb_ttCreate(Composite parent) {
0339        String JavaDoc defKey;
0340        String JavaDoc defaultString;
0341        boolean defaultBool = false;
0342        String JavaDoc defaultArray;
0343       
0344        Group editGroupjbjb_tt = new Group(parent, SWT.NONE);
0345        GridLayout layout = new GridLayout();
0346        editGroupjbjb_tt.setLayout(layout);
0347    
0348        editGroupjbjb_tt.setText("Trap Tightener");
0349        
0350        editGroupjbjb_tt.setData("id", "jbjb_tt");
0351        
0352        String JavaDoc descjbjb_tt = "Trap Tightener";
0353        if (descjbjb_tt.length() > 0) {
0354            Label descLabeljbjb_tt = new Label(editGroupjbjb_tt, SWT.WRAP);
0355            descLabeljbjb_tt.setText(descjbjb_tt);
0356        }
0357        OptionData [] data;
0358        
0359        
0360        
0361        
0362        defKey = "p"+" "+"jb.tt"+" "+"enabled";
0363        defKey = defKey.trim();
0364
0365        if (isInDefList(defKey)) {
0366            defaultBool = getBoolDef(defKey);
0367        }
0368        else {
0369            
0370            defaultBool = false;
0371            
0372        }
0373
0374        setjbjb_ttenabled_widget(new BooleanOptionWidget(editGroupjbjb_tt, SWT.NONE, new OptionData("Enabled", "p", "jb.tt","enabled", "\n", defaultBool)));
0375        
0376        
0377
0378        
0379        return editGroupjbjb_tt;
0380    }
0381
0382
0383
0384    private Composite jjCreate(Composite parent) {
0385        String JavaDoc defKey;
0386        String JavaDoc defaultString;
0387        boolean defaultBool = false;
0388        String JavaDoc defaultArray;
0389       
0390        Group editGroupjj = new Group(parent, SWT.NONE);
0391        GridLayout layout = new GridLayout();
0392        editGroupjj.setLayout(layout);
0393    
0394        editGroupjj.setText("Java To Jimple Body Creation");
0395        
0396        editGroupjj.setData("id", "jj");
0397        
0398        String JavaDoc descjj = "Creates a JimpleBody for each method directly from source";
0399        if (descjj.length() > 0) {
0400            Label descLabeljj = new Label(editGroupjj, SWT.WRAP);
0401            descLabeljj.setText(descjj);
0402        }
0403        OptionData [] data;
0404        
0405        
0406        
0407        
0408        defKey = "p"+" "+"jj"+" "+"enabled";
0409        defKey = defKey.trim();
0410
0411        if (isInDefList(defKey)) {
0412            defaultBool = getBoolDef(defKey);
0413        }
0414        else {
0415            
0416            defaultBool = true;
0417            
0418        }
0419
0420        setjjenabled_widget(new BooleanOptionWidget(editGroupjj, SWT.NONE, new OptionData("Enabled", "p", "jj","enabled", "\n", defaultBool)));
0421        
0422        
0423        
0424        defKey = "p"+" "+"jj"+" "+"use-original-names";
0425        defKey = defKey.trim();
0426
0427        if (isInDefList(defKey)) {
0428            defaultBool = getBoolDef(defKey);
0429        }
0430        else {
0431            
0432            defaultBool = true;
0433            
0434        }
0435
0436        setjjuse_original_names_widget(new BooleanOptionWidget(editGroupjj, SWT.NONE, new OptionData("Use Original Names", "p", "jj","use-original-names", "\nRetain the original names for local variables when the source \nincludes those names. Otherwise, Soot gives variables generic \nnames based on their types. ", defaultBool)));
0437        
0438        
0439
0440        
0441        return editGroupjj;
0442    }
0443
0444
0445
0446    private Composite jjjj_lsCreate(Composite parent) {
0447        String JavaDoc defKey;
0448        String JavaDoc defaultString;
0449        boolean defaultBool = false;
0450        String JavaDoc defaultArray;
0451       
0452        Group editGroupjjjj_ls = new Group(parent, SWT.NONE);
0453        GridLayout layout = new GridLayout();
0454        editGroupjjjj_ls.setLayout(layout);
0455    
0456        editGroupjjjj_ls.setText("Local Splitter");
0457        
0458        editGroupjjjj_ls.setData("id", "jjjj_ls");
0459        
0460        String JavaDoc descjjjj_ls = "Local splitter: one local per DU-UD web";
0461        if (descjjjj_ls.length() > 0) {
0462            Label descLabeljjjj_ls = new Label(editGroupjjjj_ls, SWT.WRAP);
0463            descLabeljjjj_ls.setText(descjjjj_ls);
0464        }
0465        OptionData [] data;
0466        
0467        
0468        
0469        
0470        defKey = "p"+" "+"jj.ls"+" "+"enabled";
0471        defKey = defKey.trim();
0472
0473        if (isInDefList(defKey)) {
0474            defaultBool = getBoolDef(defKey);
0475        }
0476        else {
0477            
0478            defaultBool = false;
0479            
0480        }
0481
0482        setjjjj_lsenabled_widget(new BooleanOptionWidget(editGroupjjjj_ls, SWT.NONE, new OptionData("Enabled", "p", "jj.ls","enabled", "\n", defaultBool)));
0483        
0484        
0485
0486        
0487        return editGroupjjjj_ls;
0488    }
0489
0490
0491
0492    private Composite jjjj_aCreate(Composite parent) {
0493        String JavaDoc defKey;
0494        String JavaDoc defaultString;
0495        boolean defaultBool = false;
0496        String JavaDoc defaultArray;
0497       
0498        Group editGroupjjjj_a = new Group(parent, SWT.NONE);
0499        GridLayout layout = new GridLayout();
0500        editGroupjjjj_a.setLayout(layout);
0501    
0502        editGroupjjjj_a.setText("Jimple Local Aggregator");
0503        
0504        editGroupjjjj_a.setData("id", "jjjj_a");
0505        
0506        String JavaDoc descjjjj_a = "Aggregator: removes some unnecessary copies";
0507        if (descjjjj_a.length() > 0) {
0508            Label descLabeljjjj_a = new Label(editGroupjjjj_a, SWT.WRAP);
0509            descLabeljjjj_a.setText(descjjjj_a);
0510        }
0511        OptionData [] data;
0512        
0513        
0514        
0515        
0516        defKey = "p"+" "+"jj.a"+" "+"enabled";
0517        defKey = defKey.trim();
0518
0519        if (isInDefList(defKey)) {
0520            defaultBool = getBoolDef(defKey);
0521        }
0522        else {
0523            
0524            defaultBool = true;
0525            
0526        }
0527
0528        setjjjj_aenabled_widget(new BooleanOptionWidget(editGroupjjjj_a, SWT.NONE, new OptionData("Enabled", "p", "jj.a","enabled", "\n", defaultBool)));
0529        
0530        
0531        
0532        defKey = "p"+" "+"jj.a"+" "+"only-stack-locals";
0533        defKey = defKey.trim();
0534
0535        if (isInDefList(defKey)) {
0536            defaultBool = getBoolDef(defKey);
0537        }
0538        else {
0539            
0540            defaultBool = true;
0541            
0542        }
0543
0544        setjjjj_aonly_stack_locals_widget(new BooleanOptionWidget(editGroupjjjj_a, SWT.NONE, new OptionData("Only Stack Locals", "p", "jj.a","only-stack-locals", "\nOnly aggregate locals that represent stack locations in the \noriginal bytecode. (Stack locals can be distinguished in Jimple \nby the character with which their names begin.) ", defaultBool)));
0545        
0546        
0547
0548        
0549        return editGroupjjjj_a;
0550    }
0551
0552
0553
0554    private Composite jjjj_uleCreate(Composite parent) {
0555        String JavaDoc defKey;
0556        String JavaDoc defaultString;
0557        boolean defaultBool = false;
0558        String JavaDoc defaultArray;
0559       
0560        Group editGroupjjjj_ule = new Group(parent, SWT.NONE);
0561        GridLayout layout = new GridLayout();
0562        editGroupjjjj_ule.setLayout(layout);
0563    
0564        editGroupjjjj_ule.setText("Unused Local Eliminator");
0565        
0566        editGroupjjjj_ule.setData("id", "jjjj_ule");
0567        
0568        String JavaDoc descjjjj_ule = "Unused local eliminator";
0569        if (descjjjj_ule.length() > 0) {
0570            Label descLabeljjjj_ule = new Label(editGroupjjjj_ule, SWT.WRAP);
0571            descLabeljjjj_ule.setText(descjjjj_ule);
0572        }
0573        OptionData [] data;
0574        
0575        
0576        
0577        
0578        defKey = "p"+" "+"jj.ule"+" "+"enabled";
0579        defKey = defKey.trim();
0580
0581        if (isInDefList(defKey)) {
0582            defaultBool = getBoolDef(defKey);
0583        }
0584        else {
0585            
0586            defaultBool = true;
0587            
0588        }
0589
0590        setjjjj_uleenabled_widget(new BooleanOptionWidget(editGroupjjjj_ule, SWT.NONE, new OptionData("Enabled", "p", "jj.ule","enabled", "\n", defaultBool)));
0591        
0592        
0593
0594        
0595        return editGroupjjjj_ule;
0596    }
0597
0598
0599
0600    private Composite jjjj_trCreate(Composite parent) {
0601        String JavaDoc defKey;
0602        String JavaDoc defaultString;
0603        boolean defaultBool = false;
0604        String JavaDoc defaultArray;
0605       
0606        Group editGroupjjjj_tr = new Group(parent, SWT.NONE);
0607        GridLayout layout = new GridLayout();
0608        editGroupjjjj_tr.setLayout(layout);
0609    
0610        editGroupjjjj_tr.setText("Type Assigner");
0611        
0612        editGroupjjjj_tr.setData("id", "jjjj_tr");
0613        
0614        String JavaDoc descjjjj_tr = "Assigns types to locals";
0615        if (descjjjj_tr.length() > 0) {
0616            Label descLabeljjjj_tr = new Label(editGroupjjjj_tr, SWT.WRAP);
0617            descLabeljjjj_tr.setText(descjjjj_tr);
0618        }
0619        OptionData [] data;
0620        
0621        
0622        
0623        
0624        defKey = "p"+" "+"jj.tr"+" "+"enabled";
0625        defKey = defKey.trim();
0626
0627        if (isInDefList(defKey)) {
0628            defaultBool = getBoolDef(defKey);
0629        }
0630        else {
0631            
0632            defaultBool = false;
0633            
0634        }
0635
0636        setjjjj_trenabled_widget(new BooleanOptionWidget(editGroupjjjj_tr, SWT.NONE, new OptionData("Enabled", "p", "jj.tr","enabled", "\n", defaultBool)));
0637        
0638        
0639
0640        
0641        return editGroupjjjj_tr;
0642    }
0643
0644
0645
0646    private Composite jjjj_ulpCreate(Composite parent) {
0647        String JavaDoc defKey;
0648        String JavaDoc defaultString;
0649        boolean defaultBool = false;
0650        String JavaDoc defaultArray;
0651       
0652        Group editGroupjjjj_ulp = new Group(parent, SWT.NONE);
0653        GridLayout layout = new GridLayout();
0654        editGroupjjjj_ulp.setLayout(layout);
0655    
0656        editGroupjjjj_ulp.setText("Unsplit-originals Local Packer");
0657        
0658        editGroupjjjj_ulp.setData("id", "jjjj_ulp");
0659        
0660        String JavaDoc descjjjj_ulp = "Local packer: minimizes number of locals";
0661        if (descjjjj_ulp.length() > 0) {
0662            Label descLabeljjjj_ulp = new Label(editGroupjjjj_ulp, SWT.WRAP);
0663            descLabeljjjj_ulp.setText(descjjjj_ulp);
0664        }
0665        OptionData [] data;
0666        
0667        
0668        
0669        
0670        defKey = "p"+" "+"jj.ulp"+" "+"enabled";
0671        defKey = defKey.trim();
0672
0673        if (isInDefList(defKey)) {
0674            defaultBool = getBoolDef(defKey);
0675        }
0676        else {
0677            
0678            defaultBool = false;
0679            
0680        }
0681
0682        setjjjj_ulpenabled_widget(new BooleanOptionWidget(editGroupjjjj_ulp, SWT.NONE, new OptionData("Enabled", "p", "jj.ulp","enabled", "\n", defaultBool)));
0683        
0684        
0685        
0686        defKey = "p"+" "+"jj.ulp"+" "+"unsplit-original-locals";
0687        defKey = defKey.trim();
0688
0689        if (isInDefList(defKey)) {
0690            defaultBool = getBoolDef(defKey);
0691        }
0692        else {
0693            
0694            defaultBool = false;
0695            
0696        }
0697
0698        setjjjj_ulpunsplit_original_locals_widget(new BooleanOptionWidget(editGroupjjjj_ulp, SWT.NONE, new OptionData("Unsplit Original Locals", "p", "jj.ulp","unsplit-original-locals", "\nUse the variable names in the original source as a guide when \ndetermining how to share local variables among non-interfering \nvariable usages. This recombines named locals which were split \nby the Local Splitter. ", defaultBool)));
0699        
0700        
0701
0702        
0703        return editGroupjjjj_ulp;
0704    }
0705
0706
0707
0708    private Composite jjjj_lnsCreate(Composite parent) {
0709        String JavaDoc defKey;
0710        String JavaDoc defaultString;
0711        boolean defaultBool = false;
0712        String JavaDoc defaultArray;
0713       
0714        Group editGroupjjjj_lns = new Group(parent, SWT.NONE);
0715        GridLayout layout = new GridLayout();
0716        editGroupjjjj_lns.setLayout(layout);
0717    
0718        editGroupjjjj_lns.setText("Local Name Standardizer");
0719        
0720        editGroupjjjj_lns.setData("id", "jjjj_lns");
0721        
0722        String JavaDoc descjjjj_lns = "Local name standardizer";
0723        if (descjjjj_lns.length() > 0) {
0724            Label descLabeljjjj_lns = new Label(editGroupjjjj_lns, SWT.WRAP);
0725            descLabeljjjj_lns.setText(descjjjj_lns);
0726        }
0727        OptionData [] data;
0728        
0729        
0730        
0731        
0732        defKey = "p"+" "+"jj.lns"+" "+"enabled";
0733        defKey = defKey.trim();
0734
0735        if (isInDefList(defKey)) {
0736            defaultBool = getBoolDef(defKey);
0737        }
0738        else {
0739            
0740            defaultBool = true;
0741            
0742        }
0743
0744        setjjjj_lnsenabled_widget(new BooleanOptionWidget(editGroupjjjj_lns, SWT.NONE, new OptionData("Enabled", "p", "jj.lns","enabled", "\n", defaultBool)));
0745        
0746        
0747        
0748        defKey = "p"+" "+"jj.lns"+" "+"only-stack-locals";
0749        defKey = defKey.trim();
0750
0751        if (isInDefList(defKey)) {
0752            defaultBool = getBoolDef(defKey);
0753        }
0754        else {
0755            
0756            defaultBool = false;
0757            
0758        }
0759
0760        setjjjj_lnsonly_stack_locals_widget(new BooleanOptionWidget(editGroupjjjj_lns, SWT.NONE, new OptionData("Only Stack Locals", "p", "jj.lns","only-stack-locals", "\nOnly standardizes the names of variables that represent stack \nlocations in the original bytecode. This becomes the default \nwhen the `use-original-names' option is specified for the `jb' \nphase. ", defaultBool)));
0761        
0762        
0763
0764        
0765        return editGroupjjjj_lns;
0766    }
0767
0768
0769
0770    private Composite jjjj_cpCreate(Composite parent) {
0771        String JavaDoc defKey;
0772        String JavaDoc defaultString;
0773        boolean defaultBool = false;
0774        String JavaDoc defaultArray;
0775       
0776        Group editGroupjjjj_cp = new Group(parent, SWT.NONE);
0777        GridLayout layout = new GridLayout();
0778        editGroupjjjj_cp.setLayout(layout);
0779    
0780        editGroupjjjj_cp.setText("Copy Propagator");
0781        
0782        editGroupjjjj_cp.setData("id", "jjjj_cp");
0783        
0784        String JavaDoc descjjjj_cp = "Copy propagator";
0785        if (descjjjj_cp.length() > 0) {
0786            Label descLabeljjjj_cp = new Label(editGroupjjjj_cp, SWT.WRAP);
0787            descLabeljjjj_cp.setText(descjjjj_cp);
0788        }
0789        OptionData [] data;
0790        
0791        
0792        
0793        
0794        defKey = "p"+" "+"jj.cp"+" "+"enabled";
0795        defKey = defKey.trim();
0796
0797        if (isInDefList(defKey)) {
0798            defaultBool = getBoolDef(defKey);
0799        }
0800        else {
0801            
0802            defaultBool = true;
0803            
0804        }
0805
0806        setjjjj_cpenabled_widget(new BooleanOptionWidget(editGroupjjjj_cp, SWT.NONE, new OptionData("Enabled", "p", "jj.cp","enabled", "\n", defaultBool)));
0807        
0808        
0809        
0810        defKey = "p"+" "+"jj.cp"+" "+"only-regular-locals";
0811        defKey = defKey.trim();
0812
0813        if (isInDefList(defKey)) {
0814            defaultBool = getBoolDef(defKey);
0815        }
0816        else {
0817            
0818            defaultBool = false;
0819            
0820        }
0821
0822        setjjjj_cponly_regular_locals_widget(new BooleanOptionWidget(editGroupjjjj_cp, SWT.NONE, new OptionData("Only Regular Locals", "p", "jj.cp","only-regular-locals", "\nOnly propagate copies through ``regular'' locals, that is, \nthose declared in the source bytecode. ", defaultBool)));
0823        
0824        
0825        
0826        defKey = "p"+" "+"jj.cp"+" "+"only-stack-locals";
0827        defKey = defKey.trim();
0828
0829        if (isInDefList(defKey)) {
0830            defaultBool = getBoolDef(defKey);
0831        }
0832        else {
0833            
0834            defaultBool = true;
0835            
0836        }
0837
0838        setjjjj_cponly_stack_locals_widget(new BooleanOptionWidget(editGroupjjjj_cp, SWT.NONE, new OptionData("Only Stack Locals", "p", "jj.cp","only-stack-locals", "\nOnly propagate copies through locals that represent stack \nlocations in the original bytecode. ", defaultBool)));
0839        
0840        
0841
0842        
0843        return editGroupjjjj_cp;
0844    }
0845
0846
0847
0848    private Composite jjjj_daeCreate(Composite parent) {
0849        String JavaDoc defKey;
0850        String JavaDoc defaultString;
0851        boolean defaultBool = false;
0852        String JavaDoc defaultArray;
0853       
0854        Group editGroupjjjj_dae = new Group(parent, SWT.NONE);
0855        GridLayout layout = new GridLayout();
0856        editGroupjjjj_dae.setLayout(layout);
0857    
0858        editGroupjjjj_dae.setText("Dead Assignment Eliminator");
0859        
0860        editGroupjjjj_dae.setData("id", "jjjj_dae");
0861        
0862        String JavaDoc descjjjj_dae = "Dead assignment eliminator";
0863        if (descjjjj_dae.length() > 0) {
0864            Label descLabeljjjj_dae = new Label(editGroupjjjj_dae, SWT.WRAP);
0865            descLabeljjjj_dae.setText(descjjjj_dae);
0866        }
0867        OptionData [] data;
0868        
0869        
0870        
0871        
0872        defKey = "p"+" "+"jj.dae"+" "+"enabled";
0873        defKey = defKey.trim();
0874
0875        if (isInDefList(defKey)) {
0876            defaultBool = getBoolDef(defKey);
0877        }
0878        else {
0879            
0880            defaultBool = true;
0881            
0882        }
0883
0884        setjjjj_daeenabled_widget(new BooleanOptionWidget(editGroupjjjj_dae, SWT.NONE, new OptionData("Enabled", "p", "jj.dae","enabled", "\n", defaultBool)));
0885        
0886        
0887        
0888        defKey = "p"+" "+"jj.dae"+" "+"only-stack-locals";
0889        defKey = defKey.trim();
0890
0891        if (isInDefList(defKey)) {
0892            defaultBool = getBoolDef(defKey);
0893        }
0894        else {
0895            
0896            defaultBool = true;
0897            
0898        }
0899
0900        setjjjj_daeonly_stack_locals_widget(new BooleanOptionWidget(editGroupjjjj_dae, SWT.NONE, new OptionData("Only Stack Locals", "p", "jj.dae","only-stack-locals", "\nOnly eliminate dead assignments to locals that represent stack \nlocations in the original bytecode. ", defaultBool)));
0901        
0902        
0903
0904        
0905        return editGroupjjjj_dae;
0906    }
0907
0908
0909
0910    private Composite jjjj_cp_uleCreate(Composite parent) {
0911        String JavaDoc defKey;
0912        String JavaDoc defaultString;
0913        boolean defaultBool = false;
0914        String JavaDoc defaultArray;
0915       
0916        Group editGroupjjjj_cp_ule = new Group(parent, SWT.NONE);
0917        GridLayout layout = new GridLayout();
0918        editGroupjjjj_cp_ule.setLayout(layout);
0919    
0920        editGroupjjjj_cp_ule.setText("Post-copy propagation Unused Local Eliminator");
0921        
0922        editGroupjjjj_cp_ule.setData("id", "jjjj_cp_ule");
0923        
0924        String JavaDoc descjjjj_cp_ule = "Post-copy propagation unused local eliminator";
0925        if (descjjjj_cp_ule.length() > 0) {
0926            Label descLabeljjjj_cp_ule = new Label(editGroupjjjj_cp_ule, SWT.WRAP);
0927            descLabeljjjj_cp_ule.setText(descjjjj_cp_ule);
0928        }
0929        OptionData [] data;
0930        
0931        
0932        
0933        
0934        defKey = "p"+" "+"jj.cp-ule"+" "+"enabled";
0935        defKey = defKey.trim();
0936
0937        if (isInDefList(defKey)) {
0938            defaultBool = getBoolDef(defKey);
0939        }
0940        else {
0941            
0942            defaultBool = true;
0943            
0944        }
0945
0946        setjjjj_cp_uleenabled_widget(new BooleanOptionWidget(editGroupjjjj_cp_ule, SWT.NONE, new OptionData("Enabled", "p", "jj.cp-ule","enabled", "\n", defaultBool)));
0947        
0948        
0949
0950        
0951        return editGroupjjjj_cp_ule;
0952    }
0953
0954
0955
0956    private Composite jjjj_lpCreate(Composite parent) {
0957        String JavaDoc defKey;
0958        String JavaDoc defaultString;
0959        boolean defaultBool = false;
0960        String JavaDoc defaultArray;
0961       
0962        Group editGroupjjjj_lp = new Group(parent, SWT.NONE);
0963        GridLayout layout = new GridLayout();
0964        editGroupjjjj_lp.setLayout(layout);
0965    
0966        editGroupjjjj_lp.setText("Local Packer");
0967        
0968        editGroupjjjj_lp.setData("id", "jjjj_lp");
0969        
0970        String JavaDoc descjjjj_lp = "Local packer: minimizes number of locals";
0971        if (descjjjj_lp.length() > 0) {
0972            Label descLabeljjjj_lp = new Label(editGroupjjjj_lp, SWT.WRAP);
0973            descLabeljjjj_lp.setText(descjjjj_lp);
0974        }
0975        OptionData [] data;
0976        
0977        
0978        
0979        
0980        defKey = "p"+" "+"jj.lp"+" "+"enabled";
0981        defKey = defKey.trim();
0982
0983        if (isInDefList(defKey)) {
0984            defaultBool = getBoolDef(defKey);
0985        }
0986        else {
0987            
0988            defaultBool = false;
0989            
0990        }
0991
0992        setjjjj_lpenabled_widget(new BooleanOptionWidget(editGroupjjjj_lp, SWT.NONE, new OptionData("Enabled", "p", "jj.lp","enabled", "\n", defaultBool)));
0993        
0994        
0995        
0996        defKey = "p"+" "+"jj.lp"+" "+"unsplit-original-locals";
0997        defKey = defKey.trim();
0998
0999        if (isInDefList(defKey)) {
1000            defaultBool = getBoolDef(defKey);
1001        }
1002        else {
1003            
1004            defaultBool = false;
1005            
1006        }
1007
1008        setjjjj_lpunsplit_original_locals_widget(new BooleanOptionWidget(editGroupjjjj_lp, SWT.NONE, new OptionData("Unsplit Original Locals", "p", "jj.lp","unsplit-original-locals", "\nUse the variable names in the original source as a guide when \ndetermining how to share local variables across non-interfering \nvariable usages. This recombines named locals which were split \nby the Local Splitter. ", defaultBool)));
1009        
1010        
1011
1012        
1013        return editGroupjjjj_lp;
1014    }
1015
1016
1017
1018    private Composite jjjj_neCreate(Composite parent) {
1019        String JavaDoc defKey;
1020        String JavaDoc defaultString;
1021        boolean defaultBool = false;
1022        String JavaDoc defaultArray;
1023       
1024        Group editGroupjjjj_ne = new Group(parent, SWT.NONE);
1025        GridLayout layout = new GridLayout();
1026        editGroupjjjj_ne.setLayout(layout);
1027    
1028        editGroupjjjj_ne.setText("Nop Eliminator");
1029        
1030        editGroupjjjj_ne.setData("id", "jjjj_ne");
1031        
1032        String JavaDoc descjjjj_ne = "Nop eliminator";
1033        if (descjjjj_ne.length() > 0) {
1034            Label descLabeljjjj_ne = new Label(editGroupjjjj_ne, SWT.WRAP);
1035            descLabeljjjj_ne.setText(descjjjj_ne);
1036        }
1037        OptionData [] data;
1038        
1039        
1040        
1041        
1042        defKey = "p"+" "+"jj.ne"+" "+"enabled";
1043        defKey = defKey.trim();
1044
1045        if (isInDefList(defKey)) {
1046            defaultBool = getBoolDef(defKey);
1047        }
1048        else {
1049            
1050            defaultBool = true;
1051            
1052        }
1053
1054        setjjjj_neenabled_widget(new BooleanOptionWidget(editGroupjjjj_ne, SWT.NONE, new OptionData("Enabled", "p", "jj.ne","enabled", "\n", defaultBool)));
1055        
1056        
1057
1058        
1059        return editGroupjjjj_ne;
1060    }
1061
1062
1063
1064    private Composite jjjj_uceCreate(Composite parent) {
1065        String JavaDoc defKey;
1066        String JavaDoc defaultString;
1067        boolean defaultBool = false;
1068        String JavaDoc defaultArray;
1069       
1070        Group editGroupjjjj_uce = new Group(parent, SWT.NONE);
1071        GridLayout layout = new GridLayout();
1072        editGroupjjjj_uce.setLayout(layout);
1073    
1074        editGroupjjjj_uce.setText("Unreachable Code Eliminator");
1075        
1076        editGroupjjjj_uce.setData("id", "jjjj_uce");
1077        
1078        String JavaDoc descjjjj_uce = "Unreachable code eliminator";
1079        if (descjjjj_uce.length() > 0) {
1080            Label descLabeljjjj_uce = new Label(editGroupjjjj_uce, SWT.WRAP);
1081            descLabeljjjj_uce.setText(descjjjj_uce);
1082        }
1083        OptionData [] data;
1084        
1085        
1086        
1087        
1088        defKey = "p"+" "+"jj.uce"+" "+"enabled";
1089        defKey = defKey.trim();
1090
1091        if (isInDefList(defKey)) {
1092            defaultBool = getBoolDef(defKey);
1093        }
1094        else {
1095            
1096            defaultBool = true;
1097            
1098        }
1099
1100        setjjjj_uceenabled_widget(new BooleanOptionWidget(editGroupjjjj_uce, SWT.NONE, new OptionData("Enabled", "p", "jj.uce","enabled", "\n", defaultBool)));
1101        
1102        
1103
1104        
1105        return editGroupjjjj_uce;
1106    }
1107
1108
1109
1110    private Composite cgCreate(Composite parent) {
1111        String JavaDoc defKey;
1112        String JavaDoc defaultString;
1113        boolean defaultBool = false;
1114        String JavaDoc defaultArray;
1115       
1116        Group editGroupcg = new Group(parent, SWT.NONE);
1117        GridLayout layout = new GridLayout();
1118        editGroupcg.setLayout(layout);
1119    
1120        editGroupcg.setText("Call Graph Constructor");
1121        
1122        editGroupcg.setData("id", "cg");
1123        
1124        String JavaDoc desccg = "Call graph constructor";
1125        if (desccg.length() > 0) {
1126            Label descLabelcg = new Label(editGroupcg, SWT.WRAP);
1127            descLabelcg.setText(desccg);
1128        }
1129        OptionData [] data;
1130        
1131        
1132        
1133        
1134        defKey = "p"+" "+"cg"+" "+"enabled";
1135        defKey = defKey.trim();
1136
1137        if (isInDefList(defKey)) {
1138            defaultBool = getBoolDef(defKey);
1139        }
1140        else {
1141            
1142            defaultBool = true;
1143            
1144        }
1145
1146        setcgenabled_widget(new BooleanOptionWidget(editGroupcg, SWT.NONE, new OptionData("Enabled", "p", "cg","enabled", "\n", defaultBool)));
1147        
1148        
1149        
1150        defKey = "p"+" "+"cg"+" "+"safe-forname";
1151        defKey = defKey.trim();
1152
1153        if (isInDefList(defKey)) {
1154            defaultBool = getBoolDef(defKey);
1155        }
1156        else {
1157            
1158            defaultBool = false;
1159            
1160        }
1161
1162        setcgsafe_forname_widget(new BooleanOptionWidget(editGroupcg, SWT.NONE, new OptionData("Safe forName", "p", "cg","safe-forname", "\nWhen a program calls Class.forName(), the named class is \nresolved, and its static initializer executed. In many cases, it \ncannot be determined statically which class will be loaded, and \nwhich static initializer executed. When this option is set to \ntrue, Soot will conservatively assume that any static \ninitializer could be executed. This may make the call graph very \nlarge. When this option is set to false, any calls to \nClass.forName() for which the class cannot be determined \nstatically are assumed to call no static initializers. ", defaultBool)));
1163        
1164        
1165        
1166        defKey = "p"+" "+"cg"+" "+"safe-newinstance";
1167        defKey = defKey.trim();
1168
1169        if (isInDefList(defKey)) {
1170            defaultBool = getBoolDef(defKey);
1171        }
1172        else {
1173            
1174            defaultBool = false;
1175            
1176        }
1177
1178        setcgsafe_newinstance_widget(new BooleanOptionWidget(editGroupcg, SWT.NONE, new OptionData("Safe newInstance", "p", "cg","safe-newinstance", "\nWhen a program calls Class.newInstance(), a new object is \ncreated and its constructor executed. Soot does not determine \nstatically which type of object will be created, and which \nconstructor executed. When this option is set to true, Soot will \nconservatively assume that any constructor could be executed. \nThis may make the call graph very large. When this option is set \nto false, any calls to Class.newInstance() are assumed not to \ncall the constructor of the created object. ", defaultBool)));
1179        
1180        
1181        
1182        defKey = "p"+" "+"cg"+" "+"verbose";
1183        defKey = defKey.trim();
1184
1185        if (isInDefList(defKey)) {
1186            defaultBool = getBoolDef(defKey);
1187        }
1188        else {
1189            
1190            defaultBool = false;
1191            
1192        }
1193
1194        setcgverbose_widget(new BooleanOptionWidget(editGroupcg, SWT.NONE, new OptionData("Verbose", "p", "cg","verbose", "\nDue to the effects of native methods and reflection, it may not \nalways be possible to construct a fully conservative call graph. \nSetting this option to true causes Soot to point out the parts \nof the call graph that may be incomplete, so that they can be \nchecked by hand. ", defaultBool)));
1195        
1196        
1197        
1198        defKey = "p"+" "+"cg"+" "+"all-reachable";
1199        defKey = defKey.trim();
1200
1201        if (isInDefList(defKey)) {
1202            defaultBool = getBoolDef(defKey);
1203        }
1204        else {
1205            
1206            defaultBool = false;
1207            
1208        }
1209
1210        setcgall_reachable_widget(new BooleanOptionWidget(editGroupcg, SWT.NONE, new OptionData("All Application Class Methods Reachable", "p", "cg","all-reachable", "\nWhen this option is false, the call graph is built starting at a \nset of entry points, and only methods reachable from those entry \npoints are processed. Unreachable methods will not have any call \ngraph edges generated out of them. Setting this option to true \nmakes Soot consider all methods of application classes to be \nreachable, so call edges are generated for all of them. This \nleads to a larger call graph. For program visualization \npurposes, it is sometimes desirable to include edges from \nunreachable methods; although these methods are unreachable in \nthe version being analyzed, they may become reachable if the \nprogram is modified.", defaultBool)));
1211        
1212        
1213        
1214        defKey = "p"+" "+"cg"+" "+"implicit-entry";
1215        defKey = defKey.trim();
1216
1217        if (isInDefList(defKey)) {
1218            defaultBool = getBoolDef(defKey);
1219        }
1220        else {
1221            
1222            defaultBool = true;
1223            
1224        }
1225
1226        setcgimplicit_entry_widget(new BooleanOptionWidget(editGroupcg, SWT.NONE, new OptionData("Implicit Entry Points", "p", "cg","implicit-entry", "\nWhen this option is true, methods that are called implicitly by \nthe VM are considered entry points of the call graph. When it is \nfalse, these methods are not considered entry points, leading to \na possibly incomplete call graph.", defaultBool)));
1227        
1228        
1229        
1230        defKey = "p"+" "+"cg"+" "+"trim-clinit";
1231        defKey = defKey.trim();
1232
1233        if (isInDefList(defKey)) {
1234            defaultBool = getBoolDef(defKey);
1235        }
1236        else {
1237            
1238            defaultBool = true;
1239            
1240        }
1241
1242        setcgtrim_clinit_widget(new BooleanOptionWidget(editGroupcg, SWT.NONE, new OptionData("Trim Static Initializer Edges", "p", "cg","trim-clinit", "\nThe call graph contains an edge from each statement that could \ntrigger execution of a static initializer to that static \ninitializer. However, each static initializer is triggered only \nonce. When this option is enabled, after the call graph is \nbuilt, an intra-procedural analysis is performed to detect \nstatic initializer edges leading to methods that must have \nalready been executed. Since these static initializers cannot be \nexecuted again, the corresponding call graph edges are removed \nfrom the call graph. ", defaultBool)));
1243        
1244        
1245        
1246        defKey = "p"+" "+"cg"+" "+"jdkver";
1247        defKey = defKey.trim();
1248        
1249        if (isInDefList(defKey)) {
1250            defaultString = getStringDef(defKey);
1251        }
1252        else {
1253            
1254            defaultString = "3";
1255            
1256        }
1257
1258        setcgjdkver_widget(new StringOptionWidget(editGroupcg, SWT.NONE, new OptionData("JDK version", "p", "cg","jdkver", "\nThis option sets the JDK version of the standard library being \nanalyzed so that Soot can simulate the native methods in the \nspecific version of the library. The default, 3, refers to Java \n1.3.x.", defaultString)));
1259        
1260
1261        
1262        return editGroupcg;
1263    }
1264
1265
1266
1267    private Composite cgcg_chaCreate(Composite parent) {
1268        String JavaDoc defKey;
1269        String JavaDoc defaultString;
1270        boolean defaultBool = false;
1271        String JavaDoc defaultArray;
1272       
1273        Group editGroupcgcg_cha = new Group(parent, SWT.NONE);
1274        GridLayout layout = new GridLayout();
1275        editGroupcgcg_cha.setLayout(layout);
1276    
1277        editGroupcgcg_cha.setText("Class Hierarchy Analysis");
1278        
1279        editGroupcgcg_cha.setData("id", "cgcg_cha");
1280        
1281        String JavaDoc desccgcg_cha = "Builds call graph using Class Hierarchy Analysis";
1282        if (desccgcg_cha.length() > 0) {
1283            Label descLabelcgcg_cha = new Label(editGroupcgcg_cha, SWT.WRAP);
1284            descLabelcgcg_cha.setText(desccgcg_cha);
1285        }
1286        OptionData [] data;
1287        
1288        
1289        
1290        
1291        defKey = "p"+" "+"cg.cha"+" "+"enabled";
1292        defKey = defKey.trim();
1293
1294        if (isInDefList(defKey)) {
1295            defaultBool = getBoolDef(defKey);
1296        }
1297        else {
1298            
1299            defaultBool = true;
1300            
1301        }
1302
1303        setcgcg_chaenabled_widget(new BooleanOptionWidget(editGroupcgcg_cha, SWT.NONE, new OptionData("Enabled", "p", "cg.cha","enabled", "\n", defaultBool)));
1304        
1305        
1306        
1307        defKey = "p"+" "+"cg.cha"+" "+"verbose";
1308        defKey = defKey.trim();
1309
1310        if (isInDefList(defKey)) {
1311            defaultBool = getBoolDef(defKey);
1312        }
1313        else {
1314            
1315            defaultBool = false;
1316            
1317        }
1318
1319        setcgcg_chaverbose_widget(new BooleanOptionWidget(editGroupcgcg_cha, SWT.NONE, new OptionData("Verbose", "p", "cg.cha","verbose", "\nSetting this option to true causes Soot to print out statistics \nabout the call graph computed by this phase, such as the number \nof methods determined to be reachable.", defaultBool)));
1320        
1321        
1322
1323        
1324        return editGroupcgcg_cha;
1325    }
1326
1327
1328
1329    private Composite cgcg_sparkCreate(Composite parent) {
1330        String JavaDoc defKey;
1331        String JavaDoc defaultString;
1332        boolean defaultBool = false;
1333        String JavaDoc defaultArray;
1334       
1335        Group editGroupcgcg_spark = new Group(parent, SWT.NONE);
1336        GridLayout layout = new GridLayout();
1337        editGroupcgcg_spark.setLayout(layout);
1338    
1339        editGroupcgcg_spark.setText("Spark");
1340        
1341        editGroupcgcg_spark.setData("id", "cgcg_spark");
1342        
1343        String JavaDoc desccgcg_spark = "Spark points-to analysis framework";
1344        if (desccgcg_spark.length() > 0) {
1345            Label descLabelcgcg_spark = new Label(editGroupcgcg_spark, SWT.WRAP);
1346            descLabelcgcg_spark.setText(desccgcg_spark);
1347        }
1348        OptionData [] data;
1349        
1350        
1351        
1352        
1353        defKey = "p"+" "+"cg.spark"+" "+"enabled";
1354        defKey = defKey.trim();
1355
1356        if (isInDefList(defKey)) {
1357            defaultBool = getBoolDef(defKey);
1358        }
1359        else {
1360            
1361            defaultBool = false;
1362            
1363        }
1364
1365        setcgcg_sparkenabled_widget(new BooleanOptionWidget(editGroupcgcg_spark, SWT.NONE, new OptionData("Enabled", "p", "cg.spark","enabled", "\n", defaultBool)));
1366        
1367        
1368
1369        
1370        return editGroupcgcg_spark;
1371    }
1372
1373
1374
1375    private Composite cgSpark_General_OptionsCreate(Composite parent) {
1376        String JavaDoc defKey;
1377        String JavaDoc defaultString;
1378        boolean defaultBool = false;
1379        String JavaDoc defaultArray;
1380       
1381        Group editGroupcgSpark_General_Options = new Group(parent, SWT.NONE);
1382        GridLayout layout = new GridLayout();
1383        editGroupcgSpark_General_Options.setLayout(layout);
1384    
1385        editGroupcgSpark_General_Options.setText("Spark General Options");
1386        
1387        editGroupcgSpark_General_Options.setData("id", "cgSpark_General_Options");
1388        
1389        String JavaDoc desccgSpark_General_Options = "";
1390        if (desccgSpark_General_Options.length() > 0) {
1391            Label descLabelcgSpark_General_Options = new Label(editGroupcgSpark_General_Options, SWT.WRAP);
1392            descLabelcgSpark_General_Options.setText(desccgSpark_General_Options);
1393        }
1394        OptionData [] data;
1395        
1396        
1397        
1398        
1399        defKey = "p"+" "+"cg.spark"+" "+"verbose";
1400        defKey = defKey.trim();
1401
1402        if (isInDefList(defKey)) {
1403            defaultBool = getBoolDef(defKey);
1404        }
1405        else {
1406            
1407            defaultBool = false;
1408            
1409        }
1410
1411        setcgcg_sparkverbose_widget(new BooleanOptionWidget(editGroupcgSpark_General_Options, SWT.NONE, new OptionData("Verbose", "p", "cg.spark","verbose", "\nWhen this option is set to true, Spark prints detailed \ninformation about its execution. ", defaultBool)));
1412        
1413        
1414        
1415        defKey = "p"+" "+"cg.spark"+" "+"ignore-types";
1416        defKey = defKey.trim();
1417
1418        if (isInDefList(defKey)) {
1419            defaultBool = getBoolDef(defKey);
1420        }
1421        else {
1422            
1423            defaultBool = false;
1424            
1425        }
1426
1427        setcgcg_sparkignore_types_widget(new BooleanOptionWidget(editGroupcgSpark_General_Options, SWT.NONE, new OptionData("Ignore Types Entirely", "p", "cg.spark","ignore-types", "\nWhen this option is set to true, all parts of Spark completely \nignore declared types of variables and casts. ", defaultBool)));
1428        
1429        
1430        
1431        defKey = "p"+" "+"cg.spark"+" "+"force-gc";
1432        defKey = defKey.trim();
1433
1434        if (isInDefList(defKey)) {
1435            defaultBool = getBoolDef(defKey);
1436        }
1437        else {
1438            
1439            defaultBool = false;
1440            
1441        }
1442
1443        setcgcg_sparkforce_gc_widget(new BooleanOptionWidget(editGroupcgSpark_General_Options, SWT.NONE, new OptionData("Force Garbage Collections", "p", "cg.spark","force-gc", "\nWhen this option is set to true, calls to System.gc() will be \nmade at various points to allow memory usage to be measured. \n", defaultBool)));
1444        
1445        
1446        
1447        defKey = "p"+" "+"cg.spark"+" "+"pre-jimplify";
1448        defKey = defKey.trim();
1449
1450        if (isInDefList(defKey)) {
1451            defaultBool = getBoolDef(defKey);
1452        }
1453        else {
1454            
1455            defaultBool = false;
1456            
1457        }
1458
1459        setcgcg_sparkpre_jimplify_widget(new BooleanOptionWidget(editGroupcgSpark_General_Options, SWT.NONE, new OptionData("Pre Jimplify", "p", "cg.spark","pre-jimplify", "\nWhen this option is set to true, Spark converts all available \nmethods to Jimple before starting the points-to analysis. This \nallows the Jimplification time to be separated from the \npoints-to time. However, it increases the total time and memory \nrequirement, because all methods are Jimplified, rather than \nonly those deemed reachable by the points-to analysis. ", defaultBool)));
1460        
1461        
1462
1463        
1464        return editGroupcgSpark_General_Options;
1465    }
1466
1467
1468
1469    private Composite cgSpark_Pointer_Assignment_Graph_Building_OptionsCreate(Composite parent) {
1470        String JavaDoc defKey;
1471        String JavaDoc defaultString;
1472        boolean defaultBool = false;
1473        String JavaDoc defaultArray;
1474       
1475        Group editGroupcgSpark_Pointer_Assignment_Graph_Building_Options = new Group(parent, SWT.NONE);
1476        GridLayout layout = new GridLayout();
1477        editGroupcgSpark_Pointer_Assignment_Graph_Building_Options.setLayout(layout);
1478    
1479        editGroupcgSpark_Pointer_Assignment_Graph_Building_Options.setText("Spark Pointer Assignment Graph Building Options");
1480        
1481        editGroupcgSpark_Pointer_Assignment_Graph_Building_Options.setData("id", "cgSpark_Pointer_Assignment_Graph_Building_Options");
1482        
1483        String JavaDoc desccgSpark_Pointer_Assignment_Graph_Building_Options = "";
1484        if (desccgSpark_Pointer_Assignment_Graph_Building_Options.length() > 0) {
1485            Label descLabelcgSpark_Pointer_Assignment_Graph_Building_Options = new Label(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.WRAP);
1486            descLabelcgSpark_Pointer_Assignment_Graph_Building_Options.setText(desccgSpark_Pointer_Assignment_Graph_Building_Options);
1487        }
1488        OptionData [] data;
1489        
1490        
1491        
1492        
1493        defKey = "p"+" "+"cg.spark"+" "+"vta";
1494        defKey = defKey.trim();
1495
1496        if (isInDefList(defKey)) {
1497            defaultBool = getBoolDef(defKey);
1498        }
1499        else {
1500            
1501            defaultBool = false;
1502            
1503        }
1504
1505        setcgcg_sparkvta_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("VTA", "p", "cg.spark","vta", "\nSetting VTA to true has the effect of setting field-based, \ntypes-for-sites, and simplify-sccs to true, and on-fly-cg to \nfalse, to simulate Variable Type Analysis, described in our \nOOPSLA 2000 paper. Note that the algorithm differs from the \noriginal VTA in that it handles array elements more precisely. \n", defaultBool)));
1506        
1507        
1508        
1509        defKey = "p"+" "+"cg.spark"+" "+"rta";
1510        defKey = defKey.trim();
1511
1512        if (isInDefList(defKey)) {
1513            defaultBool = getBoolDef(defKey);
1514        }
1515        else {
1516            
1517            defaultBool = false;
1518            
1519        }
1520
1521        setcgcg_sparkrta_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("RTA", "p", "cg.spark","rta", "\nSetting RTA to true sets types-for-sites to true, and causes \nSpark to use a single points-to set for all variables, giving \nRapid Type Analysis. ", defaultBool)));
1522        
1523        
1524        
1525        defKey = "p"+" "+"cg.spark"+" "+"field-based";
1526        defKey = defKey.trim();
1527
1528        if (isInDefList(defKey)) {
1529            defaultBool = getBoolDef(defKey);
1530        }
1531        else {
1532            
1533            defaultBool = false;
1534            
1535        }
1536
1537        setcgcg_sparkfield_based_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Field Based", "p", "cg.spark","field-based", "\nWhen this option is set to true, fields are represented by \nvariable (Green) nodes, and the object that the field belongs to \nis ignored (all objects are lumped together), giving a \nfield-based analysis. Otherwise, fields are represented by field \nreference (Red) nodes, and the objects that they belong to are \ndistinguished, giving a field-sensitive analysis. ", defaultBool)));
1538        
1539        
1540        
1541        defKey = "p"+" "+"cg.spark"+" "+"types-for-sites";
1542        defKey = defKey.trim();
1543
1544        if (isInDefList(defKey)) {
1545            defaultBool = getBoolDef(defKey);
1546        }
1547        else {
1548            
1549            defaultBool = false;
1550            
1551        }
1552
1553        setcgcg_sparktypes_for_sites_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Types For Sites", "p", "cg.spark","types-for-sites", "\nWhen this option is set to true, types rather than allocation \nsites are used as the elements of the points-to sets. ", defaultBool)));
1554        
1555        
1556        
1557        defKey = "p"+" "+"cg.spark"+" "+"merge-stringbuffer";
1558        defKey = defKey.trim();
1559
1560        if (isInDefList(defKey)) {
1561            defaultBool = getBoolDef(defKey);
1562        }
1563        else {
1564            
1565            defaultBool = true;
1566            
1567        }
1568
1569        setcgcg_sparkmerge_stringbuffer_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Merge String Buffer", "p", "cg.spark","merge-stringbuffer", "\nWhen this option is set to true, all allocation sites creating \njava.lang.StringBuffer objects are grouped together as a single \nallocation site. ", defaultBool)));
1570        
1571        
1572        
1573        defKey = "p"+" "+"cg.spark"+" "+"string-constants";
1574        defKey = defKey.trim();
1575
1576        if (isInDefList(defKey)) {
1577            defaultBool = getBoolDef(defKey);
1578        }
1579        else {
1580            
1581            defaultBool = false;
1582            
1583        }
1584
1585        setcgcg_sparkstring_constants_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Propagate All String Constants", "p", "cg.spark","string-constants", "\nWhen this option is set to false, Spark only distinguishes \nstring constants that may be the name of a class loaded \ndynamically using reflection, and all other string constants are \nlumped together into a single string constant node. Setting this \noption to true causes all string constants to be propagated \nindividually. ", defaultBool)));
1586        
1587        
1588        
1589        defKey = "p"+" "+"cg.spark"+" "+"simulate-natives";
1590        defKey = defKey.trim();
1591
1592        if (isInDefList(defKey)) {
1593            defaultBool = getBoolDef(defKey);
1594        }
1595        else {
1596            
1597            defaultBool = true;
1598            
1599        }
1600
1601        setcgcg_sparksimulate_natives_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Simulate Natives", "p", "cg.spark","simulate-natives", "\nWhen this option is set to true, the effects of native methods \nin the standard Java class library are simulated. ", defaultBool)));
1602        
1603        
1604        
1605        defKey = "p"+" "+"cg.spark"+" "+"simple-edges-bidirectional";
1606        defKey = defKey.trim();
1607
1608        if (isInDefList(defKey)) {
1609            defaultBool = getBoolDef(defKey);
1610        }
1611        else {
1612            
1613            defaultBool = false;
1614            
1615        }
1616
1617        setcgcg_sparksimple_edges_bidirectional_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Simple Edges Bidirectional", "p", "cg.spark","simple-edges-bidirectional", "\nWhen this option is set to true, all edges connecting variable \n(Green) nodes are made bidirectional, as in Steensgaard's \nanalysis. ", defaultBool)));
1618        
1619        
1620        
1621        defKey = "p"+" "+"cg.spark"+" "+"on-fly-cg";
1622        defKey = defKey.trim();
1623
1624        if (isInDefList(defKey)) {
1625            defaultBool = getBoolDef(defKey);
1626        }
1627        else {
1628            
1629            defaultBool = true;
1630            
1631        }
1632
1633        setcgcg_sparkon_fly_cg_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("On Fly Call Graph", "p", "cg.spark","on-fly-cg", "\nWhen this option is set to true, the call graph is computed \non-the-fly as points-to information is computed. Otherwise, an \ninitial CHA approximation to the call graph is used. ", defaultBool)));
1634        
1635        
1636
1637        
1638        return editGroupcgSpark_Pointer_Assignment_Graph_Building_Options;
1639    }
1640
1641
1642
1643    private Composite cgSpark_Pointer_Assignment_Graph_Simplification_OptionsCreate(Composite parent) {
1644        String JavaDoc defKey;
1645        String JavaDoc defaultString;
1646        boolean defaultBool = false;
1647        String JavaDoc defaultArray;
1648       
1649        Group editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options = new Group(parent, SWT.NONE);
1650        GridLayout layout = new GridLayout();
1651        editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options.setLayout(layout);
1652    
1653        editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options.setText("Spark Pointer Assignment Graph Simplification Options");
1654        
1655        editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options.setData("id", "cgSpark_Pointer_Assignment_Graph_Simplification_Options");
1656        
1657        String JavaDoc desccgSpark_Pointer_Assignment_Graph_Simplification_Options = "";
1658        if (desccgSpark_Pointer_Assignment_Graph_Simplification_Options.length() > 0) {
1659            Label descLabelcgSpark_Pointer_Assignment_Graph_Simplification_Options = new Label(editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options, SWT.WRAP);
1660            descLabelcgSpark_Pointer_Assignment_Graph_Simplification_Options.setText(desccgSpark_Pointer_Assignment_Graph_Simplification_Options);
1661        }
1662        OptionData [] data;
1663        
1664        
1665        
1666        
1667        defKey = "p"+" "+"cg.spark"+" "+"simplify-offline";
1668        defKey = defKey.trim();
1669
1670        if (isInDefList(defKey)) {
1671            defaultBool = getBoolDef(defKey);
1672        }
1673        else {
1674            
1675            defaultBool = false;
1676            
1677        }
1678
1679        setcgcg_sparksimplify_offline_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options, SWT.NONE, new OptionData("Simplify Offline", "p", "cg.spark","simplify-offline", "\nWhen this option is set to true, variable (Green) nodes which \nform single-entry subgraphs (so they must have the same \npoints-to set) are merged before propagation begins. ", defaultBool)));
1680        
1681        
1682        
1683        defKey = "p"+" "+"cg.spark"+" "+"simplify-sccs";
1684        defKey = defKey.trim();
1685
1686        if (isInDefList(defKey)) {
1687            defaultBool = getBoolDef(defKey);
1688        }
1689        else {
1690            
1691            defaultBool = false;
1692            
1693        }
1694
1695        setcgcg_sparksimplify_sccs_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options, SWT.NONE, new OptionData("Simplify SCCs", "p", "cg.spark","simplify-sccs", "\nWhen this option is set to true, variable (Green) nodes which \nform strongly-connected components (so they must have the same \npoints-to set) are merged before propagation begins. ", defaultBool)));
1696        
1697        
1698        
1699        defKey = "p"+" "+"cg.spark"+" "+"ignore-types-for-sccs";
1700        defKey = defKey.trim();
1701
1702        if (isInDefList(defKey)) {
1703            defaultBool = getBoolDef(defKey);
1704        }
1705        else {
1706            
1707            defaultBool = false;
1708            
1709        }
1710
1711        setcgcg_sparkignore_types_for_sccs_widget(new BooleanOptionWidget(editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options, SWT.NONE, new OptionData("Ignore Types For SCCs", "p", "cg.spark","ignore-types-for-sccs", "\nWhen this option is set to true, when collapsing \nstrongly-connected components, nodes forming SCCs are collapsed \nregardless of their declared type. The collapsed SCC is given \nthe most general type of all the nodes in the component. When \nthis option is set to false, only edges connecting nodes of the \nsame type are considered when detecting SCCs. This option has \nno effect unless simplify-sccs is true. ", defaultBool)));
1712        
1713        
1714
1715        
1716        return editGroupcgSpark_Pointer_Assignment_Graph_Simplification_Options;
1717    }
1718
1719
1720
1721    private Composite cgSpark_Points_To_Set_Flowing_OptionsCreate(Composite parent) {
1722        String JavaDoc defKey;
1723        String JavaDoc defaultString;
1724        boolean defaultBool = false;
1725        String JavaDoc defaultArray;
1726       
1727        Group editGroupcgSpark_Points_To_Set_Flowing_Options = new Group(parent, SWT.NONE);
1728        GridLayout layout = new GridLayout();
1729        editGroupcgSpark_Points_To_Set_Flowing_Options.setLayout(layout);
1730    
1731        editGroupcgSpark_Points_To_Set_Flowing_Options.setText("Spark Points-To Set Flowing Options");
1732        
1733        editGroupcgSpark_Points_To_Set_Flowing_Options.setData("id", "cgSpark_Points_To_Set_Flowing_Options");
1734        
1735        String JavaDoc desccgSpark_Points_To_Set_Flowing_Options = "";
1736        if (desccgSpark_Points_To_Set_Flowing_Options.length() > 0) {
1737            Label descLabelcgSpark_Points_To_Set_Flowing_Options = new Label(editGroupcgSpark_Points_To_Set_Flowing_Options, SWT.WRAP);
1738            descLabelcgSpark_Points_To_Set_Flowing_Options.setText(desccgSpark_Points_To_Set_Flowing_Options);
1739        }
1740        OptionData [] data;
1741        
1742        
1743        
1744        
1745        data = new OptionData [] {
1746        
1747        new OptionData("Iter",
1748        "iter",
1749        "\nIter is a simple, iterative algorithm, which propagates \neverything until the graph does not change. ",
1750        
1751        false),
1752        
1753        new OptionData("Worklist",
1754        "worklist",
1755        "\nWorklist is a worklist-based algorithm that tries to do as \nlittle work as possible. This is currently the fastest \nalgorithm. ",
1756        
1757        true),
1758        
1759        new OptionData("Cycle",
1760        "cycle",
1761        "\nThis algorithm finds cycles in the PAG on-the-fly. It is not yet \nfinished.",
1762        
1763        false),
1764        
1765        new OptionData("Merge",
1766        "merge",
1767        "\nMerge is an algorithm that merges all concrete field (yellow) \nnodes with their corresponding field reference (red) nodes. This \nalgorithm is not yet finished. ",
1768        
1769        false),
1770        
1771        new OptionData("Alias",
1772        "alias",
1773        "\nAlias is an alias-edge based algorithm. This algorithm tends to \ntake the least memory for very large problems, because it does \nnot represent explicitly points-to sets of fields of heap \nobjects. ",
1774        
1775        false),
1776        
1777        new OptionData("None",
1778        "none",
1779        "\nNone means that propagation is not done; the graph is only \nbuilt and simplified. This is useful if an external solver is \nbeing used to perform the propagation. ",
1780        
1781        false),
1782        
1783        };
1784        
1785                                        
1786        setcgcg_sparkpropagator_widget(new MultiOptionWidget(editGroupcgSpark_Points_To_Set_Flowing_Options, SWT.NONE, data, new OptionData("Propagator", "p", "cg.spark","propagator", "\nThis option tells Spark which propagation algorithm to use. \n")));
1787        
1788        defKey = "p"+" "+"cg.spark"+" "+"propagator";
1789        defKey = defKey.trim();
1790        
1791        if (isInDefList(defKey)) {
1792            defaultString = getStringDef(defKey);
1793        
1794            getcgcg_sparkpropagator_widget().setDef(defaultString);
1795        }
1796        
1797        
1798        
1799        data = new OptionData [] {
1800        
1801        new OptionData("Hash set",
1802        "hash",
1803        "\nHash is an implementation based on Java's built-in hash-set. ",
1804        
1805        false),
1806        
1807        new OptionData("Bit-vector",
1808        "bit",
1809        "\nBit is an implementation using a bit vector. ",
1810        
1811        false),
1812        
1813        new OptionData("Hybrid",
1814        "hybrid",
1815        "\nHybrid is an implementation that keeps an explicit list of up \nto 16 elements, and switches to a bit-vector when the set gets \nlarger than this. ",
1816        
1817        false),
1818        
1819        new OptionData("Sorted array",
1820        "array",
1821        "\nArray is an implementation that keeps the elements of the \npoints-to set in a sorted array. Set membership is tested using \nbinary search, and set union and intersection are computed using \nan algorithm based on the merge step from merge sort. ",
1822        
1823        false),
1824        
1825        new OptionData("Double",
1826        "double",
1827        "\nDouble is an implementation that itself uses a pair of sets for \neach points-to set. The first set in the pair stores new \npointed-to objects that have not yet been propagated, while the \nsecond set stores old pointed-to objects that have been \npropagated and need not be reconsidered. This allows the \npropagation algorithms to be incremental, often speeding them up \nsignificantly. ",
1828        
1829        true),
1830        
1831        new OptionData("Shared bit-vector",
1832        "shared",
1833        "\nThis is a bit-vector representation, in which duplicate \nbit-vectors are found and stored only once to save memory.",
1834        
1835        false),
1836        
1837        };
1838        
1839                                        
1840        setcgcg_sparkset_impl_widget(new MultiOptionWidget(editGroupcgSpark_Points_To_Set_Flowing_Options, SWT.NONE, data, new OptionData("Set Implementation", "p", "cg.spark","set-impl", "\nSelect an implementation of points-to sets for Spark to use. ")));
1841        
1842        defKey = "p"+" "+"cg.spark"+" "+"set-impl";
1843        defKey = defKey.trim();
1844        
1845        if (isInDefList(defKey)) {
1846            defaultString = getStringDef(defKey);
1847        
1848            getcgcg_sparkset_impl_widget().setDef(defaultString);
1849        }
1850        
1851        
1852        
1853        data = new OptionData [] {
1854        
1855        new OptionData("Hash set",
1856        "hash",
1857        "\nHash is an implementation based on Java's built-in hash-set. ",
1858        
1859        false),
1860        
1861        new OptionData("Bit-vector",
1862        "bit",
1863        "\nBit is an implementation using a bit vector. ",
1864        
1865        false),
1866        
1867        new OptionData("Hybrid",
1868        "hybrid",
1869        "\nHybrid is an implementation that keeps an explicit list of up \nto 16 elements, and switches to a bit-vector when the set gets \nlarger than this. ",
1870        
1871        true),
1872        
1873        new OptionData("Sorted array",
1874        "array",
1875        "\nArray is an implementation that keeps the elements of the \npoints-to set in a sorted array. Set membership is tested using \nbinary search, and set union and intersection are computed using \nan algorithm based on the merge step from merge sort. ",
1876        
1877        false),
1878        
1879        new OptionData("Shared bit-vector",
1880        "shared",
1881        "\nThis is a bit-vector representation, in which duplicate \nbit-vectors are found and stored only once to save memory.",
1882        
1883        false),
1884        
1885        };
1886        
1887                                        
1888        setcgcg_sparkdouble_set_old_widget(new MultiOptionWidget(editGroupcgSpark_Points_To_Set_Flowing_Options, SWT.NONE, data, new OptionData("Double Set Old", "p", "cg.spark","double-set-old", "\nSelect an implementation for sets of old objects in the double \npoints-to set implementation. This option has no effect unless \nSet Implementation is set to double. ")));
1889        
1890        defKey = "p"+" "+"cg.spark"+" "+"double-set-old";
1891        defKey = defKey.trim();
1892        
1893        if (isInDefList(defKey)) {
1894            defaultString = getStringDef(defKey);
1895        
1896            getcgcg_sparkdouble_set_old_widget().setDef(defaultString);
1897        }
1898        
1899        
1900        
1901        data = new OptionData [] {
1902        
1903        new OptionData("Hash set",
1904        "hash",
1905        "\nHash is an implementation based on Java's built-in hash-set. ",
1906        
1907        false),
1908        
1909        new OptionData("Bit-vector",
1910        "bit",
1911        "\nBit is an implementation using a bit vector. ",
1912        
1913        false),
1914        
1915        new OptionData("Hybrid",
1916        "hybrid",
1917        "\nHybrid is an implementation that keeps an explicit list of up \nto 16 elements, and switches to a bit-vector when the set gets \nlarger than this. ",
1918        
1919        true),
1920        
1921        new OptionData("Sorted array",
1922        "array",
1923        "\nArray is an implementation that keeps the elements of the \npoints-to set in a sorted array. Set membership is tested using \nbinary search, and set union and intersection are computed using \nan algorithm based on the merge step from merge sort. ",
1924        
1925        false),
1926        
1927        new OptionData("Shared bit-vector",
1928        "shared",
1929        "\nThis is a bit-vector representation, in which duplicate \nbit-vectors are found and stored only once to save memory.",
1930        
1931        false),
1932        
1933        };
1934        
1935                                        
1936        setcgcg_sparkdouble_set_new_widget(new MultiOptionWidget(editGroupcgSpark_Points_To_Set_Flowing_Options, SWT.NONE, data, new OptionData("Double Set New", "p", "cg.spark","double-set-new", "\nSelect an implementation for sets of new objects in the double \npoints-to set implementation. This option has no effect unless \nSet Implementation is set to double. ")));
1937        
1938        defKey = "p"+" "+"cg.spark"+" "+"double-set-new";
1939        defKey = defKey.trim();
1940        
1941        if (isInDefList(defKey)) {
1942            defaultString = getStringDef(defKey);
1943        
1944            getcgcg_sparkdouble_set_new_widget().setDef(defaultString);
1945        }
1946        
1947        
1948
1949        
1950        return editGroupcgSpark_Points_To_Set_Flowing_Options;
1951    }
1952
1953
1954
1955    private Composite cgSpark_Output_OptionsCreate(Composite parent) {
1956        String JavaDoc defKey;
1957        String JavaDoc defaultString;
1958        boolean defaultBool = false;
1959        String JavaDoc defaultArray;
1960       
1961        Group editGroupcgSpark_Output_Options = new Group(parent, SWT.NONE);
1962        GridLayout layout = new GridLayout();
1963        editGroupcgSpark_Output_Options.setLayout(layout);
1964    
1965        editGroupcgSpark_Output_Options.setText("Spark Output Options");
1966        
1967        editGroupcgSpark_Output_Options.setData("id", "cgSpark_Output_Options");
1968        
1969        String JavaDoc desccgSpark_Output_Options = "";
1970        if (desccgSpark_Output_Options.length() > 0) {
1971            Label descLabelcgSpark_Output_Options = new Label(editGroupcgSpark_Output_Options, SWT.WRAP);
1972            descLabelcgSpark_Output_Options.setText(desccgSpark_Output_Options);
1973        }
1974        OptionData [] data;
1975        
1976        
1977        
1978        
1979        defKey = "p"+" "+"cg.spark"+" "+"dump-html";
1980        defKey = defKey.trim();
1981
1982        if (isInDefList(defKey)) {
1983            defaultBool = getBoolDef(defKey);
1984        }
1985        else {
1986            
1987            defaultBool = false;
1988            
1989        }
1990
1991        setcgcg_sparkdump_html_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Dump HTML", "p", "cg.spark","dump-html", "\nWhen this option is set to true, a browseable HTML \nrepresentation of the pointer assignment graph is output to a \nfile called pag.jar after the analysis completes. Note that this \nrepresentation is typically very large. ", defaultBool)));
1992        
1993        
1994        
1995        defKey = "p"+" "+"cg.spark"+" "+"dump-pag";
1996        defKey = defKey.trim();
1997
1998        if (isInDefList(defKey)) {
1999            defaultBool = getBoolDef(defKey);
2000        }
2001        else {
2002            
2003            defaultBool = false;
2004            
2005        }
2006
2007        setcgcg_sparkdump_pag_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Dump PAG", "p", "cg.spark","dump-pag", "\nWhen this option is set to true, a representation of the \npointer assignment graph suitable for processing with other \nsolvers (such as the BDD-based solver) is output before the \nanalysis begins. ", defaultBool)));
2008        
2009        
2010        
2011        defKey = "p"+" "+"cg.spark"+" "+"dump-solution";
2012        defKey = defKey.trim();
2013
2014        if (isInDefList(defKey)) {
2015            defaultBool = getBoolDef(defKey);
2016        }
2017        else {
2018            
2019            defaultBool = false;
2020            
2021        }
2022
2023        setcgcg_sparkdump_solution_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Dump Solution", "p", "cg.spark","dump-solution", "\nWhen this option is set to true, a representation of the \nresulting points-to sets is dumped. The format is similar to \nthat of the Dump PAG option, and is therefore suitable for \ncomparison with the results of other solvers. ", defaultBool)));
2024        
2025        
2026        
2027        defKey = "p"+" "+"cg.spark"+" "+"topo-sort";
2028        defKey = defKey.trim();
2029
2030        if (isInDefList(defKey)) {
2031            defaultBool = getBoolDef(defKey);
2032        }
2033        else {
2034            
2035            defaultBool = false;
2036            
2037        }
2038
2039        setcgcg_sparktopo_sort_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Topological Sort", "p", "cg.spark","topo-sort", "\nWhen this option is set to true, the representation dumped by \nthe Dump PAG option is dumped with the variable (green) nodes in \n(pseudo-)topological order. This option has no effect unless \nDump PAG is true. ", defaultBool)));
2040        
2041        
2042        
2043        defKey = "p"+" "+"cg.spark"+" "+"dump-types";
2044        defKey = defKey.trim();
2045
2046        if (isInDefList(defKey)) {
2047            defaultBool = getBoolDef(defKey);
2048        }
2049        else {
2050            
2051            defaultBool = true;
2052            
2053        }
2054
2055        setcgcg_sparkdump_types_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Dump Types", "p", "cg.spark","dump-types", "\nWhen this option is set to true, the representation dumped by \nthe Dump PAG option includes type information for all nodes. \nThis option has no effect unless Dump PAG is true. ", defaultBool)));
2056        
2057        
2058        
2059        defKey = "p"+" "+"cg.spark"+" "+"class-method-var";
2060        defKey = defKey.trim();
2061
2062        if (isInDefList(defKey)) {
2063            defaultBool = getBoolDef(defKey);
2064        }
2065        else {
2066            
2067            defaultBool = true;
2068            
2069        }
2070
2071        setcgcg_sparkclass_method_var_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Class Method Var", "p", "cg.spark","class-method-var", "\nWhen this option is set to true, the representation dumped by \nthe Dump PAG option represents nodes by numbering each class, \nmethod, and variable within the method separately, rather than \nassigning a single integer to each node. This option has no \neffect unless Dump PAG is true. Setting Class Method Var to \ntrue has the effect of setting Topological Sort to false. \n", defaultBool)));
2072        
2073        
2074        
2075        defKey = "p"+" "+"cg.spark"+" "+"dump-answer";
2076        defKey = defKey.trim();
2077
2078        if (isInDefList(defKey)) {
2079            defaultBool = getBoolDef(defKey);
2080        }
2081        else {
2082            
2083            defaultBool = false;
2084            
2085        }
2086
2087        setcgcg_sparkdump_answer_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Dump Answer", "p", "cg.spark","dump-answer", "\nWhen this option is set to true, the computed reaching types \nfor each variable are dumped to a file, so that they can be \ncompared with the results of other analyses (such as the old \nVTA). ", defaultBool)));
2088        
2089        
2090        
2091        defKey = "p"+" "+"cg.spark"+" "+"add-tags";
2092        defKey = defKey.trim();
2093
2094        if (isInDefList(defKey)) {
2095            defaultBool = getBoolDef(defKey);
2096        }
2097        else {
2098            
2099            defaultBool = false;
2100            
2101        }
2102
2103        setcgcg_sparkadd_tags_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Add Tags", "p", "cg.spark","add-tags", "\nWhen this option is set to true, the results of the \nanalysis are encoded within tags and printed with the resulting \nJimple code. ", defaultBool)));
2104        
2105        
2106        
2107        defKey = "p"+" "+"cg.spark"+" "+"set-mass";
2108        defKey = defKey.trim();
2109
2110        if (isInDefList(defKey)) {
2111            defaultBool = getBoolDef(defKey);
2112        }
2113        else {
2114            
2115            defaultBool = false;
2116            
2117        }
2118
2119        setcgcg_sparkset_mass_widget(new BooleanOptionWidget(editGroupcgSpark_Output_Options, SWT.NONE, new OptionData("Calculate Set Mass", "p", "cg.spark","set-mass", "\nWhen this option is set to true, Spark computes and prints \nvarious cryptic statistics about the size of the points-to sets \ncomputed. ", defaultBool)));
2120        
2121        
2122
2123        
2124        return editGroupcgSpark_Output_Options;
2125    }
2126
2127
2128
2129    private Composite cgcg_paddleCreate(Composite parent) {
2130        String JavaDoc defKey;
2131        String JavaDoc defaultString;
2132        boolean defaultBool = false;
2133        String JavaDoc defaultArray;
2134       
2135        Group editGroupcgcg_paddle = new Group(parent, SWT.NONE);
2136        GridLayout layout = new GridLayout();
2137        editGroupcgcg_paddle.setLayout(layout);
2138    
2139        editGroupcgcg_paddle.setText("Paddle");
2140        
2141        editGroupcgcg_paddle.setData("id", "cgcg_paddle");
2142        
2143        String JavaDoc desccgcg_paddle = "Paddle points-to analysis framework";
2144        if (desccgcg_paddle.length() > 0) {
2145            Label descLabelcgcg_paddle = new Label(editGroupcgcg_paddle, SWT.WRAP);
2146            descLabelcgcg_paddle.setText(desccgcg_paddle);
2147        }
2148        OptionData [] data;
2149        
2150        
2151        
2152        
2153        defKey = "p"+" "+"cg.paddle"+" "+"enabled";
2154        defKey = defKey.trim();
2155
2156        if (isInDefList(defKey)) {
2157            defaultBool = getBoolDef(defKey);
2158        }
2159        else {
2160            
2161            defaultBool = false;
2162            
2163        }
2164
2165        setcgcg_paddleenabled_widget(new BooleanOptionWidget(editGroupcgcg_paddle, SWT.NONE, new OptionData("Enabled", "p", "cg.paddle","enabled", "\n", defaultBool)));
2166        
2167        
2168
2169        
2170        return editGroupcgcg_paddle;
2171    }
2172
2173
2174
2175    private Composite cgPaddle_General_OptionsCreate(Composite parent) {
2176        String JavaDoc defKey;
2177        String JavaDoc defaultString;
2178        boolean defaultBool = false;
2179        String JavaDoc defaultArray;
2180       
2181        Group editGroupcgPaddle_General_Options = new Group(parent, SWT.NONE);
2182        GridLayout layout = new GridLayout();
2183        editGroupcgPaddle_General_Options.setLayout(layout);
2184    
2185        editGroupcgPaddle_General_Options.setText("Paddle General Options");
2186        
2187        editGroupcgPaddle_General_Options.setData("id", "cgPaddle_General_Options");
2188        
2189        String JavaDoc desccgPaddle_General_Options = "";
2190        if (desccgPaddle_General_Options.length() > 0) {
2191            Label descLabelcgPaddle_General_Options = new Label(editGroupcgPaddle_General_Options, SWT.WRAP);
2192            descLabelcgPaddle_General_Options.setText(desccgPaddle_General_Options);
2193        }
2194        OptionData [] data;
2195        
2196        
2197        
2198        
2199        defKey = "p"+" "+"cg.paddle"+" "+"verbose";
2200        defKey = defKey.trim();
2201
2202        if (isInDefList(defKey)) {
2203            defaultBool = getBoolDef(defKey);
2204        }
2205        else {
2206            
2207            defaultBool = false;
2208            
2209        }
2210
2211        setcgcg_paddleverbose_widget(new BooleanOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, new OptionData("Verbose", "p", "cg.paddle","verbose", "\nWhen this option is set to true, Paddle prints detailed \ninformation about its execution. ", defaultBool)));
2212        
2213        
2214        
2215        defKey = "p"+" "+"cg.paddle"+" "+"bdd";
2216        defKey = defKey.trim();
2217
2218        if (isInDefList(defKey)) {
2219            defaultBool = getBoolDef(defKey);
2220        }
2221        else {
2222            
2223            defaultBool = false;
2224            
2225        }
2226
2227        setcgcg_paddlebdd_widget(new BooleanOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, new OptionData("Use BDDs", "p", "cg.paddle","bdd", "\nCauses \nPaddle to use BDD versions of its components ", defaultBool)));
2228        
2229        
2230        
2231        defKey = "p"+" "+"cg.paddle"+" "+"dynamic-order";
2232        defKey = defKey.trim();
2233
2234        if (isInDefList(defKey)) {
2235            defaultBool = getBoolDef(defKey);
2236        }
2237        else {
2238            
2239            defaultBool = false;
2240            
2241        }
2242
2243        setcgcg_paddledynamic_order_widget(new BooleanOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, new OptionData("Dynamic reordering", "p", "cg.paddle","dynamic-order", "\nAllows the BDD package \nto perform dynamic variable ordering. ", defaultBool)));
2244        
2245        
2246        
2247        defKey = "p"+" "+"cg.paddle"+" "+"profile";
2248        defKey = defKey.trim();
2249
2250        if (isInDefList(defKey)) {
2251            defaultBool = getBoolDef(defKey);
2252        }
2253        else {
2254            
2255            defaultBool = false;
2256            
2257        }
2258
2259        setcgcg_paddleprofile_widget(new BooleanOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, new OptionData("Profile", "p", "cg.paddle","profile", "\nTurns on JeddProfiler for profiling BDD operations. ", defaultBool)));
2260        
2261        
2262        
2263        defKey = "p"+" "+"cg.paddle"+" "+"ignore-types";
2264        defKey = defKey.trim();
2265
2266        if (isInDefList(defKey)) {
2267            defaultBool = getBoolDef(defKey);
2268        }
2269        else {
2270            
2271            defaultBool = false;
2272            
2273        }
2274
2275        setcgcg_paddleignore_types_widget(new BooleanOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, new OptionData("Ignore Types Entirely", "p", "cg.paddle","ignore-types", "\nWhen this option is set to true, all parts of Paddle completely \nignore declared types of variables and casts. ", defaultBool)));
2276        
2277        
2278        
2279        defKey = "p"+" "+"cg.paddle"+" "+"pre-jimplify";
2280        defKey = defKey.trim();
2281
2282        if (isInDefList(defKey)) {
2283            defaultBool = getBoolDef(defKey);
2284        }
2285        else {
2286            
2287            defaultBool = false;
2288            
2289        }
2290
2291        setcgcg_paddlepre_jimplify_widget(new BooleanOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, new OptionData("Pre Jimplify", "p", "cg.paddle","pre-jimplify", "\nWhen this option is set to true, Paddle converts all available \nmethods to Jimple before starting the points-to analysis. This \nallows the Jimplification time to be separated from the \npoints-to time. However, it increases the total time and memory \nrequirement, because all methods are Jimplified, rather than \nonly those deemed reachable by the points-to analysis. ", defaultBool)));
2292        
2293        
2294        
2295        data = new OptionData [] {
2296        
2297        new OptionData("On-the fly call graph",
2298        "ofcg",
2299        "\nPerforms points-to analysis and builds call graph together, \non-the-fly. ",
2300        
2301        true),
2302        
2303        new OptionData("CHA only",
2304        "cha",
2305        "\nBuilds only a call graph using Class Hieararchy Analysis, and \nperforms no points-to analysis. ",
2306        
2307        false),
2308        
2309        new OptionData("CHA ahead-of-time call graph",
2310        "cha-aot",
2311        "\nFirst builds a call graph using CHA, then uses the call graph \nin a fixed-call-graph points-to analysis. ",
2312        
2313        false),
2314        
2315        new OptionData("OFCG-AOT",
2316        "ofcg-aot",
2317        "\nFirst builds a call graph on-the-fly during a points-to \nanalysis, then uses the resulting call graph to perform a second \npoints-to analysis with a fixed call graph. ",
2318        
2319        false),
2320        
2321        new OptionData("CHA-Context-AOT call graph",
2322        "cha-context-aot",
2323        "\nFirst builds a call graph using CHA, then makes it \ncontext-sensitive using the technique described by Calman and \nZhu in PLDI 04, then uses the call graph in a fixed-call-graph \npoints-to analysis. ",
2324        
2325        false),
2326        
2327        new OptionData("OFCG-Context-AOT",
2328        "ofcg-context-aot",
2329        "\nFirst builds a call graph on-the-fly during a points-to \nanalysis, then makes it context-sensitive using the technique \ndescribed by Calman and Zhu in PLDI 04, then uses the resulting \ncall graph to perform a second points-to analysis with a fixed \ncall graph. ",
2330        
2331        false),
2332        
2333        new OptionData("CHA-Context call graph",
2334        "cha-context",
2335        "\nFirst builds a call graph using CHA, then makes it \ncontext-sensitive using the technique described by Calman and \nZhu in PLDI 04. Does not produce points-to information. ",
2336        
2337        false),
2338        
2339        new OptionData("OFCG-Context",
2340        "ofcg-context",
2341        "\nFirst builds a call graph on-the-fly during a points-to \nanalysis, then makes it context-sensitive using the technique \ndescribed by Calman and Zhu in PLDI 04. Does not perform a \nsubsequent points-to analysis. ",
2342        
2343        false),
2344        
2345        };
2346        
2347                                        
2348        setcgcg_paddleconf_widget(new MultiOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, data, new OptionData("Configuration", "p", "cg.paddle","conf", "\nSelects the configuration of points-to analysis and call graph \nconstruction to be used in Paddle. ")));
2349        
2350        defKey = "p"+" "+"cg.paddle"+" "+"conf";
2351        defKey = defKey.trim();
2352        
2353        if (isInDefList(defKey)) {
2354            defaultString = getStringDef(defKey);
2355        
2356            getcgcg_paddleconf_widget().setDef(defaultString);
2357        }
2358        
2359        
2360        
2361        data = new OptionData [] {
2362        
2363        new OptionData("Select Automatically",
2364        "auto",
2365        "\nWhen the bdd option is true, the BDD-based worklist \nimplementation will be used. When the bdd option is false, the \nTraditional worklist implementation will be used. ",
2366        
2367        true),
2368        
2369        new OptionData("Traditional",
2370        "trad",
2371        "\nNormal worklist queue implementation ",
2372        
2373        false),
2374        
2375        new OptionData("BDD",
2376        "bdd",
2377        "\nBDD-based queue implementation ",
2378        
2379        false),
2380        
2381        new OptionData("Debug",
2382        "debug",
2383        "\nAn implementation of worklists that includes both traditional \nand BDD-based implementations, and signals an error whenever \ntheir contents differ. ",
2384        
2385        false),
2386        
2387        new OptionData("Trace",
2388        "trace",
2389        "\nA worklist implementation that prints out all tuples added to \nevery worklist. ",
2390        
2391        false),
2392        
2393        new OptionData("Number Trace",
2394        "numtrace",
2395        "\nA worklist implementation that prints out the number of tuples \nadded to each worklist after each operation. ",
2396        
2397        false),
2398        
2399        };
2400        
2401                                        
2402        setcgcg_paddleq_widget(new MultiOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, data, new OptionData("Worklist Implementation", "p", "cg.paddle","q", "\nSelect the implementation of worklists to be used in Paddle. \n")));
2403        
2404        defKey = "p"+" "+"cg.paddle"+" "+"q";
2405        defKey = defKey.trim();
2406        
2407        if (isInDefList(defKey)) {
2408            defaultString = getStringDef(defKey);
2409        
2410            getcgcg_paddleq_widget().setDef(defaultString);
2411        }
2412        
2413        
2414        
2415        data = new OptionData [] {
2416        
2417        new OptionData("BuDDy",
2418        "buddy",
2419        "\nUse BuDDy implementation of BDDs. ",
2420        
2421        true),
2422        
2423        new OptionData("CUDD",
2424        "cudd",
2425        "\nUse CUDD implementation of BDDs. ",
2426        
2427        false),
2428        
2429        new OptionData("SableJBDD",
2430        "sable",
2431        "\nUse SableJBDD implementation of BDDs.",
2432        
2433        false),
2434        
2435        new OptionData("JavaBDD",
2436        "javabdd",
2437        "\nUse JavaBDD implementation of BDDs. ",
2438        
2439        false),
2440        
2441        new OptionData("None",
2442        "none",
2443        "\nDon't use any BDD backend. Any attempted use of BDDs will cause \nPaddle to crash. ",
2444        
2445        false),
2446        
2447        };
2448        
2449                                        
2450        setcgcg_paddlebackend_widget(new MultiOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, data, new OptionData("Backend", "p", "cg.paddle","backend", "\nThis option tells Paddle which implementation of BDDs to use. \n")));
2451        
2452        defKey = "p"+" "+"cg.paddle"+" "+"backend";
2453        defKey = defKey.trim();
2454        
2455        if (isInDefList(defKey)) {
2456            defaultString = getStringDef(defKey);
2457        
2458            getcgcg_paddlebackend_widget().setDef(defaultString);
2459        }
2460        
2461        
2462        
2463        defKey = "p"+" "+"cg.paddle"+" "+"order";
2464        defKey = defKey.trim();
2465        
2466        if (isInDefList(defKey)) {
2467            defaultString = getStringDef(defKey);
2468        }
2469        else {
2470            
2471            defaultString = "32";
2472            
2473        }
2474
2475        setcgcg_paddleorder_widget(new StringOptionWidget(editGroupcgPaddle_General_Options, SWT.NONE, new OptionData("Variable ordering", "p", "cg.paddle","order", "\nSelects one of the BDD \nvariable orderings hard-coded in Paddle. ", defaultString)));
2476        
2477
2478        
2479        return editGroupcgPaddle_General_Options;
2480    }
2481
2482
2483
2484    private Composite cgPaddle_Context_Sensitivity_OptionsCreate(Composite parent) {
2485        String JavaDoc defKey;
2486        String JavaDoc defaultString;
2487        boolean defaultBool = false;
2488        String JavaDoc defaultArray;
2489       
2490        Group editGroupcgPaddle_Context_Sensitivity_Options = new Group(parent, SWT.NONE);
2491        GridLayout layout = new GridLayout();
2492        editGroupcgPaddle_Context_Sensitivity_Options.setLayout(layout);
2493    
2494        editGroupcgPaddle_Context_Sensitivity_Options.setText("Paddle Context Sensitivity Options");
2495        
2496        editGroupcgPaddle_Context_Sensitivity_Options.setData("id", "cgPaddle_Context_Sensitivity_Options");
2497        
2498        String JavaDoc desccgPaddle_Context_Sensitivity_Options = "";
2499        if (desccgPaddle_Context_Sensitivity_Options.length() > 0) {
2500            Label descLabelcgPaddle_Context_Sensitivity_Options = new Label(editGroupcgPaddle_Context_Sensitivity_Options, SWT.WRAP);
2501            descLabelcgPaddle_Context_Sensitivity_Options.setText(desccgPaddle_Context_Sensitivity_Options);
2502        }
2503        OptionData [] data;
2504        
2505        
2506        
2507        
2508        defKey = "p"+" "+"cg.paddle"+" "+"context-heap";
2509        defKey = defKey.trim();
2510
2511        if (isInDefList(defKey)) {
2512            defaultBool = getBoolDef(defKey);
2513        }
2514        else {
2515            
2516            defaultBool = false;
2517            
2518        }
2519
2520        setcgcg_paddlecontext_heap_widget(new BooleanOptionWidget(editGroupcgPaddle_Context_Sensitivity_Options, SWT.NONE, new OptionData("Context-sensitive Heap Locations", "p", "cg.paddle","context-heap", "\nWhen this option is set to true, the context-sensitivity level \nthat is set for the context-sensitive call graph and for pointer \nvariables is also used to model heap locations \ncontext-sensitively. When this option is false, heap locations \nare modelled context-insensitively regardless of the \ncontext-sensitivity level. ", defaultBool)));
2521        
2522        
2523        
2524        data = new OptionData [] {
2525        
2526        new OptionData("Context-insensitive",
2527        "insens",
2528        "\nBuilds a context-insensitive call graph. ",
2529        
2530        true),
2531        
2532        new OptionData("1-CFA",
2533        "1cfa",
2534        "\nBuilds a 1-CFA call graph. ",
2535        
2536        false),
2537        
2538        new OptionData("k-CFA",
2539        "kcfa",
2540        "\nBuilds a k-CFA call graph. ",
2541        
2542        false),
2543        
2544        new OptionData("Object Sensitive",
2545        "objsens",
2546        "\nBuilds an object-sensitive call graph. ",
2547        
2548        false),
2549        
2550        new OptionData("k-Object Sensitive",
2551        "kobjsens",
2552        "\nBuilds a context-sensitive call graph where the context is a \nstring of up to k receiver objects. ",
2553        
2554        false),
2555        
2556        new OptionData("Unique k-Object Sensitive",
2557        "uniqkobjsens",
2558        "\nBuilds a context-sensitive call graph where the context is a \nstring of up to k unique receiver objects. If the receiver of a \ncall already appears in the context string, the context string \nis just reused as is. ",
2559        
2560        false),
2561        
2562        };
2563        
2564                                        
2565        setcgcg_paddlecontext_widget(new MultiOptionWidget(editGroupcgPaddle_Context_Sensitivity_Options, SWT.NONE, data, new OptionData("Context abstraction", "p", "cg.paddle","context", "\nThis option tells Paddle which level of context-sensitivity to \nuse in constructing the call graph. ")));
2566        
2567        defKey = "p"+" "+"cg.paddle"+" "+"context";
2568        defKey = defKey.trim();
2569        
2570        if (isInDefList(defKey)) {
2571            defaultString = getStringDef(defKey);
2572        
2573            getcgcg_paddlecontext_widget().setDef(defaultString);
2574        }
2575        
2576        
2577        
2578        defKey = "p"+" "+"cg.paddle"+" "+"k";
2579        defKey = defKey.trim();
2580        
2581        if (isInDefList(defKey)) {
2582            defaultString = getStringDef(defKey);
2583        }
2584        else {
2585            
2586            defaultString = "2";
2587            
2588        }
2589
2590        setcgcg_paddlek_widget(new StringOptionWidget(editGroupcgPaddle_Context_Sensitivity_Options, SWT.NONE, new OptionData("Context length (k)", "p", "cg.paddle","k", "\nThe maximum length of \ncall string or receiver object string used as context. \n", defaultString)));
2591        
2592
2593        
2594        return editGroupcgPaddle_Context_Sensitivity_Options;
2595    }
2596
2597
2598
2599    private Composite cgPaddle_Pointer_Assignment_Graph_Building_OptionsCreate(Composite parent) {
2600        String JavaDoc defKey;
2601        String JavaDoc defaultString;
2602        boolean defaultBool = false;
2603        String JavaDoc defaultArray;
2604       
2605        Group editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options = new Group(parent, SWT.NONE);
2606        GridLayout layout = new GridLayout();
2607        editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options.setLayout(layout);
2608    
2609        editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options.setText("Paddle Pointer Assignment Graph Building Options");
2610        
2611        editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options.setData("id", "cgPaddle_Pointer_Assignment_Graph_Building_Options");
2612        
2613        String JavaDoc desccgPaddle_Pointer_Assignment_Graph_Building_Options = "";
2614        if (desccgPaddle_Pointer_Assignment_Graph_Building_Options.length() > 0) {
2615            Label descLabelcgPaddle_Pointer_Assignment_Graph_Building_Options = new Label(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.WRAP);
2616            descLabelcgPaddle_Pointer_Assignment_Graph_Building_Options.setText(desccgPaddle_Pointer_Assignment_Graph_Building_Options);
2617        }
2618        OptionData [] data;
2619        
2620        
2621        
2622        
2623        defKey = "p"+" "+"cg.paddle"+" "+"rta";
2624        defKey = defKey.trim();
2625
2626        if (isInDefList(defKey)) {
2627            defaultBool = getBoolDef(defKey);
2628        }
2629        else {
2630            
2631            defaultBool = false;
2632            
2633        }
2634
2635        setcgcg_paddlerta_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("RTA", "p", "cg.paddle","rta", "\nSetting RTA to true sets types-for-sites to true, and causes \nPaddle to use a single points-to set for all variables, giving \nRapid Type Analysis. ", defaultBool)));
2636        
2637        
2638        
2639        defKey = "p"+" "+"cg.paddle"+" "+"field-based";
2640        defKey = defKey.trim();
2641
2642        if (isInDefList(defKey)) {
2643            defaultBool = getBoolDef(defKey);
2644        }
2645        else {
2646            
2647            defaultBool = false;
2648            
2649        }
2650
2651        setcgcg_paddlefield_based_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Field Based", "p", "cg.paddle","field-based", "\nWhen this option is set to true, fields are represented by \nvariable (Green) nodes, and the object that the field belongs to \nis ignored (all objects are lumped together), giving a \nfield-based analysis. Otherwise, fields are represented by field \nreference (Red) nodes, and the objects that they belong to are \ndistinguished, giving a field-sensitive analysis. ", defaultBool)));
2652        
2653        
2654        
2655        defKey = "p"+" "+"cg.paddle"+" "+"types-for-sites";
2656        defKey = defKey.trim();
2657
2658        if (isInDefList(defKey)) {
2659            defaultBool = getBoolDef(defKey);
2660        }
2661        else {
2662            
2663            defaultBool = false;
2664            
2665        }
2666
2667        setcgcg_paddletypes_for_sites_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Types For Sites", "p", "cg.paddle","types-for-sites", "\nWhen this option is set to true, types rather than allocation \nsites are used as the elements of the points-to sets. ", defaultBool)));
2668        
2669        
2670        
2671        defKey = "p"+" "+"cg.paddle"+" "+"merge-stringbuffer";
2672        defKey = defKey.trim();
2673
2674        if (isInDefList(defKey)) {
2675            defaultBool = getBoolDef(defKey);
2676        }
2677        else {
2678            
2679            defaultBool = true;
2680            
2681        }
2682
2683        setcgcg_paddlemerge_stringbuffer_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Merge String Buffer", "p", "cg.paddle","merge-stringbuffer", "\nWhen this option is set to true, all allocation sites creating \njava.lang.StringBuffer objects are grouped together as a single \nallocation site. ", defaultBool)));
2684        
2685        
2686        
2687        defKey = "p"+" "+"cg.paddle"+" "+"string-constants";
2688        defKey = defKey.trim();
2689
2690        if (isInDefList(defKey)) {
2691            defaultBool = getBoolDef(defKey);
2692        }
2693        else {
2694            
2695            defaultBool = false;
2696            
2697        }
2698
2699        setcgcg_paddlestring_constants_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Propagate All String Constants", "p", "cg.paddle","string-constants", "\nWhen this option is set to false, Paddle only distinguishes \nstring constants that may be the name of a class loaded \ndynamically using reflection, and all other string constants are \nlumped together into a single string constant node. Setting this \noption to true causes all string constants to be propagated \nindividually. ", defaultBool)));
2700        
2701        
2702        
2703        defKey = "p"+" "+"cg.paddle"+" "+"simulate-natives";
2704        defKey = defKey.trim();
2705
2706        if (isInDefList(defKey)) {
2707            defaultBool = getBoolDef(defKey);
2708        }
2709        else {
2710            
2711            defaultBool = true;
2712            
2713        }
2714
2715        setcgcg_paddlesimulate_natives_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Simulate Natives", "p", "cg.paddle","simulate-natives", "\nWhen this option is set to true, the effects of native methods \nin the standard Java class library are simulated. ", defaultBool)));
2716        
2717        
2718        
2719        defKey = "p"+" "+"cg.paddle"+" "+"global-nodes-in-natives";
2720        defKey = defKey.trim();
2721
2722        if (isInDefList(defKey)) {
2723            defaultBool = getBoolDef(defKey);
2724        }
2725        else {
2726            
2727            defaultBool = false;
2728            
2729        }
2730
2731        setcgcg_paddleglobal_nodes_in_natives_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Global Nodes in Simulated Natives", "p", "cg.paddle","global-nodes-in-natives", "\nThe simulations of native methods such as System.arraycopy() \nuse temporary local variable nodes. Setting this switch to true \ncauses them to use global variable nodes instead, reducing \nprecision. The switch exists only to make it possible to measure \nthis effect on precision; there is no other practical reason to \nset it to true. ", defaultBool)));
2732        
2733        
2734        
2735        defKey = "p"+" "+"cg.paddle"+" "+"simple-edges-bidirectional";
2736        defKey = defKey.trim();
2737
2738        if (isInDefList(defKey)) {
2739            defaultBool = getBoolDef(defKey);
2740        }
2741        else {
2742            
2743            defaultBool = false;
2744            
2745        }
2746
2747        setcgcg_paddlesimple_edges_bidirectional_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Simple Edges Bidirectional", "p", "cg.paddle","simple-edges-bidirectional", "\nWhen this option is set to true, all edges connecting variable \n(Green) nodes are made bidirectional, as in Steensgaard's \nanalysis. ", defaultBool)));
2748        
2749        
2750        
2751        defKey = "p"+" "+"cg.paddle"+" "+"this-edges";
2752        defKey = defKey.trim();
2753
2754        if (isInDefList(defKey)) {
2755            defaultBool = getBoolDef(defKey);
2756        }
2757        else {
2758            
2759            defaultBool = false;
2760            
2761        }
2762
2763        setcgcg_paddlethis_edges_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("this Pointer Assignment Edge", "p", "cg.paddle","this-edges", "\nWhen constructing a call graph on-the-fly during points-to \nanalysis, Paddle normally propagates only those receivers that \ncause a method to be invoked to the this pointer of the method. \nWhen this option is set to true, however, Paddle instead models \nflow of receivers as an assignnment edge from the receiver at \nthe call site to the this pointer of the method, reducing \nprecision. ", defaultBool)));
2764        
2765        
2766        
2767        defKey = "p"+" "+"cg.paddle"+" "+"precise-newinstance";
2768        defKey = defKey.trim();
2769
2770        if (isInDefList(defKey)) {
2771            defaultBool = getBoolDef(defKey);
2772        }
2773        else {
2774            
2775            defaultBool = true;
2776            
2777        }
2778
2779        setcgcg_paddleprecise_newinstance_widget(new BooleanOptionWidget(editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options, SWT.NONE, new OptionData("Precise newInstance", "p", "cg.paddle","precise-newinstance", "\nNormally, newInstance() calls are treated as if they may \nreturn an object of any type. Setting this option to true \ncauses them to be treated as if they return only objects of \nthe type of some dynamic class. ", defaultBool)));
2780        
2781        
2782
2783        
2784        return editGroupcgPaddle_Pointer_Assignment_Graph_Building_Options;
2785    }
2786
2787
2788
2789    private Composite cgPaddle_Points_To_Set_Flowing_OptionsCreate(Composite parent) {
2790        String JavaDoc defKey;
2791        String JavaDoc defaultString;
2792        boolean defaultBool = false;
2793        String JavaDoc defaultArray;
2794       
2795        Group editGroupcgPaddle_Points_To_Set_Flowing_Options = new Group(parent, SWT.NONE);
2796        GridLayout layout = new GridLayout();
2797        editGroupcgPaddle_Points_To_Set_Flowing_Options.setLayout(layout);
2798    
2799        editGroupcgPaddle_Points_To_Set_Flowing_Options.setText("Paddle Points-To Set Flowing Options");
2800        
2801        editGroupcgPaddle_Points_To_Set_Flowing_Options.setData("id", "cgPaddle_Points_To_Set_Flowing_Options");
2802        
2803        String JavaDoc desccgPaddle_Points_To_Set_Flowing_Options = "";
2804        if (desccgPaddle_Points_To_Set_Flowing_Options.length() > 0) {
2805            Label descLabelcgPaddle_Points_To_Set_Flowing_Options = new Label(editGroupcgPaddle_Points_To_Set_Flowing_Options, SWT.WRAP);
2806            descLabelcgPaddle_Points_To_Set_Flowing_Options.setText(desccgPaddle_Points_To_Set_Flowing_Options);
2807        }
2808        OptionData [] data;
2809        
2810        
2811        
2812        
2813        data = new OptionData [] {
2814        
2815        new OptionData("Select Automatically",
2816        "auto",
2817        "\nWhen the bdd option is true, the Incremental BDD propagation \nalgorithm will be used. When the bdd option is false, the \nWorklist propagation algorithm will be used. ",
2818        
2819        true),
2820        
2821        new OptionData("Iter",
2822        "iter",
2823        "\nIter is a simple, iterative algorithm, which propagates \neverything until the graph does not change. ",
2824        
2825        false),
2826        
2827        new OptionData("Worklist",
2828        "worklist",
2829        "\nWorklist is a worklist-based algorithm that tries to do as \nlittle work as possible. This is currently the fastest \nalgorithm. ",
2830        
2831        false),
2832        
2833        new OptionData("Alias",
2834        "alias",
2835        "\nAlias is an alias-edge based algorithm. This algorithm tends to \ntake the least memory for very large problems, because it does \nnot represent explicitly points-to sets of fields of heap \nobjects. ",
2836        
2837        false),
2838        
2839        new OptionData("BDD",
2840        "bdd",
2841        "\nBDD is a propagator that stores points-to sets in binary \ndecision diagrams. ",
2842        
2843        false),
2844        
2845        new OptionData("Incrementalized BDD",
2846        "incbdd",
2847        "\nA propagator that stores points-to sets in binary decision \ndiagrams, and propagates them incrementally. ",
2848        
2849        false),
2850        
2851        };
2852        
2853                                        
2854        setcgcg_paddlepropagator_widget(new MultiOptionWidget(editGroupcgPaddle_Points_To_Set_Flowing_Options, SWT.NONE, data, new OptionData("Propagator", "p", "cg.paddle","propagator", "\nThis option tells Paddle which propagation algorithm to use. \n")));
2855        
2856        defKey = "p"+" "+"cg.paddle"+" "+"propagator";
2857        defKey = defKey.trim();
2858        
2859        if (isInDefList(defKey)) {
2860            defaultString = getStringDef(defKey);
2861        
2862            getcgcg_paddlepropagator_widget().setDef(defaultString);
2863        }
2864        
2865        
2866        
2867        data = new OptionData [] {
2868        
2869        new OptionData("Hash set",
2870        "hash",
2871        "\nHash is an implementation based on Java's built-in hash-set. ",
2872        
2873        false),
2874        
2875        new OptionData("Bit-vector",
2876        "bit",
2877        "\nBit is an implementation using a bit vector. ",
2878        
2879        false),
2880        
2881        new OptionData("Hybrid",
2882        "hybrid",
2883        "\nHybrid is an implementation that keeps an explicit list of up \nto 16 elements, and switches to a bit-vector when the set gets \nlarger than this. ",
2884        
2885        false),
2886        
2887        new OptionData("Sorted array",
2888        "array",
2889        "\nArray is an implementation that keeps the elements of the \npoints-to set in a sorted array. Set membership is tested using \nbinary search, and set union and intersection are computed using \nan algorithm based on the merge step from merge sort. ",
2890        
2891        false),
2892        
2893        new OptionData("Double",
2894        "double",
2895        "\nDouble is an implementation that itself uses a pair of sets for \neach points-to set. The first set in the pair stores new \npointed-to objects that have not yet been propagated, while the \nsecond set stores old pointed-to objects that have been \npropagated and need not be reconsidered. This allows the \npropagation algorithms to be incremental, often speeding them up \nsignificantly. ",
2896        
2897        true),
2898        
2899        };
2900        
2901                                        
2902        setcgcg_paddleset_impl_widget(new MultiOptionWidget(editGroupcgPaddle_Points_To_Set_Flowing_Options, SWT.NONE, data, new OptionData("Set Implementation", "p", "cg.paddle","set-impl", "\nSelect an implementation of points-to sets for Paddle to use. ")));
2903        
2904        defKey = "p"+" "+"cg.paddle"+" "+"set-impl";
2905        defKey = defKey.trim();
2906        
2907        if (isInDefList(defKey)) {
2908            defaultString = getStringDef(defKey);
2909        
2910            getcgcg_paddleset_impl_widget().setDef(defaultString);
2911        }
2912        
2913        
2914        
2915        data = new OptionData [] {
2916        
2917        new OptionData("Hash set",
2918        "hash",
2919        "\nHash is an implementation based on Java's built-in hash-set. ",
2920        
2921        false),
2922        
2923        new OptionData("Bit-vector",
2924        "bit",
2925        "\nBit is an implementation using a bit vector. ",
2926        
2927        false),
2928        
2929        new OptionData("Hybrid",
2930        "hybrid",
2931        "\nHybrid is an implementation that keeps an explicit list of up \nto 16 elements, and switches to a bit-vector when the set gets \nlarger than this. ",
2932        
2933        true),
2934        
2935        new OptionData("Sorted array",
2936        "array",
2937        "\nArray is an implementation that keeps the elements of the \npoints-to set in a sorted array. Set membership is tested using \nbinary search, and set union and intersection are computed using \nan algorithm based on the merge step from merge sort. ",
2938        
2939        false),
2940        
2941        };
2942        
2943                                        
2944        setcgcg_paddledouble_set_old_widget(new MultiOptionWidget(editGroupcgPaddle_Points_To_Set_Flowing_Options, SWT.NONE, data, new OptionData("Double Set Old", "p", "cg.paddle","double-set-old", "\nSelect an implementation for sets of old objects in the double \npoints-to set implementation. This option has no effect unless \nSet Implementation is set to double. ")));
2945        
2946        defKey = "p"+" "+"cg.paddle"+" "+"double-set-old";
2947        defKey = defKey.trim();
2948        
2949        if (isInDefList(defKey)) {
2950            defaultString = getStringDef(defKey);
2951        
2952            getcgcg_paddledouble_set_old_widget().setDef(defaultString);
2953        }
2954        
2955        
2956        
2957        data = new OptionData [] {
2958        
2959        new OptionData("Hash set",
2960        "hash",
2961        "\nHash is an implementation based on Java's built-in hash-set. ",
2962        
2963        false),
2964        
2965        new OptionData("Bit-vector",
2966        "bit",
2967        "\nBit is an implementation using a bit vector. ",
2968        
2969        false),
2970        
2971        new OptionData("Hybrid",
2972        "hybrid",
2973        "\nHybrid is an implementation that keeps an explicit list of up \nto 16 elements, and switches to a bit-vector when the set gets \nlarger than this. ",
2974        
2975        true),
2976        
2977        new OptionData("Sorted array",
2978        "array",
2979        "\nArray is an implementation that keeps the elements of the \npoints-to set in a sorted array. Set membership is tested using \nbinary search, and set union and intersection are computed using \nan algorithm based on the merge step from merge sort. ",
2980        
2981        false),
2982        
2983        };
2984        
2985                                        
2986        setcgcg_paddledouble_set_new_widget(new MultiOptionWidget(editGroupcgPaddle_Points_To_Set_Flowing_Options, SWT.NONE, data, new OptionData("Double Set New", "p", "cg.paddle","double-set-new", "\nSelect an implementation for sets of new objects in the double \npoints-to set implementation. This option has no effect unless \nSet Implementation is set to double. ")));
2987        
2988        defKey = "p"+" "+"cg.paddle"+" "+"double-set-new";
2989        defKey = defKey.trim();
2990        
2991        if (isInDefList(defKey)) {
2992            defaultString = getStringDef(defKey);
2993        
2994            getcgcg_paddledouble_set_new_widget().setDef(defaultString);
2995        }
2996        
2997        
2998
2999        
3000        return editGroupcgPaddle_Points_To_Set_Flowing_Options;
3001    }
3002
3003
3004
3005    private Composite cgPaddle_Output_OptionsCreate(Composite parent) {
3006        String JavaDoc defKey;
3007        String JavaDoc defaultString;
3008        boolean defaultBool = false;
3009        String JavaDoc defaultArray;
3010       
3011        Group editGroupcgPaddle_Output_Options = new Group(parent, SWT.NONE);
3012        GridLayout layout = new GridLayout();
3013        editGroupcgPaddle_Output_Options.setLayout(layout);
3014    
3015        editGroupcgPaddle_Output_Options.setText("Paddle Output Options");
3016        
3017        editGroupcgPaddle_Output_Options.setData("id", "cgPaddle_Output_Options");
3018        
3019        String JavaDoc desccgPaddle_Output_Options = "";
3020        if (desccgPaddle_Output_Options.length() > 0) {
3021            Label descLabelcgPaddle_Output_Options = new Label(editGroupcgPaddle_Output_Options, SWT.WRAP);
3022            descLabelcgPaddle_Output_Options.setText(desccgPaddle_Output_Options);
3023        }
3024        OptionData [] data;
3025        
3026        
3027        
3028        
3029        defKey = "p"+" "+"cg.paddle"+" "+"context-counts";
3030        defKey = defKey.trim();
3031
3032        if (isInDefList(defKey)) {
3033            defaultBool = getBoolDef(defKey);
3034        }
3035        else {
3036            
3037            defaultBool = false;
3038            
3039        }
3040
3041        setcgcg_paddlecontext_counts_widget(new BooleanOptionWidget(editGroupcgPaddle_Output_Options, SWT.NONE, new OptionData("Print Context Counts", "p", "cg.paddle","context-counts", "\nCauses Paddle to print the number of contexts for each method \nand call edge, and the number of equivalence classes of contexts \nfor each variable node. ", defaultBool)));
3042        
3043        
3044        
3045        defKey = "p"+" "+"cg.paddle"+" "+"total-context-counts";
3046        defKey = defKey.trim();
3047
3048        if (isInDefList(defKey)) {
3049            defaultBool = getBoolDef(defKey);
3050        }
3051        else {
3052            
3053            defaultBool = false;
3054            
3055        }
3056
3057        setcgcg_paddletotal_context_counts_widget(new BooleanOptionWidget(editGroupcgPaddle_Output_Options, SWT.NONE, new OptionData("Print Context Counts (Totals only)", "p", "cg.paddle","total-context-counts", "\nCauses Paddle to print the number of contexts and number of \ncontext equivalence classes. ", defaultBool)));
3058        
3059        
3060        
3061        defKey = "p"+" "+"cg.paddle"+" "+"method-context-counts";
3062        defKey = defKey.trim();
3063
3064        if (isInDefList(defKey)) {
3065            defaultBool = getBoolDef(defKey);
3066        }
3067        else {
3068            
3069            defaultBool = false;
3070            
3071        }
3072
3073        setcgcg_paddlemethod_context_counts_widget(new BooleanOptionWidget(editGroupcgPaddle_Output_Options, SWT.NONE, new OptionData("Method Context Counts (Totals only)", "p", "cg.paddle","method-context-counts", "\nCauses Paddle to print the number of contexts and number of \ncontext equivalence classes split out by method. Requires \ntotal-context-counts to also be turned on. ", defaultBool)));
3074        
3075        
3076        
3077        defKey = "p"+" "+"cg.paddle"+" "+"set-mass";
3078        defKey = defKey.trim();
3079
3080        if (isInDefList(defKey)) {
3081            defaultBool = getBoolDef(defKey);
3082        }
3083        else {
3084            
3085            defaultBool = false;
3086            
3087        }
3088
3089        setcgcg_paddleset_mass_widget(new BooleanOptionWidget(editGroupcgPaddle_Output_Options, SWT.NONE, new OptionData("Calculate Set Mass", "p", "cg.paddle","set-mass", "\nWhen this option is set to true, Paddle computes and prints \nvarious cryptic statistics about the size of the points-to sets \ncomputed. ", defaultBool)));
3090        
3091        
3092        
3093        defKey = "p"+" "+"cg.paddle"+" "+"number-nodes";
3094        defKey = defKey.trim();
3095
3096        if (isInDefList(defKey)) {
3097            defaultBool = getBoolDef(defKey);
3098        }
3099        else {
3100            
3101            defaultBool = true;
3102            
3103        }
3104
3105        setcgcg_paddlenumber_nodes_widget(new BooleanOptionWidget(editGroupcgPaddle_Output_Options, SWT.NONE, new OptionData("Number nodes", "p", "cg.paddle","number-nodes", "\nWhen printing debug information about nodes, this option causes \nthe node number of each node to be printed. ", defaultBool)));
3106        
3107        
3108
3109        
3110        return editGroupcgPaddle_Output_Options;
3111    }
3112
3113
3114
3115    private Composite wstpCreate(Composite parent) {
3116        String JavaDoc defKey;
3117        String JavaDoc defaultString;
3118        boolean defaultBool = false;
3119        String JavaDoc defaultArray;
3120       
3121        Group editGroupwstp = new Group(parent, SWT.NONE);
3122        GridLayout layout = new GridLayout();
3123        editGroupwstp.setLayout(layout);
3124    
3125        editGroupwstp.setText("Whole Shimple Transformation Pack");
3126        
3127        editGroupwstp.setData("id", "wstp");
3128        
3129        String JavaDoc descwstp = "Whole-shimple transformation pack";
3130        if (descwstp.length() > 0) {
3131            Label descLabelwstp = new Label(editGroupwstp, SWT.WRAP);
3132            descLabelwstp.setText(descwstp);
3133        }
3134        OptionData [] data;
3135        
3136        
3137        
3138        
3139        defKey = "p"+" "+"wstp"+" "+"enabled";
3140        defKey = defKey.trim();
3141
3142        if (isInDefList(defKey)) {
3143            defaultBool = getBoolDef(defKey);
3144        }
3145        else {
3146            
3147            defaultBool = true;
3148            
3149        }
3150
3151        setwstpenabled_widget(new BooleanOptionWidget(editGroupwstp, SWT.NONE, new OptionData("Enabled", "p", "wstp","enabled", "\n", defaultBool)));
3152        
3153        
3154
3155        
3156        return editGroupwstp;
3157    }
3158
3159
3160
3161    private Composite wsopCreate(Composite parent) {
3162        String JavaDoc defKey;
3163        String JavaDoc defaultString;
3164        boolean defaultBool = false;
3165        String JavaDoc defaultArray;
3166       
3167        Group editGroupwsop = new Group(parent, SWT.NONE);
3168        GridLayout layout = new GridLayout();
3169        editGroupwsop.setLayout(layout);
3170    
3171        editGroupwsop.setText("Whole Shimple Optimization Pack");
3172        
3173        editGroupwsop.setData("id", "wsop");
3174        
3175        String JavaDoc descwsop = "Whole-shimple optimization pack";
3176        if (descwsop.length() > 0) {
3177            Label descLabelwsop = new Label(editGroupwsop, SWT.WRAP);
3178            descLabelwsop.setText(descwsop);
3179        }
3180        OptionData [] data;
3181        
3182        
3183        
3184        
3185        defKey = "p"+" "+"wsop"+" "+"enabled";
3186        defKey = defKey.trim();
3187
3188        if (isInDefList(defKey)) {
3189            defaultBool = getBoolDef(defKey);
3190        }
3191        else {
3192            
3193            defaultBool = false;
3194            
3195        }
3196
3197        setwsopenabled_widget(new BooleanOptionWidget(editGroupwsop, SWT.NONE, new OptionData("Enabled", "p", "wsop","enabled", "\n", defaultBool)));
3198        
3199        
3200
3201        
3202        return editGroupwsop;
3203    }
3204
3205
3206
3207    private Composite wjtpCreate(Composite parent) {
3208        String JavaDoc defKey;
3209        String JavaDoc defaultString;
3210        boolean defaultBool = false;
3211        String JavaDoc defaultArray;
3212       
3213        Group editGroupwjtp = new Group(parent, SWT.NONE);
3214        GridLayout layout = new GridLayout();
3215        editGroupwjtp.setLayout(layout);
3216    
3217        editGroupwjtp.setText("Whole-Jimple Transformation Pack");
3218        
3219        editGroupwjtp.setData("id", "wjtp");
3220        
3221        String JavaDoc descwjtp = "Whole-jimple transformation pack";
3222        if (descwjtp.length() > 0) {
3223            Label descLabelwjtp = new Label(editGroupwjtp, SWT.WRAP);
3224            descLabelwjtp.setText(descwjtp);
3225        }
3226        OptionData [] data;
3227        
3228        
3229        
3230        
3231        defKey = "p"+" "+"wjtp"+" "+"enabled";
3232        defKey = defKey.trim();
3233
3234        if (isInDefList(defKey)) {
3235            defaultBool = getBoolDef(defKey);
3236        }
3237        else {
3238            
3239            defaultBool = true;
3240            
3241        }
3242
3243        setwjtpenabled_widget(new BooleanOptionWidget(editGroupwjtp, SWT.NONE, new OptionData("Enabled", "p", "wjtp","enabled", "\n", defaultBool)));
3244        
3245        
3246
3247        
3248        return editGroupwjtp;
3249    }
3250
3251
3252
3253    private Composite wjopCreate(Composite parent) {
3254        String JavaDoc defKey;
3255        String JavaDoc defaultString;
3256        boolean defaultBool = false;
3257        String JavaDoc defaultArray;
3258       
3259        Group editGroupwjop = new Group(parent, SWT.NONE);
3260        GridLayout layout = new GridLayout();
3261        editGroupwjop.setLayout(layout);
3262    
3263        editGroupwjop.setText("Whole-Jimple Optimization Pack");
3264        
3265        editGroupwjop.setData("id", "wjop");
3266        
3267        String JavaDoc descwjop = "Whole-jimple optimization pack";
3268        if (descwjop.length() > 0) {
3269            Label descLabelwjop = new Label(editGroupwjop, SWT.WRAP);
3270            descLabelwjop.setText(descwjop);
3271        }
3272        OptionData [] data;
3273        
3274        
3275        
3276        
3277        defKey = "p"+" "+"wjop"+" "+"enabled";
3278        defKey = defKey.trim();
3279
3280        if (isInDefList(defKey)) {
3281            defaultBool = getBoolDef(defKey);
3282        }
3283        else {
3284            
3285            defaultBool = false;
3286            
3287        }
3288
3289        setwjopenabled_widget(new BooleanOptionWidget(editGroupwjop, SWT.NONE, new OptionData("Enabled", "p", "wjop","enabled", "\n", defaultBool)));
3290        
3291        
3292
3293        
3294        return editGroupwjop;
3295    }
3296
3297
3298
3299    private Composite wjopwjop_smbCreate(Composite parent) {
3300        String JavaDoc defKey;
3301        String JavaDoc defaultString;
3302        boolean defaultBool = false;
3303        String JavaDoc defaultArray;
3304       
3305        Group editGroupwjopwjop_smb = new Group(parent, SWT.NONE);
3306        GridLayout layout = new GridLayout();
3307        editGroupwjopwjop_smb.setLayout(layout);
3308    
3309        editGroupwjopwjop_smb.setText("Static Method Binder");
3310        
3311        editGroupwjopwjop_smb.setData("id", "wjopwjop_smb");
3312        
3313        String JavaDoc descwjopwjop_smb = "Static method binder: Devirtualizes monomorphic calls";
3314        if (descwjopwjop_smb.length() > 0) {
3315            Label descLabelwjopwjop_smb = new Label(editGroupwjopwjop_smb, SWT.WRAP);
3316            descLabelwjopwjop_smb.setText(descwjopwjop_smb);
3317        }
3318        OptionData [] data;
3319        
3320        
3321        
3322        
3323        defKey = "p"+" "+"wjop.smb"+" "+"enabled";
3324        defKey = defKey.trim();
3325
3326        if (isInDefList(defKey)) {
3327            defaultBool = getBoolDef(defKey);
3328        }
3329        else {
3330            
3331            defaultBool = false;
3332            
3333        }
3334
3335        setwjopwjop_smbenabled_widget(new BooleanOptionWidget(editGroupwjopwjop_smb, SWT.NONE, new OptionData("Enabled", "p", "wjop.smb","enabled", "\n", defaultBool)));
3336        
3337        
3338        
3339        defKey = "p"+" "+"wjop.smb"+" "+"insert-null-checks";
3340        defKey = defKey.trim();
3341
3342        if (isInDefList(defKey)) {
3343            defaultBool = getBoolDef(defKey);
3344        }
3345        else {
3346            
3347            defaultBool = true;
3348            
3349        }
3350
3351        setwjopwjop_smbinsert_null_checks_widget(new BooleanOptionWidget(editGroupwjopwjop_smb, SWT.NONE, new OptionData("Insert Null Checks", "p", "wjop.smb","insert-null-checks", "\nInsert a check that, before invoking the static copy of the \ntarget method, throws a NullPointerException if the receiver \nobject is null. This ensures that static method binding does \nnot eliminate exceptions which would have occurred in its \nabsence. ", defaultBool)));
3352        
3353        
3354        
3355        defKey = "p"+" "+"wjop.smb"+" "+"insert-redundant-casts";
3356        defKey = defKey.trim();
3357
3358        if (isInDefList(defKey)) {
3359            defaultBool = getBoolDef(defKey);
3360        }
3361        else {
3362            
3363            defaultBool = true;
3364            
3365        }
3366
3367        setwjopwjop_smbinsert_redundant_casts_widget(new BooleanOptionWidget(editGroupwjopwjop_smb, SWT.NONE, new OptionData("Insert Redundant Casts", "p", "wjop.smb","insert-redundant-casts", "\nInsert extra casts for the Java bytecode verifier. If the \ntarget method uses its this parameter, a reference to the \nreceiver object must be passed to the static copy of the target \nmethod. The verifier may complain if the declared type of the \nreceiver parameter does not match the type implementing the \ntarget method. Say, for example, that Singer is an interface \ndeclaring the sing() method and that the call graph shows all \nreceiver objects at a particular call site, singer.sing() (with \nsinger declared as a Singer) are in fact Bird objects (Bird \nbeing a class that implements Singer). The virtual call \nsinger.sing() is effectively replaced with the static call \nBird.staticsing(singer). Bird.staticsing() may perform \noperations on its parameter which are only allowed on Birds, \nrather than Singers. The Insert Redundant Casts option inserts \na cast of singer to the Bird type, to prevent complaints from \nthe verifier.", defaultBool)));
3368        
3369        
3370        
3371        data = new OptionData [] {
3372        
3373        new OptionData("Unsafe",
3374        "unsafe",
3375        "\nModify the visibility on code so that all inlining is \npermitted. ",
3376        
3377        true),
3378        
3379        new OptionData("Safe",
3380        "safe",
3381        "\nPreserve the exact meaning of the analyzed program. ",
3382        
3383        false),
3384        
3385        new OptionData("None",
3386        "none",
3387        "\nChange no modifiers whatsoever. ",
3388        
3389        false),
3390        
3391        };
3392        
3393                                        
3394        setwjopwjop_smballowed_modifier_changes_widget(new MultiOptionWidget(editGroupwjopwjop_smb, SWT.NONE, data, new OptionData("Allowed Modifier Changes", "p", "wjop.smb","allowed-modifier-changes", "\nSpecify which changes in visibility modifiers are allowed. ")));
3395        
3396        defKey = "p"+" "+"wjop.smb"+" "+"allowed-modifier-changes";
3397        defKey = defKey.trim();
3398        
3399        if (isInDefList(defKey)) {
3400            defaultString = getStringDef(defKey);
3401        
3402            getwjopwjop_smballowed_modifier_changes_widget().setDef(defaultString);
3403        }
3404        
3405        
3406
3407        
3408        return editGroupwjopwjop_smb;
3409    }
3410
3411
3412
3413    private Composite wjopwjop_siCreate(Composite parent) {
3414        String JavaDoc defKey;
3415        String JavaDoc defaultString;
3416        boolean defaultBool = false;
3417        String JavaDoc defaultArray;
3418       
3419        Group editGroupwjopwjop_si = new Group(parent, SWT.NONE);
3420        GridLayout layout = new GridLayout();
3421        editGroupwjopwjop_si.setLayout(layout);
3422    
3423        editGroupwjopwjop_si.setText("Static Inliner");
3424        
3425        editGroupwjopwjop_si.setData("id", "wjopwjop_si");
3426        
3427        String JavaDoc descwjopwjop_si = "Static inliner: inlines monomorphic calls";
3428        if (descwjopwjop_si.length() > 0) {
3429            Label descLabelwjopwjop_si = new Label(editGroupwjopwjop_si, SWT.WRAP);
3430            descLabelwjopwjop_si.setText(descwjopwjop_si);
3431        }
3432        OptionData [] data;
3433        
3434        
3435        
3436        
3437        defKey = "p"+" "+"wjop.si"+" "+"enabled";
3438        defKey = defKey.trim();
3439
3440        if (isInDefList(defKey)) {
3441            defaultBool = getBoolDef(defKey);
3442        }
3443        else {
3444            
3445            defaultBool = true;
3446            
3447        }
3448
3449        setwjopwjop_sienabled_widget(new BooleanOptionWidget(editGroupwjopwjop_si, SWT.NONE, new OptionData("Enabled", "p", "wjop.si","enabled", "\n", defaultBool)));
3450        
3451        
3452        
3453        defKey = "p"+" "+"wjop.si"+" "+"rerun-jb";
3454        defKey = defKey.trim();
3455
3456        if (isInDefList(defKey)) {
3457            defaultBool = getBoolDef(defKey);
3458        }
3459        else {
3460            
3461            defaultBool = true;
3462            
3463        }
3464
3465        setwjopwjop_sirerun_jb_widget(new BooleanOptionWidget(editGroupwjopwjop_si, SWT.NONE, new OptionData("Reconstruct Jimple body after inlining", "p", "wjop.si","rerun-jb", "\nWhen a method with array parameters is inlined, its variables \nmay need to be assigned different types than they had in the \noriginal method to produce compilable code. When this option is \nset, Soot re-runs the Jimple Body pack on each method body which \nhas had another method inlined into it so that the typing \nalgorithm can reassign the types. ", defaultBool)));
3466        
3467        
3468        
3469        defKey = "p"+" "+"wjop.si"+" "+"insert-null-checks";
3470        defKey = defKey.trim();
3471
3472        if (isInDefList(defKey)) {
3473            defaultBool = getBoolDef(defKey);
3474        }
3475        else {
3476            
3477            defaultBool = true;
3478            
3479        }
3480
3481        setwjopwjop_siinsert_null_checks_widget(new BooleanOptionWidget(editGroupwjopwjop_si, SWT.NONE, new OptionData("Insert Null Checks", "p", "wjop.si","insert-null-checks", "\nInsert, before the inlined body of the target method, a check \nthat throws a NullPointerException if the receiver object is \nnull. This ensures that inlining will not eliminate exceptions \nwhich would have occurred in its absence. ", defaultBool)));
3482        
3483        
3484        
3485        defKey = "p"+" "+"wjop.si"+" "+"insert-redundant-casts";
3486        defKey = defKey.trim();
3487
3488        if (isInDefList(defKey)) {
3489            defaultBool = getBoolDef(defKey);
3490        }
3491        else {
3492            
3493            defaultBool = true;
3494            
3495        }
3496
3497        setwjopwjop_siinsert_redundant_casts_widget(new BooleanOptionWidget(editGroupwjopwjop_si, SWT.NONE, new OptionData("Insert Redundant Casts", "p", "wjop.si","insert-redundant-casts", "\nInsert extra casts for the Java bytecode verifier. The \nverifier may complain if the inlined method uses this and the \ndeclared type of the receiver of the call being inlined is \ndifferent from the type implementing the target method being \ninlined. Say, for example, that Singer is an interface declaring \nthe sing() method and that the call graph shows that all \nreceiver objects at a particular call site, singer.sing() (with \nsinger declared as a Singer) are in fact Bird objects (Bird \nbeing a class that implements Singer). The implementation of \nBird.sing() may perform operations on this which are only \nallowed on Birds, rather than Singers. The Insert Redundant \nCasts option ensures that this cannot lead to verification \nerrors, by inserting a cast of bird to the Bird type before \ninlining the body of Bird.sing().", defaultBool)));
3498        
3499        
3500        
3501        data = new OptionData [] {
3502        
3503        new OptionData("Unsafe",
3504        "unsafe",
3505        "\nModify the visibility on code so that all inlining is \npermitted. ",
3506        
3507        true),
3508        
3509        new OptionData("Safe",
3510        "safe",
3511        "\nPreserve the exact meaning of the analyzed program. ",
3512        
3513        false),
3514        
3515        new OptionData("None",
3516        "none",
3517        "\nChange no modifiers whatsoever. ",
3518        
3519        false),
3520        
3521        };
3522        
3523                                        
3524        setwjopwjop_siallowed_modifier_changes_widget(new MultiOptionWidget(editGroupwjopwjop_si, SWT.NONE, data, new OptionData("Allowed Modifier Changes", "p", "wjop.si","allowed-modifier-changes", "\nSpecify which changes in visibility modifiers are allowed. ")));
3525        
3526        defKey = "p"+" "+"wjop.si"+" "+"allowed-modifier-changes";
3527        defKey = defKey.trim();
3528        
3529        if (isInDefList(defKey)) {
3530            defaultString = getStringDef(defKey);
3531        
3532            getwjopwjop_siallowed_modifier_changes_widget().setDef(defaultString);
3533        }
3534        
3535        
3536        
3537        defKey = "p"+" "+"wjop.si"+" "+"expansion-factor";
3538        defKey = defKey.trim();
3539        
3540        if (isInDefList(defKey)) {
3541            defaultString = getStringDef(defKey);
3542        }
3543        else {
3544            
3545            defaultString = "3";
3546            
3547        }
3548
3549        setwjopwjop_siexpansion_factor_widget(new StringOptionWidget(editGroupwjopwjop_si, SWT.NONE, new OptionData("Expansion Factor", "p", "wjop.si","expansion-factor", "\nDetermines the maximum allowed expansion of a method. Inlining \nwill cause the method to grow by a factor of no more than the \nExpansion Factor. ", defaultString)));
3550        
3551        
3552        defKey = "p"+" "+"wjop.si"+" "+"max-container-size";
3553        defKey = defKey.trim();
3554        
3555        if (isInDefList(defKey)) {
3556            defaultString = getStringDef(defKey);
3557        }
3558        else {
3559            
3560            defaultString = "5000";
3561            
3562        }
3563
3564        setwjopwjop_simax_container_size_widget(new StringOptionWidget(editGroupwjopwjop_si, SWT.NONE, new OptionData("Max Container Size", "p", "wjop.si","max-container-size", "\nDetermines the maximum number of Jimple statements for a \ncontainer method. If a method has more than this number of \nJimple statements, then no methods will be inlined into it. \n", defaultString)));
3565        
3566        
3567        defKey = "p"+" "+"wjop.si"+" "+"max-inlinee-size";
3568        defKey = defKey.trim();
3569        
3570        if (isInDefList(defKey)) {
3571            defaultString = getStringDef(defKey);
3572        }
3573        else {
3574            
3575            defaultString = "20";
3576            
3577        }
3578
3579        setwjopwjop_simax_inlinee_size_widget(new StringOptionWidget(editGroupwjopwjop_si, SWT.NONE, new OptionData("Max Inlinee Size", "p", "wjop.si","max-inlinee-size", "\nDetermines the maximum number of Jimple statements for an \ninlinee method. If a method has more than this number of Jimple \nstatements, then it will not be inlined into other methods. \n", defaultString)));
3580        
3581
3582        
3583        return editGroupwjopwjop_si;
3584    }
3585
3586
3587
3588    private Composite wjapCreate(Composite parent) {
3589        String JavaDoc defKey;
3590        String JavaDoc defaultString;
3591        boolean defaultBool = false;
3592        String JavaDoc defaultArray;
3593       
3594        Group editGroupwjap = new Group(parent, SWT.NONE);
3595        GridLayout layout = new GridLayout();
3596        editGroupwjap.setLayout(layout);
3597    
3598        editGroupwjap.setText("Whole-Jimple Annotation Pack");
3599        
3600        editGroupwjap.setData("id", "wjap");
3601        
3602        String JavaDoc descwjap = "Whole-jimple annotation pack: adds interprocedural tags";
3603        if (descwjap.length() > 0) {
3604            Label descLabelwjap = new Label(editGroupwjap, SWT.WRAP);
3605            descLabelwjap.setText(descwjap);
3606        }
3607        OptionData [] data;
3608        
3609        
3610        
3611        
3612        defKey = "p"+" "+"wjap"+" "+"enabled";
3613        defKey = defKey.trim();
3614
3615        if (isInDefList(defKey)) {
3616            defaultBool = getBoolDef(defKey);
3617        }
3618        else {
3619            
3620            defaultBool = true;
3621            
3622        }
3623
3624        setwjapenabled_widget(new BooleanOptionWidget(editGroupwjap, SWT.NONE, new OptionData("Enabled", "p", "wjap","enabled", "\n", defaultBool)));
3625        
3626        
3627
3628        
3629        return editGroupwjap;
3630    }
3631
3632
3633
3634    private Composite wjapwjap_raCreate(Composite parent) {
3635        String JavaDoc defKey;
3636        String JavaDoc defaultString;
3637        boolean defaultBool = false;
3638        String JavaDoc defaultArray;
3639       
3640        Group editGroupwjapwjap_ra = new Group(parent, SWT.NONE);
3641        GridLayout layout = new GridLayout();
3642        editGroupwjapwjap_ra.setLayout(layout);
3643    
3644        editGroupwjapwjap_ra.setText("Rectangular Array Finder");
3645        
3646        editGroupwjapwjap_ra.setData("id", "wjapwjap_ra");
3647        
3648        String JavaDoc descwjapwjap_ra = "Rectangular array finder";
3649        if (descwjapwjap_ra.length() > 0) {
3650            Label descLabelwjapwjap_ra = new Label(editGroupwjapwjap_ra, SWT.WRAP);
3651            descLabelwjapwjap_ra.setText(descwjapwjap_ra);
3652        }
3653        OptionData [] data;
3654        
3655        
3656        
3657        
3658        defKey = "p"+" "+"wjap.ra"+" "+"enabled";
3659        defKey = defKey.trim();
3660
3661        if (isInDefList(defKey)) {
3662            defaultBool = getBoolDef(defKey);
3663        }
3664        else {
3665            
3666            defaultBool = false;
3667            
3668        }
3669
3670        setwjapwjap_raenabled_widget(new BooleanOptionWidget(editGroupwjapwjap_ra, SWT.NONE, new OptionData("Enabled", "p", "wjap.ra","enabled", "\n", defaultBool)));
3671        
3672        
3673
3674        
3675        return editGroupwjapwjap_ra;
3676    }
3677
3678
3679
3680    private Composite wjapwjap_umtCreate(Composite parent) {
3681        String JavaDoc defKey;
3682        String JavaDoc defaultString;
3683        boolean defaultBool = false;
3684        String JavaDoc defaultArray;
3685       
3686        Group editGroupwjapwjap_umt = new Group(parent, SWT.NONE);
3687        GridLayout layout = new GridLayout();
3688        editGroupwjapwjap_umt.setLayout(layout);
3689    
3690        editGroupwjapwjap_umt.setText("Unreachable Method Tagger");
3691        
3692        editGroupwjapwjap_umt.setData("id", "wjapwjap_umt");
3693        
3694        String JavaDoc descwjapwjap_umt = "Tags all unreachable methods";
3695        if (descwjapwjap_umt.length() > 0) {
3696            Label descLabelwjapwjap_umt = new Label(editGroupwjapwjap_umt, SWT.WRAP);
3697            descLabelwjapwjap_umt.setText(descwjapwjap_umt);
3698        }
3699        OptionData [] data;
3700        
3701        
3702        
3703        
3704        defKey = "p"+" "+"wjap.umt"+" "+"enabled";
3705        defKey = defKey.trim();
3706
3707        if (isInDefList(defKey)) {
3708            defaultBool = getBoolDef(defKey);
3709        }
3710        else {
3711            
3712            defaultBool = false;
3713            
3714        }
3715
3716        setwjapwjap_umtenabled_widget(new BooleanOptionWidget(editGroupwjapwjap_umt, SWT.NONE, new OptionData("Enabled", "p", "wjap.umt","enabled", "\n", defaultBool)));
3717        
3718        
3719
3720        
3721        return editGroupwjapwjap_umt;
3722    }
3723
3724
3725
3726    private Composite wjapwjap_uftCreate(Composite parent) {
3727        String JavaDoc defKey;
3728        String JavaDoc defaultString;
3729        boolean defaultBool = false;
3730        String JavaDoc defaultArray;
3731       
3732        Group editGroupwjapwjap_uft = new Group(parent, SWT.NONE);
3733        GridLayout layout = new GridLayout();
3734        editGroupwjapwjap_uft.setLayout(layout);
3735    
3736        editGroupwjapwjap_uft.setText("Unreachable Fields Tagger");
3737        
3738        editGroupwjapwjap_uft.setData("id", "wjapwjap_uft");
3739        
3740        String JavaDoc descwjapwjap_uft = "Tags all unreachable fields";
3741        if (descwjapwjap_uft.length() > 0) {
3742            Label descLabelwjapwjap_uft = new Label(editGroupwjapwjap_uft, SWT.WRAP);
3743            descLabelwjapwjap_uft.setText(descwjapwjap_uft);
3744        }
3745        OptionData [] data;
3746        
3747        
3748        
3749        
3750        defKey = "p"+" "+"wjap.uft"+" "+"enabled";
3751        defKey = defKey.trim();
3752
3753        if (isInDefList(defKey)) {
3754            defaultBool = getBoolDef(defKey);
3755        }
3756        else {
3757            
3758            defaultBool = false;
3759            
3760        }
3761
3762        setwjapwjap_uftenabled_widget(new BooleanOptionWidget(editGroupwjapwjap_uft, SWT.NONE, new OptionData("Enabled", "p", "wjap.uft","enabled", "\n", defaultBool)));
3763        
3764        
3765
3766        
3767        return editGroupwjapwjap_uft;
3768    }
3769
3770
3771
3772    private Composite wjapwjap_tqtCreate(Composite parent) {
3773        String JavaDoc defKey;
3774        String JavaDoc defaultString;
3775        boolean defaultBool = false;
3776        String JavaDoc defaultArray;
3777       
3778        Group editGroupwjapwjap_tqt = new Group(parent, SWT.NONE);
3779        GridLayout layout = new GridLayout();
3780        editGroupwjapwjap_tqt.setLayout(layout);
3781    
3782        editGroupwjapwjap_tqt.setText("Tightest Qualifiers Tagger");
3783        
3784        editGroupwjapwjap_tqt.setData("id", "wjapwjap_tqt");
3785        
3786        String JavaDoc descwjapwjap_tqt = "Tags all qualifiers that could be tighter";
3787        if (descwjapwjap_tqt.length() > 0) {
3788            Label descLabelwjapwjap_tqt = new Label(editGroupwjapwjap_tqt, SWT.WRAP);
3789            descLabelwjapwjap_tqt.setText(descwjapwjap_tqt);
3790        }
3791        OptionData [] data;
3792        
3793        
3794        
3795        
3796        defKey = "p"+" "+"wjap.tqt"+" "+"enabled";
3797        defKey = defKey.trim();
3798
3799        if (isInDefList(defKey)) {
3800            defaultBool = getBoolDef(defKey);
3801        }
3802        else {
3803            
3804            defaultBool = false;
3805            
3806        }
3807
3808        setwjapwjap_tqtenabled_widget(new BooleanOptionWidget(editGroupwjapwjap_tqt, SWT.NONE, new OptionData("Enabled", "p", "wjap.tqt","enabled", "\n", defaultBool)));
3809        
3810        
3811
3812        
3813        return editGroupwjapwjap_tqt;
3814    }
3815
3816
3817
3818    private Composite wjapwjap_cggCreate(Composite parent) {
3819        String JavaDoc defKey;
3820        String JavaDoc defaultString;
3821        boolean defaultBool = false;
3822        String JavaDoc defaultArray;
3823       
3824        Group editGroupwjapwjap_cgg = new Group(parent, SWT.NONE);
3825        GridLayout layout = new GridLayout();
3826        editGroupwjapwjap_cgg.setLayout(layout);
3827    
3828        editGroupwjapwjap_cgg.setText("Call Graph Grapher");
3829        
3830        editGroupwjapwjap_cgg.setData("id", "wjapwjap_cgg");
3831        
3832        String JavaDoc descwjapwjap_cgg = "Creates graphical call graph.";
3833        if (descwjapwjap_cgg.length() > 0) {
3834            Label descLabelwjapwjap_cgg = new Label(editGroupwjapwjap_cgg, SWT.WRAP);
3835            descLabelwjapwjap_cgg.setText(descwjapwjap_cgg);
3836        }
3837        OptionData [] data;
3838        
3839        
3840        
3841        
3842        defKey = "p"+" "+"wjap.cgg"+" "+"enabled";
3843        defKey = defKey.trim();
3844
3845        if (isInDefList(defKey)) {
3846            defaultBool = getBoolDef(defKey);
3847        }
3848        else {
3849            
3850            defaultBool = false;
3851            
3852        }
3853
3854        setwjapwjap_cggenabled_widget(new BooleanOptionWidget(editGroupwjapwjap_cgg, SWT.NONE, new OptionData("Enabled", "p", "wjap.cgg","enabled", "\n", defaultBool)));
3855        
3856        
3857        
3858        defKey = "p"+" "+"wjap.cgg"+" "+"show-lib-meths";
3859        defKey = defKey.trim();
3860
3861        if (isInDefList(defKey)) {
3862            defaultBool = getBoolDef(defKey);
3863        }
3864        else {
3865            
3866            defaultBool = false;
3867            
3868        }
3869
3870        setwjapwjap_cggshow_lib_meths_widget(new BooleanOptionWidget(editGroupwjapwjap_cgg, SWT.NONE, new OptionData("Show Library Methods", "p", "wjap.cgg","show-lib-meths", "\n", defaultBool)));
3871        
3872        
3873
3874        
3875        return editGroupwjapwjap_cgg;
3876    }
3877
3878
3879
3880    private Composite wjapwjap_purityCreate(Composite parent) {
3881        String JavaDoc defKey;
3882        String JavaDoc defaultString;
3883        boolean defaultBool = false;
3884        String JavaDoc defaultArray;
3885       
3886        Group editGroupwjapwjap_purity = new Group(parent, SWT.NONE);
3887        GridLayout layout = new GridLayout();
3888        editGroupwjapwjap_purity.setLayout(layout);
3889    
3890        editGroupwjapwjap_purity.setText("Purity Analysis [AM]");
3891        
3892        editGroupwjapwjap_purity.setData("id", "wjapwjap_purity");
3893        
3894        String JavaDoc descwjapwjap_purity = "Emit purity attributes";
3895        if (descwjapwjap_purity.length() > 0) {
3896            Label descLabelwjapwjap_purity = new Label(editGroupwjapwjap_purity, SWT.WRAP);
3897            descLabelwjapwjap_purity.setText(descwjapwjap_purity);
3898        }
3899        OptionData [] data;
3900        
3901        
3902        
3903        
3904        defKey = "p"+" "+"wjap.purity"+" "+"enabled";
3905        defKey = defKey.trim();
3906
3907        if (isInDefList(defKey)) {
3908            defaultBool = getBoolDef(defKey);
3909        }
3910        else {
3911            
3912            defaultBool = false;
3913            
3914        }
3915
3916        setwjapwjap_purityenabled_widget(new BooleanOptionWidget(editGroupwjapwjap_purity, SWT.NONE, new OptionData("Enabled", "p", "wjap.purity","enabled", "\n", defaultBool)));
3917        
3918        
3919        
3920        defKey = "p"+" "+"wjap.purity"+" "+"dump-summaries";
3921        defKey = defKey.trim();
3922
3923        if (isInDefList(defKey)) {
3924            defaultBool = getBoolDef(defKey);
3925        }
3926        else {
3927            
3928            defaultBool = true;
3929            
3930        }
3931
3932        setwjapwjap_puritydump_summaries_widget(new BooleanOptionWidget(editGroupwjapwjap_purity, SWT.NONE, new OptionData("Dump one .dot files for each method summary", "p", "wjap.purity","dump-summaries", "\n", defaultBool)));
3933        
3934        
3935        
3936        defKey = "p"+" "+"wjap.purity"+" "+"dump-cg";
3937        defKey = defKey.trim();
3938
3939        if (isInDefList(defKey)) {
3940            defaultBool = getBoolDef(defKey);
3941        }
3942        else {
3943            
3944            defaultBool = false;
3945            
3946        }
3947
3948        setwjapwjap_puritydump_cg_widget(new BooleanOptionWidget(editGroupwjapwjap_purity, SWT.NONE, new OptionData("Dump .dot call-graph annotated with method summaries (huge)", "p", "wjap.purity","dump-cg", "\n", defaultBool)));
3949        
3950        
3951        
3952        defKey = "p"+" "+"wjap.purity"+" "+"dump-intra";
3953        defKey = defKey.trim();
3954
3955        if (isInDefList(defKey)) {
3956            defaultBool = getBoolDef(defKey);
3957        }
3958        else {
3959            
3960            defaultBool = false;
3961            
3962        }
3963
3964        setwjapwjap_puritydump_intra_widget(new BooleanOptionWidget(editGroupwjapwjap_purity, SWT.NONE, new OptionData("Dump one .dot for each intra-procedural method analysis (long)", "p", "wjap.purity","dump-intra", "\n", defaultBool)));
3965        
3966        
3967        
3968        defKey = "p"+" "+"wjap.purity"+" "+"print";
3969        defKey = defKey.trim();
3970
3971        if (isInDefList(defKey)) {
3972            defaultBool = getBoolDef(defKey);
3973        }
3974        else {
3975            
3976            defaultBool = true;
3977            
3978        }
3979
3980        setwjapwjap_purityprint_widget(new BooleanOptionWidget(editGroupwjapwjap_purity, SWT.NONE, new OptionData("Print analysis results", "p", "wjap.purity","print", "\n", defaultBool)));
3981        
3982        
3983        
3984        defKey = "p"+" "+"wjap.purity"+" "+"verbose";
3985        defKey = defKey.trim();
3986
3987        if (isInDefList(defKey)) {
3988            defaultBool = getBoolDef(defKey);
3989        }
3990        else {
3991            
3992            defaultBool = false;
3993            
3994        }
3995
3996        setwjapwjap_purityverbose_widget(new BooleanOptionWidget(editGroupwjapwjap_purity, SWT.NONE, new OptionData("Be (quite) verbose", "p", "wjap.purity","verbose", "\n", defaultBool)));
3997        
3998        
3999
4000        
4001        return editGroupwjapwjap_purity;
4002    }
4003
4004
4005
4006    private Composite shimpleCreate(Composite parent) {
4007        String JavaDoc defKey;
4008        String JavaDoc defaultString;
4009        boolean defaultBool = false;
4010        String JavaDoc defaultArray;
4011       
4012        Group editGroupshimple = new Group(parent, SWT.NONE);
4013        GridLayout layout = new GridLayout();
4014        editGroupshimple.setLayout(layout);
4015    
4016        editGroupshimple.setText("Shimple Control");
4017        
4018        editGroupshimple.setData("id", "shimple");
4019        
4020        String JavaDoc descshimple = "Sets parameters for Shimple SSA form";
4021        if (descshimple.length() > 0) {
4022            Label descLabelshimple = new Label(editGroupshimple, SWT.WRAP);
4023            descLabelshimple.setText(descshimple);
4024        }
4025        OptionData [] data;
4026        
4027        
4028        
4029        
4030        defKey = "p"+" "+"shimple"+" "+"enabled";
4031        defKey = defKey.trim();
4032
4033        if (isInDefList(defKey)) {
4034            defaultBool = getBoolDef(defKey);
4035        }
4036        else {
4037            
4038            defaultBool = true;
4039            
4040        }
4041
4042        setshimpleenabled_widget(new BooleanOptionWidget(editGroupshimple, SWT.NONE, new OptionData("Enabled", "p", "shimple","enabled", "\n", defaultBool)));
4043        
4044        
4045        
4046        defKey = "p"+" "+"shimple"+" "+"node-elim-opt";
4047        defKey = defKey.trim();
4048
4049        if (isInDefList(defKey)) {
4050            defaultBool = getBoolDef(defKey);
4051        }
4052        else {
4053            
4054            defaultBool = true;
4055            
4056        }
4057
4058        setshimplenode_elim_opt_widget(new BooleanOptionWidget(editGroupshimple, SWT.NONE, new OptionData("Shimple Node Elimination Optimizations", "p", "shimple","node-elim-opt", "\nPerform some optimizations, such as dead code \nelimination and local aggregation, before/after \neliminating nodes. ", defaultBool)));
4059        
4060        
4061        
4062        defKey = "p"+" "+"shimple"+" "+"standard-local-names";
4063        defKey = defKey.trim();
4064
4065        if (isInDefList(defKey)) {
4066            defaultBool = getBoolDef(defKey);
4067        }
4068        else {
4069            
4070            defaultBool = false;
4071            
4072        }
4073
4074        setshimplestandard_local_names_widget(new BooleanOptionWidget(editGroupshimple, SWT.NONE, new OptionData("Local Name Standardization", "p", "shimple","standard-local-names", "\nIf enabled, the Local Name Standardizer is applied \nwhenever Shimple creates new locals. Normally, \nShimple will retain the original local names as far \nas possible and use an underscore notation to denote \nSSA subscripts. This transformation does not \notherwise affect Shimple behaviour. ", defaultBool)));
4075        
4076        
4077        
4078        defKey = "p"+" "+"shimple"+" "+"extended";
4079        defKey = defKey.trim();
4080
4081        if (isInDefList(defKey)) {
4082            defaultBool = getBoolDef(defKey);
4083        }
4084        else {
4085            
4086            defaultBool = false;
4087            
4088        }
4089
4090        setshimpleextended_widget(new BooleanOptionWidget(editGroupshimple, SWT.NONE, new OptionData("Extended SSA (SSI)", "p", "shimple","extended", "\nIf enabled, Shimple will created extended SSA (SSI) \nform. ", defaultBool)));
4091        
4092        
4093        
4094        defKey = "p"+" "+"shimple"+" "+"debug";
4095        defKey = defKey.trim();
4096
4097        if (isInDefList(defKey)) {
4098            defaultBool = getBoolDef(defKey);
4099        }
4100        else {
4101            
4102            defaultBool = false;
4103            
4104        }
4105
4106        setshimpledebug_widget(new BooleanOptionWidget(editGroupshimple, SWT.NONE, new OptionData("Debugging Output", "p", "shimple","debug", "\nIf enabled, Soot may print out warnings and \nmessages useful for debugging the Shimple module. \nAutomatically enabled by the global debug switch. \n", defaultBool)));
4107        
4108        
4109
4110        
4111        return editGroupshimple;
4112    }
4113
4114
4115
4116    private Composite stpCreate(Composite parent) {
4117        String JavaDoc defKey;
4118        String JavaDoc defaultString;
4119        boolean defaultBool = false;
4120        String JavaDoc defaultArray;
4121       
4122        Group editGroupstp = new Group(parent, SWT.NONE);
4123        GridLayout layout = new GridLayout();
4124        editGroupstp.setLayout(layout);
4125    
4126        editGroupstp.setText("Shimple Transformation Pack");
4127        
4128        editGroupstp.setData("id", "stp");
4129        
4130        String JavaDoc descstp = "Shimple transformation pack";
4131        if (descstp.length() > 0) {
4132            Label descLabelstp = new Label(editGroupstp, SWT.WRAP);
4133            descLabelstp.setText(descstp);
4134        }
4135        OptionData [] data;
4136        
4137        
4138        
4139        
4140        defKey = "p"+" "+"stp"+" "+"enabled";
4141        defKey = defKey.trim();
4142
4143        if (isInDefList(defKey)) {
4144            defaultBool = getBoolDef(defKey);
4145        }
4146        else {
4147            
4148            defaultBool = true;
4149            
4150        }
4151
4152        setstpenabled_widget(new BooleanOptionWidget(editGroupstp, SWT.NONE, new OptionData("Enabled", "p", "stp","enabled", "\n", defaultBool)));
4153        
4154        
4155
4156        
4157        return editGroupstp;
4158    }
4159
4160
4161
4162    private Composite sopCreate(Composite parent) {
4163        String JavaDoc defKey;
4164        String JavaDoc defaultString;
4165        boolean defaultBool = false;
4166        String JavaDoc defaultArray;
4167       
4168        Group editGroupsop = new Group(parent, SWT.NONE);
4169        GridLayout layout = new GridLayout();
4170        editGroupsop.setLayout(layout);
4171    
4172        editGroupsop.setText("Shimple Optimization Pack");
4173        
4174        editGroupsop.setData("id", "sop");
4175        
4176        String JavaDoc descsop = "Shimple optimization pack";
4177        if (descsop.length() > 0) {
4178            Label descLabelsop = new Label(editGroupsop, SWT.WRAP);
4179            descLabelsop.setText(descsop);
4180        }
4181        OptionData [] data;
4182        
4183        
4184        
4185        
4186        defKey = "p"+" "+"sop"+" "+"enabled";
4187        defKey = defKey.trim();
4188
4189        if (isInDefList(defKey)) {
4190            defaultBool = getBoolDef(defKey);
4191        }
4192        else {
4193            
4194            defaultBool = false;
4195            
4196        }
4197
4198        setsopenabled_widget(new BooleanOptionWidget(editGroupsop, SWT.NONE, new OptionData("Enabled", "p", "sop","enabled", "\n", defaultBool)));
4199        
4200        
4201
4202        
4203        return editGroupsop;
4204    }
4205
4206
4207
4208    private Composite sopsop_cpfCreate(Composite parent) {
4209        String JavaDoc defKey;
4210        String JavaDoc defaultString;
4211        boolean defaultBool = false;
4212        String JavaDoc defaultArray;
4213       
4214        Group editGroupsopsop_cpf = new Group(parent, SWT.NONE);
4215        GridLayout layout = new GridLayout();
4216        editGroupsopsop_cpf.setLayout(layout);
4217    
4218        editGroupsopsop_cpf.setText("Shimple Constant Propagator and Folder");
4219        
4220        editGroupsopsop_cpf.setData("id", "sopsop_cpf");
4221        
4222        String JavaDoc descsopsop_cpf = "Shimple constant propagator and folder";
4223        if (descsopsop_cpf.length() > 0) {
4224            Label descLabelsopsop_cpf = new Label(editGroupsopsop_cpf, SWT.WRAP);
4225            descLabelsopsop_cpf.setText(descsopsop_cpf);
4226        }
4227        OptionData [] data;
4228        
4229        
4230        
4231        
4232        defKey = "p"+" "+"sop.cpf"+" "+"enabled";
4233        defKey = defKey.trim();
4234
4235        if (isInDefList(defKey)) {
4236            defaultBool = getBoolDef(defKey);
4237        }
4238        else {
4239            
4240            defaultBool = true;
4241            
4242        }
4243
4244        setsopsop_cpfenabled_widget(new BooleanOptionWidget(editGroupsopsop_cpf, SWT.NONE, new OptionData("Enabled", "p", "sop.cpf","enabled", "\n", defaultBool)));
4245        
4246        
4247        
4248        defKey = "p"+" "+"sop.cpf"+" "+"prune-cfg";
4249        defKey = defKey.trim();
4250
4251        if (isInDefList(defKey)) {
4252            defaultBool = getBoolDef(defKey);
4253        }
4254        else {
4255            
4256            defaultBool = true;
4257            
4258        }
4259
4260        setsopsop_cpfprune_cfg_widget(new BooleanOptionWidget(editGroupsopsop_cpf, SWT.NONE, new OptionData("Prune Control Flow Graph", "p", "sop.cpf","prune-cfg", "\nConditional branching statements that are found \nto branch unconditionally (or fall through) are \nreplaced with unconditional branches (or \nremoved). This transformation exposes more \nopportunities for dead code removal. \n", defaultBool)));
4261        
4262        
4263
4264        
4265        return editGroupsopsop_cpf;
4266    }
4267
4268
4269
4270    private Composite jtpCreate(Composite parent) {
4271        String JavaDoc defKey;
4272        String JavaDoc defaultString;
4273        boolean defaultBool = false;
4274        String JavaDoc defaultArray;
4275       
4276        Group editGroupjtp = new Group(parent, SWT.NONE);
4277        GridLayout layout = new GridLayout();
4278        editGroupjtp.setLayout(layout);
4279    
4280        editGroupjtp.setText("Jimple Transformation Pack");
4281        
4282        editGroupjtp.setData("id", "jtp");
4283        
4284        String JavaDoc descjtp = "Jimple transformation pack: intraprocedural analyses added to Soot";
4285        if (descjtp.length() > 0) {
4286            Label descLabeljtp = new Label(editGroupjtp, SWT.WRAP);
4287            descLabeljtp.setText(descjtp);
4288        }
4289        OptionData [] data;
4290        
4291        
4292        
4293        
4294        defKey = "p"+" "+"jtp"+" "+"enabled";
4295        defKey = defKey.trim();
4296
4297        if (isInDefList(defKey)) {
4298            defaultBool = getBoolDef(defKey);
4299        }
4300        else {
4301            
4302            defaultBool = true;
4303            
4304        }
4305
4306        setjtpenabled_widget(new BooleanOptionWidget(editGroupjtp, SWT.NONE, new OptionData("Enabled", "p", "jtp","enabled", "\n", defaultBool)));
4307        
4308        
4309
4310        
4311        return editGroupjtp;
4312    }
4313
4314
4315
4316    private Composite jopCreate(Composite parent) {
4317        String JavaDoc defKey;
4318        String JavaDoc defaultString;
4319        boolean defaultBool = false;
4320        String JavaDoc defaultArray;
4321       
4322        Group editGroupjop = new Group(parent, SWT.NONE);
4323        GridLayout layout = new GridLayout();
4324        editGroupjop.setLayout(layout);
4325    
4326        editGroupjop.setText("Jimple Optimization Pack");
4327        
4328        editGroupjop.setData("id", "jop");
4329        
4330        String JavaDoc descjop = "Jimple optimization pack (intraprocedural)";
4331        if (descjop.length() > 0) {
4332            Label descLabeljop = new Label(editGroupjop, SWT.WRAP);
4333            descLabeljop.setText(descjop);
4334        }
4335        OptionData [] data;
4336        
4337        
4338        
4339        
4340        defKey = "p"+" "+"jop"+" "+"enabled";
4341        defKey = defKey.trim();
4342
4343        if (isInDefList(defKey)) {
4344            defaultBool = getBoolDef(defKey);
4345        }
4346        else {
4347            
4348            defaultBool = false;
4349            
4350        }
4351
4352        setjopenabled_widget(new BooleanOptionWidget(editGroupjop, SWT.NONE, new OptionData("Enabled", "p", "jop","enabled", "\n", defaultBool)));
4353        
4354        
4355
4356        
4357        return editGroupjop;
4358    }
4359
4360
4361
4362    private Composite jopjop_cseCreate(Composite parent) {
4363        String JavaDoc defKey;
4364        String JavaDoc defaultString;
4365        boolean defaultBool = false;
4366        String JavaDoc defaultArray;
4367       
4368        Group editGroupjopjop_cse = new Group(parent, SWT.NONE);
4369        GridLayout layout = new GridLayout();
4370        editGroupjopjop_cse.setLayout(layout);
4371    
4372        editGroupjopjop_cse.setText("Common Subexpression Eliminator");
4373        
4374        editGroupjopjop_cse.setData("id", "jopjop_cse");
4375        
4376        String JavaDoc descjopjop_cse = "Common subexpression eliminator";
4377        if (descjopjop_cse.length() > 0) {
4378            Label descLabeljopjop_cse = new Label(editGroupjopjop_cse, SWT.WRAP);
4379            descLabeljopjop_cse.setText(descjopjop_cse);
4380        }
4381        OptionData [] data;
4382        
4383        
4384        
4385        
4386        defKey = "p"+" "+"jop.cse"+" "+"enabled";
4387        defKey = defKey.trim();
4388
4389        if (isInDefList(defKey)) {
4390            defaultBool = getBoolDef(defKey);
4391        }
4392        else {
4393            
4394            defaultBool = false;
4395            
4396        }
4397
4398        setjopjop_cseenabled_widget(new BooleanOptionWidget(editGroupjopjop_cse, SWT.NONE, new OptionData("Enabled", "p", "jop.cse","enabled", "\n", defaultBool)));
4399        
4400        
4401        
4402        defKey = "p"+" "+"jop.cse"+" "+"naive-side-effect";
4403        defKey = defKey.trim();
4404
4405        if (isInDefList(defKey)) {
4406            defaultBool = getBoolDef(defKey);
4407        }
4408        else {
4409            
4410            defaultBool = false;
4411            
4412        }
4413
4414        setjopjop_csenaive_side_effect_widget(new BooleanOptionWidget(editGroupjopjop_cse, SWT.NONE, new OptionData("Naive Side Effect Tester", "p", "jop.cse","naive-side-effect", "\nIf Naive Side Effect Tester is true, the Common Subexpression \nEliminator uses the conservative side effect information \nprovided by the NaiveSideEffectTester class, even if \ninterprocedural information about side effects is available. The \nnaive side effect analysis is based solely on the information \navailable locally about a statement. It assumes, for example, \nthat any method call has the potential to write and read all \ninstance and static fields in the program. If Naive Side Effect \nTester is set to false and Soot is in whole program mode, then \nthe Common Subexpression Eliminator uses the side effect \ninformation provided by the PASideEffectTester class. \nPASideEffectTester uses a points-to analysis to determine which \nfields and statics may be written or read by a given statement. \nIf whole program analysis is not performed, naive side effect \ninformation is used regardless of the setting of Naive Side \nEffect Tester. ", defaultBool)));
4415        
4416        
4417
4418        
4419        return editGroupjopjop_cse;
4420    }
4421
4422
4423
4424    private Composite jopjop_bcmCreate(Composite parent) {
4425        String JavaDoc defKey;
4426        String JavaDoc defaultString;
4427        boolean defaultBool = false;
4428        String JavaDoc defaultArray;
4429       
4430        Group editGroupjopjop_bcm = new Group(parent, SWT.NONE);
4431        GridLayout layout = new GridLayout();
4432        editGroupjopjop_bcm.setLayout(layout);
4433    
4434        editGroupjopjop_bcm.setText("Busy Code Motion");
4435        
4436        editGroupjopjop_bcm.setData("id", "jopjop_bcm");
4437        
4438        String JavaDoc descjopjop_bcm = "Busy code motion: unaggressive partial redundancy elimination";
4439        if (descjopjop_bcm.length() > 0) {
4440            Label descLabeljopjop_bcm = new Label(editGroupjopjop_bcm, SWT.WRAP);
4441            descLabeljopjop_bcm.setText(descjopjop_bcm);
4442        }
4443        OptionData [] data;
4444        
4445        
4446        
4447        
4448        defKey = "p"+" "+"jop.bcm"+" "+"enabled";
4449        defKey = defKey.trim();
4450
4451        if (isInDefList(defKey)) {
4452            defaultBool = getBoolDef(defKey);
4453        }
4454        else {
4455            
4456            defaultBool = false;
4457            
4458        }
4459
4460        setjopjop_bcmenabled_widget(new BooleanOptionWidget(editGroupjopjop_bcm, SWT.NONE, new OptionData("Enabled", "p", "jop.bcm","enabled", "\n", defaultBool)));
4461        
4462        
4463        
4464        defKey = "p"+" "+"jop.bcm"+" "+"naive-side-effect";
4465        defKey = defKey.trim();
4466
4467        if (isInDefList(defKey)) {
4468            defaultBool = getBoolDef(defKey);
4469        }
4470        else {
4471            
4472            defaultBool = false;
4473            
4474        }
4475
4476        setjopjop_bcmnaive_side_effect_widget(new BooleanOptionWidget(editGroupjopjop_bcm, SWT.NONE, new OptionData("Naive Side Effect Tester", "p", "jop.bcm","naive-side-effect", "\nIf Naive Side Effect Tester is set to true, Busy Code Motion \nuses the conservative side effect information provided by the \nNaiveSideEffectTester class, even if interprocedural information \nabout side effects is available. The naive side effect analysis \nis based solely on the information available locally about a \nstatement. It assumes, for example, that any method call has the \npotential to write and read all instance and static fields in \nthe program. If Naive Side Effect Tester is set to false and \nSoot is in whole program mode, then Busy Code Motion uses the \nside effect information provided by the PASideEffectTester \nclass. PASideEffectTester uses a points-to analysis to determine \nwhich fields and statics may be written or read by a given \nstatement. If whole program analysis is not performed, naive \nside effect information is used regardless of the setting of \nNaive Side Effect Tester. ", defaultBool)));
4477        
4478        
4479
4480        
4481        return editGroupjopjop_bcm;
4482    }
4483
4484
4485
4486    private Composite jopjop_lcmCreate(Composite parent) {
4487        String JavaDoc defKey;
4488        String JavaDoc defaultString;
4489        boolean defaultBool = false;
4490        String JavaDoc defaultArray;
4491       
4492        Group editGroupjopjop_lcm = new Group(parent, SWT.NONE);
4493        GridLayout layout = new GridLayout();
4494        editGroupjopjop_lcm.setLayout(layout);
4495    
4496        editGroupjopjop_lcm.setText("Lazy Code Motion");
4497        
4498        editGroupjopjop_lcm.setData("id", "jopjop_lcm");
4499        
4500        String JavaDoc descjopjop_lcm = "Lazy code motion: aggressive partial redundancy elimination";
4501        if (descjopjop_lcm.length() > 0) {
4502            Label descLabeljopjop_lcm = new Label(editGroupjopjop_lcm, SWT.WRAP);
4503            descLabeljopjop_lcm.setText(descjopjop_lcm);
4504        }
4505        OptionData [] data;
4506        
4507        
4508        
4509        
4510        defKey = "p"+" "+"jop.lcm"+" "+"enabled";
4511        defKey = defKey.trim();
4512
4513        if (isInDefList(defKey)) {
4514            defaultBool = getBoolDef(defKey);
4515        }
4516        else {
4517            
4518            defaultBool = false;
4519            
4520        }
4521
4522        setjopjop_lcmenabled_widget(new BooleanOptionWidget(editGroupjopjop_lcm, SWT.NONE, new OptionData("Enabled", "p", "jop.lcm","enabled", "\n", defaultBool)));
4523        
4524        
4525        
4526        defKey = "p"+" "+"jop.lcm"+" "+"unroll";
4527        defKey = defKey.trim();
4528
4529        if (isInDefList(defKey)) {
4530            defaultBool = getBoolDef(defKey);
4531        }
4532        else {
4533            
4534            defaultBool = true;
4535            
4536        }
4537
4538        setjopjop_lcmunroll_widget(new BooleanOptionWidget(editGroupjopjop_lcm, SWT.NONE, new OptionData("Unroll", "p", "jop.lcm","unroll", "\nIf true, perform loop inversion before doing the \ntransformation. ", defaultBool)));
4539        
4540        
4541        
4542        defKey = "p"+" "+"jop.lcm"+" "+"naive-side-effect";
4543        defKey = defKey.trim();
4544
4545        if (isInDefList(defKey)) {
4546            defaultBool = getBoolDef(defKey);
4547        }
4548        else {
4549            
4550            defaultBool = false;
4551            
4552        }
4553
4554        setjopjop_lcmnaive_side_effect_widget(new BooleanOptionWidget(editGroupjopjop_lcm, SWT.NONE, new OptionData("Naive Side Effect Tester", "p", "jop.lcm","naive-side-effect", "\nIf Naive Side Effect Tester is set to true, Lazy Code Motion \nuses the conservative side effect information provided by the \nNaiveSideEffectTester class, even if interprocedural information \nabout side effects is available. The naive side effect analysis \nis based solely on the information available locally about a \nstatement. It assumes, for example, that any method call has the \npotential to write and read all instance and static fields in \nthe program. If Naive Side Effect Tester is set to false and \nSoot is in whole program mode, then Lazy Code Motion uses the \nside effect information provided by the PASideEffectTester \nclass. PASideEffectTester uses a points-to analysis to determine \nwhich fields and statics may be written or read by a given \nstatement. If whole program analysis is not performed, naive \nside effect information is used regardless of the setting of \nNaive Side Effect Tester. ", defaultBool)));
4555        
4556        
4557        
4558        data = new OptionData [] {
4559        
4560        new OptionData("Safe",
4561        "safe",
4562        "\nSafe, but only considers moving additions, subtractions and \nmultiplications. ",
4563        
4564        true),
4565        
4566        new OptionData("Medium",
4567        "medium",
4568        "\nUnsafe in multi-threaded programs, as it may reuse the values \nread from field accesses. ",
4569        
4570        false),
4571        
4572        new OptionData("Unsafe",
4573        "unsafe",
4574        "\nMay violate Java's exception semantics, as it may move or \nreorder exception-throwing statements, potentially outside of \ntry-catch blocks. ",
4575        
4576        false),
4577        
4578        };
4579        
4580                                        
4581        setjopjop_lcmsafety_widget(new MultiOptionWidget(editGroupjopjop_lcm, SWT.NONE, data, new OptionData("Safety", "p", "jop.lcm","safety", "\nThis option controls which fields and statements are candidates \nfor code motion. ")));
4582        
4583        defKey = "p"+" "+"jop.lcm"+" "+"safety";
4584        defKey = defKey.trim();
4585        
4586        if (isInDefList(defKey)) {
4587            defaultString = getStringDef(defKey);
4588        
4589            getjopjop_lcmsafety_widget().setDef(defaultString);
4590        }
4591        
4592        
4593
4594        
4595        return editGroupjopjop_lcm;
4596    }
4597
4598
4599
4600    private Composite jopjop_cpCreate(Composite parent) {
4601        String JavaDoc defKey;
4602        String JavaDoc defaultString;
4603        boolean defaultBool = false;
4604        String JavaDoc defaultArray;
4605       
4606        Group editGroupjopjop_cp = new Group(parent, SWT.NONE);
4607        GridLayout layout = new GridLayout();
4608        editGroupjopjop_cp.setLayout(layout);
4609    
4610        editGroupjopjop_cp.setText("Copy Propagator");
4611        
4612        editGroupjopjop_cp.setData("id", "jopjop_cp");
4613        
4614        String JavaDoc descjopjop_cp = "Copy propagator";
4615        if (descjopjop_cp.length() > 0) {
4616            Label descLabeljopjop_cp = new Label(editGroupjopjop_cp, SWT.WRAP);
4617            descLabeljopjop_cp.setText(descjopjop_cp);
4618        }
4619        OptionData [] data;
4620        
4621        
4622        
4623        
4624        defKey = "p"+" "+"jop.cp"+" "+"enabled";
4625        defKey = defKey.trim();
4626
4627        if (isInDefList(defKey)) {
4628            defaultBool = getBoolDef(defKey);
4629        }
4630        else {
4631            
4632            defaultBool = true;
4633            
4634        }
4635
4636        setjopjop_cpenabled_widget(new BooleanOptionWidget(editGroupjopjop_cp, SWT.NONE, new OptionData("Enabled", "p", "jop.cp","enabled", "\n", defaultBool)));
4637        
4638        
4639        
4640        defKey = "p"+" "+"jop.cp"+" "+"only-regular-locals";
4641        defKey = defKey.trim();
4642
4643        if (isInDefList(defKey)) {
4644            defaultBool = getBoolDef(defKey);
4645        }
4646        else {
4647            
4648            defaultBool = false;
4649            
4650        }
4651
4652        setjopjop_cponly_regular_locals_widget(new BooleanOptionWidget(editGroupjopjop_cp, SWT.NONE, new OptionData("Only Regular Locals", "p", "jop.cp","only-regular-locals", "\nOnly propagate copies through ``regular'' locals, that is, \nthose declared in the source bytecode. ", defaultBool)));
4653        
4654        
4655        
4656        defKey = "p"+" "+"jop.cp"+" "+"only-stack-locals";
4657        defKey = defKey.trim();
4658
4659        if (isInDefList(defKey)) {
4660            defaultBool = getBoolDef(defKey);
4661        }
4662        else {
4663            
4664            defaultBool = false;
4665            
4666        }
4667
4668        setjopjop_cponly_stack_locals_widget(new BooleanOptionWidget(editGroupjopjop_cp, SWT.NONE, new OptionData("Only Stack Locals", "p", "jop.cp","only-stack-locals", "\nOnly propagate copies through locals that represent stack \nlocations in the original bytecode. ", defaultBool)));
4669        
4670        
4671
4672        
4673        return editGroupjopjop_cp;
4674    }
4675
4676
4677
4678    private Composite jopjop_cpfCreate(Composite parent) {
4679        String JavaDoc defKey;
4680        String JavaDoc defaultString;
4681        boolean defaultBool = false;
4682        String JavaDoc defaultArray;
4683       
4684        Group editGroupjopjop_cpf = new Group(parent, SWT.NONE);
4685        GridLayout layout = new GridLayout();
4686        editGroupjopjop_cpf.setLayout(layout);
4687    
4688        editGroupjopjop_cpf.setText("Jimple Constant Propagator and Folder");
4689        
4690        editGroupjopjop_cpf.setData("id", "jopjop_cpf");
4691        
4692        String JavaDoc descjopjop_cpf = "Constant propagator and folder";
4693        if (descjopjop_cpf.length() > 0) {
4694            Label descLabeljopjop_cpf = new Label(editGroupjopjop_cpf, SWT.WRAP);
4695            descLabeljopjop_cpf.setText(descjopjop_cpf);
4696        }
4697        OptionData [] data;
4698        
4699        
4700        
4701        
4702        defKey = "p"+" "+"jop.cpf"+" "+"enabled";
4703        defKey = defKey.trim();
4704
4705        if (isInDefList(defKey)) {
4706            defaultBool = getBoolDef(defKey);
4707        }
4708        else {
4709            
4710            defaultBool = true;
4711            
4712        }
4713
4714        setjopjop_cpfenabled_widget(new BooleanOptionWidget(editGroupjopjop_cpf, SWT.NONE, new OptionData("Enabled", "p", "jop.cpf","enabled", "\n", defaultBool)));
4715        
4716        
4717
4718        
4719        return editGroupjopjop_cpf;
4720    }
4721
4722
4723
4724    private Composite jopjop_cbfCreate(Composite parent) {
4725        String JavaDoc defKey;
4726        String JavaDoc defaultString;
4727        boolean defaultBool = false;
4728        String JavaDoc defaultArray;
4729       
4730        Group editGroupjopjop_cbf = new Group(parent, SWT.NONE);
4731        GridLayout layout = new GridLayout();
4732        editGroupjopjop_cbf.setLayout(layout);
4733    
4734        editGroupjopjop_cbf.setText("Conditional Branch Folder");
4735        
4736        editGroupjopjop_cbf.setData("id", "jopjop_cbf");
4737        
4738        String JavaDoc descjopjop_cbf = "Conditional branch folder";
4739        if (descjopjop_cbf.length() > 0) {
4740            Label descLabeljopjop_cbf = new Label(editGroupjopjop_cbf, SWT.WRAP);
4741            descLabeljopjop_cbf.setText(descjopjop_cbf);
4742        }
4743        OptionData [] data;
4744        
4745        
4746        
4747        
4748        defKey = "p"+" "+"jop.cbf"+" "+"enabled";
4749        defKey = defKey.trim();
4750
4751        if (isInDefList(defKey)) {
4752            defaultBool = getBoolDef(defKey);
4753        }
4754        else {
4755            
4756            defaultBool = true;
4757            
4758        }
4759
4760        setjopjop_cbfenabled_widget(new BooleanOptionWidget(editGroupjopjop_cbf, SWT.NONE, new OptionData("Enabled", "p", "jop.cbf","enabled", "\n", defaultBool)));
4761        
4762        
4763
4764        
4765        return editGroupjopjop_cbf;
4766    }
4767
4768
4769
4770    private Composite jopjop_daeCreate(Composite parent) {
4771        String JavaDoc defKey;
4772        String JavaDoc defaultString;
4773        boolean defaultBool = false;
4774        String JavaDoc defaultArray;
4775       
4776        Group editGroupjopjop_dae = new Group(parent, SWT.NONE);
4777        GridLayout layout = new GridLayout();
4778        editGroupjopjop_dae.setLayout(layout);
4779    
4780        editGroupjopjop_dae.setText("Dead Assignment Eliminator");
4781        
4782        editGroupjopjop_dae.setData("id", "jopjop_dae");
4783        
4784        String JavaDoc descjopjop_dae = "Dead assignment eliminator";
4785        if (descjopjop_dae.length() > 0) {
4786            Label descLabeljopjop_dae = new Label(editGroupjopjop_dae, SWT.WRAP);
4787            descLabeljopjop_dae.setText(descjopjop_dae);
4788        }
4789        OptionData [] data;
4790        
4791        
4792        
4793        
4794        defKey = "p"+" "+"jop.dae"+" "+"enabled";
4795        defKey = defKey.trim();
4796
4797        if (isInDefList(defKey)) {
4798            defaultBool = getBoolDef(defKey);
4799        }
4800        else {
4801            
4802            defaultBool = true;
4803            
4804        }
4805
4806        setjopjop_daeenabled_widget(new BooleanOptionWidget(editGroupjopjop_dae, SWT.NONE, new OptionData("Enabled", "p", "jop.dae","enabled", "\n", defaultBool)));
4807        
4808        
4809        
4810        defKey = "p"+" "+"jop.dae"+" "+"only-tag";
4811        defKey = defKey.trim();
4812
4813        if (isInDefList(defKey)) {
4814            defaultBool = getBoolDef(defKey);
4815        }
4816        else {
4817            
4818            defaultBool = false;
4819            
4820        }
4821
4822        setjopjop_daeonly_tag_widget(new BooleanOptionWidget(editGroupjopjop_dae, SWT.NONE, new OptionData("Only Tag Dead Code", "p", "jop.dae","only-tag", "\nOnly tag dead assignment statements instead of eliminaing them. \n", defaultBool)));
4823        
4824        
4825        
4826        defKey = "p"+" "+"jop.dae"+" "+"only-stack-locals";
4827        defKey = defKey.trim();
4828
4829        if (isInDefList(defKey)) {
4830            defaultBool = getBoolDef(defKey);
4831        }
4832        else {
4833            
4834            defaultBool = false;
4835            
4836        }
4837
4838        setjopjop_daeonly_stack_locals_widget(new BooleanOptionWidget(editGroupjopjop_dae, SWT.NONE, new OptionData("Only Stack Locals", "p", "jop.dae","only-stack-locals", "\nOnly eliminate dead assignments to locals that represent stack \nlocations in the original bytecode. ", defaultBool)));
4839        
4840        
4841
4842        
4843        return editGroupjopjop_dae;
4844    }
4845
4846
4847
4848    private Composite jopjop_uce1Create(Composite parent) {
4849        String JavaDoc defKey;
4850        String JavaDoc defaultString;
4851        boolean defaultBool = false;
4852        String JavaDoc defaultArray;
4853       
4854        Group editGroupjopjop_uce1 = new Group(parent, SWT.NONE);
4855        GridLayout layout = new GridLayout();
4856        editGroupjopjop_uce1.setLayout(layout);
4857    
4858        editGroupjopjop_uce1.setText("Unreachable Code Eliminator 1");
4859        
4860        editGroupjopjop_uce1.setData("id", "jopjop_uce1");
4861        
4862        String JavaDoc descjopjop_uce1 = "Unreachable code eliminator, pass 1";
4863        if (descjopjop_uce1.length() > 0) {
4864            Label descLabeljopjop_uce1 = new Label(editGroupjopjop_uce1, SWT.WRAP);
4865            descLabeljopjop_uce1.setText(descjopjop_uce1);
4866        }
4867        OptionData [] data;
4868        
4869        
4870        
4871        
4872        defKey = "p"+" "+"jop.uce1"+" "+"enabled";
4873        defKey = defKey.trim();
4874
4875        if (isInDefList(defKey)) {
4876            defaultBool = getBoolDef(defKey);
4877        }
4878        else {
4879            
4880            defaultBool = true;
4881            
4882        }
4883
4884        setjopjop_uce1enabled_widget(new BooleanOptionWidget(editGroupjopjop_uce1, SWT.NONE, new OptionData("Enabled", "p", "jop.uce1","enabled", "\n", defaultBool)));
4885        
4886        
4887        
4888        defKey = "p"+" "+"jop.uce1"+" "+"remove-unreachable-traps";
4889        defKey = defKey.trim();
4890
4891        if (isInDefList(defKey)) {
4892            defaultBool = getBoolDef(defKey);
4893        }
4894        else {
4895            
4896            defaultBool = false;
4897            
4898        }
4899
4900        setjopjop_uce1remove_unreachable_traps_widget(new BooleanOptionWidget(editGroupjopjop_uce1, SWT.NONE, new OptionData("Remove unreachable traps", "p", "jop.uce1","remove-unreachable-traps", "\nRemove exception table entries when none of the protected \ninstructions can throw the exception being caught. ", defaultBool)));
4901        
4902        
4903
4904        
4905        return editGroupjopjop_uce1;
4906    }
4907
4908
4909
4910    private Composite jopjop_ubf1Create(Composite parent) {
4911        String JavaDoc defKey;
4912        String JavaDoc defaultString;
4913        boolean defaultBool = false;
4914        String JavaDoc defaultArray;
4915       
4916        Group editGroupjopjop_ubf1 = new Group(parent, SWT.NONE);
4917        GridLayout layout = new GridLayout();
4918        editGroupjopjop_ubf1.setLayout(layout);
4919    
4920        editGroupjopjop_ubf1.setText("Unconditional Branch Folder 1");
4921        
4922        editGroupjopjop_ubf1.setData("id", "jopjop_ubf1");
4923        
4924        String JavaDoc descjopjop_ubf1 = "Unconditional branch folder, pass 1";
4925        if (descjopjop_ubf1.length() > 0) {
4926            Label descLabeljopjop_ubf1 = new Label(editGroupjopjop_ubf1, SWT.WRAP);
4927            descLabeljopjop_ubf1.setText(descjopjop_ubf1);
4928        }
4929        OptionData [] data;
4930        
4931        
4932        
4933        
4934        defKey = "p"+" "+"jop.ubf1"+" "+"enabled";
4935        defKey = defKey.trim();
4936
4937        if (isInDefList(defKey)) {
4938            defaultBool = getBoolDef(defKey);
4939        }
4940        else {
4941            
4942            defaultBool = true;
4943            
4944        }
4945
4946        setjopjop_ubf1enabled_widget(new BooleanOptionWidget(editGroupjopjop_ubf1, SWT.NONE, new OptionData("Enabled", "p", "jop.ubf1","enabled", "\n", defaultBool)));
4947        
4948        
4949
4950        
4951        return editGroupjopjop_ubf1;
4952    }
4953
4954
4955
4956    private Composite jopjop_uce2Create(Composite parent) {
4957        String JavaDoc defKey;
4958        String JavaDoc defaultString;
4959        boolean defaultBool = false;
4960        String JavaDoc defaultArray;
4961       
4962        Group editGroupjopjop_uce2 = new Group(parent, SWT.NONE);
4963        GridLayout layout = new GridLayout();
4964        editGroupjopjop_uce2.setLayout(layout);
4965    
4966        editGroupjopjop_uce2.setText("Unreachable Code Eliminator 2");
4967        
4968        editGroupjopjop_uce2.setData("id", "jopjop_uce2");
4969        
4970        String JavaDoc descjopjop_uce2 = "Unreachable code eliminator, pass 2";
4971        if (descjopjop_uce2.length() > 0) {
4972            Label descLabeljopjop_uce2 = new Label(editGroupjopjop_uce2, SWT.WRAP);
4973            descLabeljopjop_uce2.setText(descjopjop_uce2);
4974        }
4975        OptionData [] data;
4976        
4977        
4978        
4979        
4980        defKey = "p"+" "+"jop.uce2"+" "+"enabled";
4981        defKey = defKey.trim();
4982
4983        if (isInDefList(defKey)) {
4984            defaultBool = getBoolDef(defKey);
4985        }
4986        else {
4987            
4988            defaultBool = true;
4989            
4990        }
4991
4992        setjopjop_uce2enabled_widget(new BooleanOptionWidget(editGroupjopjop_uce2, SWT.NONE, new OptionData("Enabled", "p", "jop.uce2","enabled", "\n", defaultBool)));
4993        
4994        
4995        
4996        defKey = "p"+" "+"jop.uce2"+" "+"remove-unreachable-traps";
4997        defKey = defKey.trim();
4998
4999        if (isInDefList(defKey)) {
5000            defaultBool = getBoolDef(defKey);
5001        }
5002        else {
5003            
5004            defaultBool = false;
5005            
5006        }
5007
5008        setjopjop_uce2remove_unreachable_traps_widget(new BooleanOptionWidget(editGroupjopjop_uce2, SWT.NONE, new OptionData("Remove unreachable traps", "p", "jop.uce2","remove-unreachable-traps", "\nRemove exception table entries when none of the protected \ninstructions can throw the exception being caught. ", defaultBool)));
5009        
5010        
5011
5012        
5013        return editGroupjopjop_uce2;
5014    }
5015
5016
5017
5018    private Composite jopjop_ubf2Create(Composite parent) {
5019        String JavaDoc defKey;
5020        String JavaDoc defaultString;
5021        boolean defaultBool = false;
5022        String JavaDoc defaultArray;
5023       
5024        Group editGroupjopjop_ubf2 = new Group(parent, SWT.NONE);
5025        GridLayout layout = new GridLayout();
5026        editGroupjopjop_ubf2.setLayout(layout);
5027    
5028        editGroupjopjop_ubf2.setText("Unconditional Branch Folder 2");
5029        
5030        editGroupjopjop_ubf2.setData("id", "jopjop_ubf2");
5031        
5032        String JavaDoc descjopjop_ubf2 = "Unconditional branch folder, pass 2";
5033        if (descjopjop_ubf2.length() > 0) {
5034            Label descLabeljopjop_ubf2 = new Label(editGroupjopjop_ubf2, SWT.WRAP);
5035            descLabeljopjop_ubf2.setText(descjopjop_ubf2);
5036        }
5037        OptionData [] data;
5038        
5039        
5040        
5041        
5042        defKey = "p"+" "+"jop.ubf2"+" "+"enabled";
5043        defKey = defKey.trim();
5044
5045        if (isInDefList(defKey)) {
5046            defaultBool = getBoolDef(defKey);
5047        }
5048        else {
5049            
5050            defaultBool = true;
5051            
5052        }
5053
5054        setjopjop_ubf2enabled_widget(new BooleanOptionWidget(editGroupjopjop_ubf2, SWT.NONE, new OptionData("Enabled", "p", "jop.ubf2","enabled", "\n", defaultBool)));
5055        
5056        
5057
5058        
5059        return editGroupjopjop_ubf2;
5060    }
5061
5062
5063
5064    private Composite jopjop_uleCreate(Composite parent) {
5065        String JavaDoc defKey;
5066        String JavaDoc defaultString;
5067        boolean defaultBool = false;
5068        String JavaDoc defaultArray;
5069       
5070        Group editGroupjopjop_ule = new Group(parent, SWT.NONE);
5071        GridLayout layout = new GridLayout();
5072        editGroupjopjop_ule.setLayout(layout);
5073    
5074        editGroupjopjop_ule.setText("Unused Local Eliminator");
5075        
5076        editGroupjopjop_ule.setData("id", "jopjop_ule");
5077        
5078        String JavaDoc descjopjop_ule = "Unused local eliminator";
5079        if (descjopjop_ule.length() > 0) {
5080            Label descLabeljopjop_ule = new Label(editGroupjopjop_ule, SWT.WRAP);
5081            descLabeljopjop_ule.setText(descjopjop_ule);
5082        }
5083        OptionData [] data;
5084        
5085        
5086        
5087        
5088        defKey = "p"+" "+"jop.ule"+" "+"enabled";
5089        defKey = defKey.trim();
5090
5091        if (isInDefList(defKey)) {
5092            defaultBool = getBoolDef(defKey);
5093        }
5094        else {
5095            
5096            defaultBool = true;
5097            
5098        }
5099
5100        setjopjop_uleenabled_widget(new BooleanOptionWidget(editGroupjopjop_ule, SWT.NONE, new OptionData("Enabled", "p", "jop.ule","enabled", "\n", defaultBool)));
5101        
5102        
5103
5104        
5105        return editGroupjopjop_ule;
5106    }
5107
5108
5109
5110    private Composite japCreate(Composite parent) {
5111        String JavaDoc defKey;
5112        String JavaDoc defaultString;
5113        boolean defaultBool = false;
5114        String JavaDoc defaultArray;
5115       
5116        Group editGroupjap = new Group(parent, SWT.NONE);
5117        GridLayout layout = new GridLayout();
5118        editGroupjap.setLayout(layout);
5119    
5120        editGroupjap.setText("Jimple Annotation Pack");
5121        
5122        editGroupjap.setData("id", "jap");
5123        
5124        String JavaDoc descjap = "Jimple annotation pack: adds intraprocedural tags";
5125        if (descjap.length() > 0) {
5126            Label descLabeljap = new Label(editGroupjap, SWT.WRAP);
5127            descLabeljap.setText(descjap);
5128        }
5129        OptionData [] data;
5130        
5131        
5132        
5133        
5134        defKey = "p"+" "+"jap"+" "+"enabled";
5135        defKey = defKey.trim();
5136
5137        if (isInDefList(defKey)) {
5138            defaultBool = getBoolDef(defKey);
5139        }
5140        else {
5141            
5142            defaultBool = true;
5143            
5144        }
5145
5146        setjapenabled_widget(new BooleanOptionWidget(editGroupjap, SWT.NONE, new OptionData("Enabled", "p", "jap","enabled", "\n", defaultBool)));
5147        
5148        
5149
5150        
5151        return editGroupjap;
5152    }
5153
5154
5155
5156    private Composite japjap_npcCreate(Composite parent) {
5157        String JavaDoc defKey;
5158        String JavaDoc defaultString;
5159        boolean defaultBool = false;
5160        String JavaDoc defaultArray;
5161       
5162        Group editGroupjapjap_npc = new Group(parent, SWT.NONE);
5163        GridLayout layout = new GridLayout();
5164        editGroupjapjap_npc.setLayout(layout);
5165    
5166        editGroupjapjap_npc.setText("Null Pointer Checker");
5167        
5168        editGroupjapjap_npc.setData("id", "japjap_npc");
5169        
5170        String JavaDoc descjapjap_npc = "Null pointer checker";
5171        if (descjapjap_npc.length() > 0) {
5172            Label descLabeljapjap_npc = new Label(editGroupjapjap_npc, SWT.WRAP);
5173            descLabeljapjap_npc.setText(descjapjap_npc);
5174        }
5175        OptionData [] data;
5176        
5177        
5178        
5179        
5180        defKey = "p"+" "+"jap.npc"+" "+"enabled";
5181        defKey = defKey.trim();
5182
5183        if (isInDefList(defKey)) {
5184            defaultBool = getBoolDef(defKey);
5185        }
5186        else {
5187            
5188            defaultBool = false;
5189            
5190        }
5191
5192        setjapjap_npcenabled_widget(new BooleanOptionWidget(editGroupjapjap_npc, SWT.NONE, new OptionData("Enabled", "p", "jap.npc","enabled", "\n", defaultBool)));
5193        
5194        
5195        
5196        defKey = "p"+" "+"jap.npc"+" "+"only-array-ref";
5197        defKey = defKey.trim();
5198
5199        if (isInDefList(defKey)) {
5200            defaultBool = getBoolDef(defKey);
5201        }
5202        else {
5203            
5204            defaultBool = false;
5205            
5206        }
5207
5208        setjapjap_npconly_array_ref_widget(new BooleanOptionWidget(editGroupjapjap_npc, SWT.NONE, new OptionData("Only Array Ref", "p", "jap.npc","only-array-ref", "\nAnnotate only array-referencing instructions, instead of all \ninstructions that need null pointer checks. ", defaultBool)));
5209        
5210        
5211        
5212        defKey = "p"+" "+"jap.npc"+" "+"profiling";
5213        defKey = defKey.trim();
5214
5215        if (isInDefList(defKey)) {
5216            defaultBool = getBoolDef(defKey);
5217        }
5218        else {
5219            
5220            defaultBool = false;
5221            
5222        }
5223
5224        setjapjap_npcprofiling_widget(new BooleanOptionWidget(editGroupjapjap_npc, SWT.NONE, new OptionData("Profiling", "p", "jap.npc","profiling", "\nInsert profiling instructions that at runtime count the number \nof eliminated safe null pointer checks. The inserted profiling \ncode assumes the existence of a MultiCounter class implementing \nthe methods invoked. For details, see the NullPointerChecker \nsource code.", defaultBool)));
5225        
5226        
5227
5228        
5229        return editGroupjapjap_npc;
5230    }
5231
5232
5233
5234    private Composite japjap_npcolorerCreate(Composite parent) {
5235        String JavaDoc defKey;
5236        String JavaDoc defaultString;
5237        boolean defaultBool = false;
5238        String JavaDoc defaultArray;
5239       
5240        Group editGroupjapjap_npcolorer = new Group(parent, SWT.NONE);
5241        GridLayout layout = new GridLayout();
5242        editGroupjapjap_npcolorer.setLayout(layout);
5243    
5244        editGroupjapjap_npcolorer.setText("Null Pointer Colourer");
5245        
5246        editGroupjapjap_npcolorer.setData("id", "japjap_npcolorer");
5247        
5248        String JavaDoc descjapjap_npcolorer = "Null pointer colourer: tags references for eclipse";
5249        if (descjapjap_npcolorer.length() > 0) {
5250            Label descLabeljapjap_npcolorer = new Label(editGroupjapjap_npcolorer, SWT.WRAP);
5251            descLabeljapjap_npcolorer.setText(descjapjap_npcolorer);
5252        }
5253        OptionData [] data;
5254        
5255        
5256        
5257        
5258        defKey = "p"+" "+"jap.npcolorer"+" "+"enabled";
5259        defKey = defKey.trim();
5260
5261        if (isInDefList(defKey)) {
5262            defaultBool = getBoolDef(defKey);
5263        }
5264        else {
5265            
5266            defaultBool = false;
5267            
5268        }
5269
5270        setjapjap_npcolorerenabled_widget(new BooleanOptionWidget(editGroupjapjap_npcolorer, SWT.NONE, new OptionData("Enabled", "p", "jap.npcolorer","enabled", "\n", defaultBool)));
5271        
5272        
5273
5274        
5275        return editGroupjapjap_npcolorer;
5276    }
5277
5278
5279
5280    private Composite japjap_abcCreate(Composite parent) {
5281        String JavaDoc defKey;
5282        String JavaDoc defaultString;
5283        boolean defaultBool = false;
5284        String JavaDoc defaultArray;
5285       
5286        Group editGroupjapjap_abc = new Group(parent, SWT.NONE);
5287        GridLayout layout = new GridLayout();
5288        editGroupjapjap_abc.setLayout(layout);
5289    
5290        editGroupjapjap_abc.setText("Array Bound Checker");
5291        
5292        editGroupjapjap_abc.setData("id", "japjap_abc");
5293        
5294        String JavaDoc descjapjap_abc = "Array bound checker";
5295        if (descjapjap_abc.length() > 0) {
5296            Label descLabeljapjap_abc = new Label(editGroupjapjap_abc, SWT.WRAP);
5297            descLabeljapjap_abc.setText(descjapjap_abc);
5298        }
5299        OptionData [] data;
5300        
5301        
5302        
5303        
5304        defKey = "p"+" "+"jap.abc"+" "+"enabled";
5305        defKey = defKey.trim();
5306
5307        if (isInDefList(defKey)) {
5308            defaultBool = getBoolDef(defKey);
5309        }
5310        else {
5311            
5312            defaultBool = false;
5313            
5314        }
5315
5316        setjapjap_abcenabled_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("Enabled", "p", "jap.abc","enabled", "\n", defaultBool)));
5317        
5318        
5319        
5320        defKey = "p"+" "+"jap.abc"+" "+"with-all";
5321        defKey = defKey.trim();
5322
5323        if (isInDefList(defKey)) {
5324            defaultBool = getBoolDef(defKey);
5325        }
5326        else {
5327            
5328            defaultBool = false;
5329            
5330        }
5331
5332        setjapjap_abcwith_all_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("With All", "p", "jap.abc","with-all", "\nSetting the With All option to true is equivalent to setting \neach of With CSE, With Array Ref, With Field Ref, With Class \nField, and With Rectangular Array to true.", defaultBool)));
5333        
5334        
5335        
5336        defKey = "p"+" "+"jap.abc"+" "+"with-cse";
5337        defKey = defKey.trim();
5338
5339        if (isInDefList(defKey)) {
5340            defaultBool = getBoolDef(defKey);
5341        }
5342        else {
5343            
5344            defaultBool = false;
5345            
5346        }
5347
5348        setjapjap_abcwith_cse_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("With Common Sub-expressions", "p", "jap.abc","with-cse", "\nThe analysis will consider common subexpressions. For example, \nconsider the situation where r1 is assigned a*b; later, r2 is \nassigned a*b, where neither a nor b have changed between the two \nstatements. The analysis can conclude that r2 has the same value \nas r1. Experiments show that this option can improve the result \nslightly.", defaultBool)));
5349        
5350        
5351        
5352        defKey = "p"+" "+"jap.abc"+" "+"with-arrayref";
5353        defKey = defKey.trim();
5354
5355        if (isInDefList(defKey)) {
5356            defaultBool = getBoolDef(defKey);
5357        }
5358        else {
5359            
5360            defaultBool = false;
5361            
5362        }
5363
5364        setjapjap_abcwith_arrayref_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("With Array References", "p", "jap.abc","with-arrayref", "\nWith this option enabled, array references can be considered as \ncommon subexpressions; however, we are more conservative when \nwriting into an array, because array objects may be aliased. We \nalso assume that the application is single-threaded or that the \narray references occur in a synchronized block. That is, we \nassume that an array element may not be changed by other threads \nbetween two array references.", defaultBool)));
5365        
5366        
5367        
5368        defKey = "p"+" "+"jap.abc"+" "+"with-fieldref";
5369        defKey = defKey.trim();
5370
5371        if (isInDefList(defKey)) {
5372            defaultBool = getBoolDef(defKey);
5373        }
5374        else {
5375            
5376            defaultBool = false;
5377            
5378        }
5379
5380        setjapjap_abcwith_fieldref_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("With Field References", "p", "jap.abc","with-fieldref", "\nThe analysis treats field references (static and instance) as \ncommon subexpressions; however, we are more conservative when \nwriting to a field, because the base of the field reference may \nbe aliased. We also assume that the application is \nsingle-threaded or that the field references occur in a \nsynchronized block. That is, we assume that a field may not be \nchanged by other threads between two field references.", defaultBool)));
5381        
5382        
5383        
5384        defKey = "p"+" "+"jap.abc"+" "+"with-classfield";
5385        defKey = defKey.trim();
5386
5387        if (isInDefList(defKey)) {
5388            defaultBool = getBoolDef(defKey);
5389        }
5390        else {
5391            
5392            defaultBool = false;
5393            
5394        }
5395
5396        setjapjap_abcwith_classfield_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("With Class Field", "p", "jap.abc","with-classfield", "\nThis option makes the analysis work on the class level. The \nalgorithm analyzes final or private class fields first. It can \nrecognize the fields that hold array objects of constant length. \nIn an application using lots of array fields, this option can \nimprove the analysis results dramatically.", defaultBool)));
5397        
5398        
5399        
5400        defKey = "p"+" "+"jap.abc"+" "+"with-rectarray";
5401        defKey = defKey.trim();
5402
5403        if (isInDefList(defKey)) {
5404            defaultBool = getBoolDef(defKey);
5405        }
5406        else {
5407            
5408            defaultBool = false;
5409            
5410        }
5411
5412        setjapjap_abcwith_rectarray_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("With Rectangular Array", "p", "jap.abc","with-rectarray", "\nThis option is used together with wjap.ra to make Soot run the \nwhole-program analysis for rectangular array objects. This \nanalysis is based on the call graph, and it usually takes a long \ntime. If the application uses rectangular arrays, these options \ncan improve the analysis result. ", defaultBool)));
5413        
5414        
5415        
5416        defKey = "p"+" "+"jap.abc"+" "+"profiling";
5417        defKey = defKey.trim();
5418
5419        if (isInDefList(defKey)) {
5420            defaultBool = getBoolDef(defKey);
5421        }
5422        else {
5423            
5424            defaultBool = false;
5425            
5426        }
5427
5428        setjapjap_abcprofiling_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("Profiling", "p", "jap.abc","profiling", "\nProfile the results of array bounds check analysis. The \ninserted profiling code assumes the existence of a MultiCounter \nclass implementing the methods invoked. For details, see the \nArrayBoundsChecker source code.", defaultBool)));
5429        
5430        
5431        
5432        defKey = "p"+" "+"jap.abc"+" "+"add-color-tags";
5433        defKey = defKey.trim();
5434
5435        if (isInDefList(defKey)) {
5436            defaultBool = getBoolDef(defKey);
5437        }
5438        else {
5439            
5440            defaultBool = false;
5441            
5442        }
5443
5444        setjapjap_abcadd_color_tags_widget(new BooleanOptionWidget(editGroupjapjap_abc, SWT.NONE, new OptionData("Add Color Tags", "p", "jap.abc","add-color-tags", "\nAdd color tags to the results of the array bounds check \nanalysis.", defaultBool)));
5445        
5446        
5447
5448        
5449        return editGroupjapjap_abc;
5450    }
5451
5452
5453
5454    private Composite japjap_profilingCreate(Composite parent) {
5455        String JavaDoc defKey;
5456        String JavaDoc defaultString;
5457        boolean defaultBool = false;
5458        String JavaDoc defaultArray;
5459       
5460        Group editGroupjapjap_profiling = new Group(parent, SWT.NONE);
5461        GridLayout layout = new GridLayout();
5462        editGroupjapjap_profiling.setLayout(layout);
5463    
5464        editGroupjapjap_profiling.setText("Profiling Generator");
5465        
5466        editGroupjapjap_profiling.setData("id", "japjap_profiling");
5467        
5468        String JavaDoc descjapjap_profiling = "Instruments null pointer and array checks";
5469        if (descjapjap_profiling.length() > 0) {
5470            Label descLabeljapjap_profiling = new Label(editGroupjapjap_profiling, SWT.WRAP);
5471            descLabeljapjap_profiling.setText(descjapjap_profiling);
5472        }
5473        OptionData [] data;
5474        
5475        
5476        
5477        
5478        defKey = "p"+" "+"jap.profiling"+" "+"enabled";
5479        defKey = defKey.trim();
5480
5481        if (isInDefList(defKey)) {
5482            defaultBool = getBoolDef(defKey);
5483        }
5484        else {
5485            
5486            defaultBool = false;
5487            
5488        }
5489
5490        setjapjap_profilingenabled_widget(new BooleanOptionWidget(editGroupjapjap_profiling, SWT.NONE, new OptionData("Enabled", "p", "jap.profiling","enabled", "\n", defaultBool)));
5491        
5492        
5493        
5494        defKey = "p"+" "+"jap.profiling"+" "+"notmainentry";
5495        defKey = defKey.trim();
5496
5497        if (isInDefList(defKey)) {
5498            defaultBool = getBoolDef(defKey);
5499        }
5500        else {
5501            
5502            defaultBool = false;
5503            
5504        }
5505
5506        setjapjap_profilingnotmainentry_widget(new BooleanOptionWidget(editGroupjapjap_profiling, SWT.NONE, new OptionData("Not Main Entry", "p", "jap.profiling","notmainentry", "\nInsert the calls to the MultiCounter at the beginning and end \nof methods with the signature long \nrunBenchmark(java.lang.String[]) instead of the signature void \nmain(java.lang.String[]).", defaultBool)));
5507        
5508        
5509
5510        
5511        return editGroupjapjap_profiling;
5512    }
5513
5514
5515
5516    private Composite japjap_seaCreate(Composite parent) {
5517        String JavaDoc defKey;
5518        String JavaDoc defaultString;
5519        boolean defaultBool = false;
5520        String JavaDoc defaultArray;
5521       
5522        Group editGroupjapjap_sea = new Group(parent, SWT.NONE);
5523        GridLayout layout = new GridLayout();
5524        editGroupjapjap_sea.setLayout(layout);
5525    
5526        editGroupjapjap_sea.setText("Side Effect tagger");
5527        
5528        editGroupjapjap_sea.setData("id", "japjap_sea");
5529        
5530        String JavaDoc descjapjap_sea = "Side effect tagger";
5531        if (descjapjap_sea.length() > 0) {
5532            Label descLabeljapjap_sea = new Label(editGroupjapjap_sea, SWT.WRAP);
5533            descLabeljapjap_sea.setText(descjapjap_sea);
5534        }
5535        OptionData [] data;
5536        
5537        
5538        
5539        
5540        defKey = "p"+" "+"jap.sea"+" "+"enabled";
5541        defKey = defKey.trim();
5542
5543        if (isInDefList(defKey)) {
5544            defaultBool = getBoolDef(defKey);
5545        }
5546        else {
5547            
5548            defaultBool = false;
5549            
5550        }
5551
5552        setjapjap_seaenabled_widget(new BooleanOptionWidget(editGroupjapjap_sea, SWT.NONE, new OptionData("Enabled", "p", "jap.sea","enabled", "\n", defaultBool)));
5553        
5554        
5555        
5556        defKey = "p"+" "+"jap.sea"+" "+"naive";
5557        defKey = defKey.trim();
5558
5559        if (isInDefList(defKey)) {
5560            defaultBool = getBoolDef(defKey);
5561        }
5562        else {
5563            
5564            defaultBool = false;
5565            
5566        }
5567
5568        setjapjap_seanaive_widget(new BooleanOptionWidget(editGroupjapjap_sea, SWT.NONE, new OptionData("Build naive dependence graph", "p", "jap.sea","naive", "\nWhen set to true, the dependence graph is built with a node for \neach statement, without merging the nodes for equivalent \nstatements. This makes it possible to measure the effect of \nmerging nodes for equivalent statements on the size of the \ndependence graph.", defaultBool)));
5569        
5570        
5571
5572        
5573        return editGroupjapjap_sea;
5574    }
5575
5576
5577
5578    private Composite japjap_fieldrwCreate(Composite parent) {
5579        String JavaDoc defKey;
5580        String JavaDoc defaultString;
5581        boolean defaultBool = false;
5582        String JavaDoc defaultArray;
5583       
5584        Group editGroupjapjap_fieldrw = new Group(parent, SWT.NONE);
5585        GridLayout layout = new GridLayout();
5586        editGroupjapjap_fieldrw.setLayout(layout);
5587    
5588        editGroupjapjap_fieldrw.setText("Field Read/Write Tagger");
5589        
5590        editGroupjapjap_fieldrw.setData("id", "japjap_fieldrw");
5591        
5592        String JavaDoc descjapjap_fieldrw = "Field read/write tagger";
5593        if (descjapjap_fieldrw.length() > 0) {
5594            Label descLabeljapjap_fieldrw = new Label(editGroupjapjap_fieldrw, SWT.WRAP);
5595            descLabeljapjap_fieldrw.setText(descjapjap_fieldrw);
5596        }
5597        OptionData [] data;
5598        
5599        
5600        
5601        
5602        defKey = "p"+" "+"jap.fieldrw"+" "+"enabled";
5603        defKey = defKey.trim();
5604
5605        if (isInDefList(defKey)) {
5606            defaultBool = getBoolDef(defKey);
5607        }
5608        else {
5609            
5610            defaultBool = false;
5611            
5612        }
5613
5614        setjapjap_fieldrwenabled_widget(new BooleanOptionWidget(editGroupjapjap_fieldrw, SWT.NONE, new OptionData("Enabled", "p", "jap.fieldrw","enabled", "\n", defaultBool)));
5615        
5616        
5617        
5618        defKey = "p"+" "+"jap.fieldrw"+" "+"threshold";
5619        defKey = defKey.trim();
5620        
5621        if (isInDefList(defKey)) {
5622            defaultString = getStringDef(defKey);
5623        }
5624        else {
5625            
5626            defaultString = "100";
5627            
5628        }
5629
5630        setjapjap_fieldrwthreshold_widget(new StringOptionWidget(editGroupjapjap_fieldrw, SWT.NONE, new OptionData("Maximum number of fields", "p", "jap.fieldrw","threshold", "\nIf a statement reads/writes more than this number of fields, no \ntag will be produced for it, in order to keep the size of the \ntags reasonable. ", defaultString)));
5631        
5632
5633        
5634        return editGroupjapjap_fieldrw;
5635    }
5636
5637
5638
5639    private Composite japjap_cgtaggerCreate(Composite parent) {
5640        String JavaDoc defKey;
5641        String JavaDoc defaultString;
5642        boolean defaultBool = false;
5643        String JavaDoc defaultArray;
5644       
5645        Group editGroupjapjap_cgtagger = new Group(parent, SWT.NONE);
5646        GridLayout layout = new GridLayout();
5647        editGroupjapjap_cgtagger.setLayout(layout);
5648    
5649        editGroupjapjap_cgtagger.setText("Call Graph Tagger");
5650        
5651        editGroupjapjap_cgtagger.setData("id", "japjap_cgtagger");
5652        
5653        String JavaDoc descjapjap_cgtagger = "Call graph tagger";
5654        if (descjapjap_cgtagger.length() > 0) {
5655            Label descLabeljapjap_cgtagger = new Label(editGroupjapjap_cgtagger, SWT.WRAP);
5656            descLabeljapjap_cgtagger.setText(descjapjap_cgtagger);
5657        }
5658        OptionData [] data;
5659        
5660        
5661        
5662        
5663        defKey = "p"+" "+"jap.cgtagger"+" "+"enabled";
5664        defKey = defKey.trim();
5665
5666        if (isInDefList(defKey)) {
5667            defaultBool = getBoolDef(defKey);
5668        }
5669        else {
5670            
5671            defaultBool = false;
5672            
5673        }
5674
5675        setjapjap_cgtaggerenabled_widget(new BooleanOptionWidget(editGroupjapjap_cgtagger, SWT.NONE, new OptionData("Enabled", "p", "jap.cgtagger","enabled", "\n", defaultBool)));
5676        
5677        
5678
5679        
5680        return editGroupjapjap_cgtagger;
5681    }
5682
5683
5684
5685    private Composite japjap_parityCreate(Composite parent) {
5686        String JavaDoc defKey;
5687        String JavaDoc defaultString;
5688        boolean defaultBool = false;
5689        String JavaDoc defaultArray;
5690       
5691        Group editGroupjapjap_parity = new Group(parent, SWT.NONE);
5692        GridLayout layout = new GridLayout();
5693        editGroupjapjap_parity.setLayout(layout);
5694    
5695        editGroupjapjap_parity.setText("Parity Tagger");
5696        
5697        editGroupjapjap_parity.setData("id", "japjap_parity");
5698        
5699        String JavaDoc descjapjap_parity = "Parity tagger";
5700        if (descjapjap_parity.length() > 0) {
5701            Label descLabeljapjap_parity = new Label(editGroupjapjap_parity, SWT.WRAP);
5702            descLabeljapjap_parity.setText(descjapjap_parity);
5703        }
5704        OptionData [] data;
5705        
5706        
5707        
5708        
5709        defKey = "p"+" "+"jap.parity"+" "+"enabled";
5710        defKey = defKey.trim();
5711
5712        if (isInDefList(defKey)) {
5713            defaultBool = getBoolDef(defKey);
5714        }
5715        else {
5716            
5717            defaultBool = false;
5718            
5719        }
5720
5721        setjapjap_parityenabled_widget(new BooleanOptionWidget(editGroupjapjap_parity, SWT.NONE, new OptionData("Enabled", "p", "jap.parity","enabled", "\n", defaultBool)));
5722        
5723        
5724
5725        
5726        return editGroupjapjap_parity;
5727    }
5728
5729
5730
5731    private Composite japjap_patCreate(Composite parent) {
5732        String JavaDoc defKey;
5733        String JavaDoc defaultString;
5734        boolean defaultBool = false;
5735        String JavaDoc defaultArray;
5736       
5737        Group editGroupjapjap_pat = new Group(parent, SWT.NONE);
5738        GridLayout layout = new GridLayout();
5739        editGroupjapjap_pat.setLayout(layout);
5740    
5741        editGroupjapjap_pat.setText("Parameter Alias Tagger");
5742        
5743        editGroupjapjap_pat.setData("id", "japjap_pat");
5744        
5745        String JavaDoc descjapjap_pat = "Colour-codes method parameters that may be aliased";
5746        if (descjapjap_pat.length() > 0) {
5747            Label descLabeljapjap_pat = new Label(editGroupjapjap_pat, SWT.WRAP);
5748            descLabeljapjap_pat.setText(descjapjap_pat);
5749        }
5750        OptionData [] data;
5751        
5752        
5753        
5754        
5755        defKey = "p"+" "+"jap.pat"+" "+"enabled";
5756        defKey = defKey.trim();
5757
5758        if (isInDefList(defKey)) {
5759            defaultBool = getBoolDef(defKey);
5760        }
5761        else {
5762            
5763            defaultBool = false;
5764            
5765        }
5766
5767        setjapjap_patenabled_widget(new BooleanOptionWidget(editGroupjapjap_pat, SWT.NONE, new OptionData("Enabled", "p", "jap.pat","enabled", "\n", defaultBool)));
5768        
5769        
5770
5771        
5772        return editGroupjapjap_pat;
5773    }
5774
5775
5776
5777    private Composite japjap_lvtaggerCreate(Composite parent) {
5778        String JavaDoc defKey;
5779        String JavaDoc defaultString;
5780        boolean defaultBool = false;
5781        String JavaDoc defaultArray;
5782       
5783        Group editGroupjapjap_lvtagger = new Group(parent, SWT.NONE);
5784        GridLayout layout = new GridLayout();
5785        editGroupjapjap_lvtagger.setLayout(layout);
5786    
5787        editGroupjapjap_lvtagger.setText("Live Variables Tagger");
5788        
5789        editGroupjapjap_lvtagger.setData("id", "japjap_lvtagger");
5790        
5791        String JavaDoc descjapjap_lvtagger = "Creates color tags for live variables";
5792        if (descjapjap_lvtagger.length() > 0) {
5793            Label descLabeljapjap_lvtagger = new Label(editGroupjapjap_lvtagger, SWT.WRAP);
5794            descLabeljapjap_lvtagger.setText(descjapjap_lvtagger);
5795        }
5796        OptionData [] data;
5797        
5798        
5799        
5800        
5801        defKey = "p"+" "+"jap.lvtagger"+" "+"enabled";
5802        defKey = defKey.trim();
5803
5804        if (isInDefList(defKey)) {
5805            defaultBool = getBoolDef(defKey);
5806        }
5807        else {
5808            
5809            defaultBool = false;
5810            
5811        }
5812
5813        setjapjap_lvtaggerenabled_widget(new BooleanOptionWidget(editGroupjapjap_lvtagger, SWT.NONE, new OptionData("Enabled", "p", "jap.lvtagger","enabled", "\n", defaultBool)));
5814        
5815        
5816
5817        
5818        return editGroupjapjap_lvtagger;
5819    }
5820
5821
5822
5823    private Composite japjap_rdtaggerCreate(Composite parent) {
5824        String JavaDoc defKey;
5825        String JavaDoc defaultString;
5826        boolean defaultBool = false;
5827        String JavaDoc defaultArray;
5828       
5829        Group editGroupjapjap_rdtagger = new Group(parent, SWT.NONE);
5830        GridLayout layout = new GridLayout();
5831        editGroupjapjap_rdtagger.setLayout(layout);
5832    
5833        editGroupjapjap_rdtagger.setText("Reaching Defs Tagger");
5834        
5835        editGroupjapjap_rdtagger.setData("id", "japjap_rdtagger");
5836        
5837        String JavaDoc descjapjap_rdtagger = "Creates link tags for reaching defs";
5838        if (descjapjap_rdtagger.length() > 0) {
5839            Label descLabeljapjap_rdtagger = new Label(editGroupjapjap_rdtagger, SWT.WRAP);
5840            descLabeljapjap_rdtagger.setText(descjapjap_rdtagger);
5841        }
5842        OptionData [] data;
5843        
5844        
5845        
5846        
5847        defKey = "p"+" "+"jap.rdtagger"+" "+"enabled";
5848        defKey = defKey.trim();
5849
5850        if (isInDefList(defKey)) {
5851            defaultBool = getBoolDef(defKey);
5852        }
5853        else {
5854            
5855            defaultBool = false;
5856            
5857        }
5858
5859        setjapjap_rdtaggerenabled_widget(new BooleanOptionWidget(editGroupjapjap_rdtagger, SWT.NONE, new OptionData("Enabled", "p", "jap.rdtagger","enabled", "\n", defaultBool)));
5860        
5861        
5862
5863        
5864        return editGroupjapjap_rdtagger;
5865    }
5866
5867
5868
5869    private Composite japjap_cheCreate(Composite parent) {
5870        String JavaDoc defKey;
5871        String JavaDoc defaultString;
5872        boolean defaultBool = false;
5873        String JavaDoc defaultArray;
5874       
5875        Group editGroupjapjap_che = new Group(parent, SWT.NONE);
5876        GridLayout layout = new GridLayout();
5877        editGroupjapjap_che.setLayout(layout);
5878    
5879        editGroupjapjap_che.setText("Cast Elimination Check Tagger");
5880        
5881        editGroupjapjap_che.setData("id", "japjap_che");
5882        
5883        String JavaDoc descjapjap_che = "Indicates whether cast checks can be eliminated";
5884        if (descjapjap_che.length() > 0) {
5885            Label descLabeljapjap_che = new Label(editGroupjapjap_che, SWT.WRAP);
5886            descLabeljapjap_che.setText(descjapjap_che);
5887        }
5888        OptionData [] data;
5889        
5890        
5891        
5892        
5893        defKey = "p"+" "+"jap.che"+" "+"enabled";
5894        defKey = defKey.trim();
5895
5896        if (isInDefList(defKey)) {
5897            defaultBool = getBoolDef(defKey);
5898        }
5899        else {
5900            
5901            defaultBool = false;
5902            
5903        }
5904
5905        setjapjap_cheenabled_widget(new BooleanOptionWidget(editGroupjapjap_che, SWT.NONE, new OptionData("Enabled", "p", "jap.che","enabled", "\n", defaultBool)));
5906        
5907        
5908
5909        
5910        return editGroupjapjap_che;
5911    }
5912
5913
5914
5915    private Composite japjap_umtCreate(Composite parent) {
5916        String JavaDoc defKey;
5917        String JavaDoc defaultString;
5918        boolean defaultBool = false;
5919        String JavaDoc defaultArray;
5920       
5921        Group editGroupjapjap_umt = new Group(parent, SWT.NONE);
5922        GridLayout layout = new GridLayout();
5923        editGroupjapjap_umt.setLayout(layout);
5924    
5925        editGroupjapjap_umt.setText("Unreachable Method Transformer");
5926        
5927        editGroupjapjap_umt.setData("id", "japjap_umt");
5928        
5929        String JavaDoc descjapjap_umt = "Inserts assertions into unreachable methods";
5930        if (descjapjap_umt.length() > 0) {
5931            Label descLabeljapjap_umt = new Label(editGroupjapjap_umt, SWT.WRAP);
5932            descLabeljapjap_umt.setText(descjapjap_umt);
5933        }
5934        OptionData [] data;
5935        
5936        
5937        
5938        
5939        defKey = "p"+" "+"jap.umt"+" "+"enabled";
5940        defKey = defKey.trim();
5941
5942        if (isInDefList(defKey)) {
5943            defaultBool = getBoolDef(defKey);
5944        }
5945        else {
5946            
5947            defaultBool = false;
5948            
5949        }
5950
5951        setjapjap_umtenabled_widget(new BooleanOptionWidget(editGroupjapjap_umt, SWT.NONE, new OptionData("Enabled", "p", "jap.umt","enabled", "\n", defaultBool)));
5952        
5953        
5954
5955        
5956        return editGroupjapjap_umt;
5957    }
5958
5959
5960
5961    private Composite japjap_litCreate(Composite parent) {
5962        String JavaDoc defKey;
5963        String JavaDoc defaultString;
5964        boolean defaultBool = false;
5965        String JavaDoc defaultArray;
5966       
5967        Group editGroupjapjap_lit = new Group(parent, SWT.NONE);
5968        GridLayout layout = new GridLayout();
5969        editGroupjapjap_lit.setLayout(layout);
5970    
5971        editGroupjapjap_lit.setText("Loop Invariant Tagger");
5972        
5973        editGroupjapjap_lit.setData("id", "japjap_lit");
5974        
5975        String JavaDoc descjapjap_lit = "Tags loop invariants";
5976        if (descjapjap_lit.length() > 0) {
5977            Label descLabeljapjap_lit = new Label(editGroupjapjap_lit, SWT.WRAP);
5978            descLabeljapjap_lit.setText(descjapjap_lit);
5979        }
5980        OptionData [] data;
5981        
5982        
5983        
5984        
5985        defKey = "p"+" "+"jap.lit"+" "+"enabled";
5986        defKey = defKey.trim();
5987
5988        if (isInDefList(defKey)) {
5989            defaultBool = getBoolDef(defKey);
5990        }
5991        else {
5992            
5993            defaultBool = false;
5994            
5995        }
5996
5997        setjapjap_litenabled_widget(new BooleanOptionWidget(editGroupjapjap_lit, SWT.NONE, new OptionData("Enabled", "p", "jap.lit","enabled", "\n", defaultBool)));
5998        
5999        
6000
6001        
6002        return editGroupjapjap_lit;
6003    }
6004
6005
6006
6007    private Composite japjap_aetCreate(Composite parent) {
6008        String JavaDoc defKey;
6009        String JavaDoc defaultString;
6010        boolean defaultBool = false;
6011        String JavaDoc defaultArray;
6012       
6013        Group editGroupjapjap_aet = new Group(parent, SWT.NONE);
6014        GridLayout layout = new GridLayout();
6015        editGroupjapjap_aet.setLayout(layout);
6016    
6017        editGroupjapjap_aet.setText("Available Expressions Tagger");
6018        
6019        editGroupjapjap_aet.setData("id", "japjap_aet");
6020        
6021        String JavaDoc descjapjap_aet = "Tags statements with sets of available expressions";
6022        if (descjapjap_aet.length() > 0) {
6023            Label descLabeljapjap_aet = new Label(editGroupjapjap_aet, SWT.WRAP);
6024            descLabeljapjap_aet.setText(descjapjap_aet);
6025        }
6026        OptionData [] data;
6027        
6028        
6029        
6030        
6031        defKey = "p"+" "+"jap.aet"+" "+"enabled";
6032        defKey = defKey.trim();
6033
6034        if (isInDefList(defKey)) {
6035            defaultBool = getBoolDef(defKey);
6036        }
6037        else {
6038            
6039            defaultBool = false;
6040            
6041        }
6042
6043        setjapjap_aetenabled_widget(new BooleanOptionWidget(editGroupjapjap_aet, SWT.NONE, new OptionData("Enabled", "p", "jap.aet","enabled", "\n", defaultBool)));
6044        
6045        
6046        
6047        data = new OptionData [] {
6048        
6049        new OptionData("Optimistic",
6050        "optimistic",
6051        "\n",
6052        
6053        true),
6054        
6055        new OptionData("Pessimistic",
6056        "pessimistic",
6057        "\n",
6058        
6059        false),
6060        
6061        };
6062        
6063                                        
6064        setjapjap_aetkind_widget(new MultiOptionWidget(editGroupjapjap_aet, SWT.NONE, data, new OptionData("Kind", "p", "jap.aet","kind", "\n")));
6065        
6066        defKey = "p"+" "+"jap.aet"+" "+"kind";
6067        defKey = defKey.trim();
6068        
6069        if (isInDefList(defKey)) {
6070            defaultString = getStringDef(defKey);
6071        
6072            getjapjap_aetkind_widget().setDef(defaultString);
6073        }
6074        
6075        
6076
6077        
6078        return editGroupjapjap_aet;
6079    }
6080
6081
6082
6083    private Composite japjap_dmtCreate(Composite parent) {
6084        String JavaDoc defKey;
6085        String JavaDoc defaultString;
6086        boolean defaultBool = false;
6087        String JavaDoc defaultArray;
6088       
6089        Group editGroupjapjap_dmt = new Group(parent, SWT.NONE);
6090        GridLayout layout = new GridLayout();
6091        editGroupjapjap_dmt.setLayout(layout);
6092    
6093        editGroupjapjap_dmt.setText("Dominators Tagger");
6094        
6095        editGroupjapjap_dmt.setData("id", "japjap_dmt");
6096        
6097        String JavaDoc descjapjap_dmt = "Tags dominators of statement";
6098        if (descjapjap_dmt.length() > 0) {
6099            Label descLabeljapjap_dmt = new Label(editGroupjapjap_dmt, SWT.WRAP);
6100            descLabeljapjap_dmt.setText(descjapjap_dmt);
6101        }
6102        OptionData [] data;
6103        
6104        
6105        
6106        
6107        defKey = "p"+" "+"jap.dmt"+" "+"enabled";
6108        defKey = defKey.trim();
6109
6110        if (isInDefList(defKey)) {
6111            defaultBool = getBoolDef(defKey);
6112        }
6113        else {
6114            
6115            defaultBool = false;
6116            
6117        }
6118
6119        setjapjap_dmtenabled_widget(new BooleanOptionWidget(editGroupjapjap_dmt, SWT.NONE, new OptionData("Enabled", "p", "jap.dmt","enabled", "\n", defaultBool)));
6120        
6121        
6122
6123        
6124        return editGroupjapjap_dmt;
6125    }
6126
6127
6128
6129    private Composite gbCreate(Composite parent) {
6130        String JavaDoc defKey;
6131        String JavaDoc defaultString;
6132        boolean defaultBool = false;
6133        String JavaDoc defaultArray;
6134       
6135        Group editGroupgb = new Group(parent, SWT.NONE);
6136        GridLayout layout = new GridLayout();
6137        editGroupgb.setLayout(layout);
6138    
6139        editGroupgb.setText("Grimp Body Creation");
6140        
6141        editGroupgb.setData("id", "gb");
6142        
6143        String JavaDoc descgb = "Creates a GrimpBody for each method";
6144        if (descgb.length() > 0) {
6145            Label descLabelgb = new Label(editGroupgb, SWT.WRAP);
6146            descLabelgb.setText(descgb);
6147        }
6148        OptionData [] data;
6149        
6150        
6151        
6152        
6153        defKey = "p"+" "+"gb"+" "+"enabled";
6154        defKey = defKey.trim();
6155
6156        if (isInDefList(defKey)) {
6157            defaultBool = getBoolDef(defKey);
6158        }
6159        else {
6160            
6161            defaultBool = true;
6162            
6163        }
6164
6165        setgbenabled_widget(new BooleanOptionWidget(editGroupgb, SWT.NONE, new OptionData("Enabled", "p", "gb","enabled", "\n", defaultBool)));
6166        
6167        
6168
6169        
6170        return editGroupgb;
6171    }
6172
6173
6174
6175    private Composite gbgb_a1Create(Composite parent) {
6176        String JavaDoc defKey;
6177        String JavaDoc defaultString;
6178        boolean defaultBool = false;
6179        String JavaDoc defaultArray;
6180       
6181        Group editGroupgbgb_a1 = new Group(parent, SWT.NONE);
6182        GridLayout layout = new GridLayout();
6183        editGroupgbgb_a1.setLayout(layout);
6184    
6185        editGroupgbgb_a1.setText("Grimp Pre-folding Aggregator");
6186        
6187        editGroupgbgb_a1.setData("id", "gbgb_a1");
6188        
6189        String JavaDoc descgbgb_a1 = "Aggregator: removes some copies, pre-folding";
6190        if (descgbgb_a1.length() > 0) {
6191            Label descLabelgbgb_a1 = new Label(editGroupgbgb_a1, SWT.WRAP);
6192            descLabelgbgb_a1.setText(descgbgb_a1);
6193        }
6194        OptionData [] data;
6195        
6196        
6197        
6198        
6199        defKey = "p"+" "+"gb.a1"+" "+"enabled";
6200        defKey = defKey.trim();
6201
6202        if (isInDefList(defKey)) {
6203            defaultBool = getBoolDef(defKey);
6204        }
6205        else {
6206            
6207            defaultBool = true;
6208            
6209        }
6210
6211        setgbgb_a1enabled_widget(new BooleanOptionWidget(editGroupgbgb_a1, SWT.NONE, new OptionData("Enabled", "p", "gb.a1","enabled", "\n", defaultBool)));
6212        
6213        
6214        
6215        defKey = "p"+" "+"gb.a1"+" "+"only-stack-locals";
6216        defKey = defKey.trim();
6217
6218        if (isInDefList(defKey)) {
6219            defaultBool = getBoolDef(defKey);
6220        }
6221        else {
6222            
6223            defaultBool = true;
6224            
6225        }
6226
6227        setgbgb_a1only_stack_locals_widget(new BooleanOptionWidget(editGroupgbgb_a1, SWT.NONE, new OptionData("Only Stack Locals", "p", "gb.a1","only-stack-locals", "\nAggregate only values stored in stack locals. ", defaultBool)));
6228        
6229        
6230
6231        
6232        return editGroupgbgb_a1;
6233    }
6234
6235
6236
6237    private Composite gbgb_cfCreate(Composite parent) {
6238        String JavaDoc defKey;
6239        String JavaDoc defaultString;
6240        boolean defaultBool = false;
6241        String JavaDoc defaultArray;
6242       
6243        Group editGroupgbgb_cf = new Group(parent, SWT.NONE);
6244        GridLayout layout = new GridLayout();
6245        editGroupgbgb_cf.setLayout(layout);
6246    
6247        editGroupgbgb_cf.setText("Grimp Constructor Folder");
6248        
6249        editGroupgbgb_cf.setData("id", "gbgb_cf");
6250        
6251        String JavaDoc descgbgb_cf = "Constructor folder";
6252        if (descgbgb_cf.length() > 0) {
6253            Label descLabelgbgb_cf = new Label(editGroupgbgb_cf, SWT.WRAP);
6254            descLabelgbgb_cf.setText(descgbgb_cf);
6255        }
6256        OptionData [] data;
6257        
6258        
6259        
6260        
6261        defKey = "p"+" "+"gb.cf"+" "+"enabled";
6262        defKey = defKey.trim();
6263
6264        if (isInDefList(defKey)) {
6265            defaultBool = getBoolDef(defKey);
6266        }
6267        else {
6268            
6269            defaultBool = true;
6270            
6271        }
6272
6273        setgbgb_cfenabled_widget(new BooleanOptionWidget(editGroupgbgb_cf, SWT.NONE, new OptionData("Enabled", "p", "gb.cf","enabled", "\n", defaultBool)));
6274        
6275        
6276
6277        
6278        return editGroupgbgb_cf;
6279    }
6280
6281
6282
6283    private Composite gbgb_a2Create(Composite parent) {
6284        String JavaDoc defKey;
6285        String JavaDoc defaultString;
6286        boolean defaultBool = false;
6287        String JavaDoc defaultArray;
6288       
6289        Group editGroupgbgb_a2 = new Group(parent, SWT.NONE);
6290        GridLayout layout = new GridLayout();
6291        editGroupgbgb_a2.setLayout(layout);
6292    
6293        editGroupgbgb_a2.setText("Grimp Post-folding Aggregator");
6294        
6295        editGroupgbgb_a2.setData("id", "gbgb_a2");
6296        
6297        String JavaDoc descgbgb_a2 = "Aggregator: removes some copies, post-folding";
6298        if (descgbgb_a2.length() > 0) {
6299            Label descLabelgbgb_a2 = new Label(editGroupgbgb_a2, SWT.WRAP);
6300            descLabelgbgb_a2.setText(descgbgb_a2);
6301        }
6302        OptionData [] data;
6303        
6304        
6305        
6306        
6307        defKey = "p"+" "+"gb.a2"+" "+"enabled";
6308        defKey = defKey.trim();
6309
6310        if (isInDefList(defKey)) {
6311            defaultBool = getBoolDef(defKey);
6312        }
6313        else {
6314            
6315            defaultBool = true;
6316            
6317        }
6318
6319        setgbgb_a2enabled_widget(new BooleanOptionWidget(editGroupgbgb_a2, SWT.NONE, new OptionData("Enabled", "p", "gb.a2","enabled", "\n", defaultBool)));
6320        
6321        
6322        
6323        defKey = "p"+" "+"gb.a2"+" "+"only-stack-locals";
6324        defKey = defKey.trim();
6325
6326        if (isInDefList(defKey)) {
6327            defaultBool = getBoolDef(defKey);
6328        }
6329        else {
6330            
6331            defaultBool = true;
6332            
6333        }
6334
6335        setgbgb_a2only_stack_locals_widget(new BooleanOptionWidget(editGroupgbgb_a2, SWT.NONE, new OptionData("Only Stack Locals", "p", "gb.a2","only-stack-locals", "\nAggregate only values stored in stack locals. ", defaultBool)));
6336        
6337        
6338
6339        
6340        return editGroupgbgb_a2;
6341    }
6342
6343
6344
6345    private Composite gbgb_uleCreate(Composite parent) {
6346        String JavaDoc defKey;
6347        String JavaDoc defaultString;
6348        boolean defaultBool = false;
6349        String JavaDoc defaultArray;
6350       
6351        Group editGroupgbgb_ule = new Group(parent, SWT.NONE);
6352        GridLayout layout = new GridLayout();
6353        editGroupgbgb_ule.setLayout(layout);
6354    
6355        editGroupgbgb_ule.setText("Grimp Unused Local Eliminator");
6356        
6357        editGroupgbgb_ule.setData("id", "gbgb_ule");
6358        
6359        String JavaDoc descgbgb_ule = "Unused local eliminator";
6360        if (descgbgb_ule.length() > 0) {
6361            Label descLabelgbgb_ule = new Label(editGroupgbgb_ule, SWT.WRAP);
6362            descLabelgbgb_ule.setText(descgbgb_ule);
6363        }
6364        OptionData [] data;
6365        
6366        
6367        
6368        
6369        defKey = "p"+" "+"gb.ule"+" "+"enabled";
6370        defKey = defKey.trim();
6371
6372        if (isInDefList(defKey)) {
6373            defaultBool = getBoolDef(defKey);
6374        }
6375        else {
6376            
6377            defaultBool = true;
6378            
6379        }
6380
6381        setgbgb_uleenabled_widget(new BooleanOptionWidget(editGroupgbgb_ule, SWT.NONE, new OptionData("Enabled", "p", "gb.ule","enabled", "\n", defaultBool)));
6382        
6383        
6384
6385        
6386        return editGroupgbgb_ule;
6387    }
6388
6389
6390
6391    private Composite gopCreate(Composite parent) {
6392        String JavaDoc defKey;
6393        String JavaDoc defaultString;
6394        boolean defaultBool = false;
6395        String JavaDoc defaultArray;
6396       
6397        Group editGroupgop = new Group(parent, SWT.NONE);
6398        GridLayout layout = new GridLayout();
6399        editGroupgop.setLayout(layout);
6400    
6401        editGroupgop.setText("Grimp Optimization");
6402        
6403        editGroupgop.setData("id", "gop");
6404        
6405        String JavaDoc descgop = "Grimp optimization pack";
6406        if (descgop.length() > 0) {
6407            Label descLabelgop = new Label(editGroupgop, SWT.WRAP);
6408            descLabelgop.setText(descgop);
6409        }
6410        OptionData [] data;
6411        
6412        
6413        
6414        
6415        defKey = "p"+" "+"gop"+" "+"enabled";
6416        defKey = defKey.trim();
6417
6418        if (isInDefList(defKey)) {
6419            defaultBool = getBoolDef(defKey);
6420        }
6421        else {
6422            
6423            defaultBool = false;
6424            
6425        }
6426
6427        setgopenabled_widget(new BooleanOptionWidget(editGroupgop, SWT.NONE, new OptionData("Enabled", "p", "gop","enabled", "\n", defaultBool)));
6428        
6429        
6430
6431        
6432        return editGroupgop;
6433    }
6434
6435
6436
6437    private Composite bbCreate(Composite parent) {
6438        String JavaDoc defKey;
6439        String JavaDoc defaultString;
6440        boolean defaultBool = false;
6441        String JavaDoc defaultArray;
6442       
6443        Group editGroupbb = new Group(parent, SWT.NONE);
6444        GridLayout layout = new GridLayout();
6445        editGroupbb.setLayout(layout);
6446    
6447        editGroupbb.setText("Baf Body Creation");
6448        
6449        editGroupbb.setData("id", "bb");
6450        
6451        String JavaDoc descbb = "Creates Baf bodies";
6452        if (descbb.length() > 0) {
6453            Label descLabelbb = new Label(editGroupbb, SWT.WRAP);
6454            descLabelbb.setText(descbb);
6455        }
6456        OptionData [] data;
6457        
6458        
6459        
6460        
6461        defKey = "p"+" "+"bb"+" "+"enabled";
6462        defKey = defKey.trim();
6463
6464        if (isInDefList(defKey)) {
6465            defaultBool = getBoolDef(defKey);
6466        }
6467        else {
6468            
6469            defaultBool = true;
6470            
6471        }
6472
6473        setbbenabled_widget(new BooleanOptionWidget(editGroupbb, SWT.NONE, new OptionData("Enabled", "p", "bb","enabled", "\n", defaultBool)));
6474        
6475        
6476
6477        
6478        return editGroupbb;
6479    }
6480
6481
6482
6483    private Composite bbbb_lsoCreate(Composite parent) {
6484        String JavaDoc defKey;
6485        String JavaDoc defaultString;
6486        boolean defaultBool = false;
6487        String JavaDoc defaultArray;
6488       
6489        Group editGroupbbbb_lso = new Group(parent, SWT.NONE);
6490        GridLayout layout = new GridLayout();
6491        editGroupbbbb_lso.setLayout(layout);
6492    
6493        editGroupbbbb_lso.setText("Load Store Optimizer");
6494        
6495        editGroupbbbb_lso.setData("id", "bbbb_lso");
6496        
6497        String JavaDoc descbbbb_lso = "Load store optimizer";
6498        if (descbbbb_lso.length() > 0) {
6499            Label descLabelbbbb_lso = new Label(editGroupbbbb_lso, SWT.WRAP);
6500            descLabelbbbb_lso.setText(descbbbb_lso);
6501        }
6502        OptionData [] data;
6503        
6504        
6505        
6506        
6507        defKey = "p"+" "+"bb.lso"+" "+"enabled";
6508        defKey = defKey.trim();
6509
6510        if (isInDefList(defKey)) {
6511            defaultBool = getBoolDef(defKey);
6512        }
6513        else {
6514            
6515            defaultBool = true;
6516            
6517        }
6518
6519        setbbbb_lsoenabled_widget(new BooleanOptionWidget(editGroupbbbb_lso, SWT.NONE, new OptionData("Enabled", "p", "bb.lso","enabled", "\n", defaultBool)));
6520        
6521        
6522        
6523        defKey = "p"+" "+"bb.lso"+" "+"debug";
6524        defKey = defKey.trim();
6525
6526        if (isInDefList(defKey)) {
6527            defaultBool = getBoolDef(defKey);
6528        }
6529        else {
6530            
6531            defaultBool = false;
6532            
6533        }
6534
6535        setbbbb_lsodebug_widget(new BooleanOptionWidget(editGroupbbbb_lso, SWT.NONE, new OptionData("Debug", "p", "bb.lso","debug", "\nProduces voluminous debugging output describing the progress of \nthe load store optimizer. ", defaultBool)));
6536        
6537        
6538        
6539        defKey = "p"+" "+"bb.lso"+" "+"inter";
6540        defKey = defKey.trim();
6541
6542        if (isInDefList(defKey)) {
6543            defaultBool = getBoolDef(defKey);
6544        }
6545        else {
6546            
6547            defaultBool = false;
6548            
6549        }
6550
6551        setbbbb_lsointer_widget(new BooleanOptionWidget(editGroupbbbb_lso, SWT.NONE, new OptionData("Inter", "p", "bb.lso","inter", "\nEnables two simple inter-block optimizations which attempt to \nkeep some variables on the stack between blocks. Both are \nintended to catch if-like constructions where control flow \nbranches temporarily into two paths that converge at a later \npoint. ", defaultBool)));
6552        
6553        
6554        
6555        defKey = "p"+" "+"bb.lso"+" "+"sl";
6556        defKey = defKey.trim();
6557
6558        if (isInDefList(defKey)) {
6559            defaultBool = getBoolDef(defKey);
6560        }
6561        else {
6562            
6563            defaultBool = true;
6564            
6565        }
6566
6567        setbbbb_lsosl_widget(new BooleanOptionWidget(editGroupbbbb_lso, SWT.NONE, new OptionData("sl", "p", "bb.lso","sl", "\nEnables an optimization which attempts to eliminate store/load \npairs. ", defaultBool)));
6568        
6569        
6570        
6571        defKey = "p"+" "+"bb.lso"+" "+"sl2";
6572        defKey = defKey.trim();
6573
6574        if (isInDefList(defKey)) {
6575            defaultBool = getBoolDef(defKey);
6576        }
6577        else {
6578            
6579            defaultBool = false;
6580            
6581        }
6582
6583        setbbbb_lsosl2_widget(new BooleanOptionWidget(editGroupbbbb_lso, SWT.NONE, new OptionData("sl2", "p", "bb.lso","sl2", "\nEnables an a second pass of the optimization which attempts to \neliminate store/load pairs. ", defaultBool)));
6584        
6585        
6586        
6587        defKey = "p"+" "+"bb.lso"+" "+"sll";
6588        defKey = defKey.trim();
6589
6590        if (isInDefList(defKey)) {
6591            defaultBool = getBoolDef(defKey);
6592        }
6593        else {
6594            
6595            defaultBool = true;
6596            
6597        }
6598
6599        setbbbb_lsosll_widget(new BooleanOptionWidget(editGroupbbbb_lso, SWT.NONE, new OptionData("sll", "p", "bb.lso","sll", "\nEnables an optimization which attempts to eliminate \nstore/load/load trios with some variant of dup. ", defaultBool)));
6600        
6601        
6602        
6603        defKey = "p"+" "+"bb.lso"+" "+"sll2";
6604        defKey = defKey.trim();
6605
6606        if (isInDefList(defKey)) {
6607            defaultBool = getBoolDef(defKey);
6608        }
6609        else {
6610            
6611            defaultBool = false;
6612            
6613        }
6614
6615        setbbbb_lsosll2_widget(new BooleanOptionWidget(editGroupbbbb_lso, SWT.NONE, new OptionData("sll2", "p", "bb.lso","sll2", "\nEnables an a second pass of the optimization which attempts to \neliminate store/load/load trios with some variant of dup. ", defaultBool)));
6616        
6617        
6618
6619        
6620        return editGroupbbbb_lso;
6621    }
6622
6623
6624
6625    private Composite bbbb_phoCreate(Composite parent) {
6626        String JavaDoc defKey;
6627        String JavaDoc defaultString;
6628        boolean defaultBool = false;
6629        String JavaDoc defaultArray;
6630       
6631        Group editGroupbbbb_pho = new Group(parent, SWT.NONE);
6632        GridLayout layout = new GridLayout();
6633        editGroupbbbb_pho.setLayout(layout);
6634    
6635        editGroupbbbb_pho.setText("Peephole Optimizer");
6636        
6637        editGroupbbbb_pho.setData("id", "bbbb_pho");
6638        
6639        String JavaDoc descbbbb_pho = "Peephole optimizer";
6640        if (descbbbb_pho.length() > 0) {
6641            Label descLabelbbbb_pho = new Label(editGroupbbbb_pho, SWT.WRAP);
6642            descLabelbbbb_pho.setText(descbbbb_pho);
6643        }
6644        OptionData [] data;
6645        
6646        
6647        
6648        
6649        defKey = "p"+" "+"bb.pho"+" "+"enabled";
6650        defKey = defKey.trim();
6651
6652        if (isInDefList(defKey)) {
6653            defaultBool = getBoolDef(defKey);
6654        }
6655        else {
6656            
6657            defaultBool = true;
6658            
6659        }
6660
6661        setbbbb_phoenabled_widget(new BooleanOptionWidget(editGroupbbbb_pho, SWT.NONE, new OptionData("Enabled", "p", "bb.pho","enabled", "\n", defaultBool)));
6662        
6663        
6664
6665        
6666        return editGroupbbbb_pho;
6667    }
6668
6669
6670
6671    private Composite bbbb_uleCreate(Composite parent) {
6672        String JavaDoc defKey;
6673        String JavaDoc defaultString;
6674        boolean defaultBool = false;
6675        String JavaDoc defaultArray;
6676       
6677        Group editGroupbbbb_ule = new Group(parent, SWT.NONE);
6678        GridLayout layout = new GridLayout();
6679        editGroupbbbb_ule.setLayout(layout);
6680    
6681        editGroupbbbb_ule.setText("Unused Local Eliminator");
6682        
6683        editGroupbbbb_ule.setData("id", "bbbb_ule");
6684        
6685        String JavaDoc descbbbb_ule = "Unused local eliminator";
6686        if (descbbbb_ule.length() > 0) {
6687            Label descLabelbbbb_ule = new Label(editGroupbbbb_ule, SWT.WRAP);
6688            descLabelbbbb_ule.setText(descbbbb_ule);
6689        }
6690        OptionData [] data;
6691        
6692        
6693        
6694        
6695        defKey = "p"+" "+"bb.ule"+" "+"enabled";
6696        defKey = defKey.trim();
6697
6698        if (isInDefList(defKey)) {
6699            defaultBool = getBoolDef(defKey);
6700        }
6701        else {
6702            
6703            defaultBool = true;
6704            
6705        }
6706
6707        setbbbb_uleenabled_widget(new BooleanOptionWidget(editGroupbbbb_ule, SWT.NONE, new OptionData("Enabled", "p", "bb.ule","enabled", "\n", defaultBool)));
6708        
6709        
6710
6711        
6712        return editGroupbbbb_ule;
6713    }
6714
6715
6716
6717    private Composite bbbb_lpCreate(Composite parent) {
6718        String JavaDoc defKey;
6719        String JavaDoc defaultString;
6720        boolean defaultBool = false;
6721        String JavaDoc defaultArray;
6722       
6723        Group editGroupbbbb_lp = new Group(parent, SWT.NONE);
6724        GridLayout layout = new GridLayout();
6725        editGroupbbbb_lp.setLayout(layout);
6726    
6727        editGroupbbbb_lp.setText("Local Packer");
6728        
6729        editGroupbbbb_lp.setData("id", "bbbb_lp");
6730        
6731        String JavaDoc descbbbb_lp = "Local packer: minimizes number of locals";
6732        if (descbbbb_lp.length() > 0) {
6733            Label descLabelbbbb_lp = new Label(editGroupbbbb_lp, SWT.WRAP);
6734            descLabelbbbb_lp.setText(descbbbb_lp);
6735        }
6736        OptionData [] data;
6737        
6738        
6739        
6740        
6741        defKey = "p"+" "+"bb.lp"+" "+"enabled";
6742        defKey = defKey.trim();
6743
6744        if (isInDefList(defKey)) {
6745            defaultBool = getBoolDef(defKey);
6746        }
6747        else {
6748            
6749            defaultBool = true;
6750            
6751        }
6752
6753        setbbbb_lpenabled_widget(new BooleanOptionWidget(editGroupbbbb_lp, SWT.NONE, new OptionData("Enabled", "p", "bb.lp","enabled", "\n", defaultBool)));
6754        
6755        
6756        
6757        defKey = "p"+" "+"bb.lp"+" "+"unsplit-original-locals";
6758        defKey = defKey.trim();
6759
6760        if (isInDefList(defKey)) {
6761            defaultBool = getBoolDef(defKey);
6762        }
6763        else {
6764            
6765            defaultBool = false;
6766            
6767        }
6768
6769        setbbbb_lpunsplit_original_locals_widget(new BooleanOptionWidget(editGroupbbbb_lp, SWT.NONE, new OptionData("Unsplit Original Locals", "p", "bb.lp","unsplit-original-locals", "\nUse the variable names in the original source as a guide when \ndetermining how to share local variables across non-interfering \nvariable usages. This recombines named locals which were split \nby the Local Splitter. ", defaultBool)));
6770        
6771        
6772
6773        
6774        return editGroupbbbb_lp;
6775    }
6776
6777
6778
6779    private Composite bopCreate(Composite parent) {
6780        String JavaDoc defKey;
6781        String JavaDoc defaultString;
6782        boolean defaultBool = false;
6783        String JavaDoc defaultArray;
6784       
6785        Group editGroupbop = new Group(parent, SWT.NONE);
6786        GridLayout layout = new GridLayout();
6787        editGroupbop.setLayout(layout);
6788    
6789        editGroupbop.setText("Baf Optimization");
6790        
6791        editGroupbop.setData("id", "bop");
6792        
6793        String JavaDoc descbop = "Baf optimization pack";
6794        if (descbop.length() > 0) {
6795            Label descLabelbop = new Label(editGroupbop, SWT.WRAP);
6796            descLabelbop.setText(descbop);
6797        }
6798        OptionData [] data;
6799        
6800        
6801        
6802        
6803        defKey = "p"+" "+"bop"+" "+"enabled";
6804        defKey = defKey.trim();
6805
6806        if (isInDefList(defKey)) {
6807            defaultBool = getBoolDef(defKey);
6808        }
6809        else {
6810            
6811            defaultBool = false;
6812            
6813        }
6814
6815        setbopenabled_widget(new BooleanOptionWidget(editGroupbop, SWT.NONE, new OptionData("Enabled", "p", "bop","enabled", "\n", defaultBool)));
6816        
6817        
6818
6819        
6820        return editGroupbop;
6821    }
6822
6823
6824
6825    private Composite tagCreate(Composite parent) {
6826        String JavaDoc defKey;
6827        String JavaDoc defaultString;
6828        boolean defaultBool = false;
6829        String JavaDoc defaultArray;
6830       
6831        Group editGrouptag = new Group(parent, SWT.NONE);
6832        GridLayout layout = new GridLayout();
6833        editGrouptag.setLayout(layout);
6834    
6835        editGrouptag.setText("Tag Aggregator");
6836        
6837        editGrouptag.setData("id", "tag");
6838        
6839        String JavaDoc desctag = "Tag aggregator: turns tags into attributes";
6840        if (desctag.length() > 0) {
6841            Label descLabeltag = new Label(editGrouptag, SWT.WRAP);
6842            descLabeltag.setText(desctag);
6843        }
6844        OptionData [] data;
6845        
6846        
6847        
6848        
6849        defKey = "p"+" "+"tag"+" "+"enabled";
6850        defKey = defKey.trim();
6851
6852        if (isInDefList(defKey)) {
6853            defaultBool = getBoolDef(defKey);
6854        }
6855        else {
6856            
6857            defaultBool = true;
6858            
6859        }
6860
6861        settagenabled_widget(new BooleanOptionWidget(editGrouptag, SWT.NONE, new OptionData("Enabled", "p", "tag","enabled", "\n", defaultBool)));
6862        
6863        
6864
6865        
6866        return editGrouptag;
6867    }
6868
6869
6870
6871    private Composite tagtag_lnCreate(Composite parent) {
6872        String JavaDoc defKey;
6873        String JavaDoc defaultString;
6874        boolean defaultBool = false;
6875        String JavaDoc defaultArray;
6876       
6877        Group editGrouptagtag_ln = new Group(parent, SWT.NONE);
6878        GridLayout layout = new GridLayout();
6879        editGrouptagtag_ln.setLayout(layout);
6880    
6881        editGrouptagtag_ln.setText("Line Number Tag Aggregator");
6882        
6883        editGrouptagtag_ln.setData("id", "tagtag_ln");
6884        
6885        String JavaDoc desctagtag_ln = "Line number aggregator";
6886        if (desctagtag_ln.length() > 0) {
6887            Label descLabeltagtag_ln = new Label(editGrouptagtag_ln, SWT.WRAP);
6888            descLabeltagtag_ln.setText(desctagtag_ln);
6889        }
6890        OptionData [] data;
6891        
6892        
6893        
6894        
6895        defKey = "p"+" "+"tag.ln"+" "+"enabled";
6896        defKey = defKey.trim();
6897
6898        if (isInDefList(defKey)) {
6899            defaultBool = getBoolDef(defKey);
6900        }
6901        else {
6902            
6903            defaultBool = true;
6904            
6905        }
6906
6907        settagtag_lnenabled_widget(new BooleanOptionWidget(editGrouptagtag_ln, SWT.NONE, new OptionData("Enabled", "p", "tag.ln","enabled", "\n", defaultBool)));
6908        
6909        
6910
6911        
6912        return editGrouptagtag_ln;
6913    }
6914
6915
6916
6917    private Composite tagtag_anCreate(Composite parent) {
6918        String JavaDoc defKey;
6919        String JavaDoc defaultString;
6920        boolean defaultBool = false;
6921        String JavaDoc defaultArray;
6922       
6923        Group editGrouptagtag_an = new Group(parent, SWT.NONE);
6924        GridLayout layout = new GridLayout();
6925        editGrouptagtag_an.setLayout(layout);
6926    
6927        editGrouptagtag_an.setText("Array Bounds and Null Pointer Check Tag Aggregator");
6928        
6929        editGrouptagtag_an.setData("id", "tagtag_an");
6930        
6931        String JavaDoc desctagtag_an = "Array bounds and null pointer check aggregator";
6932        if (desctagtag_an.length() > 0) {
6933            Label descLabeltagtag_an = new Label(editGrouptagtag_an, SWT.WRAP);
6934            descLabeltagtag_an.setText(desctagtag_an);
6935        }
6936        OptionData [] data;
6937        
6938        
6939        
6940        
6941        defKey = "p"+" "+"tag.an"+" "+"enabled";
6942        defKey = defKey.trim();
6943
6944        if (isInDefList(defKey)) {
6945            defaultBool = getBoolDef(defKey);
6946        }
6947        else {
6948            
6949            defaultBool = false;
6950            
6951        }
6952
6953        settagtag_anenabled_widget(new BooleanOptionWidget(editGrouptagtag_an, SWT.NONE, new OptionData("Enabled", "p", "tag.an","enabled", "\n", defaultBool)));
6954        
6955        
6956
6957        
6958        return editGrouptagtag_an;
6959    }
6960
6961
6962
6963    private Composite tagtag_depCreate(Composite parent) {
6964        String JavaDoc defKey;
6965        String JavaDoc defaultString;
6966        boolean defaultBool = false;
6967        String JavaDoc defaultArray;
6968       
6969        Group editGrouptagtag_dep = new Group(parent, SWT.NONE);
6970        GridLayout layout = new GridLayout();
6971        editGrouptagtag_dep.setLayout(layout);
6972    
6973        editGrouptagtag_dep.setText("Dependence Tag Aggregator");
6974        
6975        editGrouptagtag_dep.setData("id", "tagtag_dep");
6976        
6977        String JavaDoc desctagtag_dep = "Dependence aggregator";
6978        if (desctagtag_dep.length() > 0) {
6979            Label descLabeltagtag_dep = new Label(editGrouptagtag_dep, SWT.WRAP);
6980            descLabeltagtag_dep.setText(desctagtag_dep);
6981        }
6982        OptionData [] data;
6983        
6984        
6985        
6986        
6987        defKey = "p"+" "+"tag.dep"+" "+"enabled";
6988        defKey = defKey.trim();
6989
6990        if (isInDefList(defKey)) {
6991            defaultBool = getBoolDef(defKey);
6992        }
6993        else {
6994            
6995            defaultBool = false;
6996            
6997        }
6998
6999        settagtag_depenabled_widget(new BooleanOptionWidget(editGrouptagtag_dep, SWT.NONE, new OptionData("Enabled", "p", "tag.dep","enabled", "\n", defaultBool)));
7000        
7001        
7002
7003        
7004        return editGrouptagtag_dep;
7005    }
7006
7007
7008
7009    private Composite tagtag_fieldrwCreate(Composite parent) {
7010        String JavaDoc defKey;
7011        String JavaDoc defaultString;
7012        boolean defaultBool = false;
7013        String JavaDoc defaultArray;
7014       
7015        Group editGrouptagtag_fieldrw = new Group(parent, SWT.NONE);
7016        GridLayout layout = new GridLayout();
7017        editGrouptagtag_fieldrw.setLayout(layout);
7018    
7019        editGrouptagtag_fieldrw.setText("Field Read/Write Tag Aggregator");
7020        
7021        editGrouptagtag_fieldrw.setData("id", "tagtag_fieldrw");
7022        
7023        String JavaDoc desctagtag_fieldrw = "Field read/write aggregator";
7024        if (desctagtag_fieldrw.length() > 0) {
7025            Label descLabeltagtag_fieldrw = new Label(editGrouptagtag_fieldrw, SWT.WRAP);
7026            descLabeltagtag_fieldrw.setText(desctagtag_fieldrw);
7027        }
7028        OptionData [] data;
7029        
7030        
7031        
7032        
7033        defKey = "p"+" "+"tag.fieldrw"+" "+"enabled";
7034        defKey = defKey.trim();
7035
7036        if (isInDefList(defKey)) {
7037            defaultBool = getBoolDef(defKey);
7038        }
7039        else {
7040            
7041            defaultBool = false;
7042            
7043        }
7044
7045        settagtag_fieldrwenabled_widget(new BooleanOptionWidget(editGrouptagtag_fieldrw, SWT.NONE, new OptionData("Enabled", "p", "tag.fieldrw","enabled", "\n", defaultBool)));
7046        
7047        
7048
7049        
7050        return editGrouptagtag_fieldrw;
7051    }
7052
7053
7054
7055    private Composite dbCreate(Composite parent) {
7056        String JavaDoc defKey;
7057        String JavaDoc defaultString;
7058        boolean defaultBool = false;
7059        String JavaDoc defaultArray;
7060       
7061        Group editGroupdb = new Group(parent, SWT.NONE);
7062        GridLayout layout = new GridLayout();
7063        editGroupdb.setLayout(layout);
7064    
7065        editGroupdb.setText("Dava Body Creation");
7066        
7067        editGroupdb.setData("id", "db");
7068        
7069        String JavaDoc descdb = "Dummy phase to store options for Dava";
7070        if (descdb.length() > 0) {
7071            Label descLabeldb = new Label(editGroupdb, SWT.WRAP);
7072            descLabeldb.setText(descdb);
7073        }
7074        OptionData [] data;
7075        
7076        
7077        
7078        
7079        defKey = "p"+" "+"db"+" "+"enabled";
7080        defKey = defKey.trim();
7081
7082        if (isInDefList(defKey)) {
7083            defaultBool = getBoolDef(defKey);
7084        }
7085        else {
7086            
7087            defaultBool = true;
7088            
7089        }
7090
7091        setdbenabled_widget(new BooleanOptionWidget(editGroupdb, SWT.NONE, new OptionData("Enabled", "p", "db","enabled", "\n", defaultBool)));
7092        
7093        
7094
7095        
7096        return editGroupdb;
7097    }
7098
7099
7100
7101    private Composite dbdb_transformationsCreate(Composite parent) {
7102        String JavaDoc defKey;
7103        String JavaDoc defaultString;
7104        boolean defaultBool = false;
7105        String JavaDoc defaultArray;
7106       
7107        Group editGroupdbdb_transformations = new Group(parent, SWT.NONE);
7108        GridLayout layout = new GridLayout();
7109        editGroupdbdb_transformations.setLayout(layout);
7110    
7111        editGroupdbdb_transformations.setText("Transformations");
7112        
7113        editGroupdbdb_transformations.setData("id", "dbdb_transformations");
7114        
7115        String JavaDoc descdbdb_transformations = "The Dava back-end with all its transformations";
7116        if (descdbdb_transformations.length() > 0) {
7117            Label descLabeldbdb_transformations = new Label(editGroupdbdb_transformations, SWT.WRAP);
7118            descLabeldbdb_transformations.setText(descdbdb_transformations);
7119        }
7120        OptionData [] data;
7121        
7122        
7123        
7124        
7125        defKey = "p"+" "+"db.transformations"+" "+"enabled";
7126        defKey = defKey.trim();
7127
7128        if (isInDefList(defKey)) {
7129            defaultBool = getBoolDef(defKey);
7130        }
7131        else {
7132            
7133            defaultBool = true;
7134            
7135        }
7136
7137        setdbdb_transformationsenabled_widget(new BooleanOptionWidget(editGroupdbdb_transformations, SWT.NONE, new OptionData("Enabled", "p", "db.transformations","enabled", "\n", defaultBool)));
7138        
7139        
7140
7141        
7142        return editGroupdbdb_transformations;
7143    }
7144
7145
7146
7147    private Composite dbdb_renamerCreate(Composite parent) {
7148        String JavaDoc defKey;
7149        String JavaDoc defaultString;
7150        boolean defaultBool = false;
7151        String JavaDoc defaultArray;
7152       
7153        Group editGroupdbdb_renamer = new Group(parent, SWT.NONE);
7154        GridLayout layout = new GridLayout();
7155        editGroupdbdb_renamer.setLayout(layout);
7156    
7157        editGroupdbdb_renamer.setText("Renamer");
7158        
7159        editGroupdbdb_renamer.setData("id", "dbdb_renamer");
7160        
7161        String JavaDoc descdbdb_renamer = "Apply heuristics based naming of local variables";
7162        if (descdbdb_renamer.length() > 0) {
7163            Label descLabeldbdb_renamer = new Label(editGroupdbdb_renamer, SWT.WRAP);
7164            descLabeldbdb_renamer.setText(descdbdb_renamer);
7165        }
7166        OptionData [] data;
7167        
7168        
7169        
7170        
7171        defKey = "p"+" "+"db.renamer"+" "+"enabled";
7172        defKey = defKey.trim();
7173
7174        if (isInDefList(defKey)) {
7175            defaultBool = getBoolDef(defKey);
7176        }
7177        else {
7178            
7179            defaultBool = false;
7180            
7181        }
7182
7183        setdbdb_renamerenabled_widget(new BooleanOptionWidget(editGroupdbdb_renamer, SWT.NONE, new OptionData("Enabled", "p", "db.renamer","enabled", "\n", defaultBool)));
7184        
7185        
7186        
7187        defKey = "p"+" "+"db.renamer"+" "+"remove-fully-qualified";
7188        defKey = defKey.trim();
7189
7190        if (isInDefList(defKey)) {
7191            defaultBool = getBoolDef(defKey);
7192        }
7193        else {
7194            
7195            defaultBool = false;
7196            
7197        }
7198
7199        setdbdb_renamerremove_fully_qualified_widget(new BooleanOptionWidget(editGroupdbdb_renamer, SWT.NONE, new OptionData("Remove Fully Qualified Names", "p", "db.renamer","remove-fully-qualified", "\nThe conversion works to remove java.lang. from java.lang.String \netc. However this might not always be \ncorrect and might cause recompilability errors in which case the \nflag should be turned off.", defaultBool)));
7200        
7201        
7202
7203        
7204        return editGroupdbdb_renamer;
7205    }
7206
7207
7208
7209    private Composite dbdb_deobfuscateCreate(Composite parent) {
7210        String JavaDoc defKey;
7211        String JavaDoc defaultString;
7212        boolean defaultBool = false;
7213        String JavaDoc defaultArray;
7214       
7215        Group editGroupdbdb_deobfuscate = new Group(parent, SWT.NONE);
7216        GridLayout layout = new GridLayout();
7217        editGroupdbdb_deobfuscate.setLayout(layout);
7218    
7219        editGroupdbdb_deobfuscate.setText("De-obfuscate");
7220        
7221        editGroupdbdb_deobfuscate.setData("id", "dbdb_deobfuscate");
7222        
7223        String JavaDoc descdbdb_deobfuscate = " Apply de-obfuscation analyses";
7224        if (descdbdb_deobfuscate.length() > 0) {
7225            Label descLabeldbdb_deobfuscate = new Label(editGroupdbdb_deobfuscate, SWT.WRAP);
7226            descLabeldbdb_deobfuscate.setText(descdbdb_deobfuscate);
7227        }
7228        OptionData [] data;
7229        
7230        
7231        
7232        
7233        defKey = "p"+" "+"db.deobfuscate"+" "+"enabled";
7234        defKey = defKey.trim();
7235
7236        if (isInDefList(defKey)) {
7237            defaultBool = getBoolDef(defKey);
7238        }
7239        else {
7240            
7241            defaultBool = true;
7242            
7243        }
7244
7245        setdbdb_deobfuscateenabled_widget(new BooleanOptionWidget(editGroupdbdb_deobfuscate, SWT.NONE, new OptionData("Enabled", "p", "db.deobfuscate","enabled", "\n", defaultBool)));
7246        
7247        
7248
7249        
7250        return editGroupdbdb_deobfuscate;
7251    }
7252
7253
7254
7255    private Composite dbdb_force_recompileCreate(Composite parent) {
7256        String JavaDoc defKey;
7257        String JavaDoc defaultString;
7258        boolean defaultBool = false;
7259        String JavaDoc defaultArray;
7260       
7261        Group editGroupdbdb_force_recompile = new Group(parent, SWT.NONE);
7262        GridLayout layout = new GridLayout();
7263        editGroupdbdb_force_recompile.setLayout(layout);
7264    
7265        editGroupdbdb_force_recompile.setText("Force Recompilability");
7266        
7267        editGroupdbdb_force_recompile.setData("id", "dbdb_force_recompile");
7268        
7269        String JavaDoc descdbdb_force_recompile = " Try to get recompilable code.";
7270        if (descdbdb_force_recompile.length() > 0) {
7271            Label descLabeldbdb_force_recompile = new Label(editGroupdbdb_force_recompile, SWT.WRAP);
7272            descLabeldbdb_force_recompile.setText(descdbdb_force_recompile);
7273        }
7274        OptionData [] data;
7275        
7276        
7277        
7278        
7279        defKey = "p"+" "+"db.force-recompile"+" "+"enabled";
7280        defKey = defKey.trim();
7281
7282        if (isInDefList(defKey)) {
7283            defaultBool = getBoolDef(defKey);
7284        }
7285        else {
7286            
7287            defaultBool = true;
7288            
7289        }
7290
7291        setdbdb_force_recompileenabled_widget(new BooleanOptionWidget(editGroupdbdb_force_recompile, SWT.NONE, new OptionData("Enabled", "p", "db.force-recompile","enabled", "\n", defaultBool)));
7292        
7293        
7294
7295        
7296        return editGroupdbdb_force_recompile;
7297    }
7298
7299
7300
7301    private Composite Application_Mode_OptionsCreate(Composite parent) {
7302        String JavaDoc defKey;
7303        String JavaDoc defaultString;
7304        boolean defaultBool = false;
7305        String JavaDoc defaultArray;
7306       
7307        Group editGroupApplication_Mode_Options = new Group(parent, SWT.NONE);
7308        GridLayout layout = new GridLayout();
7309        editGroupApplication_Mode_Options.setLayout(layout);
7310    
7311        editGroupApplication_Mode_Options.setText("Application Mode Options");
7312        
7313        editGroupApplication_Mode_Options.setData("id", "Application_Mode_Options");
7314        
7315        String JavaDoc descApplication_Mode_Options = "";
7316        if (descApplication_Mode_Options.length() > 0) {
7317            Label descLabelApplication_Mode_Options = new Label(editGroupApplication_Mode_Options, SWT.WRAP);
7318            descLabelApplication_Mode_Options.setText(descApplication_Mode_Options);
7319        }
7320        OptionData [] data;
7321        
7322        
7323        
7324        
7325        defKey = ""+" "+""+" "+"include-all";
7326        defKey = defKey.trim();
7327
7328        if (isInDefList(defKey)) {
7329            defaultBool = getBoolDef(defKey);
7330        }
7331        else {
7332            
7333            defaultBool = false;
7334            
7335        }
7336
7337        setApplication_Mode_Optionsinclude_all_widget(new BooleanOptionWidget(editGroupApplication_Mode_Options, SWT.NONE, new OptionData("Include All Packages", "", "","include-all", "\nSoot uses a default list of packages (such as java.) which are \ndeemed to contain library classes. This switch removes the \ndefault packages from the list of packages containing library \nclasses. Individual packages can then be added using the exclude \noption. ", defaultBool)));
7338        
7339        
7340
7341        defKey = ""+" "+""+" "+"i";
7342        defKey = defKey.trim();
7343
7344        if (isInDefList(defKey)) {
7345            defaultString = getArrayDef(defKey);
7346        }
7347        else {
7348            
7349            defaultString = "";
7350            
7351        }
7352
7353        setApplication_Mode_Optionsinclude_widget(new ListOptionWidget(editGroupApplication_Mode_Options, SWT.NONE, new OptionData("Include Package", "", "","i", "\nDesignate classes in packages whose names begin with PKG (e.g. \njava.util.) as application classes which should be analyzed and \noutput. This option allows you to selectively analyze classes in \nsome packages that Soot normally treats as library classes. You \ncan use the include option multiple times, to designate the \nclasses of multiple packages as application classes. If you \nspecify both include and exclude options, first the classes from \nall excluded packages are marked as library classes, then the \nclasses from all included packages are marked as application \nclasses.", defaultString)));
7354        
7355
7356        defKey = ""+" "+""+" "+"x";
7357        defKey = defKey.trim();
7358
7359        if (isInDefList(defKey)) {
7360            defaultString = getArrayDef(defKey);
7361        }
7362        else {
7363            
7364            defaultString = "";
7365            
7366        }
7367
7368        setApplication_Mode_Optionsexclude_widget(new ListOptionWidget(editGroupApplication_Mode_Options, SWT.NONE, new OptionData("Exclude Package", "", "","x", "\nExcludes any classes in packages whose names begin with PKG \nfrom the set of application classes which are analyzed and \noutput, treating them as library classes instead. This option \nallows you to selectively exclude classes which would normally \nbe treated as application classes You can use the exclude \noption multiple times, to designate the classes of multiple \npackages as library classes. If you specify both include and \nexclude options, first the classes from all excluded packages \nare marked as library classes, then the classes from all \nincluded packages are marked as application classes.", defaultString)));
7369        
7370
7371        defKey = ""+" "+""+" "+"dynamic-class";
7372        defKey = defKey.trim();
7373
7374        if (isInDefList(defKey)) {
7375            defaultString = getArrayDef(defKey);
7376        }
7377        else {
7378            
7379            defaultString = "";
7380            
7381        }
7382
7383        setApplication_Mode_Optionsdynamic_class_widget(new ListOptionWidget(editGroupApplication_Mode_Options, SWT.NONE, new OptionData("Dynamic Classes", "", "","dynamic-class", "\nMark CLASS as a class which the application may load \ndynamically. Soot will read it as a library class even if it is \nnot referenced from the argument classes. This permits whole \nprogram optimizations on programs which load classes dynamically \nif the set of classes that can be loaded is known at compile \ntime. You can use the dynamic class option multiple times to \nspecify more than one dynamic class.", defaultString)));
7384        
7385
7386        defKey = ""+" "+""+" "+"dynamic-dir";
7387        defKey = defKey.trim();
7388
7389        if (isInDefList(defKey)) {
7390            defaultString = getArrayDef(defKey);
7391        }
7392        else {
7393            
7394            defaultString = "";
7395            
7396        }
7397
7398        setApplication_Mode_Optionsdynamic_dir_widget(new ListOptionWidget(editGroupApplication_Mode_Options, SWT.NONE, new OptionData("Dynamic Directories", "", "","dynamic-dir", "\nMark all class files in DIR as classes that may be loaded \ndynamically. Soot will read them as library classes even if they \nare not referenced from the argument classes. You can specify \nmore than one directory of potentially dynamic classes by \nspecifying multiple dynamic directory options.", defaultString)));
7399        
7400
7401        defKey = ""+" "+""+" "+"dynamic-package";
7402        defKey = defKey.trim();
7403
7404        if (isInDefList(defKey)) {
7405            defaultString = getArrayDef(defKey);
7406        }
7407        else {
7408            
7409            defaultString = "";
7410            
7411        }
7412
7413        setApplication_Mode_Optionsdynamic_package_widget(new ListOptionWidget(editGroupApplication_Mode_Options, SWT.NONE, new OptionData("Dynamic Package", "", "","dynamic-package", "\nMarks all class files belonging to the package PKG or any of \nits subpackages as classes which the application may load \ndynamically. Soot will read all classes in PKG as library \nclasses, even if they are not referenced by any of the argument \nclasses.To specify more than one dynamic package, use the \ndynamic package option multiple times.", defaultString)));
7414        
7415
7416        
7417        return editGroupApplication_Mode_Options;
7418    }
7419
7420
7421
7422    private Composite Input_Attribute_OptionsCreate(Composite parent) {
7423        String JavaDoc defKey;
7424        String JavaDoc defaultString;
7425        boolean defaultBool = false;
7426        String JavaDoc defaultArray;
7427       
7428        Group editGroupInput_Attribute_Options = new Group(parent, SWT.NONE);
7429        GridLayout layout = new GridLayout();
7430        editGroupInput_Attribute_Options.setLayout(layout);
7431    
7432        editGroupInput_Attribute_Options.setText("Input Attribute Options");
7433        
7434        editGroupInput_Attribute_Options.setData("id", "Input_Attribute_Options");
7435        
7436        String JavaDoc descInput_Attribute_Options = "";
7437        if (descInput_Attribute_Options.length() > 0) {
7438            Label descLabelInput_Attribute_Options = new Label(editGroupInput_Attribute_Options, SWT.WRAP);
7439            descLabelInput_Attribute_Options.setText(descInput_Attribute_Options);
7440        }
7441        OptionData [] data;
7442        
7443        
7444        
7445        
7446        defKey = ""+" "+""+" "+"keep-line-number";
7447        defKey = defKey.trim();
7448
7449        if (isInDefList(defKey)) {
7450            defaultBool = getBoolDef(defKey);
7451        }
7452        else {
7453            
7454            defaultBool = false;
7455            
7456        }
7457
7458        setInput_Attribute_Optionskeep_line_number_widget(new BooleanOptionWidget(editGroupInput_Attribute_Options, SWT.NONE, new OptionData("Keep Line Number", "", "","keep-line-number", "\nPreserve line number tables for class files throughout the \ntransformations. ", defaultBool)));
7459        
7460        
7461        
7462        defKey = ""+" "+""+" "+"keep-bytecode-offset";
7463        defKey = defKey.trim();
7464
7465        if (isInDefList(defKey)) {
7466            defaultBool = getBoolDef(defKey);
7467        }
7468        else {
7469            
7470            defaultBool = false;
7471            
7472        }
7473
7474        setInput_Attribute_Optionskeep_offset_widget(new BooleanOptionWidget(editGroupInput_Attribute_Options, SWT.NONE, new OptionData("Keep Bytecode Offset", "", "","keep-bytecode-offset", "\nMaintain bytecode offset tables for class files throughout the \ntransformations.", defaultBool)));
7475        
7476        
7477
7478        
7479        return editGroupInput_Attribute_Options;
7480    }
7481
7482
7483
7484    private Composite Annotation_OptionsCreate(Composite parent) {
7485        String JavaDoc defKey;
7486        String JavaDoc defaultString;
7487        boolean defaultBool = false;
7488        String JavaDoc defaultArray;
7489       
7490        Group editGroupAnnotation_Options = new Group(parent, SWT.NONE);
7491        GridLayout layout = new GridLayout();
7492        editGroupAnnotation_Options.setLayout(layout);
7493    
7494        editGroupAnnotation_Options.setText("Annotation Options");
7495        
7496        editGroupAnnotation_Options.setData("id", "Annotation_Options");
7497        
7498        String JavaDoc descAnnotation_Options = "";
7499        if (descAnnotation_Options.length() > 0) {
7500            Label descLabelAnnotation_Options = new Label(editGroupAnnotation_Options, SWT.WRAP);
7501            descLabelAnnotation_Options.setText(descAnnotation_Options);
7502        }
7503        OptionData [] data;
7504        
7505        
7506        
7507        
7508        defKey = ""+" "+""+" "+"annot-purity";
7509        defKey = defKey.trim();
7510
7511        if (isInDefList(defKey)) {
7512            defaultBool = getBoolDef(defKey);
7513        }
7514        else {
7515            
7516            defaultBool = false;
7517            
7518        }
7519
7520        setAnnotation_Optionsannot_purity_widget(new BooleanOptionWidget(editGroupAnnotation_Options, SWT.NONE, new OptionData("Purity Annotation [AM]", "", "","annot-purity", "\nPurity anaysis implemented by Antoine Mine and based on the \npaper A Combined Pointer and Purity Analysis Java Programs by \nAlexandru Salcianu and Martin Rinard. ", defaultBool)));
7521        
7522        
7523        
7524        defKey = ""+" "+""+" "+"annot-nullpointer";
7525        defKey = defKey.trim();
7526
7527        if (isInDefList(defKey)) {
7528            defaultBool = getBoolDef(defKey);
7529        }
7530        else {
7531            
7532            defaultBool = false;
7533            
7534        }
7535
7536        setAnnotation_Optionsannot_nullpointer_widget(new BooleanOptionWidget(editGroupAnnotation_Options, SWT.NONE, new OptionData("Null Pointer Annotation", "", "","annot-nullpointer", "\nPerform a static analysis of which dereferenced pointers may \nhave null values, and annotate class files with attributes \nencoding the results of the analysis. For details, see the \ndocumentation for Null Pointer Annotation and for the Array \nBounds and Null Pointer Check Tag Aggregator. ", defaultBool)));
7537        
7538        
7539        
7540        defKey = ""+" "+""+" "+"annot-arraybounds";
7541        defKey = defKey.trim();
7542
7543        if (isInDefList(defKey)) {
7544            defaultBool = getBoolDef(defKey);
7545        }
7546        else {
7547            
7548            defaultBool = false;
7549            
7550        }
7551
7552        setAnnotation_Optionsannot_arraybounds_widget(new BooleanOptionWidget(editGroupAnnotation_Options, SWT.NONE, new OptionData("Array Bounds Annotation", "", "","annot-arraybounds", "\nPerform a static analysis of which array bounds checks may \nsafely be eliminated and annotate output class files with \nattributes encoding the results of the analysis. For details, \nsee the documentation for Array Bounds Annotation and for the \nArray Bounds and Null Pointer Check Tag Aggregator. ", defaultBool)));
7553        
7554        
7555        
7556        defKey = ""+" "+""+" "+"annot-side-effect";
7557        defKey = defKey.trim();
7558
7559        if (isInDefList(defKey)) {
7560            defaultBool = getBoolDef(defKey);
7561        }
7562        else {
7563            
7564            defaultBool = false;
7565            
7566        }
7567
7568        setAnnotation_Optionsannot_side_effect_widget(new BooleanOptionWidget(editGroupAnnotation_Options, SWT.NONE, new OptionData("Side effect annotation", "", "","annot-side-effect", "\nEnable the generation of side-effect attributes. ", defaultBool)));
7569        
7570        
7571        
7572        defKey = ""+" "+""+" "+"annot-fieldrw";
7573        defKey = defKey.trim();
7574
7575        if (isInDefList(defKey)) {
7576            defaultBool = getBoolDef(defKey);
7577        }
7578        else {
7579            
7580            defaultBool = false;
7581            
7582        }
7583
7584        setAnnotation_Optionsannot_fieldrw_widget(new BooleanOptionWidget(editGroupAnnotation_Options, SWT.NONE, new OptionData("Field read/write annotation", "", "","annot-fieldrw", "\nEnable the generation of field read/write attributes.", defaultBool)));
7585        
7586        
7587
7588        
7589        return editGroupAnnotation_Options;
7590    }
7591
7592
7593
7594    private Composite Miscellaneous_OptionsCreate(Composite parent) {
7595        String JavaDoc defKey;
7596        String JavaDoc defaultString;
7597        boolean defaultBool = false;
7598        String JavaDoc defaultArray;
7599       
7600        Group editGroupMiscellaneous_Options = new Group(parent, SWT.NONE);
7601        GridLayout layout = new GridLayout();
7602        editGroupMiscellaneous_Options.setLayout(layout);
7603    
7604        editGroupMiscellaneous_Options.setText("Miscellaneous Options");
7605        
7606        editGroupMiscellaneous_Options.setData("id", "Miscellaneous_Options");
7607        
7608        String JavaDoc descMiscellaneous_Options = "";
7609        if (descMiscellaneous_Options.length() > 0) {
7610            Label descLabelMiscellaneous_Options = new Label(editGroupMiscellaneous_Options, SWT.WRAP);
7611            descLabelMiscellaneous_Options.setText(descMiscellaneous_Options);
7612        }
7613        OptionData [] data;
7614        
7615        
7616        
7617        
7618        defKey = ""+" "+""+" "+"time";
7619        defKey = defKey.trim();
7620
7621        if (isInDefList(defKey)) {
7622            defaultBool = getBoolDef(defKey);
7623        }
7624        else {
7625            
7626            defaultBool = false;
7627            
7628        }
7629
7630        setMiscellaneous_Optionstime_widget(new BooleanOptionWidget(editGroupMiscellaneous_Options, SWT.NONE, new OptionData("Time", "", "","time", "\nReport the time required to perform some of Soot's \ntransformations. ", defaultBool)));
7631        
7632        
7633        
7634        defKey = ""+" "+""+" "+"subtract-gc";
7635        defKey = defKey.trim();
7636
7637        if (isInDefList(defKey)) {
7638            defaultBool = getBoolDef(defKey);
7639        }
7640        else {
7641            
7642            defaultBool = false;
7643            
7644        }
7645
7646        setMiscellaneous_Optionssubtract_gc_widget(new BooleanOptionWidget(editGroupMiscellaneous_Options, SWT.NONE, new OptionData("Subtract Garbage Collection Time", "", "","subtract-gc", "\nAttempt to subtract time spent in garbage collection from the \nreports of times required for transformations. ", defaultBool)));
7647        
7648        
7649
7650        
7651        return editGroupMiscellaneous_Options;
7652    }
7653
7654
7655
7656
7657}
7658
7659
Popular Tags