minor improvements to chat window

This commit is contained in:
Maxmtg
2013-04-17 11:58:31 +00:00
parent 4c4430e793
commit f1b1100c89
4 changed files with 26 additions and 13 deletions

View File

@@ -322,7 +322,7 @@ public enum FControl {
* TODO: Write javadoc for this method.
* @return
*/
private final NetServer server = new NetServer();
private final NetServer server = new NetServer(81);
public NetServer getServer() {
// TODO Auto-generated method stub
return server;

View File

@@ -20,7 +20,6 @@ import javax.swing.ScrollPaneConstants;
import org.apache.commons.lang3.StringUtils;
import net.miginfocom.swing.MigLayout;
import forge.Command;
import forge.gui.toolbox.FLabel;
import forge.gui.toolbox.FSkin;
import forge.gui.toolbox.FTextArea;
@@ -57,7 +56,7 @@ public enum FNetOverlay {
txtInput.setText("");
if ( StringUtils.isBlank(message) )
return;
addMessage(message);
addMessage("You", message);
}
};
@@ -83,13 +82,12 @@ public enum FNetOverlay {
txtLog.setOpaque(true);
txtLog.setFocusable(true);
txtLog.setBackground(FSkin.getColor(FSkin.Colors.CLR_ZEBRA));
txtLog.setText("This is Forge chat window\n");
JScrollPane _operationLogScroller = new JScrollPane(txtLog);
_operationLogScroller.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
_operationLogScroller.setBorder(null);
new SmartScroller(_operationLogScroller);
pnl.add(_operationLogScroller, "pushx, hmin 24, growy, growx, gap 2px 2px 2px 0, sx 2");
pnl.add(_operationLogScroller, "pushx, hmin 24, pushy, growy, growx, gap 2px 2px 2px 0, sx 2");
txtInput.setBorder(BorderFactory.createLineBorder(FSkin.getColor(FSkin.Colors.CLR_BORDERS)));
pnl.add(txtInput, "pushx, growx, h 26px!, gap 2px 2px 2px 0");
@@ -99,6 +97,11 @@ public enum FNetOverlay {
cmdSend.setCommand(new Runnable() { @Override public void run() { onSend.actionPerformed(null); } });
}
public void showUp(String message) {
txtLog.setText(message + "\n");
pnl.setVisible(true);
}
private class OverlayPanel extends JPanel {
private static final long serialVersionUID = -5056220798272120558L;
@@ -131,8 +134,8 @@ public enum FNetOverlay {
}
SimpleDateFormat inFormat = new SimpleDateFormat("HH:mm:ss");
public void addMessage(String message) {
String toAdd = String.format("[%s]: %s%n", inFormat.format(new Date()), message);
public void addMessage(String origin, String message) {
String toAdd = String.format("[%s] %s: %s%n", inFormat.format(new Date()), origin, message);
txtLog.append(toAdd);
}
}

View File

@@ -9,6 +9,7 @@ import forge.gui.deckeditor.controllers.CEditorConstructed;
import forge.gui.framework.EDocID;
import forge.gui.framework.ICDoc;
import forge.gui.home.sanctioned.VSubmenuConstructed;
import forge.net.NetServer;
import forge.properties.ForgePreferences;
import forge.properties.ForgePreferences.FPref;
@@ -76,18 +77,20 @@ public enum CHomeUI implements ICDoc {
}
});
VHomeUI.SINGLETON_INSTANCE.getLblStartServer().setCommand(new Command() {
VHomeUI.SINGLETON_INSTANCE.getLblStartServer().setCommand(new Runnable() {
@Override
public void run() {
FControl.SINGLETON_INSTANCE.getServer().listen();
NetServer srv = FControl.SINGLETON_INSTANCE.getServer();
srv.listen();
VHomeUI.SINGLETON_INSTANCE.getLblStopServer().setEnabled(true);
VHomeUI.SINGLETON_INSTANCE.getLblStartServer().setEnabled(false);
FNetOverlay.SINGLETON_INSTANCE.getPanel().setVisible(true);
FNetOverlay.SINGLETON_INSTANCE.showUp("Server listening on port " + srv.getPortNumber());
}
});
VHomeUI.SINGLETON_INSTANCE.getLblStopServer().setCommand(new Command() {
VHomeUI.SINGLETON_INSTANCE.getLblStopServer().setCommand(new Runnable() {
@Override
public void run() {
FControl.SINGLETON_INSTANCE.getServer().stop();

View File

@@ -28,9 +28,16 @@ public class NetServer {
private final Server srv = new Server();
private final Set<ClientSocket> _openSockets = new CopyOnWriteArraySet<ClientSocket>();
public NetServer() {
public final int portNumber;
public final int getPortNumber() {
return portNumber;
}
public NetServer(int port) {
portNumber = port;
SelectChannelConnector connector= new SelectChannelConnector();
connector.setPort(81);
connector.setPort(portNumber);
srv.addConnector(connector);
ServletContextHandler context = new ServletContextHandler();