/* * RegistarPresencasWindow.java * * Created on January 31, 2007, 3:09 PM * * To change this template, choose Tools | Template Manager * and open the template in the editor. */ package siprp.medicina.presencas; import com.evolute.utils.data.IDObject; import com.evolute.utils.data.MappableObject; import com.evolute.utils.tracker.TrackableWindow; import com.evolute.utils.ui.calendar.JCalendarPanel; import com.evolute.utils.ui.panel.multipleactionlist.MultipleActionListPanel; import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.*; /** * * @author fpalma */ public class RegistarPresencasWindow extends JFrame implements ActionListener, TrackableWindow { protected JCalendarPanel dataPanel; protected JButton carregarButton; protected JScrollPane listScroll; protected MultipleActionListPanel listPanel; public static void main( String args[] ) throws Exception { RegistarPresencasWindow window = new RegistarPresencasWindow(); window.setVisible( true ); window.setExtendedState( window.getExtendedState() | MAXIMIZED_BOTH ); } /** Creates a new instance of RegistarPresencasWindow */ public RegistarPresencasWindow() throws Exception { setupComponents(); } private void setupComponents() { setTitle( "Presen\u00e7as" ); JLabel dataLabel = new JLabel( "Data" ); dataPanel = new JCalendarPanel( this ); carregarButton = new JButton( "Carregar" ); carregarButton.addActionListener( this ); PresencasActionFactory realizouFactory = new PresencasActionFactory( PresencasActionFactory.REALIZOU ); PresencasActionFactory realizouParcialmenteFactory = new PresencasActionFactory( PresencasActionFactory.REALIZOU_PARCIALMENTE ); PresencasActionFactory trabalhadorDesmarcouFactory = new PresencasActionFactory( PresencasActionFactory.TRABALHADOR_DESMARCOU ); PresencasActionFactory shstDesmarcouFactory = new PresencasActionFactory( PresencasActionFactory.SHST_DESMARCOU ); PresencasActionFactory faltouFactory = new PresencasActionFactory( PresencasActionFactory.FALTOU ); getContentPane().setLayout( new BorderLayout() ); JPanel upperPanel = new JPanel(); getContentPane().add( upperPanel, BorderLayout.NORTH ); listPanel = new MultipleActionListPanel( new PresencasActionFactory[]{ shstDesmarcouFactory, faltouFactory }, new PresencasActionFactory[]{ realizouFactory, realizouParcialmenteFactory, trabalhadorDesmarcouFactory, shstDesmarcouFactory, faltouFactory } ); listScroll = new JScrollPane( listPanel, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER ); getContentPane().add( listScroll, BorderLayout.CENTER ); upperPanel.setLayout( new FlowLayout( FlowLayout.CENTER ) ); upperPanel.add( dataLabel ); upperPanel.add( dataPanel ); upperPanel.add( carregarButton ); setDefaultCloseOperation( WindowConstants.DO_NOTHING_ON_CLOSE ); addWindowListener( new WindowAdapter(){ public void windowClosing( WindowEvent e ) { close(); } } ); } public void actionPerformed( ActionEvent e ) { listPanel.showList( new IDObject[]{ new MappableObject( new Integer( 1 ), "Sr. Fernando da loja ali da esquina" ), new MappableObject( new Integer( 1 ), "Sr. Antonio da loja ao lado da do Sr. Fernando" ) } ); listScroll.setViewportView( listPanel ); } public void refresh() { } public void open() { setVisible( true ); setExtendedState( getExtendedState() | MAXIMIZED_BOTH ); } public void close() { SwingUtilities.invokeLater( new Runnable() { public void run() { setVisible( false ); dispose(); } } ); } public boolean closeIfPossible() { close(); return true; } }