Class: Idb::SnooptItSensitiveAPIWidget
- Inherits:
-
Qt::Widget
- Object
- Qt::Widget
- Idb::SnooptItSensitiveAPIWidget
- Defined in:
- lib/gui/snoop_it_sensitive_api_widget.rb
Instance Method Summary collapse
-
#initialize(*args) ⇒ SnooptItSensitiveAPIWidget
constructor
A new instance of SnooptItSensitiveAPIWidget.
- #reset ⇒ Object
- #start_stream ⇒ Object
Constructor Details
#initialize(*args) ⇒ SnooptItSensitiveAPIWidget
Returns a new instance of SnooptItSensitiveAPIWidget.
7 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 49 |
# File 'lib/gui/snoop_it_sensitive_api_widget.rb', line 7 def initialize *args super *args @snoop = SnoopItWrapper.new @model = Qt::StandardItemModel.new @selection_model = Qt::ItemSelectionModel.new @model @selection_model.model @events_tab = Qt::TableView.new @events_tab.setModel @selection_model.model @events_tab.setSelectionModel(@selection_model) @events_tab.setSelectionBehavior(Qt::AbstractItemView::SelectRows) @events_tab.setEditTriggers(Qt::AbstractItemView::NoEditTriggers ) @start = Qt::PushButton.new "Start" @start.connect(SIGNAL :released) { @start.setEnabled(false) @stop.setEnabled(true) start_stream } @stop = Qt::PushButton.new "Stop" @stop.setEnabled(false) @stop.connect(SIGNAL :released) { @start.setEnabled(true) @stop.setEnabled(false) stop_stream } layout = Qt::VBoxLayout.new do |v| v.(@events_tab) v.(@start) v.(@stop) end setLayout(layout) end |
Instance Method Details
#reset ⇒ Object
51 52 53 54 55 56 57 |
# File 'lib/gui/snoop_it_sensitive_api_widget.rb', line 51 def reset @model.clear @model.setHorizontalHeaderItem(0, Qt::StandardItem.new("Subject")) @model.setHorizontalHeaderItem(1, Qt::StandardItem.new("Expiry")) @model.setHorizontalHeaderItem(2, Qt::StandardItem.new("Issuer")) end |
#start_stream ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/gui/snoop_it_sensitive_api_widget.rb', line 59 def start_stream @thread = SnoopItUpdateThread.new @thread.connect(SIGNAL('new_events(QVariant)')) { |events| if not events.value.nil? @events_tab.blockSignals(true) events.value.each { |e| #TODO if there are many, display status row = parse_event e @model.appendRow(row) Qt::Application::processEvents } @events_tab.blockSignals(false) @events_tab.resizeColumnsToContents @events_tab.resizeRowsToContents end } @snoop.sensitiveapi_delete @thread.stream 'sensitiveapi_after_id' end |