1 32 33 package it.businesslogic.ireport.gui.sheet; 34 35 import it.businesslogic.ireport.IReportFont; 36 import java.util.*; 37 import javax.swing.*; 38 39 public class FontSheetProperty extends SheetProperty { 40 41 private FontSheetPropertyComponent editor = null; 42 43 public FontSheetProperty(String key, String name) { 44 super( key, name, SheetProperty.STRING, ""); 45 } 46 47 public JComponent getEditor() 48 { 49 if (editor != null) return editor; 50 editor = new FontSheetPropertyComponent(); 51 editor.addActionListener( this ); 52 return editor; 53 } 54 55 public Object getEditorValue(JComponent component) 56 { 57 return editor.getIreportFont(); 58 } 59 60 public void actionPerformed(java.awt.event.ActionEvent event) 61 { 62 super.actionPerformed(event); 63 updateLabel(); 64 } 65 66 67 public void setEditorValue(JComponent component, Object value) 68 { 69 try { 70 getEditor(); editor.setIreportFont((it.businesslogic.ireport.IReportFont)value); 72 } catch (Exception ex) {} 73 } 74 75 public void setFontMode( int mode) 76 { 77 try { 78 getEditor(); editor.setFontMode( mode ); 80 } catch (Exception ex) {} 81 } 82 83 84 88 public void updateLabel() 89 { 90 try { 91 if (getLabelComponent() != null) 92 { 93 boolean allNullValue = true; 94 95 IReportFont ifont = (IReportFont)getValue(); 96 97 if (ifont != null) 98 { 99 Iterator i_keys = ifont.getBeanProperties().keySet().iterator(); 100 101 while (i_keys.hasNext()) 102 { 103 Object key = i_keys.next(); 104 if (ifont.getBeanProperties().get(key) != null) 105 { 106 allNullValue = false; 107 break; 108 } 109 } 110 } 111 112 java.awt.Font f = getLabelComponent().getFont(); 113 java.awt.Font f2 = new java.awt.Font ( f.getName(), (allNullValue || this.isReadOnly() || !isShowResetButton()) ? 0 : java.awt.Font.BOLD, f.getSize()); 114 getLabelComponent().setFont(f2); 115 if (this.isReadOnly()) 116 { 117 getLabelComponent().setEnabled( false ); 118 } 119 else 120 { 121 getLabelComponent().setEnabled( true ); 122 } 123 124 125 getLabelComponent().updateUI(); 126 } 127 } catch (Exception ex) 128 { 129 130 } 131 } 132 133 } 134 | Popular Tags |