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

import org.trinitydesktop.qt.TQt;
import org.trinitydesktop.qt.QtSupport;
import org.trinitydesktop.qt.TQWidget;

/**

 @class Loads a KControl Module.
 TDECModuleLoader tries in several ways
 to locate and load a TDECModule. If loading fails a
 zero pointer is returned. \n
 It is very unlikely TDECModuleLoader is what you want
 and {@link TDECModuleProxy} suits your needs.
		@author Frans Englich <frans.englich@telia.com>

		@short    @class Loads a KControl Module.

*/
public class TDECModuleLoader implements QtSupport {
	private long _qt;
	private boolean _allocatedInJavaWorld = true;
	protected TDECModuleLoader(Class dummy){}

	/**
		 Determines the way errors are reported
		     		@short    Determines the way errors are reported
	*/
	public static final int None = 0;
	public static final int Inline = 1;
	public static final int Dialog = 2;
	public static final int Both = 3;

	public TDECModuleLoader() {
		newTDECModuleLoader();
	}
	private native void newTDECModuleLoader();
	/**
		 Loads a {@link TDECModule}. If loading fails a zero pointer is returned.
			@param module what module to load
			@param report see ErrorReporting
			@param withFallback if true and loading failed a separate window
		 with the module may appear and a zero pointer is a returned
				@return a pointer to the loaded @ref TDECModule

		@short    Loads a @ref TDECModule.
	*/
	public static native TDECModule loadModule(TDECModuleInfo module, int report, boolean withFallback, TQWidget parent, String name, String[] args);
	public static native TDECModule loadModule(TDECModuleInfo module, int report, boolean withFallback, TQWidget parent, String name);
	public static native TDECModule loadModule(TDECModuleInfo module, int report, boolean withFallback, TQWidget parent);
	public static native TDECModule loadModule(TDECModuleInfo module, int report, boolean withFallback);
	public static native TDECModule loadModule(TDECModuleInfo module, int report);
	/**
		 Loads a {@link TDECModule}. If loading fails a zero pointer is returned.
			@param module what module to load
			@param report see ErrorReporting
		 with the module may appear and a zero pointer is a returned
				@return a pointer to the loaded @ref TDECModule

		@short    Loads a @ref TDECModule.
	*/
	public static native TDECModule loadModule(String module, int report, TQWidget parent, String name, String[] args);
	public static native TDECModule loadModule(String module, int report, TQWidget parent, String name);
	public static native TDECModule loadModule(String module, int report, TQWidget parent);
	public static native TDECModule loadModule(String module, int report);
	/**
		 Unloads the module's library
			@param mod What module to unload for
		     		@short    Unloads the module's library
	*/
	public static native void unloadModule(TDECModuleInfo mod);
	/**
		 Checks whether an TDECModule should be shown by running its
		 test function. If it is unsure whether a module should be shown, it should
		 be made available, leaving the decision to the user.
		 If false is returned, the module should not be loaded in any interface.
			 A module declares it needs to be tested by having "X-TDE-Test-Module=true" in
		 its desktop file. When that line exists, the following code must be available
		 in the module's library:
			 <pre>
		 extern "C"
		 {
		    boolean test_moduleName()
		    {
		      // Code testing for hardware/software presence.
		      return true; // and the modue will be loaded.
		    }
			 }
		 </pre>
			 where moduleName is the library name for the module.
			@param module the module to check
				@return true if the module should be loaded

		@short    Checks whether an TDECModule should be shown by running its   test function.
	*/
	public static native boolean testModule(String module);
	/**
		 Convenience function, essentially the same as above.
			@param module the module to check
				@return true if the module should be loaded

		@short    Convenience function, essentially the same as above.
	*/
	public static native boolean testModule(TDECModuleInfo module);
	/**
		 Returns a TDECModule containing the messages <code>report</code> and <code>text.</code>
			@param report the type of error reporting, see ErrorReporting
			@param text the main message
			@param details any additional details
			     		@short    Returns a TDECModule containing the messages <code>report</code> and <code>text.</code>
	*/
	public static native TDECModule reportError(int report, String text, String details, TQWidget parent);
	/** 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();
}
