Warning, /maui/strike/src/views/widgets/ProjectConfigDialog.qml is written in an unsupported language. File is not indexed.
0001 import QtQuick 2.14 0002 import QtQuick.Controls 2.14 0003 import QtQuick.Layouts 1.3 0004 0005 import org.mauikit.controls 1.3 as Maui 0006 import org.slike.strike 1.0 as Strike 0007 0008 Maui.PopupPage 0009 { 0010 id: control 0011 0012 title: i18n("Configure") 0013 headBar.visible: false 0014 closeButtonVisible: false 0015 persistent: true 0016 0017 actions: [ 0018 Action 0019 { 0020 text: _stackView.depth > 1 ? i18n("Go back") : i18n ("Abort") 0021 0022 onTriggered: 0023 { 0024 switch(_stackView.depth) 0025 { 0026 case 1: control.close() 0027 break 0028 case 2: _stackView.pop() 0029 break 0030 } 0031 } 0032 }, 0033 0034 Action 0035 { 0036 text: stepLabel(_stackView.depth) 0037 0038 onTriggered: 0039 { 0040 switch(_stackView.depth) 0041 { 0042 case 1: 0043 _project.configure() 0044 _stackView.push(_step2Component) 0045 break 0046 case 2: control.close() 0047 break 0048 } 0049 } 0050 } 0051 ] 0052 0053 stack: StackView 0054 { 0055 id: _stackView 0056 0057 Layout.fillHeight: true 0058 Layout.fillWidth: true 0059 Layout.margins: Maui.Style.space.big 0060 0061 initialItem: Item 0062 { 0063 ColumnLayout 0064 { 0065 anchors.centerIn: parent 0066 width: parent.width 0067 spacing: Maui.Style.space.medium 0068 0069 Maui.Holder 0070 { 0071 Layout.fillWidth: true 0072 Layout.preferredHeight: 160 0073 Layout.alignment: Qt.AlignCenter 0074 title: i18n("Configure") 0075 body: i18n("Set the preferences to start hacking!") 0076 emoji: "alienarena" 0077 isMask: false 0078 emojiSize: 64 0079 } 0080 0081 0082 Maui.ListItemTemplate 0083 { 0084 Layout.fillWidth: true 0085 label1.text: i18n("Build Directory") 0086 label2.text: i18n("Pick a build directory or keep the default one") 0087 } 0088 0089 0090 TextField 0091 { 0092 Layout.fillWidth: true 0093 placeholderText: i18n("Build directory path") 0094 text: _project.preferences.buildDir 0095 } 0096 0097 // Maui.ListItemTemplate 0098 // { 0099 // Layout.fillWidth: true 0100 // label1.text: i18n("Install Prefix") 0101 // label2.text: i18n("Where do you want to install the project") 0102 // leftLabels.data: TextField 0103 // { 0104 // Layout.fillWidth: true 0105 // placeholderText: i18n("Prefix path") 0106 // text: _project.preferences.installPrefix 0107 // } 0108 // } 0109 } 0110 } 0111 0112 Component 0113 { 0114 id: _step2Component 0115 0116 Item 0117 { 0118 ColumnLayout 0119 { 0120 anchors.centerIn: parent 0121 width: parent.width 0122 spacing: Maui.Style.space.medium 0123 0124 Maui.Holder 0125 { 0126 Layout.fillWidth: true 0127 Layout.preferredHeight: 160 0128 Layout.alignment: Qt.AlignCenter 0129 isMask: false 0130 title: i18n("Project") 0131 body: i18n("Select the target project") 0132 emoji: _project.projectLogo 0133 emojiSize: 64 0134 } 0135 0136 Item 0137 { 0138 Layout.fillWidth: true 0139 Layout.preferredHeight: 120 0140 0141 BusyIndicator 0142 { 0143 anchors.centerIn: parent 0144 running: _project.manager.status === Strike.Manager.Loading 0145 } 0146 0147 Maui.ListBrowser 0148 { 0149 id: _projectsListView 0150 height: 100 0151 width: parent.width 0152 anchors.centerIn: parent 0153 model: _project.manager.projectsModel 0154 spacing: Maui.Style.space.medium 0155 delegate: Maui.GridBrowserDelegate 0156 { 0157 isCurrentItem: ListView.isCurrentItem 0158 checked: _cmakeProject.title === model.title 0159 anchors.verticalCenter: parent.verticalCenter 0160 width: 64 0161 height: 80 0162 label1.text: model.title 0163 iconSource: "run-build" 0164 0165 onClicked: 0166 { 0167 _projectsListView.currentIndex = index 0168 _cmakeProject.setData(model.data) 0169 } 0170 } 0171 } 0172 } 0173 } 0174 } 0175 } 0176 } 0177 0178 function stepLabel(index) 0179 { 0180 switch(index) 0181 { 0182 case 1: return i18n("Configure") 0183 case 2: return i18n("Finish") 0184 } 0185 } 0186 }