//Auto-generated by kalyptus. DO NOT EDIT.
package org.trinitydesktop.koala;

import org.trinitydesktop.qt.Qt;
import org.trinitydesktop.qt.TQMetaObject;
import org.trinitydesktop.qt.QtSupport;
import org.trinitydesktop.qt.TQWidget;
import org.trinitydesktop.qt.TQStatusBar;

/**

  Display status messages.
  You can insert text labels or custom widgets. Their geometry is managed
  internally. KStatusBar resizes itself, but positioning is left to
  TDEMainWindow (or to you, if you don't use TDEMainWindow ).
  A special type of item is a message which is a temporary text-message
  displayed on top of other items in full-width. Messages are visible for
  specified time, or until you call the slot TQStatusBar.clear(). See
  TQStatusBar.message for details.
  It is useful to connect the TDEActionCollection signals to the
  TQStatusBar.message slots.
  KStatusBar inherits TQStatusBar, you can freely use all TQStatusBar
  methods.
  Empty text items are not visible. They will become visible when you change
  (add) text.
 See {@link KStatusBarSignals} for signals emitted by KStatusBar
		@author Mark Donohoe (donohoe@kde.org) Maintained by Sven Radej <radej@kde.org>

		@short %KDE statusbar widget.
		@see TDEActionCollection

*/
public class KStatusBar extends TQStatusBar  {
	protected KStatusBar(Class dummy){super((Class) null);}
	public native TQMetaObject metaObject();
	public native String className();
	/**
		  Constructs a status bar. <code>parent</code> is usually TDEMainWindow.
		   		@short     Constructs a status bar.
	*/
	public KStatusBar(TQWidget parent, String name) {
		super((Class) null);
		newKStatusBar(parent,name);
	}
	private native void newKStatusBar(TQWidget parent, String name);
	public KStatusBar(TQWidget parent) {
		super((Class) null);
		newKStatusBar(parent);
	}
	private native void newKStatusBar(TQWidget parent);
	public KStatusBar() {
		super((Class) null);
		newKStatusBar();
	}
	private native void newKStatusBar();
	/**
		  Inserts a text label into the status bar.
		  Parameters <code>stretch</code> and  <code>permanent</code> are passed to
		 TQStatusBar.addWidget .
			  If <code>permanent</code> is true, then item will be placed on the far right of
		  the statusbar and will never be hidden by TQStatusBar.message.
			@param text The label's text string.
			@param id id of item
			@param stretch stretch passed to TQStatusBar.addWidget
			@param permanent is item permanent or not (passed to TQStatusBar.addWidget )
			   		@short     Inserts a text label into the status bar.
		@see org.trinitydesktop.qt.TQStatusbar#addWidget
	*/
	public native void insertItem(String text, int id, int stretch, boolean permanent);
	public native void insertItem(String text, int id, int stretch);
	public native void insertItem(String text, int id);
	/**
		  Inserts a fixed width text label into status bar. The width will be set
		  according to <code>text</code>, but will remain fixed even if you change text.
		  You can change fixed width by calling setItemFixed.
			@param text The label's text string
			@param id id of item
			@param permanent permanent flag passed to TQStatusBar.addWidget
		   		@short     Inserts a fixed width text label into status bar.
	*/
	public native void insertFixedItem(String text, int id, boolean permanent);
	public native void insertFixedItem(String text, int id);
	/**
		  Removes an item.
			@param id The item to remove.
		   		@short     Removes an item.
	*/
	public native void removeItem(int id);
	/**
			  Returns true if an item with <code>id</code> exists already in KStatusBar,
		  otherwise returns false.
			@param id id of the item
		   		@short
	*/
	public native boolean hasItem(int id);
	/**
		 Changes the text in a status bar field.
			 The item will be resized to fit the text. If you change text to be empty,
		 item will not be visible (untill you add some text).
			@param text The label's text string
			@param id The id of item.
		   		@short    Changes the text in a status bar field.
	*/
	public native void changeItem(String text, int id);
	/**
		 Sets the alignment of item <code>id.</code> By default all fields are aligned
		 <code>AlignHCenter</code> | <code>AlignVCenter.</code> See TQLabel.setAlignment for details.
			  		@short    Sets the alignment of item <code>id.</code>
	*/
	public native void setItemAlignment(int id, int align);
	/**
		 Sets item <code>id</code> to have fixed width. This cannot be undone, but you can
		 always set new fixed width.
			@param id id of item
			@param width fixed width in pixels. Default -1 is to adapt to text width.
		   		@short    Sets item <code>id</code> to have fixed width.
	*/
	public native void setItemFixed(int id, int width);
	public native void setItemFixed(int id);
	/** Deletes the wrapped C++ instance */
	protected native void finalize() throws InternalError;
	/** Delete the wrapped C++ instance ahead of finalize() */
	public native void dispose();
	/** Has the wrapped C++ instance been deleted? */
	public native boolean isDisposed();
}
