Author: dazarov
Date: 2011-05-20 14:14:37 -0400 (Fri, 20 May 2011)
New Revision: 31403
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/xpl/AddQualifiersToBeanComposite.java
Log:
https://issues.jboss.org/browse/JBIDE-8977
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/xpl/AddQualifiersToBeanComposite.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/xpl/AddQualifiersToBeanComposite.java 2011-05-20
16:28:05 UTC (rev 31402)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/wizard/xpl/AddQualifiersToBeanComposite.java 2011-05-20
18:14:37 UTC (rev 31403)
@@ -67,6 +67,7 @@
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.dialogs.SearchPattern;
+import org.jboss.tools.cdi.core.CDIConstants;
import org.jboss.tools.cdi.core.CDICoreMessages;
import org.jboss.tools.cdi.core.CDICorePlugin;
import org.jboss.tools.cdi.core.IBean;
@@ -108,6 +109,10 @@
protected boolean isComplete = true;
+ private boolean hasDefaultQualifier = false;
+
+ private IQualifier defaultQualifier, namedQualifier;
+
private ILabelProvider labelProvider = new QualifiersListLabelProvider();
public AddQualifiersToBeanComposite(Composite parent, WizardPage wizard) {
@@ -125,6 +130,17 @@
public void init(IBean bean){
this.bean = bean;
originalQualifiers = new ArrayList<IQualifier>(bean.getQualifiers());
+
+ defaultQualifier =
bean.getCDIProject().getQualifier(CDIConstants.DEFAULT_QUALIFIER_TYPE_NAME);
+ namedQualifier =
bean.getCDIProject().getQualifier(CDIConstants.NAMED_QUALIFIER_TYPE_NAME);
+
+ for(IQualifier q : originalQualifiers){
+ if(q.equals(defaultQualifier)){
+ hasDefaultQualifier = true;
+ break;
+ }
+ }
+
deployedListViewer.setInput(originalQualifiers);
qualifiers.clear();
@@ -418,7 +434,6 @@
label = new Label(this, SWT.NONE);
label.setText("");
-
final Button createQualifier = new Button(this, SWT.PUSH);
createQualifier.setText(CDIUIMessages.ADD_QUALIFIERS_TO_BEAN_WIZARD_CREATE_NEW_QUALIFIER);
@@ -589,6 +604,20 @@
deployedListViewer.remove(qualifier);
}
}
+
+ if(hasDefaultQualifier){
+ if(deployed.isEmpty() || (namedQualifier != null && deployed.size() == 1
&& deployed.contains(namedQualifier))) {
+ if(!originalQualifiers.contains(defaultQualifier)){
+ originalQualifiers.add(defaultQualifier);
+ deployedListViewer.add(defaultQualifier);
+ }
+ }else{
+ if(originalQualifiers.contains(defaultQualifier)){
+ originalQualifiers.remove(defaultQualifier);
+ deployedListViewer.remove(defaultQualifier);
+ }
+ }
+ }
setEnablement();
}