/***************************************************************************
                            KXMLGUIBuilderInterface.java -  description
                             -------------------
    begin                : Sun Jan 27 16:22:17 2002
    copyright            : (C) 2000-2001 Lost Highway Ltd.
    email                : Richard_Dale@tipitina.demon.co.uk
    generated by         : duke@tipitina on Sun Jan 27 16:22:17 2002, using kalyptus 0.9.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
***************************************************************************/

package org.kde.koala;

import org.kde.qt.*;
import java.util.*;

public interface KXMLGUIBuilderInterface {
	KXMLGUIClientInterface builderClient();
	void setBuilderClient( KXMLGUIClientInterface client);
	KInstanceInterface builderInstance();
	void setBuilderInstance( KInstanceInterface instance);
	ArrayList containerTags();

/** 
 Creates a container (menubar/menu/toolbar/statusbar/separator/...)
 from an element in the XML file

*/
	QWidget createContainer( QWidget parent, int index, QDomElement element, int identifier);

/** 
 Removes the given (and previously via {@link createContainer} )
 created container.

*/
	void removeContainer( QWidget container, QWidget parent, QDomElement element, int identifier);
	ArrayList customTags();
	int createCustomElement( QWidget parent, int index, QDomElement element);
	void removeCustomElement( QWidget parent, int identifier);
	void finalizeGUI( KXMLGUIClientInterface client);
}
