Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

rawtext.h

00001 /******************************************************************************
00002  *  rawtext.h   - code for class 'RawText'- a module that reads raw text files:
00003  *                ot and nt using indexs ??.bks ??.cps ??.vss
00004  *
00005  * $Id: rawtext_h-source.html,v 1.4 2001/10/05 20:45:21 mgruner Exp $
00006  *
00007  * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
00008  *      CrossWire Bible Society
00009  *      P. O. Box 2528
00010  *      Tempe, AZ  85280-2528
00011  *
00012  * This program is free software; you can redistribute it and/or modify it
00013  * under the terms of the GNU General Public License as published by the
00014  * Free Software Foundation version 2.
00015  *
00016  * This program is distributed in the hope that it will be useful, but
00017  * WITHOUT ANY WARRANTY; without even the implied warranty of
00018  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00019  * General Public License for more details.
00020  *
00021  */
00022 
00023 #ifndef RAWTEXT_H
00024 #define RAWTEXT_H
00025 
00026 #include <rawverse.h>
00027 #include <rawstr.h>
00028 #include <swtext.h>
00029 
00030 #include <defs.h>
00031 
00032 class SWDLLEXPORT RawText:public SWText, public RawVerse
00033 {
00034   char *versebuf;
00035   RawStr *fastSearch[2];
00036 
00037 public:
00038   
00039     
00040     RawText (const char *ipath, const char *iname = 0, const char *idesc =      0, SWDisplay * idisp = 0, bool unicode = false);
00041     virtual ~ RawText ();
00042   virtual char *getRawEntry ();
00043   virtual char createSearchFramework ();
00044   virtual bool hasSearchFramework ()
00045   {
00046     return true;
00047   }
00048 #ifdef __VISUALC__
00049   virtual SWModule & operator = (SW_POSITION);
00050 #else
00051   virtual RawText & operator = (SW_POSITION);
00052 #endif
00053   virtual ListKey & Search (const char *istr, int searchType = 0, int flags =
00054                             0, SWKey * scope =
00055                             0, bool * justCheckIfSupported =
00056                             0, void (*percent) (char, void *) =
00057                             &SWModule::nullPercent, void *percentUserData =
00058                             0);
00059 
00060   // write interface ----------------------------
00061   virtual bool isWritable ()
00062   {
00063     return true;
00064   }
00065   static char createModule (const char *path)
00066   {
00067     return RawVerse::createModule (path);
00068   }
00069   virtual SWModule & operator << (const char *inbuf);   // Modify current module entry
00070   virtual SWModule & operator << (const SWKey * linkKey);       // Link current module entry to other module entry
00071   virtual void deleteEntry ();  // Delete current module entry
00072   // end write interface ------------------------
00073 };
00074 
00075 
00076 #endif

Generated at Fri Oct 5 22:45:33 2001 for The Sword Project by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001