1 32 33 package it.businesslogic.ireport.gui.sheet; 34 35 import it.businesslogic.ireport.gui.event.SheetPropertyValueChangedEvent; 36 import it.businesslogic.ireport.util.I18n; 37 import it.businesslogic.ireport.util.LanguageChangedEvent; 38 import it.businesslogic.ireport.util.LanguageChangedListener; 39 import java.awt.Component ; 40 import java.awt.Graphics ; 41 import java.awt.event.ActionEvent ; 42 43 47 public class ResetButton extends javax.swing.JButton implements LanguageChangedListener { 48 49 private SheetProperty sheetProperty = null; 50 public static final javax.swing.ImageIcon reset_icon = new javax.swing.ImageIcon ( CategorySheetPanel.class.getResource("/it/businesslogic/ireport/icons/reset.png")); 51 52 53 54 public ResetButton(SheetProperty sheetProperty) { 55 56 setText(""); 57 setIcon(reset_icon); 58 setMargin( new java.awt.Insets (0, 0, 0, 0)); 59 setMaximumSize(new java.awt.Dimension (16, 18)); 60 setMinimumSize(new java.awt.Dimension (16, 18)); 61 setPreferredSize(new java.awt.Dimension (16, 18)); 62 setBorder(new javax.swing.border.AbstractBorder () { 63 public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) 64 { 65 g.setColor( java.awt.Color.GRAY); 66 g.drawLine(x,y,x,y+height); 67 } 68 } ); 69 70 71 72 setFocusPainted(false); 73 setFocusable(false); 74 setBackground(java.awt.Color.WHITE); 75 setToolTipText(it.businesslogic.ireport.util.I18n.getString("gui.elementpropertiessheet.tooltip.resetToDefault","Reset to default")); 76 77 this.sheetProperty = sheetProperty; 78 79 this.addActionListener( new java.awt.event.ActionListener () { 80 public void actionPerformed(ActionEvent e) { 81 SheetProperty sp = ResetButton.this.getSheetProperty(); 82 if (sp != null && !sp.isReadOnly()) 83 { 84 Object oldValue = sp.getValue(); 85 sp.setValue(null); 86 sp.updateLabel(); 87 sp.fireSheetPropertyValueChangedListenerSheetPropertyValueChanged( 88 new SheetPropertyValueChangedEvent(sp.getKeyName(),oldValue,null,sp) ); 89 } 90 } 91 }); 92 93 I18n.addOnLanguageChangedListener(this); 94 } 95 96 public void languageChanged(LanguageChangedEvent evt) { 97 setToolTipText(it.businesslogic.ireport.util.I18n.getString("gui.elementpropertiessheet.tooltip.resetToDefault","Reset to default")); 98 } 99 100 public SheetProperty getSheetProperty() { 101 return sheetProperty; 102 } 103 104 public void setSheetProperty(SheetProperty sheetProperty) { 105 this.sheetProperty = sheetProperty; 106 } 107 108 } 109 | Popular Tags |