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.
376 lines
9.6 KiB
376 lines
9.6 KiB
package siprp.higiene.legislacoes;
|
|
|
|
import static com.evolute.utils.strings.UnicodeLatin1Map.atilde;
|
|
import static com.evolute.utils.strings.UnicodeLatin1Map.ccedil;
|
|
import static com.evolute.utils.strings.UnicodeLatin1Map.otilde;
|
|
|
|
import javax.swing.SwingUtilities;
|
|
|
|
import siprp.ui.SIPRPFrame;
|
|
|
|
import com.evolute.utils.tracker.TrackableWindow;
|
|
|
|
public class GestaoLegislacoesWindow extends SIPRPFrame implements TrackableWindow
|
|
{
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
public static final String TITLE = "Gest" + atilde + "o de Legisla" + ccedil + otilde + "es";
|
|
//
|
|
// private static final Dimension SIZE = new Dimension( 800, 400 );
|
|
//
|
|
// private DefaultMutableTreeNode root = new DefaultMutableTreeNode( "Legisla" + ccedil + atilde + "o em Higiene e Seguran" + ccedil + "a no Trabalho" );
|
|
//
|
|
// private final DefaultTreeModel model = new DefaultTreeModel( root );
|
|
//
|
|
// private final JTree tree = new JTree( model );
|
|
//
|
|
// private final JScrollPane scroll = new JScrollPane( tree );
|
|
//
|
|
// private final JButton buttonCriar = new JButton("Criar");
|
|
//
|
|
// private final JButton buttonRemover = new JButton("Remover");
|
|
//
|
|
// private final JButton buttonGuardar = new JButton("Guardar");
|
|
//
|
|
// private final JButton buttonCancelar = new JButton("Cancelar");
|
|
//
|
|
// private final JTextArea text = new JTextArea();
|
|
//
|
|
// private final JPanel panelTree = new JPanel();
|
|
//
|
|
// private final JPanel panelText = new JPanel();
|
|
//
|
|
// private final PlanoActuacaoDAO provider = new PlanoActuacaoDAO();
|
|
//
|
|
// private Legislacao newLegislacao = null;
|
|
//
|
|
// public static void main( String[] args )
|
|
// {
|
|
// GestaoLegislacoesWindow window = new GestaoLegislacoesWindow();
|
|
// window.setDefaultCloseOperation( SIPRPFrame.EXIT_ON_CLOSE );
|
|
// window.setVisible( true );
|
|
// }
|
|
|
|
public GestaoLegislacoesWindow()
|
|
{
|
|
// this.setTitle( TITLE );
|
|
// this.setSize( SIZE );
|
|
// startupComponents();
|
|
// startupLayout();
|
|
// startupListeners();
|
|
// placeComponents();
|
|
// refresh();
|
|
}
|
|
|
|
// private void startupComponents()
|
|
// {
|
|
// panelText.setBorder( BorderFactory.createEtchedBorder() );
|
|
// buttonRemover.setEnabled( false );
|
|
// buttonGuardar.setEnabled( false );
|
|
// buttonCancelar.setEnabled( false );
|
|
// text.setEnabled( false );
|
|
// tree.getSelectionModel().setSelectionMode( TreeSelectionModel.SINGLE_TREE_SELECTION );
|
|
// tree.setRootVisible( true );
|
|
// }
|
|
//
|
|
// private void startupLayout()
|
|
// {
|
|
// startupPanelTextLayout();
|
|
// startupPanelTreeLayout();
|
|
// this.getContentPane().setLayout( new GridLayout(1,0,5,5) );
|
|
// }
|
|
//
|
|
// private void startupPanelTextLayout()
|
|
// {
|
|
// TableLayout layout = new TableLayout(
|
|
// new double[]{ TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.FILL },
|
|
// new double[]{ TableLayout.FILL, TableLayout.MINIMUM }
|
|
// );
|
|
// layout.setHGap( 5 );
|
|
// layout.setVGap( 5 );
|
|
// panelText.setLayout( layout );
|
|
// }
|
|
//
|
|
// private void startupPanelTreeLayout()
|
|
// {
|
|
// TableLayout layout = new TableLayout(
|
|
// new double[]{ TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.FILL },
|
|
// new double[]{ TableLayout.FILL, TableLayout.MINIMUM }
|
|
// );
|
|
// layout.setHGap( 5 );
|
|
// layout.setVGap( 5 );
|
|
// panelTree.setLayout( layout );
|
|
// }
|
|
//
|
|
// private void startupListeners()
|
|
// {
|
|
// buttonCriar.addActionListener( new ActionListener()
|
|
// {
|
|
// @Override
|
|
// public void actionPerformed( ActionEvent e )
|
|
// {
|
|
// criarLegislacao( );
|
|
// }
|
|
// } );
|
|
// buttonRemover.addActionListener( new ActionListener()
|
|
// {
|
|
// @Override
|
|
// public void actionPerformed( ActionEvent e )
|
|
// {
|
|
// removerLegislacao();
|
|
// }
|
|
// } );
|
|
// buttonGuardar.addActionListener( new ActionListener()
|
|
// {
|
|
// @Override
|
|
// public void actionPerformed( ActionEvent e )
|
|
// {
|
|
// guardarLegislacao();
|
|
// }
|
|
// } );
|
|
// buttonCancelar.addActionListener( new ActionListener()
|
|
// {
|
|
// @Override
|
|
// public void actionPerformed( ActionEvent e )
|
|
// {
|
|
// cancelarEdicao();
|
|
// }
|
|
// } );
|
|
// tree.getSelectionModel().addTreeSelectionListener( new TreeSelectionListener()
|
|
// {
|
|
// @Override
|
|
// public void valueChanged( TreeSelectionEvent e )
|
|
// {
|
|
// TreePath path = tree.getSelectionPath();
|
|
// Legislacao legislacao = getSelectedLegislacao();
|
|
// if( path != null )
|
|
// {
|
|
// buttonRemover.setEnabled( !root.equals( path.getLastPathComponent() ) );
|
|
// text.setEnabled( !root.equals( path.getLastPathComponent() ) );
|
|
// text.setText( legislacao == null ? "" : legislacao.getDescription() );
|
|
// }
|
|
// else
|
|
// {
|
|
// text.setEnabled( false );
|
|
// buttonRemover.setEnabled( false );
|
|
// text.setText( "" );
|
|
// }
|
|
// }
|
|
// } );
|
|
// text.addCaretListener( new CaretListener()
|
|
// {
|
|
// @Override
|
|
// public void caretUpdate( CaretEvent e )
|
|
// {
|
|
// if( text.getText().length() > 0)
|
|
// {
|
|
// Legislacao legislacao = null;
|
|
// if( newLegislacao != null )
|
|
// {
|
|
// legislacao = newLegislacao;
|
|
// }
|
|
// else
|
|
// {
|
|
// legislacao = getSelectedLegislacao();
|
|
// }
|
|
// boolean changed = legislacao == null ? false : !legislacao.getDescription().equals( text.getText() );
|
|
// buttonGuardar.setEnabled( changed );
|
|
// text.setBorder( changed ? BorderFactory.createLineBorder( Color.RED, 2 ) : BorderFactory.createEtchedBorder() );
|
|
// }
|
|
// else
|
|
// {
|
|
// buttonGuardar.setEnabled( false );
|
|
// text.setBorder( BorderFactory.createEtchedBorder() );
|
|
// }
|
|
// }
|
|
// } );
|
|
// }
|
|
//
|
|
// private void placeComponents()
|
|
// {
|
|
// panelTree.add( scroll, new TableLayoutConstraints( 0, 0, 2, 0 ) );
|
|
// panelTree.add( buttonCriar, new TableLayoutConstraints( 0, 1 ) );
|
|
// panelTree.add( buttonRemover, new TableLayoutConstraints( 1, 1 ) );
|
|
//
|
|
// panelText.add( text, new TableLayoutConstraints( 0, 0, 2, 0 ) );
|
|
// panelText.add( buttonGuardar, new TableLayoutConstraints( 0, 1 ) );
|
|
// panelText.add( buttonCancelar, new TableLayoutConstraints( 1, 1 ) );
|
|
//
|
|
// this.getContentPane().add( panelTree );
|
|
// this.getContentPane().add( panelText );
|
|
// }
|
|
//
|
|
// private void criarLegislacao()
|
|
// {
|
|
// text.setText( "" );
|
|
// Legislacao selected = getSelectedLegislacao();
|
|
// if( selected != null )
|
|
// {
|
|
// newLegislacao = provider.createNovaLegislacao( selected );
|
|
// }
|
|
// else
|
|
// {
|
|
// newLegislacao = provider.createNovaLegislacao( getSelectedLegislacao() );
|
|
// }
|
|
// prepareEditar( false );
|
|
// textInputOnly( true );
|
|
// }
|
|
//
|
|
// private void prepareEditar( boolean editar )
|
|
// {
|
|
// buttonGuardar.setText( editar ? "Editar" : "Criar" );
|
|
// buttonCancelar.setText( editar ? "Reverter" : "Cancelar" );
|
|
// }
|
|
//
|
|
// private void textInputOnly( boolean doTextInput )
|
|
// {
|
|
// text.setEnabled( doTextInput );
|
|
// buttonCancelar.setEnabled( doTextInput );
|
|
// buttonCriar.setEnabled( !doTextInput );
|
|
// tree.setEnabled( !doTextInput );
|
|
// text.setBorder( doTextInput ? BorderFactory.createLineBorder( Color.RED, 2 ) : BorderFactory.createEtchedBorder());
|
|
// if( doTextInput ){
|
|
// text.setCaretPosition( 0 );
|
|
// text.requestFocus();
|
|
// buttonRemover.setEnabled( false );
|
|
// }
|
|
// }
|
|
//
|
|
// private void guardarLegislacao()
|
|
// {
|
|
// TreePath path = tree.getSelectionPath();
|
|
// if( newLegislacao != null )
|
|
// {
|
|
// newLegislacao.setDescription( text.getText() );
|
|
// provider.commit();
|
|
// newLegislacao = null;
|
|
// prepareEditar( true );
|
|
// textInputOnly( false );
|
|
// refresh();
|
|
// }
|
|
// else if( path != null )
|
|
// {
|
|
// Legislacao legislacao = getSelectedLegislacao();
|
|
// legislacao.setDescription( text.getText() );
|
|
// provider.commit();
|
|
// prepareEditar( true );
|
|
// textInputOnly( false );
|
|
// refresh();
|
|
// }
|
|
// }
|
|
//
|
|
// private void cancelarEdicao()
|
|
// {
|
|
// TreePath path = tree.getSelectionPath();
|
|
// if( newLegislacao != null )
|
|
// {
|
|
// newLegislacao = null;
|
|
// prepareEditar( true );
|
|
// textInputOnly( false );
|
|
// refresh();
|
|
// tree.setSelectionPath( path );
|
|
// }
|
|
// else if( path != null )
|
|
// {
|
|
// prepareEditar( true );
|
|
// textInputOnly( false );
|
|
// refresh();
|
|
// tree.setSelectionPath( path );
|
|
// }
|
|
// }
|
|
//
|
|
// private Legislacao getSelectedLegislacao()
|
|
// {
|
|
// Legislacao result = null;
|
|
// TreePath path = tree.getSelectionPath();
|
|
// if( path != null )
|
|
// {
|
|
// Object o = ( (DefaultMutableTreeNode) path.getLastPathComponent() ).getUserObject();
|
|
// if( o instanceof Legislacao )
|
|
// {
|
|
// result = (Legislacao) o;
|
|
// }
|
|
// }
|
|
// return result;
|
|
// }
|
|
//
|
|
// private void removerLegislacao()
|
|
// {
|
|
// Legislacao legislacao = getSelectedLegislacao();
|
|
// if( legislacao != null )
|
|
// {
|
|
// provider.delete( legislacao );
|
|
// }
|
|
// refresh();
|
|
// }
|
|
//
|
|
@Override
|
|
public void refresh()
|
|
{
|
|
// clearTree();
|
|
// fillTree();
|
|
}
|
|
//
|
|
// private void clearTree()
|
|
// {
|
|
// root.removeAllChildren();
|
|
// refreshTree();
|
|
// }
|
|
//
|
|
// private void fillTree()
|
|
// {
|
|
// List<Legislacao> legislacoes = provider.getAllLegislacoes( null );
|
|
// for( Legislacao legislacao : legislacoes )
|
|
// {
|
|
// DefaultMutableTreeNode node = new DefaultMutableTreeNode( legislacao );
|
|
// fillWithChildren( node, legislacao );
|
|
// root.add( node );
|
|
// }
|
|
// refreshTree();
|
|
// }
|
|
//
|
|
// private void fillWithChildren( DefaultMutableTreeNode node, Legislacao legislacao )
|
|
// {
|
|
// if( legislacao != null )
|
|
// {
|
|
// for( Legislacao child : legislacao.getChildrenArray() )
|
|
// {
|
|
// DefaultMutableTreeNode childNode = new DefaultMutableTreeNode(child);
|
|
// fillWithChildren( childNode, child );
|
|
// node.add( childNode );
|
|
// }
|
|
// }
|
|
// }
|
|
//
|
|
// private void refreshTree()
|
|
// {
|
|
// model.nodeStructureChanged( root );
|
|
// }
|
|
|
|
@Override
|
|
public boolean closeIfPossible()
|
|
{
|
|
close();
|
|
return true;
|
|
}
|
|
|
|
private void close()
|
|
{
|
|
SwingUtilities.invokeLater( new Runnable() {
|
|
public void run()
|
|
{
|
|
setVisible( false );
|
|
dispose();
|
|
}
|
|
} );
|
|
}
|
|
|
|
@Override
|
|
public void open()
|
|
{
|
|
setVisible( true );
|
|
}
|
|
|
|
}
|