Exemple #1
0
 def __reboot_device(self, widget):
   # Reboot device
   device_info, = self.__device_liststore.get(
       self.__device_selector.get_active_iter(), 1)
   if confirm(self, MESSAGE_REBOOT):
     op = None
     try:
       op = rktalk.RkOperation(self.__logger, device_info[0], device_info[1])
       op.reboot()
     finally:
       if op: del op
Exemple #2
0
 def __erase_partition(self, widget):
   device_info, = self.__device_liststore.get(
       self.__device_selector.get_active_iter(), 1)
   offset, size = self.__partition_liststore.get(
       self.__partition_selector.get_active_iter(), 1, 2)
   message = MESSAGE_ERASE % (offset, size)
   if confirm(self, message):
     op = None
     try:
       op = rktalk.RkOperation(self.__logger, device_info[0], device_info[1])
       op.erase_partition(offset, size)
     finally:
       if op: del op
Exemple #3
0
 def __cmp_part_with_file(self, widget):
   image_file = self.__image_entry.get_text().strip()
   device_info, = self.__device_liststore.get(
       self.__device_selector.get_active_iter(), 1)
   offset, size, part_name = self.__partition_liststore.get(
       self.__partition_selector.get_active_iter(), 1, 2, 0)
   message = MESSAGE_COMPARE % (part_name, os.path.basename(image_file))
   if confirm(self, message):
     op = None
     try:
       op = rktalk.RkOperation(self.__logger, device_info[0], device_info[1])
       op.cmp_part_with_file(offset, size, image_file)
     finally:
       if op: del op
Exemple #4
0
  def __on_device_changed(self, widget):
    self.__partition_liststore.clear()
    if self.__device_selector.get_active() > -1:
      # Read partitions
      device_info, = self.__device_liststore.get(
          self.__device_selector.get_active_iter(), 1)
      op = None
      try:
        op = rktalk.RkOperation(self.__logger, device_info[0], device_info[1])
        partitions = op.load_partitions()
        for size, offset, name in partitions:
          self.__partition_liststore.append(
              ['%s (%s @ %s)' % (name, size, offset),
               int(offset, 16), int(size, 16)])
      finally:
        if op: del op

    self.__refresh_buttons()
Exemple #5
0
  def __backup_partition(self, widget):
    backup_file = self.__choose_backup_file()
    if backup_file:
      backup_file += '.backup'
      if os.path.exists(backup_file):
        if not confirm(self, 'Back file already exists, overwrite?'):
          return

      device_info, = self.__device_liststore.get(
          self.__device_selector.get_active_iter(), 1)
      offset, size = self.__partition_liststore.get(
          self.__partition_selector.get_active_iter(), 1, 2)

      op = None
      try:
        op = rktalk.RkOperation(self.__logger, device_info[0], device_info[1])
        op.backup_partition(offset, size, backup_file)
      finally:
        if op: del op
Exemple #6
0
 def __init__(self, logger, bus_id, dev_id):
     self.op = rktalk.RkOperation(logger, bus_id, dev_id)