code: def _handleBulletWidth(bulletText, style, maxWidths):
      
      if bulletText:
          if isinstance(bulletText, basestring):
              bulletWidth = stringWidth(bulletText, style.bulletFontName, style.bulletFontSize)
          else:
              #it's a list of fragments
              bulletWidth = 0
              for f in bulletText:
                  bulletWidth = bulletWidth + stringWidth(f.text, f.fontName, f.fontSize)
          bulletRight = style.bulletIndent + bulletWidth + 0.6 * style.bulletFontSize
          indent = style.leftIndent + style.firstLineIndent
          if bulletRight > indent:
              #..then it overruns, and we have less space available on line 1
              maxWidths[0] -= (bulletRight - indent)
docs: work out bullet width and adjust maxWidths[0] if neccessary