Added "python setup.py install" to "make install".
[jben2_gui.git] / jben / app.py
blob6fa65e3b7494b21de074d280f4e03ebcc80249a8
1 # -*- coding: utf-8 -*-
3 from __future__ import absolute_import
5 import os
6 from jben.preferences import Preferences
7 from jben.dict import DictManager
8 from jben import global_refs
11 class Application(object):
13 def __init__(self, interface):
14 if interface == "gtk":
15 from jben.interface import gtk
16 self.interface = gtk.Interface(self)
17 elif interface == "console":
18 from jben.interface import console
19 self.interface = console.Interface(self)
20 else:
21 raise ValueError(_("Interface not supported"), interface)
23 self.prefs = Preferences(self)
24 self.dictmgr = DictManager(self)
25 global_refs.app = self
27 def run(self):
28 result = self.interface.run()
29 self.prefs.save()
30 return result
32 def get_home_dir(self):
33 env_d = {
34 "nt": "APPDATA",
35 "posix": "HOME",
37 env = env_d[os.name]
38 home = os.getenv(env)
39 assert home, _("Could not get home directory from environment.")
40 return home
42 def get_settings_dir(self):
43 dir_d = {
44 "nt": "J-Ben Settings",
45 "posix": ".jben.d",
47 path = os.path.join(self.get_home_dir(), dir_d[os.name])
48 return path