codice:
public class ProgettazioneFrame extends JDialog implements ActionListener{
public static final int DEFAULT_WIDTH = 850;
public static final int DEFAULT_HEIGHT = 520;
private Logica logica;
private JButton ok,annulla;
private ElencoPanel centerPanel;
private ButtonPrestazioniPanel bottoniPrestazioni;
private ImportoCategoriaPanel icp;
static double valoreTabellaA;
static double valoreTabellaB;
static double valoreTabellaB1;
public ProgettazioneFrame(ButtonPrestazioniPanel bottoniPrestazioni,Logica logica, ImportoCategoriaPanel icp){
setModal(true);
this.icp=icp;
this.bottoniPrestazioni=bottoniPrestazioni;
this.logica=logica;
setTitle("Progettazione");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
ok=new JButton("OK");
annulla=new JButton("Annulla");
ok.addActionListener(this);
annulla.addActionListener(this);
bottoniPrestazioni.setVisible(false);
JPanel southPanel=new JPanel();
southPanel.setLayout(new BorderLayout());
JPanel p1=new JPanel();
p1.setLayout(new GridLayout(2,1));
p1.add(new JLabel("(*)prestazione richiesta in presenza di affidamento di concessione per lavori pubblici"));
p1.add(new JLabel("(**)prestazione richiesta in caso di appalto concorso o affidamento di concessione per lavori"));
JPanel p2=new JPanel();
p2.setLayout(new GridLayout(1,2));
p2.add(ok);
p2.add(annulla);
southPanel.add(p1);
southPanel.add(p2,BorderLayout.EAST);
centerPanel=new ElencoPanel();
Container c=this.getContentPane();
c.add(centerPanel);
c.add(southPanel,BorderLayout.SOUTH);
setLocationRelativeTo(null);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==ok){
String classeCategoria=icp.getClasseCategoria();
double preventivo=icp.getImporto();
Map<JCheckBox,String>mapTabB=centerPanel.getMap();
Iterator<JCheckBox>it=mapTabB.keySet().iterator();
LinkedList<String>lettereTabB=new LinkedList<String>();
JCheckBox tmp=null;
while(it.hasNext()){
tmp=it.next();
if(tmp.isSelected())
{
lettereTabB.addLast(mapTabB.get(tmp));
}
}
valoreTabellaA=logica.percentualeTabA(classeCategoria,preventivo);
valoreTabellaB=logica.risTabellaB(lettereTabB,classeCategoria);
valoreTabellaB1=logica.risTabellaB1(lettereTabB,classeCategoria);
bottoniPrestazioni.finish();
this.dispose();
}
else if(e.getSource()==annulla){
this.dispose();
}
}
public double getValueA(){
return valoreTabellaA;
}
public double getValueB(){
return valoreTabellaB;
}
public double getValueB1(){
return valoreTabellaB1;
}
}
codice:
public class ButtonPrestazioniPanel extends JPanel implements ActionListener {
private JButton progettazione, sicurezza,sicurezza2, rilieviPlanoaltimetrici, rilieviManufatti,impattiAmbietali,pianoParticellareEspropio,supportoResponsabileDelProcedimento;
ProgettazioneFrame progettazioneframe;
SicurezzaProgettazioneJFrame sicurezzaProgettazioneJFrame;
ImportoCategoriaPanel icp;
SicurezzaDirezioniLavoriJFrame sicurezzaDirezioniLavoriJFrame;
RilieviPlanoAltimetrici rilieviPlanoAltimetrici;
StudioDiImpattoAmbientale impattiAmbientale;
PianiParticellareEspropio pianoParticellare;
SupportoResponsabileDelProcedimento supportoResponsabile;
ButtonChek progettazioneBc, sicurezzaBc,sicurezzaBc2, rilieviPlanoaltimetriciBc, rilieviManufattiBc,impattiAmbietaliBc,pianoParticellareEspropioBc,supportoResponsabileDelProcedimentoBc;
public ButtonPrestazioniPanel(ImportoCategoriaPanel icp){
this.icp=icp;
GridBagLayout layout = new GridBagLayout();
setLayout(layout);
progettazione=new JButton("Progettazione");
sicurezza=new JButton("Sicurezza (D.L. 494/96) Progettazione");
sicurezza2=new JButton("Sicurezza (D.L. 494/96) Direzione Lavori");
rilieviPlanoaltimetrici=new JButton("Rilievi Planoaltimetrici");
rilieviManufatti=new JButton("Rilievi Manufatti");
impattiAmbietali=new JButton("Impatti Ambietali");
pianoParticellareEspropio=new JButton("Piano Particellare Espropio");
supportoResponsabileDelProcedimento=new JButton("Supporto Resp. Del Procedimento");
progettazione.addActionListener(this);
sicurezza.addActionListener(this);
sicurezza2.addActionListener(this);
rilieviPlanoaltimetrici.addActionListener(this);
rilieviManufatti.addActionListener(this);
impattiAmbietali.addActionListener(this);
pianoParticellareEspropio.addActionListener(this);
supportoResponsabileDelProcedimento.addActionListener(this);
progettazioneBc= new ButtonChek(progettazione);
sicurezzaBc= new ButtonChek(sicurezza);
sicurezzaBc2= new ButtonChek(sicurezza2);
rilieviPlanoaltimetriciBc= new ButtonChek(rilieviPlanoaltimetrici);
rilieviManufattiBc= new ButtonChek(rilieviManufatti);
impattiAmbietaliBc= new ButtonChek(impattiAmbietali);
pianoParticellareEspropioBc= new ButtonChek(pianoParticellareEspropio);
supportoResponsabileDelProcedimentoBc= new ButtonChek(supportoResponsabileDelProcedimento);
JLabel notaBene=new JLabel("<html>N.B. per inserire o modificare i dati relativi ad una
prestazione occorre abilitare il pulsante associato
e seccessivamente cliccarci sopra");
notaBene.setFont(new Font("Arial",Font.ITALIC,12));
add(progettazioneBc, new GBC(0, 0).setWeight(10,10).setFill(GBC.HORIZONTAL).setInsets(20,10,0,50));
add(sicurezzaBc, new GBC(0, 1).setWeight(10,10).setFill(GBC.HORIZONTAL).setInsets(0,10,0,50));
add(sicurezzaBc2, new GBC(0, 2).setWeight(10,10).setFill(GBC.HORIZONTAL).setInsets(0,10,0,50));
add(rilieviPlanoaltimetriciBc, new GBC(0, 3).setWeight(10,10).setFill(GBC.HORIZONTAL).setInsets(0,10,0,50));
add(rilieviManufattiBc, new GBC(0, 4).setWeight(10,10).setFill(GBC.HORIZONTAL).setInsets(0,10,0,50));
add(impattiAmbietaliBc, new GBC(0, 5).setWeight(10,10).setFill(GBC.HORIZONTAL).setInsets(0,10,0,50));
add(pianoParticellareEspropioBc, new GBC(0, 6).setWeight(10,10).setFill(GBC.HORIZONTAL).setInsets(0,10,0,50));
add(supportoResponsabileDelProcedimentoBc, new GBC(0, 7).setWeight(10,10).setFill(GBC.HORIZONTAL).setInsets(0,10,70,50));
add(notaBene, new GBC(1, 7).setWeight(10,0).setFill(GBC.HORIZONTAL).setInsets(0,0,60,20));
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==progettazione){
progettazioneframe=new ProgettazioneFrame(this,new Logica(),icp);
}
if(e.getSource()==sicurezza){
sicurezzaProgettazioneJFrame=new SicurezzaProgettazioneJFrame(this,new Logica(),icp);
}
if(e.getSource()==sicurezza2){
sicurezzaDirezioniLavoriJFrame=new SicurezzaDirezioniLavoriJFrame(this,new Logica(),icp);
}
if(e.getSource()==rilieviPlanoaltimetrici){
rilieviPlanoAltimetrici=new RilieviPlanoAltimetrici();
}
if(e.getSource()==impattiAmbietali){
impattiAmbientale=new StudioDiImpattoAmbientale(new Logica());
}
if(e.getSource()==pianoParticellareEspropio){
pianoParticellare=new PianiParticellareEspropio();
}
if(e.getSource()==supportoResponsabileDelProcedimento){
supportoResponsabile=new SupportoResponsabileDelProcedimento(new Logica ());
}
}
public void finish(){
double valueA=progettazioneframe.getValueA();
double valueB=progettazioneframe.getValueB();
double valueB1=progettazioneframe.getValueB1();
System.out.println("value="+valueA);
System.out.println("value="+valueB);
System.out.println("value="+valueB1);
}
}