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

import org.kde.qt.Qt;
import org.kde.qt.QMetaObject;
import org.kde.qt.QtSupport;
import org.kde.qt.QPixmap;
import org.kde.qt.QMouseEvent;
import org.kde.qt.QShowEvent;
import org.kde.qt.QEvent;
import org.kde.qt.QWidget;
import org.kde.qt.QLabel;

/**

 \brief %KDE System Tray Window class
 This class implements system tray windows.
 A tray window is a small window (typically 24x24 pixel) that docks
 into the system tray in the desktop panel. It usually displays an
 icon or an animated icon there. The icon represents
 the application, similar to a taskbar button, but consumes less
 screen space.
 When the user clicks with the left mouse button on the icon, the
 main application window is shown/raised and activated. With the
 right mouse button, she gets a popupmenu with application specific
 commands, including "Minimize/Restore" and "Quit".
 Docking happens magically when calling show(). The window undocks
 with either hide() or when it is destroyed.
 KSystemTray inherits methods such as setPixmap() and setMovie() to
 specify an icon or movie (animated icon) respectively. It is
 designed to be usable "as is", without the need to subclass it. In
 case you need to provide something special (such as an additional
 popupmenu on a click with the left mouse button), you can subclass
 anyway, of course.
 Having an icon on the system tray is a useful technique for
 daemon-like applications that may run for some time without user
 interaction but have to be there immediately when the user needs
 them. Examples are kppp, kisdn, kscd, kmix or knotes. With kppp and
 kisdn, the docked icon even provides real-time information about
 the network status.
 See {@link KSystemTraySignals} for signals emitted by KSystemTray
		@author Matthias Ettrich <ettrich@kde.org>

		@short    \brief %KDE System Tray Window class

*/
public class KSystemTray extends QLabel  {
	protected KSystemTray(Class dummy){super((Class) null);}
	public native QMetaObject metaObject();
	public native String className();
	/**	
		 Construct a KSystemTray widget just like any other widget.
			 The parent widget <code>parent</code> has a special meaning:
		 Besides owning the tray window, the parent widget will
		 dissappear from taskbars when it is iconified while the tray
		 window is visible. This is the desired behavior. After all,
		 the tray window <code>is</code> the parent's taskbar icon.
			 Furthermore, the parent widget is shown or raised respectively
		 when the user clicks on the trray window with the left mouse
		 button.
				@short    Construct a KSystemTray widget just like any other widget.
	*/
	public KSystemTray(QWidget parent, String name) {
		super((Class) null);
		newKSystemTray(parent,name);
	}
	private native void newKSystemTray(QWidget parent, String name);
	public KSystemTray(QWidget parent) {
		super((Class) null);
		newKSystemTray(parent);
	}
	private native void newKSystemTray(QWidget parent);
	public KSystemTray() {
		super((Class) null);
		newKSystemTray();
	}
	private native void newKSystemTray();
	/**	
		       Access to the context menu. This makes it easy to add new items
		       to it.
		     		@short          Access to the context menu.
	*/
	public native KPopupMenu contextMenu();
	/**	
		       Easy access to the actions in the context menu
		       Currently includes KStdAction.Quit and minimizeRestore
				@short          Easy access to the actions in the context menu        Currently includes KStdAction.Quit and minimizeRestore
	*/
	public native KActionCollection actionCollection();
	/**	
		 Changes the tray's icon.
		     		@short    Changes the tray's icon.
	*/
	public native void setPixmap(QPixmap icon);
	/**	
		 Changes the tray's text description (which can be seen e.g. in the systray
		 configuration dialog). The default value is KAboutData.programName().
		     		@short    Changes the tray's text description (which can be seen e.
	*/
	public native void setCaption(String title);
	/**	
		 Toggles the state of the window associated with this system tray icon (hides it,
		 shows it or activates it depending on the window state). The default implementation
		 of mousePressEvent() calls toggleActive() when the tray icon is left-clicked, use
		 it when reimplementing mousePressEvent().
				@short    Toggles the state of the window associated with this system tray icon (hides it,  shows it or activates it depending on the window state).
	*/
	public native void toggleActive();
	/**	
		 Activates the window associated with this system tray icon, regardless of its current state.
				@short    Activates the window associated with this system tray icon, regardless of its current state.
	*/
	public native void setActive();
	/**	
		 Hides the window associated with this system tray icon, regardless of its current state.
				@short    Hides the window associated with this system tray icon, regardless of its current state.
	*/
	public native void setInactive();
	/**	
		 Loads an icon <code>icon</code> using the icon loader class of the given instance <code>instance.</code>
		 The icon is applied the panel effect as it should only be used to be shown in the
		 system tray.
		 It's commonly used in the form : systray.setPixmap( systray.loadIcon( "mysystray" ) );
				@short    Loads an icon <code>icon</code> using the icon loader class of the given instance <code>instance.</code>
	*/
	public static native QPixmap loadIcon(String icon, KInstanceInterface instance);
	public static native QPixmap loadIcon(String icon);
	/**	
		       Reimplemented to provide the standard show/raise behavior
		       for the parentWidget() and the context menu.
			       Feel free to reimplement this if you need something special.
		     		@short          Reimplemented to provide the standard show/raise behavior        for the parentWidget() and the context menu.
	*/
	protected native void mousePressEvent(QMouseEvent arg1);
	/**	
		       Reimplemented to provide the standard show/raise behavior
		       for the parentWidget() and the context menu.
			       Feel free to reimplement this if you need something special.
		     		@short          Reimplemented to provide the standard show/raise behavior        for the parentWidget() and the context menu.
	*/
	protected native void mouseReleaseEvent(QMouseEvent arg1);
	/**	
		       Makes it easy to adjust some menu items right before the
		       context menu becomes visible.
		     		@short          Makes it easy to adjust some menu items right before the        context menu becomes visible.
	*/
	protected native void contextMenuAboutToShow(KPopupMenu menu);
	/**	
		       Reimplemented for internal reasons.
		     		@short          Reimplemented for internal reasons.
	*/
	public native void showEvent(QShowEvent arg1);
	/**	
		       Reimplemented for internal reasons.
		     		@short          Reimplemented for internal reasons.
	*/
	protected native void enterEvent(QEvent arg1);
	/** 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();
}
