def _initTabbedLayout(self): """Init Tabbed layout. It's more convenient for quick view.""" nb = gtk.Notebook() nb.show() self.nb = nb self.pack_start(nb, True, True) nb.append_page(self.request, gtk.Label(_("Request"))) nb.append_page(self.response, gtk.Label(_("Response"))) # Info self.info = HttpEditor(self.w3af) self.info.set_editable(False) #self.info.show() nb.append_page(self.info, gtk.Label(_("Info")))
def __init__(self, w3af, parentView, editable=False): """Make object.""" RememberingVPaned.__init__(self, w3af, 'headers_view') self.id = 'HttpHeadersView' self.label = 'Headers' self.startLine = '' self.parentView = parentView self.is_request = True box = gtk.HBox() self._headersStore = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING) self._headersTreeview = gtk.TreeView(self._headersStore) # Column for Name renderer = gtk.CellRendererText() renderer.set_property('editable', editable) renderer.connect('edited', self._headerNameEdited, self._headersStore) column = gtk.TreeViewColumn(_('Name'), renderer, text=0) column.set_sort_column_id(0) column.set_resizable(True) self._headersTreeview.append_column(column) # Column for Value renderer = gtk.CellRendererText() renderer.set_property('editable', editable) renderer.set_property('ellipsize', pango.ELLIPSIZE_END) renderer.connect('edited', self._headerValueEdited, self._headersStore) column = gtk.TreeViewColumn(_('Value'), renderer, text=1) column.set_resizable(True) column.set_expand(True) column.set_sort_column_id(1) self._headersTreeview.append_column(column) self._scrolled = gtk.ScrolledWindow() self._scrolled.add(self._headersTreeview) self._scrolled.show_all() box.pack_start(self._scrolled) # Buttons area buttons = [(gtk.STOCK_GO_UP, self._moveHeaderUp), (gtk.STOCK_GO_DOWN, self._moveHeaderDown), (gtk.STOCK_ADD, self._addHeader), (gtk.STOCK_DELETE, self._deleteHeader)] buttonBox = gtk.VBox() for button in buttons: b = gtk.Button(stock=button[0]) b.connect("clicked", button[1]) b.show() buttonBox.pack_start(b, False, False) buttonBox.show() if editable: box.pack_start(buttonBox, False, False) box.show() self.add(box) self._raw = HttpEditor(w3af) self._raw.show() self._raw.set_editable(editable) self._raw.set_wrap(True) self._raw.set_highlight_syntax(False) self._raw.set_highlight_current_line(False) self.initial = False if editable: buf = self._raw.get_buffer() buf.connect("changed", self._changed) self.add(self._raw)