Copyright: GFile Copyright ® 1993 Galen J. Bunnell


Table of Contents

GFile Help

GFile allows you to manage files, directories, and applications. It was designed to provide a single program to perform the hour-to-hour or day-to-day operations normally performed by the Program Manager and File Manager programs and provide a command line interface to Windows, but without attempting to duplicate all of the occasionally used operations provided by those programs. Windows can be configured to run GFile as the shell application, or GFile can be used as a launched application.

Below are the categories of help information available.

Overview

GFile Visual Components and Display Modes

Keyboard and Mouse Operations

Operations

Associating Files With Programs/Classes

Comparing File Contents

Configuring GFile

Copying Directories/Program Groups

Copying Files/Program Items

Creating Directories/Program Groups

Creating New Program Item

Deleting Files/Program Items

Launching Applications

Miscellaneous Operations

Moving Directories/Renaming Program Groups

Moving/Renaming Files/Program Items

Printing Files

Removing Directories/Program Groups

Searching For Filename/Template Match

Viewing/Changing File Properties

Viewing/Changing Program Item Properties

Menu Commands

File Menu Commands

Edit Menu Commands

System Menu Commands

View Menu Commands

Options Menu Commands

Panels Menu Commands

Help Menu Commands


GFile Visual Components and Display Modes

When you run GFile in its full form (Large - described below), you'll see there are 7 major items/areas to display information or to perform actions:

The Title Bar

The title bar displays GFile's current drive and working directory. This changes as you move around using the drive box and directory list.  Unless overridden by the program, program launching options, or the underlying operating environment, this will be the current drive and working directory for programs launched by GFile.

The Menu Bar

Contains 7 pulldown menus:

File	A collection of commands dealing with creating, changing, moving and destroying files, directories, program items, and groups. Also contains the usual Exit command.

Edit	Commands related to searching for and comparing files, and for selecting/de-selecting files or program items  to be operated on by other commands.

System	Commands for performing system-wide operations: formatting floppies, restarting Windows or DOS, setting the Windows shell program.

View	Commands for changing the display mode of GFile, and for refreshing the information displayed in the panels.

Options	A series of checked items for enabling/disabling options that modify the default behavior of GFile commands.

Panels	Commands for specifying and controlling the current display selection for the left and right panels.

Help	Provides access to the Windows Help facility.

The Left and Right Panels

Contain one of four possible displays, depending on the current display selection for the panel. The four display selections, and the corresponding displayed information are:

Program Group

Displays a drop-down list for selecting a program group whose contents are to be displayed, and a scrolled list containing the icons and names of the program items from the currently displayed group.

File

Displays a drop-down list for selecting a drive, a scrolled list for selecting a directory, an editable text field for specifying the filename template to be used, and a multiple-selection scrolled list  for selecting filenames.

Long File

Displays a single, multiple selection list of filenames, sizes, and date/time of modification. The file information displayed is determined by the drive/directory/template components from the last previous File display selection. This is actually just an expanded format version of the filename list from the File display selection.

Info

Displays a single box containing information about the currently selected drive and directory for this panel; and mode, memory, and resource information from Windows.

At any point in time, one of the 2 panels is the active panel. It is the panel in which a drive, directory, template, file, group, or item, or item was last selected or changed. It will be highlighted using the Active color (see Configuring GFile). If the active panel is in File or Long File mode, the drive/directory selected by the active panel is the current  drive/directory of GFile.

The Command Icon Buttons

Eight push buttons providing direct (non-menu) access to common commands. The buttons are activated by mouse-click, or by being the destination of a dragcs_drag-drop operation. The commands represented by the buttons (in left to right order) are:

Run	Runs the currently selected file(s) or program items from the active panel.

Print	Invokes the associated Print program for the currently selected file(s) from the active panel.

Copy	Copies files, program items, program groups, or directories.

Move	Moves or renames files, program items, groups, or directories.

Delete	Deletes files or program items.

Create	Creates a directory or program group.

Remove	Removes(deletes) a directory or program group.

Refresh	Re-reads panel information, updates and repaints the panels.

The Command Line

An editable text line used for performing DOS command line operations, or invoking Windows programs. See Launching From The Command Line.

The Status Line

Displays the name, size, date and time of creation, and attributes for the currently selected file, or the number of files and total file size when multiple files are selected. The status line is the bottom component in the GFile display, and is visible only when GFile is in Large display mode (see Display Modes below) .

Display Modes

GFile can be configured (via the View menu) to show only a portion of the components. There are 3 display modes used by GFile:

Large	All components are displayed.

Medium	The title bar, left and right panels and command line are the only components displayed.

Small	The title bar, left panel and command line are the only components displayed.


Keyboard and Mouse Operations

GFile conforms to the usual Windows conventions for keyboard and mouse use. However, due to its nature, there are some special keyboard and mouse operations as detailed below.

Shifting Focus

The currently active or focused element in GFile is changed by use of the Tab and Shift-Tab keys, or by clicking with the left mouse button in the component. The arrow keys are used within many components to change the current selection or perform other operations, and are thus not used to shift focus. Dialog (popup) boxes follow the usual conventions of Tab/Shift -Tab moving between collections of related items and arrow keys moving the focus between items in the collections.

History

The command line remembers  9 previous command lines. Previously entered commands are stepped through using the up arrow key (assuming the command line is the active component). The down arrow key can be used to move forward through previously stepped over commands.

Double Click

Double clicking has special significance in the file list components, the program item list components, and in the command line component. In any of those three components, double-clicking has the same effect as pressing the Enter key  or clicking the Run command icon button - the selected file(s), item(s), or command line is launched.

Double clicking is also used to change the selected directory in the directory list components  -  the usual behavior for Windows applications.

Shift-Double Click

Double clicking in the filename list components (File or  Long File) while holding down either shift key, has the same effect as clicking the Print command icon button - the selected file(s) is/are printed using whatever print association is in effect for that type of file.

Enter Key

In most cases, pressing the Enter (Return) key has the same effect as selecting Run from the File menu or clicking on the Run command icon button - the currently selected file/item is launched.

If the drive or group pulldown boxes, or directory list is the currently active item, and the up/down arrow keys have been used to change the highlighted item, the Enter key (or Space bar) causes the highlighted item to become the current selection.

If a template field is the active component, and the contents of the template field are changed,  pressing Enter confirms the change. Tabbing or clicking in a different component without pressing Enter will cause the template field to revert to its previous value.

Insert Key

When the command line has the focus, pressing the Insert key will paste the names (or full path and name depending on the setting of Drop Full Path) of the selected files or program items at the end of the command line. This is equivalent to dragging the files/items from the active panel and dropping them on the command line.

Info Box

When the info box is displayed in either of the panels, clicking in the info box with the left button causes an update of the information being displayed. This does NOT cause the panel containing the info box to become the active panel - the assumption is that since the info box is displaying information only, there would be few cases where changing the active panel would be advantageous, but many cases where doing so would be a disadvantage.

Right Click

Clicking in any component of either panel with the right mouse button causes the panel to cycle to the next display selection. Thus, if a panel was currently displaying Program Group information,  four clicks would cycle from  Program Group to File to Long File to Info and back to Program Group.

Control Menu

Double-clicking on the control-menu box while holding down either shift key saves the current settings (size, position, directories, groups, mode, options) of GFile in gfile.ini. This occurs whether the Save Settings on Exit option is selected or not.


Copying Directories/Program Groups

Copying a directory or program group is done by GFile in two steps:

1.	The destination directory/group is created if it doesn't already exist.

2.	The non-directory contents of the source directory or the program items from the source group are copied to the destination directory/group.

The currently active panel's template field is used to determine files to copy - even if you change the name of the directory to be copied in the popup dialog (as described below).

Only files selected by the Select Attributes and Attributes Exclusive settings for the active panel will be copied. The result of this, and the template field value, is that only files whose names would appear in the active panel file list if the source drive/directory were selected, will be copied.

Copying a directory uses Safe Copying as described in Copying Files/Program Items.

GFile does not do recursive copying. In other words, it will copy only the non-directory files immediately within a source directory.

Copying  a group copies all of the program items from the selected group.

To Copy a Directory:

1.	 Select the directory that contains, or will contain, the destination directory

2. 	Select the directory to be copied in the other panel

3. 	Select Copy from the File menu

Or click the Copy command icon button

Or drag the source directory and drop it on the Copy command icon button

4. 	Verify/Change the information displayed on the popup dialog

5. 	Click OK

Or:

1.	Select the directory that contains, or will contain, the destination directory

2. 	In the other panel, select the source directory

3.	Drag the source directory and drop it in the destination directory list

To Copy a Program Group:

1. 	Display the group to be copied in either panel

3. 	Select Copy from the File menu

Or click the Copy command icon button

Or drag the source group and drop it on the Copy command icon button

4. 	Type the name of the destination group in the To: field of the popup dialog. Note that group names must be followed by two contiguous colons (::). For example, a group named "Strategy Games" would by typed as  Strategy Games::

5. 	Click OK

Or, if the Destination Group Already Exists:

1.	Display the destination group in one panel

2. 	In the other panel, display the source group

3.	Drag the source group and drop it on the destination group box.


Copying Files/Program Items

Individual files can be copied either by selecting the file or files to be copied and using a  menu selection, command button, or drag/drop; or by specifying a filename template in the Copy Files dialog.

Program items are copied by selecting them and using a menu selection, command button or drag/drop.

When a file is being copied, if the destination file already exists, GFile uses a Safe Copy technique. This consists of:

Renaming the destination file to a temporary name

Copying the source file to the destination

Deleting the temporary file (old destination file)

Thus, if an error occurs during the copy, GFile can (and does) display an error message, delete (if necessary) the bad copy, and rename the temporary file back to its original name. Thus, although the copy failed, no information is destroyed.

GFile also has the ability to copy files to character devices - assuming no other Windows program is using the device. To do so,  follow the procedure for copying files, but put as the destination (To:) the name of the device - without a trailing colon. For example, prn or com1 (yes, it will (on my system anyway) copy to con - but the result of doing so is pretty worthless - though harmless (once again, on my system)). A device cannot be the source (From:).

To Copy Files:

1. 	Display the destination directory in one panel

2.	Select the file, or files to be copied in the other panel

3.	Select Copy from the File menu

Or click the Copy command icon button

Or drag the selected file(s) and drop it(them) on the Copy command icon button

4.	Verify/Change the information displayed on the popup dialog

5. 	Click OK

Or

1. 	Display the destination directory in one panel

2.	Select the file, or files to be copied in the other panel

3.	Drag the selected file(s) and drop it(them) on the other directory list.

To Copy Files Using a Filename Template:

1. 	Display the destination directory in one panel

2.	Display the source directory in the other panel

3.	Select Copy from the File menu

Or click the Copy command icon button

4.	Add the filename template to be used to the end of the Source ("Copy:") edit field in the Copy popup dialog (e.g. C:\DOS\*.com)

5.	Click OK

To Copy Individual Program Items:

1. 	Display the destination group in one panel

2.	Display and select the item or items to be copied in the other panel

3.	Select Copy from the File menu

Or click the Copy command icon button

Or drag the selected item(s) and drop it(them) on the Copy command icon button

4.	Verify/Change the information displayed on the popup dialog. Note that program items are referenced as Group Name::Program Item Name. For example, the item named "Clipboard Viewer" in the group "Accessories" would be referenced as Accessories::Clipboard Viewer

5. 	Click OK

Or

1. 	Display the destination directory in one panel

2.	Select the file, or files to be copied in the other panel

3.	Drag the selected file(s) and drop it(them) on the other group box.


Creating Directories/Program Groups

To Create a Directory:

1.	Display the directory that is to be the parent of the new directory

2.	Select Create from the File menu

Or click the Create (Hatch) command icon button

3.	Verify/Change the information displayed on the popup dialog

4. 	Click OK

To Create a Program Group:

1.	Select Create from the File menu

Or click the Create (Hatch) command icon button

2.	Type the name of the group, followed by two contiguous colons (::) in the popup dialog (e.g. My New Group::).

3. 	Click OK


Removing Directories/Program Groups

A directory must be empty to be successfully removed.

A Program Group does not have to be empty to be removed - all program items within it will be automatically deleted.

To Remove a Directory:

1.	Display the directory to be removed

2.	Select Remove from the File menu

Or click the Remove command icon button

Or drag the directory to be removed and drop it on the Remove command icon button

3.	Verify/Change the information displayed on the popup dialog

4. 	Click OK

To Remove a Program Group:

1.	Display the group to be removed

2.	Select Remove from the File menu

Or click the Remove command icon button

Or drag the group to be deleted and drop it on the Remove command icon button

3.	Verify/Change the information displayed on the popup dialog

4. 	Click OK


Deleting Files/Program Items

Files can be deleted either by selecting the individual file or files to be deleted, or by using a filename template.

Deleting program items is done by selecting the individual items to be deleted.

To Delete Individual Files:

1.	Select the file or files to be deleted

2.	Select Delete from the File menu

Or click the Delete command icon button

Or drag the selected files and drop them on the Delete command icon button

3.	Verify the information displayed in the popup dialog

4.	Click OK

To Delete Files Using a Filename Template

1.	Display the directory containing the files to be deleted

2.	Change the template field in the active panel to display only the files to be deleted

3.	Verify (but do not select) that the files to be deleted are the only files displayed in the active panel

4.	Select Delete from the File menu

Or click the Delete File command icon button

Or drag the selected directory and drop it on the Delete File command icon button

5.	Verify the information displayed in the popup dialog

6.	Click OK

To Delete Program Items:

1.	Select the item or items to be deleted

2.	Select Delete from the File menu

Or click the Delete command icon button

Or drag the selected items and drop them on the Delete command icon button

3.	Verify the information displayed in the popup dialog

4.	Click OK


Launching Applications

GFile has 4 different methods of launching applications - each discussed in its own topic:

Launching Program Items

Works in a manner similar to the program manager

Launching Files

Works in a manner similar to the file manager

Launching From The Command Line

Works in a manner similar to the DOS command line

Launching Via Shortcut Keys

Allows launching applications via Hotkey sequences


Launching Via Shortcut Keys

To Launch a Program Item Using Shortcut Keys:

1. 	Type the shortcut key sequence. GFile does NOT have to be the active application

Launching via shortcut keys does not make use of any of the launch related options on the Options menu.

If an item has been previously launched (by GFile), typing the shortcut key sequence does not launch another instance - rather, it restores (if minimized) the existing instance and raises it above other applications.

To define a shortcut key sequence for an item, see Viewing/Changing Program Item Properties


Moving Directories/Renaming Program Groups

Moving a directory or renaming a program group consists of three steps:

1. The destination directory or group is created if it doesn't already exist

2. The non-directory contents of the source directory or program items in the group are moved to the destination

3. The source directory is deleted  if it is empty, or source group is deleted

The filename template used to determine files to move is the contents of the currently active panel's template field  - even if the directory to be moved is not the directory displayed in the active panel (resulting from step 3 below - changing the information in the popup dialog).

Only files selected by the Select Attributes and Attributes Exclusive settings for the active panel will be moved. The result of this, and the template field value, is that only files whose names would appear in the active panel file list, if the source drive/directory were selected, will be moved.

Moving a directory uses Safe Copying as described in Copying Files/Program Items

GFile does not do recursive moving. In other words, it will move only the non-directory files immediately within a source directory.

When renaming a program group, all program items are moved.

To Move a Directory:

1. 	Select the directory to be moved in either panel

2. 	Select Move/Rename from the File menu

Or click the Move/Rename command icon button

Or drag the source directory and drop it on the Move/Rename command icon button

3. 	Verify/Change the information displayed on the popup dialog

4. 	Click OK

To Rename a Program Group:

1. 	Select the group to be renamed in either panel

2. 	Select Move/Rename from the File menu

Or click the Move/Rename command icon button

Or drag the source group and drop it on the Move/Rename command icon button

3. 	Enter the new name in the To: entry of the popup dialog. Be sure it is of the form: New Group Name::.

4. 	Click OK


Moving/Renaming Files/Program Items

Files can be moved/renamed either by selecting the file or files to be moved/renamed, or by specifying a filename template in the Move/Rename Files dialog.

When a file is being moved/renamed, if the destination file already exists, GFile uses a Safe Copy technique. This is described in Copying Files/Program Items

If a file to be move/renamed can have its path and/or name changed by merely renaming (destination on same drive), it is renamed. Otherwise, it is copied, and the original deleted.

If you do not want to change the path, but merely the name of a single file, proceed as described below, but when the popup dialog appears, change the destination (To:) to contain only the new name - no path.

To change the name of a single program item, use the method described below, or change just the Description property as described in Viewing/Changing Program Item Properties.

To Move/Rename Files:

1. 	Display the destination directory in one panel

2.	Select the file, or files to be moved/renamed in the other panel

3.	Select Move/Rename from the File menu

Or click the Move/Rename command icon button

Or drag the selected file(s) and drop it(them) on the Move/Rename command icon button

4.	Verify/Change the information displayed on the popup dialog

5. 	Click OK

To Move/Rename Files Using a Filename Template:

1. 	Display the destination directory in one panel

2.	Display the source directory in the other panel

3.	Select Move/Rename from the File menu

Or click the Move/Rename command icon button

4.	Add the filename template to be used to the end of the Source ("Move/Rename:") edit field in the popup dialog (e.g. C:\DOS\*.com)

5.	Click OK

To Move Program Item(s) to a Different Group:

1. 	Display the destination group in one panel

2.	Select the item, or items to be moved in the other panel

3.	Select Move/Rename from the File menu

Or click the Move/Rename command icon button

Or drag the selected item(s) and drop it(them) on the Move/Rename command icon button

4.	Verify/Change the information displayed on the popup dialog.

5. 	Click OK

To Rename a Program Item (Same Group):

1.	Select the item to be renamed in either panel

2.	Select Move/Rename from the File menu

Or click the Move/Rename command icon button

Or drag the selected item and drop it on the Move/Rename command icon button

3.	Verify/Change the information displayed on the popup dialog.  Be sure the destination is of the form: Groupname::NewName.

4. 	Click OK


Printing Files

GFile uses the same file association mechanism for printing that File Manager uses. Within the registration database is kept associations between file extensions, and programs (with options) that are able to print files with those extensions.  These associations exist only for Document Classes. For details on the mechanisms involved, refer to Associating Files With Programs/Classes

When multiple files are selected for printing, GFile enqueues the print requests. That is, it waits for completion of the associated print program for the first file (but not completion of printing) before starting the second print request, and so on. This prevents GFile from trying, for example, to start 26 instances of the Paintbrush program at the same time (a 50MHz '486 with 64MB of memory might handle it ok - those of us with more modest iron wouldn't like the result !).

To Print Files:

1.	Select the file or files to be printed

2.	Select Print from the File menu

Or click the Print command icon button

Or drag the selected files and drop them on the Print command icon button


File Menu Commands

New

Creates a new program item. See Creating New Program Item.

Open

Runs the currently selected file(s) or program item(s). If no files/items are selected, but a directory list or drive box has the keyboard focus, causes the currently highlighted drive or directory to be selected. Exists primarily for compatibility with File Manager.

Move/Rename

Moves or renames selected files, program items, a directory or program group. See Moving/Renaming Files/Program Items and Moving Directories/Renaming Program Groups

Copy

Copies selected files, program items, a directory, or program group. See Copying Files/Program Items and Copying Directories/Program Groups

Delete

Deletes selected files or program items. See Deleting Files/Program Items

Properties

Displays and (optionally) changes selected file(s) or item properties. See Viewing/Changing File Properties or Viewing/Changing  Program Item Properties.

Run

Runs the selected file(s) or program item(s). See Launching Files and Launching Program Items

Print

Prints the selected file(s). See Printing Files

Associate

Associates files with the same extension as the selected file with a program or Document Group. See Associating Files With Programs/Classes

Create

Creates a directory or program group. See Creating Directories/Program Groups

Remove

Removes selected directory or program group. See Removing Directories/Program Groups

Exit/Exit Windows

Terminates GFile. If GFile is running as the shell program, exits Windows.


View Menu Commands

Large

Switches GFile to display all visual components. See GFile Visual Components

Medium

Switches GFile to display only panels and command line. See GFile Visual Components

Small

Switches GFile to display one panel and command line. See GFile Visual Components

Refresh

Causes both panels to be updated and repainted. De-selects any selected files/program items


Panels Menu Commands

The Panels menu contains two columns, corresponding and applying to the two panels

Left/Right

Makes the selected panel the active panel. See GFile Visual Components

Program Group

File

Long File

Info

Determines the information to be displayed in the corresponding panel. See GFile Visual Components

Sort Criteria

Selects the file information - name, extension, date, size - by which the file list entries are sorted. Allows a primary (first) criterion, and a secondary (second).

Select Attributes

Attributes Exclusive

These items work together to determine the attribute masks used to select files to be displayed in the file lists. If Attributes Exclusive is not selected (unchecked), the files displayed will be all normal files (files with no attributes), and all files that have any of the attributes selected in the Select Attributes dialog. If Attributes Exclusive is selected (checked), the files displayed will be only files that have at least one of the attributes selected in the Select Attributes dialog.


Options Menu Commands

Append Selected File

When selected, causes the path/name of all selected files to be appended to the command line (as arguments) whenever the command line is run. See Launching From The Command Line

Drop Full Path

When selected, causes full path/file names to be dropped onto program items, file names, or the command line. When not selected, only the file name is dropped. See  Launching Program Items,  Launching Files, and Launching From The Command Line

Prompt for Dir/Arguments

When selected, causes a popup dialog to appear prompting for the working directory, and any arguments to supply to a program being launched. See Launching From The Command Line,  Launching Program Items, and Launching Files

Confirm Delete

When selected, causes a confirmation (Yes/No/Cancel) popup dialog to be displayed before any file or program item is deleted.

Confirm Overwrite

When selected, causes a confirmation (Yes/No/Cancel) popup dialog to be displayed before any existing file is overwritten by a copy or move/rename operation.

Copy Date/Time

When selected, causes the date and time of the source file to be given to the newly created destination file by a copy operation

Copy Attributes

When selected, causes the attributes of the source file to be given to the newly created destination file by a copy operation

Show Progress

When selected, copying, moving, deleting, and searching operations cause a popup dialog to be displayed, showing the current operation. The operations usually take a little less time when this option is not selected.

Minimize on Use

When selected, causes GFile to minimize (iconize) itself whenever an application is launched.

Save Settings on Exit

When selected, causes GFile to write the current state, directory, program group, size, and option settings to be written to GFILE.INI - and thus restored when GFile is next invoked.


Launching Program Items

Launched program items uses the Prompt for Dir/Arguments option from the Options menu. They do not use the Append Selected Files option - that behavior is obtained by dropping the selected files on the program item icon as described below.

Launched program items are subject to Serialized Execution - see Miscellaneous Operations

To Launch a Program Item

1.	In either panel, select the Program Group containing the program item to be launched

2.	Double click on the icon or name of the program item

Or

1.	In either panel, select the Program Group containing the program item to be launched

2.	Select the program item to be launched

3.	Select Run or Open from the File menu

Or click on the Run command icon button

Or press the Enter key on the keyboard

To Launch a Program Item Passing Selected Files as Arguments:

1.	In either panel, display the group and program item to be launched.

2.	In the other panel, select the file or files to be used as arguments

3.	Drag the files and drop them on the program item icon

If the Drop Full Path option from the Options menu is selected, the program item will receive the full path/filename for the dropped arguments. Otherwise, it will receive only the filename.


Launching Files

GFile will launch two types of files:

Program files - files with  .exe, .com, .bat or .pif extensions (Windows or DOS)

Data files whose extensions are associated with program files or a Document Class - see Associating Files With Programs/Classes

GFile will allow you to launch multiple files with a single operation. However, this should be used carefully. It is very easy to bring your system to its knees by launching too many applications concurrently.

Launched  files make use of the Prompt For Dir/Arguments option. See Options Menu Commands

Launched files do not make use of the Append Selected File option (rather nasty recursion if they did!). Rather, to launch a file using another file or files as arguments, the argument file(s) are dragged and dropped onto the file to be launched as described below.

Launched files are subject to Serialized Execution - see Miscellaneous Operations

To Launch a File or Files

1.	Display the directory containing the file(s) to be launched

2.	Select the file or files to be launched

3.	Select Run or Open from the File menu

Or Click the Run command icon button

Or press the Enter key on the keyboard

Or (Single File Only)

1.	Display the directory containing the file to be launched

2.	Double-click the file to be launched

To Launch a File Passing Selected Files as Arguments:

1.	In either panel, display the directory containing the program file to be launched.

2.	In the other panel, select the file or files to be used as arguments

3.	Drag the files and drop them on the program file name

If the Drop Full Path option from the Options menu is selected, the program will receive the full path/filename for the dropped arguments. Otherwise, it will receive only the filename.


Launching From The Command Line

From the command line, you are able to launch arbitrarily complex commands containing:

DOS programs with switches and arguments

Windows programs with switches and arguments

Document files associated with a program or Document Group (see Associating Files With Programs/Classes)

DOS builtin commands with switches and arguments

Program Items

The command line uses both the Prompt for Dir/Arguments and Append Selected Files options. See Options Menu Commands

The command line contains a built in history facility, able to hold 9 previous commands.

To specify a program item rather than a file name, use the form:  Group Name::Program Item Name

Launched command lines are subject to Serialized Execution - see Miscellaneous Operations

Command lines that contain the command.com pipe or redirection characters (|, >, <) are automatically assumed to be DOS command lines. Arguments to the command line that are a result of the Prompt for Dir/Arguments and/or Append Selected Files options will be placed on the final command line before the first occurrence of a pipe or redirection character - unless that character is the first character in the command line.

If you wish to launch a DOS command line, and not have GFile search the disk attempting to resolve the command before deciding that it is a DOS command line, begin the command line with > .

If you create a command line containing only the character > ,  your command processor will be launched in interactive mode. The Prompt for Dir/Arguments and Append Selected Files options will be ignored. However, serialized execution will still be honored.

DOS command lines use a pif file named GFILECMD.PIF and the value of the COMSPEC environment variable. See Configuring GFile if you wish or need to change the default values for these.

To Use the History Mechanism:

1.	Press the Up-Arrow key on the keyboard to move backward through the command history

2.	Press the Down-Arrow key to move forward through the command history

To Launch a Command Line:

1.	Enter the desired command using the keyboard and/or dragging and dropping file names, directory names, or program items

2.	Press the Enter key on the keyboard

Or double-click on the command line


Associating Files With Programs/Classes

An association defines the program that is invoked (or in certain cases the DDE message to send) when a file with a particular extension is Opened(Run) or  Printed.

One way the association for an extension can be defined is as a command line consisting of a program (path)name and any switches necessary to Open files with the particular extension. This is the most commonly used technique for DOS programs, and Windows programs that do not define Document Classes .

The other way in which the association can be defined is by indicating that the extension is associated with a Document Class. The Document Classes are normally defined when applications used to Open and Print particular types of documents are installed.  Some common examples of Document Classes are:

Paintbrush Picture - Files that can be edited with pbrush.exe - .bmp and .pcx files

Write Document - Files that can be edited with write.exe - .wri files

Text File - Files that can be edited with notepad.exe - .txt files

For further details on file extension associations, refer to the printed documentation for File Manager.

Defining an association between an extension and either an executable file, or an existing Document Class is simple - as described below.

Defining a Document Class is not normally considered a "user operation". However, if you wish to investigate further, refer to printed and Help documentation on the program regedit.exe (it's sitting there, neglected, in your Windows 3.1 directory). Another good reference  (IMHO) is The Microsoft Windows 3.1 Programmer's Reference, Volume 1, Chapter 7.  BACKUP YOUR REGISTRATION DATABASE (REG.DAT) BEFORE MESSING AROUND WITH REGEDIT.EXE!

To Define an Association:

1.	Select a file with the desired extension

2.	Select Associate from the File menu

3.	Enter the program name (Open association) and switches in the edit field of the popup dialog.

Or if the desired program has been previously associated with a different extension, select the program from the popup dialog  list

Or select the appropriate pre-defined Document Class from the popup dialog list

4.	Click OK

Example 1 - Using Document Classes

Suppose you want to be able to Run files named read.me using notepad:

Select a file with .me as the extension

Select Associate from the File menu

Scroll down and select Text File from the list displayed in the popup dialog

Click OK

That all there is to it! Any files with .me as an extension that you Open or Run will result in notepad being invoked with the target file as an argument. Further, since the Text File Class has a Print association (notepad.exe /p), you can print .me files from GFile (or File Manager).

Example 2 - Using an  Executable File

As a second example, suppose you have a program with the path C:\utility\xyzzy.exe that processes files with the extension .zyx. To make the association:

Select a file with the .zyx extension

Select Associate from the File menu

Type C:\utility\xyzzy.exe in the text field of the popup dialog

Click OK

Now, whenever you Open or Run a file with the .zyx extension, xyzzy.exe will be invoked - with the file you are Running  passed as an argument.


Edit Menu Commands

File Search

Searches for a file whose name matches a specified filename or filename template. A popup dialog prompts for the drive/directory at which the search should begin, and the name/template to be matched. When a match is found, the active panel changes to display the drive/directory containing the matching file, and the matching file is selected. See Searching For Filename/Template Match

Continue Search

Searches for the next filename that matches a previously specified name/template. See Searching For Filename/Template Match

Compare Selected

Performs binary comparison between the selected file, and a file whose name you enter in the popup dialog. See Comparing File Contents

Select All

Selects all files or program items displayed in the active panel .

Clear All

De-selects all files in the active panel.


System Menu Commands

Format

Invokes format.com. The menu pops up a dialog box that prompts for:

Drive - removable media only

Label - specify only if your version of format.com supports /v:label option - do NOT include quotation marks.

Density - default for drive, or 360K/1.2M/720K/1.44M/2.88M  (/f:format)

System files - none (don't reserve space) , reserve space(/b), copy(/s)

Quick Format - specify only if your version of format.com supports /q

Unconditional - specify only if your version of format.com supports /u

After clicking OK, format.com runs as a DOS application, using the arguments and options specified.

Monitor File System Changes

Windows provides a mechanism to allow one program to be notified whenever a Windows program causes a change to the file system. GFile does not use this mechanism to detect when it changes the file system, but GFile can use it to update its file lists when another program makes a change. To enable this, select the Monitor File System Changes option. File Manager uses this mechanism to detect its own changes as well as external program changes. Since only one program can use this facility, if GFile is running, prior to invoking File Manager turn this option off. You may also want to turn this option off prior to printing several files. Print Manager creates temporary files and having this option on causes unnecessary (but harmless) updating of the file lists.

Pause Queue

When checked,  prevents GFile from starting serialized jobs. See Serialized Execution in Miscellaneous Operations

Clear Queue

Removes all serialized jobs from the queue.  See Serialized Execution in Miscellaneous Operations

Set Shell

Sets the Shell= parameter in win.ini. Pops up a dialog that prompts for the name of the program to be set as the shell.  If GFile is currently the shell program, the default value in the dialog is progman.exe. If GFile is not the current shell, gfile.exe is the default value displayed. After clicking OK, dialog pops up allowing you to restart Windows with the new shell.

Reboot System

Reboots DOS. Although all Windows programs will have an opportunity to clean up, you should avoid using this option while programs that have open files are still active. Also, be VERY careful about using this with smartdrive if write caching. This command is implemented via a Windows API call that will signal smartdrive to flush its write cache buffers. However, I would test extensively with non-critical data before using this "for real". Disk drives, systems, disk related TSRs, and operating system versions vary so widely that all possible combinations cannot be checked (reasonably - within the current century).

Restart Windows

Obvious. Safe to use anytime it is safe to exit Windows.


Configuring GFile

GFile uses a pif named gfilecmd.pif and the value of the environment variable COMSPEC to launch DOS command lines. If you are using a command processor named anything other than command.com, you will have to edit (using pifedit) gfilecmd.pif and change the Program Filename field from command.com to the appropriate name. You should also verify that COMSPEC is being correctly set (usually within autoexec.bat) prior to Windows starting.

You may wish to change other fields in gfilecmd.pif, even if you are running command.com.  The Close Window On Exit setting is a likely candidate.  It was a disagreement over this field that resulted in gfilecmd.pif coming into existence, as opposed to just using  _default.pif.

GFile creates and uses the file named gfile.ini in the Windows directory to save the program settings between invocations of GFile, and, optionally, to specify color, font, buffer size, and shadow thickness information.

The program settings information is in a section named [GFILE] and should not be changed with a text editor. If this portion of the file becomes corrupted, GFile may fail to run. If GFile fails to start, gfile.ini has probably become corrupted. The cure is to delete it. The next time GFile is invoked, the file will be re-created.

Color, font, shadow thickness and buffer information is in a section named [USER] and you should feel free to change this information with an editor. If this information becomes corrupted, GFile may look ugly (or absurd), but it shouldn't crash. If it does, merely delete the [USER] section from gfile.ini. GFile can then be restarted, and will have the default values (described shortly) for all of the parameters.

Following are the names, descriptions, possible values, and default values for the parameters in the [USER] section. The default value is selected by specifying the word default as the parameter value in gfile.ini. For example,  ShadowThickness=default .

MaxBuffK

Indicates the largest buffer, in kilobytes (1024 bytes), that will be used for copying files. The default value is 1024 (i.e. 1 megabyte). Small changes in this will probably have very little effect on GFile or system performance.  If you are in a tight memory situation, you may find it advantageous to set this much lower. If you are memory rich, copying multiple files may be much quicker if you increase this value.

MaxFileInfoCache

This parameter indicates the maximum number of 32 byte file info blocks that GFile will have in memory before it stops caching unused blocks. The caching is done to help performance when changing from directory to directory within GFile. If the system begins spending excessive time managing memory, GFile will dump the cached blocks back into the memory pool, so this setting is irrelevant if you are seriously memory poor. The default for this is 1024 - probably adequate for most systems. You may want to decrease this if you have small directories or you find GFile is pushing your system into a thrashing situation. You may want to increase it if you have very large (> 500 files) directories. To be honest, you would better spend your time shrinking the directories - if possible - not only for the sake of GFile, but for any other program that accesses those directories.  Small changes of this will probably have no discernable effect. Double/halve steps in size may.

ShadowThickness

Indicates the pixel width of the shadows drawn to create the 3-D visual effect. Also used for spacing within some of the lists and boxes. The default value is 1. The parameter can be set to 1 or 2.

FontFaceName

Indicates the name of the font that is placed in the logical font structure that selects the GFile font. This font is used to draw all the text in GFile except for the menus and dialog boxes. The default depends on whether a value for IconTitleFaceName is specified in win.ini (determines the font name for progman.exe). If so, that value is used. If not, MS Sans Serif is used. Any font name can be used. However, the actual font that Windows uses to satisfy a logical font request depends on the name requested, the size requested, and the fonts available on the system. If you aren't happy with the default, you'll probably have to do a bit of experimentation with this and the FontSize parameter to get what you want.

FontSize

Indicates the point size of the desired font. If the font size is set too large, GFile might attempt to create its window larger than the screen. If this happens, part of GFile's window will be chopped off.

The remaining parameters refer to colors. The values are specified as a set of three numbers in the range 0 to 255, representing the Red, Green, and Blue components of the final color. For example,  MainColor=128 0 128 results in a medium magenta (red+blue) color. The Colors option of control panel can be used to see the effect of different combinations prior to putting the values in gfile.ini.

MainColor

The color to be used to paint the body of GFile. That is, the area that is outside the panels and command line areas.  Also used as the background color for the command buttons. The default is the system Button Face color.

MainText

The color of text drawn on the body of GFile. The default is the system Button Text color.

WorkColor

The color used to paint the background of the command text area and the components of the panels. The default is the system Window Background color.

WorkText

The color of text in the command text area and the components of the panels. The default is the system Window Text color.

Active

The color painted between the components of the currently active panel. The default is the system Active Border color.

Inactive

The color painted between the components of the inactive panel. The default is the system Inactive Border color.

WorkHighlight

The color used as the background for selected items in the panels. The default is the system Active Title Bar color.

WorkHighlightText

The color used to draw the text for selected items in the panels. The default is the system Active Title Bar Text color.

BtnShadow

The color used to draw the shadow portion of the 3-D effects. The default is the system Button Shadow color.

BtnHighlight

The color used to draw the highlighted portion of the 3-D effects. The default is the system Button Highlight color.


Viewing/Changing File Properties

File properties, or attributes in DOS,  can be viewed or changed by GFile.

If GFile is running in Large mode, and a single file is selected, the properties/attributes of the file are displayed in the status line component of GFile. The following letters are used to represent the individual properties:

A	Archive

H	Hidden

R	Read-Only

S	System

If not running in Large mode, or to see the attributes spelled out, select the file to be examined and follow the procedure below for changing the file's attribute - clicking Cancel instead of OK.

To Change File Properties/Attributes:

1.	Select the file or files whose attributes are to be changed

2.	Select Properties from the File menu

3.	Select/deselect the attributes desired (or None) on the popup dialog box

4.	Click OK


Viewing/Changing Program Item Properties

The properties of a program item are the values that were chosen when the item was created which control a program item's display and execution. These values are:

Description

Command Line

Working Directory

Shortcut key

The setting (on/off) of Run Minimized

Icon Filename

Icon Selection

For details on the individual properties, consult your Windows User's Documentation

To Change a Program Item's Properties:

1.	Select the item whose properties are to be changed

2.	Select Properties from the File menu

3.	Change the desired fields in the popup dialog box. If changing the Icon Filename, after entering the new filename (via keyboard or Browse), click the View button to see the icons contained in the new file. Select the desired icon from the scrolled list at the bottom.

4.	Click OK


The the particular icon within the icon file to be used to represent the program item.


File containing the icon to be used to represent the program item. If none selected, or if the selected file contains no icons, an icon from progman.exe will be used.


Value which, if set, will cause GFile (or program manager) to start the program item in a minimized (iconized) state.


A keyboard sequence, unique to the particular program item, which will, when typed, cause the item to be launched. If the program item has been previously launched, typing the shortcut key will restore the item, if minimized, and will raise it above other programs. Must be  Ctrl+Shift, Ctrl+Alt, or  Ctrl+Shift+Alt followed by a  normal or function key.


The program item's working drive:directory. May be overridden by the program itself, launch options, or limitations/restrictions imposed by underlying (usually network) system level software.


The command line required to invoke the program. Include the program (path)name and any switches or arguments to be used every time the program is run.


Descriptive name for the program item. Appears below the item's icon when using program manager, beside the icon when using GFile.


Help Menu Commands

Contents

Invokes the Windows Help program, displaying the table of contents for this help file.

Search for Help on

Invokes the Windows Help program, displaying the topic search dialog for this help file.

How to use Help

Invokes the Windows Help program, displaying a help file that explains how to use the Windows help facility.

About GFile

Displays author, revision, and copyright information for GFile.

Registration

Displays information concerning how to register GFile.


Creating New Program Item

Creating a new program item consists of supplying values for the properties that control an item's display and execution. These properties are:

Description

Command Line

Working Directory

Shortcut key

The setting (on/off) of Run Minimized

Icon Filename

Icon Selection

For details on the individual properties, consult your Windows User's Documentation

Supplying values for the properties are optional except for the Command Line. If not specified, defaults will be chosen for the other values.

There are two, very different ways to create new program items:

1.	Define the item explicitly via the New entry in the File menu. Using this technique, a dialog box allows you to specify values for each property.

2.	Drag a selected file or files from a file list and drop it/them on a group box. This will create an item for each file, with the filename as the command line (must be executable or associated) and defaults for the other properties.

To Create a New Program Item Explicitly:

1.	Display the group that will contain the new program item, and make it the active panel.

2.	Select New from the File menu

3.	Enter values for the desired fields in the popup dialog box. If specifying the Icon Filename, after entering the new filename (via keyboard or Browse), click the View button to see the icons contained in the new file. Select the desired icon from the scrolled list at the bottom.

4.	Click OK

To Create a New Program Item or Items Using Drag/Drop:

1.	Display the group that will contain the new program item or items.

2.	In the other panel, display and select the file or files for which program items are to be created.

3.	Drag the file or files and drop them on the destination group box.


A file that has an extension of .exe ,  .com ,  .pif , or .bat and can presumably be executed by Windows as a program.


Place the mouse over a list that has a selection or selections, press the left mouse button, and while still pressing the mouse button, move the mouse to another location. If dragging is taking place, the mouse cursor will change to reflect whether or not the dragged selection(s) can be dropped.


While dragging a selection or selections, release the left mouse button over a list, button, or other graphical item.


A drop-down list containing the names of program groups. Displayed at the top of a panel when the panel's display selection is Program Group. The current selection in this list will determine what is displayed in the corresponding program item list.


A drop-down list containing the drive letters and labels for each disk drive found on the system. Displayed at the top left of a panel when the panel's display selection is File.


A single box containing information about the currently selected drive and directory for the corresponding panel; and mode, memory, and resource information from Windows. Fills the entire panel when the panel's display selection is Info.


A scrolled list displaying the current directory, the directories superior to the current directory, and the subdirectories of the current directory for the drive displayed in the corresponding drive box. Displayed below the drive box when a panel's display selection is File. Double clicking on a directory name changes the panel's current directory.


A multiple-selection scrolled list containing the names of files as selected by the drive box, directory list, and template field in the same panel. Appears in the bottom right of a panel when the panel's display selection is File. Fills the panel when the panel's display selection is Long File. Select individual items by clicking with the mouse. Make multiple selections by combining pressing the Shift (contiguous) or Control (non-contiguous) keys and clicking with the mouse.


A multiple-selection scrolled list containing the names and icons of program items as selected by the group box. Appears in the bottom of a panel when the panel's display selection is File, and occupies the majority of the panel. Select individual items by clicking with the mouse. Make multiple selections by combining pressing the Shift (contiguous) or Control (non-contiguous) keys and clicking with the mouse.


The panel in which a drive, directory, template, file, group, or item was last selected or changed. It will be highlighted using the Active color .


An editable text field in which space, comma, or semi-colon separated filename templates may be entered. Determines the file names that will be displayed in the corresponding file list. Displayed in the upper right of a panel when the panel's display selection is File. After changing the contents of the field, you must press Enter or the field will be restored to its previous value when it loses the keyboard focus.


Displays the name, size, date and time of creation, and  attributes for the currently selected file, or the number of files and total file size when multiple files are selected.


Searching For Filename/Template Match

GFile will search part or all of a drive for a file that matches a name or filename template you supply. If the search is successful, the matching file becomes the selected file. A search can be continued from where it found a match, looking for additional matches, without having to re-enter any information.

To Search For a File:

1.	Display the drive and, optionally the directory, where the search is to begin in either panel.

2.	Select File Search from the Edit menu.

3.	In the popup dialog, specify the drive/directory where the search is to begin, and the filename template or name to be matched in the appropriate fields.

4.	Click OK

If the search is successful, the active panel  will have its drive box, directory list, and file list changed (if necessary) to display and select the file that matched the name or filename template supplied. If the search fails, a dialog box informing you of the failure is displayed.

To Search For Additional Occurrences or Matches:

1.	Select Continue Search from the Edit menu.

If an additional occurrence of the filename is found, or another file is found that matches the filename template, the new match becomes the selected file. Otherwise a dialog box informs you of the search failure.

NOTE:

GFile searches for files based on the order in which their names appear on the disk - not the order in which they appear in the file lists (as determined by the Sort Criteria selection under the Panels menu).


Comparing File Contents

GFile allows you to perform a binary (bit by bit) comparison between two files, and will tell you if the file contents are identical.

To Compare Two Files:

1.	Display and  select one of the files to be compared, after optionally displaying the directory containing the second file in the other panel.

2.	Select Compare Selected from the Edit menu.

3.	In the popup dialog, specify the path and name of the file to which the selected file is to be compared

4.	Click OK

After the comparison is complete, or fails,  a popup dialog will inform you whether the file contents are identical or not


Miscellaneous Operations

Restarting Windows/Rebooting DOS

By using the appropriate menu options, you can restart Windows, or Reboot DOS from within GFile.  Use these options with some care. For most configurations, and with most programs, these options should not cause any problem. However, avoid using them if you have several applications up with open data files - it is too easy to click the wrong option on the "Do you wish to save...?" dialog box that most applications display when they are being terminated by Windows going down. See the appropriate sections under System Menu Commands.

Setting a New Shell Program

GFile allows you to change the Windows shell program, and optionally, to reboot Windows. See Set Shell on the System menu.

Sequential Execution

As described under Printing Files, GFile uses a queue to serialize print operations in order to prevent large numbers of associated programs from starting at the same time when printing multiple files. This same queue can be used to serialize the launching of applications - from program items, files, or the command line. When serialization is in effect, applications you launch from GFile are placed at the end of the queue, and only one application from the queue is allowed to be running. When an application that was started from the queue terminates, GFile will start the next application in the queue,  and begin listening for notification that the newly launched application has completed. GFile continues this sequence until all the jobs in the queue have been completed.  You can continue to use GFile while items are waiting in the queue, and in fact, can add new jobs to the queue. You can turn off serialization while jobs are in the queue, start some applications immediately (non-serialized) with GFile, and it will have no effect on the enqueued jobs - they will continue to wait until it is their turn to start. As you might expect, you can then turn serialization on, and add more jobs to the queue - going back and forth between serialized and non-serialized execution as often as you like.

The queue used for serialized execution is the same queue that is used for serialized printing - thus execution and print jobs can be mixed and will wait for each other - only one job from the queue runs at a time.

There are three menu options that control serialized execution:

Serialize Execution on the Options menu:

When selected (checked) will cause all future (until de-selected) program launching to be enqueued. Note that the jobs are fully qualified at the time they are placed in the queue - if Prompt for Dir/Arguments and/or Append Selected Files options are selected and are appropriate, they will be performed prior to the item being placed in the queue.

When de-selected (un-checked), will cause future program launching to be performed immediately. However, de-selecting this option will not affect any previously enqueued job - the enqueued jobs continue to wait for their turn to start.

Pause Queue on the System menu:

When selected (checked), causes GFile to stop starting new jobs when old jobs complete. Does not affect the contents of the queue, nor does it prevent new jobs from being added to the queue, either as a result of launching with Serialize Execution selected or as a result of printing.  Has no effect on non-serialized execution.

When de-selected (un-checked), will allow GFile to continue starting enqueued jobs when old jobs complete. If no previously enqueued jobs are running when this option is de-selected, will start the job that is now at the head of the queue.

Purge Queue on the System menu:

Cancels all enqueued jobs.

One final note on this facility. Serialized execution came about largely as a side effect of the need for serialized printing. The code to support it as it now operates (specifically - as opposed to what is needed to support serialized printing) is trivial. However, I don't have a feel for how useful it is. There are a large number of enhancements that can be added - the ability to view, cancel, hold and re-order specific jobs, the ability to have more than one batch job running at once, the ability to save the queue between sessions, and being able to create batch scripts (not to be confused with DOS .bat files) are all possibilities - but all take development time, memory, and disk space. Let me know how useful this facility is or isn't, and I can then decide whether to enhance it significantly for future revisions of GFile.