/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* CientPanel.java
*
* Created on Oct 27, 2009, 2:00:40 PM
*/
package com.server.gui;
import com.server.conn.ClientManager;
import com.server.conn.ConnectionManager;
import java.awt.Color;
import javax.swing.ImageIcon;
import javax.swing.border.LineBorder;
/**
*
* @author Administrator
*/
public class ClientPanel extends javax.swing.JPanel {
/** Creates new form CientPanel */
private String clientIp = "";
private boolean free = true;
private boolean seleced = false;
private String hostName = "Unknown";
private String osName = "Unknown";
private String osVersion = "Unknown";
private String osArch = "Unknown";
private String currentUserNeame = "Unknown";
public void setSeleced(boolean seleced) {
this.seleced = seleced;
}
public ClientPanel() {
initComponents();
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
ipLabel = new javax.swing.JLabel();
desktopLabel = new javax.swing.JLabel();
setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
formMouseEntered(evt);
}
public void mouseExited(java.awt.event.MouseEvent evt) {
formMouseExited(evt);
}
});
ipLabel.setText("000.000.000.000");
desktopLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
desktopLabel.setIcon(new javax.swing.ImageIcon(getClass().getResource("/com/server/icons/defaultClient.PNG"))); // NOI18N
desktopLabel.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
desktopLabelMouseClicked(evt);
}
public void mouseEntered(java.awt.event.MouseEvent evt) {
desktopLabelMouseEntered(evt);
}
public void mouseExited(java.awt.event.MouseEvent evt) {
desktopLabelMouseExited(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(desktopLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 151, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addGap(32, 32, 32)
.addComponent(ipLabel)
.addContainerGap(35, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(desktopLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(ipLabel)
.addContainerGap())
);
}// </editor-fold>//GEN-END:initComponents
private void desktopLabelMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_desktopLabelMouseClicked
// TODO add your handling code here:
if (evt.getClickCount() == 2 && !free) {
Object obj = ConnectionManager.connectedClients.get(getClientIp());
if (obj != null && obj instanceof ClientManager) {
ClientManager clientManager = (ClientManager) obj;
// clientManager.sendRequestToClient("TIME:" + 10 * 1000);
clientManager.sendRequestToClient("TIME:" + 0);
}
ConnectionManager.desktopManager.viewFullScreen(getClientIp());
}
if (evt.getClickCount() == 1) {
ConnectionManager.panelManager.setSelected(this);
}
}//GEN-LAST:event_desktopLabelMouseClicked
private void formMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_formMouseEntered
// TODO add your handling code here:
}//GEN-LAST:event_formMouseEntered
private void formMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_formMouseExited
// TODO add your handling code here:
}//GEN-LAST:event_formMouseExited
private void desktopLabelMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_desktopLabelMouseEntered
// TODO add your handling code here:
if (isSeleced()) {
this.setBorder(new LineBorder(Color.ORANGE, 2));
} else {
this.setBorder(new LineBorder(Color.ORANGE));
}
}//GEN-LAST:event_desktopLabelMouseEntered
private void desktopLabelMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_desktopLabelMouseExited
// TODO add your handling code here:
if (isSeleced()) {
this.setBorder(new LineBorder(Color.RED, 2));
} else {
this.setBorder(new LineBorder(Color.BLACK));
}
}//GEN-LAST:event_desktopLabelMouseExited
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JLabel desktopLabel;
private javax.swing.JLabel ipLabel;
// End of variables declaration//GEN-END:variables
public void setIpAddress(String clientIp) {
this.setClientIp(clientIp);
getIpLabel().setText(clientIp);
}
public String getIpAddress() {
return this.getClientIp();
}
public boolean isFree() {
return free;
}
public void setFree(boolean free) {
this.free = free;
}
public void setClientDesktop(ImageIcon image) {
if (image != null) {
getDesktopLabel().setIcon(image);
getDesktopLabel().updateUI();
}
}
public void setDefaultImage() {
getDesktopLabel().setIcon(new ImageIcon(
getClass().getResource("/com/server/icons/defaultClient.PNG")));
}
public void setHostName(String hostName) {
this.hostName = hostName;
}
/**
* @return the clientIp
*/
public String getClientIp() {
return clientIp;
}
/**
* @param clientIp the clientIp to set
*/
public void setClientIp(String clientIp) {
this.clientIp = clientIp;
}
/**
* @return the seleced
*/
public boolean isSeleced() {
return seleced;
}
/**
* @return the hostName
*/
public String getHostName() {
return hostName;
}
/**
* @return the osName
*/
public String getOsName() {
return osName;
}
/**
* @param osName the osName to set
*/
public void setOsName(String osName) {
this.osName = osName;
}
/**
* @return the osVersion
*/
public String getOsVersion() {
return osVersion;
}
/**
* @param osVersion the osVersion to set
*/
public void setOsVersion(String osVersion) {
this.osVersion = osVersion;
}
/**
* @return the osArch
*/
public String getOsArch() {
return osArch;
}
/**
* @param osArch the osArch to set
*/
public void setOsArch(String osArch) {
this.osArch = osArch;
}
/**
* @return the currentUserNeame
*/
public String getCurrentUserNeame() {
return currentUserNeame;
}
/**
* @param currentUserNeame the currentUserNeame to set
*/
public void setCurrentUserNeame(String currentUserNeame) {
this.currentUserNeame = currentUserNeame;
}
/**
* @return the desktopLabel
*/
public javax.swing.JLabel getDesktopLabel() {
return desktopLabel;
}
/**
* @param desktopLabel the desktopLabel to set
*/
public void setDesktopLabel(javax.swing.JLabel desktopLabel) {
this.desktopLabel = desktopLabel;
}
/**
* @return the ipLabel
*/
public javax.swing.JLabel getIpLabel() {
return ipLabel;
}
/**
* @param ipLabel the ipLabel to set
*/
public void setIpLabel(javax.swing.JLabel ipLabel) {
this.ipLabel = ipLabel;
}
}