1 //=============================================================================
2 //
3 //   File : KviKvs.cpp
4 //   Creation date : Wed 1 Oct 2003 01.38 CEST by Szymon Stefanek
5 //
6 //   This file is part of the KVIrc IRC client distribution
7 //   Copyright (C) 2003-2010 Szymon Stefanek (pragma at kvirc dot net)
8 //
9 //   This program is FREE software. You can redistribute it and/or
10 //   modify it under the terms of the GNU General Public License
11 //   as published by the Free Software Foundation; either version 2
12 //   of the License, or (at your option) any later version.
13 //
14 //   This program is distributed in the HOPE that it will be USEFUL,
15 //   but WITHOUT ANY WARRANTY; without even the implied warranty of
16 //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17 //   See the GNU General Public License for more details.
18 //
19 //   You should have received a copy of the GNU General Public License
20 //   along with this program. If not, write to the Free Software Foundation,
21 //   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22 //
23 //=============================================================================
24 
25 #include "KviKvs.h"
26 #include "KviKvsKernel.h"
27 #include "KviKvsAliasManager.h"
28 #include "KviKvsDnsManager.h"
29 #include "KviKvsTimerManager.h"
30 #include "KviKvsPopupManager.h"
31 #include "KviKvsEventManager.h"
32 #include "KviKvsScriptAddonManager.h"
33 #include "KviKvsObjectController.h"
34 
35 namespace KviKvs
36 {
init()37 	void init()
38 	{
39 		KviKvsKernel::init();
40 		KviKvsAliasManager::init();
41 		KviKvsPopupManager::init();
42 		KviKvsEventManager::init();
43 		// FIXME: Could we delay the init of these objects ?
44 		//        It could be delayed to the first *::instance() call
45 		KviKvsScriptAddonManager::init();
46 		KviKvsTimerManager::init();
47 		KviKvsDnsManager::init();
48 	}
49 
done()50 	void done()
51 	{
52 		//KviKvsScriptManager::done();
53 		KviKvsEventManager::done();
54 		KviKvsPopupManager::done();
55 		KviKvsAliasManager::done();
56 		KviKvsScriptAddonManager::done();
57 		KviKvsTimerManager::done();
58 		KviKvsDnsManager::done();
59 		KviKvsKernel::done();
60 	}
61 
loadPopups(const QString & szFileName)62 	void loadPopups(const QString & szFileName)
63 	{
64 		KviKvsPopupManager::instance()->load(szFileName);
65 	}
66 
savePopups(const QString & szFileName)67 	void savePopups(const QString & szFileName)
68 	{
69 		KviKvsPopupManager::instance()->save(szFileName);
70 	}
71 
clearPopups()72 	void clearPopups()
73 	{
74 		KviKvsPopupManager::instance()->clear();
75 	}
76 
loadAliases(const QString & szFileName)77 	void loadAliases(const QString & szFileName)
78 	{
79 		KviKvsAliasManager::instance()->load(szFileName);
80 	}
81 
saveAliases(const QString & szFileName)82 	void saveAliases(const QString & szFileName)
83 	{
84 		KviKvsAliasManager::instance()->save(szFileName);
85 	}
86 
clearAliases()87 	void clearAliases()
88 	{
89 		KviKvsAliasManager::instance()->clear();
90 	}
91 
loadAppEvents(const QString & szFileName)92 	void loadAppEvents(const QString & szFileName)
93 	{
94 		KviKvsEventManager::instance()->loadAppEvents(szFileName);
95 	}
96 
saveAppEvents(const QString & szFileName)97 	void saveAppEvents(const QString & szFileName)
98 	{
99 		KviKvsEventManager::instance()->saveAppEvents(szFileName);
100 	}
101 
clearAppEvents()102 	void clearAppEvents()
103 	{
104 		KviKvsEventManager::instance()->removeAllScriptAppHandlers();
105 	}
106 
loadRawEvents(const QString & szFileName)107 	void loadRawEvents(const QString & szFileName)
108 	{
109 		KviKvsEventManager::instance()->loadRawEvents(szFileName);
110 	}
111 
saveRawEvents(const QString & szFileName)112 	void saveRawEvents(const QString & szFileName)
113 	{
114 		KviKvsEventManager::instance()->saveRawEvents(szFileName);
115 	}
116 
clearRawEvents()117 	void clearRawEvents()
118 	{
119 		KviKvsEventManager::instance()->removeAllScriptRawHandlers();
120 	}
121 
loadScriptAddons(const QString & szFileName)122 	void loadScriptAddons(const QString & szFileName)
123 	{
124 		KviKvsScriptAddonManager::instance()->load(szFileName);
125 	}
126 
saveScriptAddons(const QString & szFileName)127 	void saveScriptAddons(const QString & szFileName)
128 	{
129 		KviKvsScriptAddonManager::instance()->save(szFileName);
130 	}
131 
clearScriptAddons()132 	void clearScriptAddons()
133 	{
134 		KviKvsScriptAddonManager::instance()->clear();
135 	}
136 
flushUserClasses()137 	void flushUserClasses()
138 	{
139 		KviKvsKernel::instance()->objectController()->flushUserClasses();
140 	}
141 };
142