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.
75 lines
2.3 KiB
75 lines
2.3 KiB
9 years ago
|
package com.fr.plugin.form.widget.ui;
|
||
|
|
||
|
import com.fr.design.beans.FurtherBasicBeanPane;
|
||
|
import com.fr.design.dialog.BasicDialog;
|
||
|
import com.fr.design.dialog.DialogActionAdapter;
|
||
|
import com.fr.design.gui.ibutton.UIButton;
|
||
|
import com.fr.design.gui.itextfield.UITextField;
|
||
|
import com.fr.design.gui.itree.filetree.ReportletPane;
|
||
|
import com.fr.plugin.form.widget.core.TemplateSource;
|
||
|
|
||
|
import javax.swing.*;
|
||
|
import java.awt.*;
|
||
|
import java.awt.event.ActionEvent;
|
||
|
import java.awt.event.ActionListener;
|
||
|
|
||
|
/**
|
||
|
* Created by richie on 15/12/2.
|
||
|
*/
|
||
|
public class TemplateSourcePane extends FurtherBasicBeanPane<TemplateSource> {
|
||
|
|
||
|
private UITextField textField;
|
||
|
|
||
|
public TemplateSourcePane() {
|
||
|
setLayout(new BorderLayout());
|
||
|
JPanel contentPane = new JPanel(new BorderLayout());
|
||
|
contentPane.setPreferredSize(new Dimension(30, 20));
|
||
|
add(contentPane, BorderLayout.NORTH);
|
||
|
|
||
|
textField = new UITextField();
|
||
|
UIButton btn = new UIButton("...");
|
||
|
btn.setPreferredSize(new Dimension(30, 20));
|
||
|
contentPane.add(textField, BorderLayout.CENTER);
|
||
|
contentPane.add(btn, BorderLayout.EAST);
|
||
|
btn.addActionListener(new ActionListener() {
|
||
|
@Override
|
||
|
public void actionPerformed(ActionEvent e) {
|
||
|
final ReportletPane reportletPane = new ReportletPane();
|
||
|
reportletPane.setSelectedReportletPath(textField.getText());
|
||
|
BasicDialog reportletDialog = reportletPane.showWindow(SwingUtilities.getWindowAncestor(TemplateSourcePane.this));
|
||
|
|
||
|
reportletDialog.addDialogActionListener(new DialogActionAdapter() {
|
||
|
public void doOk() {
|
||
|
textField.setText(reportletPane.getSelectedReportletPath());
|
||
|
}
|
||
|
});
|
||
|
reportletDialog.setVisible(true);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public boolean accept(Object ob) {
|
||
|
return ob instanceof TemplateSource;
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public String title4PopupWindow() {
|
||
|
return "模板路径";
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void reset() {
|
||
|
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void populateBean(TemplateSource ob) {
|
||
|
textField.setText(ob.getPath());
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public TemplateSource updateBean() {
|
||
|
return new TemplateSource(textField.getText());
|
||
|
}
|
||
|
}
|