1 19 20 package org.netbeans.modules.refactoring.spi.impl; 21 22 import java.text.MessageFormat ; 23 import java.util.ResourceBundle ; 24 import javax.swing.event.ChangeListener ; 25 import org.netbeans.modules.refactoring.api.AbstractRefactoring; 26 import org.netbeans.modules.refactoring.api.Problem; 27 import org.netbeans.modules.refactoring.api.SafeDeleteRefactoring; 28 import org.netbeans.modules.refactoring.spi.ui.CustomRefactoringPanel; 29 import org.netbeans.modules.refactoring.spi.ui.RefactoringUI; 30 import org.openide.util.HelpCtx; 31 import org.openide.util.NbBundle; 32 import org.openide.util.lookup.Lookups; 33 34 38 public class SafeDeleteUI<T> implements RefactoringUI{ 39 40 private final T[] elementsToDelete; 41 42 private final SafeDeleteRefactoring refactoring; 43 44 private SafeDeletePanel panel; 45 46 private ResourceBundle bundle; 47 48 53 public SafeDeleteUI(T[] selectedElements) { 54 this.elementsToDelete = selectedElements; 55 refactoring = new SafeDeleteRefactoring(Lookups.fixed(elementsToDelete)); 56 } 57 58 64 public org.netbeans.modules.refactoring.api.Problem checkParameters() { 65 return refactoring.fastCheckParameters(); 67 } 68 69 public String getDescription() { 70 return "Safe Delete"; 88 } 89 90 public org.openide.util.HelpCtx getHelpCtx() { 91 92 return new HelpCtx(SafeDeleteUI.class.getName()); 93 } 94 95 public String getName() { 96 97 return NbBundle.getMessage(SafeDeleteUI.class, "LBL_SafeDel"); } 99 100 public CustomRefactoringPanel getPanel(ChangeListener parent) { 101 if(panel == null) 103 panel = new SafeDeletePanel(); 104 return panel; 105 } 106 107 public AbstractRefactoring getRefactoring() { 108 109 return refactoring; 110 } 111 112 public boolean hasParameters() { 113 114 return false; 115 } 116 120 public boolean isQuery() { 121 return false; 122 } 123 124 public Problem setParameters() { 125 return refactoring.checkParameters(); 127 } 128 129 131 private String getString(String key) { 132 if (bundle == null) { 133 bundle = NbBundle.getBundle(SafeDeleteUI.class); 134 } 135 return bundle.getString(key); 136 } 137 138 private String getString(String key, Object value) { 139 return new MessageFormat (getString(key)).format(new Object [] {value}); 140 } 141 142 143 } 144 | Popular Tags |