Advertisement
Guest User

Untitled

a guest
Feb 6th, 2016
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.22 KB | None | 0 0
  1. def del_record(self):
  2. # Store highlighted row of grid
  3. activeModel = self.ui.mainTableView.model()
  4. curRow = self.ui.mainTableView.selectionModel()
  5. .selectedRows()[0].row()
  6. lastRow = activeModel.rowCount(QModelIndex()) - 1
  7. print('curRow: %s' % curRow)
  8. print('lastRow: %s' % lastRow)
  9. # Delete row
  10. activeModel.prikey = self.ui.mainTableView.selectionModel()
  11. .selectedRows()[0].data()
  12. print('Deleteing now ...')
  13. activeModel.removeRows(curRow, 1, QModelIndex())
  14. # Restore grid selection to next logical record
  15. if curRow == lastRow:
  16. if activeModel.rowCount(QModelIndex()) > 1:
  17. print('end row was deleted, still rows remaining ')
  18. activeModel.refresh()
  19. self.ui.mainTableView.selectRow(curRow - 1)
  20. else:
  21. print('final row was deleted, table empty')
  22. activeModel.refresh()
  23. else:
  24. print('a row was deleted - not an end row')
  25. x = self.mapper.mappedWidgetAt(1).text()
  26. print('mapped widget text is - %s:' % x)
  27.  
  28. print('refresh model and highlight next logical row')
  29. activeModel.refresh()
  30. self.ui.mainTableView.selectRow(curRow)
  31. x = self.mapper.mappedWidgetAt(1).text()
  32. print('mapped widget text is: %s:n' % x)
  33.  
  34. def setup_mappers(self):
  35. # Manufacturers
  36. self.manufacturerMapper = QtGui.QDataWidgetMapper()
  37. self.manufacturerMapper.setModel(self.manufacturerview.model)
  38. self.manufacturerMapper.addMapping(self.ui.editManufacturer, 1)
  39. self.manufacturerMapper.toFirst()
  40.  
  41. def update_Mappers(self, selected, deselected):
  42. print('update_Mappers - selected: %s' % selected.row())
  43. print('update_Mappers - deselected: %s' % deselected.row())
  44. if self.formview == self.manufacturerview:
  45. self.manufacturerMapper.setCurrentModelIndex(selected)
  46.  
  47. def removeRows(self, row, count, parent=QModelIndex()):
  48. SQLAobject = self.query.get(self.prikey)
  49. self.beginRemoveRows(parent, row, row)
  50. # self.rowsAboutToBeRemoved.emit(parent, row, row)
  51. self.session.delete(SQLAobject)
  52. self.session.flush()
  53. self.session.commit()
  54. self.endRemoveRows()
  55. # self.rowsRemoved.emit(parent, row, row)
  56. return True
  57.  
  58. curRow: 1
  59. lastRow: 2
  60. Deleteing now ...
  61. update_Mappers - selected: 0
  62. update_Mappers - deselected: 1
  63. a row was deleted - not an end row
  64. mapped widget text is - aaa:
  65. refresh model and highlight next logical row
  66. SELECT manufacturers."ID" AS "manufacturers_ID", manufacturers.manufacturer AS manufacturers_manufacturer
  67. FROM manufacturers
  68. update_Mappers - selected: 1
  69. update_Mappers - deselected: 0
  70. mapped widget text is: ccc:
  71.  
  72. curRow: 1
  73. lastRow: 1
  74. Deleteing now ...
  75. update_Mappers - selected: 0
  76. update_Mappers - deselected: 1
  77. end row was deleted, still rows remaining
  78. SELECT manufacturers."ID" AS "manufacturers_ID", manufacturers.manufacturer AS manufacturers_manufacturer
  79. FROM manufacturers
  80. mapped widget text is: aaa:
  81.  
  82. curRow: 0
  83. lastRow: 0
  84. Deleteing now ...
  85. update_Mappers - selected: -1
  86. update_Mappers - deselected: 0
  87. final row was deleted, table empty
  88. SELECT manufacturers."ID" AS "manufacturers_ID", manufacturers.manufacturer AS manufacturers_manufacturer
  89. FROM manufacturers
  90. Model Count: 0
  91. mapped widget text is: aaa: // I want this to be empty
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement