From 8e056f4f5ee11bc2f9cc99bbc825a2a2ebb2f400 Mon Sep 17 00:00:00 2001 From: Diogo Neves Date: Thu, 22 Jul 2010 09:03:48 +0000 Subject: [PATCH] git-svn-id: https://svn.coded.pt/svn/SIPRP@1334 bb69d46d-e84e-40c8-a05a-06db0d633741 --- .../relatorio/GerirMedidasRelatorioPanel.java | 41 +++++++++++-------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/GerirMedidasRelatorioPanel.java b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/GerirMedidasRelatorioPanel.java index 1edef8e9..b6a66f20 100644 --- a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/GerirMedidasRelatorioPanel.java +++ b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/GerirMedidasRelatorioPanel.java @@ -37,6 +37,7 @@ import siprp.data.outer.HsRelatorioPostoMedidaData; import siprp.data.outer.HsRelatorioPostoRiscoData; import siprp.data.outer.HsRelatorioRiscoData; import siprp.data.outer.HsRiscoData; +import siprp.higiene.gestao.SIPRPLazyLoadedPanel; import siprp.logic.HigieneSegurancaLogic; import siprp.logic.node.MedidaRelatorioNode; import siprp.logic.node.NodeRisco; @@ -45,7 +46,7 @@ import siprp.logic.node.RiscoRelatorioNode; import com.evolute.utils.error.ErrorLogger; import com.evolute.utils.ui.trees.TreeTools; -public class GerirMedidasRelatorioPanel extends JPanel +public class GerirMedidasRelatorioPanel extends SIPRPLazyLoadedPanel { private static final long serialVersionUID = 1L; @@ -141,11 +142,10 @@ public class GerirMedidasRelatorioPanel extends JPanel private void setupLayout() { - TableLayout layout = new TableLayout( new double[] { - TableLayout.FILL - }, new double[] { - TableLayout.MINIMUM, TableLayout.FILL - } ); + TableLayout layout = new TableLayout( + new double[] { TableLayout.FILL }, + new double[] { TableLayout.MINIMUM, TableLayout.FILL } + ); layout.setHGap( 5 ); layout.setVGap( 5 ); setLayout( layout ); @@ -154,11 +154,10 @@ public class GerirMedidasRelatorioPanel extends JPanel private void placeComponents() { JPanel panel = new JPanel(); - TableLayout layout = new TableLayout( new double[] { - TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.FILL - }, new double[] { - TableLayout.MINIMUM - } ); + TableLayout layout = new TableLayout( + new double[] { TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.FILL }, + new double[] { TableLayout.MINIMUM } + ); layout.setHGap( 5 ); layout.setVGap( 5 ); panel.setLayout( layout ); @@ -260,7 +259,7 @@ public class GerirMedidasRelatorioPanel extends JPanel if( result != null ) { addResult( result ); - refresh(); + doRefresh(); } setEnabled(); } @@ -358,7 +357,7 @@ public class GerirMedidasRelatorioPanel extends JPanel break; } } - refresh(); + doRefresh(); setEnabled(); } @@ -397,8 +396,7 @@ public class GerirMedidasRelatorioPanel extends JPanel HsRelatorioRiscoData riscoData = rel.toRisco_id(); for( HsRelatorioMedidaData medida : riscoData.fromHsRelatorioMedida_risco_id() ) { - List< HsRelatorioPostoMedidaData > list = medida.fromHsRelatorioPostoMedida_medida_id(); - for ( HsRelatorioPostoMedidaData relMedida : list ) + for ( HsRelatorioPostoMedidaData relMedida : medida.fromHsRelatorioPostoMedida_medida_id() ) { relMedida.delete(); } @@ -406,6 +404,7 @@ public class GerirMedidasRelatorioPanel extends JPanel } riscoData.delete(); + rel.delete(); outcome = true; } } @@ -437,19 +436,23 @@ public class GerirMedidasRelatorioPanel extends JPanel public void refresh() { root.removeAllChildren(); + if( posto != null ) { List list = posto.fromHsRelatorioPostoRisco_posto_id(); Collections.sort( list ); + for( HsRelatorioPostoRiscoData rel : list ) { RiscoRelatorioNode node = new RiscoRelatorioNode( rel ); HsRelatorioRiscoData risco = rel.toRisco_id(); if( risco.getDeleted_date() == null ) { - for( HsRelatorioMedidaData medida : risco.fromHsRelatorioMedida_risco_id() ) + List< HsRelatorioMedidaData > listMedidas = risco.fromHsRelatorioMedida_risco_id(); + for( HsRelatorioMedidaData medida : listMedidas ) { - for( HsRelatorioPostoMedidaData medidaRel : medida.fromHsRelatorioPostoMedida_medida_id() ) + List< HsRelatorioPostoMedidaData > listRels = medida.fromHsRelatorioPostoMedida_medida_id(); + for( HsRelatorioPostoMedidaData medidaRel : listRels ) { node.add( new MedidaRelatorioNode( medidaRel ) ); } @@ -459,6 +462,7 @@ public class GerirMedidasRelatorioPanel extends JPanel } } setEnabled(); + TreeTools.sort( root, new Comparator() { @Override @@ -477,6 +481,7 @@ public class GerirMedidasRelatorioPanel extends JPanel return result == null ? o1.toString().compareTo( o2.toString() ) : result; } }); + TreeTools.refreshTree( tree, root, false ); if( selectedMedida != null ) { @@ -505,7 +510,7 @@ public class GerirMedidasRelatorioPanel extends JPanel { this.posto = posto; this.selectedMedida = null; - refresh(); + doRefresh(); setEnabled(); }