def __setValueFromDrag( self, event, reason ) :

		move = event.line.p0.x - self.__dragStart

		offset = 0
		## \todo: come up with an official scheme after some user testing
		if event.modifiers == GafferUI.ModifiableEvent.Modifiers.Control :
			offset = 0.01 * move
		elif event.modifiers == GafferUI.ModifiableEvent.Modifiers.ShiftControl :
			offset = 0.00001 * math.pow( move, 3 )

		newValue = self.__numericType( float( self.__dragValue ) + offset )

		self.__setValueInternal( newValue, reason )
dataset/ETHPy150Open ImageEngine/gaffer/python/GafferUI/NumericWidget.py/NumericWidget.__setValueFromDrag/original