001/*
002 * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
003 * 
004 * http://www.izforge.com/izpack/
005 * http://developer.berlios.de/projects/izpack/
006 * 
007 * Copyright 2004 Klaus Bartz
008 * 
009 * Licensed under the Apache License, Version 2.0 (the "License");
010 * you may not use this file except in compliance with the License.
011 * You may obtain a copy of the License at
012 * 
013 *     http://www.apache.org/licenses/LICENSE-2.0
014 *     
015 * Unless required by applicable law or agreed to in writing, software
016 * distributed under the License is distributed on an "AS IS" BASIS,
017 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
018 * See the License for the specific language governing permissions and
019 * limitations under the License.
020 */
021
022package com.izforge.izpack.util;
023
024/**
025 * This interface allowes an extended interaction with a user interface handler.
026 * 
027 * @author Klaus Bartz
028 */
029public interface ExtendedUIProgressHandler
030{
031
032    static final int BEFORE = 0;
033
034    static final int AFTER = 1;
035
036    /**
037     * The action restarts.
038     * 
039     * @param name The name of the action.
040     * @param overallMsg message to be used in the overall label.
041     * @param tipMsg message to be used in the tip label.
042     * @param no_of_steps The number of steps the action consists of.
043     */
044    void restartAction(String name, String overallMsg, String tipMsg, int no_of_steps);
045
046    /**
047     * Notify of progress with automatic counting.
048     * 
049     * @param stepMessage an additional message describing the substep the type of the substep
050     */
051    public void progress(String stepMessage);
052
053}