mirror of
https://github.com/nasa/openmct.git
synced 2025-06-19 15:43:48 +00:00
Merge pull request #1371 from nasa/plugins-1248
[Plugins] Expose plugin functions
This commit is contained in:
20
API.md
20
API.md
@ -265,6 +265,26 @@ openmct.install(myPlugin);
|
|||||||
|
|
||||||
The plugin will be invoked to configure Open MCT before it is started.
|
The plugin will be invoked to configure Open MCT before it is started.
|
||||||
|
|
||||||
|
### Included Plugins
|
||||||
|
|
||||||
|
Open MCT is packaged along with a few general-purpose plugins:
|
||||||
|
|
||||||
|
* `openmct.plugins.localStorage` provides persistence of user-created
|
||||||
|
objects in browser-local storage. This is particularly useful in
|
||||||
|
development environments.
|
||||||
|
* `openmct.plugins.myItems` adds a top-level folder named "My Items"
|
||||||
|
when the application is first started, providing a place for a
|
||||||
|
user to store created items.
|
||||||
|
|
||||||
|
Generally, you will want to either install these plugins, or install
|
||||||
|
different plugins that provide persistence and an initial folder
|
||||||
|
hierarchy. Installation is as described [above](#installing-plugins):
|
||||||
|
|
||||||
|
```
|
||||||
|
openmct.install(openmct.plugins.localStorage);
|
||||||
|
openmct.install(openmct.plugins.myItems);
|
||||||
|
```
|
||||||
|
|
||||||
### Writing Plugins
|
### Writing Plugins
|
||||||
|
|
||||||
Plugins configure Open MCT, and should utilize the
|
Plugins configure Open MCT, and should utilize the
|
||||||
|
@ -27,6 +27,7 @@ define([
|
|||||||
'./api/api',
|
'./api/api',
|
||||||
'./selection/Selection',
|
'./selection/Selection',
|
||||||
'./api/objects/object-utils',
|
'./api/objects/object-utils',
|
||||||
|
'./plugins/plugins',
|
||||||
'./ui/ViewRegistry'
|
'./ui/ViewRegistry'
|
||||||
], function (
|
], function (
|
||||||
EventEmitter,
|
EventEmitter,
|
||||||
@ -35,6 +36,7 @@ define([
|
|||||||
api,
|
api,
|
||||||
Selection,
|
Selection,
|
||||||
objectUtils,
|
objectUtils,
|
||||||
|
plugins,
|
||||||
ViewRegistry
|
ViewRegistry
|
||||||
) {
|
) {
|
||||||
/**
|
/**
|
||||||
@ -278,5 +280,7 @@ define([
|
|||||||
plugin(this);
|
plugin(this);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
MCT.prototype.plugins = plugins;
|
||||||
|
|
||||||
return MCT;
|
return MCT;
|
||||||
});
|
});
|
||||||
|
33
src/plugins/plugins.js
Normal file
33
src/plugins/plugins.js
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
/*****************************************************************************
|
||||||
|
* Open MCT, Copyright (c) 2014-2016, United States Government
|
||||||
|
* as represented by the Administrator of the National Aeronautics and Space
|
||||||
|
* Administration. All rights reserved.
|
||||||
|
*
|
||||||
|
* Open MCT is licensed under the Apache License, Version 2.0 (the
|
||||||
|
* "License"); you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0.
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||||
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||||
|
* License for the specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*
|
||||||
|
* Open MCT includes source code licensed under additional open source
|
||||||
|
* licenses. See the Open Source Licenses file (LICENSES.md) included with
|
||||||
|
* this source code distribution or the Licensing information page available
|
||||||
|
* at runtime from the About dialog for additional information.
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
define([
|
||||||
|
], function () {
|
||||||
|
return {
|
||||||
|
localStorage: function (openmct) {
|
||||||
|
openmct.legacyRegistry.enable('platform/persistence/local');
|
||||||
|
},
|
||||||
|
myItems: function (openmct) {
|
||||||
|
openmct.legacyRegistry.enable('platform/features/my-items');
|
||||||
|
}
|
||||||
|
};
|
||||||
|
});
|
Reference in New Issue
Block a user