public void actionPerformed( ActionEvent e ) {

	if( e.getSource() == this.buttonOK ) {

	    InetAddress address = this.addressComboBoxModel.getSelectedAddress();
	    int port = this.portSpinnerModel.getNumber().intValue();
	    String protocol;
	    if( this.radioTCP.isSelected() )  protocol = "TCP";
	    else		              protocol = "UDP";

	    int backlog = this.backlogSpinnerModel.getNumber().intValue();


	    //Collator caseInsensitive = Collator.getInstance();
	    //caseInsensitive.setStrength( Collator.PRIMARY );
	    // Map<String,BasicType> bindSettings = new TreeMap<String,BasicType>( caseInsensitive );
	    java.util.Comparator<String> caseInsensitiveComparator = ikrs.util.CaseInsensitiveComparator.sharedInstance;
	    Environment<String,BasicType> bindSettings = 
		new DefaultEnvironment<String,BasicType>( new ikrs.util.TreeMapFactory<String,BasicType>(caseInsensitiveComparator) );
	    bindSettings.put( Constants.CONFIG_SERVER_PROTOCOL, new BasicStringType(protocol) );
	    bindSettings.put( Constants.CONFIG_SERVER_BACKLOG,  new BasicNumberType(backlog) );
	    bindSettings.put( Constants.CONFIG_SERVER_ADDRESS,  new BasicStringType(address.toString()) );
	    bindSettings.put( Constants.CONFIG_SERVER_PORT,     new BasicNumberType(port) );


	    setStatus( "Starting server: { "+
		       "address: "+address+", "+
		       "port: "+port+", "+
		       "protocol: "+protocol+", "+
		       "backlog: "+backlog+" } ...",
		       true );

	    boolean started = this.serverManagerDialog.performStartServer( address, port, bindSettings );
	    if( started ) {
		this.setVisible( false );
	    }

	} else if( e.getSource() == this.buttonCancel ) {

	    this.setVisible( false );

	}
	    
    }