FILTERS File Passage creates the USE and FILTER menus for intermediate and higher experience interface levels. Access a filter from the USE menu and then the FILTERS menu. Filter menu items are enabled whenever a filter is switched into use (check marked). Use one or more filters when executing a function from the WORK menu, such as CATALOG. Filters when not in use, do not affect a functions output. However, if a filter(s) is in use, then each input file will be tested. Folders are an exception in some cases. See function descriptions for more info. Logic Filters have two logical states: pass (+) and not pass (-). When a filter menu item becomes enabled, you'll notice a plus sign, or minus sign in front of the filter name. The signs indicate the filter logic state. Filters set to a plus sign will pass only the files in their filter. While filters marked with a minus sigh will only pass files that do not match a filter. The positive and negative states of filter logic produce reverse actions. If you want to reverse the logic of a filter, there are two methods: (1). You hold down a modifier key BEFORE pressing the mouse button and selecting the filter menu, and a filter menu item. These modifier keys will reverse a filter's logical state: shift key, apple key, control key, or the options key. (2). You open the filter logic dialog under the PREFERENCE menu. The filter logic menu item activates when a function that uses filters moves to the front. Using The most obvious use for filters is to help find a file by cataloging. CATALOG with CONTENT FILTER can help you search files for one or more text items. Although you may not have a use for filters in the present, filters give file utility functions a new twist that hasn't been explored by other file utilities. Someday, you may find yourself wishing you had a filter for a certain reason and File Passage (FP) will be there. They say that "necessity is the mother of invention", but FP is "an invention for a necessity from the future". Filters are just a single part of the FP philosophy: help organize, innovate, fulfill System design, and add intelligence to the file utility. There are fourteen filters, each relating to a file attribute. After accessing a filter menu item, each filter's setting can be changed from a movable dialog window. The fourteen filters, the USE menu item switches, and the OPTIONS menu switches, the filter template name, and a filter template version resource comprise a filter template which is saved in the Filters.FP file that FP creates when asked to or necessary. You control filter template creation, use, naming, and deletion. See the description on FILTER TEMPLATES from the ABOUT window. Each filter is described below. To determine file attributes, you can use SET FILE INFO to GET FILE INFO, or you can use CATALOG with OUTPUT OPTIONS. FP checks the version of the filter template file, and converts templates out of version range to be a current FP version. If the version is less than the minimum required version, then some filter data may be initialized during the conversion. If the version is greater than the current FP version, then the entire template is initialized. (1). FILE TYPE FILTER WINDOW Before you can use the FILE TYPE FILTER, you need to understand file types. Each file has a file type that is used by users and programs to help in file identification. In the FILE TYPE FILTER window is a text edit control with a list of the current file types defined by Apple Computer. Generally, applications generate or use a small range of file types. Learn the file types that you work with to use FP's FILE TYPE FILTER effectively. The grid or chart control displays the many settings of the file type filter. Each file type, 0 through hex FF, has a corresponding box in the chart. When a given box is check marked with an "X", then this file type is set to pass. The most significant nibble of each file type corresponds to the vertical axis, while the least significant nibble corresponds to the horizontal axis. Each byte has two nibbles: MOST SIGNIFICANT NIBBLE/LEAST SIGNIFICANT NIBBLE. Nibble values range from 0 to hex F. Thus there are 16 possible nibble values, the same amount of digits as in the hexadecimal base. The reference text edit control displays the file type and auxiliary file types defined by Apple Computer. You can scroll through this control by using the arrow keys, command-arrow keys, and option-arrow keys. The REVERSE TABLE button, when selected, reverses the values of each box in the file type table. The ALL pop up control has two values: ON and OFF. If you select ON, then each box in the file type table will be set to ON. OFF will set each box to the unchecked state. The search string and the find next button operate together on the reference text edit control. The string search uses the same search routine as the FIND function. Thus, the wild card character is supported. Use the search function to quickly find file type references. A search starts from the blinking caret to the end of the text. Use option-up arrow key to move the caret to the top of the text. (2). AUXILIARY FILE TYPE FILTER WINDOW Besides a file type, each file has an auxiliary file type. When two applications generate or otherwise use files with the same file type, then the auxiliary file type is used to help distinguish between the two forms used by the separate applications. The FILE TYPE FILTER has descriptions of auxiliary file types under each file type. If a USED AUXILIARY FILE TYPE FILTER is without list entries, then the filter will not pass any files. To add an entry to the AUXILIARY FILE TYPE FILTER, type in a one to four character hexadecimal string in the text edit control, excluding spaces and other non-hexadecimal data. Then select the ADD button. The data you typed in will become part of the AUXILIARY FILE TYPE FILTER. If you try to ADD a duplicate entry, then the ADD is ignored. FP will sort the AUXILIARY FILE TYPE FILTER list. To remove an entry from the AUXILIARY FILE TYPE FILTER, select a member in the list, and then select the REMOVE button. (3). CREATION DATE FILTER WINDOW When a file is first created, its creation date attribute is set to the current clock. FP's CREATION DATE FILTER allows you to pass files whose creation date fall between two dates. Both the CREATION DATE and the MODIFICATION DATE filters work in the same fashion. Date Filters In order for a file to pass a date filter, the date in question must be greater than or equal "> =" to the first date text entry, and the file's date must be less than or equal "< =" to the second date text entry. The only checks FP makes on the date information are: (1). Determine that the text input entries are numerical; (2). Determine if a time paradox. A time paradox occurs when the second date text entry is earlier than the first date text entry. Remember that time paradox in Back to The Future Part II? Enter one or two numerical characters or the wild card character into the text controls. Move from one control to the next by using the TAB key. The format of each date entry is as follows: MM/DD/YY mm:HH ABBREVIATION TRANSLATION VALID RANGE ----------- ----------- ----------- MM: month (1..12) DD: day (1..31) YY: year (0..99) mm: minutes (0..59) HH: hour (0..23) (4). MODIFICATION DATE FILTER WINDOW Whenever a file is modified, the file's modification date attribute is set to the current clock. FP's MODIFICATION DATE FILTER allows you to pass files whose modification date fall between two dates. CREATION DATE FILTER and MODIFICATION DATE FILTER work the same. See DATE FILTERS above. (5). DATA FORK BLOCKS WINDOW This filter, along with several others, are file size filters. File sizes need to fall between two different sizes in order to pass. This filter looks at a file's data fork block count. Size Attributes A size attribute must be greater than or equal "> =" to the first text edit entry, and must be less than or equal "< =" to the second text edit entry in order to pass. Both text edit controls allow you enter integers up to eight decimal digits. Entering non-numerical data will cause an error dialog to appear, and the offending control to receive the blinking caret. FP will check for and report a size anomaly. A size anomaly occurs when the first size entry is greater than the second size entry. (6). RESOURCE FORK BLOCKS WINDOW This filter looks at a file's resource fork block count. See DATA FORK BLOCKS and SIZE ATTRIBUTES. (7). TOTAL BLOCKS WINDOW This filter looks at a file's data and resource fork combined block total. See DATA FORK BLOCKS and SIZE ATTRIBUTES. (8). DATA FORK BYTES WINDOW This filter looks at a file's data fork size in bytes (ie. the number of characters in this text file). See DATA FORK BLOCKS and SIZE ATTRIBUTES. (9). RESOURCE FORK BYTES WINDOW This filter looks at a file's resource fork size in bytes. See DATA FORK BLOCKS and SIZE ATTRIBUTES. (10). TOTAL BYTES WINDOW This filter looks at a file's data and resource fork combined total byte count. See DATA FORK BLOCKS and SIZE ATTRIBUTES. (11). ACCESS FILTER WINDOW Access flags lock files, make them invisible, and indicate backup status. Locks apply to read, write, rename, and delete capacities. When a file is invisible, it doesn't appear in standard system dialogs. The backup bit gets set every time a file is modified. Once in the ACCESS FILTER, you can choose which flag you want to use for screening purposes by selecting one of the pop up menu items: ON or OFF. When a pop up menu is set to NOT SCANNED, then the corresponding flag is not used in the filter screening process. Thus an input file's access field is compared bit by bit to the corresponding filter bits set to ON or OFF before passing. (12). FILE NAME FILTER WINDOW The FILE NAME FILTER is sort of like using a source wild card file name, but with the possibility of multiple file names for a match. A file will pass this filter, if the source file name matches one file name in the FILE NAME FILTER list. If a USED FILE NAME FILTER is without entries, then the filter passes every file. The folder name filter shares the same window format, and controls, as does the FILE NAME FILTER. Name Filter Controls To add a file name to a NAME FILTER list, type in one to seventeen characters, including the wild card character, and then select ADD. FP sorts this list, but doesn't check for duplicate entries, doesn't prevent you from adding more than 64 thousand entries (the real limit), and doesn't check for incorrect file name syntax. To remove a file name from a name filter list, select the member from the list and select the REMOVE button. There exists a short-cut for adding entries to the name filters: From the EDIT menu, you select the ADD TO FILE NAME FILTER or ADD TO FOLDER NAME FILTER menu item. ADD TO ... NAME FILTERs copies the current text selection and appends it to the associated name filter. If you hold down the option key BEFORE pressing the mouse button and selecting an ADD TO ... NAME FILTER item, then the previous filter data will be REPLACED with the text selection. These same copy/paste operations can be performed on a catalog-style list. The special edits will only copy the file name from the list, ignoring any attributes also listed with a file, but first you have to select which file name that you want to copy. (13). FOLDER NAME FILTER WINDOW The folder name filter will cause FP to only pass and OPEN folders matched in the folder name filter. Unlike other filters, this highly specialized filter doesn't pass structural folders that support a sapling file that also passes. Thus a good deal of searching can be cut from the process, and the resulting output arrived at quicker than with the other filters. Use the folder filter in conjunction with the closed folders to catalog files to produce a listing without non-passing folders. Read the previous section NAME FILTER CONTROLS on how to control the FOLDER NAME FILTER window. (14). CONTENT FILTER WINDOW The CONTENT FILTER is the most powerful, useful, and processor-time consuming filter of all the filters. The CONTENT FILTER may match from one to sixty-four text items with a file's content before a file passes. If there is more than one item in the CONTENT FILTER, each item must match before a file passes. A null CONTENT FILTER will be changed by FP to be a wild card "?" item. The wild card in the CONTENT FILTER will automatically match. Each CONTENT FILTER item is separated by a carriage return. When searching for a content item match, the CONTENT FILTER will limit wild card matches by the space character (new word) and the carriage return (new paragraph). This is different than how the FIND wild card is used. The FILE TYPE FILTER will help the CONTENT FILTER screen out files that need not be searched (such as DIR files, file type hex 0F). Most of the time, you'll use the CONTENT FILTER to search text type (file types hex 04 and B0) or teach type files (file type hex 50). Teach type files and other word processor documents have format information stored alongside text, thus making a content search less reliable. The OKAY button responds to APPLE-CARRIAGE RETURN, and the CANCEL button responds to the ESCAPE key. If you want to modify the CONTENT FILTER without having to open the CONTENT FILTER dialog, then use the menu item ADD TO CONTENT FILTER. ADD TO CONTENT FILTER copies the current text selection, and adds it to the CONTENT FILTER. If the option key is pressed while ADD TO CONTENT FILTER is selected then the CONTENT FILTER is replaced with the current text selection. Press the option key before pressing the mouse button. If there's no text selection, then nothing happens. ADD TO CONTENT FILTER is only activated if a filter template is in memory. Which filter template is in memory? The filter template last accessed by a WORK function. SPECIAL FILTER CASE: filtering out folders in data transfer functions. Filtering out directory file types (folders) will cause the target path not to receive this file type. Thus, the source file structure will not be reproduced. Instead, the original target directory will receive all of the source files without the supporting structure. For example: Source: :A <-- Source is a volume. Passed: :A:Sales:Farm.Sales :A:System:Control.Panel Target: :B <-- Target is a volume. Results: :B:Farm.Sales <-- Volume 'B' will not receive any folders. :B:Control.Panel