package org.genmymodel.plugin.resource.explorer; import org.eclipse.jface.dialogs.IMessageProvider; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Shell; import org.genmymodel.common.api.CustomGeneratorBinding; import org.genmymodel.common.api.GMMAPIRestClient; public class ModifyGeneratorDialog extends AddGeneratorDialog { protected CustomGeneratorBinding generator; protected boolean hasChanged = false; public ModifyGeneratorDialog(Shell parent, GMMAPIRestClient client, CustomGeneratorBinding generator) { super(parent, client); this.generator = generator; } @Override public void create() { super.create(); setTitle("Modify " + generator.getName() + " custom generator"); setMessage("Please complete the informations below to modify the generator.", IMessageProvider.INFORMATION); } @Override protected Control createDialogArea(Composite parent) { Control area = super.createDialogArea(parent); nameInput.setText(generator.getName()); urlInput.setText(generator.getGeneratorURL()); branchInput.setText(generator.getGeneratorBranch()); return area; } public CustomGeneratorBinding getGenerator() { return this.generator; } @Override protected void okPressed() { super.okPressed(); if (!generator.getName().equalsIgnoreCase(name)) { generator.setName(name); hasChanged = true; } if (!generator.getGeneratorURL().equalsIgnoreCase(url)) { generator.setGeneratorURL(url); hasChanged = true; } if (!generator.getGeneratorBranch().equalsIgnoreCase(branch)) { generator.setGeneratorBranch(branch); hasChanged = true; } } @Override public boolean isValid() { return super.isValid() && this.hasChanged; } }