'XLS encoder standard cell styles
@param use_colour: use background colour in cells
@param evenodd: render different background colours
for even/odd rows ("stripes")
@param datetime_format: the date/time format'

@classmethod
def _styles(cls, use_colour=False, evenodd=True, datetime_format=None):

    import xlwt
    if (datetime_format is None):
        datetime_format = cls.dt_format_translate(current.deployment_settings.get_L10n_datetime_format())
    large_header = xlwt.XFStyle()
    large_header.font.bold = True
    large_header.font.height = 400
    if use_colour:
        SOLID_PATTERN = large_header.pattern.SOLID_PATTERN
        large_header.alignment.horz = large_header.alignment.HORZ_CENTER
        large_header.pattern.pattern = SOLID_PATTERN
        large_header.pattern.pattern_fore_colour = cls.LARGE_HEADER_COLOUR
    notes = xlwt.XFStyle()
    notes.font.italic = True
    notes.font.height = 160
    notes.num_format_str = datetime_format
    header = xlwt.XFStyle()
    header.font.bold = True
    header.num_format_str = datetime_format
    if use_colour:
        header.pattern.pattern = SOLID_PATTERN
        header.pattern.pattern_fore_colour = cls.HEADER_COLOUR
    subheader = xlwt.XFStyle()
    subheader.font.bold = True
    if use_colour:
        subheader.pattern.pattern = SOLID_PATTERN
        subheader.pattern.pattern_fore_colour = cls.SUB_HEADER_COLOUR
    subtotals = xlwt.XFStyle()
    subtotals.font.bold = True
    if use_colour:
        subtotals.pattern.pattern = SOLID_PATTERN
        subtotals.pattern.pattern_fore_colour = cls.SUB_TOTALS_COLOUR
    totals = xlwt.XFStyle()
    totals.font.bold = True
    if use_colour:
        totals.pattern.pattern = SOLID_PATTERN
        totals.pattern.pattern_fore_colour = cls.TOTALS_COLOUR
    odd = xlwt.XFStyle()
    if (use_colour and evenodd):
        odd.pattern.pattern = SOLID_PATTERN
        odd.pattern.pattern_fore_colour = cls.ROW_ALTERNATING_COLOURS[0]
    even = xlwt.XFStyle()
    if (use_colour and evenodd):
        even.pattern.pattern = SOLID_PATTERN
        even.pattern.pattern_fore_colour = cls.ROW_ALTERNATING_COLOURS[1]
    return {'large_header': large_header, 'notes': notes, 'header': header, 'subheader': subheader, 'subtotals': subtotals, 'totals': totals, 'odd': odd, 'even': even}
