FLTK 1.3.3
Fl_Plugin.H
1 //
2 // "$Id: Fl_Plugin.H 6995 2010-01-12 08:48:55Z matt $"
3 //
4 // A Plugin system for FLTK, implemented in Fl_Preferences.cxx.
5 //
6 // Copyright 2002-2010 by Matthias Melcher.
7 //
8 // This library is free software. Distribution and use rights are outlined in
9 // the file "COPYING" which should have been included with this file. If this
10 // file is missing or damaged, see the license at:
11 //
12 // http://www.fltk.org/COPYING.php
13 //
14 // Please report all bugs and problems on the following page:
15 //
16 // http://www.fltk.org/str.php
17 //
18 
19 /* \file
20  Fl_Plugin class . */
21 
22 #ifndef Fl_Plugin_H
23 # define Fl_Plugin_H
24 
25 # include "Fl_Preferences.H"
26 
27 
61 class FL_EXPORT Fl_Plugin {
63 public:
64  Fl_Plugin(const char *klass, const char *name);
65  virtual ~Fl_Plugin();
66 };
67 
68 
73 class FL_EXPORT Fl_Plugin_Manager : public Fl_Preferences {
74 public:
75  Fl_Plugin_Manager(const char *klass);
77 
80  int plugins() { return groups(); }
81  Fl_Plugin *plugin(int index);
82  Fl_Plugin *plugin(const char *name);
83  Fl_Preferences::ID addPlugin(const char *name, Fl_Plugin *plugin);
84 
85  static void removePlugin(Fl_Preferences::ID id);
86  static int load(const char *filename);
87  static int loadAll(const char *filepath, const char *pattern=0);
88 };
89 
90 
91 #endif // !Fl_Preferences_H
92 
93 //
94 // End of "$Id: Fl_Preferences.H 6995 2010-01-12 08:48:55Z matt $".
95 //
int groups()
Returns the number of groups that are contained within a group.
Definition: Fl_Preferences.cxx:387
int plugins()
Return the number of plugins in the klass.
Definition: Fl_Plugin.H:80
Fl_Preferences provides methods to store user settings between application starts.
Definition: Fl_Preferences.H:60
Fl_Plugin allows link-time and run-time integration of binary modules.
Definition: Fl_Plugin.H:61
void * ID
Every Fl_Preferences-Group has a uniqe ID.
Definition: Fl_Preferences.H:78
Fl_Plugin_Manager manages link-time and run-time plugin binaries.
Definition: Fl_Plugin.H:73