Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

edu.ou.kmi.buddyspace.gui
Class BSMainFrame  view BSMainFrame download BSMainFrame.java

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjava.awt.Window
              extended byjava.awt.Frame
                  extended byjavax.swing.JFrame
                      extended byedu.ou.kmi.buddyspace.gui.BSMainFrame
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, edu.ou.kmi.buddyspace.core.BSIQListener, edu.ou.kmi.buddyspace.core.BSLoginListener, edu.ou.kmi.buddyspace.core.BSMessageListener, edu.ou.kmi.buddyspace.core.BSPresenceListener, edu.ou.kmi.buddyspace.core.BSRegListener, org.jabber.jabberbeans.ConnectionListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.event.ItemListener, java.awt.MenuContainer, javax.swing.RootPaneContainer, org.jabber.jabberbeans.RosterListener, java.io.Serializable, javax.swing.WindowConstants

public class BSMainFrame
extends javax.swing.JFrame
implements java.awt.event.ActionListener, java.awt.event.ItemListener, org.jabber.jabberbeans.ConnectionListener, edu.ou.kmi.buddyspace.core.BSIQListener, org.jabber.jabberbeans.RosterListener, edu.ou.kmi.buddyspace.core.BSPresenceListener, edu.ou.kmi.buddyspace.core.BSMessageListener, edu.ou.kmi.buddyspace.core.BSLoginListener, edu.ou.kmi.buddyspace.core.BSRegListener

BSMainFrame is the main window of BuddySpace. It provides basic user interface and plug-ins support. It uses BSCore to handle basic jabber functionality. The plug-ins can use it for both (i) connect to BSCore and that way communicate through jabber protocol and (ii) display their output.


Nested Class Summary
 class BSMainFrame.BSShowComboRenderer
           
 
Nested classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  javax.swing.JMenuItem aboutMenuItem
           
private  javax.swing.JButton addContactButton
           
private  javax.swing.JMenuItem addContactMenuItem
           
private  boolean autoLogin
           
private  javax.swing.JCheckBoxMenuItem autoPopupMenuItem
           
private  boolean autoSelectChat
           
private  javax.swing.ImageIcon awayIcon
           
private  java.awt.Image awayImage
           
private  java.awt.Image awayMsgImage
           
private  javax.swing.JMenuItem awayPresenceMenuItem
           
private  javax.swing.JMenu bookmarkMenu
           
private  BSBookmarks bookmarks
          bookmarks
private  javax.swing.ImageIcon busyIcon
           
private  javax.swing.JMenuItem busyPresenceMenuItem
           
private  javax.swing.JMenuItem changeContactMenuItem
           
private  javax.swing.ImageIcon chatIcon
           
private  javax.swing.JMenuItem chatMenuItem
           
private  javax.swing.JMenuItem chatPresenceMenuItem
           
private  BSChatWinManager chatWinMan
           
private  javax.swing.JToggleButton compactButton
           
private  boolean compactView
           
private  javax.swing.JCheckBoxMenuItem compactViewMenuItem
           
private  javax.swing.JToggleButton connectButton
           
private  boolean connected
           
private  javax.swing.JMenuItem connectMenuItem
           
private  edu.ou.kmi.buddyspace.core.BSCore core
           
private  java.lang.String currentLookAndFeel
           
private  javax.swing.ImageIcon customIcon
           
private  javax.swing.JMenuItem customPresenceMenuItem
           
static java.lang.String DEF_FILE_SERVER
           
static java.lang.String DEF_FILE_SERVER_PATH
           
static java.lang.String DEF_FILE_SERVER_PORT
           
static java.lang.String DEF_LOGO_IMG_PATH
           
static java.lang.String DEF_NEW_MSG_SOUND_FILE_NAME
           
static java.lang.String DEF_PASSWORD
           
static int DEF_PORT
           
static int DEF_PRIORITY
           
static int DEF_PROFILE_NUM
           
static java.lang.String DEF_PROXY
           
static java.lang.String DEF_PROXY_PORT
           
static java.lang.String DEF_RESOURCE
           
static java.lang.String DEF_SERVER
           
static java.lang.String DEF_USERNAME
           
private  javax.swing.JButton delContactButton
           
private  javax.swing.JMenuItem deleteContactMenuItem
           
private  javax.swing.JMenuItem disconnectMenuItem
           
private  javax.swing.ImageIcon dndIcon
           
private  javax.swing.JMenuItem dndPresenceMenuItem
           
private  boolean dockWindows
           
private  javax.swing.JCheckBoxMenuItem dockWindowsMenuItem
           
private  boolean dontSendPresence
           
private  javax.swing.ImageIcon elseIcon
           
private  javax.swing.JMenuItem elsePresenceMenuItem
           
private  javax.swing.JMenuItem exitMenuItem
           
private  boolean expandGroups
           
private  javax.swing.JToggleButton expandGroupsButton
           
static java.lang.String fileServer
           
static java.lang.String fileServerPath
           
static java.lang.String fileServerPort
           
private  boolean forceChat
           
private  javax.swing.JMenu helpMenu
           
private  edu.ou.kmi.buddyspace.core.BSInfoQueryBean infoQueryBean
           
private  javax.swing.JMenu jabberMenu
           
private  javax.swing.JLabel logoIconLabel
           
static java.lang.String logoImgPath
           
private  javax.swing.JMenu lookAndFeelMenu
           
private  javax.swing.JMenu mainMenu
           
private  javax.swing.JMenuBar mainMenuBar
          menu variables
protected  javax.swing.JPanel mainPanel
          main tab variables
static javax.swing.JTabbedPane mainTabbedPane
          main tabbedPane
private  javax.swing.JMenuItem messageMenuItem
           
private  edu.ou.kmi.buddyspace.core.BSMessengerBean messengerBean
           
private  BSMsgWinManager msgWinMan
           
private  boolean newAccount
           
private  boolean newMessage
           
static java.lang.String newMsgSoundFileName
           
static java.lang.String NO_GROUP_NAME
           
private  javax.swing.ImageIcon offlineIcon
           
private  java.awt.Image offlineImage
           
private  java.awt.Image offlineMsgImage
           
private  javax.swing.ImageIcon onlineIcon
           
private  java.awt.Image onlineImage
           
private  java.awt.Image onlineMsgImage
           
private  javax.swing.JMenuItem onlinePresenceMenuItem
           
private  boolean onlyOnline
           
private  javax.swing.JToggleButton onlyOnlineButton
           
private  javax.swing.JCheckBoxMenuItem onlyOnlineMenuItem
           
static java.lang.String password
           
private  edu.ou.kmi.buddyspace.plugins.BSPluginLoader plugins
           
private  javax.swing.JMenu pluginsMenu
           
static int port
           
static java.lang.String PREF_NAME_AUTO_LOGIN
           
static java.lang.String PREF_NAME_AUTO_SELECT
           
static java.lang.String PREF_NAME_COMPACT_VIEW
           
static java.lang.String PREF_NAME_DOCK_WINDOWS
           
static java.lang.String PREF_NAME_FILE_SERVER
           
static java.lang.String PREF_NAME_FILE_SERVER_PATH
           
static java.lang.String PREF_NAME_FILE_SERVER_PORT
           
static java.lang.String PREF_NAME_LAF
           
static java.lang.String PREF_NAME_NEW_MSG_SOUND_FILE_NAME
           
static java.lang.String PREF_NAME_ONLY_ONLINE
           
static java.lang.String PREF_NAME_PASSWORD
           
static java.lang.String PREF_NAME_PORT
           
static java.lang.String PREF_NAME_PRIORITY
           
static java.lang.String PREF_NAME_PROFILE_NUM
          preferences records names
static java.lang.String PREF_NAME_PROXY
           
static java.lang.String PREF_NAME_PROXY_PORT
           
static java.lang.String PREF_NAME_RESOURCE
           
static java.lang.String PREF_NAME_SCROLL_TABS
           
static java.lang.String PREF_NAME_SERVER
           
static java.lang.String PREF_NAME_SHOW_DEBUG
           
static java.lang.String PREF_NAME_SHOW_MSGS
           
static java.lang.String PREF_NAME_SHOW_STATUS
           
static java.lang.String PREF_NAME_STATUSES_BAR_JID
           
static java.lang.String PREF_NAME_STATUSES_BAR_JID_NUM
           
static java.lang.String PREF_NAME_USERNAME
           
private  javax.swing.JMenuItem prefsMenuItem
           
private  edu.ou.kmi.buddyspace.core.BSPresenceBean presenceBean
           
private  javax.swing.ImageIcon[] presenceIcons
           
private  javax.swing.JMenu presenceMenu
           
static java.lang.String[] presenceStrs
           
static int priority
           
(package private)  java.util.Properties properties
           
static java.lang.String proxy
           
static java.lang.String proxyPort
           
private  javax.swing.JMenuItem refreshRosterMenuItem
           
private  edu.ou.kmi.buddyspace.core.BSRegisterBean regBean
           
static java.lang.String resource
           
private  edu.ou.kmi.buddyspace.core.BSRosterBean rosterBean
           
private  javax.swing.JMenu rosterMenu
           
private  BSRosterTreeView rosterTree
           
private  boolean scrollTabs
           
private  javax.swing.JCheckBoxMenuItem scrollTabsMenuItem
           
private  edu.ou.kmi.buddyspace.core.BSServedIDs servedIDs
           
static java.lang.String server
           
static java.lang.String SHOW_AWAY_STR
           
static java.lang.String SHOW_CHAT_STR
           
static java.lang.String SHOW_DND_STR
           
static java.lang.String SHOW_OFFLINE_STR
           
static java.lang.String SHOW_ONLINE_STR
          presence show displaying constants
static java.lang.String SHOW_XA_STR
           
private  javax.swing.JComboBox showComboBox
           
private  boolean showDebug
           
private  javax.swing.JCheckBoxMenuItem showDebugMenuItem
           
private  boolean showMsgs
           
private  javax.swing.JCheckBoxMenuItem showMsgsMenuItem
           
private  boolean showStatus
           
private  javax.swing.JCheckBoxMenuItem showStatusMenuItem
           
private  edu.ou.kmi.buddyspace.utils.SoundPlayer soundPlayer
           
static java.lang.String STATUS_BUSY_STR
           
static java.lang.String STATUS_ELSE_STR
           
private  BSStatusesBar statusesBar
           
(package private)  javax.swing.JToolBar toolBar
          tool bar
private  javax.swing.JMenuItem updatesMenuItem
           
static java.lang.String username
          preferences variables
static java.lang.String VERSION
          default values
private  javax.swing.ImageIcon xaIcon
           
private  javax.swing.JMenuItem xaPresenceMenuItem
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Window
 
Fields inherited from class java.awt.Container
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
BSMainFrame()
          Creates new form BSMainFrame
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent evt)
          Handles action events from components.
 boolean addAndSavePreferences(java.lang.String[] names, java.lang.String[] values)
           
 boolean addBookmark(JID jid, java.lang.String namespace, java.lang.String name)
          Adds bookmark.
private  void addComponentListeners()
          Adds listeners to components handling user interactivity.
private  void addLookAndFeelMenu()
          Adds the menu for live changing of look and feel
 void addMenu(javax.swing.JMenu menu)
          Adds menu of a plugin into menu.
 void addPluginJabberMenuItem(javax.swing.JMenuItem menuItem)
          Adds menuItem of a plugin into jabber menu.
 void addPluginShowMenuItem(javax.swing.JMenuItem menuItem)
          Adds menuItem of a plugin into show menu.
 void changedRoster(Roster roster)
          RosterListener function.
 void changeViewType(boolean compact)
           
 void chatMessageReceived(org.jabber.jabberbeans.Message msg)
          BSMessageListener function.
 void close()
          Closes the application
 void composeMessage(java.util.Enumeration jids, java.util.Enumeration groups)
          Opens message compose window for given jids and groups.
 void composeMessage(JID jid)
          Opens message compose window for given JID.
private  void connect(boolean connect)
           
 void connect(java.lang.String username, java.lang.String password, java.lang.String resource, java.lang.String server, int port, boolean newAccount)
          Connects and logs in
 void connectionChanged(ConnectionEvent ce)
          ConnectionListener function.
private  void enableMenus(boolean enable)
          En/disables menus (dependent on connection).
private  void exitForm(java.awt.event.WindowEvent evt)
          Exit the Application
 java.awt.Image getCurrentPresenceImage()
           
 javax.swing.Icon getPresenceIcon(boolean connected, java.lang.String showString, java.lang.String statusString)
           
 java.awt.Image getPresenceImage(boolean connected, java.lang.String showString, boolean newMessage)
           
 void getSupportedNamespaces(java.util.Vector namespaces, java.util.Vector names)
          Adds supported namespaces and their names
 void groupchatMessageReceived(org.jabber.jabberbeans.Message msg)
          BSMessageListener function.
 void headlineMessageReceived(org.jabber.jabberbeans.Message msg)
          BSMessageListener function.
private  void initComponents()
          Inits components.
private  void initLAF()
          Inits the given look and feel.
private  void initMainTab()
          Inits main tab.
private  void initMenu()
          Inits menu
private  void initToolBar()
          Inits tool bar.
 boolean isAutoPopping()
           
 boolean isConnected()
           
 boolean isDockingWindows()
           
static boolean isJava1Point4orHigher()
          Returns if currently running java environment is 1.4 or higher.
 boolean isNewMessage()
          Returns if there is some new message.
 void itemStateChanged(java.awt.event.ItemEvent evt)
          Handles item events.
protected  void loadPreferences()
          Loads preferences
 boolean loadPreferences(java.util.Properties props)
          Loads preferences
 java.util.Vector loadPreferences(java.lang.String[] names, java.lang.String[] defaults)
           
 java.util.Vector loadStatusesBarJIDs()
           
 void loginAuthorized()
          Called when authentication succeeded
 void loginError(org.jabber.jabberbeans.InfoQuery iq)
          Called when login error occured
 void loginError(java.lang.String error)
          Called when login failes
 void loginRegistered()
          Called when authentication moved, but still in progress
static void main(java.lang.String[] args)
           
 void messageError(JID toAddress, java.lang.String errType, java.lang.String error)
          BSMessageListener function.
 void messageError(org.jabber.jabberbeans.Message msg)
          BSMessageListener function.
 void messageRead(org.jabber.jabberbeans.Message msg)
          BSMessageListener function.
 void oobReceived(java.lang.String url, JID jid)
          BSIQListener function.
 void openChatWindow(JID jid, boolean select, boolean forceResource)
          Opens chat window if not exist already.
 void openChatWindow(JID jid, boolean select, boolean forceResource, java.lang.String nick)
          Opens chat window if not exist already.
 boolean performAction(JID jid, java.lang.String namespace)
          Performs action within given namespace for given JID
 void plainMessageReceived(org.jabber.jabberbeans.Message msg)
          BSMessageListener function.
 void playAlertSound()
           
 void presenceChanged(edu.ou.kmi.buddyspace.core.BSPresenceInfo pi)
          BSPresenceListener function.
 void presencesCleared()
          BSPresenceListener function - empty implementation.
 void regError(org.jabber.jabberbeans.InfoQuery iq, java.lang.String id)
          Called when registration failes
 void regInfosNeeded(org.jabber.jabberbeans.InfoQuery iq, java.lang.String id)
          Called when registration information is needed
 void registered(org.jabber.jabberbeans.InfoQuery iq, java.lang.String id)
          Called when registered
 boolean removeBookmark(JID jid, java.lang.String namespace)
          Removes bookmark.
 void replacedRoster(Roster roster)
          RosterListener function.
protected  void savePreferences()
          Saves preferences
 boolean saveProperties(java.util.Properties props)
           
 boolean saveStatusesBarJIDs(java.util.Enumeration jids)
           
 void sendFile(JID jid)
          Opens dialog for file sending and possible uploads the file.
 void sendOOB(JID jid, java.lang.String url)
          Calls BSInfoQueryBean function sendOOB.
 void sendSubscriptionRequest(JID jid)
          Sends presence subscription request.
protected  void setConnectButton()
           
protected  void setExpendGroupsButton(boolean expanded)
           
protected  void setGUIforConnectionState(boolean connected)
           
 void setNewMessage()
          Sets form to display that a message is waiting.
 void setPresence(javax.swing.Icon presenceIcon, boolean sendPresence)
          Changes presence
private  void setPresence(java.lang.String presenceStr, java.lang.String statusStr, boolean sendPresence)
          Changes presence
private  void setPresenceIcons(java.lang.String showString, java.lang.String statusString)
          Changes application icon according to presence and message waiting
 void setProxy(java.lang.String proxy, java.lang.String proxyPort)
           
 void setShowDebug(boolean show)
           
 void setShowMessages(boolean show)
           
 void setShowStatus(boolean show)
           
 void subscriptionApproved(JID jid)
          BSPresenceListener function.
 void subscriptionRequested(JID jid)
          BSPresenceListener function.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getPreferredSize, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processKeyEvent, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getGraphicsConfiguration, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jabber.jabberbeans.ConnectionListener
connected, connectFailed, connecting, disconnected
 
Methods inherited from interface org.jabber.jabberbeans.RosterListener
changedRoster, replacedRoster
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

mainMenuBar

private javax.swing.JMenuBar mainMenuBar
menu variables


mainMenu

private javax.swing.JMenu mainMenu

jabberMenu

private javax.swing.JMenu jabberMenu

connectMenuItem

private javax.swing.JMenuItem connectMenuItem

disconnectMenuItem

private javax.swing.JMenuItem disconnectMenuItem

chatMenuItem

private javax.swing.JMenuItem chatMenuItem

messageMenuItem

private javax.swing.JMenuItem messageMenuItem

prefsMenuItem

private javax.swing.JMenuItem prefsMenuItem

exitMenuItem

private javax.swing.JMenuItem exitMenuItem

presenceMenu

private javax.swing.JMenu presenceMenu

onlinePresenceMenuItem

private javax.swing.JMenuItem onlinePresenceMenuItem

chatPresenceMenuItem

private javax.swing.JMenuItem chatPresenceMenuItem

elsePresenceMenuItem

private javax.swing.JMenuItem elsePresenceMenuItem

busyPresenceMenuItem

private javax.swing.JMenuItem busyPresenceMenuItem

awayPresenceMenuItem

private javax.swing.JMenuItem awayPresenceMenuItem

xaPresenceMenuItem

private javax.swing.JMenuItem xaPresenceMenuItem

dndPresenceMenuItem

private javax.swing.JMenuItem dndPresenceMenuItem

customPresenceMenuItem

private javax.swing.JMenuItem customPresenceMenuItem

rosterMenu

private javax.swing.JMenu rosterMenu

addContactMenuItem

private javax.swing.JMenuItem addContactMenuItem

changeContactMenuItem

private javax.swing.JMenuItem changeContactMenuItem

deleteContactMenuItem

private javax.swing.JMenuItem deleteContactMenuItem

refreshRosterMenuItem

private javax.swing.JMenuItem refreshRosterMenuItem

pluginsMenu

private javax.swing.JMenu pluginsMenu

onlyOnlineMenuItem

private javax.swing.JCheckBoxMenuItem onlyOnlineMenuItem

autoPopupMenuItem

private javax.swing.JCheckBoxMenuItem autoPopupMenuItem

scrollTabsMenuItem

private javax.swing.JCheckBoxMenuItem scrollTabsMenuItem

dockWindowsMenuItem

private javax.swing.JCheckBoxMenuItem dockWindowsMenuItem

compactViewMenuItem

private javax.swing.JCheckBoxMenuItem compactViewMenuItem

showMsgsMenuItem

private javax.swing.JCheckBoxMenuItem showMsgsMenuItem

showDebugMenuItem

private javax.swing.JCheckBoxMenuItem showDebugMenuItem

showStatusMenuItem

private javax.swing.JCheckBoxMenuItem showStatusMenuItem

lookAndFeelMenu

private javax.swing.JMenu lookAndFeelMenu

bookmarkMenu

private javax.swing.JMenu bookmarkMenu

helpMenu

private javax.swing.JMenu helpMenu

updatesMenuItem

private javax.swing.JMenuItem updatesMenuItem

aboutMenuItem

private javax.swing.JMenuItem aboutMenuItem

toolBar

javax.swing.JToolBar toolBar
tool bar


connectButton

private javax.swing.JToggleButton connectButton

expandGroupsButton

private javax.swing.JToggleButton expandGroupsButton

addContactButton

private javax.swing.JButton addContactButton

delContactButton

private javax.swing.JButton delContactButton

onlyOnlineButton

private javax.swing.JToggleButton onlyOnlineButton

showComboBox

private javax.swing.JComboBox showComboBox

compactButton

private javax.swing.JToggleButton compactButton

mainTabbedPane

public static javax.swing.JTabbedPane mainTabbedPane
main tabbedPane


mainPanel

protected javax.swing.JPanel mainPanel
main tab variables


presenceStrs

public static java.lang.String[] presenceStrs

SHOW_ONLINE_STR

public static java.lang.String SHOW_ONLINE_STR
presence show displaying constants


SHOW_CHAT_STR

public static java.lang.String SHOW_CHAT_STR

SHOW_AWAY_STR

public static java.lang.String SHOW_AWAY_STR

SHOW_XA_STR

public static java.lang.String SHOW_XA_STR

SHOW_DND_STR

public static java.lang.String SHOW_DND_STR

SHOW_OFFLINE_STR

public static java.lang.String SHOW_OFFLINE_STR

STATUS_BUSY_STR

public static java.lang.String STATUS_BUSY_STR

STATUS_ELSE_STR

public static java.lang.String STATUS_ELSE_STR

VERSION

public static final java.lang.String VERSION
default values

See Also:
Constant Field Values

DEF_RESOURCE

public static final java.lang.String DEF_RESOURCE
See Also:
Constant Field Values

DEF_PROFILE_NUM

public static final int DEF_PROFILE_NUM
See Also:
Constant Field Values

DEF_USERNAME

public static final java.lang.String DEF_USERNAME
See Also:
Constant Field Values

DEF_SERVER

public static final java.lang.String DEF_SERVER
See Also:
Constant Field Values

DEF_PORT

public static final int DEF_PORT
See Also:
Constant Field Values

DEF_PRIORITY

public static final int DEF_PRIORITY
See Also:
Constant Field Values

DEF_PASSWORD

public static final java.lang.String DEF_PASSWORD
See Also:
Constant Field Values

DEF_PROXY

public static final java.lang.String DEF_PROXY
See Also:
Constant Field Values

DEF_PROXY_PORT

public static final java.lang.String DEF_PROXY_PORT
See Also:
Constant Field Values

DEF_FILE_SERVER

public static final java.lang.String DEF_FILE_SERVER
See Also:
Constant Field Values

DEF_FILE_SERVER_PATH

public static final java.lang.String DEF_FILE_SERVER_PATH
See Also:
Constant Field Values

DEF_FILE_SERVER_PORT

public static final java.lang.String DEF_FILE_SERVER_PORT
See Also:
Constant Field Values

DEF_LOGO_IMG_PATH

public static final java.lang.String DEF_LOGO_IMG_PATH
See Also:
Constant Field Values

DEF_NEW_MSG_SOUND_FILE_NAME

public static final java.lang.String DEF_NEW_MSG_SOUND_FILE_NAME
See Also:
Constant Field Values

properties

java.util.Properties properties

PREF_NAME_PROFILE_NUM

public static final java.lang.String PREF_NAME_PROFILE_NUM
preferences records names

See Also:
Constant Field Values

PREF_NAME_USERNAME

public static final java.lang.String PREF_NAME_USERNAME
See Also:
Constant Field Values

PREF_NAME_RESOURCE

public static final java.lang.String PREF_NAME_RESOURCE
See Also:
Constant Field Values

PREF_NAME_SERVER

public static final java.lang.String PREF_NAME_SERVER
See Also:
Constant Field Values

PREF_NAME_PORT

public static final java.lang.String PREF_NAME_PORT
See Also:
Constant Field Values

PREF_NAME_AUTO_LOGIN

public static final java.lang.String PREF_NAME_AUTO_LOGIN
See Also:
Constant Field Values

PREF_NAME_PASSWORD

public static final java.lang.String PREF_NAME_PASSWORD
See Also:
Constant Field Values

PREF_NAME_PRIORITY

public static final java.lang.String PREF_NAME_PRIORITY
See Also:
Constant Field Values

PREF_NAME_FILE_SERVER

public static final java.lang.String PREF_NAME_FILE_SERVER
See Also:
Constant Field Values

PREF_NAME_FILE_SERVER_PATH

public static final java.lang.String PREF_NAME_FILE_SERVER_PATH
See Also:
Constant Field Values

PREF_NAME_FILE_SERVER_PORT

public static final java.lang.String PREF_NAME_FILE_SERVER_PORT
See Also:
Constant Field Values

PREF_NAME_PROXY

public static final java.lang.String PREF_NAME_PROXY
See Also:
Constant Field Values

PREF_NAME_PROXY_PORT

public static final java.lang.String PREF_NAME_PROXY_PORT
See Also:
Constant Field Values

PREF_NAME_COMPACT_VIEW

public static final java.lang.String PREF_NAME_COMPACT_VIEW
See Also:
Constant Field Values

PREF_NAME_ONLY_ONLINE

public static final java.lang.String PREF_NAME_ONLY_ONLINE
See Also:
Constant Field Values

PREF_NAME_DOCK_WINDOWS

public static final java.lang.String PREF_NAME_DOCK_WINDOWS
See Also:
Constant Field Values

PREF_NAME_SHOW_MSGS

public static final java.lang.String PREF_NAME_SHOW_MSGS
See Also:
Constant Field Values

PREF_NAME_SHOW_STATUS

public static final java.lang.String PREF_NAME_SHOW_STATUS
See Also:
Constant Field Values

PREF_NAME_SHOW_DEBUG

public static final java.lang.String PREF_NAME_SHOW_DEBUG
See Also:
Constant Field Values

PREF_NAME_SCROLL_TABS

public static final java.lang.String PREF_NAME_SCROLL_TABS
See Also:
Constant Field Values

PREF_NAME_AUTO_SELECT

public static final java.lang.String PREF_NAME_AUTO_SELECT
See Also:
Constant Field Values

PREF_NAME_NEW_MSG_SOUND_FILE_NAME

public static final java.lang.String PREF_NAME_NEW_MSG_SOUND_FILE_NAME
See Also:
Constant Field Values

PREF_NAME_LAF

public static final java.lang.String PREF_NAME_LAF
See Also:
Constant Field Values

PREF_NAME_STATUSES_BAR_JID_NUM

public static final java.lang.String PREF_NAME_STATUSES_BAR_JID_NUM
See Also:
Constant Field Values

PREF_NAME_STATUSES_BAR_JID

public static final java.lang.String PREF_NAME_STATUSES_BAR_JID
See Also:
Constant Field Values

username

public static java.lang.String username
preferences variables


resource

public static java.lang.String resource

password

public static java.lang.String password

server

public static java.lang.String server

port

public static int port

priority

public static int priority

fileServer

public static java.lang.String fileServer

fileServerPath

public static java.lang.String fileServerPath

fileServerPort

public static java.lang.String fileServerPort

proxy

public static java.lang.String proxy

proxyPort

public static java.lang.String proxyPort

logoImgPath

public static java.lang.String logoImgPath

newMsgSoundFileName

public static java.lang.String newMsgSoundFileName

core

private edu.ou.kmi.buddyspace.core.BSCore core

rosterBean

private edu.ou.kmi.buddyspace.core.BSRosterBean rosterBean

presenceBean

private edu.ou.kmi.buddyspace.core.BSPresenceBean presenceBean

messengerBean

private edu.ou.kmi.buddyspace.core.BSMessengerBean messengerBean

infoQueryBean

private edu.ou.kmi.buddyspace.core.BSInfoQueryBean infoQueryBean

regBean

private edu.ou.kmi.buddyspace.core.BSRegisterBean regBean

servedIDs

private edu.ou.kmi.buddyspace.core.BSServedIDs servedIDs

plugins

private edu.ou.kmi.buddyspace.plugins.BSPluginLoader plugins

newAccount

private boolean newAccount

autoLogin

private boolean autoLogin

connected

private boolean connected

rosterTree

private BSRosterTreeView rosterTree

msgWinMan

private BSMsgWinManager msgWinMan

chatWinMan

private BSChatWinManager chatWinMan

logoIconLabel

private javax.swing.JLabel logoIconLabel

statusesBar

private BSStatusesBar statusesBar

NO_GROUP_NAME

public static java.lang.String NO_GROUP_NAME

autoSelectChat

private boolean autoSelectChat

forceChat

private boolean forceChat

onlyOnline

private boolean onlyOnline

showStatus

private boolean showStatus

showDebug

private boolean showDebug

showMsgs

private boolean showMsgs

scrollTabs

private boolean scrollTabs

compactView

private boolean compactView

dockWindows

private boolean dockWindows

expandGroups

private boolean expandGroups

soundPlayer

private edu.ou.kmi.buddyspace.utils.SoundPlayer soundPlayer

offlineImage

private java.awt.Image offlineImage

onlineImage

private java.awt.Image onlineImage

awayImage

private java.awt.Image awayImage

offlineMsgImage

private java.awt.Image offlineMsgImage

onlineMsgImage

private java.awt.Image onlineMsgImage

awayMsgImage

private java.awt.Image awayMsgImage

offlineIcon

private javax.swing.ImageIcon offlineIcon

onlineIcon

private javax.swing.ImageIcon onlineIcon

awayIcon

private javax.swing.ImageIcon awayIcon

xaIcon

private javax.swing.ImageIcon xaIcon

dndIcon

private javax.swing.ImageIcon dndIcon

chatIcon

private javax.swing.ImageIcon chatIcon

busyIcon

private javax.swing.ImageIcon busyIcon

elseIcon

private javax.swing.ImageIcon elseIcon

customIcon

private javax.swing.ImageIcon customIcon

presenceIcons

private javax.swing.ImageIcon[] presenceIcons

newMessage

private boolean newMessage

dontSendPresence

private boolean dontSendPresence

currentLookAndFeel

private java.lang.String currentLookAndFeel

bookmarks

private BSBookmarks bookmarks
bookmarks

Constructor Detail

BSMainFrame

public BSMainFrame()
Creates new form BSMainFrame

Method Detail

exitForm

private void exitForm(java.awt.event.WindowEvent evt)
Exit the Application


main

public static void main(java.lang.String[] args)

close

public void close()
Closes the application


initComponents

private void initComponents()
Inits components.


changeViewType

public void changeViewType(boolean compact)

initMenu

private void initMenu()
Inits menu


initToolBar

private void initToolBar()
Inits tool bar.


initMainTab

private void initMainTab()
Inits main tab.


addLookAndFeelMenu

private void addLookAndFeelMenu()
Adds the menu for live changing of look and feel


addComponentListeners

private void addComponentListeners()
Adds listeners to components handling user interactivity.


setGUIforConnectionState

protected void setGUIforConnectionState(boolean connected)

setExpendGroupsButton

protected void setExpendGroupsButton(boolean expanded)

setConnectButton

protected void setConnectButton()

enableMenus

private void enableMenus(boolean enable)
En/disables menus (dependent on connection).


initLAF

private void initLAF()
Inits the given look and feel.


actionPerformed

public void actionPerformed(java.awt.event.ActionEvent evt)
Handles action events from components.

Specified by:
actionPerformed in interface java.awt.event.ActionListener

isConnected

public boolean isConnected()

connect

private void connect(boolean connect)

setProxy

public void setProxy(java.lang.String proxy,
                     java.lang.String proxyPort)

setPresence

public void setPresence(javax.swing.Icon presenceIcon,
                        boolean sendPresence)
Changes presence


setPresence

private void setPresence(java.lang.String presenceStr,
                         java.lang.String statusStr,
                         boolean sendPresence)
Changes presence


setPresenceIcons

private void setPresenceIcons(java.lang.String showString,
                              java.lang.String statusString)
Changes application icon according to presence and message waiting


getPresenceIcon

public javax.swing.Icon getPresenceIcon(boolean connected,
                                        java.lang.String showString,
                                        java.lang.String statusString)

getPresenceImage

public java.awt.Image getPresenceImage(boolean connected,
                                       java.lang.String showString,
                                       boolean newMessage)

getCurrentPresenceImage

public java.awt.Image getCurrentPresenceImage()

itemStateChanged

public void itemStateChanged(java.awt.event.ItemEvent evt)
Handles item events.

Specified by:
itemStateChanged in interface java.awt.event.ItemListener

connect

public void connect(java.lang.String username,
                    java.lang.String password,
                    java.lang.String resource,
                    java.lang.String server,
                    int port,
                    boolean newAccount)
Connects and logs in


loadPreferences

public boolean loadPreferences(java.util.Properties props)
Loads preferences


loadPreferences

protected void loadPreferences()
Loads preferences


savePreferences

protected void savePreferences()
Saves preferences


saveProperties

public boolean saveProperties(java.util.Properties props)

saveStatusesBarJIDs

public boolean saveStatusesBarJIDs(java.util.Enumeration jids)

addAndSavePreferences

public boolean addAndSavePreferences(java.lang.String[] names,
                                     java.lang.String[] values)

loadStatusesBarJIDs

public java.util.Vector loadStatusesBarJIDs()

loadPreferences

public java.util.Vector loadPreferences(java.lang.String[] names,
                                        java.lang.String[] defaults)

changedRoster

public void changedRoster(Roster roster)
RosterListener function.


replacedRoster

public void replacedRoster(Roster roster)
RosterListener function.


presenceChanged

public void presenceChanged(edu.ou.kmi.buddyspace.core.BSPresenceInfo pi)
BSPresenceListener function.

Specified by:
presenceChanged in interface edu.ou.kmi.buddyspace.core.BSPresenceListener

presencesCleared

public void presencesCleared()
BSPresenceListener function - empty implementation.

Specified by:
presencesCleared in interface edu.ou.kmi.buddyspace.core.BSPresenceListener

subscriptionRequested

public void subscriptionRequested(JID jid)
BSPresenceListener function. Opens dialog for subscription approvement.

Specified by:
subscriptionRequested in interface edu.ou.kmi.buddyspace.core.BSPresenceListener

subscriptionApproved

public void subscriptionApproved(JID jid)
BSPresenceListener function. Opens info dialog that subscription was approved.

Specified by:
subscriptionApproved in interface edu.ou.kmi.buddyspace.core.BSPresenceListener

messageError

public void messageError(JID toAddress,
                         java.lang.String errType,
                         java.lang.String error)
BSMessageListener function. Opens info dialog about the error.

Specified by:
messageError in interface edu.ou.kmi.buddyspace.core.BSMessageListener

messageError

public void messageError(org.jabber.jabberbeans.Message msg)
BSMessageListener function. Opens info dialog about the error.

Specified by:
messageError in interface edu.ou.kmi.buddyspace.core.BSMessageListener

messageRead

public void messageRead(org.jabber.jabberbeans.Message msg)
BSMessageListener function. Repaints text roster.

Specified by:
messageRead in interface edu.ou.kmi.buddyspace.core.BSMessageListener

chatMessageReceived

public void chatMessageReceived(org.jabber.jabberbeans.Message msg)
BSMessageListener function. Opens chat window, plays sound and repaints text roster.

Specified by:
chatMessageReceived in interface edu.ou.kmi.buddyspace.core.BSMessageListener

plainMessageReceived

public void plainMessageReceived(org.jabber.jabberbeans.Message msg)
BSMessageListener function. Displays message in messages window, plays sound and repaints text roster.

Specified by:
plainMessageReceived in interface edu.ou.kmi.buddyspace.core.BSMessageListener

groupchatMessageReceived

public void groupchatMessageReceived(org.jabber.jabberbeans.Message msg)
BSMessageListener function. Empty implementation.

Specified by:
groupchatMessageReceived in interface edu.ou.kmi.buddyspace.core.BSMessageListener

headlineMessageReceived

public void headlineMessageReceived(org.jabber.jabberbeans.Message msg)
BSMessageListener function. Displays message in messages window, plays sound and repaints text roster.

Specified by:
headlineMessageReceived in interface edu.ou.kmi.buddyspace.core.BSMessageListener

connectionChanged

public void connectionChanged(ConnectionEvent ce)
ConnectionListener function.


sendFile

public void sendFile(JID jid)
Opens dialog for file sending and possible uploads the file.


sendOOB

public void sendOOB(JID jid,
                    java.lang.String url)
Calls BSInfoQueryBean function sendOOB.


oobReceived

public void oobReceived(java.lang.String url,
                        JID jid)
BSIQListener function. Opens dialog for file transfers and possibly downloads the file.

Specified by:
oobReceived in interface edu.ou.kmi.buddyspace.core.BSIQListener

openChatWindow

public void openChatWindow(JID jid,
                           boolean select,
                           boolean forceResource)
Opens chat window if not exist already.


openChatWindow

public void openChatWindow(JID jid,
                           boolean select,
                           boolean forceResource,
                           java.lang.String nick)
Opens chat window if not exist already.


composeMessage

public void composeMessage(JID jid)
Opens message compose window for given JID.


composeMessage

public void composeMessage(java.util.Enumeration jids,
                           java.util.Enumeration groups)
Opens message compose window for given jids and groups.


sendSubscriptionRequest

public void sendSubscriptionRequest(JID jid)
Sends presence subscription request.


addPluginJabberMenuItem

public void addPluginJabberMenuItem(javax.swing.JMenuItem menuItem)
Adds menuItem of a plugin into jabber menu.


addPluginShowMenuItem

public void addPluginShowMenuItem(javax.swing.JMenuItem menuItem)
Adds menuItem of a plugin into show menu.


addMenu

public void addMenu(javax.swing.JMenu menu)
Adds menu of a plugin into menu.


addBookmark

public boolean addBookmark(JID jid,
                           java.lang.String namespace,
                           java.lang.String name)
Adds bookmark.


removeBookmark

public boolean removeBookmark(JID jid,
                              java.lang.String namespace)
Removes bookmark.


setNewMessage

public void setNewMessage()
Sets form to display that a message is waiting. Typically called from BSMsgWinManager.


isNewMessage

public boolean isNewMessage()
Returns if there is some new message.


isJava1Point4orHigher

public static boolean isJava1Point4orHigher()
Returns if currently running java environment is 1.4 or higher.


loginError

public void loginError(org.jabber.jabberbeans.InfoQuery iq)
Called when login error occured

Specified by:
loginError in interface edu.ou.kmi.buddyspace.core.BSLoginListener

loginAuthorized

public void loginAuthorized()
Called when authentication succeeded

Specified by:
loginAuthorized in interface edu.ou.kmi.buddyspace.core.BSLoginListener

loginRegistered

public void loginRegistered()
Called when authentication moved, but still in progress

Specified by:
loginRegistered in interface edu.ou.kmi.buddyspace.core.BSLoginListener

loginError

public void loginError(java.lang.String error)
Called when login failes

Specified by:
loginError in interface edu.ou.kmi.buddyspace.core.BSLoginListener

performAction

public boolean performAction(JID jid,
                             java.lang.String namespace)
Performs action within given namespace for given JID


getSupportedNamespaces

public void getSupportedNamespaces(java.util.Vector namespaces,
                                   java.util.Vector names)
Adds supported namespaces and their names


regError

public void regError(org.jabber.jabberbeans.InfoQuery iq,
                     java.lang.String id)
Called when registration failes

Specified by:
regError in interface edu.ou.kmi.buddyspace.core.BSRegListener

regInfosNeeded

public void regInfosNeeded(org.jabber.jabberbeans.InfoQuery iq,
                           java.lang.String id)
Called when registration information is needed

Specified by:
regInfosNeeded in interface edu.ou.kmi.buddyspace.core.BSRegListener

registered

public void registered(org.jabber.jabberbeans.InfoQuery iq,
                       java.lang.String id)
Called when registered

Specified by:
registered in interface edu.ou.kmi.buddyspace.core.BSRegListener

setShowDebug

public void setShowDebug(boolean show)

setShowStatus

public void setShowStatus(boolean show)

setShowMessages

public void setShowMessages(boolean show)

isDockingWindows

public boolean isDockingWindows()

isAutoPopping

public boolean isAutoPopping()

playAlertSound

public void playAlertSound()