module Access
	names = case_sensitive

        objects = {
                XmLabel = gadget;
                XmPushButton = gadget;
                XmToggleButton = gadget;
                }

procedure
	WidgetCreated(integer);
	Help(string);

object
	access_box: XmBulletinBoardDialog {
		arguments {
			XmNdialogTitle = "DWProfile: Access times";
			XmNdefaultPosition = false;
		};
		controls {
			XmForm	prime;
			XmForm	hours;
			};
		callbacks {
			XmNhelpCallback = procedure Help("menus windows access");
			};
		};

value
	k_monday_button:	0;
	k_tuesday_button:	1;
	k_wednesday_button:	2;
	k_thursday_button:	3;
	k_friday_button:	4;
	k_saturday_button:	5;
	k_sunday_button:	6;

procedure
	PrimeCreated(integer);
	PrimeChanged(integer);

object
	prime: XmForm {
		arguments {
			XmNx = 5;
			XmNy = 5;
			};
		controls {
			XmLabel		prime_label;
			XmRowColumn	prime_box;
			};
		};

	prime_label: XmLabel {
		arguments {
			XmNlabelString = "Prime Days:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = 5;
			XmNtopAttachment = XmATTACH_FORM;
			XmNtopOffset = 2;     
			};
		};

	prime_box: XmRowColumn {
		arguments {
			XmNleftAttachment = XmATTACH_WIDGET;
			XmNleftWidget = prime_label;
			XmNorientation = XmHORIZONTAL;
			XmNpacking = XmPACK_TIGHT;
			};
		controls {
			XmToggleButton	monday_button;
			XmToggleButton	tuesday_button;
			XmToggleButton	wednesday_button;
			XmToggleButton	thursday_button;
			XmToggleButton	friday_button;
			XmToggleButton	saturday_button;
			XmToggleButton	sunday_button;
			};
		};


	sunday_button: XmToggleButton {
		arguments {
			XmNlabelString = "Sunday";
		};
		callbacks {
			MrmNcreateCallback = procedure PrimeCreated(k_sunday_button);
			XmNvalueChangedCallback = procedure PrimeChanged(k_sunday_button);
			};
		};

	monday_button: XmToggleButton {
		arguments {
			XmNlabelString = "Monday";
		};
		callbacks {
			MrmNcreateCallback = procedure PrimeCreated(k_monday_button);
			XmNvalueChangedCallback = procedure PrimeChanged(k_monday_button);
			};
		};

	tuesday_button: XmToggleButton {
		arguments {
			XmNlabelString = "Tuesday";
		};
		callbacks {
			MrmNcreateCallback = procedure PrimeCreated(k_tuesday_button);
			XmNvalueChangedCallback = procedure PrimeChanged(k_tuesday_button);
			};
		};

	wednesday_button: XmToggleButton {
		arguments {
			XmNlabelString = "Wednsday";
		};
		callbacks {
			MrmNcreateCallback = procedure PrimeCreated(k_wednesday_button);
			XmNvalueChangedCallback = procedure PrimeChanged(k_wednesday_button);
			};
		};

	thursday_button: XmToggleButton {
		arguments {
			XmNlabelString = "Thursday";
		};
		callbacks {
			MrmNcreateCallback = procedure PrimeCreated(k_thursday_button);
			XmNvalueChangedCallback = procedure PrimeChanged(k_thursday_button);
			};
		};

	friday_button: XmToggleButton {
		arguments {
			XmNlabelString = "Friday";
		};
		callbacks {
			MrmNcreateCallback = procedure PrimeCreated(k_friday_button);
			XmNvalueChangedCallback = procedure PrimeChanged(k_friday_button);
			};
		};

	saturday_button: XmToggleButton {
		arguments {
			XmNlabelString = "Saturday";
		};
		callbacks {
			MrmNcreateCallback = procedure PrimeCreated(k_saturday_button);
			XmNvalueChangedCallback = procedure PrimeChanged(k_saturday_button);
			};
		};


value
	k_widget_network_prime:		36;
	k_widget_network_secondary:	37;
	k_widget_batch_prime:		38;
	k_widget_batch_secondary:	39;
	k_widget_local_prime:		40;
	k_widget_local_secondary:	41;
	k_widget_dialup_prime:		42;
	k_widget_dialup_secondary:	43;
	k_widget_remote_prime:		44;
	k_widget_remote_secondary:	45;

	k_prime_label_tab:		5;
	k_prime_hour_tab:		100;
	k_secondary_label_tab:		350;
	k_secondary_hour_tab:		450;
	k_hours_height:			16;
	k_hours_width:			192; !runtime modified to hourSize * 24
	k_hour_2_y:			13;

object
	hours: XmForm {
		arguments {
			XmNx = 5;
			XmNy = 40;
			};
		controls {
			XmLabel	primary_label;
			XmLabel	primary_hours_1;
			XmLabel	primary_hours_2;
			XmLabel	secondary_label;
			XmLabel	secondary_hours_1;
			XmLabel	secondary_hours_2;
			XmForm network;
			XmForm batch;
			XmForm local;
			XmForm dialup;
			XmForm remote;
			};
		};

	primary_label: XmLabel {
		arguments {
			XmNlabelString = "Primary";
			XmNx = k_prime_label_tab;
			};
		};

	primary_hours_1: XmLabel {
		arguments {
			XmNlabelString = "000000000011111111112222";
			XmNx = k_prime_hour_tab;
			};
		};

	primary_hours_2: XmLabel {
		arguments {
			XmNlabelString = "012345678901234567890123";
			XmNx = k_prime_hour_tab;
			XmNy = k_hour_2_y;
			};
		};

	secondary_label: XmLabel {
		arguments {
			XmNlabelString = "Secondary";
			XmNx = k_secondary_label_tab;
			};
		};

	secondary_hours_1: XmLabel {
		arguments {
			XmNlabelString = "000000000011111111112222";
			XmNx = k_secondary_hour_tab;
			};
		};

	secondary_hours_2: XmLabel {
		arguments {
			XmNlabelString = "012345678901234567890123";
			XmNx = k_secondary_hour_tab;
			XmNy = k_hour_2_y;
			};
		};

	network: XmForm {
		arguments {
			XmNy = 30;
			};
		controls {
			XmLabel	network_prime_label;
			XmDrawingArea	network_prime_window;
			XmLabel	network_secondary_label;
			XmDrawingArea	network_secondary_window;
			};
		};

	network_prime_label: XmLabel {
		arguments {
			XmNlabelString = "Network:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_label_tab;
			};
		};

	network_prime_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_network_prime);
			};
		};

	network_secondary_label: XmLabel {
		arguments {
			XmNlabelString = "Network:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_label_tab;
			};
		};

	network_secondary_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_network_secondary);
			};
		};

	batch: XmForm {
		arguments {
			XmNy = 50;
			};
		controls {
			XmLabel	batch_prime_label;
			XmDrawingArea	batch_prime_window;
			XmLabel	batch_secondary_label;
			XmDrawingArea	batch_secondary_window;
			};
		};

	batch_prime_label: XmLabel {
		arguments {
			XmNlabelString = "Batch:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_label_tab;
			};
		};

	batch_prime_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_batch_prime);
			};
		};

	batch_secondary_label: XmLabel {
		arguments {
			XmNlabelString = "Batch:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_label_tab;
			};
		};

	batch_secondary_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_batch_secondary);
			};
		};

	local: XmForm {
		arguments {
			XmNy = 70;
			};
		controls {
			XmLabel	local_prime_label;
			XmDrawingArea	local_prime_window;
			XmLabel	local_secondary_label;
			XmDrawingArea	local_secondary_window;
			};
		};

	local_prime_label: XmLabel {
		arguments {
			XmNlabelString = "Local:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_label_tab;
			};
		};

	local_prime_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_local_prime);
			};
		};

	local_secondary_label: XmLabel {
		arguments {
			XmNlabelString = "Local:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_label_tab;
			};
		};

	local_secondary_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_local_secondary);
			};
		};

	dialup: XmForm {
		arguments {
			XmNy = 90;
			};
		controls {
			XmLabel	dialup_prime_label;
			XmDrawingArea	dialup_prime_window;
			XmLabel	dialup_secondary_label;
			XmDrawingArea	dialup_secondary_window;
			};
		};

	dialup_prime_label: XmLabel {
		arguments {
			XmNlabelString = "Dialup:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_label_tab;
			};
		};

	dialup_prime_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_dialup_prime);
			};
		};

	dialup_secondary_label: XmLabel {
		arguments {
			XmNlabelString = "Dialup:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_label_tab;
			};
		};

	dialup_secondary_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_dialup_secondary);
			};
		};

	remote: XmForm {
		arguments {
			XmNy = 110;
			};
		controls {
			XmLabel	remote_prime_label;
			XmDrawingArea	remote_prime_window;
			XmLabel	remote_secondary_label;
			XmDrawingArea	remote_secondary_window;
			};
		};

	remote_prime_label: XmLabel {
		arguments {
			XmNlabelString = "Remote:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_label_tab;
			};
		};

	remote_prime_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_prime_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_remote_prime);
			};
		};

	remote_secondary_label: XmLabel {
		arguments {
			XmNlabelString = "Remote:";
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_label_tab;
			};
		};

	remote_secondary_window: XmDrawingArea {
		arguments {
			XmNheight = k_hours_height;
			XmNwidth = k_hours_width;
			XmNleftAttachment = XmATTACH_FORM;
			XmNleftOffset = k_secondary_hour_tab;
			};
		callbacks {
			MrmNcreateCallback = procedure WidgetCreated(k_widget_remote_secondary);
			};
		};
end module;
