00001 /****************************************************************************** 00002 * swcom.h - code for base class 'SWCom'. SWCom is the basis for all 00003 * types of commentary modules 00004 * 00005 * $Id: swcom_8h-source.html,v 1.1 2003/02/28 21:21:57 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 SWCOM_H 00024 #define SWCOM_H 00025 00026 #include <swmodule.h> 00027 #include <versekey.h> 00028 00029 #include <defs.h> 00030 00031 SWORD_NAMESPACE_START 00032 00035 class SWDLLEXPORT SWCom : public SWModule { 00036 public: 00037 00040 SWCom(const char *imodname = 0, const char *imoddesc = 0, 00041 SWDisplay * idisp = 0, SWTextEncoding enc = ENC_UNKNOWN, 00042 SWTextDirection dir = DIRECTION_LTR, 00043 SWTextMarkup mark = FMT_UNKNOWN, const char* ilang = 0); 00044 00045 virtual ~SWCom(); 00046 virtual SWKey *CreateKey() { return new VerseKey(); } 00047 00048 virtual long Index() const; 00049 virtual long Index(long iindex); 00050 00051 00052 00053 // OPERATORS ----------------------------------------------------------------- 00054 00055 SWMODULE_OPERATORS 00056 00057 }; 00058 00059 SWORD_NAMESPACE_END 00060 #endif