FARPlus is a library of C++ classes greatly facilitating development of FAR Manager plugins. FARPlus has already been tested in action during the development of several plugins, and the features it provides satisfy the real needs of plugin developers.
FARPlus solves the following problems:
Achieving maximum convenience and type safety when calling FAR service functions. You will no longer need to construct structures for passing parameters manually, or to use type-casts when calling the service functions.
Automatic dialog management. You will just need to specify which controls you want to see in a dialog, and FARPlus will do most of the work laying out those controls and automatically select the appropriate dialog size. Besides that, since dialog controls are referenced through C++ class instances and not through numeric indexes, code readability is greatly increased. This also removes the possibility of bugs appearing when controls are inserted into the middle of a dialog, and greatly facilitates creating dynamic dialogs.
Minimizing plugin size. When compiling plugins with Visual C++, FARPlus automatically provides a stripped-down version of the run-time library. FARPlus also includes a set of lightweight utility classes (FarString, FarArray, FarFile) that can be used instead of corresponding functions and classes in the RTL, STL or MFC, requiring much more space in the plugin DLL.
Status
FARPlus is currently under development and doesn't yet cover the entire FAR 1.70 API. However, the most important functions are already supported. If you find that some piece of functionality that you need is not yet implemented, feel free to ask developers to implement it, or to implement it yourself and send a patch.
The documentation on FARPlus is also far from finished, so in order to get information on FARPlus usage, you will have to refer to the source code of FARPlus itself and its example plugins.
Currently FARPlus supports the Visual C++ 6.0, Visual C++ .NET, Borland C++ 5.02 and Borland C++ 5.5 compilers. Support for other compilers can be added.
To compile FARPlus, you will need the file plugin.hpp
from the
latest released version of FAR (1.70 beta 5). However, plugins
using FARPlus can also work on FAR 1.65 or earlier FAR versions.
Documentation
Currently, Russian language documentation on the following classes is available:
Examples
The power of FARPlus is best illustrated by examples. Currently there are four example plugins available:
Download
The current stable release of FARPlus (20020905) can be downloaded here, and experimental unstable version with custom Dialog API support — here.
You can also view the CVS repository containing the most up-to-date version of the FARPlus source code. The Web interface to the CVS is here.