From e5d015e9a706f9bda8928bd7de0e5726a6ef7d4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Abel=20G=C3=B3mez?= Date: Thu, 8 Jun 2017 21:50:27 +0200 Subject: [PATCH] Add UpdateOperation label provider --- .../plugin.xml | 4 ++ .../UpdateOperationLabelProvider.java | 39 +++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 plugins/io.github.abelgomez.ps.profile.ui/src/io/github/abelgomez/ps/profile/ui/providers/UpdateOperationLabelProvider.java diff --git a/plugins/io.github.abelgomez.ps.profile.ui/plugin.xml b/plugins/io.github.abelgomez.ps.profile.ui/plugin.xml index 50abf4f..d8a02a5 100644 --- a/plugins/io.github.abelgomez.ps.profile.ui/plugin.xml +++ b/plugins/io.github.abelgomez.ps.profile.ui/plugin.xml @@ -7,6 +7,10 @@ priority="10" provider="io.github.abelgomez.ps.profile.ui.providers.AssignmentOperationLabelProvider"> + + diff --git a/plugins/io.github.abelgomez.ps.profile.ui/src/io/github/abelgomez/ps/profile/ui/providers/UpdateOperationLabelProvider.java b/plugins/io.github.abelgomez.ps.profile.ui/src/io/github/abelgomez/ps/profile/ui/providers/UpdateOperationLabelProvider.java new file mode 100644 index 0000000..5887a52 --- /dev/null +++ b/plugins/io.github.abelgomez.ps.profile.ui/src/io/github/abelgomez/ps/profile/ui/providers/UpdateOperationLabelProvider.java @@ -0,0 +1,39 @@ +package io.github.abelgomez.ps.profile.ui.providers; + +import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry; +import org.eclipse.papyrus.infra.services.labelprovider.service.IFilteredLabelProvider; +import org.eclipse.papyrus.infra.ui.emf.providers.EMFLabelProvider; +import org.eclipse.swt.graphics.Image; +import org.eclipse.uml2.uml.UMLFactory; +import org.eclipse.uml2.uml.edit.providers.DataTypeItemProvider; +import org.eclipse.uml2.uml.edit.providers.UMLItemProviderAdapterFactory; + +import io.github.abelgomez.ps.UpdateOperation; + +public class UpdateOperationLabelProvider extends EMFLabelProvider implements IFilteredLabelProvider { + + private static final Image PROPERTY_IMAGE = ExtendedImageRegistry.getInstance().getImage(new DataTypeItemProvider( + new UMLItemProviderAdapterFactory()).getImage(UMLFactory.eINSTANCE.createProperty())); + + @Override + public String getText(Object element) { + UpdateOperation updateOperation = (UpdateOperation) element; + StringBuilder builder = new StringBuilder(); + builder.append("(operator = '"); + builder.append(updateOperation.getOperator().getLiteral()); + builder.append("', value = '"); + builder.append(updateOperation.getValue()); + builder.append("')"); + return builder.toString(); + } + + @Override + public boolean accept(Object element) { + return element instanceof UpdateOperation; + } + + @Override + public Image getImage(Object element) { + return PROPERTY_IMAGE; + } +} \ No newline at end of file