本文整理汇总了Python中MountPoints.MountPoints类的典型用法代码示例。如果您正苦于以下问题:Python MountPoints类的具体用法?Python MountPoints怎么用?Python MountPoints使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了MountPoints类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: checkDefault
def checkDefault(self):
mp = MountPoints()
mp.read()
if not mp.exist('/hdd'):
mp.add(self.mdisks.disks[self.sindex][0], 1, '/hdd')
mp.write()
mp.mount(self.mdisks.disks[self.sindex][0], 1, '/hdd')
os.system('/bin/mkdir /hdd/movie')
os.system('/bin/mkdir /hdd/music')
os.system('/bin/mkdir /hdd/picture')
开发者ID:OUARGLA86,项目名称:enigma2,代码行数:10,代码来源:HddSetup.py
示例2: checkDefault
def checkDefault(self):
mp = MountPoints()
mp.read()
if self.asHDD and not mp.exist("/media/hdd"):
mp.add(self.mdisks.disks[self.sindex][0], 1, "/media/hdd")
mp.write()
mp.mount(self.mdisks.disks[self.sindex][0], 1, "/media/hdd")
os.system("mkdir -p /media/hdd/movie")
message = _("Fixed mounted first initialized Storage Device to /media/hdd. It needs a system restart in order to take effect.\nRestart your STB now?")
mbox = self.session.openWithCallback(self.restartBox, MessageBox, message, MessageBox.TYPE_YESNO)
mbox.setTitle(_("Restart STB"))
开发者ID:fairbird,项目名称:OpenPLI-BlackHole,代码行数:11,代码来源:HddSetup.py
示例3: __init__
def __init__(self, session, device, partition):
Screen.__init__(self, session)
self.device = device
self.partition = partition
self.mountpoints = MountPoints()
self.mountpoints.read()
self.fast = False
self.list = []
self.list.append(_('Mount as /universe'))
self.list.append(_('Mount as /media/usb'))
self.list.append(_('Mount as /media/hdd'))
self.list.append('Mount as /media/cf')
self.list.append('Mount as /media/mmc1')
self.list.append('Mount on custom path')
self['menu'] = MenuList(self.list)
self['key_red'] = Button(_('Fixed mount'))
self['key_green'] = Button('Fast mount')
self['key_blue'] = Button(_('Exit'))
self['key_yellow'] = Button('')
self['actions'] = ActionMap(['OkCancelActions', 'ColorActions'], {'blue': self.quit,
'green': self.green,
'ok': self.ok,
'red': self.ok,
'cancel': self.quit}, -2)
self.onShown.append(self.setWindowTitle)
开发者ID:fairbird,项目名称:Blackhole-OpenPLI,代码行数:25,代码来源:HddMount.py
示例4: initialaze
def initialaze(self, result):
if result != 5:
self.result = result
self.formatted = 0
mp = MountPoints()
mp.read()
mp.deleteDisk(self.mdisks.disks[self.sindex][0])
mp.write()
self.session.openWithCallback(self.fdiskEnded, ExtraActionBox, _('Partitioning...'), _('Initialize disk'), self.fdisk)
开发者ID:OUARGLA86,项目名称:enigma2,代码行数:9,代码来源:HddSetup.py
示例5: _begin_scan
def _begin_scan(self, location):
#----------------------------------------------------------------------
#Initiating device version scanning
#----------------------------------------------------------------------
#XXX should remove this and add it in HttpServe when loading case
self.print_queue.put("** Determining Device/Apps versions **")
mounts = MountPoints()
mounts.set_mountpoint(MountPoints.MOUNT_DATA, location)
versions = AndroidDeviceVersion(self.print_queue,mounts)
versions.populate_info()
versions.print_debug()
#----------------------------------------------------------------------
#Initiating file system scanning and populating of data
#----------------------------------------------------------------------
self.print_queue.put("** Running Application Parser **")
app_parser = ApplicationParser( self.print_queue, self.extract_store,
location, settings=self.settings,
versions=versions )
#XXX note that this is hard-coded. If for some reason Android app store
# location changes, this would need to reflect it
app_parser.scan_directory( os.path.join( location, "data" ) )
self.print_queue.put("** Running Configuration Parser **")
misc_parser = MiscParser( self.print_queue, self.extract_store,
settings=self.settings, versions=versions )
misc_parser.scan_directory(location)
#----------------------------------------------------------------------
# Initiating auxiliary modules
#----------------------------------------------------------------------
self.print_queue.put("** Running Auxiliary Modules **")
auxmods = Importer().get_package_modules( "AndroidAuxiliary",
IAuxiliary(), ( self.extract_store, self.print_queue ) )
for mod in auxmods:
mod.begin()
#Finished, sending FIN signal
self.print_queue.put("FIN")
return
开发者ID:vicgc,项目名称:nfi,代码行数:41,代码来源:AndroidScanner.py
示例6: initialaze
def initialaze(self, result):
if not self.isExt4Supported():
result += 1
if result != 6:
self.fsresult = result
self.formatted = 0
mp = MountPoints()
mp.read()
mp.deleteDisk(self.mdisks.disks[self.sindex][0])
mp.write()
self.session.openWithCallback(self.fdiskEnded, ExtraActionBox, _("Partitioning..."), _("Initialize disk"), self.fdisk)
开发者ID:fairbird,项目名称:OpenPLI-BlackHole,代码行数:11,代码来源:HddSetup.py
示例7: refreshMP
def refreshMP(self, uirefresh = True):
self.partitions = []
self.mountpoints = MountPoints()
self.mountpoints.read()
count = 1
for part in self.disk[5]:
capacity = "%d MB" % (part[1] / (1024 * 1024))
mp = self.mountpoints.get(self.disk[0], count)
rmp = self.mountpoints.getRealMount(self.disk[0], count)
if len(mp) > 0:
self.partitions.append(PartitionEntry("P. %d - %s (Fixed: %s)" % (count, part[2], mp), capacity))
elif len(rmp) > 0:
self.partitions.append(PartitionEntry("P. %d - %s (Fast: %s)" % (count, part[2], rmp), capacity))
else:
self.partitions.append(PartitionEntry("P. %d - %s" % (count, part[2]), capacity))
count += 1
if uirefresh:
self["menu"].setList(self.partitions)
self.selectionChanged()
开发者ID:OUARGLA86,项目名称:enigma2,代码行数:20,代码来源:HddPartitions.py
示例8: __init__
def __init__(self, session, device, partition):
Screen.__init__(self, session)
self.device = device
self.partition = partition
self.mountpoints = MountPoints()
self.mountpoints.read()
self.fast = False
self.list = []
self.list.append(_("Mount as main hdd"))
self.list.append(_("Mount as /media/hdd1"))
self.list.append(_("Mount as /media/hdd2"))
self.list.append(_("Mount as /media/hdd3"))
self.list.append(_("Mount as /media/hdd4"))
self.list.append(_("Mount as /media/hdd5"))
self.list.append(_("Mount as /media/usb"))
self.list.append(_("Mount as /media/usb1"))
self.list.append(_("Mount as /media/usb2"))
self.list.append(_("Mount as /media/usb3"))
self.list.append(_("Mount as /media/usb4"))
self.list.append(_("Mount as /media/usb5"))
self.list.append(_("Mount on custom path"))
self["menu"] = MenuList(self.list)
self["key_red"] = Button(_("Fixed mount"))
self["key_green"] = Button(_("Fast mount"))
self["key_blue"] = Button(_("Exit"))
self["key_yellow"] = Button("")
self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
{
"blue": self.quit,
"green": self.green,
"red": self.ok,
"cancel": self.quit,
}, -2)
self.onShown.append(self.setWindowTitle)
开发者ID:jkfrln,项目名称:enigma2,代码行数:39,代码来源:HddMount.py
示例9: __init__
def __init__(self, session, device, partition):
Screen.__init__(self, session)
self.device = device
self.partition = partition
self.mountpoints = MountPoints()
self.mountpoints.read()
self.fast = False
self.list = []
self.list.append(_("Mount /universe"))
self.list.append(_("Mount as /media/hdd"))
self.list.append(_("Mount as /media/music"))
self.list.append(_("Mount as /media/download"))
self.list.append(_("Mount as /media/net"))
self.list.append(_("Mount as /media/personal"))
self.list.append(_("Mount as /media/usb"))
self.list.append(_("Mount as /media/video"))
self.list.append(_("Mount as /media/sda1"))
self.list.append(_("Mount as /media/sdb1"))
self.list.append(_("Mount as /media/meoboot"))
self.list.append(_("Mount on custom path"))
self["menu"] = MenuList(self.list)
self["key_red"] = Button(_("Fixed mount"))
self["key_green"] = Button(_("Fast mount"))
self["key_blue"] = Button(_("Exit"))
self["key_yellow"] = Button("")
self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
{
"blue": self.quit,
"green": self.green,
"red": self.ok,
"cancel": self.quit,
}, -2)
self.onShown.append(self.setWindowTitle)
开发者ID:fairbird,项目名称:OpenPLI-BlackHole,代码行数:38,代码来源:HddMount.py
示例10: refreshMP
def refreshMP(self, uirefresh = True):
self.mdisks = Disks()
self.mountpoints = MountPoints()
self.mountpoints.read()
self.disks = list ()
self.mounts = list ()
for disk in self.mdisks.disks:
if disk[2] == True:
diskname = disk[3]
for partition in disk[5]:
mp = ""
rmp = ""
try:
mp = self.mountpoints.get(partition[0][:3], int(partition[0][3:]))
rmp = self.mountpoints.getRealMount(partition[0][:3], int(partition[0][3:]))
except Exception, e:
pass
if len(mp) > 0:
self.disks.append(MountEntry(disk[3], "P.%s (Fixed: %s)" % (partition[0][3:], mp)))
self.mounts.append(mp)
elif len(rmp) > 0:
self.disks.append(MountEntry(disk[3], "P.%s (Fast: %s)" % (partition[0][3:], rmp)))
self.mounts.append(rmp)
开发者ID:jkfrln,项目名称:enigma2,代码行数:23,代码来源:HddMount.py
示例11: HddMount
class HddMount(Screen):
skin = """
<screen name="HddMount" position="center,center" size="560,430" title="Hard Drive Mount">
<ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />
<ePixmap pixmap="skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on" />
<ePixmap pixmap="skin_default/buttons/yellow.png" position="280,0" size="140,40" alphatest="on" />
<ePixmap pixmap="skin_default/buttons/blue.png" position="420,0" size="140,40" alphatest="on" />
<widget name="key_red" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />
<widget name="key_green" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />
<widget name="key_yellow" position="280,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" transparent="1" />
<widget name="key_blue" position="420,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" />
<widget name="menu" position="20,45" scrollbarMode="showOnDemand" size="520,380" transparent="1" />
</screen>"""
def __init__(self, session, device, partition):
Screen.__init__(self, session)
self.device = device
self.partition = partition
self.mountpoints = MountPoints()
self.mountpoints.read()
self.fast = False
self.list = []
self.list.append(_("Mount as main hdd"))
self.list.append(_("Mount as /media/hdd1"))
self.list.append(_("Mount as /media/hdd2"))
self.list.append(_("Mount as /media/hdd3"))
self.list.append(_("Mount as /media/hdd4"))
self.list.append(_("Mount as /media/hdd5"))
self.list.append(_("Mount as /media/usb"))
self.list.append(_("Mount as /media/usb1"))
self.list.append(_("Mount as /media/usb2"))
self.list.append(_("Mount as /media/usb3"))
self.list.append(_("Mount as /media/usb4"))
self.list.append(_("Mount as /media/usb5"))
self.list.append(_("Mount on custom path"))
self["menu"] = MenuList(self.list)
self["key_red"] = Button(_("Fixed mount"))
self["key_green"] = Button(_("Fast mount"))
self["key_blue"] = Button(_("Exit"))
self["key_yellow"] = Button("")
self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
{
"blue": self.quit,
"green": self.green,
"red": self.ok,
"cancel": self.quit,
}, -2)
self.onShown.append(self.setWindowTitle)
def setWindowTitle(self):
self.setTitle(_("Mountpoints"))
def ok(self):
self.fast = False
selected = self["menu"].getSelectedIndex()
if selected == 0:
self.setMountPoint("/media/hdd")
elif selected == 1:
self.setMountPoint("/media/hdd1")
elif selected == 2:
self.setMountPoint("/media/hdd2")
elif selected == 3:
self.setMountPoint("/media/hdd3")
elif selected == 4:
self.setMountPoint("/media/hdd4")
elif selected == 5:
self.setMountPoint("/media/hdd5")
elif selected == 6:
self.setMountPoint("/media/usb")
elif selected == 7:
self.setMountPoint("/media/usb1")
elif selected == 8:
self.setMountPoint("/media/usb2")
elif selected == 9:
self.setMountPoint("/media/usb3")
elif selected == 10:
self.setMountPoint("/media/usb4")
elif selected == 11:
self.setMountPoint("/media/usb5")
elif selected == 12:
self.session.openWithCallback(self.customPath, VirtualKeyBoard, title = (_("Insert mount point:")), text = _("/media/custom"))
def green(self):
self.fast = True
selected = self["menu"].getSelectedIndex()
if selected == 0:
self.setMountPoint("/media/hdd")
elif selected == 1:
self.setMountPoint("/media/hdd1")
elif selected == 2:
self.setMountPoint("/media/hdd2")
elif selected == 3:
self.setMountPoint("/media/hdd3")
elif selected == 4:
self.setMountPoint("/media/hdd4")
#.........这里部分代码省略.........
开发者ID:jkfrln,项目名称:enigma2,代码行数:101,代码来源:HddMount.py
示例12: HddFastRemove
class HddFastRemove(Screen):
skin = """
<screen name="HddFastRemove" position="center,center" size="560,430" title="Hard Drive Fast Umount">
<ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />
<ePixmap pixmap="skin_default/buttons/blue.png" position="140,0" size="140,40" alphatest="on" />
<widget name="key_red" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />
<widget name="key_blue" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" />
<widget source="menu" render="Listbox" position="10,55" size="520,380" scrollbarMode="showOnDemand">
<convert type="TemplatedMultiContent">
{"template": [
MultiContentEntryPixmapAlphaTest(pos = (5, 0), size = (48, 48), png = 0),
MultiContentEntryText(pos = (65, 3), size = (190, 38), font=0, flags = RT_HALIGN_LEFT|RT_VALIGN_TOP, text = 1),
MultiContentEntryText(pos = (165, 27), size = (290, 38), font=1, flags = RT_HALIGN_LEFT|RT_VALIGN_TOP, text = 2),
],
"fonts": [gFont("Regular", 22), gFont("Regular", 18)],
"itemHeight": 50
}
</convert>
</widget>
</screen>"""
def __init__(self, session):
Screen.__init__(self, session)
self.refreshMP(False)
self["menu"] = List(self.disks)
self["key_red"] = Button(_("Unmount"))
self["key_blue"] = Button(_("Exit"))
self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
{
"blue": self.quit,
"red": self.red,
"cancel": self.quit,
}, -2)
self.onShown.append(self.setWindowTitle)
def setWindowTitle(self):
self.setTitle(_("Fast Mounted Remove"))
def red(self):
if len(self.mounts) > 0:
self.sindex = self["menu"].getIndex()
self.mountpoints.umount(self.mounts[self.sindex]) # actually umount device here - also check both cases possible - for instance error case also check with stay in /e.g. /media/usb folder on telnet
self.session.open(MessageBox, _("Fast mounted Media unmounted.\nYou can safely remove the Device now, if no further Partitions (displayed as P.x on Devicelist - where x >=2) are mounted on the same Device.\nPlease unmount Fixed Mounted Devices with Device Manager Panel!"), MessageBox.TYPE_INFO)
self.refreshMP(True)
def refreshMP(self, uirefresh = True):
self.mdisks = Disks()
self.mountpoints = MountPoints()
self.mountpoints.read()
self.disks = list ()
self.mounts = list ()
for disk in self.mdisks.disks:
if disk[2] == True:
diskname = disk[3]
for partition in disk[5]:
mp = ""
rmp = ""
try:
mp = self.mountpoints.get(partition[0][:3], int(partition[0][3:]))
rmp = self.mountpoints.getRealMount(partition[0][:3], int(partition[0][3:]))
except Exception, e:
pass
if len(mp) > 0:
self.disks.append(MountEntry(disk[3], "P.%s (Fixed: %s)" % (partition[0][3:], mp)))
self.mounts.append(mp)
elif len(rmp) > 0:
self.disks.append(MountEntry(disk[3], "P.%s (Fast: %s)" % (partition[0][3:], rmp)))
self.mounts.append(rmp)
if uirefresh:
self["menu"].setList(self.disks)
开发者ID:jkfrln,项目名称:enigma2,代码行数:72,代码来源:HddMount.py
示例13: HddPartitions
#.........这里部分代码省略.........
self.fstype = 1
self.session.open(ExtraActionBox, _("Formatting disk %s") % self.disk[5][self.index][0], _("Formatting disk"), self.mkfs)
elif self.disk[5][self.index][3] == "7":
if result < 1:
self.fstype = 2
self.session.open(ExtraActionBox, _("Formatting disk %s") % self.disk[5][self.index][0], _("Formatting disk"), self.mkfs)
elif self.disk[5][self.index][3] == "b":
if result < 1:
self.fstype = 3
self.session.open(ExtraActionBox, _("Formatting disk %s") % self.disk[5][self.index][0], _("Formatting disk"), self.mkfs)
def green(self):
if len(self.disk[5]) > 0:
index = self["menu"].getIndex()
if self.disk[5][index][3] == "83" or self.disk[5][index][3] == "7" or self.disk[5][index][3] == "b":
self.index = index
if self.disk[5][index][3] == "83":
self.fstype = 0
elif self.disk[5][index][3] == "7":
self.fstype = 2
elif self.disk[5][index][3] == "b":
self.fstype = 3
self.session.open(ExtraActionBox, _("Checking disk %s") % self.disk[5][index][0], _("Checking disk"), self.chkfs)
def yellow(self):
if len(self.disk[5]) > 0:
self.index = self["menu"].getIndex()
if self.disk[5][self.index][3] == "83":
if self.isExt4Supported():
self.session.openWithCallback(self.domkfs, ExtraMessageBox, _("Format as"), _("Partitioner"),
[ [ "Ext4", "partitionmanager.png" ],
[ "Ext3", "partitionmanager.png" ],
[ _("Cancel"), "cancel.png" ],
], 1, 2)
else:
self.session.openWithCallback(self.domkfs, ExtraMessageBox, _("Format as"), _("Partitioner"),
[ [ "Ext3", "partitionmanager.png" ],
[ _("Cancel"), "cancel.png" ],
], 1, 1)
elif self.disk[5][self.index][3] == "7":
self.session.openWithCallback(self.domkfs, ExtraMessageBox, _("Format as"), _("Partitioner"),
[ [ "NTFS", "partitionmanager.png" ],
[ _("Cancel"), "cancel.png" ],
], 1, 1)
elif self.disk[5][self.index][3] == "b":
self.session.openWithCallback(self.domkfs, ExtraMessageBox, _("Format as"), _("Partitioner"),
[ [ "Fat32", "partitionmanager.png" ],
[ _("Cancel"), "cancel.png" ],
], 1, 1)
def refreshMP(self, uirefresh = True):
self.partitions = []
self.mountpoints = MountPoints()
self.mountpoints.read()
count = 1
for part in self.disk[5]:
capacity = "%d MB" % (part[1] / (1024 * 1024))
mp = self.mountpoints.get(self.disk[0], count)
rmp = self.mountpoints.getRealMount(self.disk[0], count)
if len(mp) > 0:
self.partitions.append(PartitionEntry("P. %d - %s (Fixed: %s)" % (count, part[2], mp), capacity))
elif len(rmp) > 0:
self.partitions.append(PartitionEntry("P. %d - %s (Fast: %s)" % (count, part[2], rmp), capacity))
else:
self.partitions.append(PartitionEntry("P. %d - %s" % (count, part[2]), capacity))
count += 1
if uirefresh:
self["menu"].setList(self.partitions)
self.selectionChanged()
def blue(self):
if len(self.disk[5]) > 0:
index = self["menu"].getIndex()
if self.disk[5][index][3] != "83" and self.disk[5][index][3] != "7" and self.disk[5][index][3] != "b":
return
if len(self.partitions) > 0:
self.sindex = self['menu'].getIndex()
if self.mounted:
mp = self.mountpoints.get(self.disk[0], self.sindex+1)
rmp = self.mountpoints.getRealMount(self.disk[0], self.sindex+1)
if len(mp) > 0:
if self.mountpoints.isMounted(mp):
if self.mountpoints.umount(mp):
self.mountpoints.delete(mp)
self.mountpoints.write()
else:
self.session.open(MessageBox, _("Cannot umount current device.\nA record in progress, timeshift or some external tools (like samba, swapfile and nfsd) may cause this problem.\nPlease stop this actions/applications and try again"), MessageBox.TYPE_ERROR)
else:
self.mountpoints.delete(mp)
self.mountpoints.write()
elif len(rmp) > 0:
self.mountpoints.umount(rmp)
self.refreshMP()
else:
self.session.openWithCallback(self.refreshMP, HddMount, self.disk[0], self.sindex+1)
def quit(self):
self.close()
开发者ID:OUARGLA86,项目名称:enigma2,代码行数:101,代码来源:HddPartitions.py
示例14: HddPartitions
#.........这里部分代码省略.........
self.session.open(MessageBox, _('Cannot format current drive.\nA record in progress, timeshift or some external tools (like samba, swapfile and nfsd) may cause this problem.\nPlease stop this actions/applications and try again'), MessageBox.TYPE_ERROR)
else:
self.session.open(MessageBox, _('Error formatting disk. The disk may be damaged'), MessageBox.TYPE_ERROR)
def isExt4Supported(self):
return 'ext4' in open('/proc/filesystems').read()
def domkfs(self, result):
if self.disk[5][self.index][3] == '83':
if self.isExt4Supported():
if result < 2:
self.fstype = result
self.session.open(ExtraActionBox, _('Formatting disk %s') % self.disk[5][self.index][0], _('Formatting disk'), self.mkfs)
elif result < 1:
self.fstype = 1
self.session.open(ExtraActionBox, _('Formatting disk %s') % self.disk[5][self.index][0], _('Formatting disk'), self.mkfs)
elif self.disk[5][self.index][3] == '7':
if result < 1:
self.fstype = 2
self.session.open(ExtraActionBox, _('Formatting disk %s') % self.disk[5][self.index][0], _('Formatting disk'), self.mkfs)
elif self.disk[5][self.index][3] == 'b':
if result < 1:
self.fstype = 3
self.session.open(ExtraActionBox, _('Formatting disk %s') % self.disk[5][self.index][0], _('Formatting disk'), self.mkfs)
def green(self):
if len(self.disk[5]) > 0:
index = self['menu'].getIndex()
if self.disk[5][index][3] == '83' or self.disk[5][index][3] == '7' or self.disk[5][index][3] == 'b':
self.index = index
if self.disk[5][index][3] == '83':
self.fstype = 0
elif self.disk[5][index][3] == '7':
self.fstype = 2
elif self.disk[5][index][3] == 'b':
self.fstype = 3
self.session.open(ExtraActionBox, _('Checking disk %s') % self.disk[5][index][0], _('Checking disk'), self.chkfs)
def yellow(self):
if len(self.disk[5]) > 0:
self.index = self['menu'].getIndex()
if self.disk[5][self.index][3] == '83':
if self.isExt4Supported():
self.session.openWithCallback(self.domkfs, ExtraMessageBox, _('Format as'), _('Partitioner'), [['Ext4', 'partitionmanager.png'], ['Ext3', 'partitionmanager.png'], [_('Cancel'), 'cancel.png']], 1, 2)
else:
self.session.openWithCallback(self.domkfs, ExtraMessageBox, _('Format as'), _('Partitioner'), [['Ext3', 'partitionmanager.png'], [_('Cancel'), 'cancel.png']], 1, 1)
elif self.disk[5][self.index][3] == '7':
self.session.openWithCallback(self.domkfs, ExtraMessageBox, _('Format as'), _('Partitioner'), [['NTFS', 'partitionmanager.png'], [_('Cancel'), 'cancel.png']], 1, 1)
elif self.disk[5][self.index][3] == 'b':
self.session.openWithCallback(self.domkfs, ExtraMessageBox, _('Format as'), _('Partitioner'), [['Fat32', 'partitionmanager.png'], [_('Cancel'), 'cancel.png']], 1, 1)
def refreshMP(self, uirefresh = True):
self.partitions = []
self.mountpoints = MountPoints()
self.mountpoints.read()
count = 1
for part in self.disk[5]:
capacity = '%d MB' % (part[1] / 1048576)
mp = self.mountpoints.get(self.disk[0], count)
rmp = self.mountpoints.getRealMount(self.disk[0], count)
if len(mp) > 0:
self.partitions.append(PartitionEntry('P. %d - %s (Fixed: %s)' % (count, part[2], mp), capacity))
elif len(rmp) > 0:
self.partitions.append(PartitionEntry('P. %d - %s (Fast: %s)' % (count, part[2], rmp), capacity))
else:
self.partitions.append(PartitionEntry('P. %d - %s' % (count, part[2]), capacity))
count += 1
if uirefresh:
self['menu'].setList(self.partitions)
self.selectionChanged()
def red(self):
if len(self.disk[5]) > 0:
index = self['menu'].getIndex()
if self.disk[5][index][3] != '83' and self.disk[5][index][3] != '7' and self.disk[5][index][3] != 'b':
return
if len(self.partitions) > 0:
self.sindex = self['menu'].getIndex()
if self.mounted:
mp = self.mountpoints.get(self.disk[0], self.sindex + 1)
rmp = self.mountpoints.getRealMount(self.disk[0], self.sindex + 1)
if len(mp) > 0:
if self.mountpoints.isMounted(mp):
if self.mountpoints.umount(mp):
self.mountpoints.delete(mp)
self.mountpoints.write()
else:
self.session.open(MessageBox, _('Cannot umount current device.\nA record in progress, timeshift or some external tools (like samba, swapfile and nfsd) may cause this problem.\nPlease stop this actions/applications and try again'), MessageBox.TYPE_ERROR)
else:
self.mountpoints.delete(mp)
self.mountpoints.write()
elif len(rmp) > 0:
self.mountpoints.umount(rmp)
self.refreshMP()
else:
self.session.openWithCallback(self.refreshMP, HddMount, self.disk[0], self.sindex + 1)
def quit(self):
self.close()
开发者ID:fairbird,项目名称:Blackhole-OpenPLI,代码行数:101,代码来源:HddPartitions.py
示例15: HddMount
class HddMount(Screen):
skin = '\n\t<screen name="HddMount" position="center,center" size="560,430" title="Hard Drive Mount">\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/yellow.png" position="280,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/share/enigma2/skin_default/buttons/blue.png" position="420,0" size="140,40" alphatest="on" />\n\t\t<widget name="key_red" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />\n\t\t<widget name="key_green" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />\n\t\t<widget name="key_yellow" position="280,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" transparent="1" />\n\t\t<widget name="key_blue" position="420,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" />\n\t\t<widget name="menu" position="20,45" scrollbarMode="showOnDemand" size="520,380" transparent="1" />\n\t</screen>'
def __init__(self, session, device, partition):
Screen.__init__(self, session)
self.device = device
self.partition = partition
self.mountpoints = MountPoints()
self.mountpoints.read()
self.fast = False
self.list = []
self.list.append(_('Mount as /universe'))
self.list.append(_('Mount as /media/usb'))
self.list.append(_('Mount as /media/hdd'))
self.list.append('Mount as /media/cf')
self.list.append('Mount as /media/mmc1')
self.list.append('Mount on custom path')
self['menu'] = MenuList(self.list)
self['key_red'] = Button(_('Fixed mount'))
self['key_green'] = Button('Fast mount')
self['key_blue'] = Button(_('Exit'))
self['key_yellow'] = Button('')
self['actions'] = ActionMap(['OkCancelActions', 'ColorActions'], {'blue': self.quit,
'green': self.green,
'ok': self.ok,
'red': self.ok,
'cancel': self.quit}, -2)
self.onShown.append(self.setWindowTitle)
def setWindowTitle(self):
self.setTitle(_('Mountpoints'))
def ok(self):
self.fast = False
selected = self['menu'].getSelectedIndex()
if selected == 0:
self.setMountPoint('/universe')
elif selected == 1:
self.setMountPoint('/media/usb')
elif selected == 2:
self.setMountPoint('/media/hdd')
elif selected == 3:
self.setMountPoint('/media/cf')
elif selected == 4:
self.setMountPoint('/media/mmc1')
elif selected == 5:
self.session.openWithCallback(self.customPath, VirtualKeyBoard, title=_('Insert mount point:'), text='/media/custom')
def green(self):
self.fast = True
selected = self['menu'].getSelectedIndex()
if selected == 0:
self.setMountPoint('/universe')
elif selected == 1:
self.setMountPoint('/media/usb')
elif selected == 2:
self.setMountPoint('/media/hdd')
elif selected == 3:
self.setMountPoint('/media/cf')
elif selected == 4:
self.setMountPoint('/media/mmc1')
elif selected == 5:
self.session.openWithCallback(self.customPath, VirtualKeyBoard, title=_('Insert mount point:'), text='/media/custom')
def customPath(self, result):
if result and len(result) > 0:
result = result.rstrip('/')
os.system('mkdir -p %s' % result)
self.setMountPoint(result)
def setMountPoint(self, path):
self.cpath = path
if self.mountpoints.exist(path):
self.session.openWithCallback(self.setMountPointCb, ExtraMessageBox, 'Selected mount point is already used by another drive.', 'Mount point exist!', [['Change old drive with this new drive', 'ok.png'], ['Mantain old drive', 'cancel.png']])
else:
self.setMountPointCb(0)
def setMountPointCb(self, result):
if result == 0:
if not self.mountpoints.isMounted(self.cpath) and self.mountpoints.umount(self.cpath):
self.session.open(MessageBox, _('Cannot umount current drive.\nA record in progress, timeshit or some external tools (like samba and nfsd) may cause this problem.\nPlease stop this actions/applications and try again'), MessageBox.TYPE_ERROR)
self.close()
return None
self.mountpoints.delete(self.cpath)
if not self.fast:
self.mountpoints.add(self.device, self.partition, self.cpath)
self.mountpoints.write()
if not self.mountpoints.mount(self.device, self.partition, self.cpath):
self.session.open(MessageBox, _('Cannot mount new drive.\nPlease check filesystem or format it and try again'), MessageBox.TYPE_ERROR)
elif self.cpath == '/media/hdd':
os.system('/bin/mkdir /hdd/movie')
os.system('/bin/mkdir /hdd/music')
os.system('/bin/mkdir /hdd/picture')
self.close()
def restartBox(self, answer):
if answer is True:
self.session.open(TryQuitMainloop, 2)
else:
self.close()
#.........这里部分代码省略.........
开发者ID:fairbird,项目名称:Blackhole-OpenPLI,代码行数:101,代码来源:HddMount.py
注:本文中的MountPoints.MountPoints类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论