Skip to main content

  | मौसम…

411 समाचार
Public archive edition · Attributed source reporting with original dates · AI drafts are excluded

411 REFERENCE · Wikibooks

Futurebasic/Language/Reference/on finderinfo

Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.

ON FINDERINFO Statement (+) Appearance (+) Standard <td width="16"> Console Syntax ON FINDERINFO {FN userFunction|GOSUB{lineNumber|"stmtLabel"}} Revised February, 2002 (Release 6) Description You establish this vector before entering your event loop. When a file is dropped onto your application's icon or one of your applications files is double-clicked from the Finder, the specified routine is called with information on how to open the file. The routines are set up to handle up to 1024 files at a time. If this number is insufficient, you will need to change the DIM statement in the header file named "Subs Files.Incl". There are three global values maintained for this vector. gFBFndrInfoCount The number of files pending in the queue. gFBInfoSpec(1024) as FSSpec An array of file spec records. There is one file spec record for each file that needs to be opened or printed. gFBInfoAction%(1024) A boolean value that is zero if the file is to be opened and non-zero if it is to be printed. Example:This routine establishes a function that is called when a file is dropped onto the compiled version of the application. It also shows how to determine if a file is to be printed or opened. /*    Build the application,    then drop a text file on to it LOCAL FN MyOpenFile ( fs as ^FSSpec )    PRINT "FileName: ";fs.name END FN LOCAL FN MyFinderInfo    DIM AS FSSpec fs    DIM AS SHORT<spacer type="horizontal" size="21">@ count, action, j    DIM AS OSTYPE @ fType    count = 0 // set to ask "How many?"    action = FINDERINFO( count, fs, fType ) // FSSpec & OSType    LONG IF ( count > 0 ) // at least one file wants in FOR j = 1 TO count // process them all count = -j // FSSpec & OSType action = FINDERINFO( count, fs, fType ) IF ( action == _finderInfoOpen ) AND ¬ ( fType == _"TEXT" ) ¬ THEN FN MyOpenFile( fs ) NEXTFN ClearFinderInfo // in Subs Common.Incl    END IFEND FN ON FINDERINFO FN MyFinderInfo MENU 1,0,1, "File" MENU 1,1,1, "Quit/Q" WINDOW 1 DO   HANDLEEVENTSUNTIL 0 See Also FINDERINFO; OPEN; Appendix A: Specifying Files and Directories; Appendix H: File Spec Records; Appendix I: Printing; USR SCANFOLDER; RESOURCES