00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef Fl_Plugin_H
00023 # define Fl_Plugin_H
00024
00025 # include "Fl_Preferences.H"
00026
00027
00061 class FL_EXPORT Fl_Plugin {
00062 Fl_Preferences::ID id;
00063 public:
00064 Fl_Plugin(const char *klass, const char *name);
00065 virtual ~Fl_Plugin();
00066 };
00067
00068
00073 class FL_EXPORT Fl_Plugin_Manager : public Fl_Preferences {
00074 public:
00075 Fl_Plugin_Manager(const char *klass);
00076 ~Fl_Plugin_Manager();
00077
00080 int plugins() { return groups(); }
00081 Fl_Plugin *plugin(int index);
00082 Fl_Plugin *plugin(const char *name);
00083 Fl_Preferences::ID addPlugin(const char *name, Fl_Plugin *plugin);
00084
00085 static void removePlugin(Fl_Preferences::ID id);
00086 static int load(const char *filename);
00087 static int loadAll(const char *filepath, const char *pattern=0);
00088 };
00089
00090
00091 #endif // !Fl_Preferences_H
00092
00093
00094
00095