hk_module.h

00001 // ****************************************************************************
00002 // copyright (c) 2000-2005 Horst Knorr <hk_classes@knoda.org>  
00003 // This file is part of the hk_classes library.
00004 // This file may be distributed and/or modified under the terms of the
00005 // GNU Library Public License version 2 as published by the Free Software
00006 // Foundation and appearing in the file COPYING included in the
00007 // packaging of this file.
00008 // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00009 // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00010 // ****************************************************************************
00011 #ifndef HK_MODULE
00012 #define HK_MODULE
00013 #include "hk_dbvisible.h"
00014 using namespace std;
00015 
00025  class hk_moduleprivate;
00026  
00027 class hk_module: public hk_dbvisible
00028 {
00029     public:
00030         hk_module(void);
00031         ~hk_module();
00032        void set_script(const hk_string& s,bool registerchange=true);
00033        hk_string script();
00034        void set_name(const hk_string&);
00035        hk_string name(void);
00036        bool load_module(const hk_string& n="");
00037        bool save_module(const hk_string& n="",bool ask=true);
00038        virtual void savedata(ostream& s );
00039        virtual void loaddata(xmlNodePtr definition);
00040                bool has_changed();
00041        void set_block_has_changed(bool);
00042        bool block_has_changed();
00043     protected:
00044         virtual void widget_specific_has_changed(){}
00045                 bool ask_name(void);
00046     void reset_has_changed();
00047     private:
00048 hk_moduleprivate* p_private;
00049 };
00050 #endif //HK_MODULE

Generated on Tue Nov 28 02:48:08 2006 for Databaseconnectionclasses by  doxygen 1.5.0