// Copyright (C) 2022 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only import QtQuick import QtQuick.Controls Item { id: rootItem property bool designMode: !designModeToggle.toggled property real designModeAnimated: 1.0 - designModeToggle.toggledAnimated function setDesignMode(mode) { designModeToggle.toggled = !mode; } function setDesignModeInstantly(mode) { mainView.switchDesignModeInstantly = true; designModeToggle.toggled = !mode; mainView.switchDesignModeInstantly = false; } Rectangle { width: parent.width height: 50 color: backgroundColor1 } CustomModeToggle { id: designModeToggle anchors.left: parent.left anchors.leftMargin: 5 anchors.verticalCenter: parent.verticalCenter height: parent.height - 10 textOff: "CODE" textOn: "DESIGN" description: rootItem.designMode ? "Switch to Code mode" : "Switch to Design mode" animatedToggle: !mainView.switchDesignModeInstantly } Item { id: designModeToolbar anchors.left: designModeToggle.right anchors.leftMargin: 10 anchors.right: parent.right height: parent.height opacity: designModeAnimated visible: opacity CustomIconButton { id: alignHorizontallyButton anchors.verticalCenter: parent.verticalCenter height: parent.height * 0.6 width: height icon: "images/icon_layout_nodes.png" description: "Align nodes horizontally" onClicked: { nodeViewItem.layoutNodes(false); } } CustomIconButton { id: distributeVerticallyButton anchors.verticalCenter: parent.verticalCenter anchors.left: alignHorizontallyButton.right height: parent.height * 0.6 width: height icon: "images/icon_distribute_nodes.png" description: "Distribute nodes vertically" onClicked: { nodeViewItem.layoutNodes(true); } } } Item { id: codeModeToolbar anchors.left: designModeToggle.right anchors.leftMargin: 10 anchors.right: parent.right height: parent.height opacity: 1.0 - designModeAnimated visible: opacity ComboBox { anchors.verticalCenter: parent.verticalCenter height: 40 width: parent.width * 0.5 model: effectManager.nodeView.codeSelectorModel currentIndex: effectManager.nodeView.codeSelectorIndex onActivated: { var nodeId = effectManager.nodeView.getNodeIdWithName(currentText); effectManager.nodeView.selectSingleNode(nodeId); } } } }