protected Cursor loadCursor(String address, int x, int y) {
		if (address == null)
			return null;
		File f = null;
		if (Page.isApplet() || FileUtilities.isRemote(address)) {
			URL u = null;
			try {
				u = new URL(address);
			}
			catch (MalformedURLException e) {
				e.printStackTrace();
				return null;
			}
			ConnectionManager.sharedInstance().setCheckUpdate(true);
			try {
				f = ConnectionManager.sharedInstance().shouldUpdate(u);
				if (f == null)
					f = ConnectionManager.sharedInstance().cache(u);
			}
			catch (IOException e) {
				e.printStackTrace();
				return null;
			}
		}
		else {
			f = new File(address);
		}
		if (f == null || !f.exists()) {
			return null;
		}
		URL u = null;
		try {
			u = f.toURI().toURL();
		}
		catch (MalformedURLException e) {
			e.printStackTrace();
			return null;
		}
		return ModelerUtilities.createCursor(u, new Point(x, y), FileUtilities.getFileName(address));
	}