updates.
[silc.git] / apps / silcer / src / silcerapp.hh
1 /*
2
3   silcerapp.hh 
4
5   Author: Pekka Riikonen <priikone@silcnet.org>
6
7   Copyright (C) 2001 Pekka Riikonen
8
9   This program is free software; you can redistribute it and/or modify
10   it under the terms of the GNU General Public License as published by
11   the Free Software Foundation; version 2 of the License.
12
13   This program is distributed in the hope that it will be useful,
14   but WITHOUT ANY WARRANTY; without even the implied warranty of
15   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16   GNU General Public License for more details.
17
18 */
19
20 #ifndef SILCERAPP_HH
21 #define SILCERAPP_HH
22
23 #include "SilcerMainDlg.hh"
24 #include "silcer_gladehelper.hh"
25
26 extern "C" {
27 #include "silcincludes.h"
28 #include "clientlibincludes.h"
29 }
30
31 #include <fstream>
32 #include <glade/glade-xml.h>
33 #include <sigc++/object_slot.h>
34 #include <gnome--/client.h>
35 #include <gnome--/main.h>
36
37 // Forward declarations
38 class SilcerApp;
39
40 // Global pointer for the application
41 extern SilcerApp *Silcer_App;
42
43 // Global pointer to the SILC Client Library object
44 extern SilcClient silc_client;
45 extern SilcClientConnection silc_client_conn;
46
47 // Silcer class
48 class SilcerApp : public SigC::Object
49 {
50 public:
51   SilcerApp(int argc, char **argv);
52   ~SilcerApp();
53
54   SilcerMainDlg *_MainDialog;
55
56   void run();
57   void quit();
58   GladeXML* load_resource(const char *name);
59   GladeXML* load_resource(const char *name, const char *filename);
60
61 protected:
62   gint silc_scheduler();
63
64 private:
65   Gnome::Main _GnomeApp;
66   Gnome::Client *_gclient;
67   string _SourceDir;
68   string _pix_path;
69 };
70
71 #endif /* SILCERAPP_HH */