/** * Copyright (c) 2005-2011 by Appcelerator, Inc. All Rights Reserved. * Licensed under the terms of the Eclipse Public License (EPL). * Please see the license.txt included with this distribution for details. * Any modifications to this file must keep this entire header intact. */ /* * Created on 25/09/2005 */ package org.python.pydev.editor.actions; import org.python.pydev.core.docutils.PySelection; import org.python.pydev.editor.PyEdit; /** * Interface that makes it possible for clients to interact with the organize imports feature, so that they * can change how it actually behaves. * * @author Fabio */ public interface IOrganizeImports { /** * This function is called just before the actual organize imports function is called. * * @param ps this is the selection (contains the doc) * @param pyEdit this is the edit * * @return true if the organize imports should proceed, and false if the organize imports should not proceed * (so, false cancels the default organize imports) * * @note this function is always called within a write session in the document (because it should seem as a single * operation for the user -- which has a single undo). */ boolean beforePerformArrangeImports(PySelection ps, PyEdit pyEdit); /** * Called right after the whole import process is done. * * @param ps this is the selection (contains the doc) * @param pyEdit this is the edit */ void afterPerformArrangeImports(PySelection ps, PyEdit pyEdit); }