📄 mainui.java
字号:
package connex.plugins.whiteboard;
import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.ItemListener;
import java.awt.event.ItemEvent;
import java.io.File;
import connex.app.utils.ToolBar;
import connex.app.utils.fileChooserUtils.ImagePreview;
import connex.app.utils.fileChooserUtils.ImageFilter;
import connex.app.loginUI.UserInfoP;
import java.io.IOException;
import javax.imageio.ImageIO;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class MainUI
extends JPanel implements ColorListener, ShapeSelectionListener {
protected final static int SELECT = 1;
protected final static int DRAWSHAPE = 2;
protected final static int FILLSHAPE = 3;
protected final static int FILLEDSHAPE = 4;
public static final int POLYGON = 5;
// protected final static int TEST = 5;
/**
* @directed
* @link aggregationByValue
* @supplierCardinality 1
* @clientCardinality 1
*/
private ColorPalette cPalette;
private Toolkit tk = Toolkit.getDefaultToolkit();
private Cursor defaultCursor = new Cursor(Cursor.CROSSHAIR_CURSOR);
private Cursor handCursor = new Cursor(Cursor.HAND_CURSOR);
private Image pencil = new ImageIcon("resources" + File.separator + "images" + File.separator +
"pencil.gif").getImage();
private Image fill = new ImageIcon("resources" + File.separator + "images" + File.separator +
"fill.gif").getImage();
private ImageIcon pen = new ImageIcon("resources" + File.separator + "images" + File.separator +
"pen.png");
private ImageIcon fil = new ImageIcon("resources" + File.separator + "images" + File.separator +
"fill.png");
private ImageIcon rec = new ImageIcon("resources" + File.separator + "images" + File.separator +
"rec.png");
private ImageIcon frec = new ImageIcon("resources" + File.separator + "images" + File.separator +
"fillRec.png");
private ImageIcon rrec = new ImageIcon("resources" + File.separator + "images" + File.separator +
"Rrec.png");
private ImageIcon frrec = new ImageIcon("resources" + File.separator + "images" + File.separator +
"fillRRec.png");
private ImageIcon oval = new ImageIcon("resources" + File.separator + "images" + File.separator +
"oval.png");
private ImageIcon foval = new ImageIcon("resources" + File.separator + "images" + File.separator +
"fillOval.png");
private ImageIcon select = new ImageIcon("resources" + File.separator + "images" + File.separator +
"select.png");
private ImageIcon linr = new ImageIcon("resources" + File.separator + "images" + File.separator +
"line.png");
private ImageIcon letter = new ImageIcon("resources" + File.separator + "images" + File.separator +
"text.png");
private ImageIcon arrow = new ImageIcon("resources" + File.separator + "images" + File.separator +
"arrow.png");
private ImageIcon poly1 = new ImageIcon("resources" + File.separator + "images" + File.separator +
"poly1.png");
private ImageIcon fpoly = new ImageIcon("resources" + File.separator + "images" + File.separator +
"poly.png");
BorderLayout borderLayout1 = new BorderLayout();
/**
* @link aggregationByValue
* @directed
* @supplierCardinality 1
* @clientCardinality 1
*/
Drawboard board = new Drawboard();
ToolBar tools = new ToolBar();
ToolBar head = new ToolBar();
JToggleButton rectBtn = new JToggleButton();
JToggleButton fillBtn = new JToggleButton();
JToggleButton lineBtn = new JToggleButton();
JToggleButton ovalBtn = new JToggleButton();
JToggleButton freehandBtn = new JToggleButton();
JButton saveBtn = new JButton();
JButton openBtn = new JButton();
JButton clearBtn = new JButton();
JToggleButton selectBtn = new JToggleButton();
JButton delBtn = new JButton();
JToggleButton rRectBtn = new JToggleButton();
JToggleButton grid = new JToggleButton("Grid",true);
JToggleButton rule = new JToggleButton("Rule",true);
JToggleButton arrowBtn = new JToggleButton();
JToggleButton Text = new JToggleButton();
JToggleButton jButton1 = new JToggleButton();
JToggleButton jButton2 = new JToggleButton();
JToggleButton jButton3 = new JToggleButton();
ButtonGroup g = new ButtonGroup();
JToggleButton poly = new JToggleButton();
JToggleButton fillPoly = new JToggleButton();
public static final int FillEdPOLYGON = 6;
RuleScrollPane scrollPane = new RuleScrollPane();
JLabel fillColor = new JLabel();
JToggleButton fillSelect = new JToggleButton();
JLabel penColor = new JLabel();
JToggleButton penSelect = new JToggleButton();
ButtonGroup g2 = new ButtonGroup();
JPanel jPanel1 = new JPanel();
private JFileChooser fc;
private JColorChooser cChooser = null;
public MainUI() {
try {
jbInit();
}
catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
this.setLayout(borderLayout1);
cPalette = new ColorPalette();
cPalette.setColorListener(this);
board.setPreferredSize(new Dimension(800, 600));
board.setSelectionListener(this);
// cPalette.setPreferredSize(new Dimension(61, 181));
tools.setOrientation(JToolBar.VERTICAL);
tools.setFloatable(false);
tools.setLayout(new FlowLayout());
tools.setPreferredSize(new Dimension(83, 25));
rectBtn.setOpaque(false);
rectBtn.setIcon(rec);
poly.setIcon(poly1);
fillPoly.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fillPoly_actionPerformed(e);
}
});
fillColor.setBackground(Color.white);
fillColor.setOpaque(true);
fillColor.setText(" ");
fillColor.setBounds(new Rectangle(12, 5, 15, 15));
fillColor.setCursor(handCursor);
penColor.setCursor(handCursor);
fillColor.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
fillColor_mouseClicked(e);
}
});
fillSelect.setPreferredSize(new Dimension(24, 22));
fillSelect.setToolTipText("");
fillSelect.setHorizontalAlignment(SwingConstants.CENTER);
fillSelect.setHorizontalTextPosition(SwingConstants.TRAILING);
fillSelect.setIcon(fil);
fillSelect.setText("");
penSelect.setPreferredSize(new Dimension(33, 33));
penColor.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
penColor_mouseClicked(e);
}
});
jPanel1.setOpaque(false);
g2.add(fillSelect);
fillSelect.setBounds(new Rectangle(31, 2, 24, 21));
penColor.setBackground(Color.black);
penColor.setOpaque(true);
penColor.setText(" ");
penColor.setBounds(new Rectangle(13, 29, 15, 15));
penSelect.setHorizontalAlignment(SwingConstants.CENTER);
penSelect.setHorizontalTextPosition(SwingConstants.TRAILING);
penSelect.setIcon(pen);
penSelect.setText("");
g2.add(penSelect);
penSelect.setBounds(new Rectangle(30, 26, 24, 22));
jPanel1.setPreferredSize(new Dimension(65, 60));
jPanel1.setLayout(null);
g.add(poly);
poly.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
poly_actionPerformed(e);
}
});
fillPoly.setIcon(fpoly);
g.add(fillPoly);
g.add(rectBtn);
rectBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
rectBtn_actionPerformed(e);
}
});
fillBtn.setOpaque(false);
fillBtn.setIcon(fil);
g.add(fillBtn);
fillBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fillBtn_actionPerformed(e);
}
});
lineBtn.setOpaque(false);
lineBtn.setIcon(linr);
g.add(lineBtn);
lineBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
lineBtn_actionPerformed(e);
}
});
ovalBtn.setOpaque(false);
ovalBtn.setIcon(oval);
g.add(ovalBtn);
ovalBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ovalBtn_actionPerformed(e);
}
});
freehandBtn.setOpaque(false);
freehandBtn.setIcon(pen);
g.add(freehandBtn);
freehandBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
freehandBtn_actionPerformed(e);
}
});
saveBtn.setOpaque(false);
saveBtn.setText("Save");
saveBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
saveBtn_actionPerformed(e);
}
});
openBtn.setText("Open");
openBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
openBtn_actionPerformed(e);
}
});
clearBtn.setOpaque(false);
clearBtn.setText("Clear");
clearBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
clearBtn_actionPerformed(e);
}
});
selectBtn.setOpaque(false);
selectBtn.setIcon(select);
g.add(selectBtn);
selectBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
selectBtn_actionPerformed(e);
}
});
delBtn.setOpaque(false);
delBtn.setText("Delete");
delBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
delBtn_actionPerformed(e);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -