forked from Coded/SIPRP
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							112 lines
						
					
					
						
							3.1 KiB
						
					
					
				
			
		
		
	
	
							112 lines
						
					
					
						
							3.1 KiB
						
					
					
				/*
 | 
						|
 * ProtocoloPanel.java
 | 
						|
 *
 | 
						|
 * Created on January 27, 2006, 12:23 AM
 | 
						|
 *
 | 
						|
 * To change this template, choose Tools | Template Manager
 | 
						|
 * and open the template in the editor.
 | 
						|
 */
 | 
						|
 | 
						|
package siprp.clientes;
 | 
						|
 | 
						|
import java.awt.*;
 | 
						|
import javax.swing.*;
 | 
						|
import java.util.*;
 | 
						|
 | 
						|
import com.evolute.utils.data.*;
 | 
						|
import com.evolute.utils.dataui.*;
 | 
						|
 | 
						|
/**
 | 
						|
 *
 | 
						|
 * @author fpalma
 | 
						|
 */
 | 
						|
public class ProtocoloPanel extends JPanel
 | 
						|
	implements ControllableComponent
 | 
						|
{
 | 
						|
	protected ClientesDataProvider provider;
 | 
						|
	
 | 
						|
	protected IDObject grupos[];
 | 
						|
	protected IDObject tipos[][];
 | 
						|
	
 | 
						|
	protected PerfilProtocoloPanel perfisPanels[];
 | 
						|
	
 | 
						|
	/** Creates a new instance of ProtocoloPanel */
 | 
						|
	public ProtocoloPanel()
 | 
						|
		throws Exception
 | 
						|
	{
 | 
						|
		provider = ( ClientesDataProvider ) ClientesDataProvider.getProvider();
 | 
						|
		IDObject gruposReais[] = provider.getAllGruposProtocoloReais();
 | 
						|
		Vector gruposAux = new Vector( Arrays.asList( gruposReais ) );
 | 
						|
		gruposAux.add( new MappableObject( new Integer( 0 ), "Outros" ) );
 | 
						|
		grupos = ( IDObject[] ) gruposAux.toArray( new IDObject[ gruposReais.length + 1 ] );
 | 
						|
		
 | 
						|
		IDObject gruposFalsos[] = provider.getAllGruposProtocoloFalsos();
 | 
						|
		
 | 
						|
		Hashtable tiposHash = provider.getAllTiposElementosProtocoloByGrupo();
 | 
						|
		tipos = new IDObject[ grupos.length ][];
 | 
						|
		for( int n = 0; n < gruposReais.length; n++ )
 | 
						|
		{
 | 
						|
			Vector tiposGrupo = ( Vector ) tiposHash.get( gruposReais[ n ].getID() );
 | 
						|
			tipos[ n ] = ( IDObject[] ) tiposGrupo.toArray( new IDObject[ tiposGrupo.size() ] );
 | 
						|
		}
 | 
						|
		Vector outros = new Vector();
 | 
						|
		for( int n = 0; n < gruposFalsos.length; n++ )
 | 
						|
		{
 | 
						|
			Vector tiposGrupo = ( Vector ) tiposHash.get( gruposFalsos[ n ].getID() );
 | 
						|
			outros.addAll( tiposGrupo );
 | 
						|
		}
 | 
						|
		tipos[ gruposReais.length ] = ( IDObject[] ) outros.toArray( new IDObject[ outros.size() ] );
 | 
						|
		setupComponents();
 | 
						|
	}
 | 
						|
	
 | 
						|
	private void setupComponents()
 | 
						|
	{
 | 
						|
		perfisPanels = new PerfilProtocoloPanel[ 2 ];
 | 
						|
		
 | 
						|
		setLayout( new GridLayout( 1, 2 ) );
 | 
						|
		
 | 
						|
		perfisPanels[ 0 ] = new PerfilProtocoloPanel( grupos, tipos );
 | 
						|
		JScrollPane perfilAScp = 
 | 
						|
			new JScrollPane( perfisPanels[ 0 ], JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
 | 
						|
								JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
 | 
						|
		perfilAScp.setBorder( BorderFactory.createTitledBorder(
 | 
						|
								BorderFactory.createEtchedBorder(), "Perfil A" ) );
 | 
						|
		add( perfilAScp );
 | 
						|
		
 | 
						|
		perfisPanels[ 1 ] = new PerfilProtocoloPanel( grupos, tipos );
 | 
						|
		JScrollPane perfilBScp = 
 | 
						|
			new JScrollPane( perfisPanels[ 1 ], JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
 | 
						|
								JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
 | 
						|
		perfilBScp.setBorder( BorderFactory.createTitledBorder(
 | 
						|
								BorderFactory.createEtchedBorder(), "Perfil B" ) );
 | 
						|
		add( perfilBScp );
 | 
						|
	}
 | 
						|
	
 | 
						|
	public void fill( Object data )
 | 
						|
	{
 | 
						|
		Vector lists[] = ( Vector [] ) data;
 | 
						|
		perfisPanels[ 0 ].fill( lists[ 0 ] );
 | 
						|
		perfisPanels[ 1 ].fill( lists[ 1 ] );
 | 
						|
	}
 | 
						|
	
 | 
						|
	public Object save()
 | 
						|
	{
 | 
						|
		Vector lists[] = new Vector[ 2 ];
 | 
						|
		lists[ 0 ] = ( Vector ) perfisPanels[ 0 ].save();
 | 
						|
		lists[ 1 ] = ( Vector ) perfisPanels[ 1 ].save();
 | 
						|
		return lists;
 | 
						|
	}
 | 
						|
	
 | 
						|
	public void setEnabled( boolean enable )
 | 
						|
	{
 | 
						|
		perfisPanels[ 0 ].setEnabled( enable );
 | 
						|
		perfisPanels[ 1 ].setEnabled( enable );
 | 
						|
	}
 | 
						|
	
 | 
						|
	public void clear()
 | 
						|
	{
 | 
						|
		perfisPanels[ 0 ].clear();
 | 
						|
		perfisPanels[ 1 ].clear();
 | 
						|
	}
 | 
						|
}
 |