📄 postit.java
字号:
// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov Date: 17/3/2005 12:42:42
// Home Page : http://members.fortunecity.com/neshkov/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name: PostIt.java
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.Date;
import javax.swing.*;
public class PostIt extends JFrame
{
public PostIt()
{
super("4M PostIt! 1.2");
timePanel = new TimePanel();
currentColor = yellow;
init();
Container container = getContentPane();
JScrollPane jscrollpane = new JScrollPane(list);
jscrollpane.setHorizontalScrollBarPolicy(31);
container.add(jscrollpane);
JPanel jpanel = new JPanel(new GridLayout(2, 2));
addButton = new JButton("Add");
removeButton = new JButton("Remove");
editButton = new JButton("Edit Post");
timerButton = new JButton("Add Timer");
colorButton = new JButton("Yellow Color");
colorButton.setBackground(yellow);
jpanel.add(addButton);
jpanel.add(removeButton);
jpanel.add(editButton);
jpanel.add(timerButton);
container.add(jpanel, "South");
container.add(colorButton, "North");
addListeners();
setBounds(100, 100, 200, 400);
list.setFixedCellWidth(list.getWidth());
setResizable(false);
show();
}
private void init()
{
File file = new File("Papers.ser");
list = new JList(new DefaultListModel());
if(file.exists())
try
{
Object obj = new FileInputStream(file);
obj = new BufferedInputStream(((java.io.InputStream) (obj)));
ObjectInputStream objectinputstream = new ObjectInputStream(((java.io.InputStream) (obj)));
int i = ((Integer)objectinputstream.readObject()).intValue();
for(int j = 0; j < i; j++)
{
String s = (String)objectinputstream.readObject();
Point point = (Point)objectinputstream.readObject();
boolean flag = ((Boolean)objectinputstream.readObject()).booleanValue();
Color color = (Color)objectinputstream.readObject();
Date date = (Date)objectinputstream.readObject();
post(s, flag, point, color, date);
}
}
catch(IOException ioexception)
{
System.out.println("I don't care~");
}
catch(ClassNotFoundException classnotfoundexception)
{
System.out.println("I don't care~");
}
}
private void addListeners()
{
list.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent mouseevent)
{
int i = mouseevent.getClickCount();
if(i == 2)
{
int j = list.getSelectedIndex();
if(j == -1)
return;
DefaultListModel defaultlistmodel = getListModel();
showPaper((Paper)defaultlistmodel.getElementAt(j));
}
}
});
addButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
JTextArea jtextarea = new JTextArea(10, 20);
jtextarea.setLineWrap(true);
JScrollPane jscrollpane = new JScrollPane(jtextarea);
jscrollpane.setHorizontalScrollBarPolicy(31);
JOptionPane.showMessageDialog(PostIt.this, jscrollpane, "Input the post...", -1);
String s = jtextarea.getText();
if(s.equals(""))
{
return;
} else
{
post(s);
return;
}
}
});
removeButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
int i = list.getSelectedIndex();
if(i == -1)
{
return;
} else
{
DefaultListModel defaultlistmodel = getListModel();
JDialog jdialog = (JDialog)defaultlistmodel.getElementAt(i);
jdialog.dispose();
defaultlistmodel.remove(i);
return;
}
}
});
editButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
int i = list.getSelectedIndex();
if(i == -1)
{
return;
} else
{
DefaultListModel defaultlistmodel = getListModel();
Paper paper = (Paper)defaultlistmodel.getElementAt(i);
JTextArea jtextarea = new JTextArea(10, 20);
jtextarea.setText(paper.toString());
jtextarea.setCaretPosition(0);
jtextarea.setLineWrap(true);
JScrollPane jscrollpane = new JScrollPane(jtextarea);
jscrollpane.setHorizontalScrollBarPolicy(31);
JOptionPane.showMessageDialog(PostIt.this, jscrollpane, "Input the post...", -1);
String s = jtextarea.getText();
paper.editContent(s);
list.updateUI();
return;
}
}
});
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowevent)
{
try
{
Object obj = new FileOutputStream("Papers.ser");
obj = new BufferedOutputStream(((java.io.OutputStream) (obj)));
ObjectOutputStream objectoutputstream = new ObjectOutputStream(((java.io.OutputStream) (obj)));
DefaultListModel defaultlistmodel = getListModel();
int i = defaultlistmodel.size();
objectoutputstream.writeObject(new Integer(i));
for(int j = 0; j < i; j++)
{
objectoutputstream.writeObject(defaultlistmodel.getElementAt(j).toString());
Paper paper = (Paper)defaultlistmodel.getElementAt(j);
objectoutputstream.writeObject(paper.getLocation());
objectoutputstream.writeObject(Boolean.valueOf(paper.isShowing()));
objectoutputstream.writeObject(paper.getColor());
objectoutputstream.writeObject(paper.getDate());
}
objectoutputstream.close();
}
catch(IOException ioexception)
{
System.out.println("I don't care~");
}
System.exit(0);
}
});
timerButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
int i = list.getSelectedIndex();
if(i == -1)
return;
CalendarPanel calendarpanel = new CalendarPanel(PostIt.this);
calendarpanel.show();
DefaultListModel defaultlistmodel = getListModel();
Paper paper = (Paper)defaultlistmodel.getElementAt(i);
Date date = calendarpanel.getDate();
if(date == null)
{
return;
} else
{
paper.setTime(calendarpanel.getDate());
return;
}
}
});
colorButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
if(colorButton.getText().equals("Yellow Color"))
{
colorButton.setBackground(pink);
colorButton.setText("Pink Color");
currentColor = pink;
} else
{
colorButton.setBackground(yellow);
colorButton.setText("Yellow Color");
currentColor = yellow;
}
}
});
}
public void showPaper(Paper paper)
{
if(paper.isShowing())
paper.hide();
else
paper.show();
}
public void post(String s)
{
Paper paper = new Paper(s, this, true, null, currentColor);
getListModel().addElement(paper);
}
public void post(String s, boolean flag, Point point, Color color, Date date)
{
Paper paper = new Paper(s, this, flag, point, color);
paper.setTime(date);
getListModel().addElement(paper);
}
public static void main(String args[])
{
PostIt postit = new PostIt();
}
public DefaultListModel getListModel()
{
return (DefaultListModel)list.getModel();
}
public void setIndex(int i)
{
list.setSelectedIndex(i);
list.ensureIndexIsVisible(i);
}
JList list;
JButton addButton;
JButton removeButton;
JButton editButton;
JButton timerButton;
JButton colorButton;
TimePanel timePanel;
private final Color yellow = new Color(255, 255, 150);
private final Color pink = new Color(255, 192, 192);
private Color currentColor;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -