private void createTrayIcon() {
		if(supported) {	

			URL iconUrl = ClassLoader.getSystemResource(Constants.ICON_FILE);
			Image icon = new ImageIcon( iconUrl ).getImage();
		    
		    PopupMenu menu = new PopupMenu();
		    openGuiMenuItem = new MenuItem();
		    settingsMenuItem = new MenuItem();
		    quitMenuItem = new MenuItem();		 
		    menu.add(openGuiMenuItem);
		    menu.add(settingsMenuItem);
		    menu.add(quitMenuItem);
		    
		    trayIcon = new TrayIcon(icon, Constants.PROGRAM_NAME, menu);
		    trayIcon.setImageAutoSize(true);

		    refreshLabels();
		    
		    openGuiMenuItem.addActionListener(new ActionListener() {			
				@Override
				public void actionPerformed(ActionEvent e) {
					for(int k=0; k<chatGuiListener.size(); ++k) {
						chatGuiListener.get(k).openChatView();
					}					
				}
			});
		    
		    settingsMenuItem.addActionListener(new ActionListener() {			
				@Override
				public void actionPerformed(ActionEvent e) {
					for(int k=0; k<chatGuiListener.size(); ++k) {
						chatGuiListener.get(k).openSettingsView();
					}
				}
			});
		    
		    quitMenuItem.addActionListener(new ActionListener() {				
				@Override
				public void actionPerformed(ActionEvent arg0) {
					for(int k=0; k<chatGuiListener.size(); ++k) {
						chatGuiListener.get(k).quit();
					}
				}
			}); 
		}	
	}