@@ -50,6 +50,13 @@ Item {
5050 "unity.widgets.systemsettings.tablet.accesspoint" : accessPoint,
5151 }
5252
53+ function getExtendedProperty(object, propertyName, defaultValue) {
54+ if (object && object.hasOwnProperty(propertyName)) {
55+ return object[propertyName];
56+ }
57+ return defaultValue;
58+ }
59+
5360 Component { id: divMenu; Indicators.DivMenuItem {} }
5461
5562 Component {
@@ -58,23 +65,23 @@ Item {
5865 property QtObject menuData: null
5966 property var menuModel: menuFactory.menuModel
6067 property var menuIndex: undefined
61− property var extAttrib: menuData && menuData.ext ? menuData.ext : undefined
68+ property var extendedData: menuData && menuData.ext || undefined
6269
63− text: menuData && menuData.label ? menuData.label : ""
64− icon: menuData && menuData.icon ? menuData.icon : ""
65− minIcon: extAttrib && extAttrib.hasOwnProperty("minIcon") ? extAttrib.minIcon : ""
66− maxIcon: extAttrib && extAttrib.hasOwnProperty("maxIcon") ? extAttrib.maxIcon : ""
70+ text: menuData && menuData.label || ""
71+ iconSource: menuData && menuData.icon || ""
72+ minIcon: getExtendedProperty(extendedData, "minIcon", "")
73+ maxIcon: getExtendedProperty(extendedData, "minIcon", "")
6774
68− minimumValue: extAttrib && extAttrib.hasOwnProperty("minValue") ? extAttrib.minValue : 0.0
75+ minimumValue: getExtendedProperty(extendedData, "minValue", 0.0)
6976 maximumValue: {
70− var maximum = extAttrib && extAttrib.hasOwnProperty("maxValue") ? extAttrib.maxValue : 1.0
77+ var maximum = getExtendedProperty(extendedData, "maxValue", 1.0);
7178 if (maximum <= minimumValue) {
7279 return minimumValue + 1;
7380 }
7481 return maximum;
7582 }
76− value: menuData ? menuData.actionState : 0.0
77− enabled: menuData ? menuData.sensitive : false
83+ value: menuData && menuData.actionState || 0.0
84+ enabled: menuData && menuData.sensitive || false
7885
7986 onMenuModelChanged: {
8087 loadAttributes();
@@ -89,9 +96,9 @@ Item {
8996 function loadAttributes() {
9097 if (!menuModel || menuIndex == undefined) return;
9198 menuModel.loadExtendedAttributes(menuIndex, {'min-value': 'double',
92− 'max-value': 'double',
93− 'min-icon': 'icon',
94− 'max-icon': 'icon'});
99+ 'max-value': 'double',
100+ 'min-icon': 'icon',
101+ 'max-icon': 'icon'});
95102 }
96103 }
97104 }
@@ -103,8 +110,8 @@ Item {
103110 property var menuModel: menuFactory.menuModel
104111 property var menuIndex: undefined
105112
106− text: menuData && menuData.label ? menuData.label : ""
107− enabled: menuData ? menuData.sensitive : false
113+ text: menuData && menuData.label || ""
114+ enabled: menuData && menuData.sensitive || false
108115
109116 onActivate: {
110117 menuModel.activate(menuIndex);
@@ -118,7 +125,7 @@ Item {
118125 property QtObject menuData: null
119126 property var menuIndex: undefined
120127
121− text: menuData && menuData.label ? menuData.label : ""
128+ text: menuData && menuData.label || ""
122129 }
123130 }
124131
@@ -128,10 +135,10 @@ Item {
128135 property QtObject menuData: null
129136 property var menuIndex: undefined
130137
131− text: menuData && menuData.label ? menuData.label : ""
132− icon: menuData ? menuData.icon : ""
133− value : menuData ? menuData.actionState : 0.0
134− enabled: menuData ? menuData.sensitive : false
138+ text: menuData && menuData.label || ""
139+ iconSource: menuData && menuData.icon || ""
140+ value : menuData && menuData.actionState || 0.0
141+ enabled: menuData && menuData.sensitive || false
135142 }
136143 }
137144
@@ -141,11 +148,11 @@ Item {
141148 property QtObject menuData: null
142149 property var menuIndex: undefined
143150
144− text: menuData && menuData.label ? menuData.label : ""
145− icon: menuData && menuData.icon ? menuData.icon : ""
151+ text: menuData && menuData.label || ""
152+ iconSource: menuData && menuData.icon || ""
153+ enabled: menuData && menuData.sensitive || false
146154 checkable: menuData ? (menuData.isCheck || menuData.isRadio) : false
147155 checked: checkable ? menuData.isToggled : false
148− enabled: menuData ? menuData.sensitive : false
149156
150157 onActivate: {
151158 menuModel.activate(menuIndex);
@@ -160,10 +167,10 @@ Item {
160167 property QtObject menuData: null
161168 property var menuIndex: undefined
162169
163− text: menuData && menuData.label ? menuData.label : ""
164− icon: menuData && menuData.icon ? menuData.icon : ""
170+ text: menuData && menuData.label || ""
171+ iconSource: menuData && menuData.icon || ""
172+ enabled: menuData && menuData.sensitive || false
165173 checked: menuData ? menuData.isToggled : false
166− enabled: menuData ? menuData.sensitive : false
167174
168175 onActivate: {
169176 menuModel.activate(menuIndex);
@@ -178,10 +185,10 @@ Item {
178185 property QtObject menuData: null
179186 property var menuModel: menuFactory.menuModel
180187 property var menuIndex: undefined
181− property var extAttrib: menuData && menuData.ext ? menuData.ext : undefined
188+ property var extendedData: menuData && menuData.ext || undefined
182189
183− text: menuData && menuData.label ? menuData.label : ""
184− busy: extAttrib && extAttrib.hasOwnProperty("xCanonicalBusyAction") ? extAttrib.xCanonicalBusyAction : false
190+ text: menuData && menuData.label || ""
191+ busy: getExtendedProperty(extendedData, "xCanonicalBusyAction", false)
185192
186193 onMenuModelChanged: {
187194 loadAttributes();
@@ -203,20 +210,20 @@ Item {
203210 property QtObject menuData: null
204211 property var menuModel: menuFactory.menuModel
205212 property var menuIndex: undefined
206− property var extAttrib: menuData && menuData.ext ? menuData.ext : undefined
213+ property var extendedData: menuData && menuData.ext || undefined
207214
208215 property var strengthAction: QMenuModel.UnityMenuAction {
209216 model: menuModel
210217 index: menuIndex
211− name: extAttrib && extAttrib.hasOwnProperty("xCanonicalWifiApStrengthAction") ? extAttrib.xCanonicalWifiApStrengthAction : ""
218+ name: getExtendedProperty(extendedData, "xCanonicalWifiApStrengthAction", "")
212219 }
213220
214− text: menuData && menuData.label ? menuData.label : ""
215− secure: extAttrib && extAttrib.hasOwnProperty("xCanonicalWifiApIsSecure") ? extAttrib.xCanonicalWifiApIsSecure : false
216− adHoc: extAttrib && extAttrib.hasOwnProperty("xCanonicalWifiApIsAdhoc") ? extAttrib.xCanonicalWifiApIsAdhoc : false
221+ text: menuData && menuData.label || ""
222+ enabled: menuData && menuData.sensitive || false
223+ secure: getExtendedProperty(extendedData, "xCanonicalWifiApIsSecure", false)
224+ adHoc: getExtendedProperty(extendedData, "xCanonicalWifiApIsAdhoc", false)
217225 checked: menuData ? menuData.isToggled : false
218226 signalStrength: strengthAction.valid ? strengthAction.state : 0
219− enabled: menuData ? menuData.sensitive : false
220227
221228 onMenuModelChanged: {
222229 loadAttributes();
@@ -232,8 +239,8 @@ Item {
232239 function loadAttributes() {
233240 if (!menuModel || menuIndex == undefined) return;
234241 menuModel.loadExtendedAttributes(menuIndex, {'x-canonical-wifi-ap-is-adhoc': 'bool',
235− 'x-canonical-wifi-ap-is-secure': 'bool',
236− 'x-canonical-wifi-ap-strength-action': 'string'});
242+ 'x-canonical-wifi-ap-is-secure': 'bool',
243+ 'x-canonical-wifi-ap-strength-action': 'string'});
237244 }
238245 }
239246 }
@@ -251,11 +258,11 @@ Item {
251258 property QtObject menuData: null
252259 property var menuModel: menuFactory.menuModel
253260 property var menuIndex: undefined
254− property var extAttrib: menuData && menuData.ext ? menuData.ext : undefined
261+ property var extendedData: menuData && menuData.ext || undefined
255262
256− title: menuData && menuData.label ? menuData.label : ""
263+ title: menuData && menuData.label || ""
264+ appIcon: getExtendedProperty(extendedData, "icon", "qrc:/indicators/artwork/messaging/default_app.svg")
257265 count: menuData && menuData.actionState.length > 0 ? menuData.actionState[0] : "0"
258− appIcon: extAttrib && extAttrib.hasOwnProperty("icon") ? extAttrib.icon : "qrc:/indicators/artwork/messaging/default_app.svg"
259266
260267 onMenuModelChanged: {
261268 loadAttributes();