Commit e1b4a161 authored by Kurt B. Kaiser's avatar Kurt B. Kaiser

Fix circular import issue

parent f2335a9d
...@@ -8,10 +8,6 @@ import sys ...@@ -8,10 +8,6 @@ import sys
import string import string
from .configHandler import idleConf from .configHandler import idleConf
from . import AutoCompleteWindow
from .HyperParser import HyperParser
import __main__
# This string includes all chars that may be in a file name (without a path # This string includes all chars that may be in a file name (without a path
# separator) # separator)
...@@ -22,6 +18,11 @@ ID_CHARS = string.ascii_letters + string.digits + "_" ...@@ -22,6 +18,11 @@ ID_CHARS = string.ascii_letters + string.digits + "_"
# These constants represent the two different types of completions # These constants represent the two different types of completions
COMPLETE_ATTRIBUTES, COMPLETE_FILES = range(1, 2+1) COMPLETE_ATTRIBUTES, COMPLETE_FILES = range(1, 2+1)
from . import AutoCompleteWindow
from .HyperParser import HyperParser
import __main__
class AutoComplete: class AutoComplete:
menudefs = [ menudefs = [
......
...@@ -3,7 +3,7 @@ An auto-completion window for IDLE, used by the AutoComplete extension ...@@ -3,7 +3,7 @@ An auto-completion window for IDLE, used by the AutoComplete extension
""" """
from Tkinter import * from Tkinter import *
from .MultiCall import MC_SHIFT from .MultiCall import MC_SHIFT
import idlelib.AutoComplete from .AutoComplete import COMPLETE_FILES, COMPLETE_ATTRIBUTES
HIDE_VIRTUAL_EVENT_NAME = "<<autocompletewindow-hide>>" HIDE_VIRTUAL_EVENT_NAME = "<<autocompletewindow-hide>>"
HIDE_SEQUENCES = ("<FocusOut>", "<ButtonPress>") HIDE_SEQUENCES = ("<FocusOut>", "<ButtonPress>")
...@@ -259,7 +259,7 @@ class AutoCompleteWindow: ...@@ -259,7 +259,7 @@ class AutoCompleteWindow:
if keysym != "Tab": if keysym != "Tab":
self.lastkey_was_tab = False self.lastkey_was_tab = False
if (len(keysym) == 1 or keysym in ("underscore", "BackSpace") if (len(keysym) == 1 or keysym in ("underscore", "BackSpace")
or (self.mode==AutoComplete.COMPLETE_FILES and keysym in or (self.mode == COMPLETE_FILES and keysym in
("period", "minus"))) \ ("period", "minus"))) \
and not (state & ~MC_SHIFT): and not (state & ~MC_SHIFT):
# Normal editing of text # Normal editing of text
...@@ -298,10 +298,10 @@ class AutoCompleteWindow: ...@@ -298,10 +298,10 @@ class AutoCompleteWindow:
self.hide_window() self.hide_window()
return return
elif (self.mode == AutoComplete.COMPLETE_ATTRIBUTES and keysym in elif (self.mode == COMPLETE_ATTRIBUTES and keysym in
("period", "space", "parenleft", "parenright", "bracketleft", ("period", "space", "parenleft", "parenright", "bracketleft",
"bracketright")) or \ "bracketright")) or \
(self.mode == AutoComplete.COMPLETE_FILES and keysym in (self.mode == COMPLETE_FILES and keysym in
("slash", "backslash", "quotedbl", "apostrophe")) \ ("slash", "backslash", "quotedbl", "apostrophe")) \
and not (state & ~MC_SHIFT): and not (state & ~MC_SHIFT):
# If start is a prefix of the selection, but is not '' when # If start is a prefix of the selection, but is not '' when
...@@ -309,7 +309,7 @@ class AutoCompleteWindow: ...@@ -309,7 +309,7 @@ class AutoCompleteWindow:
# selected completion. Anyway, close the list. # selected completion. Anyway, close the list.
cursel = int(self.listbox.curselection()[0]) cursel = int(self.listbox.curselection()[0])
if self.completions[cursel][:len(self.start)] == self.start \ if self.completions[cursel][:len(self.start)] == self.start \
and (self.mode==AutoComplete.COMPLETE_ATTRIBUTES or self.start): and (self.mode == COMPLETE_ATTRIBUTES or self.start):
self._change_start(self.completions[cursel]) self._change_start(self.completions[cursel])
self.hide_window() self.hide_window()
return return
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment