Welcome to mirror list, hosted at ThFree Co, Russian Federation.

Toolbox.qml « qml « resources « Toolbox « plugins - github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: b67d175194477c28c5ea335c4e2eafb9986a66ce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
// Copyright (c) 2018 Ultimaker B.V.
// Toolbox is released under the terms of the LGPLv3 or higher.

// Main window for the Toolbox

import QtQuick 2.2
import QtQuick.Dialogs 1.1
import QtQuick.Window 2.2
import UM 1.1 as UM

import "./pages"
import "./dialogs"
import "./components"

Window
{
    id: base
    property var selection: null
    title: catalog.i18nc("@title", "Marketplace")
    modality: Qt.ApplicationModal
    flags: Qt.Dialog | Qt.CustomizeWindowHint | Qt.WindowTitleHint | Qt.WindowCloseButtonHint

    width: UM.Theme.getSize("large_popup_dialog").width
    height:  UM.Theme.getSize("large_popup_dialog").height
    minimumWidth: width
    maximumWidth: minimumWidth
    minimumHeight: height
    maximumHeight: minimumHeight
    color: UM.Theme.getColor("main_background")
    UM.I18nCatalog
    {
        id: catalog
        name: "cura"
    }
    Item
    {
        anchors.fill: parent

        WelcomePage
        {
            visible: toolbox.viewPage === "welcome"
        }

        ToolboxHeader
        {
            id: header
            visible: toolbox.viewPage !== "welcome"
        }

        Item
        {
            id: mainView
            width: parent.width
            z: parent.z - 1
            anchors
            {
                top: header.bottom
                bottom: footer.top
            }
            // TODO: This could be improved using viewFilter instead of viewCategory
            ToolboxLoadingPage
            {
                id: viewLoading
                visible: toolbox.viewCategory !== "installed" && toolbox.viewPage === "loading"
            }
            ToolboxErrorPage
            {
                id: viewErrored
                visible: toolbox.viewCategory !== "installed" && toolbox.viewPage === "errored"
            }
            ToolboxDownloadsPage
            {
                id: viewDownloads
                visible: toolbox.viewCategory !== "installed" && toolbox.viewPage === "overview"
            }
            ToolboxDetailPage
            {
                id: viewDetail
                visible: toolbox.viewCategory !== "installed" && toolbox.viewPage === "detail"
            }
            ToolboxAuthorPage
            {
                id: viewAuthor
                visible: toolbox.viewCategory !== "installed" && toolbox.viewPage === "author"
            }
            ToolboxInstalledPage
            {
                id: installedPluginList
                visible: toolbox.viewCategory === "installed"
            }
        }

        ToolboxFooter
        {
            id: footer
            visible: toolbox.restartRequired
            height: visible ? UM.Theme.getSize("toolbox_footer").height : 0
        }

        Connections
        {
            target: toolbox
            function onShowLicenseDialog() { licenseDialog.show() }
            function onCloseLicenseDialog() { licenseDialog.close() }
        }
        
        ToolboxLicenseDialog
        {
            id: licenseDialog
        }
    }
}