Envision
A visual programming IDE for object-oriented languages
|
This EnvisionPlugin interface is the one that each plug-in must implement. More...
Public Member Functions | |
virtual | ~EnvisionPlugin ()=default |
virtual bool | initialize (EnvisionManager &manager)=0 |
Initializes the plug-in. More... | |
virtual void | selfTest (QString testid)=0 |
Starts the indicated self-test for this plug-in. More... | |
virtual void | unload ()=0 |
Frees up all resources allocated by this plug-in and prepares it to be unloaded. More... | |
This EnvisionPlugin interface is the one that each plug-in must implement.
The Envision core will look for this interface (via the QT plug-in framework) in each plug-in.
|
virtualdefault |
|
pure virtual |
Initializes the plug-in.
This function is called by the core system as soon as the plug-in is loaded. All initializatoin should happen within this function.
manager | The EnvisionManager object that can be used to query various aspects of the Envision system. |
Implemented in Visualization::VisualizationBasePlugin, Logger::LoggerPlugin, APIDepTest::APIDepTestPlugin, VersionControlUI::VersionControlUIPlugin, SelfTest::SelfTestPlugin, OOVisualization::OOVisualizationPlugin, OOModel::OOModelPlugin, OOInteraction::OOInteractionPlugin, OODebug::OODebugPlugin, Model::ModelBasePlugin, JavaExport::JavaExportPlugin, Interaction::InteractionBasePlugin, InformationScripting::InformationScriptingPlugin, HelloWorld::HelloWorldPlugin, FilePersistence::FilePersistencePlugin, Export::ExportPlugin, CustomMethodCall::CustomMethodCallPlugin, CppImportLight::CppImportLightPlugin, CppImport::CppImportPlugin, CppExport::CppExportPlugin, ControlFlowVisualization::ControlFlowVisualizationPlugin, ContractsLibrary::ContractsLibraryPlugin, Comments::CommentsPlugin, CodeReview::CodeReviewPlugin, and Alloy::AlloyPlugin.
|
pure virtual |
Starts the indicated self-test for this plug-in.
If the Envision system was started with a command line argument that indicates a particular plug-in should be tested, this method will be invoked for that plug-in. Optionally a particular test can be requested.
This method will only be invoked once all plug-ins are loaded.
To request that a plug-in be tested use the –test option when starting envision.
E.G. to run all tests of the File persistence module: Envision –test filepersistence
to only run the 'load' test: Envision –test filepersistence:load
testid | The string id of the test to run. If this string is empty all tests should be run. |
Implemented in Visualization::VisualizationBasePlugin, VersionControlUI::VersionControlUIPlugin, SelfTest::SelfTestPlugin, OOVisualization::OOVisualizationPlugin, OOModel::OOModelPlugin, OOInteraction::OOInteractionPlugin, OODebug::OODebugPlugin, Model::ModelBasePlugin, Logger::LoggerPlugin, JavaExport::JavaExportPlugin, Interaction::InteractionBasePlugin, InformationScripting::InformationScriptingPlugin, HelloWorld::HelloWorldPlugin, Export::ExportPlugin, CustomMethodCall::CustomMethodCallPlugin, CppImportLight::CppImportLightPlugin, CppImport::CppImportPlugin, CppExport::CppExportPlugin, ControlFlowVisualization::ControlFlowVisualizationPlugin, ContractsLibrary::ContractsLibraryPlugin, Comments::CommentsPlugin, CodeReview::CodeReviewPlugin, APIDepTest::APIDepTestPlugin, Alloy::AlloyPlugin, and FilePersistence::FilePersistencePlugin.
|
pure virtual |
Frees up all resources allocated by this plug-in and prepares it to be unloaded.
This function is called when Envision is about to exit or when a plug-in has manually been unloaded. At the time when this function is called there will be no plug-ins dependent on this one.
Implemented in Visualization::VisualizationBasePlugin, VersionControlUI::VersionControlUIPlugin, SelfTest::SelfTestPlugin, OOVisualization::OOVisualizationPlugin, OOModel::OOModelPlugin, OOInteraction::OOInteractionPlugin, OODebug::OODebugPlugin, Model::ModelBasePlugin, Logger::LoggerPlugin, JavaExport::JavaExportPlugin, Interaction::InteractionBasePlugin, InformationScripting::InformationScriptingPlugin, HelloWorld::HelloWorldPlugin, FilePersistence::FilePersistencePlugin, Export::ExportPlugin, CustomMethodCall::CustomMethodCallPlugin, CppImportLight::CppImportLightPlugin, CppImport::CppImportPlugin, CppExport::CppExportPlugin, ControlFlowVisualization::ControlFlowVisualizationPlugin, ContractsLibrary::ContractsLibraryPlugin, Comments::CommentsPlugin, CodeReview::CodeReviewPlugin, APIDepTest::APIDepTestPlugin, and Alloy::AlloyPlugin.