aboutsummaryrefslogtreecommitdiffstats
path: root/src/net/java/sip/communicator/impl/systray/jdic
diff options
context:
space:
mode:
authorYana Stamcheva <yana@jitsi.org>2007-12-11 13:55:36 +0000
committerYana Stamcheva <yana@jitsi.org>2007-12-11 13:55:36 +0000
commit8d68be927f67dd938c4eb472767eae5eb3bbd6a5 (patch)
tree17ffc011433d2922c0959c4c38453ead5d2c97e1 /src/net/java/sip/communicator/impl/systray/jdic
parentc3044ea4be504f4e2c277cc7bc9ce776cad12b14 (diff)
downloadjitsi-8d68be927f67dd938c4eb472767eae5eb3bbd6a5.zip
jitsi-8d68be927f67dd938c4eb472767eae5eb3bbd6a5.tar.gz
jitsi-8d68be927f67dd938c4eb472767eae5eb3bbd6a5.tar.bz2
Change status message interface added
Diffstat (limited to 'src/net/java/sip/communicator/impl/systray/jdic')
-rw-r--r--src/net/java/sip/communicator/impl/systray/jdic/StatusSelector.java44
-rw-r--r--src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java7
-rw-r--r--src/net/java/sip/communicator/impl/systray/jdic/SystrayServiceJdicImpl.java24
-rw-r--r--src/net/java/sip/communicator/impl/systray/jdic/TrayMenu.java6
4 files changed, 39 insertions, 42 deletions
diff --git a/src/net/java/sip/communicator/impl/systray/jdic/StatusSelector.java b/src/net/java/sip/communicator/impl/systray/jdic/StatusSelector.java
index a3a49d4..3897c4a 100644
--- a/src/net/java/sip/communicator/impl/systray/jdic/StatusSelector.java
+++ b/src/net/java/sip/communicator/impl/systray/jdic/StatusSelector.java
@@ -13,6 +13,7 @@ import java.util.*;
import javax.swing.*;
+import net.java.sip.communicator.impl.systray.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.util.*;
@@ -47,6 +48,8 @@ public class StatusSelector
private Logger logger = Logger.getLogger(
StatusSelector.class.getName());
+ private StatusMessageMenu statusMessageMenu;
+
/**
* Creates an instance of StatusSelector
*
@@ -58,34 +61,38 @@ public class StatusSelector
ProtocolProviderService provider,
OperationSetPresence presence)
{
-
this.parentSystray = jdicSystray;
this.provider = provider;
this.presence = presence;
-
+
+ this.statusMessageMenu = new StatusMessageMenu(provider);
/* the parent item */
-
+
this.setText(provider.getAccountID().getUserID());
this.setIcon(new ImageIcon(
presence.getPresenceStatus().getStatusIcon()));
-
+
/* the submenu itself */
-
+
Iterator statusIterator = this.presence.getSupportedStatusSet();
-
+
while(statusIterator.hasNext())
{
PresenceStatus status = (PresenceStatus) statusIterator.next();
ImageIcon icon = new ImageIcon(status.getStatusIcon());
JMenuItem item = new JMenuItem(status.getStatusName(),icon);
-
+
item.addActionListener(this);
-
+
this.add(item);
}
+
+ this.addSeparator();
+
+ this.add(statusMessageMenu);
}
-
+
/**
* Change the status of the protocol according to
* the menu item selected
@@ -93,7 +100,6 @@ public class StatusSelector
*/
public void actionPerformed(ActionEvent evt)
{
-
JMenuItem menuItem = (JMenuItem) evt.getSource();
Iterator statusSet = presence.getSupportedStatusSet();
@@ -110,14 +116,14 @@ public class StatusSelector
&& !presence.getPresenceStatus().equals(status))
{
if (status.isOnline())
- {
+ {
new PublishPresenceStatusThread(status).start();
}
- else
+ else
{
new ProviderUnRegistration(this.provider).start();
}
- }
+ }
else if (this.provider.getRegistrationState()
!= RegistrationState.REGISTERED
&& this.provider.getRegistrationState()
@@ -175,28 +181,28 @@ public class StatusSelector
try {
presence.publishPresenceStatus(status, "");
}
- catch (IllegalArgumentException e1)
+ catch (IllegalArgumentException e1)
{
logger.error("Error - changing status", e1);
}
- catch (IllegalStateException e1)
+ catch (IllegalStateException e1)
{
logger.error("Error - changing status", e1);
}
- catch (OperationFailedException e1)
+ catch (OperationFailedException e1)
{
- if (e1.getErrorCode()
- == OperationFailedException.GENERAL_ERROR)
+ if (e1.getErrorCode()
+ == OperationFailedException.GENERAL_ERROR)
{
logger.error(
"General error occured while "
+ "publishing presence status.",
e1);
}
- else if (e1.getErrorCode()
+ else if (e1.getErrorCode()
== OperationFailedException
.NETWORK_FAILURE)
{
diff --git a/src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java b/src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java
index 8a0596f..7f41ecd 100644
--- a/src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java
+++ b/src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java
@@ -52,11 +52,10 @@ public class StatusSubMenu
{
parentSystray = tray;
-
+
this.setText(Resources.getString("setStatus"));
- this.setIcon(
- new ImageIcon(Resources.getImage("statusMenuIcon")));
-
+ this.setIcon(Resources.getImage("statusMenuIcon"));
+
/* makes the menu look better */
this.setPreferredSize(new java.awt.Dimension(28, 24));
diff --git a/src/net/java/sip/communicator/impl/systray/jdic/SystrayServiceJdicImpl.java b/src/net/java/sip/communicator/impl/systray/jdic/SystrayServiceJdicImpl.java
index 7e60c83..bc7bf60 100644
--- a/src/net/java/sip/communicator/impl/systray/jdic/SystrayServiceJdicImpl.java
+++ b/src/net/java/sip/communicator/impl/systray/jdic/SystrayServiceJdicImpl.java
@@ -123,30 +123,22 @@ public class SystrayServiceJdicImpl
// background.
if (osName.startsWith("Windows"))
{
- logoIcon = new ImageIcon(
- Resources.getImage("trayIconWindows"));
- envelopeIcon = new ImageIcon(
- Resources.getImage("messageIconWindows"));
+ logoIcon = Resources.getImage("trayIconWindows");
+ envelopeIcon = Resources.getImage("messageIconWindows");
}
// If we're running under MacOSX, we use a special black and
// white icons without background.
else if (osName.startsWith("Mac OS X"))
{
- logoIcon = new ImageIcon(
- Resources.getImage("trayIconMacOSX"));
- logoIconWhite = new ImageIcon(
- Resources.getImage("trayIconMacOSXWhite"));
- envelopeIcon = new ImageIcon(
- Resources.getImage("messageIconMacOSX"));
- envelopeIconWhite = new ImageIcon(
- Resources.getImage("messageIconMacOSXWhite"));
+ logoIcon = Resources.getImage("trayIconMacOSX");
+ logoIconWhite = Resources.getImage("trayIconMacOSXWhite");
+ envelopeIcon = Resources.getImage("messageIconMacOSX");
+ envelopeIconWhite = Resources.getImage("messageIconMacOSXWhite");
}
else
{
- logoIcon = new ImageIcon(
- Resources.getImage("trayIcon"));
- envelopeIcon = new ImageIcon(
- Resources.getImage("messageIcon"));
+ logoIcon = Resources.getImage("trayIcon");
+ envelopeIcon = Resources.getImage("messageIcon");
}
currentIcon = logoIcon;
diff --git a/src/net/java/sip/communicator/impl/systray/jdic/TrayMenu.java b/src/net/java/sip/communicator/impl/systray/jdic/TrayMenu.java
index e46baa7..a1582ff 100644
--- a/src/net/java/sip/communicator/impl/systray/jdic/TrayMenu.java
+++ b/src/net/java/sip/communicator/impl/systray/jdic/TrayMenu.java
@@ -39,15 +39,15 @@ public class TrayMenu
private JMenuItem settingsItem = new JMenuItem(
Resources.getString("settings"),
- new ImageIcon(Resources.getImage("settingsMenuIcon")));
+ Resources.getImage("settingsMenuIcon"));
private JMenuItem closeItem = new JMenuItem(
Resources.getString("close"),
- new ImageIcon(Resources.getImage("closeMenuIcon")));
+ Resources.getImage("closeMenuIcon"));
private JMenuItem addContactMenuItem = new JMenuItem(
Resources.getString("addContact"),
- new ImageIcon(Resources.getImage("addContactIcon")));
+ Resources.getImage("addContactIcon"));
private StatusSubMenu statusMenu;