亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? calendareventrenderer.as

?? 用Flex實現(xiàn)的一個關(guān)于減肥系統(tǒng)的web界面,內(nèi)部沒有實際的業(yè)務(wù)邏輯,只是一個原形.
?? AS
字號:
/*Copyright (c) 2006 Adobe Systems Incorporated

Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
*/
package qs.controls.calendarDisplayClasses
{
	import diet.vo.activity.DietActivity;
	
	import flash.events.MouseEvent;
	
	import mx.core.IDataRenderer;
	import mx.core.UIComponent;
	import mx.core.UITextField;
	
	import qs.calendar.CalendarEvent;
	import qs.controls.CalendarDisplay;
	import qs.utils.ColorUtils;
	import qs.utils.StringUtils;

	public class CalendarEventRenderer extends UIComponent implements IDataRenderer, ICalendarEventRenderer
	{
		private var _eventSummary:UITextField;
		private var _eventDescription:UITextField;
		private var _event:CalendarEvent;
		private var _allDay:Boolean = false;
		private var _displayMode:String;
		private var headerColor:uint;
		private var _grabColor:uint;
		
		private var _calendarDisplay:CalendarDisplay = null;
		

		private const BORDER_COLOR:Number = 0xAAAADD;
		private const HEADER_FILL:Number = 0xFFAAAA;
		
		
		public function CalendarEventRenderer():void
		{
			cacheAsBitmap = true;
		}
		
		override protected function createChildren():void
		{
			_eventSummary = new UITextField();	
			_eventSummary.styleName = this;
//\			_eventSummary.cacheAsBitmap = true;
			addChild(_eventSummary);
			
			
			var description:String = StringUtils.replaceAll(_event.description, "\\n", "\n");
			_eventDescription = new UITextField();
			_eventDescription.text = description;
			_eventDescription.visible = false;
			addChild(_eventDescription);
			
			this.toolTip = "<b>" + _event.summary + "</b>\n" + description + "\n\n<i>Double Click to Edit</i>";
			
			
			this.doubleClickEnabled = true;
			this.addEventListener(MouseEvent.DOUBLE_CLICK, editSummary);
			this.addEventListener(MouseEvent.MOUSE_WHEEL, dispatchMouseEvent);
			this.addEventListener(MouseEvent.MOUSE_UP, dispatchMouseEvent);
			this.addEventListener(MouseEvent.MOUSE_MOVE, dispatchMouseEvent);
			
			_calendarDisplay = CalendarDisplay(this.parent.parent);
		}
		
		private function dispatchMouseEvent(event:MouseEvent):void{
			if(_calendarDisplay.displayMode == "days"
					&& _calendarDisplay.currentDay != null
					&& !_calendarDisplay.isEventDrag()){
				CalendarDisplay(this.parent.parent).currentDay.dispatchEvent(event);
			}
		}
		
		private function editSummary(event:MouseEvent):void{
			var ce:CalendarDisplayEvent = new CalendarDisplayEvent(CalendarDisplayEvent.ITEM_EDIT);
			ce.event = this._event;
			//this.parent.parent is CalendarDisplay
			UIComponent(this.parent.parent).dispatchEvent(ce);
			
		}
		
		
		override protected function measure():void
		{
			measuredWidth = _eventSummary.measuredWidth;
			measuredHeight = _eventSummary.measuredHeight;
		}
	
		public function set displayMode(value:String):void
		{
			_displayMode = value;
			invalidateProperties();	
		}
		
		public function set data(value:Object):void
		{
			_event = CalendarEvent(value);
			if(_event != null)
			{
				if(_event.allDay)
					_allDay= true;

				var hsv:Object = ColorUtils.RGBToHSV(_event.color);
				var v:Number = hsv.v;
				var s:Number = hsv.s;
				if(hsv.v > .3)
				{				
					hsv.v *= .7;
					hsv.s *= .9;
				}
				else
				{
					hsv.v *= 2;
					hsv.s *= .9;
				}
				headerColor = ColorUtils.HSVToRGB(hsv);
				hsv.v = Math.min(1,v*1.5);
				hsv.s = s/2;
				_grabColor = ColorUtils.HSVToRGB(hsv);

			}
			else
				_allDay = false;
			invalidateProperties();
		}
		public function get data():Object
		{
			return _event;
		}
		
		override protected function commitProperties():void
		{
			
			var eventText:String = "";
			if(_event != null)
			{
				if(_event.allDay == false)
				{
					var hour:int = _event.start.hours;
					if(hour >= 12)
						hour -= 12;
					if(hour == 0)
						hour = 12;
					eventText += hour.toString();
					if(_event.start.minutes > 0)
						eventText += ":"+_event.start.minutes;
					if(_event.start.hours >= 12)
						eventText += " pm";
					else
						eventText += " am";
				}
				eventText += " " + _event.summary;	
				
			}
			if(_allDay || _displayMode == "box")
			{
				setStyle("color",0xFFFFFF);
			}
			else
			{
				setStyle("color",_event.color);				
			}
			_eventSummary.text = eventText;
			//toolTip = (_event)? eventText:null;
			var description:String = StringUtils.replaceAll(_event.description, "\\n", "\n");
			_eventDescription.text = description;
			
			this.toolTip = "<b>" + _event.summary + "</b>\n" + description + "\n\n<i>Double Click to Edit</i>";
			
			
			var hsv:Object = ColorUtils.RGBToHSV(_event.color);
			var v:Number = hsv.v;
			var s:Number = hsv.s;
			if(hsv.v > .3)
			{				
				hsv.v *= .7;
				hsv.s *= .9;
			}
			else
			{
				hsv.v *= 2;
				hsv.s *= .9;
			}
			headerColor = ColorUtils.HSVToRGB(hsv);
			hsv.v = Math.min(1,v*1.5);
			hsv.s = s/2;
			_grabColor = ColorUtils.HSVToRGB(hsv);
			
			//invalidateSize();
			invalidateDisplayList();
			
		}
		private function getActivityDescription(activity:DietActivity):String
		{
			if(!activity)
				return "";
			return activity.toString();
			
		}
		override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
		{
			
			if(checkModeChanged()){
				callLater(_calendarDisplay.invalidateDisplayList);
			}
			
			
			graphics.clear();
			if(_displayMode == "line")
			{
				_eventSummary.setActualSize(unscaledWidth-_eventSummary.measuredHeight,unscaledHeight);			
				_eventSummary.x = measuredHeight/4;
				
				_eventDescription.visible = false;
				
				if(_allDay)
				{
					graphics.lineStyle(1,BORDER_COLOR);
					graphics.beginFill(_event.color);
					graphics.drawRoundRect(0,2,unscaledWidth, unscaledHeight-4,unscaledHeight*.75,unscaledHeight*.75);
					graphics.endFill();
				}
			}
			else
			{
				_eventSummary.setActualSize(unscaledWidth-8,unscaledHeight);
				_eventSummary.move(4,4);
				
				
				graphics.lineStyle(1,BORDER_COLOR);
				
				
				
				
				graphics.beginFill(headerColor);
				graphics.lineStyle(0,0,0);

				if(unscaledHeight <= 20)
				{
					graphics.drawRoundRectComplex(0,2,unscaledWidth, unscaledHeight-4,8,8,8,8);
					graphics.endFill();
					graphics.lineStyle(1,_grabColor,1,false,"normal","none");
				}
				else
				{
					graphics.drawRoundRectComplex(0,2,unscaledWidth, _eventSummary.measuredHeight,8,8,0,0);
					graphics.endFill();
					graphics.beginFill(_event.color);
					graphics.drawRoundRectComplex(0,2+_eventSummary.measuredHeight,unscaledWidth, unscaledHeight-2 - (2+_eventSummary.measuredHeight),0,0,8,8);
					graphics.endFill();
					graphics.lineStyle(1,_grabColor,1,false,"normal","none");
					graphics.moveTo(0,unscaledHeight-8 );
					graphics.lineTo(unscaledWidth,unscaledHeight-8);
					
					
					_eventDescription.setActualSize(unscaledWidth-8,unscaledHeight - 20);
					_eventDescription.move(4,20);
					_eventDescription.visible = true;
				}
				graphics.moveTo(unscaledWidth/2-4,unscaledHeight-6 );
				graphics.lineTo(unscaledWidth/2+4,unscaledHeight-6 );
				graphics.moveTo(unscaledWidth/2-4,unscaledHeight-4 );
				graphics.lineTo(unscaledWidth/2+4,unscaledHeight-4 );
				
			}
			
			
			
		}
		
		private function checkModeChanged():Boolean{
			var chenged:Boolean = (_allDay != _event.allDay);
			if(chenged){
				_allDay = _event.allDay;
				if(_allDay){
					_displayMode = "line";
				}else{
					_displayMode = "box";
				}
			}
			return chenged;
		}
		
	}
}

/** 
  * ------------------------------------------------------------------------
  *                       Modification Log
  * Date     	Developer         	Description of Change
  * ----------	-----------------	-----------------------------------------
  * 02/25/2007	Jove Shi			Add add/edit event functions and description field, color etc..
  */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆精品视频在线观看| 亚洲精品视频自拍| 成人激情黄色小说| 丝袜国产日韩另类美女| 精品久久久久久久久久久院品网 | 91精品国产乱码久久蜜臀| 麻豆成人免费电影| 亚洲韩国一区二区三区| 精品奇米国产一区二区三区| 一本高清dvd不卡在线观看| 免费看日韩精品| 中文字幕一区二区三区不卡在线| 成人禁用看黄a在线| 日韩av高清在线观看| 国产欧美日韩在线视频| 欧美一区二区三区视频免费| 成人一道本在线| 日日夜夜精品视频天天综合网| 国产亚洲精品超碰| 国产精品99久| 亚洲一区二区五区| 国产日产欧美一区二区视频| 麻豆专区一区二区三区四区五区| 亚洲美女一区二区三区| 久久精品水蜜桃av综合天堂| 日韩欧美你懂的| 欧美性受xxxx| 在线观看av一区二区| 国产suv精品一区二区三区| 亚洲女与黑人做爰| 欧美国产精品久久| 日韩欧美久久一区| 欧美不卡一区二区| 欧美精品三级日韩久久| 欧美日韩国产在线播放网站| hitomi一区二区三区精品| 懂色av一区二区三区免费观看| 欧美aaaaaa午夜精品| 国产精品国产成人国产三级| 国产欧美日韩精品一区| 精品盗摄一区二区三区| 精品国一区二区三区| 欧美日韩国产成人在线免费| 精品视频在线免费观看| 91网站视频在线观看| 国产成人午夜电影网| 春色校园综合激情亚洲| 国产一二三精品| 国产不卡视频在线播放| 国产一二精品视频| 丰满亚洲少妇av| 国产精品996| 国产一区二区三区香蕉| 国产精品99久久久久| 国产在线播放一区二区三区| 国产成人精品一区二 | 国产传媒欧美日韩成人| 国产精品一区在线| 国产精品亚洲人在线观看| 国产乱码字幕精品高清av| 狠狠色综合日日| 国产91富婆露脸刺激对白| 国产成人在线电影| 色综合网站在线| 色成人在线视频| 日本乱码高清不卡字幕| 欧美日韩激情一区二区三区| 欧美乱妇15p| 欧美精品一区二区三区视频| 久久综合精品国产一区二区三区 | 午夜成人免费视频| 日韩精彩视频在线观看| 国产美女一区二区三区| 成人激情小说网站| 欧美日韩一级二级三级| 欧美一区二区三区成人| 国产午夜久久久久| 最近日韩中文字幕| 国产精品久久久久久久浪潮网站| 亚洲国产精品一区二区久久| 午夜精品福利视频网站| 成人黄页毛片网站| 91久久精品一区二区| 99这里只有久久精品视频| 在线免费观看日本一区| 欧美日韩免费视频| 精品粉嫩超白一线天av| 国产精品另类一区| 蜜臀av在线播放一区二区三区| 黄页网站大全一区二区| 国产毛片精品视频| 精品污污网站免费看| 日韩精品在线一区| 国产精品久久久久久久久免费樱桃 | 欧美性生活大片视频| 精品国产区一区| 亚洲欧洲美洲综合色网| 免费亚洲电影在线| av中文字幕一区| 一本在线高清不卡dvd| 精品国产免费视频| 自拍偷拍国产精品| 国产一区在线不卡| 91免费观看在线| 久久久久国产成人精品亚洲午夜| 国产精品毛片久久久久久久| 一区在线观看视频| 狠狠狠色丁香婷婷综合久久五月| 99久久国产免费看| 精品国内二区三区| 亚洲一二三四区| 成人av午夜电影| 日韩精品一区在线观看| 亚洲一二三四在线| av电影在线观看一区| 欧美三级电影网| 亚洲免费色视频| 狠狠色狠狠色综合系列| 欧美男男青年gay1069videost| 久久久久久久久久电影| 久久成人麻豆午夜电影| 欧美三区在线视频| 亚洲午夜久久久久中文字幕久| 国产寡妇亲子伦一区二区| 精品免费日韩av| 午夜精品久久久久久久99水蜜桃| 国产精品综合视频| 久久久综合视频| 日本亚洲天堂网| 欧美日韩久久不卡| 亚洲免费在线视频| 91麻豆.com| 国产日韩欧美高清| 久久99精品国产麻豆不卡| 欧美日韩一区视频| 亚洲精品精品亚洲| 国产99久久久国产精品潘金 | 夜夜嗨av一区二区三区中文字幕| 99综合影院在线| 国产欧美日韩另类一区| 成人网在线播放| 欧美精品一区二区三区高清aⅴ | 99久久精品费精品国产一区二区| 中文字幕不卡一区| 成人午夜精品在线| 国产精品乱子久久久久| 国产成人免费网站| 精品处破学生在线二十三| 麻豆91精品视频| 欧美三级日韩三级| 日本亚洲天堂网| 日韩一区二区三区av| 久久国产麻豆精品| 欧美一二区视频| 国产一区91精品张津瑜| 26uuu欧美日本| 成人免费福利片| 中国色在线观看另类| 91亚洲精品久久久蜜桃| 最新久久zyz资源站| 欧美性感一类影片在线播放| 亚洲一区二三区| 欧美自拍偷拍一区| 奇米一区二区三区| 日韩欧美在线影院| 丁香激情综合五月| 综合在线观看色| 色婷婷综合久久久久中文| 一区二区三区**美女毛片| 欧美日韩国产影片| 久久99国产精品免费网站| 日韩精品一区二区三区视频播放| 久久成人精品无人区| 欧美mv日韩mv| 91在线观看污| 亚洲一区二区四区蜜桃| 精品少妇一区二区三区在线播放| 久久69国产一区二区蜜臀| 亚洲欧洲韩国日本视频| 色88888久久久久久影院按摩 | 99re66热这里只有精品3直播| 亚洲三级在线免费| 精品捆绑美女sm三区| 国产风韵犹存在线视精品| 亚洲狠狠爱一区二区三区| 欧美一级艳片视频免费观看| 国产精品一区二区x88av| 国产精品久久久久国产精品日日| 欧美性大战久久久久久久| 日本欧美久久久久免费播放网| 欧美极品另类videosde| 在线欧美日韩精品| 麻豆精品新av中文字幕| 中文字幕视频一区| 日韩欧美一区二区免费| av激情成人网| 日本免费在线视频不卡一不卡二| 久久久久国产精品人| 制服丝袜成人动漫| 成人午夜在线播放|