00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef GCU_APPLICATION_H
00026 #define GCU_APPLICATION_H
00027
00028 #include <string>
00029 #include <gtk/gtkwindow.h>
00030
00031 using namespace std;
00032
00033 namespace gcu {
00034
00035 class Document;
00036
00040 class Application
00041 {
00042 public:
00054 Application (string name, string datadir = DATADIR, char const *help_name = NULL, char const *icon_name = NULL);
00055 virtual ~Application ();
00056
00065 void OnHelp (string s = "");
00069 bool HasHelp ();
00073 string &GetName () {return Name;}
00074
00078 virtual GtkWindow * GetWindow () {return NULL;}
00079
00093 virtual bool FileProcess (const gchar* filename, const gchar* mime_type, bool bSave, GtkWindow *window, Document *pDoc = NULL)
00094 {return false;}
00095
00099 char const* GetCurDir () {return CurDir;}
00100
00104 void SetCurDir (char const* dir);
00105
00106 private:
00107 string Name;
00108 string HelpBrowser;
00109 string HelpFilename;
00110 char *CurDir;
00111 };
00112
00113 }
00114
00115 #endif // GCU_APPLICATION_H