{ clientStatus.add("Online"); clientStatus.add("Offline"); clientStatus.add("Busy"); clientStatus.select("Offline"); clientStatus.addItemListener( new ItemListener() { public void itemStateChanged(ItemEvent e) { new Thread("icqtest/chooser control handler") { public void run() { try { if (clientStatus.getSelectedItem().equals("Online")) { if (plugin.getClientStatus(getMyLoginId()) == org.jcq2k.MessagingNetwork.STATUS_OFFLINE) login(); plugin.setClientStatus( getMyLoginId(), org.jcq2k.MessagingNetwork.STATUS_ONLINE); } else if (clientStatus.getSelectedItem().equals("Busy")) { if (plugin.getClientStatus(getMyLoginId()) == org.jcq2k.MessagingNetwork.STATUS_OFFLINE) login(); plugin.setClientStatus(getMyLoginId(), org.jcq2k.MessagingNetwork.STATUS_BUSY); } else if (clientStatus.getSelectedItem().equals("Offline")) { if (plugin.getClientStatus(getMyLoginId()) != org.jcq2k.MessagingNetwork.STATUS_OFFLINE) plugin.setClientStatus( getMyLoginId(), org.jcq2k.MessagingNetwork.STATUS_OFFLINE); } else { org.jcq2k.util.joe.Lang.ASSERT_FALSE("invalid clientStatus.getSelectedItem()"); } } catch (Throwable tr) { printException(tr); } } }.start(); } }); }