本文整理汇总了Python中fs.osfs.OSFS.add_watcher方法的典型用法代码示例。如果您正苦于以下问题:Python OSFS.add_watcher方法的具体用法?Python OSFS.add_watcher怎么用?Python OSFS.add_watcher使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类fs.osfs.OSFS
的用法示例。
在下文中一共展示了OSFS.add_watcher方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Recent
# 需要导入模块: from fs.osfs import OSFS [as 别名]
# 或者: from fs.osfs.OSFS import add_watcher [as 别名]
class Recent(Files):
def __init__(self):
super(Recent, self).__init__()
self._paths = []
# http://python.6.n6.nabble.com/Access-Most-Recently-Used-MRU-entries-td1953541.html
self.mru_path = shell.SHGetSpecialFolderPath(0, shellcon.CSIDL_RECENT, 0)
self.mrufs = OSFS(self.mru_path)
self.watcher = None
def setup(self):
self._update_path()
self.watcher = self.mrufs.add_watcher(lambda e: self._update_path())
def _update_path(self):
self._paths = sorted(
[os.path.join(self.mru_path, f) for f in self.mrufs.listdir()], key=os.path.getmtime, reverse=True
)
self.path_list_changed()
def teardown(self):
if self.watcher:
self.mrufs.del_watcher(self.watcher)
@property
def paths(self):
return self._paths
@property
def name(self):
return "re"
def lit(self, *args, **kargs):
return super(Recent, self).lit(*args, **kargs)