summaryrefslogtreecommitdiffstats
path: root/Tools/idle/IdleConf.py
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/idle/IdleConf.py')
-rw-r--r--Tools/idle/IdleConf.py113
1 files changed, 0 insertions, 113 deletions
diff --git a/Tools/idle/IdleConf.py b/Tools/idle/IdleConf.py
deleted file mode 100644
index 8eaa8e0..0000000
--- a/Tools/idle/IdleConf.py
+++ /dev/null
@@ -1,113 +0,0 @@
-"""Provides access to configuration information"""
-
-import os
-import sys
-from ConfigParser import ConfigParser, NoOptionError, NoSectionError
-
-class IdleConfParser(ConfigParser):
-
- # these conf sections do not define extensions!
- builtin_sections = {}
- for section in ('EditorWindow', 'Colors'):
- builtin_sections[section] = section
-
- def getcolor(self, sec, name):
- """Return a dictionary with foreground and background colors
-
- The return value is appropriate for passing to Tkinter in, e.g.,
- a tag_config call.
- """
- fore = self.getdef(sec, name + "-foreground")
- back = self.getdef(sec, name + "-background")
- return {"foreground": fore,
- "background": back}
-
- def getdef(self, sec, options, raw=0, vars=None, default=None):
- """Get an option value for given section or return default"""
- try:
- return self.get(sec, options, raw, vars)
- except (NoSectionError, NoOptionError):
- return default
-
- def getsection(self, section):
- """Return a SectionConfigParser object"""
- return SectionConfigParser(section, self)
-
- def getextensions(self):
- exts = []
- for sec in self.sections():
- if self.builtin_sections.has_key(sec):
- continue
- # enable is a bool, but it may not be defined
- if self.getdef(sec, 'enable') != '0':
- exts.append(sec)
- return exts
-
- def reload(self):
- global idleconf
- idleconf = IdleConfParser()
- load(_dir) # _dir is a global holding the last directory loaded
-
-class SectionConfigParser:
- """A ConfigParser object specialized for one section
-
- This class has all the get methods that a regular ConfigParser does,
- but without requiring a section argument.
- """
- def __init__(self, section, config):
- self.section = section
- self.config = config
-
- def options(self):
- return self.config.options(self.section)
-
- def get(self, options, raw=0, vars=None):
- return self.config.get(self.section, options, raw, vars)
-
- def getdef(self, options, raw=0, vars=None, default=None):
- return self.config.getdef(self.section, options, raw, vars, default)
-
- def getint(self, option):
- return self.config.getint(self.section, option)
-
- def getfloat(self, option):
- return self.config.getint(self.section, option)
-
- def getboolean(self, option):
- return self.config.getint(self.section, option)
-
- def getcolor(self, option):
- return self.config.getcolor(self.section, option)
-
-def load(dir):
- """Load IDLE configuration files based on IDLE install in dir
-
- Attempts to load two config files:
- dir/config.txt
- dir/config-[win/mac/unix].txt
- dir/config-%(sys.platform)s.txt
- ~/.idle
- """
- global _dir
- _dir = dir
-
- if sys.platform[:3] == 'win':
- genplatfile = os.path.join(dir, "config-win.txt")
- # XXX don't know what the platform string is on a Mac
- elif sys.platform[:3] == 'mac':
- genplatfile = os.path.join(dir, "config-mac.txt")
- else:
- genplatfile = os.path.join(dir, "config-unix.txt")
-
- platfile = os.path.join(dir, "config-%s.txt" % sys.platform)
-
- try:
- homedir = os.environ['HOME']
- except KeyError:
- homedir = os.getcwd()
-
- idleconf.read((os.path.join(dir, "config.txt"), genplatfile, platfile,
- os.path.join(homedir, ".idle")))
-
-idleconf = IdleConfParser()
-load(os.path.dirname(__file__))