426 lines
12 KiB
JSON
426 lines
12 KiB
JSON
{
|
|
"schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"title": "KDDockWidgets layout JSON schema",
|
|
"type": "object",
|
|
"required": [
|
|
"allDockWidgets",
|
|
"closedDockWidgets",
|
|
"floatingWindows",
|
|
"mainWindows",
|
|
"screenInfo",
|
|
"serializationVersion"
|
|
],
|
|
"definitions": {
|
|
"geometry": {
|
|
"type": "object",
|
|
"required": [
|
|
"x",
|
|
"y",
|
|
"width",
|
|
"height"
|
|
],
|
|
"properties": {
|
|
"x": {
|
|
"type": "integer"
|
|
},
|
|
"y": {
|
|
"type": "integer"
|
|
},
|
|
"width": {
|
|
"type": "integer"
|
|
},
|
|
"height": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"size": {
|
|
"type": "object",
|
|
"required": [
|
|
"width",
|
|
"height"
|
|
],
|
|
"properties": {
|
|
"width": {
|
|
"type": "integer"
|
|
},
|
|
"height": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"SideBarLocation": {
|
|
"type": "integer",
|
|
"enum": [
|
|
0,
|
|
1,
|
|
2,
|
|
3,
|
|
4,
|
|
5
|
|
]
|
|
},
|
|
"lastOverlayedGeometry": {
|
|
"description": "this could have been an object instead of array",
|
|
"type": "array",
|
|
"prefixItems": [
|
|
{
|
|
"$ref": "#/definitions/SideBarLocation"
|
|
},
|
|
{
|
|
"$ref": "#/definitions/geometry"
|
|
}
|
|
],
|
|
"minItems": 2,
|
|
"maxItems": 2
|
|
},
|
|
"placeholder": {
|
|
"type": "object",
|
|
"required": [
|
|
"isFloatingWindow",
|
|
"itemIndex"
|
|
],
|
|
"properties": {
|
|
"isFloatingWindow": {
|
|
"type": "boolean"
|
|
},
|
|
"itemIndex": {
|
|
"type": "integer",
|
|
"minimum": -1
|
|
},
|
|
"mainWindowUniqueName": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"screen": {
|
|
"type": "object",
|
|
"properties": {
|
|
"devicePixelRatio": {
|
|
"type": "number"
|
|
},
|
|
"index": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"geometry": {
|
|
"$ref": "#/definitions/geometry"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"index",
|
|
"geometry",
|
|
"devicePixelRatio"
|
|
]
|
|
},
|
|
"layoutItem": {
|
|
"type": "object",
|
|
"description": "An item is a recursive container. It maps to C++ Item and ItemContainer",
|
|
"required": [
|
|
"isContainer",
|
|
"isVisible",
|
|
"objectName",
|
|
"sizingInfo"
|
|
],
|
|
"properties": {
|
|
"children": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/layoutItem"
|
|
}
|
|
},
|
|
"isContainer": {
|
|
"type": "boolean"
|
|
},
|
|
"isVisible": {
|
|
"type": "boolean"
|
|
},
|
|
"objectName": {
|
|
"type": "string"
|
|
},
|
|
"orientation": {
|
|
"type": "integer",
|
|
"enum": [
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
"sizingInfo": {
|
|
"type": "object",
|
|
"required": [
|
|
"geometry",
|
|
"minSize"
|
|
],
|
|
"properties": {
|
|
"geometry": {
|
|
"$ref": "#/definitions/geometry"
|
|
},
|
|
"maxSize": {
|
|
"$ref": "#/definitions/size"
|
|
},
|
|
"minSize": {
|
|
"$ref": "#/definitions/size"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"dockwidget": {
|
|
"type": "object",
|
|
"required": [
|
|
"lastPosition",
|
|
"uniqueName"
|
|
],
|
|
"properties": {
|
|
"uniqueName": {
|
|
"type": "string"
|
|
},
|
|
"lastPosition": {
|
|
"type": "object",
|
|
"required": [
|
|
"lastFloatingGeometry",
|
|
"placeholders",
|
|
"tabIndex",
|
|
"wasFloating"
|
|
],
|
|
"properties": {
|
|
"wasFloating": {
|
|
"type": "boolean"
|
|
},
|
|
"tabIndex": {
|
|
"type": "integer",
|
|
"minimum": -1
|
|
},
|
|
"lastFloatingGeometry": {
|
|
"$ref": "#/definitions/geometry"
|
|
},
|
|
"lastOverlayedGeometries": {
|
|
"types": [
|
|
null,
|
|
"array"
|
|
],
|
|
"items": {
|
|
"$ref": "#/definitions/lastOverlayedGeometry"
|
|
}
|
|
},
|
|
"placeholders": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/placeholder"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"group": {
|
|
"type": "object",
|
|
"required": [
|
|
"currentTabIndex",
|
|
"dockWidgets",
|
|
"geometry",
|
|
"id",
|
|
"isNull",
|
|
"objectName",
|
|
"options"
|
|
],
|
|
"properties": {
|
|
"currentTabIndex": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"dockWidgets": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"geometry": {
|
|
"$ref": "#/definitions/geometry"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"isNull": {
|
|
"type": "boolean"
|
|
},
|
|
"mainWindowUniqueName": {
|
|
"type": "string"
|
|
},
|
|
"objectName": {
|
|
"type": "string"
|
|
},
|
|
"options": {
|
|
"type": "integer",
|
|
"enum": [
|
|
0,
|
|
1,
|
|
2,
|
|
4,
|
|
8
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"mainWindow": {
|
|
"type": "object",
|
|
"required": [
|
|
"geometry",
|
|
"isVisible",
|
|
"multiSplitterLayout",
|
|
"options",
|
|
"screenIndex",
|
|
"screenSize",
|
|
"uniqueName"
|
|
],
|
|
"properties": {
|
|
"affinities": {
|
|
"type": [
|
|
"null",
|
|
"array"
|
|
],
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"geometry": {
|
|
"$ref": "#/definitions/geometry"
|
|
},
|
|
"isVisible": {
|
|
"type": "boolean"
|
|
},
|
|
"multiSplitterLayout": {
|
|
"$ref": "#/definitions/multiSplitterLayout"
|
|
},
|
|
"normalGeometry": {
|
|
"$ref": "#/definitions/geometry"
|
|
},
|
|
"options": {
|
|
"type": "integer",
|
|
"enum": [
|
|
0,
|
|
1,
|
|
2,
|
|
5
|
|
]
|
|
},
|
|
"screenIndex": {
|
|
"type": "integer",
|
|
"minimum": -1
|
|
},
|
|
"screenSize": {
|
|
"$ref": "#/definitions/size"
|
|
},
|
|
"uniqueName": {
|
|
"type": "string"
|
|
},
|
|
"windowState": {
|
|
"type": "integer",
|
|
"enum": [
|
|
0,
|
|
1,
|
|
2,
|
|
4
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"floatingWindow": {
|
|
"type": "object",
|
|
"required": [
|
|
"geometry",
|
|
"multiSplitterLayout",
|
|
"isVisible",
|
|
"parentIndex",
|
|
"screenIndex",
|
|
"screenSize"
|
|
],
|
|
"properties": {
|
|
"geometry": {
|
|
"$ref": "#/definitions/geometry"
|
|
},
|
|
"isVisible": {
|
|
"type": "boolean"
|
|
},
|
|
"parentIndex": {
|
|
"type": "integer",
|
|
"minimum": -1
|
|
},
|
|
"screenIndex": {
|
|
"type": "integer",
|
|
"minimum": -1
|
|
},
|
|
"screenSize": {
|
|
"$ref": "#/definitions/size"
|
|
},
|
|
"multiSplitterLayout": {
|
|
"$ref": "#/definitions/multiSplitterLayout"
|
|
}
|
|
}
|
|
},
|
|
"multiSplitterLayout": {
|
|
"type": "object",
|
|
"required": [
|
|
"frames",
|
|
"layout"
|
|
],
|
|
"properties": {
|
|
"frames": {
|
|
"type": "object",
|
|
"patternProperties": {
|
|
"^[0-9]+$": {
|
|
"$ref": "#/definitions/group"
|
|
}
|
|
}
|
|
},
|
|
"layout": {
|
|
"$ref": "#/definitions/layoutItem"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"properties": {
|
|
"serializationVersion": {
|
|
"type": "integer",
|
|
"enum": [
|
|
3
|
|
]
|
|
},
|
|
"screenInfo": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/screen"
|
|
}
|
|
},
|
|
"closedDockWidgets": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"uniqueItems": true
|
|
},
|
|
"allDockWidgets": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/dockwidget"
|
|
}
|
|
},
|
|
"floatingWindows": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/floatingWindow"
|
|
}
|
|
},
|
|
"mainWindows": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/mainWindow"
|
|
}
|
|
}
|
|
}
|
|
}
|