Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flasher.ru > Флейм

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 02.01.2009, 13:36
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 11  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Да млииииин, ну как же еще объяснить... ну абсолютно все равно что бы не возвращал dispose() к условию в if() это вообще отношения не имеет! При чем тут универсальность кода!? Я уже объяснил зачем там этот if.
Вот нашел какой-то промежуточный вариант кода, надеюсь, это как-то поможет понять зачем это было нужно...
Код AS1/AS2:
public function createAlert(alertType:String, o:Object, removePrevious:Boolean):SForm
	{
		if (!removePrevious) _abase.removeMovieClip();
		else _backSteps++;
		_abg.removeMovieClip();
		/*if (_screenCapture) _screenCapture.dispose();
		_screenCapture = new BitmapData(Stage.width, Stage.height);
		_screenCapture.draw(_root);
		_screenCapture.applyFilter(_screenCapture, new Rectangle(0, 0, Stage.width, Stage.height),
									new Point(0, 0), new BlurFilter(4, 4, 1));
		_abg = GFX.grid(_root, Stage.width, Stage.height, _screenCapture);*/
		_abg = GFX.rct0000(_root, Stage.width, Stage.height, GFX.WHITE, 30);
		_abg.onRelease = function():Void {};
		_abg.useHandCursor = false;
		_abase = _root.createEmptyMovieClip("abase" + _root.getNextHighestDepth(), _root.getNextHighestDepth());
		var ssubj:String = alertType;
		var isErr:Boolean;
		switch(alertType)
		{
			case "404":
			case SForm.TEXT_ALERT:
				isErr = false;
				break;
			default:
				isErr = true;
		}
		var rect:Rectangle = new Rectangle(0, 0, 220, 220);
		switch (String(o))
		{
			case FilterObject.BLUR:
				rect.height = 140;
				break;
			case FilterObject.GLOW:
				rect.height = 195;
				rect.width = 226;
				break;
			case FilterObject.DROP_SHADOW:
				rect.height = 180;
				rect.width = 340;
				break;
			case FilterObject.BEVEL:
				rect.height = 210;
				rect.width = 345;
				break;
			case EffectObject.IRIS:
				rect.height = 225;
				rect.width = 225;
				break;
			case EffectObject.FADE:
			case EffectObject.FLY:
			case EffectObject.ZOOM:
				rect.height = 195;
				rect.width = 175;
				break;
		}
		switch (alertType)
		{
			case SForm.CONFIRM:
				rect.height = 120;
				rect.width = 260;
				break;
		}
		var fprops:FillProps = new FillProps(FillProps.FILL_FLAT, [100], [], [GFX.WHITE]);
		var lprops:LineProps;
		var style:String;
		if (!isErr)
		{
			lprops = new LineProps(1, GFX.DARK_RED, 100, true);
			style = "err";
		} else {
			lprops = new LineProps(1);
			style = "alert";
		}
		var vprops:MCProps = new MCProps(fprops, lprops, 10, false);
		var _box:SBox = new SBox(_abase, rect, vprops);
		_box.isAlert = true;
		_box.setStyle(style);
		switch (alertType)
		{
			case SForm.PALETTE:
				_box.setForm(SForm.PALETTE);
				_box.lable = "Choose Color";
				break;
			case SForm.FONT_SELECTOR:
				_box.setForm(SForm.FONT_SELECTOR);
				_box.lable = "Choose Typeface";
				break;
			case SForm.TRIM:
				_box.setForm(SForm.TRIM, _timeline.step, _timeline.aSlide);
				_box.lable = "Trim track";
				break;
			case SForm.TEXT_ALERT:
				_box.setForm(SForm.TEXT_ALERT, Number(o));
				_box.lable = "Warning";
				break;
			case "404":
				_box.setForm("_404", 0, arguments[1]);
				_box.lable = "Resource not found";
				break;
			case SForm.EFFECT:
				_box.setForm(SForm.EFFECT, 0, o);
				_box.lable = o + " Properties";
				break;
			case SForm.FILTERS:
				_box.setForm(SForm.FILTERS, 0, o);
				_box.lable = o + " Filter Properties";
				break;
			case SForm.CONFIRM:
				_box.setForm(SForm.CONFIRM, 0, o);
				_box.lable = "Confirm";
				break;
			default:
				throw new ERR("no such alert: "+alertType, this);
			break;
		}
		_box.name = alertType + _forms.length;
		_inactiveForm = _broadcastingForm;
		_broadcastingForm = _box.getForm();
		if (!removePrevious)
		{
			_box.x = Math.round(Stage.width/2 - _box.w/2);
			_box.y = Math.round(Stage.height/2 - _box.h/2);
		} else {
			_box.x = Math.round(Stage.width/2);
			_box.y = Math.round(Stage.height/2);
		}
		_forms.push(_box);
		_box.getBackGround().filters = [new DropShadowFilter(5, 45, 0, .4, 6, 6, 1, 1)];
		keepOnTop();
		dispatchEvent(new FormManagerEvent(FormManagerEvent.FORM_OPEN, _box.getForm()));
		return _box.getForm();
	}
 
	public function deleteAlert(frm:SForm):Void
	{
		var del:SBox;
		var i:Number;
		var l:Number = _forms.length;
		for (i = 0; i < l; i++)
		{
			if (_forms[i].getForm() == frm)
			{
				del = SBox(_forms.splice(i, 1)[0]);
			}
		}
		if (!del) del = SBox(_forms.pop());
		dispatchEvent(new FormManagerEvent(FormManagerEvent.FORM_CLOSE, del.getForm()));
		del.deleteContent();
		delete del;
		if (_backSteps > 1)
		{
			_inactiveForm = _forms[_forms.length - _backSteps].getForm();
			_backSteps--;
			_broadcastingForm = _forms[_forms.length - _backSteps].getForm();
			_forms[_forms.length - _backSteps].swapTo(_abg);
		} else {
			delete _abg.onRelease;
			_abg.removeMovieClip();
			_broadcastingForm = _inactiveForm;
		}
		if (_screenCapture) _screenCapture.dispose();
		_screenCapture = null;
	}
__________________
Hell is the possibility of sanity

Создать новую тему   Часовой пояс GMT +4, время: 03:22.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:22.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.