📄 taskdialog.java
字号:
package net.sf.memoranda.ui;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.Frame;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import javax.swing.BorderFactory;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JComboBox;import javax.swing.JDialog;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSpinner;import javax.swing.JTextArea;import javax.swing.JTextField;import javax.swing.SpinnerDateModel;import javax.swing.SpinnerNumberModel;import javax.swing.SwingConstants;//import javax.swing.border.BevelBorder;import javax.swing.border.Border;import javax.swing.border.TitledBorder;import javax.swing.event.ChangeEvent;import javax.swing.event.ChangeListener;import javax.swing.JCheckBox;import net.sf.memoranda.CurrentProject;import net.sf.memoranda.date.CalendarDate;import net.sf.memoranda.util.Local;/*$Id: TaskDialog.java,v 1.25 2005/12/01 08:12:26 alexeya Exp $*/public class TaskDialog extends JDialog { JPanel mPanel = new JPanel(new BorderLayout()); JPanel areaPanel = new JPanel(new BorderLayout()); JPanel buttonsPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT)); JButton cancelB = new JButton(); JButton okB = new JButton(); Border border1; Border border2; JPanel dialogTitlePanel = new JPanel(new FlowLayout(FlowLayout.LEFT)); JLabel header = new JLabel(); public boolean CANCELLED = true; JPanel jPanel8 = new JPanel(new GridBagLayout()); Border border3; Border border4;// Border border5;// Border border6; JPanel jPanel2 = new JPanel(new GridLayout(3, 2)); JTextField todoField = new JTextField(); // added by rawsushi JTextField effortField = new JTextField(); JTextArea descriptionField = new JTextArea(); JScrollPane descriptionScrollPane = new JScrollPane(descriptionField); // Border border7; Border border8; CalendarFrame startCalFrame = new CalendarFrame(); CalendarFrame endCalFrame = new CalendarFrame(); String[] priority = {Local.getString("Lowest"), Local.getString("Low"), Local.getString("Normal"), Local.getString("High"), Local.getString("Highest")}; boolean ignoreStartChanged = false; boolean ignoreEndChanged = false; JPanel jPanel4 = new JPanel(new FlowLayout(FlowLayout.RIGHT)); JPanel jPanel6 = new JPanel(new FlowLayout(FlowLayout.LEFT)); JLabel jLabel6 = new JLabel(); JButton setStartDateB = new JButton(); JPanel jPanel1 = new JPanel(new FlowLayout(FlowLayout.RIGHT)); JLabel jLabel2 = new JLabel(); JSpinner startDate; JSpinner endDate;// JSpinner endDate = new JSpinner(new SpinnerDateModel()); JButton setEndDateB = new JButton(); //JPanel jPanel3 = new JPanel(new FlowLayout(FlowLayout.LEFT)); JPanel jPanel3 = new JPanel(new FlowLayout(FlowLayout.LEFT)); JPanel jPanelEffort = new JPanel(new FlowLayout(FlowLayout.LEFT));// JPanel jPanelNotes = new JPanel(new FlowLayout(FlowLayout.LEFT)); JButton setNotifB = new JButton(); JComboBox priorityCB = new JComboBox(priority); JLabel jLabel7 = new JLabel(); // added by rawsushi JLabel jLabelEffort = new JLabel(); JLabel jLabelDescription = new JLabel(); JCheckBox chkEndDate = new JCheckBox(); JPanel jPanelProgress = new JPanel(new FlowLayout(FlowLayout.RIGHT)); JLabel jLabelProgress = new JLabel(); JSpinner progress = new JSpinner(new SpinnerNumberModel(0, 0, 100, 5)); //Forbid to set dates outside the bounds CalendarDate startDateMin = CurrentProject.get().getStartDate(); CalendarDate startDateMax = CurrentProject.get().getEndDate(); CalendarDate endDateMin = startDateMin; CalendarDate endDateMax = startDateMax; public TaskDialog(Frame frame, String title) { super(frame, title, true); try { jbInit(); pack(); } catch (Exception ex) { new ExceptionDialog(ex); } } void jbInit() throws Exception { this.setResizable(false); this.setSize(new Dimension(430,300)); border1 = BorderFactory.createEmptyBorder(5, 5, 5, 5); border2 = BorderFactory.createEtchedBorder(Color.white, new Color(142, 142, 142)); border3 = new TitledBorder(BorderFactory.createEmptyBorder(0, 0, 10, 0), Local.getString("To Do"), TitledBorder.LEFT, TitledBorder.BELOW_TOP); border4 = BorderFactory.createEmptyBorder(0, 5, 0, 5);// border5 = BorderFactory.createEmptyBorder();// border6 = BorderFactory.createBevelBorder(BevelBorder.LOWERED,// Color.white, Color.white, new Color(178, 178, 178),// new Color(124, 124, 124));// border7 = BorderFactory.createLineBorder(Color.white, 2); border8 = BorderFactory.createEtchedBorder(Color.white, new Color(178, 178, 178)); cancelB.setMaximumSize(new Dimension(100, 26)); cancelB.setMinimumSize(new Dimension(100, 26)); cancelB.setPreferredSize(new Dimension(100, 26)); cancelB.setText(Local.getString("Cancel")); cancelB.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { cancelB_actionPerformed(e); } }); startDate = new JSpinner(new SpinnerDateModel(new Date(),null,null,Calendar.DAY_OF_WEEK)); endDate = new JSpinner(new SpinnerDateModel(new Date(),null,null,Calendar.DAY_OF_WEEK)); chkEndDate.setSelected(false); chkEndDate_actionPerformed(null); chkEndDate.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { chkEndDate_actionPerformed(e); } }); okB.setMaximumSize(new Dimension(100, 26)); okB.setMinimumSize(new Dimension(100, 26)); okB.setPreferredSize(new Dimension(100, 26)); okB.setText(Local.getString("Ok")); okB.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { okB_actionPerformed(e); } }); this.getRootPane().setDefaultButton(okB); mPanel.setBorder(border1); areaPanel.setBorder(border2); dialogTitlePanel.setBackground(Color.WHITE); dialogTitlePanel.setBorder(border4); //dialogTitlePanel.setMinimumSize(new Dimension(159, 52)); //dialogTitlePanel.setPreferredSize(new Dimension(159, 52)); header.setFont(new java.awt.Font("Dialog", 0, 20)); header.setForeground(new Color(0, 0, 124)); header.setText(Local.getString("To do")); header.setIcon(new ImageIcon(net.sf.memoranda.ui.TaskDialog.class.getResource( "resources/icons/task48.png"))); GridBagLayout gbLayout = (GridBagLayout) jPanel8.getLayout(); jPanel8.setBorder(border3); todoField.setBorder(border8); todoField.setPreferredSize(new Dimension(375, 24)); GridBagConstraints gbCon = new GridBagConstraints(); gbCon.gridwidth = GridBagConstraints.REMAINDER; gbCon.weighty = 1; gbLayout.setConstraints(todoField,gbCon); jLabelDescription.setMaximumSize(new Dimension(100, 16)); jLabelDescription.setMinimumSize(new Dimension(60, 16)); jLabelDescription.setText(Local.getString("Description")); gbCon = new GridBagConstraints(); gbCon.gridwidth = GridBagConstraints.REMAINDER; gbCon.weighty = 1; gbCon.anchor = GridBagConstraints.WEST; gbLayout.setConstraints(jLabelDescription,gbCon); descriptionField.setBorder(border8); descriptionField.setPreferredSize(new Dimension(375, 387)); // 3 additional pixels from 384 so that the last line is not cut off descriptionField.setLineWrap(true); descriptionField.setWrapStyleWord(true); gbCon = new GridBagConstraints(); gbCon.gridwidth = GridBagConstraints.REMAINDER; gbCon.weighty = 3; descriptionScrollPane.setPreferredSize(new Dimension(375,96)); gbLayout.setConstraints(descriptionScrollPane,gbCon); jLabelEffort.setMaximumSize(new Dimension(100, 16)); jLabelEffort.setMinimumSize(new Dimension(60, 16)); jLabelEffort.setText(Local.getString("Est Effort(hrs)")); effortField.setBorder(border8); effortField.setPreferredSize(new Dimension(30, 24)); startDate.setBorder(border8); startDate.setPreferredSize(new Dimension(80, 24)); SimpleDateFormat sdf = new SimpleDateFormat(); sdf = (SimpleDateFormat)DateFormat.getDateInstance(DateFormat.SHORT); // //Added by (jcscoobyrs) on 14-Nov-2003 at 10:45:16 PM startDate.setEditor(new JSpinner.DateEditor(startDate, sdf.toPattern())); startDate.addChangeListener(new ChangeListener() {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -