Linux multi-monitor fullscreen support
[ryzomcore.git] / studio / src / pm_watcher.h
blobee0e8b1a238292f363085af651f65face73bb829
1 // Ryzom Core - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This source file has been modified by the following contributors:
5 // Copyright (C) 2014 Laszlo KIS-ADAM (dfighter) <dfighter1985@gmail.com>
6 //
7 // This program is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU Affero General Public License as
9 // published by the Free Software Foundation, either version 3 of the
10 // License, or (at your option) any later version.
12 // This program is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU Affero General Public License for more details.
17 // You should have received a copy of the GNU Affero General Public License
18 // along with this program. If not, see <http://www.gnu.org/licenses/>.
21 #ifndef PM_WATCHER_H
22 #define PM_WATCHER_H
24 #include <QObject>
26 namespace ExtensionSystem
28 class IPluginManager;
31 class SplashScreen;
32 class PluginManager;
34 class PluginManagerWatcher : public QObject
36 Q_OBJECT
37 public:
39 PluginManagerWatcher(){
40 sp = NULL;
41 pm = NULL;
42 pluginCount = 0;
45 ~PluginManagerWatcher(){
46 sp = NULL;
47 pm = NULL;
50 void setSplashScreen( SplashScreen *s ){ sp = s; }
51 void setPluginManager( ExtensionSystem::IPluginManager *m ){ pm = m; }
53 void connect();
54 void disconnect();
56 private Q_SLOTS:
57 void onPluginLoading( const char *plugin );
58 void onPluginInitializing( const char *plugin );
59 void onPluginStarting( const char *plugin );
61 void onPluginsLoaded();
62 void onPluginsInitialized();
63 void onPluginsStarted();
65 void onPluginCount( int count );
67 private:
68 SplashScreen *sp;
69 ExtensionSystem::IPluginManager *pm;
70 int pluginCount;
74 #endif