📄 instantmessage.java
字号:
package jim;
import java.util.*;
/* Copyright, 2001 Jason Dominiczak.
*
* This file is part of JIM - The Java Instant Messenger.
* eMailer is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
* JIM is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with eMailer; see the file COPYING. If not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
* MA 02111-1307, USA.
*/
public class InstantMessage extends javax.swing.JFrame {
private javax.swing.JPanel ivjJFrameContentPane = null;
private javax.swing.JTabbedPane ivjJTabbedPane1 = null;
public java.util.Vector MessageVector = new Vector();
IvjEventHandler ivjEventHandler = new IvjEventHandler();
class IvjEventHandler implements java.awt.event.WindowListener {
public void windowActivated(java.awt.event.WindowEvent e) {};
public void windowClosed(java.awt.event.WindowEvent e) {};
public void windowClosing(java.awt.event.WindowEvent e) {
if (e.getSource() == InstantMessage.this)
connEtoC1(e);
};
public void windowDeactivated(java.awt.event.WindowEvent e) {};
public void windowDeiconified(java.awt.event.WindowEvent e) {};
public void windowIconified(java.awt.event.WindowEvent e) {};
public void windowOpened(java.awt.event.WindowEvent e) {};
};
/**
* InstantMessage constructor comment.
*/
public InstantMessage() {
super();
initialize();
}
/**
* InstantMessage constructor comment.
* @param title java.lang.String
*/
public InstantMessage(String title) {
super(title);
}
/**
* connEtoC1: (InstantMessage.window.windowClosing(java.awt.event.WindowEvent) --> InstantMessage.instantMessage_WindowClosing(Ljava.awt.event.WindowEvent;)V)
* @param arg1 java.awt.event.WindowEvent
*/
/* WARNING: THIS METHOD WILL BE REGENERATED. */
private void connEtoC1(java.awt.event.WindowEvent arg1) {
try {
// user code begin {1}
// user code end
this.instantMessage_WindowClosing(arg1);
// user code begin {2}
// user code end
} catch (java.lang.Throwable ivjExc) {
// user code begin {3}
// user code end
handleException(ivjExc);
}
}
/**
* Return the JFrameContentPane property value.
* @return javax.swing.JPanel
*/
/* WARNING: THIS METHOD WILL BE REGENERATED. */
private javax.swing.JPanel getJFrameContentPane() {
if (ivjJFrameContentPane == null) {
try {
ivjJFrameContentPane = new javax.swing.JPanel();
ivjJFrameContentPane.setName("JFrameContentPane");
ivjJFrameContentPane.setLayout(new java.awt.BorderLayout());
getJFrameContentPane().add(getJTabbedPane1(), "Center");
// user code begin {1}
// user code end
} catch (java.lang.Throwable ivjExc) {
// user code begin {2}
// user code end
handleException(ivjExc);
}
}
return ivjJFrameContentPane;
}
/**
* Return the JTabbedPane1 property value.
* @return javax.swing.JTabbedPane
*/
/* WARNING: THIS METHOD WILL BE REGENERATED. */
public javax.swing.JTabbedPane getJTabbedPane1() {
if (ivjJTabbedPane1 == null) {
try {
ivjJTabbedPane1 = new javax.swing.JTabbedPane();
ivjJTabbedPane1.setName("JTabbedPane1");
// user code begin {1}
//ivjJTabbedPane1.insertTab("Jason", new javax.swing.ImageIcon(getClass().getResource("/aimicon.gif")), new InstantMessagePanel("Jason", "Text hello", null) , null, 0);
// user code end
} catch (java.lang.Throwable ivjExc) {
// user code begin {2}
// user code end
handleException(ivjExc);
}
}
return ivjJTabbedPane1;
}
/**
* Insert the method's description here.
* Creation date: (10/15/2001 6:12:53 PM)
* @return java.util.Vector
*/
public java.util.Vector getMessageVector() {
return MessageVector;
}
/**
* Called whenever the part throws an exception.
* @param exception java.lang.Throwable
*/
private void handleException(java.lang.Throwable exception) {
/* Uncomment the following lines to print uncaught exceptions to stdout */
// System.out.println("--------- UNCAUGHT EXCEPTION ---------");
// exception.printStackTrace(System.out);
}
/**
* Initializes connections
* @exception java.lang.Exception The exception description.
*/
/* WARNING: THIS METHOD WILL BE REGENERATED. */
private void initConnections() throws java.lang.Exception {
// user code begin {1}
// user code end
this.addWindowListener(ivjEventHandler);
}
/**
* Initialize the class.
*/
/* WARNING: THIS METHOD WILL BE REGENERATED. */
private void initialize() {
try {
// user code begin {1}
// user code end
setName("InstantMessage");
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setSize(487, 310);
setVisible(false);
setTitle("Instant Messages");
setContentPane(getJFrameContentPane());
initConnections();
} catch (java.lang.Throwable ivjExc) {
handleException(ivjExc);
}
// user code begin {2}
// user code end
}
/**
* Comment
*/
public void instantMessage_WindowClosing(java.awt.event.WindowEvent windowEvent) {
MessageVector.removeAllElements();
getJTabbedPane1().removeAll();
return;
}
/**
* main entrypoint - starts the part when it is run as an application
* @param args java.lang.String[]
*/
public static void main(java.lang.String[] args) {
try {
InstantMessage aInstantMessage;
aInstantMessage = new InstantMessage();
aInstantMessage.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(0);
};
});
aInstantMessage.show();
java.awt.Insets insets = aInstantMessage.getInsets();
aInstantMessage.setSize(aInstantMessage.getWidth() + insets.left + insets.right, aInstantMessage.getHeight() + insets.top + insets.bottom);
aInstantMessage.setVisible(true);
} catch (Throwable exception) {
System.err.println("Exception occurred in main() of javax.swing.JFrame");
exception.printStackTrace(System.out);
}
}
/**
* Insert the method's description here.
* Creation date: (10/15/2001 6:11:33 PM)
* @param from java.lang.String
* @param text java.lang.String
* @param plInterface jim.PluginInterface
*/
public void newInstantMessage(String from, String text, PluginInterface plInterface) {
InstantMessagePanel testImPanel = null;
InstantMessagePanel finalImPanel = null;
for(int i=0;i<MessageVector.size();i++)
{
testImPanel = (InstantMessagePanel)MessageVector.elementAt(i);
String[] compArray = new String[2];
compArray = testImPanel.getConversationInfo();
if(from.equalsIgnoreCase(testImPanel.fromField))
{
if(plInterface.getTreeName()==testImPanel.pluginField)
{
finalImPanel = testImPanel;
}
}
}
if(finalImPanel!=null)
{
finalImPanel.addtlMessage(from, text);
}else{
InstantMessagePanel imPanel = new InstantMessagePanel(from, text, plInterface, this);
MessageVector.addElement(imPanel);
getJTabbedPane1().insertTab(from, plInterface.getTabIcon(), imPanel , null, 0);
}
}
/**
* Insert the method's description here.
* Creation date: (10/15/2001 6:11:33 PM)
* @param from java.lang.String
* @param text java.lang.String
* @param plInterface jim.PluginInterface
*/
public void newInstantMessage(String from, String text, PluginInterface plInterface, boolean iSent) {
InstantMessagePanel testImPanel = null;
InstantMessagePanel finalImPanel = null;
for(int i=0;i<MessageVector.size();i++)
{
testImPanel = (InstantMessagePanel)MessageVector.elementAt(i);
String[] compArray = new String[2];
compArray = testImPanel.getConversationInfo();
if(from.equalsIgnoreCase(testImPanel.fromField))
{
if(plInterface.getTreeName()==testImPanel.pluginField)
{
finalImPanel = testImPanel;
}
}
}
if(finalImPanel!=null)
{
finalImPanel.addtlMessage(from, text);
}else{
InstantMessagePanel imPanel = new InstantMessagePanel(from, text, plInterface, this, iSent);
MessageVector.addElement(imPanel);
getJTabbedPane1().insertTab(from, plInterface.getTabIcon(), imPanel , null, 0);
}
}
/**
* Insert the method's description here.
* Creation date: (10/15/2001 6:12:53 PM)
* @param newMessageVector java.util.Vector
*/
public void setMessageVector(java.util.Vector newMessageVector) {
MessageVector = newMessageVector;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -