Common Application Framework Interfaces
- Last UpdatedNov 10, 2025
- 2 minute read
The Common Application Framework (CAF) is an extensible framework which provides the .NET programmer with access to various services which support both application development and customization. The foundations of the CAF are provided by the two interface assemblies:
-
Aveva.ApplicationFramework.dll
-
Aveva.ApplicationFramework.Presentation.dll
These interfaces provide the following major services:
Namespace: Aveva.ApplicationFramework
-
AddinManager: This class provides properties and methods for the management of ApplicationFramework Addins.
-
ServiceManager: This class defines an interface which provides a means by which the various components of the ApplicationFramework can publish their services. The ServiceManager also acts as a service provider responding to requests for services. It can also be used by applications and application addins to publish additional services.
-
SettingsManager: This class provides properties and methods for the management of application settings which are stored in settings groups which are persisted between sessions.
Namespace: Aveva.ApplicationFramework.Presentation
-
CommandBarManager: This provides access to the menus and commandbars of a CAF based application. It also has methods to load the definition of menus and commandbars from User Interface customization (UIC) files.
-
CommandManager: This class defines an interface to provide the presentation framework client with a mechanism for the management of command objects which can be associated with Tools or other User interface objects. The action of invoking a tool (e.g clicking a ButtonTool) will cause the execution of the associated command object. It is possible to associated the same command object with a number of different user interface objects (for example, ButtonTool on a Menu and a LinkLabel) thereby allowing for the centralization of these user interface objects action within a command. Various state-like properties of a command (for example, enabled/checked) would also be reflected in all user interface objects associated with a command. For example, disabling a command would cause all associated user interface objects to be disabled. User interface objects are associated with a command via a CommandExecutor derived class.
-
ResourceManager: This class defines an interface to provide Addins with a simplified mechanism to access localizable resources.The ResourceManager provides a number of methods which allows an addin to then access the various types of resources (string, image, cursor, icon ) which resource files may contain.
-
WindowManager: This provides access to the main application window, the StatusBar and a collection of MDI and docked windows. It also provides the addin writer with methods to create MDI and docked windows to host user controls.