FLTK 1.3.8: Fl_Plugin.H Source File

FLTK 1.3.8

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 {
62 Fl_Preferences::ID id;
63public:
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 {
74public:
75 Fl_Plugin_Manager(const char *klass);
76 ~Fl_Plugin_Manager();
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//
Fl_Plugin_Manager
Fl_Plugin_Manager manages link-time and run-time plugin binaries.
Definition: Fl_Plugin.H:73
Fl_Plugin_Manager::plugins
int plugins()
Return the number of plugins in the klass.
Definition: Fl_Plugin.H:80
Fl_Plugin
Fl_Plugin allows link-time and run-time integration of binary modules.
Definition: Fl_Plugin.H:61
Fl_Preferences
Fl_Preferences provides methods to store user settings between application starts.
Definition: Fl_Preferences.H:60
Fl_Preferences::ID
void * ID
Every Fl_Preferences-Group has a uniqe ID.
Definition: Fl_Preferences.H:78
- Copyright © 1998-2021 by Bill Spitzak and others.