summary refs log tree commit diff stats
path: root/ranger/container/fsobject.py
diff options
context:
space:
mode:
authorWojciech Siewierski <wojciech.siewierski@onet.pl>2015-02-22 16:34:30 +0100
committerWojciech Siewierski <wojciech.siewierski@onet.pl>2015-02-22 16:34:30 +0100
commitd75308efa1aaa4a536bcf3301d3d079e6db3b4bb (patch)
tree7eb5d3e23cb8d9da9f907fea11de8948f4be13cd /ranger/container/fsobject.py
parentca4aa285995f5dd1986c299453c7857b42ca2452 (diff)
downloadranger-d75308efa1aaa4a536bcf3301d3d079e6db3b4bb.tar.gz
further linemode refactoring
- registered linemodes list moved to FileSystemObject
- ranger.api module updated
Diffstat (limited to 'ranger/container/fsobject.py')
-rw-r--r--ranger/container/fsobject.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/ranger/container/fsobject.py b/ranger/container/fsobject.py
index 32b1dc8b..43499e15 100644
--- a/ranger/container/fsobject.py
+++ b/ranger/container/fsobject.py
@@ -17,8 +17,7 @@ from grp import getgrgid
 from os import lstat, stat, getcwd
 from os.path import abspath, basename, dirname, realpath, splitext, extsep, relpath
 from pwd import getpwuid
-from ranger.core.linemode import REGISTERED_LINEMODES
-from ranger.core.linemode import DEFAULT_LINEMODE
+from ranger.core.linemode import DEFAULT_LINEMODE, REGISTERED_LINEMODES
 from ranger.core.shared import FileManagerAware, SettingsAware
 from ranger.ext.shell_escape import shell_escape
 from ranger.ext.spawn import spawn
@@ -85,6 +84,10 @@ class FileSystemObject(FileManagerAware, SettingsAware):
     basename_is_rel_to = None
 
     _linemode = DEFAULT_LINEMODE
+    linemode_dict = dict(
+        (linemode.name, linemode()) for linemode in
+        [DefaultLinemode, TitleLinemode, PermissionsLinemode]
+    )
 
     def __init__(self, path, preload=None, path_is_abs=False, basename_is_rel_to=None):
         if not path_is_abs:
@@ -111,7 +114,7 @@ class FileSystemObject(FileManagerAware, SettingsAware):
 
         # Set the line mode from fm.default_linemodes
         for method, argument, linemode in self.fm.default_linemodes:
-            if linemode in REGISTERED_LINEMODES:
+            if linemode in linemode_dict:
                 if method == "always":
                     self._linemode = linemode
                     break