ARP 1.1 (Disk 85) (Mar 1988) : UtiliMaster-ver.66 / utildocs


		UtiliMaster

	Programable buttons!
	ARC Won't hang up on duplicate files!
	Two windows (Source & Destination)!
	Modify "Standard" buttons!
	Icon doubles as configuration file!
	Run from Workbench or CLI!

	The left display window is ALLWAYS the source, the right
        destination. The box above each display shows the current
        directory being displayed. The box below is the  Disk
        or Device name, and the box below the destinatio window
        is the Entry (or "E") box.
	Swapping a disk while it's directory is
	being displayed will automatically get the parent
	directory of the new disk in the appropriate window.

	To move into a sub-directory, "Double-Click" it's name. 
	(The time between two clicks to be considered double-clicking
	is determined by Preferences.) To move to the parent of
	the current directory, Double-Click the directory name
	box (Above the list window). Double-Clicking the root
	directory will cause Utilimaster to get it from the device
	again. (This is useful if something outside Utilimaster
	has changed you directory listing.)
	If a symbol like a capital Y with a line thru it appears
	just to the left of the filesize, that file is protected
	to some state other than "rwed". If a C in a circle
	appears, the file has a comment attached to it.

	Standard buttons:

	"Swap" Will swap the source and destination directories. Files
		may not be selected in the destination window other than
		Double-Clicking sub-directories. If source and
		destination are swapped, selected files are not
		highlighted in the destination window, but will
		be remembered and highlighted in the source window
		if directories are swapped back.

	"All" Selects all files in source directory.
	"AllDirs" Selects all sub-directories in source directory.
	"Exchange" De-selects all selected and selects all unselected.
	"ExcDirs" Same for directories.
	"Clear" De-selects all selected files.
	"ClrDirs" Same for directories.
	"Copy" Copies all selected files and sub-directories (including
		files in sub-directories) to destination directory.
		Copy also copies file comments, and if "LOCK" is active,
		(The title bar displays a capital L), protection
		on the copy is set to the same as the orriginal. (If
		protection on the orriginal is "r-e-" then the copy is
		set to "r-e-".)
		If UPDATE is active,(There's a u with dots above in the
		title bar),  in the tooltypes, UtiliMaster will
		look for the file in the destination directory. If it
		exists, but is older, or doesn't exist, it will be 
		copied, and dated the same as the orriginal.
		If it exists and is the same date or newer
		you will be notified that "File xxx is up to date".
		If UPDATE is off, all files are copied, and have 
		the current system date as thier creation date.
		If you enter a FileName in the "E" box, and copy
		a file, it will be renamed in the destination directory.
		In this case, copy stops after the first FileName if
		more than one is selected.
	"Rename" Will rename the FIRST selected file or directory to
		the name in the "E"(Entry) box. If no name appears
		in the "E" box, a requester appears requesting the 
		new file name.
	"Move" If destination directory is on the same device as source,
	        selected files will be moved into destination directory.
	        If not on the same device, an error message is displayed.
	"Delete" Will present a requester asking if you are sure. Given
		an affirmative, it will delete selected files. Selected
		directories will be automatically deleted if empty.
		For directories containing files, a requester appears
		to remind you if they are not empty. Given an OK,
		these directories, and all files and sub-directories
		will be deleted. Empty directories are deleted with-
		out any requester. (The theory is that an empty
		directory is easy to re-create.)
	"Lock" Changes the protection on selected files/directories to
		"r-e-". They are protected from being written to or
		deleted. Lock will protect all files in selected
		directories. Lock fails if there is a system file-
		lock on a file or directory. If a particular directory
		repeatedly fails to lock, it may have something "assigned"
		to it, or may be part of the "path" list.
	"UnLock" Changes protection to "rwed".
	"Read" Displays the selected file(s) to the screen. ASCII files
		are displayed in text mode, binary etc. are displayed
		as if "c:type opt h" were used, except that the decimal
		file position is listed on the right side of the screen.
		The Up & Down arrows, or scrollbar may be used to move
		forward or backward thru the file. The window-close
		gadget exits read. For keyboard instructions, select
		a file, click "Read", and once the file is displayed,
		push the "HELP" key. The choice of modes is based on
		whether any 0 bytes are found. (ASCII text files
		SHOULD NOT contain any 0 bytes!)
	"FileNote" Attaches whatever is in the "E" box (Even a null
		string!) as a comment to each selected file REPLACING
		any existing comment. Using FileNote with the "E" box
		empty will delete any existing comment.
	"GetNote" Displays the comment on selected file(s) in the
		Status box and the Filename in the "E" box. There is
		a brief delay built in so you have a chance to read
		them if more than one file is selected. Note that
		commented files display a c in a circle just to the
		left of their size in the display window.
	"Print" By default, if Utilimaster can find a file named
		"c:print" it will be RUN and passed the filename, if
		not, an internal routine will print the file to PRT:.
		The default external print routine can be changed.
		See "Setting Defaults", below.
	"Show" By default uses "c:show" to display the selected file(s).
		Show can also be re-defined.
	"Search" By default opens a window and calls "c:search" passing
		it the content of the "E" box as the string to seek,
		and selected file(s) to search.
	"Arc" "DeArc" & "ListArc" by default all use "c:arc".
        	"Arc" opens a window and Executes
		   "c:Arc a Filename <FileName> <FileName>" for selected
		   file(s).
	"DeArc" Opens an interactive window and Executes
		   "c:Arc x FileName".  If duplicate files are found,
		   this version of UtiliMaster DOES NOT lock up in
		   the endless loop most others do!
	"ListArc" Opens a window and Executes
		   "c:arc v FileName" The window remains open for
		reading until you close it.
	"Run" Is equivelant to typing "run > nil: FileName" from CLI.
		No window is opened for your file by UtiliMaster.
	"Edit" Defaults to "run e FileName"
	"Execute" Defaults to "Execute FileName"
	"GetDir" Gets the directory in the "E" box, which MUST begin
		with a device name. If the "E" box is empty, the current
		source directory is up-dated. Usefull if you have added
		or deleted a file from some other program.
		To get a sub-directory in a window, Double-Click on that
		directory's name. To get the parent of any displayed
		sub-directory, Double-Click on the Directory
		name box at the top of the listing window.
	"MakeDir" Will make a directory with the name in the "E" window.
		If nothing appears in the "E" window, a requester appears.
		If MakeDir was clicked with the LEFT button, the
		directory will be created in the source directory.
		If the RIGHT button was used, the new directory goes
		in the destination.
	"Info" Displays the number of USABLE bytes free on each device
		in the window where the device name usually appears.
		(Or free memory in the case of the Ram Disk) If any
		files (NOT directories!) are selected, their total bytes
		and number of x-modem blocks is disp[layed in the status
		window.
	"NewCLI" Will start up a new CLI if Utilimaster can find
		"c:NewCLI". If a filename is selected the result is
		"NewCLI from filename".

	All of the "Device" (DF0: DF1: RAM: etc.) buttons may be
		clicked with the LEFT mouse button to get the device
		as the SOURCE directory, or with the RIGHT mouse button
		to get it as the DESTINATION directory. All of these may
		be re-programed to get other devices in the following
		manner:

		To change "VD0:" to "VDK:", select (SINGLE-Click) the
		Utilimaster icon on the workbench screen. Select "Info"
		from the workbench menu. Click the "ADD" box next to
		the "ToolTypes" window. Click in the "ToolTypes" box
		and type "VD0:=VDK:" Please note that "VD0:" MUST be
		upper case, but "vdk:" may be lower case if you so
		desire. If you want other text in the button for the
		device, leave a space and enter up to 8 characters.
		EXAMPLE: To change "SYS:" to call your "s:" directory
		with the button lbeled "Scripts" add a tooltype line
		which says "SYS:=s: Scripts"
		EXAMPLE: To change "DH1:" to call up the directory
		"SYS:MyFiles" and the button to display "All Mine"
		add a tooltypes line of "DH1:=sys:myfiles "All Mine"".
		Note that "All Mine" should be entered in the tooltypes
		box in quotes!

	UtiliMaster defaults to "SYS:" as the source, and "RAM:" as the
		destination directories on startup. You can change this
		by adding a tooltype line that says
		"DEFAULT=Directory Directory". The first directory
		listed will become the default source, the second
		will become the destination. If only one directory
		name is entered, only SYS: will be changed.

	UtiliMaster allows you to dictate a command directory other than
		"c:" To do so add a tooltype line
		"COMMAND=DirectoryName". If the directory does not
		exist, Utilimaster will attempt to create it. Utili-
		Master will then attempt to copy "c:run","c:newcli",
		"c:endcli","c:execute",and "c:assign" into this
		directory. It will then attempt to "assign c: 
		DirectoryName". (This is due to the fact that the
		DOS Execute() command invokes "c:run" in order to
		function. The manx "exec()" commands don't need
		"c:run", but won't function within a program started
		from WorkBench!. They've got us between a rock and a
		hard place!)
		On exiting UtiliMaster, "c:" will be assigned back to
		wherever UtiliMaster found it unless you specify elswhere
		by a tooltype "REASSIGN=DirectoryName".
		If Utilimaster created a new command directory,
		it will be deleted. If you assigned command to
		an existing directory, it will be left intact on
		exiting UtiliMaster. (Including any files
		UtiliMaster copied into it!)
		    Other utilities may be copied into your newly
		created command directory via a tooltype
		"COPYLIST=FileName FileName FileName (etc.)". All
		FileNames should include the Device:.

	UtiliMaster may be run in "lace" mode by entering "LACE=1"
	        as a tooltype entry. This is designed to co-operate
	        with Access! (V1.27 and higher) when Access! is
	        also in lace mode. Utilimaster then occupies the
	        upper half of your display while Access! is in
	        the lower half.


	The clock may be turned off by entering "NOCLOCK=1" as a
		tooltype entry. (For those who don't like clocks!)

	There are five more buttons which are disabled unless defined
		by the user as described below.

	USER BUTTONS: (Including changes to Show, Print, Arc,
			 Search, etc.)

	Each of the five user buttons is defined by a tooltype line.
	"USER#=FileName ButtonText flags [Perameters] [PromptText]"
	Where FileName is the FULL directory name of the program to
	invoke.
	ButtonText is the text (up to 8 characters) for the button.
	Flags are desribed below.
	Perameters (up to 20 characters) to pass to function).
	PromptText (up to 30 characters) Is the Text to present in a
	  Requester if your program requires user input.
		 (Example: A fileName to create). If no promptext
	  is provided, no requester will appear.

	Flags:
	  If your program is simply to be run (Example "run sys:Clock"),
	  then add 1 to flags. (You need not enter Perameters or Promptext
	  unless you want them. If you DO use perameters, then flags
	  should be entered as 0. If promptext is entered you MUST
	  enter flags (even if 0) and perameters (even if "")).
	  To have your program simply execute while UtiliMaster waits,
          do not add 1. The result is as if typing:
            "CommandName FileName" 
          from CLI for EACH Selected File. If 1 IS added the result is
          like typing:
            "run >NIL: CommandName FileName"
	  from CLI for each selected FileName.
	  To open a window for your program to output text (It thinks
	  it's running from CLI!) add 2. You get a RAW window by default,
	  and will have to close it. By default, you must close it after
	  EACH filename is processed. To have it remain until all
	  selected files have been processed, add 8 to flags.
	  If you wish your program to be executed (or run) even with
	  no files selected, add 16 to flags.
	  If files must be selected:
	     Add 64 to allow selected DIRECTORIES to be passed as
	     filenames. (If 64 was added, but selection is NOT required,
	     in the event you click the button with no selection,
	     UtiliMaster will pass the current source directory as a
	     filename.)
             Add 32 to flags to have ALL selected filenames in one pass.
	     If you've entered parameters they are normally place
	     before the filename(s). To have them placed AFTER the 
	     filename(s), add 128 to flags.
	  If Promptext is entered, you will be prompted for input each
	  time you command is invoked (unless you pre-enter it in
	  the Entry box). Text entered at the prompt goes into the
	  "Entry" buffer and is normally placed AFTER the filenames.
	  to place is BEFORE them, add 256 to flags.
	  If you want UtiliMaster to update the directory after your
	  command has executed, add 512 to flags.
	  The number entered for "Flags" should be a total of the above
	  depending on what you want to happen.
	  EXAMPLES:
	  If Flags=0 Then the result of clicking the button will be like
	  typing "CommandName filename" from CLI for each selected file.
	  No directory names will be passed. If no files are selected,
	  clicking this button will be ignored!
	DEFAULT BUTTON SETTINGS:
	  Each of the buttons listed may be changed by a tooltypes line.
	  These examples show what that line would look like to obtain
	exactly what the default setting for that button is.

	PRINT=c:Print Print 0
	  "c:Print" is passed a FileName. No directories are
	allowed. Control is not returned to UtiliMaster while "c:Print"
	runs. If Utilimaster can't find  "c:print" (or whatever it's
	been redefined to) an internal routine is used. Printer output
	will be the same as screen format for "Read". The print button
	is a special case. You may re-program it to call any command you
	like, however, if at startup UtiliMaster doesn't find your command,
	when clicked the print button will attempt to print the selected
	file to the printer via an internal routine.

	SHOW=c:Show Show 0
	  "c:Show is started and passed a FileName. Directories are not
	  allowed. Control IS NOT passed back to Utilimaster until
	  "Show" is done. This is to prevent Show from being run
	  simultaniously for several files.
	SEARCH=c:Search 198 all "What text?"
	  A window CON is opened, and the equivelant of typing
	    "c:Search FileName <"E" box content> All" takes place.
	  If the "E" box is empty, a requester appears whith the prompt
	  "What text?". The text then entered is substituted.
	ARC=c:Arc Arc 806 A
	    Equivelent CLI line:
	      "c:Arc A FileName [FileName] [FileName]"
	      Arc is a special case. Filenames are checked for length. If
	      length exceeds 12, you will be prompted for a shorter name.
	      WARNING: In this case, your file is "Renamed" to the shorter
	      name, Arc is run, and your filename is then "Renamed" back
	      to it's orriginal name. If UtiliMaster should in some way
	      fail, your file may not get renamed back to the orriginal.
	DEARC=c:Arc De-Arc 518 V
	    Equivelent CLI line:
	      "c:Arc X FileName"
	LISTARC=c:Arc "List Arc" 2 V
	    Equivelent CLI line:
	      "c:Arc V FileName"
	RUN=c:Run Run 0 >NIL:
	    Equivelent CLI line:
	      "c:Run >NIL: FileName"
	EDIT=c:E Edit 81
	    Equivelent CLI line: (with file selected)
	      "c:Run c:E FileName"
	    Equivelent CLI line: (with NO file selected)
	      "c:Run c:E SourceDirectory"
	EXECUTE=c:Execute Execute 6
	    Equivelent CLI line:
	      "c:Ececute FileName"
	NEWCLI=c:NewCli "New CLI" 16
	    Equivelent CLI line: (with filename)
	      "c:Newcli from filename"
	    Equivelent CLI line: (with no filename)
	      "c:Newcli"

	Please note that if a new command directory is defined, then
	in each of the above examples, the new directory name will be
	used in place of "c:".

	Also note that any of these may be told to look for the program
	in some other directory. For example, if you keep "Newcli" in
	your "System" directory, you would then use tooltype
	  "NEWCLI=System:Newcli "New CLI""
	  (Note the quotes around "New CLI" for the button. Utilimaster
	  understands quotes and any group of words/letters inside
	  quotes is treated as one perameter regardless of spaces.

        THE GOOD NEWS: The program in the arc file called UMUtil will
        build an icon to your specifications. You can load the image(s)
        for a simple or alternat image icon from ANY icon (Even a disk's
        icon, or a drawer icon!!) via "Load icon image". Only the image
        is then taken from that icon. If you specify a path in the
	"DefaultTool" window, it builds a "project" icon which when
	click, looks for UtiliMaster under the name entered, and uses
	this icon's tooltypes to set UtiliMasters buttons. You could
	place UtiliMaster in C: for example, and build several icons
	with different arrangements. By entering "C:UtiliMaster" as the
	"DefaultTool" in each of these icons, ONE copy of UtiliMaster
	can be started with a variety of different "setups". In this
	event, however, it is suggested you place one icon in C: with
	YOUR favorite defaults so that "UtiliMaster" from CLI sees it.
	Otherwise, you get MY defaults!
	I reccommend that you use UMUtil to make your icons, as
	Workbench's "info" tends to add tooltype lines together!
	UMUtil does not!
	THE BAD NEWS: UMUtil runs from CLI only! SYNTAX: "UMUtil [iconname]"
        
	Occasionally an error will leave you with what amounts to a
	CLI window opened. You escape this window with "Endcli"

	Each time UtiliMaster is started (whether from workbench or CLI!)
		the icon is parsed for all of the above. Some of these
		may be over-ridden when starting from cli as follows:
		
		Utilimaster [noclock] [update | noupdate] [lock | nolock]
		    [lace | nolace] [directory] [directory]
		These may be in any order, except that the first string
                containing a colon (":") will be taken as the opening
		source directory, and the second as opening destination
		directory. You may dictate an icon from which to take
		defaults by typing "UtiliMaster icon iconname". These
		may be mixed into the above in any position PROVIDED
		that "iconname" is the NEXT entry after "icon"!

	When run from workbench, Utilimaster opens a background window.
	You may change it's size by tooltype
	  "WINDOW=CON:<Left>/<Top>/<Width>/<Height>/"
	If you use this, window MUST be "CON:" and ALL FOUR dimensions
	MUST be given! (Unless you LIKE Guru Errors!)
	There are some programs (The version of "Arc" that I have, for
	example.) which send some of their output to ERROR out instead
	of STANDARD out. This output will go to the background window
	if started from WorkBench or the CLI from which UtiliMaster was
        started. Sorry, I haven't figured out a way around this. You may
        see this output by using the "Window to Front/Back" gadgets.

        UtiliMaster is public domain software! (It's based on too
        many predecessors!) A contribution ($10.00) is requested!

        Please send comments and/or sugestions (and contributions) to:
        		John Scheib
        		3805 FairWay Circle
        		Las Vegas, Nevada 89108
        		OR
        		People Link: JSCHEIB

	Enjoy UtiliMaster!