<?xml version="1.0" encoding="utf-8"?>
<mx:NumericStepper xmlns:mx="http://www.adobe.com/2006/mxml"
	focusIn="IME.enabled = false" 
	keyDown="IME.enabled = false" 
	focusOut="IME.enabled = true" 
	textAlign="right"
	change="setData()"
	>
<mx:Script>
	<![CDATA[

		public var roopMaxMinMode:Boolean = false;
		
		
		override public function set maximum(value:Number):void{
			super.maximum = value + 1;	
		}
		
		// 利用不可（flex処理用に正しい値を返す。アプリ開発での利用は不可）
		override public function get maximum():Number{
			return super.maximum;
		}

		// minmumはループさせるために利用しているそのため、
		// 最大値の取得はこの関数を用いる		
		public function getMaximum():Number{
			return super.maximum - 1;
		}
		
		override public function set minimum(value:Number):void{
			super.minimum = value - 1;
		}
		
		// 利用不可（flex処理用に正しい値を返す。アプリ開発での利用は不可）
		override public function get minimum():Number{
			return super.minimum;
		}
		
		// minmumはループさせるために利用しているそのため、
		// 最小値の取得はこの関数を用いる
		public function getMinimum():Number{
			return super.minimum + 1;
		}
		
		public function setData():void{
			
			if(roopMaxMinMode == true){
				
				//maxとminを変更する
				if(this.value == 13 || this.value == 11){
					super.maximum = 1;
					super.minimum = 1;
					this.value = 1;
				}else if(this.value == 0 || this.value == 2 ){
					super.maximum = 12;
					super.minimum = 12;
					this.value = 12;	
				}
				
			}else{
				if(this.value == super.maximum){
					this.value = super.minimum + 1;
				}else if(this.value == super.minimum){
					this.value = super.maximum - 1;
				}				
			}
			
		}
		
		
	]]>
</mx:Script>
</mx:NumericStepper>
