2 ** Project : Form Designer
3 ** File Purpose : QTableWidget Control
5 ** Author : Mahmoud Fayed <msfclipper@yahoo.com>
10 class FormDesigner_QTableWidget from QLineEdit
12 CreateCommonAttributes()
13 CreateMoveResizeCornersAttributes()
17 cHorizontalHeaders = ""
19 cHorizontalHeaderStyle = ""
20 cVerticalHeaderStyle = ""
22 nSelectionBehavior = 0
23 nAlternatingColors = 0
25 ccellActivatedEvent = ""
26 ccellChangedEvent = ""
27 ccellClickedEvent = ""
28 ccellDoubleClickedEvent = ""
29 ccellEnteredEvent = ""
30 ccellPressedEvent = ""
31 ccurrentCellChangedEvent = ""
32 ccurrentItemChangedEvent = ""
33 citemActivatedEvent = ""
34 citemChangedEvent = ""
35 citemClickedEvent = ""
36 citemDoubleClickedEvent = ""
37 citemEnteredEvent = ""
38 citemPressedEvent = ""
39 citemSelectionChangedEvent = ""
44 func setRowCountValue Value
50 func SetColumnCountValue Value
53 func HorizontalHeadersValue
54 return cHorizontalHeaders
56 func SetHorizontalHeadersValue Value
57 cHorizontalHeaders = Value
59 func ColumnsWidthValue
62 func SetColumnsWidthValue Value
65 func HorizontalHeaderStyleValue
66 return cHorizontalHeaderStyle
68 func SetHorizontalHeaderStyleValue Value
69 cVerticalHeaderStyle = Value
71 func VerticalHeaderStyleValue
72 return cVerticalHeaderStyle
74 func SetVerticalHeaderStyleValue Value
75 cVerticalHeaderStyle = Value
77 func SelectionBahviorValue
78 return nSelectionBehavior
80 func SetSelectionBehaviorValue Value
81 nSelectionBehavior = Value
83 func AlternatingColorsValue
84 return nAlternatingColors
86 func SetAlternatingColorsValue Value
87 nAlternatingColors = Value
89 func SetcellActivatedEventCode cValue
90 ccellActivatedEvent = cValue
92 func cellActivatedEventCode
93 return ccellActivatedEvent
95 func SetcellChangedEventCode cValue
96 ccellChangedEvent = cValue
98 func cellChangedEventCode
99 return ccellChangedEvent
101 func SetcellClickedEventCode cValue
102 ccellClickedEvent = cValue
104 func cellClickedEventCode
105 return ccellClickedEvent
107 func SetcellDoubleClickedEventCode cValue
108 ccellDoubleClickedEvent = cValue
110 func cellDoubleClickedEventCode
111 return ccellDoubleClickedEvent
113 func SetcellEnteredEventCode cValue
114 ccellEnteredEvent = cValue
116 func cellEnteredEventCode
117 return ccellEnteredEvent
119 func SetcellPressedEventCode cValue
120 ccellPressedEvent = cValue
122 func cellPressedEventCode
123 return ccellPressedEvent
125 func SetcurrentCellChangedEventCode cValue
126 ccurrentCellChangedEvent = cValue
128 func currentCellChangedEventCode
129 return ccurrentCellChangedEvent
131 func SetcurrentItemChangedEventCode cValue
132 ccurrentItemChangedEvent = cValue
134 func currentItemChangedEventCode
135 return ccurrentItemChangedEvent
137 func SetitemActivatedEventCode cValue
138 citemActivatedEvent = cValue
140 func itemActivatedEventCode
141 return citemActivatedEvent
143 func SetitemChangedEventCode cValue
144 citemChangedEvent = cValue
146 func itemChangedEventCode
147 return citemChangedEvent
149 func SetitemClickedEventCode cValue
150 citemClickedEvent = cValue
152 func itemClickedEventCode
153 return citemClickedEvent
155 func SetitemDoubleClickedEventCode cValue
156 citemDoubleClickedEvent = cValue
158 func itemDoubleClickedEventCode
159 return citemDoubleClickedEvent
161 func SetitemEnteredEventCode cValue
162 citemEnteredEvent = cValue
164 func itemEnteredEventCode
165 return citemEnteredEvent
167 func SetitemPressedEventCode cValue
168 citemPressedEvent = cValue
170 func itemPressedEventCode
171 return citemPressedEvent
173 func SetitemSelectionChangedEventCode cValue
174 citemSelectionChangedEvent = cValue
176 func itemSelectionChangedEventCode
177 return citemSelectionChangedEvent
179 func AddObjectProperties oDesigner
180 AddObjectCommonProperties(oDesigner)
181 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_ROWCOUNT,False) # "Row Count"
182 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_COLUMNCOUNT,False) # "Column Count"
183 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_HORIZONTALHEADERSSCOMMA,False) # "Horizontal Headers (S: Comma)"
184 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_COLUMNSWIDTHSCOMMA,False) # "Columns Width (S: Comma)"
185 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_HORIZONTALHEADERSTYLE,False) # "Horizontal Header Style"
186 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_VERTICALHEADERSTYLE,False) # "Vertical Header Style"
187 oDesigner.oView.AddPropertyCombobox(T_FORMDESIGNER_ATTRIBUTE_SELECTIONBEHAVIOR,
188 [T_FORMDESIGNER_ATTRIBUTE_ITEMS,T_FORMDESIGNER_ATTRIBUTE_ROWS,T_FORMDESIGNER_ATTRIBUTE_COLUMNS]) # "Selection Behavior" "Items" "Rows" "Columns"
189 oDesigner.oView.AddPropertyCombobox(T_FORMDESIGNER_ATTRIBUTE_ALTERNATINGROWCOLORS,
190 [T_FORMDESIGNER_ATTRIBUTE_TRUE,T_FORMDESIGNER_ATTRIBUTE_FALSE]) # "Alternating Row Colors" "True" "False"
191 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_CELLACTIVATEDEVENT,False) # "cellActivatedEvent"
192 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_CELLCHANGEDEVENT,False) # "cellChangedEvent"
193 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_CELLCLICKEDEVENT,False) # "cellClickedEvent"
194 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_CELLDOUBLECLICKEDEVENT,False) # "cellDoubleClickedEvent"
195 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_CELLENTEREDEVENT,False) # "cellEnteredEvent"
196 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_CELLPRESSEDEVENT,False) # "cellPressedEvent"
197 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_CURRENTCELLCHANGEDEVENT,False) # "currentCellChangedEvent"
198 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_CURRENTITEMCHANGEDEVENT,False) # "currentItemChangedEvent"
199 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_ITEMACTIVATEDEVENT,False) # "itemActivatedEvent"
200 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_ITEMCHANGEDEVENT,False) # "itemChangedEvent"
201 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_ITEMCLICKEDEVENT,False) # "itemClickedEvent"
202 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_ITEMDOUBLECLICKEDEVENT,False) # "itemDoubleClickedEvent"
203 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_ITEMENTEREDEVENT,False) # "itemEnteredEvent"
204 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_ITEMPRESSEDEVENT,False) # "itemPressedEvent"
205 oDesigner.oView.AddProperty(T_FORMDESIGNER_ATTRIBUTE_ITEMSELECTIONCHANGEDEVENT,False) # "itemSelectionChangedEvent"
207 func DisplayProperties oDesigner
208 DisplayCommonProperties(oDesigner)
209 oPropertiesTable = oDesigner.oView.oPropertiesTable
210 oPropertiesTable.Blocksignals(True)
211 oPropertiesTable.item(C_AFTERCOMMON,1).settext(RowCountValue())
212 oPropertiesTable.item(C_AFTERCOMMON+1,1).settext(ColumnCountValue())
213 oPropertiesTable.item(C_AFTERCOMMON+2,1).settext(HorizontalHeadersValue())
214 oPropertiesTable.item(C_AFTERCOMMON+3,1).settext(ColumnsWidthValue())
215 oPropertiesTable.item(C_AFTERCOMMON+4,1).settext(HorizontalHeaderStyleValue())
216 oPropertiesTable.item(C_AFTERCOMMON+5,1).settext(VerticalHeaderStyleValue())
217 # Selection Behaviour
218 oWidget = oPropertiesTable.cellwidget(C_AFTERCOMMON+6,1)
219 oCombo = new qCombobox
220 oCombo.pObject = oWidget.pObject
221 oCombo.BlockSignals(True)
222 oCombo.setCurrentIndex(SelectionBahviorValue())
223 oCombo.BlockSignals(False)
225 oWidget = oPropertiesTable.cellwidget(C_AFTERCOMMON+7,1)
226 oCombo = new qCombobox
227 oCombo.pObject = oWidget.pObject
228 oCombo.BlockSignals(True)
229 oCombo.setCurrentIndex(AlternatingColorsValue())
230 oCombo.BlockSignals(False)
231 oPropertiesTable.item(C_AFTERCOMMON+8,1).settext(cellActivatedEventcode())
232 oPropertiesTable.item(C_AFTERCOMMON+9,1).settext(cellChangedEventcode())
233 oPropertiesTable.item(C_AFTERCOMMON+10,1).settext(cellClickedEventcode())
234 oPropertiesTable.item(C_AFTERCOMMON+11,1).settext(cellDoubleClickedEventcode())
235 oPropertiesTable.item(C_AFTERCOMMON+12,1).settext(cellEnteredEventcode())
236 oPropertiesTable.item(C_AFTERCOMMON+13,1).settext(cellPressedEventcode())
237 oPropertiesTable.item(C_AFTERCOMMON+14,1).settext(currentCellChangedEventcode())
238 oPropertiesTable.item(C_AFTERCOMMON+15,1).settext(currentItemChangedEventcode())
239 oPropertiesTable.item(C_AFTERCOMMON+16,1).settext(itemActivatedEventcode())
240 oPropertiesTable.item(C_AFTERCOMMON+17,1).settext(itemChangedEventcode())
241 oPropertiesTable.item(C_AFTERCOMMON+18,1).settext(itemClickedEventcode())
242 oPropertiesTable.item(C_AFTERCOMMON+19,1).settext(itemDoubleClickedEventcode())
243 oPropertiesTable.item(C_AFTERCOMMON+20,1).settext(itemEnteredEventcode())
244 oPropertiesTable.item(C_AFTERCOMMON+21,1).settext(itemPressedEventcode())
245 oPropertiesTable.item(C_AFTERCOMMON+22,1).settext(itemSelectionChangedEventcode())
246 oPropertiesTable.Blocksignals(False)
247 # Set the object name
248 setText(oDesigner.oModel.GetObjectName(self))
250 func ComboItemAction oDesigner,nRow
251 nSelectionBehaviorPos = C_AFTERCOMMON+6
252 nAlternatingColorsPos = C_AFTERCOMMON+7
254 case nSelectionBehaviorPos
255 oWidget = oDesigner.oView.oPropertiesTable.cellwidget(nSelectionBehaviorPos,1)
256 oCombo = new qCombobox
257 oCombo.pObject = oWidget.pObject
258 nIndex = oCombo.CurrentIndex()
259 setSelectionBehaviorValue(nIndex)
260 case nAlternatingColorsPos
261 oWidget = oDesigner.oView.oPropertiesTable.cellwidget(nAlternatingColorsPos,1)
262 oCombo = new qCombobox
263 oCombo.pObject = oWidget.pObject
264 nIndex = oCombo.CurrentIndex()
265 setAlternatingColorsValue(nIndex)
268 func UpdateProperties oDesigner,nRow,nCol,cValue
269 UpdateCommonProperties(oDesigner,nRow,nCol,cValue)
273 setRowCountValue(cValue)
275 setColumnCountValue(cValue)
277 setHorizontalHeadersValue(cValue)
279 setColumnsWidthValue(cValue)
281 setHorizontalHeaderStyleValue(cValue)
283 setVerticalHeaderStyleValue(cValue)
285 setSelectionbehaviorValue(cValue)
287 setAlternatingrowcolorsValue(cValue)
289 setcellActivatedEventCode(cValue)
291 setcellChangedEventCode(cValue)
292 case C_AFTERCOMMON+10
293 setcellClickedEventCode(cValue)
294 case C_AFTERCOMMON+11
295 setcellDoubleClickedEventCode(cValue)
296 case C_AFTERCOMMON+12
297 setcellEnteredEventCode(cValue)
298 case C_AFTERCOMMON+13
299 setcellPressedEventCode(cValue)
300 case C_AFTERCOMMON+14
301 setcurrentCellChangedEventCode(cValue)
302 case C_AFTERCOMMON+15
303 setcurrentItemChangedEventCode(cValue)
304 case C_AFTERCOMMON+16
305 setitemActivatedEventCode(cValue)
306 case C_AFTERCOMMON+17
307 setitemChangedEventCode(cValue)
308 case C_AFTERCOMMON+18
309 setitemClickedEventCode(cValue)
310 case C_AFTERCOMMON+19
311 setitemDoubleClickedEventCode(cValue)
312 case C_AFTERCOMMON+20
313 setitemEnteredEventCode(cValue)
314 case C_AFTERCOMMON+21
315 setitemPressedEventCode(cValue)
316 case C_AFTERCOMMON+22
317 setitemSelectionChangedEventCode(cValue)
320 # Set the object name
321 setText(oDesigner.oModel.GetObjectName(self))
323 func ObjectDataAsString oDesigner,nTabsCount
324 cOutput = ObjectDataAsString2(oDesigner,nTabsCount)
325 cTabs = std_copy(char(9),nTabsCount)
326 cOutput += "," + nl + cTabs + ' :RowCount = "' + oDesigner.PrepareStringForFormFile(RowCountValue()) + '"'
327 cOutput += "," + nl + cTabs + ' :ColumnCount = "' + oDesigner.PrepareStringForFormFile(ColumnCountValue()) + '"'
328 cOutput += "," + nl + cTabs + ' :HorizontalHeaders = "' + oDesigner.PrepareStringForFormFile(HorizontalHeadersValue()) + '"'
329 cOutput += "," + nl + cTabs + ' :ColumnsWidth = "' + oDesigner.PrepareStringForFormFile(ColumnsWidthValue()) + '"'
330 cOutput += "," + nl + cTabs + ' :HorizontalHeaderStyle = "' + oDesigner.PrepareStringForFormFile(HorizontalHeaderStyleValue()) + '"'
331 cOutput += "," + nl + cTabs + ' :VerticalHeaderStyle = "' + oDesigner.PrepareStringForFormFile(VerticalHeaderStyleValue()) + '"'
332 cOutput += "," + nl + cTabs + ' :selectionbehavior = ' + SelectionBahviorValue()
333 cOutput += "," + nl + cTabs + ' :alternatingcolors = ' + AlternatingColorsValue()
334 cOutput += "," + nl + cTabs + ' :setcellActivatedEvent = "' + oDesigner.PrepareStringForFormFile(cellActivatedEventCode()) + '"'
335 cOutput += "," + nl + cTabs + ' :setcellChangedEvent = "' + oDesigner.PrepareStringForFormFile(cellChangedEventCode()) + '"'
336 cOutput += "," + nl + cTabs + ' :setcellClickedEvent = "' + oDesigner.PrepareStringForFormFile(cellClickedEventCode()) + '"'
337 cOutput += "," + nl + cTabs + ' :setcellDoubleClickedEvent = "' + oDesigner.PrepareStringForFormFile(cellDoubleClickedEventCode()) + '"'
338 cOutput += "," + nl + cTabs + ' :setcellEnteredEvent = "' + oDesigner.PrepareStringForFormFile(cellEnteredEventCode()) + '"'
339 cOutput += "," + nl + cTabs + ' :setcellPressedEvent = "' + oDesigner.PrepareStringForFormFile(cellPressedEventCode()) + '"'
340 cOutput += "," + nl + cTabs + ' :setcurrentCellChangedEvent = "' + oDesigner.PrepareStringForFormFile(currentCellChangedEventCode()) + '"'
341 cOutput += "," + nl + cTabs + ' :setcurrentItemChangedEvent = "' + oDesigner.PrepareStringForFormFile(currentItemChangedEventCode()) + '"'
342 cOutput += "," + nl + cTabs + ' :setitemActivatedEvent = "' + oDesigner.PrepareStringForFormFile(itemActivatedEventCode()) + '"'
343 cOutput += "," + nl + cTabs + ' :setitemChangedEvent = "' + oDesigner.PrepareStringForFormFile(itemChangedEventCode()) + '"'
344 cOutput += "," + nl + cTabs + ' :setitemClickedEvent = "' + oDesigner.PrepareStringForFormFile(itemClickedEventCode()) + '"'
345 cOutput += "," + nl + cTabs + ' :setitemDoubleClickedEvent = "' + oDesigner.PrepareStringForFormFile(itemDoubleClickedEventCode()) + '"'
346 cOutput += "," + nl + cTabs + ' :setitemEnteredEvent = "' + oDesigner.PrepareStringForFormFile(itemEnteredEventCode()) + '"'
347 cOutput += "," + nl + cTabs + ' :setitemPressedEvent = "' + oDesigner.PrepareStringForFormFile(itemPressedEventCode()) + '"'
348 cOutput += "," + nl + cTabs + ' :setitemSelectionChangedEvent = "' + oDesigner.PrepareStringForFormFile(itemSelectionChangedEventCode()) + '"'
351 func GenerateCustomCode oDesigner
353 if RowCountValue() != NULL {
354 cOutput += 'setRowCount(#{f1})' + nl
355 cOutput = substr(cOutput,"#{f1}",RowCountValue())
357 if ColumnCountValue() != NULL {
358 cOutput += 'setColumnCount(#{f1})' + nl
359 cOutput = substr(cOutput,"#{f1}",ColumnCountValue())
361 if HorizontalHeadersValue() != NULL {
362 aTempList = Split(HorizontalHeadersValue(),",")
363 nPos = oDesigner.oModel.FormObject().IndexStart()
364 for item in aTempList {
365 cOutput += 'setHorizontalHeaderItem(#{f1}, new QTableWidgetItem("#{f2}"))' + nl
366 cOutput = substr(cOutput,"#{f1}",""+nPos)
367 cOutput = substr(cOutput,"#{f2}",oDesigner.PrepareStringForFormFile(item))
371 if ColumnsWidthValue() != NULL {
372 aTempList = Split(ColumnsWidthValue(),",")
373 nPos = oDesigner.oModel.FormObject().IndexStart()
374 for item in aTempList {
375 cOutput += 'setColumnwidth(#{f1},#{f2})' + nl
376 cOutput = substr(cOutput,"#{f1}",""+nPos)
377 cOutput = substr(cOutput,"#{f2}",item)
381 if HorizontalHeaderStyleValue() != NULL {
382 cOutput += 'horizontalHeader().setStyleSheet("#{f1}")' + nl
383 cOutput = substr(cOutput,"#{f1}",HorizontalHeaderStyle())
385 if VerticalHeaderStyleValue() != NULL {
386 cOutput += 'verticalHeader().setStyleSheet("#{f1}")' + nl
387 cOutput = substr(cOutput,"#{f1}",VerticalHeaderStyleValue())
390 cOutput += 'setSelectionBehavior(#{f1})' + nl
391 switch SelectionBahviorValue() {
393 cOutput = substr(cOutput,"#{f1}","QAbstractItemView_SelectItems" )
395 cOutput = substr(cOutput,"#{f1}","QAbstractItemView_SelectRows" )
397 cOutput = substr(cOutput,"#{f1}","QAbstractItemView_SelectColumns" )
399 # Alternating Row Colors
400 cOutput += 'setAlternatingRowColors(#{f1})' + nl
401 switch AlternatingColorsValue() {
403 cOutput = substr(cOutput,"#{f1}","True")
405 cOutput = substr(cOutput,"#{f1}","False")
407 cOutput += 'setcellActivatedEvent("#{f1}")' + nl
408 cOutput = PrepareEvent(cOutput,cellActivatedEventCode(),"#{f1}")
409 cOutput = substr(cOutput,"#{f1}",cellActivatedEventCode())
410 cOutput += 'setcellChangedEvent("#{f1}")' + nl
411 cOutput = PrepareEvent(cOutput,cellChangedEventCode(),"#{f1}")
412 cOutput = substr(cOutput,"#{f1}",cellChangedEventCode())
413 cOutput += 'setcellClickedEvent("#{f1}")' + nl
414 cOutput = PrepareEvent(cOutput,cellClickedEventCode(),"#{f1}")
415 cOutput = substr(cOutput,"#{f1}",cellClickedEventCode())
416 cOutput += 'setcellDoubleClickedEvent("#{f1}")' + nl
417 cOutput = PrepareEvent(cOutput,cellDoubleClickedEventCode(),"#{f1}")
418 cOutput = substr(cOutput,"#{f1}",cellDoubleClickedEventCode())
419 cOutput += 'setcellEnteredEvent("#{f1}")' + nl
420 cOutput = PrepareEvent(cOutput,cellEnteredEventCode(),"#{f1}")
421 cOutput = substr(cOutput,"#{f1}",cellEnteredEventCode())
422 cOutput += 'setcellPressedEvent("#{f1}")' + nl
423 cOutput = PrepareEvent(cOutput,cellPressedEventCode(),"#{f1}")
424 cOutput = substr(cOutput,"#{f1}",cellPressedEventCode())
425 cOutput += 'setcurrentCellChangedEvent("#{f1}")' + nl
426 cOutput = PrepareEvent(cOutput,currentCellChangedEventCode(),"#{f1}")
427 cOutput = substr(cOutput,"#{f1}",currentCellChangedEventCode())
428 cOutput += 'setcurrentItemChangedEvent("#{f1}")' + nl
429 cOutput = PrepareEvent(cOutput,currentItemChangedEventCode(),"#{f1}")
430 cOutput = substr(cOutput,"#{f1}",currentItemChangedEventCode())
431 cOutput += 'setitemActivatedEvent("#{f1}")' + nl
432 cOutput = PrepareEvent(cOutput,itemActivatedEventCode(),"#{f1}")
433 cOutput = substr(cOutput,"#{f1}",itemActivatedEventCode())
434 cOutput += 'setitemChangedEvent("#{f1}")' + nl
435 cOutput = PrepareEvent(cOutput,itemChangedEventCode(),"#{f1}")
436 cOutput = substr(cOutput,"#{f1}",itemChangedEventCode())
437 cOutput += 'setitemClickedEvent("#{f1}")' + nl
438 cOutput = PrepareEvent(cOutput,itemClickedEventCode(),"#{f1}")
439 cOutput = substr(cOutput,"#{f1}",itemClickedEventCode())
440 cOutput += 'setitemDoubleClickedEvent("#{f1}")' + nl
441 cOutput = PrepareEvent(cOutput,itemDoubleClickedEventCode(),"#{f1}")
442 cOutput = substr(cOutput,"#{f1}",itemDoubleClickedEventCode())
443 cOutput += 'setitemEnteredEvent("#{f1}")' + nl
444 cOutput = PrepareEvent(cOutput,itemEnteredEventCode(),"#{f1}")
445 cOutput = substr(cOutput,"#{f1}",itemEnteredEventCode())
446 cOutput += 'setitemPressedEvent("#{f1}")' + nl
447 cOutput = PrepareEvent(cOutput,itemPressedEventCode(),"#{f1}")
448 cOutput = substr(cOutput,"#{f1}",itemPressedEventCode())
449 cOutput += 'setitemSelectionChangedEvent("#{f1}")' + nl
450 cOutput = PrepareEvent(cOutput,itemSelectionChangedEventCode(),"#{f1}")
451 cOutput = substr(cOutput,"#{f1}",itemSelectionChangedEventCode())
454 func RestoreProperties oDesigner,Item
455 RestoreCommonProperties(oDesigner,item)
456 itemdata = item[:data]
457 SetRowCountValue(itemdata[:RowCount])
458 SetColumnCountValue(itemdata[:ColumnCount])
459 SetHorizontalHeadersValue(itemdata[:HorizontalHeaders])
460 SetColumnsWidthValue(itemdata[:ColumnsWidth])
461 SetHorizontalHeaderStyleValue(itemdata[:HorizontalHeaderStyle])
462 SetVerticalHeaderStyleValue(itemdata[:VerticalHeaderStyle])
463 SetSelectionbehaviorValue(itemdata[:SelectionBehavior])
464 SetAlternatingColorsValue(itemdata[:AlternatingColors])
465 SetcellActivatedEventCode(itemdata[:setcellActivatedEvent])
466 SetcellChangedEventCode(itemdata[:setcellChangedEvent])
467 SetcellClickedEventCode(itemdata[:setcellClickedEvent])
468 SetcellDoubleClickedEventCode(itemdata[:setcellDoubleClickedEvent])
469 SetcellEnteredEventCode(itemdata[:setcellEnteredEvent])
470 SetcellPressedEventCode(itemdata[:setcellPressedEvent])
471 SetcurrentCellChangedEventCode(itemdata[:setcurrentCellChangedEvent])
472 SetcurrentItemChangedEventCode(itemdata[:setcurrentItemChangedEvent])
473 SetitemActivatedEventCode(itemdata[:setitemActivatedEvent])
474 SetitemChangedEventCode(itemdata[:setitemChangedEvent])
475 SetitemClickedEventCode(itemdata[:setitemClickedEvent])
476 SetitemDoubleClickedEventCode(itemdata[:setitemDoubleClickedEvent])
477 SetitemEnteredEventCode(itemdata[:setitemEnteredEvent])
478 SetitemPressedEventCode(itemdata[:setitemPressedEvent])
479 SetitemSelectionChangedEventCode(itemdata[:setitemSelectionChangedEvent])
480 # Set the object name
481 setText(oDesigner.oModel.GetObjectName(self))