blob: 74b05a88b0f26c62a1170fabd813551461523f64 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.axis2.tool.service.swing.ui;
import org.apache.axis2.tool.service.bean.Page3Bean;
import org.apache.axis2.tool.service.bean.WizardBean;
import org.apache.axis2.tool.util.Constants;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
public class WizardPane3 extends WizardPane {
private Page3Bean myBean;
private JLabel outputFileLocationLabel;
private JTextField outputFileLocationTextBox;
private JButton browseButton;
private JLabel outputFileNameLabel;
private JTextField outputFileNameTextBox;
public WizardPane3(WizardBean bean, JFrame ownerFrame) {
super(ownerFrame);
init();
if (bean.getPage3bean() != null) {
this.myBean = bean.getPage3bean();
setBeanValues();
} else {
this.myBean = new Page3Bean();
bean.setPage3bean(myBean);
}
}
public boolean validateValues() {
String text1 = myBean.getOutputFileName();
String text2 = myBean.getOutputFolderName();
boolean text1Validity = (text1 != null && text1.trim().length() > 0);
boolean text2Validity = (text2 != null && text2.trim().length() > 0);
return text1Validity && text2Validity;
}
private void setBeanValues() {
this.outputFileLocationTextBox.setText(myBean.getOutputFolderName());
this.outputFileNameTextBox.setText(myBean.getOutputFileName());
}
private void init() {
this.setLayout(null);
this.setSize(width, height);
initDescription("\nInput the location for the output file and the name for \n" +
"the compiled jar file ");
this.outputFileLocationLabel = new JLabel("Output Folder");
this.add(this.outputFileLocationLabel);
this.outputFileLocationLabel.setBounds(hgap,
descHeight,
Constants.UIConstants.LABEL_WIDTH,
Constants.UIConstants.GENERAL_COMP_HEIGHT);
this.outputFileLocationTextBox = new JTextField();
this.add(this.outputFileLocationTextBox);
this.outputFileLocationTextBox.setBounds(
Constants.UIConstants.LABEL_WIDTH + 2 * hgap,
descHeight,
Constants.UIConstants.TEXT_BOX_WIDTH,
Constants.UIConstants.GENERAL_COMP_HEIGHT);
this.outputFileLocationTextBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleLocationChange();
}
});
this.outputFileLocationTextBox.addKeyListener(new KeyListener() {
public void keyTyped(KeyEvent e) {
}
public void keyPressed(KeyEvent e) {
handleLocationChange();
}
public void keyReleased(KeyEvent e) {
}
});
this.browseButton = new JButton(".");
this.add(this.browseButton);
this.browseButton.setBounds(
Constants.UIConstants.LABEL_WIDTH + 2 * hgap +
Constants.UIConstants.TEXT_BOX_WIDTH,
descHeight,
Constants.UIConstants.BROWSE_BUTTON_WIDTH,
Constants.UIConstants.GENERAL_COMP_HEIGHT);
this.browseButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
outputFileLocationTextBox.setText(browseForAFolder());
handleLocationChange();
}
});
this.outputFileNameLabel = new JLabel("Out File Name");
this.add(this.outputFileNameLabel);
this.outputFileNameLabel.setBounds(hgap,
descHeight + Constants.UIConstants.GENERAL_COMP_HEIGHT + vgap,
Constants.UIConstants.LABEL_WIDTH,
Constants.UIConstants.GENERAL_COMP_HEIGHT);
this.outputFileNameTextBox = new JTextField();
this.add(this.outputFileNameTextBox);
this.outputFileNameTextBox.setBounds(
Constants.UIConstants.LABEL_WIDTH + 2 * hgap,
descHeight + Constants.UIConstants.GENERAL_COMP_HEIGHT + vgap,
Constants.UIConstants.TEXT_BOX_WIDTH,
Constants.UIConstants.GENERAL_COMP_HEIGHT);
this.outputFileNameTextBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleFileNameChange();
}
});
this.outputFileNameTextBox.addKeyListener(new KeyListener() {
public void keyTyped(KeyEvent e) {
}
public void keyPressed(KeyEvent e) {
}
public void keyReleased(KeyEvent e) {
handleFileNameChange();
}
});
}
private void handleLocationChange() {
myBean.setOutputFolderName(outputFileLocationTextBox.getText());
}
private void handleFileNameChange() {
myBean.setOutputFileName(outputFileNameTextBox.getText());
}
}