window:
	res:
		windowType	wstandard
		iconify		true
		iconBitmapPath	$(icons)
		bitmapPath	$(icons)
		iconBitmapFile	Format
		cursor		top_left_arrow
	endres:
endwindow:
close:
	res:
		bitmapPath	$(bitmaps)
		bitmapFile	CLOSE::CBM
	endres:
endclose:
menu: menues
	mitem: file
		res:
			label		t@C
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
		endres:
		pmitem: m_exit
			res:
				label		I@
				kanjiFont	$(kanjiFont)
				font		$(kanaFont)
			endres:
			act:
				job off
				exit
			endact:
		endpmitem:
		pmitem: version
			res:
				label		o|W
				kanjiFont	$(kanjiFont)
				font		$(kanaFont)
			endres:
			act:
				put 1 $(menu_no)
				$(version) = sub $(menuPath)/version ++48++48
				trap $(version) ver_off
			endact:
		endpmitem:
		pmitem: readme
			res:
				label		README
				kanjiFont	$(kanjiFont)
				font		$(kanaFont)
			endres:
			act:
				put 4 $(menu_no)
				$(readme) = sub $(menuPath)/readme ++48++48
				trap $(readme) ver_off
			endact:
		endpmitem:
	endmitem:
	mitem: func
		res:
			label		@@\
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
		endres:
		pmitem: f_format
			res:
				leftLabel	tH|}bg
				leftKanjiFont	$(kanjiFont)
				leftFont	$(kanaFont)
				bitmapPath	$(bitmaps)
				bitmapFile	null::CBM
			endres:
			act:
				switch $(func)
					case format:
						quit
					default:
						setval f_copy bitmapFile null::CBM
						break
				endswitch
				put format $(func)
				job init_func
			endact:
		endpmitem:
		pmitem: f_copy
			res:
				leftLabel	Rs|
				leftKanjiFont	$(kanjiFont)
				leftFont	$(kanaFont)
				font		$(kanaFont)
				bitmapPath	$(bitmaps)
				bitmapFile	null::CBM
			endres:
			act:
				switch $(func)
					case copy:
						quit
					default:
						setval f_format bitmapFile null::CBM
						break
				endswitch
				put copy $(func)
				job init_func
			endact:
		endpmitem:
	endmitem:
endmenu:
dialog: dialogs
	res:
		defaultDistance		10
		dialogType		modeless
		defaultButton		execute
	endres:
	ditem: msg
		res:
			itemType	bitmap
			leftLabel	tH|}bgtbs|̎
			leftKanjiFont	$(kanjiFont)
			leftFont	$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: 2hd-00
		res:
			itemType	radio
			label		lec|Qgc
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			fromVert	msg
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
			shadowWidth	0
			switch $(COLOR)
				case MONO:
					background	white
					foreground	black
					highlightBack	white
					highlightFore	black
					selectedBack	white
					selectedFore	black
					selhighBack	white
					break
				default:
					background	#c5c5c5
					highlightBack	#c5c5c5
					selectedBack	#c5c5c5
					break
			endswitch
		endres:
		act:
			put $(kind)
			switch #(kind)
				case 1:
					put /dev/rfh0a $(device)
					put 18k $(bs)
			endswitch
		endact:
	endditem:
	ditem: 2dd-00
		res:
			itemType	radio
			label		lec|Qcc
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			fromVert	2hd-00
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
			shadowWidth	0
			switch $(COLOR)
				case MONO:
					background	white
					foreground	black
					highlightBack	white
					highlightFore	black
					selectedBack	white
					selectedFore	black
					selhighBack	white
					break
				default:
					background	#c5c5c5
					highlightBack	#c5c5c5
					selectedBack	#c5c5c5
					break
			endswitch
		endres:
		act:
			put $(kind)
			switch #(kind)
				case 1:
					put /dev/rfd0a $(device)
					put 9k $(bs)
			endswitch
		endact:
	endditem:
	ditem: execute
		res:
			itemType	button
			label		' @s '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			fromVert	2dd-00
			vertDistance	#(fWidth)*2
			horizDistance	#(fWidth)*3
		endres:
		act:
			switch $(device)
				case '':
					buzzer
					quit
			endswitch
			put on $(ONRUN)
			put 2 $(menu_no)
			switch $(func)
				case format:
					put format $(operation)
					break
				default:
					put read $(operation)
					break
			endswitch
			$(onrun) = sub $(menuPath)/onrun ++48++48
			trap $(onrun) func_done
			break
		endact:
	endditem:
	ditem: d_exit
		res:
			itemType	button
			label		' I@ '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			fromVert	2dd-00
			fromHoriz	execute
			vertDistance	#(fWidth)*2
			horizDistance	#(fWidth)*2
		endres:
		act:
			job off
			exit
		endact:
	endditem:
	ditem: eject
		res:
			itemType	button
			label		'CWFNg'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			fromVert	2dd-00
			fromHoriz	d_exit
			vertDistance	#(fWidth)*2
			horizDistance	#(fWidth)*4
		endres:
		act:
			/bin/fe 1> /dev/null 2> /dev/null
		endact:
	endditem:
enddialog:
proc: pre
	$(TMP) = mktemp
	put /tmp/$(TMP) $(DOTTMP)
	global $(DOTTMP)
	$(TMP) = mktemp
	put /usr/tmp/$(TMP) $(COPYTMP)
	global $(COPYTMP)
	global $(device)
	global $(bs)
	global $(operation_stat)
	global $(operation)
	global $(operation_err)
	global $(answer)
	global $(format)
	put '' $(device)
	put 0 $(menu_no)
	put 0 $(operation_stat)
	put 0 $(iconify)
	put off $(iconify)
	put off $(opened))
	put format $(func)
	put format $(operation)
	put '' $(operation_err)
endproc:
proc: off
	rm -f $(DOTTMP) $(COPYTMP)
endproc:
proc: open
	switch $(EJECT)
		case on:
			setval eject sensitive on
			break
		case off:
			setval eject sensitive off
			break
	endswitch
	put off $(ONRUN)
	job init_func
endproc:
proc: init_func
	switch $(func)
		case format:
			setval f_format bitmapFile checkmark::CBM
			setval msg leftLabel tH|}bgtbs|̎
			break
		default:
			setval f_copy bitmapFile checkmark::CBM
			setval msg leftLabel 'Rs|tbs|̎      '
			break
	endswitch
endproc:
proc: close
	switch $(ONRUN)
		case on:
			quit
	endswitch
	job off
	exit
endproc:
proc: icon
	switch #(menu_no)
		case 1:
			unmap $(version)
			break
		case 2:
			unmap $(onrun)
			break
		case 3:
			unmap $(sub)
			break
		case 4:
			unmap $(readme)
			break
	endswitch
	put on $(iconify)
endproc:
proc: deicon
	switch #(menu_no)
		case 1:
			move $(version)
			map $(version)
			break
		case 2:
			move $(onrun)
			map $(onrun)
			break
		case 3:
			switch $(opened)
				case on:
					job func_stat
					break
				case off:
					move $(sub)
					map $(sub)
					break
			endswitch
			break
		case 4:
			move $(readme)
			map $(readme)
			break
	endswitch
	put off $(iconify)
	put off $(opened)
endproc:
proc: title
	job move
	job up
endproc:
proc: raise
	job up
endproc:
proc: move
	switch #(menu_no)
		case 1:
			move $(version)
			break
		case 2:
			move $(onrun)
			break
		case 3:
			move $(sub)
			break
	endswitch
endproc:
proc: up
	switch #(menu_no)
		case 1:
			raise $(version)
			break
		case 2:
			raise $(onrun)
			break
		case 3:
			raise $(sub)
			break
	endswitch
endproc:
proc: ver_off
	put 0 $(menu_no)
endproc:
proc: func_done
	switch $(EJECT)
		case on:
			/bin/fe 1> /dev/null 2> /dev/null
			break
	endswitch
	switch $(iconify)
		case on:
			put on $(opened)
			quit
		default:
			job func_status
			break
	endswitch
	buzzer
endproc:
proc: func_status
	switch #(operation_stat)
		case 0:
			put 3 $(menu_no)
			switch $(operation)
				case format:
					$(sub) = sub $(menuPath)/end_format ++48++48
					trap $(sub) ver_off
					break
				case read:
					$(sub) = sub $(menuPath)/set_dest ++48++48
					trap $(sub) write
					break
				case write:
				case format_write:
					$(sub) = sub $(menuPath)/end_copy ++48++48
					trap $(sub) copy_end
					break
			endswitch
			break
		case 1:
			put 0 $(menu_no)
			break
		case 2:
			put 3 $(menu_no)
			switch $(operation)
				case format:
				case read:
					$(sub) = sub $(menuPath)/error ++48++48
					trap $(sub) ver_off
					break
				case write:
				case format_write:
					$(sub) = sub $(menuPath)/error_copy ++48++48
					trap $(sub) copy_end
					break
			endswitch
			break
	endswitch
	put off $(ONRUN)
endproc:
proc: write
	switch $(answer)
		case cancel:
			put 0 $(menu_no)
			quit
	endswitch
	put on $(ONRUN)
	put 2 $(menu_no)
	switch $(format)
		case on:
			put format_write $(operation)
			break
		default:
			put write $(operation)
			break
	endswitch
	$(onrun) = sub $(menuPath)/onrun ++48++48
	trap $(onrun) func_done
endproc:
proc: copy_end
	switch $(EJECT)
		case on:
			/bin/fe 1> /dev/null 2> /dev/null
			break
	endswitch
	switch $(answer)
		case cancel:
			put 0 $(menu_no)
			quit
		default:
			put 3 $(menu_no)
			$(sub) = sub $(menuPath)/set_dest ++48++48
			trap $(sub) write
			break
	endswitch
endproc:
