⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 systray.java

📁 Remote Internet Connect简化了从其它运行操作系统的机子上将一个Linux系统连接到Internet的过程。用户可以用一个简单的GUI加快连接、断开连接、或查看谁在线上。
💻 JAVA
字号:
/*
 * RIC 2 by Harry Otten (c) Copyright 2003 hotten@dds.nl
 * Check out http://www.hotten.dds.nl/ric/

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
USA.
*/

import java.awt.*;
import java.awt.event.*;
import java.util.Vector;




public class Systray implements DesktopIndicatorListener {
	
	private DesktopIndicator desktopIndicator;
		
	private int systrayWEARECONNECTEDCOLOR;
	private int systrayNOBODYCONNECTEDCOLOR;
	private int systraySOMEONCONNECTEDCOLOR;
	private int systrayMORECONNECTEDCOLOR;
	
	private MainScreenGUI mainScreenGUI;
	private Config config;
	
	public Systray(MainScreenGUI mainScreenGUI,Config config) {
		this.mainScreenGUI=mainScreenGUI;
		this.config=config;
	}

	
	public void setup() {
		
		// Initialize JNI extension
		if (!DesktopIndicator.initialize()) {
			System.err.println( "Either you are not on Windows, or there is a problem with the DesktopIndicator library!" );
		}
		
		desktopIndicator = new DesktopIndicator(DesktopIndicator.loadImage("../graphics/gray.ico"),"unavailable");
	
		systrayWEARECONNECTEDCOLOR  = DesktopIndicator.loadImage("../graphics/" + config.getWeAreConnectedColor()+".ico");
		systrayNOBODYCONNECTEDCOLOR = DesktopIndicator.loadImage("../graphics/" + config.getNobodyConnectedColor()+".ico");
		systraySOMEONCONNECTEDCOLOR = DesktopIndicator.loadImage("../graphics/" + config.getSomeonConnectedColor()+".ico");
		systrayMORECONNECTEDCOLOR   = DesktopIndicator.loadImage("../graphics/" + config.getMoreConnectedColor()+".ico");
	
		desktopIndicator.addDesktopIndicatorListener(this);
		desktopIndicator.show();
	};
	
	public void update(boolean personalState,int online) {
		//System.out.println("Aantal online is: "+online + " en onze staat is "+personalState);
		
		int color;
		String messages;
				
		if (personalState) {
			if (online>1) { 
				color=systrayMORECONNECTEDCOLOR;
				messages="more people connected";
			} else { 
				color=systrayWEARECONNECTEDCOLOR;
				messages="you are connected";
			}
		} else  {  
			if (online==0) {
				 messages="no connection";
				 color=systrayNOBODYCONNECTEDCOLOR;
			} else {
				color=systraySOMEONCONNECTEDCOLOR;
				messages="somebody is connected";
			}
		}
		desktopIndicator.update( color, messages);
	};
	
	public void onDesktopIndicatorClicked(DesktopIndicator source) {
		mainScreenGUI.popUp(false);
	};
	
	public void offline() {
		desktopIndicator.update( DesktopIndicator.loadImage("../graphics/gray.ico"), "unavailable" );
	};
	
	public void stop() {
	 	desktopIndicator.hide();
	};

}
			

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -