Statistics
| Revision:

svn-gvsig-desktop / tags / v2_0_0_Build_2042 / extensions / org.gvsig.installer / org.gvsig.installer.swing / org.gvsig.installer.swing.impl / src / main / java / org / gvsig / installer / swing / impl / DefaultJShowUnresolvedDependenciesAndAskContinuePanel.java @ 37479

History | View | Annotate | Download (3.22 KB)

1
package org.gvsig.installer.swing.impl;
2

    
3
import java.awt.BorderLayout;
4
import java.awt.Dimension;
5
import java.awt.event.ActionEvent;
6
import java.awt.event.ActionListener;
7

    
8
import javax.swing.BorderFactory;
9
import javax.swing.Box;
10
import javax.swing.BoxLayout;
11
import javax.swing.JButton;
12
import javax.swing.JLabel;
13
import javax.swing.JList;
14
import javax.swing.JPanel;
15
import javax.swing.JScrollPane;
16

    
17
import org.gvsig.installer.lib.api.Dependencies;
18
import org.gvsig.installer.swing.api.SwingInstallerManager;
19
import org.gvsig.installer.swing.api.execution.JShowUnresolvedDependenciesAndAskContinuePanel;
20

    
21
public class DefaultJShowUnresolvedDependenciesAndAskContinuePanel extends JShowUnresolvedDependenciesAndAskContinuePanel implements ActionListener {
22

    
23

    
24
        /**
25
         * 
26
         */
27
        private static final long serialVersionUID = 2135985029410816305L;
28
        private Dependencies dependencies;
29
        private boolean doCancel = true;
30
        
31
        public DefaultJShowUnresolvedDependenciesAndAskContinuePanel(SwingInstallerManager manager, Dependencies dependencies, String message) {
32
//                this.buildPackageList(dependencies);
33
                this.dependencies = dependencies;
34
                this.createUI(manager, message);
35
        }
36
        
37
//        private void buildPackageList(Dependencies dependencies) {
38
//                this.dependencies = new ArrayList<String>();
39
//                for( int i=0 ; i<packages.size(); i++ ) {
40
//                        PackageInfo pkg = packages.get(i);
41
//                        this.packages.add(pkg.getName());
42
//                }
43
//        }
44
        
45
        private void createUI(SwingInstallerManager manager,String message) {
46
                this.setLayout( new BorderLayout());
47
                
48
        JButton cancelButton = new JButton("Cancel");
49
        cancelButton.setActionCommand("cancel");
50
        cancelButton.addActionListener(this);
51
        //
52
        final JButton continueButton = new JButton("Continue");
53
        continueButton.setActionCommand("continue");
54
        continueButton.addActionListener(this);
55

    
56
        JList list = new JList(this.dependencies.toArray());
57

    
58
        JScrollPane listScroller = new JScrollPane(list);
59
        listScroller.setPreferredSize(new Dimension(250, 80));
60
        listScroller.setAlignmentX(LEFT_ALIGNMENT);
61

    
62
        JPanel listPane = new JPanel();
63
        listPane.setLayout(new BoxLayout(listPane, BoxLayout.PAGE_AXIS));
64
        JLabel label = new JLabel(message);
65
        label.setLabelFor(list);
66
        listPane.add(label);
67
        listPane.add(Box.createRigidArea(new Dimension(0,5)));
68
        listPane.add(listScroller);
69
        listPane.setBorder(BorderFactory.createEmptyBorder(10,10,10,10));
70

    
71
        JPanel buttonPane = new JPanel();
72
        buttonPane.setLayout(new BoxLayout(buttonPane, BoxLayout.LINE_AXIS));
73
        buttonPane.setBorder(BorderFactory.createEmptyBorder(0, 10, 10, 10));
74
        buttonPane.add(Box.createHorizontalGlue());
75
        buttonPane.add(cancelButton);
76
        buttonPane.add(Box.createRigidArea(new Dimension(10, 0)));
77
        buttonPane.add(continueButton);
78

    
79
        this.add(listPane, BorderLayout.CENTER);
80
        this.add(buttonPane, BorderLayout.PAGE_END);
81
        }
82
        
83
        public boolean cancelled() {
84
                return doCancel;
85
        }
86
        
87
        public boolean needShow() {
88
                return this.dependencies.size()>0;
89
        }
90

    
91
        public void actionPerformed(ActionEvent e) {
92
                if ("cancel".equals(e.getActionCommand())) {
93
                        doCancel = true;
94
                } else {
95
                        doCancel = false;
96
                }
97
                this.setVisible(false);
98
        }
99
}