Advertisement
Guest User

XBMC list control wrapper

a guest
Jun 6th, 2012
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.36 KB | None | 0 0
  1. """ Proof of concept / Pseudo code (not tested) """
  2.  
  3. import xbmcgui
  4.  
  5.  
  6. class proof_of_concept:
  7.  
  8.     left_ref  = []
  9.     right_ref = []
  10.  
  11.     def __init__(self):
  12.         self.left_list  = xbmcgui.ControlList()
  13.         self.right_list = xbmcgui.ControlList()
  14.  
  15.  
  16.     # Private methods ...
  17.  
  18.     def _fill_list(self, list, refs):
  19.         list.reset()
  20.         list.addItems(refs)
  21.  
  22.     def _add_item(self, list, refs, item):
  23.         refs.append(item)
  24.         list.addItem(item)
  25.  
  26.     def _remove_item(self, list, refs, index):
  27.         del refs[index]
  28.         self._fill_list(list, refs)
  29.  
  30.     def _move_selected(self, source_list, source_refs, target_list, target_refs):
  31.         index = source_list.getSelectedPosition()
  32.         item  = source_list.getListItem(index)
  33.         item.select(False)
  34.         self._remove_item(source_list, source_refs, index)
  35.         self._addItem(target_list, target_refs, item)
  36.  
  37.  
  38.     # Public methods ...
  39.  
  40.     def add_to_left(self, list_item):
  41.         self.left_ref.append(list_item)
  42.         self.left_list.addItem(list_item)
  43.  
  44.     def add_to_right(self, list_item):
  45.         self.right_ref.append(list_item)
  46.         self.right_list.addItem(list_item)
  47.  
  48.     def move_selected_from_right_to_left(self):
  49.         self._move_selected( self.right_list, self.right_refs,
  50.                              self.left_list, self.left_refs )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement