public void actionPerformed(ActionEvent e) {
		if (e.getSource() == mi_preferences) {
			ISettingsDialog d = new ISettingsDialog();
			d.setVisible(true);
			readPrefs();
			image.repaint();
		} else if (e.getSource() == b_mkdir) {
			String newdir = JOptionPane.showInputDialog(new JFrame(),
					"Enter a Directory Name", "New Directory",
					JOptionPane.QUESTION_MESSAGE);
			if (newdir != null) {
				if ((new File(IsszyPrefs.getSortDirectory(), newdir)).mkdirs() == false) {
					JOptionPane.showMessageDialog(new JFrame(),
							"Unable to Create Directory", "Error",
							JOptionPane.ERROR_MESSAGE);
				} else {
					dp_dirlist.refresh();
				}
			}
		} else if (e.getSource() == b_trash) //send file(s) to trash
		{
			for (int x = 0; x < selectedfiles.length; x++) {
				if (!selectedfiles[x].renameTo(new File(trash, selectedfiles[x]
						.getName()))) {
					JOptionPane.showMessageDialog(new JFrame(),
							"Could not move: " + selectedfiles[x].getName()
									+ " to trash.", "Error Trashing File",
							JOptionPane.WARNING_MESSAGE);
				}
			}
			sfl_list.refreshFiles(); //refresh list to show files moved to trash
		} else if (e.getSource() == mi_exit) {
			//run our windowClosing() function in the window adapter
			this
					.dispatchEvent(new WindowEvent(this,
							WindowEvent.WINDOW_CLOSING));
		} else if (e.getSource() == mi_about) {
			//displays about dialogue
			JOptionPane.showMessageDialog(new JFrame(), "Isszy "
					+ Isszy.VERSION + "\n" + "Isszy is a simple Image Sorter\n"
					+ "Licensed under the GPL\n"
					+ "Copyright 2002,2007 Sumit Khanna\n<sumdog@gmail.com>\n" 
					+ "http://penguindreams.org",
					"Isszy", JOptionPane.PLAIN_MESSAGE);
		}
	}