code: def editColor( self, item, index ):
          
          if ( not index ):
              return
              
          newcolor = QColorDialog.getColor(item.colorAt(index-1), self)
          
          if ( not newcolor.isValid() ):
              return
              
          endIndex = index + 1
          if ( self.propogateRight() ):
              endIndex = self.columnCount()
          
          for i in range(index, endIndex):
              item.setColorAt(i-1, newcolor)
docs: Prompts the user to pick a new color for the inputed item/column.
          
          :param      item  | <XColorTreeWidgetItem>
                      index | <int>