mirror of
https://github.com/nasa/openmct.git
synced 2024-12-23 06:52:24 +00:00
762f4d59fc
Disallow layouts in folders, WTD-1373.
277 lines
11 KiB
JSON
277 lines
11 KiB
JSON
{
|
|
"name": "Layout components.",
|
|
"description": "Plug in adding Layout capabiltiies.",
|
|
"extensions": {
|
|
"views": [
|
|
{
|
|
"key": "layout",
|
|
"name": "Display Layout",
|
|
"glyph": "L",
|
|
"type": "layout",
|
|
"templateUrl": "templates/layout.html",
|
|
"uses": [ "composition" ],
|
|
"gestures": [ "drop" ]
|
|
},
|
|
{
|
|
"key": "fixed",
|
|
"name": "Fixed Position",
|
|
"glyph": "3",
|
|
"type": "telemetry.panel",
|
|
"templateUrl": "templates/fixed.html",
|
|
"uses": [ "composition" ],
|
|
"gestures": [ "drop" ],
|
|
"toolbar": {
|
|
"sections": [
|
|
{
|
|
"items": [
|
|
{
|
|
"method": "add",
|
|
"glyph": "+",
|
|
"control": "menu-button",
|
|
"text": "Add",
|
|
"options": [
|
|
{
|
|
"name": "Box",
|
|
"glyph": "\u00E0",
|
|
"key": "fixed.box"
|
|
},
|
|
{
|
|
"name": "Line",
|
|
"glyph": "\u00E2",
|
|
"key": "fixed.line"
|
|
},
|
|
{
|
|
"name": "Text",
|
|
"glyph": "\u00E4",
|
|
"key": "fixed.text"
|
|
},
|
|
{
|
|
"name": "Image",
|
|
"glyph": "\u00E3",
|
|
"key": "fixed.image"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"items": [
|
|
{
|
|
"method": "order",
|
|
"glyph": "\u00E1",
|
|
"control": "menu-button",
|
|
"options": [
|
|
{
|
|
"name": "Move to Top",
|
|
"glyph": "^",
|
|
"key": "top"
|
|
},
|
|
{
|
|
"name": "Move Up",
|
|
"glyph": "^",
|
|
"key": "up"
|
|
},
|
|
{
|
|
"name": "Move Down",
|
|
"glyph": "v",
|
|
"key": "down"
|
|
},
|
|
{
|
|
"name": "Move to Bottom",
|
|
"glyph": "v",
|
|
"key": "bottom"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"property": "fill",
|
|
"glyph": "\u00E0",
|
|
"control": "color"
|
|
},
|
|
{
|
|
"property": "stroke",
|
|
"glyph": "\u00E2",
|
|
"control": "color"
|
|
},
|
|
{
|
|
"property": "color",
|
|
"glyph": "\u00E4",
|
|
"mandatory": true,
|
|
"control": "color"
|
|
},
|
|
{
|
|
"property": "url",
|
|
"glyph": "\u00E3",
|
|
"control": "dialog-button",
|
|
"title": "Image Properties",
|
|
"dialog": {
|
|
"control": "textfield",
|
|
"name": "Image URL",
|
|
"required": true
|
|
}
|
|
},
|
|
{
|
|
"property": "text",
|
|
"glyph": "G",
|
|
"control": "dialog-button",
|
|
"title": "Text Properties",
|
|
"dialog": {
|
|
"control": "textfield",
|
|
"name": "Text",
|
|
"required": true
|
|
}
|
|
},
|
|
{
|
|
"method": "showTitle",
|
|
"glyph": "\u00E7",
|
|
"control": "button",
|
|
"description": "Show telemetry element title."
|
|
},
|
|
{
|
|
"method": "hideTitle",
|
|
"glyph": "\u00E5",
|
|
"control": "button",
|
|
"description": "Hide telemetry element title."
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"items": [
|
|
{
|
|
"method": "remove",
|
|
"control": "button",
|
|
"glyph": "Z"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"representations": [
|
|
{
|
|
"key": "frame",
|
|
"templateUrl": "templates/frame.html"
|
|
}
|
|
],
|
|
"controllers": [
|
|
{
|
|
"key": "LayoutController",
|
|
"implementation": "LayoutController.js",
|
|
"depends": [ "$scope" ]
|
|
},
|
|
{
|
|
"key": "FixedController",
|
|
"implementation": "FixedController.js",
|
|
"depends": [
|
|
"$scope",
|
|
"$q",
|
|
"dialogService",
|
|
"telemetrySubscriber",
|
|
"telemetryFormatter"
|
|
]
|
|
}
|
|
],
|
|
"templates": [
|
|
{
|
|
"key": "fixed.telemetry",
|
|
"templateUrl": "templates/elements/telemetry.html"
|
|
},
|
|
{
|
|
"key": "fixed.box",
|
|
"templateUrl": "templates/elements/box.html"
|
|
},
|
|
{
|
|
"key": "fixed.line",
|
|
"templateUrl": "templates/elements/line.html"
|
|
},
|
|
{
|
|
"key": "fixed.text",
|
|
"templateUrl": "templates/elements/text.html"
|
|
},
|
|
{
|
|
"key": "fixed.image",
|
|
"templateUrl": "templates/elements/image.html"
|
|
}
|
|
],
|
|
"policies": [
|
|
{
|
|
"category": "composition",
|
|
"implementation": "LayoutCompositionPolicy.js"
|
|
}
|
|
],
|
|
"types": [
|
|
{
|
|
"key": "layout",
|
|
"name": "Display Layout",
|
|
"glyph": "L",
|
|
"description": "A layout in which multiple telemetry panels may be displayed.",
|
|
"features": "creation",
|
|
"model": { "composition": [] },
|
|
"properties": [
|
|
{
|
|
"name": "Layout Grid",
|
|
"control": "composite",
|
|
"pattern": "^(\\d*[1-9]\\d*)?$",
|
|
"items": [
|
|
{
|
|
"name": "Horizontal grid (px)",
|
|
"control": "textfield",
|
|
"cssclass": "l-small l-numeric"
|
|
},
|
|
{
|
|
"name": "Vertical grid (px)",
|
|
"control": "textfield",
|
|
"cssclass": "l-small l-numeric"
|
|
}
|
|
],
|
|
"key": "layoutGrid",
|
|
"conversion": "number[]"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"key": "telemetry.panel",
|
|
"name": "Telemetry Panel",
|
|
"glyph": "t",
|
|
"description": "A panel for collecting telemetry elements.",
|
|
"delegates": [ "telemetry" ],
|
|
"features": "creation",
|
|
"contains": [ { "has": "telemetry" } ],
|
|
"model": { "composition": [] },
|
|
"properties": [
|
|
{
|
|
"name": "Layout Grid",
|
|
"control": "composite",
|
|
"items": [
|
|
{
|
|
"name": "Horizontal grid (px)",
|
|
"control": "textfield",
|
|
"cssclass": "l-small l-numeric"
|
|
},
|
|
{
|
|
"name": "Vertical grid (px)",
|
|
"control": "textfield",
|
|
"cssclass": "l-small l-numeric"
|
|
}
|
|
],
|
|
"pattern": "^(\\d*[1-9]\\d*)?$",
|
|
"property": "layoutGrid",
|
|
"conversion": "number[]"
|
|
},
|
|
{
|
|
"name": "Default View",
|
|
"control": "select",
|
|
"options": [
|
|
{ "name": "Plot", "value": "plot" },
|
|
{ "name": "Scrolling", "value": "scrolling" }
|
|
],
|
|
"comment": "TODO: Infer values from type",
|
|
"key": "defaultView"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|