/* * DiaPanel.java * * Created on February 1, 2006, 6:42 PM * * To change this template, choose Tools | Template Manager * and open the template in the editor. */ package siprp.higiene.mapa; import java.awt.*; import java.awt.event.*; import javax.swing.*; import com.evolute.utils.dataui.*; /** * * @author fpalma */ public class DiaPanel extends JPanel implements ControllableComponent, ActionListener { protected Object data[][]; protected JButton buttons[]; /** Creates a new instance of DiaPanel */ public DiaPanel() { } private void setupComponents() { } public void setEnabled( boolean enable ) { } public void fill( Object value ) { removeAll(); Object arr[][] = ( Object[][] ) value; data = arr; buttons = new JButton[ arr.length ]; if( arr.length > 0 ) { GridBagLayout gridbag = new GridBagLayout(); setLayout( gridbag ); GridBagConstraints constraints = new GridBagConstraints(); constraints.insets = new Insets( 0, 0, 0, 0 ); constraints.fill = GridBagConstraints.BOTH; constraints.weightx = 1; constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.weighty = 0; constraints.gridheight = 1; Integer dia = ( Integer ) arr[ 0 ][ 0 ]; JLabel diaLabel = new JLabel( dia.toString(), JLabel.LEFT ); gridbag.setConstraints( diaLabel, constraints ); add( diaLabel ); for( int n = 1; n < arr.length; n++ ) { String empresa = ( String ) arr[ n ][ 0 ]; String estabelecimento = ( String ) arr[ n ][ 1 ]; String tecnico = ( String ) arr[ n ][ 2 ]; Color cor = ( Color ) arr[ n ][ 3 ]; String empresaR = empresa.length() > 10 ? empresa.substring( 0, 10 ) : empresa; String estabelecimentoR = estabelecimento.length() > 10 ? estabelecimento.substring( 0, 10 ) : estabelecimento; buttons[ n ] = new JButton( "" + empresaR + "
" + estabelecimentoR + "
" ); buttons[ n ].setMargin( new Insets( 2, 1, 2, 1 ) ); buttons[ n ].setBackground( cor ); buttons[ n ].setToolTipText( "T\u00e9cnico: " + ( tecnico != null ? tecnico : "n.d." ) + " \nEmpresa: " + empresa + " \nEstabelecimento: " + estabelecimento ); gridbag.setConstraints( buttons[ n ], constraints ); add( buttons[ n ] ); buttons[ n ].addActionListener( this ); } JPanel pad = new JPanel(); constraints.weighty = 1; constraints.gridheight = GridBagConstraints.REMAINDER; gridbag.setConstraints( pad, constraints ); add( pad ); } } public Object save() { return data; } public void clear() { } public void actionPerformed( ActionEvent e ) { JButton source = ( JButton ) e.getSource(); JOptionPane.showMessageDialog( source, source.getToolTipText(), "", JOptionPane.PLAIN_MESSAGE ); } }