<?


class fmSkip_write_blocks extends Form_children {

	function __construct() {
		parent::__construct('fmSkip_write_blocks');

		$this->ui('bt_use_part')->modalResult = mrOk; // на всякий случай, вдруг в форме его случайно поменяем

	}

	// показывает форму, с сообщением о бед блоках или без
	function open($msg_bad_block=false) {
		GLOBAL $INFO, $OP, $Measure_convert;

		$msg_bad_block = $INFO['finded_nowrite_bad_sect'];

		// из-за бага с visible пока форма не видна, придумали такой хак.
		if($msg_bad_block)
			 $this->ui('pn_bad_block')->toFront();
		else $this->ui('pn_bad_block')->toBack();

		//$this->msg_bad_block = $msg_bad_block;

		//$this->ui('pn_bad_block')->visible = $msg_bad_block;
		
		if($msg_bad_block) {
			$pn_variants_y = $this->ui('pn_bad_block')->h;

			// показываем записанный процент
			$procent = sprintf('%03.3f', $INFO['procent']) . ' %' ;

			$writed_kb = $INFO['operation_count']*$OP['block_size'];
			$writed_size = $Measure_convert->pretty_size($writed_kb, "KB", false);

			$this->ui('writed')->text = "$writed_size ($procent)";

		}
		else $pn_variants_y = 0;
		
		$this->ui('pn_variants')->y = $pn_variants_y;

		return $this->ui_form->showModal(); // потому что showmodal вернет какую кнопку нажали при выходе из окна.
	}

	// это чтобы размер формы правильно устанавливался в зависимости от видимости блоков
	function onShow() {
		$form = $this->ui_form;
		$form->autoSize=false;
		$form->autoSize=true;
		$form->repaint();
	}

	function msg_use_part_details() {
		$text = c('Fm->msg_use_part_details')->text;
		$text = 'Особенности режима "Обработать часть диска"' . "\n\n$text";

		$GLOBALS['Forms']['fmHelp']->open_text($text);
	}

	function use_part($bt) {
		// тут ничего не надо, форма сама закроется
	}

}


?>