Class: Idb::KeychainWidget
- Inherits:
-
Qt::Widget
- Object
- Qt::Widget
- Idb::KeychainWidget
- Defined in:
- lib/gui/keychain_widget.rb
Instance Method Summary collapse
-
#initialize(*args) ⇒ KeychainWidget
constructor
A new instance of KeychainWidget.
- #populate_table ⇒ Object
Constructor Details
#initialize(*args) ⇒ KeychainWidget
Returns a new instance of KeychainWidget.
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/gui/keychain_widget.rb', line 8 def initialize *args super *args @layout = Qt::GridLayout.new setLayout(@layout) @model = Qt::StandardItemModel.new @selection_model = Qt::ItemSelectionModel.new @model @selection_model.connect(SIGNAL('selectionChanged(QItemSelection,QItemSelection)')) {|x,y| unless x.indexes.length == 0 row = x.indexes[0].row .set_data @keychain.entries[row]["data"] .set_vdata @keychain.entries[row]["v_Data"] end } @keychain_tab = Qt::TableView.new @keychain_tab.setModel @selection_model.model @keychain_tab.setSelectionModel(@selection_model) @keychain_tab.setSelectionBehavior(Qt::AbstractItemView::SelectRows) @keychain_tab.setEditTriggers(Qt::AbstractItemView::NoEditTriggers ) @layout.addWidget @keychain_tab, 0,0 @dump = Qt::PushButton.new "Dump Keychain" @layout.addWidget @dump, 2, 0 = KeychainTabWidget.new @layout.addWidget , 3, 0 @dump.connect(SIGNAL :released) { $device.dump_keychain @keychain = KeychainPlistParser.new "#{$tmp_path}/device/genp.plist" populate_table } end |
Instance Method Details
#populate_table ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/gui/keychain_widget.rb', line 51 def populate_table .clear @model.clear @model.setHorizontalHeaderItem(0, Qt::StandardItem.new("Access Group")) @model.setHorizontalHeaderItem(1, Qt::StandardItem.new("Account")) @model.setHorizontalHeaderItem(2, Qt::StandardItem.new("Service")) @model.setHorizontalHeaderItem(3, Qt::StandardItem.new("Protection")) @model.setHorizontalHeaderItem(4, Qt::StandardItem.new("Creation")) @model.setHorizontalHeaderItem(5, Qt::StandardItem.new("Modification")) @keychain.entries.each { |item| row = Array.new row << Qt::StandardItem.new(item['agrp'].to_s) row << Qt::StandardItem.new(item['acct'].to_s) row << Qt::StandardItem.new(item['svce'].to_s) row << Qt::StandardItem.new(item['protection_class'].to_s) row << Qt::StandardItem.new(item['cdat'].to_s) row << Qt::StandardItem.new(item['mdat'].to_s) @model.appendRow(row) } @keychain_tab.resizeColumnsToContents @keychain_tab.resizeRowsToContents end |