private boolean readImageFile(final String uri) {
		if (uri == null)
			return false;
		final boolean b = isEditable();
		if (!b)
			setEditable(true);
		notifyPageListeners(new PageEvent(this, PageEvent.PAGE_READ_BEGIN));
		if (FileUtilities.isRemote(uri)) {
			URL u = null;
			try {
				u = new URL(FileUtilities.httpEncode(uri));
			} catch (MalformedURLException ex) {
				ex.printStackTrace();
				return false;
			}
			insertIcon(new ImageIcon(u));
		} else {
			insertIcon(new ImageIcon(uri));
		}
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				setTitle(uri);
				if (!b)
					setEditable(false);
				notifyPageListeners(new PageEvent(Page.this, PageEvent.PAGE_READ_END));
			}
		});
		return true;
	}