@@ -65,121 +65,120 @@ DccObject {
6565 }
6666 }
6767
68- Loader {
69- active: ! root .loading
70- asynchronous: true
71- sourceComponent: DccRepeater {
72- model: root .configOptions
73- delegate: Component {
74- DccObject {
75- parentName: containerItem .name
76- displayName: modelData .description
77- weight: root .weight + index + 1
78- pageType: DccObject .Editor
79- visible: headerItem .expanded
80- backgroundType: DccObject .Normal | DccObject .Hover
81- page: Loader {
82- height: 40
83- sourceComponent: {
84- switch (modelData .type ) {
85- case " Boolean" :
86- return booleanComponent
87- case " Integer" :
88- return integerComponent
89- case " String" :
90- return stringComponent
91- case " List|Key" :
92- return keyComponent
93- case " Enum" :
94- return enumComponent
95- default :
96- return null
97- }
68+ // Must be a direct child of containerItem so DccManager can register it.
69+ DccRepeater {
70+ id: optionRepeater
71+ visible: ! root .loading
72+ model: root .configOptions
73+ delegate: Component {
74+ DccObject {
75+ parentName: containerItem .name
76+ displayName: modelData .description
77+ weight: root .weight + index + 1
78+ pageType: DccObject .Editor
79+ visible: headerItem .expanded
80+ backgroundType: DccObject .Normal | DccObject .Hover
81+ page: Loader {
82+ height: 40
83+ sourceComponent: {
84+ switch (modelData .type ) {
85+ case " Boolean" :
86+ return booleanComponent
87+ case " Integer" :
88+ return integerComponent
89+ case " String" :
90+ return stringComponent
91+ case " List|Key" :
92+ return keyComponent
93+ case " Enum" :
94+ return enumComponent
95+ default :
96+ return null
9897 }
98+ }
9999
100- Component {
101- id: booleanComponent
102- D .Switch {
103- checked: modelData .value === " True"
104- onCheckedChanged: {
105- dccData .fcitx5ConfigProxy .setValue (
106- root .name + " /" + modelData .name ,
107- checked ? " True" : " False" )
108- }
100+ Component {
101+ id: booleanComponent
102+ D .Switch {
103+ checked: modelData .value === " True"
104+ onCheckedChanged: {
105+ dccData .fcitx5ConfigProxy .setValue (
106+ root .name + " /" + modelData .name ,
107+ checked ? " True" : " False" )
109108 }
110109 }
110+ }
111111
112- Component {
113- id: integerComponent
114- D .SpinBox {
115- width: 55
116- implicitWidth: 55
117- value: parseInt (modelData .value )
118- onValueChanged: {
119- dccData .fcitx5ConfigProxy .setValue (
120- root .name + " /" + modelData .name ,
121- value .toString ())
122- }
112+ Component {
113+ id: integerComponent
114+ D .SpinBox {
115+ width: 55
116+ implicitWidth: 55
117+ value: parseInt (modelData .value )
118+ onValueChanged: {
119+ dccData .fcitx5ConfigProxy .setValue (
120+ root .name + " /" + modelData .name ,
121+ value .toString ())
123122 }
124123 }
124+ }
125125
126- Component {
127- id: stringComponent
128- D .TextField {
129- text: modelData .value
130- onTextChanged: {
131- dccData .fcitx5ConfigProxy .setValue (
132- root .name + " /" + modelData .name ,
133- text)
134- }
126+ Component {
127+ id: stringComponent
128+ D .TextField {
129+ text: modelData .value
130+ onTextChanged: {
131+ dccData .fcitx5ConfigProxy .setValue (
132+ root .name + " /" + modelData .name ,
133+ text)
135134 }
136135 }
136+ }
137137
138- Component {
139- id: keyComponent
140- KeySequenceDisplay {
141- placeholderText: qsTr (" Please enter a new shortcut" )
142- keys: modelData .value
143- background .visible : false
144- onFocusChanged: {
145- if (! focus) {
146- if (keys .length > 0 ) {
147- dccData .fcitx5ConfigProxy .setValue (
148- root .name + " /" + modelData .name + " /0" ,
149- keys, true )
150- } else if (root .keyName != modelData .name ) {
151- keys = modelData .value
152- }
138+ Component {
139+ id: keyComponent
140+ KeySequenceDisplay {
141+ placeholderText: qsTr (" Please enter a new shortcut" )
142+ keys: modelData .value
143+ background .visible : false
144+ onFocusChanged: {
145+ if (! focus) {
146+ if (keys .length > 0 ) {
147+ dccData .fcitx5ConfigProxy .setValue (
148+ root .name + " /" + modelData .name + " /0" ,
149+ keys, true )
150+ } else if (root .keyName != modelData .name ) {
151+ keys = modelData .value
153152 }
154153 }
155- onKeysChanged: {
156- root .keyName = modelData .name
157- }
154+ }
155+ onKeysChanged: {
156+ root .keyName = modelData .name
157+ }
158158
159- Connections {
160- target: root
161- function onKeyNameChanged () {
162- if (root .keyName != modelData .name ) {
163- focus = false
164- }
159+ Connections {
160+ target: root
161+ function onKeyNameChanged () {
162+ if (root .keyName != modelData .name ) {
163+ focus = false
165164 }
166165 }
167166 }
168167 }
168+ }
169169
170- Component {
171- id: enumComponent
172- D .ComboBox {
173- model: modelData .propertiesI18n
174- flat: true
175- currentIndex: modelData .properties .indexOf (
176- modelData .value ) ? modelData .properties .indexOf (
177- modelData .value ) : 0
178- onCurrentIndexChanged: {
179- dccData .fcitx5ConfigProxy .setValue (
180- root .name + " /" + modelData .name ,
181- modelData .properties [currentIndex])
182- }
170+ Component {
171+ id: enumComponent
172+ D .ComboBox {
173+ model: modelData .propertiesI18n
174+ flat: true
175+ currentIndex: modelData .properties .indexOf (
176+ modelData .value ) ? modelData .properties .indexOf (
177+ modelData .value ) : 0
178+ onCurrentIndexChanged: {
179+ dccData .fcitx5ConfigProxy .setValue (
180+ root .name + " /" + modelData .name ,
181+ modelData .properties [currentIndex])
183182 }
184183 }
185184 }
0 commit comments