DetectorFactoryCollection.instance();
	private void buildBugCategoryList(Composite categoryGroup, final IProject project) {		List<String> bugCategoryList = new LinkedList<String>(I18N.instance().getBugCategories());		List<Button> checkBoxList = new LinkedList<Button>();		for (Iterator<String> i = bugCategoryList.iterator(); i.hasNext(); ) {			String category = i.next();			Button checkBox = new Button(categoryGroup, SWT.CHECK);			checkBox.setText(I18N.instance().getBugCategoryDescription(category));			checkBox.setSelection(origUserPreferences.getFilterSettings().containsCategory(category));			GridData layoutData = new GridData();			layoutData.horizontalIndent = 15;			checkBox.setLayoutData(layoutData);			// Every time a checkbox is clicked, rebuild the detector factory table			// to show only relevant entries			checkBox.addListener(SWT.Selection,				new Listener(){					public void handleEvent(Event e){						System.out.println("Category preferences changed!");						syncSelectedCategories();						populateAvailableRulesTable(project);					}				}			);			checkBoxList.add(checkBox);		}		this.chkEnableBugCategoryList = checkBoxList.toArray(new Button[checkBoxList.size()]);		this.bugCategoryList =  bugCategoryList.toArray(new String[bugCategoryList.size()]);	}