' 'Class description: ' !short:FInfo class structure: Class FInfo: ~~~~~~~~~~~~ This class appends the class Info with viewing of the big text file. Common use: ~~~~~~~~~~~ If you want to enable the file selection you can use the only program line: FInfoShow("*.txt") //viewing of any file of the *.txt set. or if you want to view the specific file you can use following two lines of program: LOCAL OBJECT Fi OF FInfo Fi:Init("MyFile.txt") //could be GoodInit(...), parameters (if any) Source code is in C_FInfo.prg !seealso: c_box.ngo:Box c_info.ngo:Info c_task.ngo:Task c_color.ngo:Color ob_class.ngo:"Class hierarchy" ob_funct.ngo:FInfoShow !short:~~~~~~~~~~~~~~~~~~~~~~ !short:create class FInfo from Info !short: export: !short: var BigFile //false ^BFInfo:BigFile^N: private: logical This variable serves as help information if the file is shorter than the volume of instvar variable Buff or if it is a need to read dynamicaly the file part after part to the buffer. (FInfo enables unlimited long file view) !short: var FHandle //0 ^BFInfo:FHandle^N: private: numeric The file acces variable (file handle) is stored here for text file read. !short: var FSize //0 ^BFInfo:FSize^N: read-only: numeric Viewed file size. !short: method New=FInfoNew //o:New() --> self ^BFInfo:New()^N: public: return self Fills the object with default values. !short: method Init=FInfoInit //o:Init(FName,WinName,R,C,Rs,Cs,Clr,Shd) --> true/false ^BFInfo:Init(FName,WinName,R,C,Rs,Cs,Clr,Shadow)^N: public: return true/false The FName parameter must be set, if there is no such file the method returns false otherwise returns the object as file viewing task. Other parameters are past to parent set ^UBox^N, so for their description look at the method Box:Init(...) !short: method GoodInit=FInfoGoodInit//o:GoodInit(FNam,WNam,R,C,Rs,Cs,CSize,Clr,Shd) --> true/false ^BFInfo:GoodInit(FName,WinName,R,C,Rs,Cs,CurSize,Clr,Shadow)^N: public: return true/false It is the same as FInfo:Init(...), but by window positioning is used the ^UGoodInit^N method defined in parent class Box. For the parameter FName are the same rules valid and for other parameters look at Box:GoodInit(...) !short: method Print=FInfoPrint //o:Print() --> true ^BFInfo:Print()^N: public: return true Sends the file to print by using the dos command PRINT. Remember that resident portion of dos command PRINT must be loaded into memory before our program. !short: method VProcess=FInfoVProcess//o:VProcess() --> true ^BFInfo:VProcess()^N: private: return true Method VPRocess() is appended from herited class Info with the dynamicaly reading of text from viewed file. !short: method Done=FInfoDone //o:Done() --> true/false ^BFInfo:Done()^N: public: return true/false Ends the task and closes the viewed file. !short: endclass