':param scroll_bar: Gtk Vertical Scrollbar object
:param active_filter: the filter active at startup.
:param possible: all filter keys'

def __init__(self, scroll_bar, active_filter, possible):

    gtk.TextView.__init__(self)
    MessageConsumer.__init__(self)
    self.set_editable(False)
    self.set_cursor_visible(False)
    self.set_wrap_mode(gtk.WRAP_WORD)
    self.textbuffer = self.get_buffer()
    self.show()
    self.possible = set(possible)
    self.active_filter = active_filter
    self.text_position = 0
    self.all_messages = DiskList(table_prefix='gui_messages')
    self.freeze_scrollbar = False
    scroll_bar.connect('value-changed', self.scroll_changed)
    self.textbuffer.create_tag('red-fg', foreground='red')
    self.textbuffer.create_tag('blue-fg', foreground='blue')
    self.textbuffer.create_tag('brown-fg', foreground='brown')
    self.bg_colors = {'vulnerability': 'red-fg', 'information': 'blue-fg', 'error': 'brown-fg'}
