/******************************************************************************* * Copyright (c) 2009, 2010 Progress Software Corporation. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html ******************************************************************************/ package org.fusesource.tools.core.ui.url.urlchooser.filesystemchooser; import java.net.URL; import org.eclipse.swt.dnd.DropTargetEvent; import org.fusesource.tools.core.ui.url.urlchooser.ActionProvider; import org.fusesource.tools.core.ui.url.urlchooser.URLChooserFilter; /** */ public interface FileSystemProvider extends ActionProvider { /** * @param url * @return true if this url is a valid url of this provider */ boolean validate(URL url); /** * Set the filters */ void setFilters(URLChooserFilter filter); /** * get the current filter settings * * @return */ URLChooserFilter getFilters(); /** * Bring up an UI that allows the user to browse this file system and return an array of * selected URLs * * @param object * the entry that a user may have typed or previously selected that exists in the * textfield MAY BE NULL * @return */ URL[] browse(String object); /** * Converts a path to the FileSystemProvider implementations filesystem specifc URL format. * * @param path * @return */ URL convertToURL(String path); /** * @param selectedURL * Open this URL in its associated editor */ void open(URL selectedURL); URL[] acceptDroppedData(DropTargetEvent event); }