//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.QObject;
import org.kde.qt.QSize;
import org.kde.qt.QEvent;
import org.kde.qt.QWidget;
import org.kde.qt.QResizeEvent;

/**

 KDoubleNumInput combines a QSpinBox and optionally a QSlider
 with a label to make an easy to use control for setting some float
 parameter. This is especially nice for configuration dialogs,
 which can have many such combinated controls.
 The slider is created only when the user specifies a range
 for the control using the setRange function with the slider
 parameter set to "true".
 A special feature of KDoubleNumInput, designed specifically for
 the situation when there are several instances in a column,
 is that you can specify what portion of the control is taken by the
 QSpinBox (the remaining portion is used by the slider). This makes
 it very simple to have all the sliders in a column be the same size.
 It uses the KDoubleValidator validator class. KDoubleNumInput
 enforces the value to be in the given range, but see the class
 documentation of KDoubleSpinBox for the tricky
 interrelationship of precision and values. All of what is said
 there applies here, too.
 See {@link KDoubleNumInputSignals} for signals emitted by KDoubleNumInput
		@short An input control for real numbers, consisting of a spinbox and a slider. 
		@see KIntNumInput
		@see KDoubleSpinBox

*/
public class KDoubleNumInput extends KNumInput  {
	protected KDoubleNumInput(Class dummy){super((Class) null);}
	public native QMetaObject metaObject();
	public native String className();
	/**	
		 Constructs an input control for double values
		 with initial value 0.00.
		     		@short    Constructs an input control for double values  with initial value 0.
	*/
	public KDoubleNumInput(QWidget parent, String name) {
		super((Class) null);
		newKDoubleNumInput(parent,name);
	}
	private native void newKDoubleNumInput(QWidget parent, String name);
	public KDoubleNumInput(QWidget parent) {
		super((Class) null);
		newKDoubleNumInput(parent);
	}
	private native void newKDoubleNumInput(QWidget parent);
	public KDoubleNumInput() {
		super((Class) null);
		newKDoubleNumInput();
	}
	private native void newKDoubleNumInput();
	/**	
		 Constructor
			@param lower lower boundary value
			@param upper upper boundary value
			@param value initial value for the control
			@param step step size to use for up/down arrow clicks
			@param precision number of digits after the decimal point
			@param parent parent QWidget
			@param name internal name for this widget
				@short    Constructor
	*/
	public KDoubleNumInput(double lower, double upper, double value, double step, int precision, QWidget parent, String name) {
		super((Class) null);
		newKDoubleNumInput(lower,upper,value,step,precision,parent,name);
	}
	private native void newKDoubleNumInput(double lower, double upper, double value, double step, int precision, QWidget parent, String name);
	public KDoubleNumInput(double lower, double upper, double value, double step, int precision, QWidget parent) {
		super((Class) null);
		newKDoubleNumInput(lower,upper,value,step,precision,parent);
	}
	private native void newKDoubleNumInput(double lower, double upper, double value, double step, int precision, QWidget parent);
	public KDoubleNumInput(double lower, double upper, double value, double step, int precision) {
		super((Class) null);
		newKDoubleNumInput(lower,upper,value,step,precision);
	}
	private native void newKDoubleNumInput(double lower, double upper, double value, double step, int precision);
	public KDoubleNumInput(double lower, double upper, double value, double step) {
		super((Class) null);
		newKDoubleNumInput(lower,upper,value,step);
	}
	private native void newKDoubleNumInput(double lower, double upper, double value, double step);
	public KDoubleNumInput(double lower, double upper, double value) {
		super((Class) null);
		newKDoubleNumInput(lower,upper,value);
	}
	private native void newKDoubleNumInput(double lower, double upper, double value);
	/**	
		 Constructor
			 the difference here is the "below" parameter. It tells this
		 instance that it is visually put below some other KNumInput
		 widget.  Note that these two KNumInput's need not to have the
		 same parent widget or be in the same layout group.  The effect
		 is that it'll adjust it's layout in correspondence with the
		 layout of the other KNumInput's (you can build an arbitrary long
		 chain).
			@param below append KDoubleNumInput to the KDoubleNumInput chain
			@param lower lower boundary value
			@param upper upper boundary value
			@param value initial value for the control
			@param step step size to use for up/down arrow clicks
			@param precision number of digits after the decimal point
			@param parent parent QWidget
			@param name internal name for this widget
				@short    Constructor
	*/
	public KDoubleNumInput(KNumInput below, double lower, double upper, double value, double step, int precision, QWidget parent, String name) {
		super((Class) null);
		newKDoubleNumInput(below,lower,upper,value,step,precision,parent,name);
	}
	private native void newKDoubleNumInput(KNumInput below, double lower, double upper, double value, double step, int precision, QWidget parent, String name);
	public KDoubleNumInput(KNumInput below, double lower, double upper, double value, double step, int precision, QWidget parent) {
		super((Class) null);
		newKDoubleNumInput(below,lower,upper,value,step,precision,parent);
	}
	private native void newKDoubleNumInput(KNumInput below, double lower, double upper, double value, double step, int precision, QWidget parent);
	public KDoubleNumInput(KNumInput below, double lower, double upper, double value, double step, int precision) {
		super((Class) null);
		newKDoubleNumInput(below,lower,upper,value,step,precision);
	}
	private native void newKDoubleNumInput(KNumInput below, double lower, double upper, double value, double step, int precision);
	public KDoubleNumInput(KNumInput below, double lower, double upper, double value, double step) {
		super((Class) null);
		newKDoubleNumInput(below,lower,upper,value,step);
	}
	private native void newKDoubleNumInput(KNumInput below, double lower, double upper, double value, double step);
	public KDoubleNumInput(KNumInput below, double lower, double upper, double value) {
		super((Class) null);
		newKDoubleNumInput(below,lower,upper,value);
	}
	private native void newKDoubleNumInput(KNumInput below, double lower, double upper, double value);
	/**	
				@return the current value.
     
		@short
	*/
	public native double value();
	/**	
				@return the suffix.

		@short   
		@see #setSuffix
	*/
	public native String suffix();
	/**	
				@return the prefix.

		@short   
		@see #setPrefix
	*/
	public native String prefix();
	/**	
				@return the precision.

		@short   
		@see #setPrecision
	*/
	public native int precision();
	/**	
				@return the string displayed for a special value.

		@short   
		@see #setSpecialValueText
	*/
	public native String specialValueText();
	/**	
			@param min minimum value
			@param max maximum value
			@param step step size for the QSlider
			@param slider whether the slider is created or not
		     		@short
	*/
	public native void setRange(double min, double max, double step, boolean slider);
	public native void setRange(double min, double max, double step);
	public native void setRange(double min, double max);
	/**	
		 Sets the minimum value.
		     		@short    Sets the minimum value.
	*/
	public native void setMinValue(double min);
	/**	
				@return the minimum value.
     
		@short
	*/
	public native double minValue();
	/**	
		 Sets the maximum value.
		     		@short    Sets the maximum value.
	*/
	public native void setMaxValue(double max);
	/**	
				@return the maximum value.
     
		@short
	*/
	public native double maxValue();
	/**	
		 Specifies the number of digits to use.
		     		@short    Specifies the number of digits to use.
	*/
	public native void setPrecision(int precision);
	/**	
				@return the reference point for relativeValue calculation

		@short
	*/
	public native double referencePoint();
	/**	
				@return the current value in units of referencePoint.

		@short
	*/
	public native double relativeValue();
	/**	
		 Sets the special value text. If set, the spin box will display
		 this text instead of the numeric value whenever the current
		 value is equal to minVal(). Typically this is used for indicating
		 that the choice has a special (default) meaning.
		     		@short    Sets the special value text.
	*/
	public native void setSpecialValueText(String text);
	public native void setLabel(String label, int a);
	public native void setLabel(String label);
	public native QSize minimumSizeHint();
	public native boolean eventFilter(QObject arg1, QEvent arg2);
	/**	
		 Sets the value of the control.
		     		@short    Sets the value of the control.
	*/
	public native void setValue(double arg1);
	/**	
		 Sets the value in units of referencePoint.
				@short    Sets the value in units of referencePoint.
	*/
	public native void setRelativeValue(double arg1);
	/**	
		 Sets the reference Point to <code>ref.</code> It <code>ref</code> == 0, emitting of
		 relativeValueChanged is blocked and relativeValue
		 just returns 0.
				@short    Sets the reference Point to <code>ref.</code>
	*/
	public native void setReferencePoint(double ref);
	/**	
		 Sets the suffix to be displayed to <code>suffix.</code> Use null to disable
		 this feature. Note that the suffix is attached to the value without any
		 spacing. So if you prefer to display a space separator, set suffix
		 to something like " cm".
				@short    Sets the suffix to be displayed to <code>suffix.</code>
		@see #setSuffix
	*/
	public native void setSuffix(String suffix);
	/**	
		 Sets the prefix to be displayed to <code>prefix.</code> Use null to disable
		 this feature. Note that the prefix is attached to the value without any
		 spacing.
				@short    Sets the prefix to be displayed to <code>prefix.</code>
		@see #setPrefix
	*/
	public native void setPrefix(String prefix);
	protected native void doLayout();
	protected native void resizeEvent(QResizeEvent arg1);
	protected native void resetEditBox();
	/** 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();
}
