Ejemplo n.º 1
0
    def __init__(self, document, document_view):
        self.document = document
        self.document_view = document_view
        self.main_window = ServiceLocator.get_main_window()
        self.font_manager = ServiceLocator.get_font_manager()
        self.font_manager.register_observer(self)

        self.view = view.DocumentAutocompleteView()
        self.mark_start = Gtk.TextMark.new('ac_session_start', True)
        self.mark_end = Gtk.TextMark.new('ac_session_end', False)
        self.matching_mark_start = Gtk.TextMark.new('ac_session_second_start', True)
        self.matching_mark_end = Gtk.TextMark.new('ac_session_second_end', False)

        self.provider = ServiceLocator.get_autocomplete_provider()

        self.blank_session = session_blank.SessionBlank(self, self.document)
        self.session = self.blank_session

        self.shortcuts_bar_height = 37
        self.cursor_offset = None

        char_width, line_height = self.font_manager.get_char_dimensions(self.document_view.source_view)
        self.view.scrolled_window.set_max_content_height(5 * line_height)
        self.view.scrolled_window.set_min_content_width(35 * char_width)

        self.focus_hide = False

        self.items = list()

        self.view.list.connect('row-activated', self.on_row_activated)
        self.view.list.connect('row-selected', self.on_row_selected)

        self.document.register_observer(self)
Ejemplo n.º 2
0
    def __init__(self, document, document_view):
        self.document = document
        self.content = document.content
        self.document_view = document_view
        self.source_buffer = self.content.source_buffer

        self.view = view.DocumentAutocompleteView(self)
        self.start_offset = 0
        self.end_offset = 0
        self.last_tabbed_command = None
        self.waiting_for_block_update = False
        self.cursor_unchanged_after_autoclosing_bracket = False

        self.provider = ServiceLocator.get_autocomplete_provider()

        self.state = dict()
        self.state['position'] = 'outside'
        self.state['is_active'] = False

        self.items = list()

        self.content.connect('text_inserted', self.on_text_inserted)
        self.content.connect('text_deleted', self.on_text_deleted)
        self.content.connect('buffer_changed', self.on_buffer_changed)
        self.content.connect('cursor_changed', self.on_cursor_changed)
Ejemplo n.º 3
0
    def __init__(self, document, document_view):
        self.document = document
        self.document_view = document_view
        self.main_window = ServiceLocator.get_main_window()

        self.view = view.DocumentAutocompleteView()

        self.provider = ServiceLocator.get_autocomplete_provider()

        self.states = dict()
        self.states['inactive'] = state_inactive.StateInactive(self)
        self.states[
            'active_invisible'] = state_active_invisible.StateActiveInvisible(
                self)
        self.states[
            'active_visible'] = state_active_visible.StateActiveVisible(self)
        self.active_state = None
        self.change_state('inactive')

        self.char_width, self.line_height = self.document.get_char_dimensions()
        self.shortcuts_bar_height = 37

        self.view.scrolled_window.set_max_content_height(5 * self.line_height)

        self.insert_iter_offset = None
        self.current_word = ""
        self.current_word_offset = None
        self.height = None
        self.width = None

        self.items = list()
        self.last_tabbed_command = None

        self.view.list.connect('row-activated', self.on_row_activated)
        self.view.list.connect('row-selected', self.on_row_selected)

        self.document_view.scrolled_window.get_vadjustment().connect(
            'value-changed', self.on_adjustment_value_changed)
        self.document_view.scrolled_window.get_hadjustment().connect(
            'value-changed', self.on_adjustment_value_changed)
        self.document_view.source_view.connect('focus-out-event',
                                               self.on_focus_out)
        self.document_view.source_view.connect('focus-in-event',
                                               self.on_focus_in)
        self.document.get_buffer().connect('changed', self.on_buffer_changed)
        self.document.get_buffer().connect('mark-set', self.on_mark_set)
        self.document.get_buffer().connect('mark-deleted',
                                           self.on_mark_deleted)