def update(self, changed, deleted):
     super(ListItemColor, self).update(changed, deleted)
     if self.dialog:
         if 'widget_label' in changed:
             self.dialog.set_title(changed['widget_label'])
         if 'item_state' in changed:
             self.dialog.set_color(hsv_degree_to_rgb_hex_str(self.attribs['item_state']))
 def onClick(self):
     proxy = self.proxy()
     if proxy:
         self.dialog = ColorPicker(self.attribs['widget_label'],
                                   hsv_degree_to_rgb_hex_str(self.attribs['item_state']))
         color = self.dialog.show()
         self.dialog = None
         if color is not None:
             proxy.cmd_set_hsv(rgb_hex_str_to_hsv_degree(color))