From ff7765e532e2eafeec9b5f8da92b3f604f89872b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Horv=C3=A1th=20D=C3=A1vid?= Date: Fri, 14 May 2021 13:07:13 +0200 Subject: [PATCH] fixing rules not showing that they are negated --- .../ifl/ide/gui/element/RuleElementUI.java | 30 ++--- .../ide/gui/rulecreator/SortRuleCreator.java | 114 ------------------ .../org.eclipse.sed.ifl.feature/feature.xml | 2 +- .../org.eclipse.sed.ifl.update/category.xml | 4 +- 4 files changed, 13 insertions(+), 137 deletions(-) delete mode 100644 org.eclipse.sed.ifl.root/bundles/org.eclipse.sed.ifl/src/org/eclipse/sed/ifl/ide/gui/rulecreator/SortRuleCreator.java diff --git a/org.eclipse.sed.ifl.root/bundles/org.eclipse.sed.ifl/src/org/eclipse/sed/ifl/ide/gui/element/RuleElementUI.java b/org.eclipse.sed.ifl.root/bundles/org.eclipse.sed.ifl/src/org/eclipse/sed/ifl/ide/gui/element/RuleElementUI.java index 17b5fbd5..cc587caf 100644 --- a/org.eclipse.sed.ifl.root/bundles/org.eclipse.sed.ifl/src/org/eclipse/sed/ifl/ide/gui/element/RuleElementUI.java +++ b/org.eclipse.sed.ifl.root/bundles/org.eclipse.sed.ifl/src/org/eclipse/sed/ifl/ide/gui/element/RuleElementUI.java @@ -1,12 +1,10 @@ package org.eclipse.sed.ifl.ide.gui.element; -import org.eclipse.sed.ifl.control.score.SortingArg; import org.eclipse.sed.ifl.control.score.filter.BooleanRule; import org.eclipse.sed.ifl.control.score.filter.DoubleRule; import org.eclipse.sed.ifl.control.score.filter.LastActionRule; import org.eclipse.sed.ifl.control.score.filter.Rule; import org.eclipse.sed.ifl.control.score.filter.StringRule; -import org.eclipse.sed.ifl.control.score.filter.SortRule; import org.eclipse.sed.ifl.ide.gui.icon.ScoreStatus; import org.eclipse.sed.ifl.util.event.INonGenericListenerCollection; import org.eclipse.sed.ifl.util.event.core.NonGenericListenerCollection; @@ -113,24 +111,28 @@ protected void checkSubclass() { private String setRuleValueLabelText() { String rString = ""; - String containsString = null; + String containsString = "contains "; + String negatedString = ""; + if(this.rule.isNegated()) { + negatedString = "not "; + } switch(this.rule.getDomain()) { case "Score": rString = ((DoubleRule)this.rule).getRelation().concat(" ").concat(Double.toString(((DoubleRule)this.rule).getValue())); icon = ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/rule_score_3.png"); break; - case "Name": containsString = ((StringRule)this.rule).isNegated() ? "not contains: " : "contains: "; + case "Name": rString = containsString.concat(((StringRule)this.rule).getValue()); icon = ((StringRule)this.rule).isNegated() ? ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/containment_no.png") : ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/containment_yes.png"); break; - case "Signature": containsString = ((StringRule)this.rule).isNegated() ? "not contains: " : "contains: "; + case "Signature": rString = containsString.concat(((StringRule)this.rule).getValue()); icon = ((StringRule)this.rule).isNegated() ? ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/containment_no.png") : ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/containment_yes.png"); break; - case "Parent type": containsString = ((StringRule)this.rule).isNegated() ? "not contains: " : "contains: "; + case "Parent type": rString = containsString.concat(((StringRule)this.rule).getValue()); icon = ((StringRule)this.rule).isNegated() ? ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/containment_no.png") : ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/containment_yes.png"); break; - case "Path": containsString = ((StringRule)this.rule).isNegated() ? "not contains: " : "contains: "; + case "Path": rString = containsString.concat(((StringRule)this.rule).getValue()); icon = ((StringRule)this.rule).isNegated() ? ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/containment_no.png") : ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/containment_yes.png"); break; @@ -141,7 +143,7 @@ private String setRuleValueLabelText() { icon = ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/context_size.png");; break; case "Interactivity": rString = ((BooleanRule)this.rule).isValue() == true ? "interactive" : "not interactive"; - icon = ((BooleanRule)this.rule).isValue() ? ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/false.png") : ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/true.png"); + icon = ((BooleanRule)this.rule).isValue() ? ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/true.png") : ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/false.png"); break; case "Last action": ScoreStatus status = ((LastActionRule)this.rule).getStatus(); if(status.equals(ScoreStatus.INCREASED)) @@ -152,18 +154,8 @@ private String setRuleValueLabelText() { rString = "unchanged"; icon = ResourceManager.getPluginImage("org.eclipse.sed.ifl", ((LastActionRule)this.rule).getStatus().getIconPath()); break; - case "Sort": SortingArg arg = ((SortRule)this.rule).getArg(); - String sortDomain = arg.getDomain(); - if(arg.isDescending()) { - rString = sortDomain.concat(" descending"); - icon = ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/down_arrow16.png"); - } else if(!arg.isDescending()) { - rString = sortDomain.concat(" ascending"); - icon = ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/up_arrow16.png"); - } - break; } - return rString; + return negatedString.concat(rString); } public void setResultNumber(int resultNumber) { diff --git a/org.eclipse.sed.ifl.root/bundles/org.eclipse.sed.ifl/src/org/eclipse/sed/ifl/ide/gui/rulecreator/SortRuleCreator.java b/org.eclipse.sed.ifl.root/bundles/org.eclipse.sed.ifl/src/org/eclipse/sed/ifl/ide/gui/rulecreator/SortRuleCreator.java deleted file mode 100644 index 67d91b74..00000000 --- a/org.eclipse.sed.ifl.root/bundles/org.eclipse.sed.ifl/src/org/eclipse/sed/ifl/ide/gui/rulecreator/SortRuleCreator.java +++ /dev/null @@ -1,114 +0,0 @@ -package org.eclipse.sed.ifl.ide.gui.rulecreator; - -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Label; -import org.eclipse.sed.ifl.control.score.SortingArg; -import org.eclipse.sed.ifl.control.score.filter.Rule; -import org.eclipse.sed.ifl.control.score.filter.SortRule; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.SelectionListener; -import org.eclipse.swt.widgets.Combo; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.widgets.Button; -import org.eclipse.wb.swt.ResourceManager; - -public class SortRuleCreator extends Composite implements RuleCreator { - - private String domain; - - private Combo sortByCombo; - private Button sortDirectionButton; - - /** - * Create the composite. - * @param parent - * @param style - */ - public SortRuleCreator(Composite parent, int style, String domain) { - super(parent, style); - setLayout(new GridLayout(2, false)); - - this.domain = domain; - - Label sortByLabel = new Label(this, SWT.NONE); - sortByLabel.setText("Sort by:"); - - sortByCombo = new Combo(this, SWT.READ_ONLY); - sortByCombo.setItems(new String[] {"Score", "Name", "Signature", "Parent type", "Path", "Position", "Context size", "Interactivity", "Last action"}); - sortByCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); - sortByCombo.setText("Score"); - - Label sortDirectionLabel = new Label(this, SWT.NONE); - sortDirectionLabel.setText("Sort direction:"); - - sortDirectionButton = new Button(this, SWT.TOGGLE); - sortDirectionButton.setImage(ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/down_arrow16.png")); - sortDirectionButton.setText("descending"); - sortDirectionButton.addSelectionListener(new SelectionListener() { - - @Override - public void widgetSelected(SelectionEvent e) { - sortDirectionButton.setImage(sortDirectionButton.getSelection() ? - ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/up_arrow16.png") : - ResourceManager.getPluginImage("org.eclipse.sed.ifl", "icons/down_arrow16.png")); - sortDirectionButton.setText(sortDirectionButton.getSelection() ? "ascending" : "descending"); - sortDirectionButton.requestLayout(); - } - - @Override - public void widgetDefaultSelected(SelectionEvent e) { - } - - }); - - } - - @Override - protected void checkSubclass() { - // Disable the check that prevents subclassing of SWT components - } - - @Override - public Rule getRule() { - - int dir; - if(sortDirectionButton.getSelection()) { - dir = SWT.UP; - } else { - dir = SWT.DOWN; - } - - SortingArg arg; - String text = sortByCombo.getText(); - - switch(text) { - case "Score": arg = SortingArg.Score; - break; - case "Name": arg = SortingArg.Name; - break; - case "Signature": arg = SortingArg.Signature; - break; - case "Parent type": arg = SortingArg.ParentType; - break; - case "Path": arg = SortingArg.Path; - break; - case "Context size": arg = SortingArg.ContextSize; - break; - case "Position": arg = SortingArg.Position; - break; - case "Interactivity": arg = SortingArg.Interactivity; - break; - case "Last action": arg = SortingArg.LastAction; - break; - default: arg = SortingArg.Score; - break; - } - - arg.setDescending(dir == SWT.DOWN); - - return new SortRule(domain, arg); - } - -} diff --git a/org.eclipse.sed.ifl.root/features/org.eclipse.sed.ifl.feature/feature.xml b/org.eclipse.sed.ifl.root/features/org.eclipse.sed.ifl.feature/feature.xml index 1e00e2e6..39c58b67 100644 --- a/org.eclipse.sed.ifl.root/features/org.eclipse.sed.ifl.feature/feature.xml +++ b/org.eclipse.sed.ifl.root/features/org.eclipse.sed.ifl.feature/feature.xml @@ -2,7 +2,7 @@ diff --git a/org.eclipse.sed.ifl.root/releng/org.eclipse.sed.ifl.update/category.xml b/org.eclipse.sed.ifl.root/releng/org.eclipse.sed.ifl.update/category.xml index 34344da3..a9230e9a 100644 --- a/org.eclipse.sed.ifl.root/releng/org.eclipse.sed.ifl.update/category.xml +++ b/org.eclipse.sed.ifl.root/releng/org.eclipse.sed.ifl.update/category.xml @@ -1,8 +1,6 @@ - - - +