window:
	res:
		windowType	wstandard
	endres:
endwindow:
close:
	res:
		bitmapPath	$(bitmaps)
		bitmapFile	CLOSE::CBM
	endres:
endclose:
title:
	res:
		leftLabel	merǗ
		leftKanjiFont	$(kanjiFont)
		leftFont	$(kanaFont)
		switch $(COLOR)
			case MONO:
				bitmapPath	$(bitmaps)
				backgroundFile	GRAY3
				transparent	false
				break
		endswitch
	endres:
endtitle:
menu: nfs_menu
	mitem: special
		res:
			label		XyV
			kanjiFont       $(kanjiFont)
		endres:
		pmitem: public_on
			res:
				label		'/usr ̃|ggp'
				kanjiFont	$(kanjiFont)
				font		$(kanaFont)
			endres:
			act:
				put 2 $(menu_no)
				put '/usr ̃|ggp' $(cmdName)
				$(sub) = sub $(commonPath)/remote ++48++48
				trap $(sub) remote_end
			endact:
		endpmitem:
		pmitem: public_off
			res:
				label		'/usr ̃|Jgp'
				kanjiFont	$(kanjiFont)
				font		$(kanaFont)
			endres:
			act:
				put '/usr ̃|Jgp' $(cmdName)
				job local_check
			endact:
		endpmitem:
	endmitem:
endmenu:
dialog: dialogs
	res:
		defaultDistance		#(fWidth)
		dialogType		modeless
	endres:
	ditem: server_msg
		res:
			itemType	bitmap
			label		'@T|o|̐ݒ'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: server_label
		res:
			itemType	bitmap
			fromVert	server_msg
			label		'e(1) fBNg     w(2)  a(3)   r(4) s(5)  anon'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: server_list
		res:
			itemType	scrtext
			fromVert	server_label
			vertDistance	4
			horizDistance	#(fWidth)
			width		#(fWidth)+1*50
			height		#(lHeight)*7+8
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			bind1		select1
			textOptions	1
			file		/dev/null
		endres:
		act:
			put $(line)
			put $(line)@0 $(TMP_SERVER_EXPORT)
			put $(line)@1 $(TMP_SERVER_DIR)
		endact:
	endditem:
	ditem: server_new
		res:
			itemType	button
			fromVert	server_label
			fromHoriz	server_list
			label		' V@K '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	4
			horizDistance	#(fWidth)*2
		endres:
		act:
			put 1 $(cmd)
			put 2 $(menu_no)
			put L̈̐VKo^ $(cmdName)
			$(sub) = open $(menu)/server_new ++48++48
			job insense
			trap $(sub) sub_end
		endact:
	endditem:
	ditem: server_chg
		res:
			itemType	button
			fromVert	server_new
			fromHoriz	server_list
			label		' ρ@X '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)*2
		endres:
		act:
			put 2 $(cmd)
			put 2 $(menu_no)
			put L̈̐ݒύX $(cmdName)
			$(sub) = open $(menu)/server_chg ++48++48
			job insense
			trap $(sub) sub_end
		endact:
	endditem:
	ditem: server_del
		res:
			itemType	button
			fromVert	server_chg
			fromHoriz	server_list
			label		' @ '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)*2
		endres:
		act:
			put 1 $(menu_no)
			put 3 $(cmd)
			put L̈̓o^ $(cmdName)
			put 'L̈u$(SERVER_DIR)vo^܂B' $(confirm_msg1)
			$(confirm) = sub $(commonPath)/confirm1 ++48++48
			trap $(confirm) confirm
		endact:
	endditem:
	ditem: server_export
		res:
			itemType	button
			fromVert	server_del
			fromHoriz	server_list
			label		'GNX||g'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)*2
		endres:
		act:
			put 1 $(menu_no)
			put 4 $(cmd)
			put L̈̃GNX||g $(cmdName)
			put 'L̈u$(SERVER_DIR)vGNX||g܂B' $(confirm_msg1)
			$(confirm) = sub $(commonPath)/confirm1 ++48++48
			trap $(confirm) confirm
		endact:
	endditem:
	ditem: server_unexport
		res:
			itemType	button
			fromVert	server_export
			fromHoriz	server_list
			label		'AGNX||g'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)*2
		endres:
		act:
			put 1 $(menu_no)
			put 5 $(cmd)
			put L̈̃AGNX||g $(cmdName)
			put 'L̈u$(SERVER_DIR)vAGNX||g܂B' $(confirm_msg1)
			$(confirm) = sub $(commonPath)/confirm1 ++48++48
			trap $(confirm) confirm
		endact:
	endditem:
	ditem: server_note1
		res:
			itemType	bitmap
			fromVert	server_list
			leftLabel	'e(1):GNX||g  w(2):݋(-/+:ꕔ݉)'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	2
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: server_note2
		res:
			itemType	bitmap
			fromVert	server_note1
			leftLabel	'a(3):ANZXzXg  r(4):root ANZXzXgL'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	2
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: server_note3
		res:
			itemType	bitmap
			fromVert	server_note2
			leftLabel	's(5):ZLAvgR  anon:|U|̎gphc'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	2
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: center_line
		res:
			itemType	bitmap
			fromVert	server_note3
			label		||||||||||||||||||||||||||||||||||||||
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: client_msg
		res:
			itemType	bitmap
			fromVert	center_line
			label		'@NCAg̐ݒ'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: client_label
		res:
			itemType	bitmap
			fromVert	client_msg
			label		'@zXgFfBNg@@@@}EgfBNg    w(1) b(2)'
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: client_list
		res:
			itemType	scrtext
			fromVert	client_label
			vertDistance	4
			horizDistance	#(fWidth)
			width		#(fWidth)+1*60
			height		#(lHeight)*6+8
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			bind1		select2
			textOptions	1
			file		/dev/null
		endres:
		act:
			put $(line)
			put $(line)@0 $(TMP_CLIENT_SVRDIR)
			put $(line)@1 $(TMP_CLIENT_MNTDIR)
			switch $(line)@2
				case +:
					put on $(TMP_CLIENT_WRITE)
					break
				case -:
					put off $(TMP_CLIENT_WRITE)
					break
			endswitch
			switch $(line)@3
				case +:
					put on $(TMP_CLIENT_AUTO)
					break
				case -:
					put off $(TMP_CLIENT_AUTO)
					break
			endswitch
		endact:
	endditem:
	ditem: client_new
		res:
			itemType	button
			fromVert	client_label
			fromHoriz	client_list
			label		' V@K '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	4
			horizDistance	#(fWidth)*2
		endres:
		act:
			put 6 $(cmd)
			put 2 $(menu_no)
			put NCAgVKo^ $(cmdName)
			$(sub) = open $(menu)/client_new ++48++48
			job insense
			trap $(sub) sub_end
		endact:
	endditem:
	ditem: client_chg
		res:
			itemType	button
			fromVert	client_new
			fromHoriz	client_list
			label		' ρ@X '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)*2
		endres:
		act:
			put 7 $(cmd)
			put 2 $(menu_no)
			put NCAgݒύX $(cmdName)
			$(sub) = open $(menu)/client_chg ++48++48
			job insense
			trap $(sub) sub_end
		endact:
	endditem:
	ditem: client_del
		res:
			itemType	button
			fromVert	client_chg
			fromHoriz	client_list
			label		' @ '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)*2
		endres:
		act:
			put 1 $(menu_no)
			put 8 $(cmd)
			put NCAgo^ $(cmdName)
			put 'LfBNgu$(CLIENT_SVRDIR)vo^܂B' $(confirm_msg1)
			$(confirm) = sub $(commonPath)/confirm1 ++48++48
			trap $(confirm) confirm
		endact:
	endditem:
	ditem: note
		res:
			itemType	bitmap
			fromVert	client_list
			vertDistance	2
			horizDistance	#(fWidth)
			leftLabel	'w(1):݋   b(2):N̎}Eg'
			leftKanjiFont	$(kanjiFont)
			leftFont	$(kanaFont)
		endres:
	endditem:
enddialog:
proc: pre
	global $(SERVER_EXPORT)
	global $(SERVER_DIR)
	global $(CLIENT_SVRDIR)
	global $(CLIENT_MNTDIR)
	global $(CLIENT_WRITE)
	global $(CLIENT_AUTO)
	global $(CHANGE_SERVER)
	global $(CHANGE_CLIENT)
	global $(STATION_LIST)
	put $(menuPath)/Nfs $(menu)
	switch #(uid)
		case 0:
			put $(icons) $(okPath)
			put RemoteDisk $(okFile)
			break
	endswitch
	$(TMP) = mktemp
	put /tmp/$(TMP) $(SERVER_LIST)
	$(TMP) = mktemp
	put /tmp/$(TMP) $(CLIENT_LIST)
	$(TMP) = mktemp
	put /tmp/$(TMP) $(TMP_LIST)
	$(TMP) = mktemp
	put /tmp/$(TMP) $(STATION_LIST)
	$(TMP) = mktemp
	put /tmp/$(TMP) $(SORT_LIST)
	$(bin)/Snet_check -lh > $(SORT_LIST)
	sort -u $(SORT_LIST) > $(STATION_LIST)
	rm -f $(SORT_LIST)
	put 0 $(menu_no)
	put on $(mapped)
	put off $(opened)
	put off $(CHANGE_SERVER)
	put off $(CHANGE_CLIENT)
endproc:
proc: close
	switch $(ONRUN)
		case on:
			quit
	endswitch
	job off
	close
endproc:
proc: off
	switch #(menu_no)
		case 1:
			close $(confirm)
		case 2:
			close $(sub)
			break
		case 10:
			close $(err)
			break
	endswitch
	local $(SERVER_EXPORT)
	local $(SERVER_DIR)
	local $(CLIENT_SVRDIR)
	local $(CLIENT_MNTDIR)
	local $(CLIENT_WRITE)
	local $(CLIENT_AUTO)
	local $(CHANGE_SERVER)
	local $(CHANGE_CLIENT)
	local $(STATION_LIST)
	rm -f $(SERVER_LIST) $(CLIENT_LIST) $(TMP_LIST) $(STATION_LIST)
endproc:
proc: open
	job s_init
	job c_init
	switch #(uid)
		case 0:
			break
		default:
			setval special sensitive false
			setval server_new sensitive false
			setval server_export sensitive false
			setval server_unexport sensitive false
			setval client_new sensitive false
			break
	endswitch
	job open_public
endproc:
proc: open_public
	$(etc)/Nfs/Susr.sh cur
	switch #(status)
		case 0:
			setval public_on sensitive true
			setval public_off sensitive false
			break
		default:
			setval public_on sensitive false
			setval public_off sensitive true
			break
	endswitch
endproc:
proc: s_init
	$(bin)/Sexports -l > $(SERVER_LIST)
	setval server_list file $(SERVER_LIST)
	put off $(CHANGE_SERVER)
	put off $(select_on_cmd1)
	job s_insense
endproc:
proc: c_init
	$(bin)/Sdf_nfs > $(CLIENT_LIST)
	setval client_list file $(CLIENT_LIST)
	put off $(CHANGE_CLIENT)
	put off $(select_on_cmd2)
	job c_insense
endproc:
proc: insense
	setval server_new sensitive false
	setval server_chg sensitive false
	setval server_del sensitive false
	setval server_export sensitive false
	setval server_unexport sensitive false
	setval client_new sensitive false
	setval client_chg sensitive false
	setval client_del sensitive false
endproc:
proc: s_insense
	setval server_new sensitive true
	setval server_chg sensitive false
	setval server_del sensitive false
	setval server_export sensitive false
	setval server_unexport sensitive false
endproc:
proc: c_insense
	setval client_new sensitive true
	setval client_chg sensitive false
	setval client_del sensitive false
endproc:
proc: select1
	switch #(uid)
		case 0:
			break
		default:
			quit
	endswitch
	switch $(TMP_SERVER_DIR)
		case '':
			quit
	endswitch
	switch #(menu_no)
		case 1:
		case 2:
		case 10:
			put on $(select_on_cmd1)
			quit
	endswitch
	put $(TMP_SERVER_EXPORT) $(SERVER_EXPORT)
	put $(TMP_SERVER_DIR) $(SERVER_DIR)
	put on $(select_on_cmd1)
	setval server_chg sensitive true
	setval server_del sensitive true
	switch $(SERVER_EXPORT)
		case +:
			setval server_export sensitive false
			setval server_unexport sensitive true
			break
		case -:
			setval server_export sensitive true
			setval server_unexport sensitive false
			break
	endswitch
endproc:
proc: select2
	switch #(uid)
		case 0:
			break
		default:
			quit
	endswitch
	switch $(TMP_CLIENT_SVRDIR)
		case '':
			quit
	endswitch
	switch #(menu_no)
		case 1:
		case 2:
		case 10:
			put on $(select_on_cmd2)
			quit
	endswitch
	put $(TMP_CLIENT_SVRDIR) $(CLIENT_SVRDIR)
	put $(TMP_CLIENT_MNTDIR) $(CLIENT_MNTDIR)
	put $(TMP_CLIENT_WRITE) $(CLIENT_WRITE)
	put $(TMP_CLIENT_AUTO) $(CLIENT_AUTO)
	put on $(select_on_cmd2)
	setval client_chg sensitive true
	setval client_del sensitive true
endproc:
proc: cmd_end
	buzzer $(main)
	close $(onrun)
	switch $(mapped)
		case on:
			job bgdone
			break
		case off:
			put on $(opened)
			break
	endswitch
	put 102 $(menu_no)
endproc:
proc: unmap
	switch #(menu_no)
		case 1:
			unmap $(confirm)
			break
		case 2:
			unmap $(sub)
			break
		case 10:
			unmap $(err)
			break
		case 101:
			unmap $(onrun)
			break
		case 102:
			unmap $(n_end)
			break
	endswitch
	put off $(mapped)
endproc:
proc: map
	switch #(menu_no)
		case 1:
			move $(confirm)
			raise $(confirm)
			map $(confirm)
			break
		case 2:
			raise $(sub)
			map $(sub)
			break
		case 10:
			move $(err)
			raise $(err)
			map $(err)
			break
		case 101:
			move $(onrun)
			raise $(onrun)
			map $(onrun)
			break
		case 102:
			switch $(opened)
				case on:
					job bgdone
					break
				case off:
					move $(n_end)
					raise $(n_end)
					map $(n_end)
					break
			endswitch
	endswitch
	put on $(mapped)
	put off $(opened)
endproc:
proc: bgdone
	switch #(cmd)
		case 9:
		case 10:
			put ̗グLɂȂ܂B $(confirm_msg1)
			$(n_end) = sub $(commonPath)/normalEnd1 ++48++48
			break
		default:
			$(n_end) = sub $(commonPath)/normalEnd ++48++48
			break
	endswitch
	trap $(n_end) n_end
endproc:
proc: title
	job move
	job up
endproc:
proc: raise
	job up
endproc:
proc: move
	switch #(menu_no)
		case 1:
			move $(confirm)
			break
		case 10:
			move $(err)
			break
		case 101:
			move $(onrun)
			break
		case 102:
			move $(n_end)
			break
	endswitch
endproc:
proc: up
	switch #(menu_no)
		case 1:
			raise $(confirm)
			break
		case 10:
			raise $(err)
			break
		case 101:
			raise $(onrun)
			break
		case 102:
			raise $(n_end)
			break
	endswitch
endproc:
proc: n_end
	put off $(ONRUN)
	switch #(cmd)
		case 3:
		case 4:
		case 5:
			job s_init
			break
		case 8:
			job c_init
			break
		case 9:
		case 10:
			job c_init
			job open_public
			break
	endswitch
	put 0 $(menu_no)
endproc:
proc: confirm
	switch $(answer)
		case cancel:
			put 0 $(menu_no)
			quit
	endswitch
	put on $(ONRUN)
	put 101 $(menu_no)
	$(onrun) = sub $(commonPath)/onrun ++48++48
	switch #(cmd)
		case 3:
			$(pid) = bg $(etc)/Nfs/Sexports.sh del $(SERVER_DIR)
			break
		case 4:
			$(pid) = bg /usr/etc/exportfs $(SERVER_DIR)
			break
		case 5:
			$(pid) = bg /usr/etc/exportfs -u $(SERVER_DIR)
			break
		case 8:
			$(pid) = bg $(etc)/Disk/Sfstab.sh del $(CLIENT_SVRDIR) $(CLIENT_MNTDIR) $(TMP_LIST)
			break
		case 9:
			$(pid) = bg $(etc)/Nfs/Susr.sh on $(remote_host)
			break
		case 10:
			$(pid) = bg $(etc)/Nfs/Susr.sh off $(dev)
			break
	endswitch
	$(bgstat) = trap $(pid) cmd_end
endproc:
proc: sub_end
	setval server_new sensitive true
	setval client_new sensitive true
	switch $(select_on_cmd1)
		case on:
			put $(TMP_SERVER_EXPORT) $(SERVER_EXPORT)
			put $(TMP_SERVER_DIR) $(SERVER_DIR)
			setval server_chg sensitive true
			setval server_del sensitive true
			switch $(SERVER_EXPORT)
				case +:
					setval server_unexport sensitive true
					break
				case -:
					setval server_export sensitive true
					break
			endswitch
		break
	endswitch
	switch $(select_on_cmd2)
		case on:
			put $(TMP_CLIENT_SVRDIR) $(CLIENT_SVRDIR)
			put $(TMP_CLIENT_MNTDIR) $(CLIENT_MNTDIR)
			put $(TMP_CLIENT_WRITE) $(CLIENT_WRITE)
			put $(TMP_CLIENT_AUTO) $(CLIENT_AUTO)
			setval client_chg sensitive true
			setval client_del sensitive true
		break
	endswitch
	switch #(cmd)
		case 2:
		case 3:
		case 4:
		case 5:
			setval server_chg sensitive true
			setval server_del sensitive true
		case 1:
			switch $(CHANGE_SERVER)
				case on:
					job s_init
					break
			endswitch
			break
		case 7:
		case 8:
			setval client_chg sensitive true
			setval client_del sensitive true
		case 6:
			switch $(CHANGE_CLIENT)
				case on:
					job c_init
					break
			endswitch
			break
	endswitch
	put 0 $(menu_no)
endproc:
proc: remote_end
	switch $(remote_host)
		case '':
			put 0 $(menu_no)
			break
		default:
			put on $(ONRUN)
			put 101 $(menu_no)
			$(onrun) = sub $(commonPath)/onrun ++48++48
			$(pid) = bg $(etc)/Nfs/Susr.sh check $(remote_host)
			$(bgstat) = trap $(pid) check_end
			alarm 20000 timeout
			break
	endswitch
endproc:
proc: timeout
	kill 2 $(pid)
endproc:
proc: check_end
	put off $(ONRUN)
	close $(onrun)
	switch #(bgstat)
		case 0:
			put 1 $(menu_no)
			put 9 $(cmd)
			put 'zXgu$(remote_host)v  /usr L܂B' $(confirm_msg1)
			$(confirm) = sub $(commonPath)/confirm1 ++48++48
			buzzer
			trap $(confirm) confirm
			break
		default:
			put 10 $(menu_no)
			put 'zXgu$(remote_host)v  /usr ' $(confirm_msg1)
			put '}Eg邱Ƃł܂B' $(confirm_msg2)
			$(err) = sub $(commonPath)/error2 ++48++48
			buzzer
			trap $(err) err_end
			break
	endswitch
endproc:
proc: local_check
	$(etc)/Nfs/Susr.sh local
	switch #(status)
		case 0:
			put 1 $(menu_no)
			put 10 $(cmd)
			put $(stdout) $(dev)
			put '̈u$(stdout)v /usr Ƀ}EgĎgp܂BB' $(confirm_msg1)
			$(confirm) = sub $(commonPath)/confirm1 ++48++48
			trap $(confirm) confirm
			break
		default:
			put 10 $(menu_no)
			put '/usr Ƀ}Egׂ̈悪킩܂B' $(confirm_msg1)
			$(err) = sub $(commonPath)/error1 ++48++48
			trap $(err) err_end
			break
	endswitch
	buzzer
endproc:
proc: err_end
	put 0 $(menu_no)
endproc:
