From:	CRDGW2::CRDGW2::MRGATE::"SMTP::CRVAX.SRI.COM::RELAY-INFO-VAX" 30-NOV-1989 14:45
To:	MRGATE::"ARISIA::EVERHART"
Subj:	PerfMeter V2.0 for DECWindows/VMS, Part 4 of 5 Parts

Received: From CRASH.CS.UMASS.EDU by GIZMO.SRI.COM with TCP; Thu, 30 NOV 89 06:35:16 PDT
Received: from vax5.cs.umass.edu by crash.cs.umass.edu (5.61/Ultrix2.0-B)
	id AA08111; Thu, 30 Nov 89 09:32:00 -0500
Message-Id: <8911301432.AA08111@crash.cs.umass.edu>
Date: Thu, 30 Nov 89 09:31 EST
From: "From the screen of Deneva...  30-Nov-1989 0929" <HELLER@cs.umass.EDU>
Subject: PerfMeter V2.0 for DECWindows/VMS, Part 4 of 5 Parts
To: info-vax@kl.sri.COM
X-Vms-To: coins::in%"info-vax@kl.sri.com"

$ File_is="PERF_METER.UIL"
$ Check_Sum_is=1347503665
$ Copy SYS$Input VMS_SHAR_DUMMY.DUMMY
X/* -*-c-mode-*- */
X/*------------------------------------------------------
X *  PERF_METER.UIL - Perf Meter User Interface
X *  Robert Heller Created on Wed Nov  8 10:21:39 1989
X *  Last mod -
X *------------------------------------------------------*/
X
Xmodule perf_meter
X	version = 'v2.0'
X	names = case_insensitive
X
Xinclude file 'DwtAppl.uil';
X
Xprocedure
X	activate_proc  (integer);
X	create_proc    (integer);
X	cancel_proc    (integer);
X	
X
Xvalue
X        adb_top_attachment      : argument('adbTopAttachment', integer);
X        adb_bottom_attachment   : argument('adbBottomAttachment', integer);
X        adb_left_attachment     : argument('adbLeftAttachment', integer);
X        adb_right_attachment    : argument('adbRightAttachment', integer);
X        adb_top_widget          : argument('adbTopWidget', any);
X        adb_bottom_widget       : argument('adbBottomWidget', any);
X        adb_left_widget         : argument('adbLeftWidget', any);
X        adb_right_widget        : argument('adbRightWidget', any);
X        adb_top_offset          : argument('adbTopOffset', integer);
X        adb_bottom_offset       : argument('adbBottomOffset', integer);
X        adb_left_offset         : argument('adbLeftOffset', integer);
X        adb_right_offset        : argument('adbRightOffset', integer);
X
X! Colors, color tables, and icons.
X
Xvalue
X        yellow                     : color('yellow', foreground);
X        red                        : color('red', background);
X        green                      : color('green', foreground);
X        magenta                    : color('magenta', background);
X        gold                       : color('gold', foreground);
X        lightblue                  : color('lightblue', background);
X
X! Fonts.
X
Xvalue
X	large_font : font('-Adobe-Courier-Bold-R-Normal--14-140-75-75-M-90-ISO8859-1');
X	medium_font : font('-Adobe-Courier-Bold-R-Normal--12-120-75-75-M-70-ISO8859-1');
X	small_font  : font('-Adobe-Courier-Bold-R-Normal--10-100-75-75-M-60-ISO8859-1');
X
Xinclude file 'perf_meter_const.uil';
X
Xobject
X
X	PERF_METER_MAIN : main_window {
X
X		arguments {
X		    /*
X		    x = 10;
X		    y = 20;
X		    */
X		    /* units = DwtPixelUnits; */
X		    width = 400;
X		    height = 140;
X		    };
X		controls {
X		    menu_bar	main_menu_bar;
X		    attached_dialog_box main_dialog;
X		    };
X		};
X
XOBJECT main_dialog : attached_dialog_box {
X	arguments {
X	    width = 400;
X	    height = 120;
X	    units = DwtPixelUnits;
X	    x = 0;
X	    y = 20;
X	    };
X	controls {
X	    window	cpu_graph;
X	    window	state_graph;
X	    label	device_0_iocount_name;
X	    label	device_0_iocount_total;
X	    label	device_0_iocount_delta;
X	    label	device_1_iocount_name;
X	    label	device_1_iocount_total;
X	    label	device_1_iocount_delta;
X	    label	device_2_iocount_name;
X	    label	device_2_iocount_total;
X	    label	device_2_iocount_delta;
X	    label	device_3_iocount_name;
X	    label	device_3_iocount_total;
X	    label	device_3_iocount_delta;
X
X	    label	pagefaults;
X	    label	pagefaults_total;
X	    label	pagefaults_delta;
X
X	    label	pageio;
X	    label	pageio_total;
X	    label	pageio_delta;
X
X	    label	freepages;
X	    label	freepages_total;
X	    label	freepages_delta;
X
X	    label	modpages;
X	    label	modpages_total;
X	    label	modpages_delta;
X
X	    label	graph_labels;
X	    label	c_mode;
X	    label	n_mode;
X	    label	u_mode;
X	    label	s_mode;
X	    label	e_mode;
X	    label	k_mode;
X	    label	i_mode;
X	    };
X	};
X
Xobject main_menu_bar : menu_bar {
X	arguments {
X	    orientation = DwtOrientationHorizontal;
X	    spacing	= 15;
X	};
X	controls {
X	    pulldown_entry file_menu_entry;
X/*
X	    pulldown_entry edit_menu_entry;
X	    pulldown_entry customize_menu_entry;
X	    pulldown_entry help_menu_entry;
X*/
X	};
X	callbacks {
X	    create = PROCEDURE create_proc (PFM_MENU_BAR);
X	    };
X    };
X
XOBJECT	file_menu_entry : PULLDOWN_ENTRY {
X	ARGUMENTS {LABEL_LABEL = 'File';				      };
X	CONTROLS {PULLDOWN_MENU file_menu;				      };
X};
X
XOBJECT file_menu : PULLDOWN_MENU {
X	CONTROLS {PUSH_BUTTON exit_button;
X	};
X};
X
X
X/* ----------------------------------------------------------------------
X*	File menu pushbuttons.
X*  ---------------------------------------------------------------------- */
X
XOBJECT exit_button : PUSH_BUTTON {
X	ARGUMENTS {LABEL_LABEL = 'Exit';				      };
X	CALLBACKS {ACTIVATE = PROCEDURE activate_proc (pfm_exit_button);    };
X};
X
X
Xobject cpu_graph : window {
X    arguments {
X	x = 0; y = 0;
X	height = 100; width = 100;
X	/* units = DwtPixelUnits; */
X	};
X    callbacks {
X	create = procedure create_proc (pfm_cpu_graph);
X	};
X    };
X
Xobject state_graph : window {
X    arguments {
X	x = 100; y = 0;
X	height = 100; width = 70;
X	/* units = DwtPixelUnits; */
X	};
X    callbacks {
X	create = procedure create_proc (pfm_state_graph);
X	};
X    };
X
Xobject device_0_iocount_name : label {
X    arguments {
X	label_label = 'Sys Disk        '; /*  xxxxxxxx  xxxx'; */
X	x = 175; y = 60;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_0_iocount_name);
X	};
X    };
X
Xobject device_0_iocount_total : label {
X    arguments {
X	label_label = '         '; /*  xxxx'; */
X	x = 268; y = 60;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_0_iocount_total);
X	};
X    };
X
Xobject device_0_iocount_delta : label {
X    arguments {
X	label_label = '       ';
X	x = 331; y = 60;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_0_iocount_delta);
X	};
X    };
X
Xobject device_1_iocount_name : label {
X    arguments {
X	label_label = '                '; /*  xxxxxxxx  xxxx'; */
X	x = 175; y = 75;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_1_iocount_name);
X	};
X    };                                              
X
Xobject device_1_iocount_total : label {
X    arguments {
X	label_label = '         '; /*  xxxx'; */
X	x = 268; y = 75;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_1_iocount_total);
X	};
X    };
X
Xobject device_1_iocount_delta : label {
X    arguments {
X	label_label = '       ';
X	x = 331; y = 75;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_1_iocount_delta);
X	};
X    };
X
Xobject device_2_iocount_name : label {
X    arguments {
X	label_label = '                '; /*  xxxxxxxx  xxxx'; */
X	x = 175; y = 90; 
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_2_iocount_name);
X       	};
X    };
X
Xobject device_2_iocount_total : label {
X    arguments {
X	label_label = '         '; /*  xxxx'; */
X	x = 268; y = 90;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_2_iocount_total);
X	};
X    };
X
Xobject device_2_iocount_delta : label {
X    arguments {
X	label_label = '       ';
X	x = 331; y = 90;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_2_iocount_delta);
X	};
X    };
X
Xobject device_3_iocount_name : label {
X    arguments {
X	label_label = '                '; /*  xxxxxxxx  xxxx'; */
X	x = 175; y =105;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_3_iocount_name);
X       	};
X    };
X
Xobject device_3_iocount_total : label {
X    arguments {
X	label_label = '         '; /*  xxxx'; */
X	x = 268; y =105;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_3_iocount_total);
X	};
X    };
X
Xobject device_3_iocount_delta : label {
X    arguments {
X	label_label = '       ';
X	x = 331; y =105;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_device_3_iocount_delta);
X	};
X    };
X
Xobject pagefaults : label {
X    arguments {
X	label_label = 'Page Faults'; /*  xxxxxxxx  xxxx'; */
X	x = 175; y = 30;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    };
X
Xobject pagefaults_total : label {
X    arguments {
X	label_label = ' xxxxxxxx'; /*  xxxx'; */
X	x = 268; y = 30;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_pagefaults_total);
X	};
X    };
X
Xobject pagefaults_delta : label {
X    arguments {
X	label_label = '  xxxx';
X	x = 331; y = 30;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_pagefaults_delta);
X	};
X    };
X
Xobject pageio : label {
X    arguments {
X	label_label = 'Paging IO'; /*  xxxxxxxx  xxxx'; */
X	x = 175; y = 45;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    };
X
Xobject pageio_total : label {
X    arguments {
X	label_label = ' xxxxxxxx'; /*  xxxx'; */
X	x = 268; y = 45;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_pageio_total);
X	};
X    };
X
Xobject pageio_delta : label {
X    arguments {
X	label_label = '  xxxx';
X	x = 331; y = 45;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_pageio_delta);
X	};
X    };
X
Xobject freepages : label {
X    arguments {
X	label_label = 'Free Pages'; /*  xxxxxxxx  xxxx'; */
X	x = 175; y = 0;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    };
X
Xobject freepages_total : label {
X    arguments {
X	label_label = ' xxxxxxxx'; /*  xxxx'; */
X	x = 268; y = 0;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_freepages_total);
X	};
X    };
X
Xobject freepages_delta : label {
X    arguments {
X	label_label = '  xxxx';
X	x = 331; y = 0;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_freepages_delta);
X	};
X    };
X
Xobject modpages : label {
X    arguments {
X	label_label = 'Modified Pages'; /*  xxxxxxxx  xxxx'; */
X	x = 175; y = 15;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    };
X
Xobject modpages_total : label {
X    arguments {
X	label_label = ' xxxxxxxx'; /*  xxxx'; */
X	x = 268; y = 15;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_modpages_total);
X	};
X    };
X
Xobject modpages_delta : label {
X    arguments {
X	label_label = '  xxxx';
X	x = 331; y = 15;
X	/* height = 20; width = 200; */
X	/* units = DwtPixelUnits; */
X	font_argument = medium_font;
X	};
X    callbacks {
X	create = procedure create_proc (pfm_modpages_delta);
X	};
X    };
X
Xobject graph_labels : label {
X    arguments {
X	label_label = 'CPU Busy';
X	/* units = DwtPixelUnits; */
X	x = 3; y = 100;
X	font_argument = medium_font;
X	};
X    };
X
Xobject c_mode : label {
X    arguments {
X	label_label = 'C';
X	/* units = DwtPixelUnits; */
X	x = 101; y = 100;
X	font_argument = medium_font;
X	};
X    };
X
Xobject n_mode : label {
X    arguments {
X	label_label = 'N';
X	/* units = DwtPixelUnits; */
X	x = 111; y = 100;
X	font_argument = medium_font;
X	};
X    };
X
Xobject u_mode : label {
X    arguments {
X	label_label = 'U';
X	/* units = DwtPixelUnits; */
X	x = 121; y = 100;
X	font_argument = medium_font;
X	};
X    };
X
Xobject s_mode : label {
X    arguments {
X	label_label = 'S';
X	/* units = DwtPixelUnits; */
X	x = 131; y = 100;
X	font_argument = medium_font;
X	};
X    };
X
Xobject e_mode : label {
X    arguments {
X	label_label = 'E';
X	/* units = DwtPixelUnits; */
X	x = 141; y = 100;
X	font_argument = medium_font;
X	};
X    };
X
Xobject k_mode : label {
X    arguments {
X	label_label = 'K';
X	/* units = DwtPixelUnits; */
X	x = 151; y = 100;
X	font_argument = medium_font;
X	};
X    };
X
Xobject i_mode : label {
X    arguments {
X	label_label = 'I';
X	/* units = DwtPixelUnits; */
X	x = 161; y = 100;
X	font_argument = medium_font;
X	};
X    };
X
Xobject foo : separator {};
X
Xend module;
$ GoSub Convert_File

