'Set the width, and other properties of a row.
Args:
row:         Row number (zero-indexed).
height:      Row width. (optional).
cell_format: Row cell_format. (optional).
options:     Dict of options such as hidden, level and collapsed.
Returns:
0:  Success.
-1: Row number is out of worksheet bounds.'

def set_row(self, row, height=None, cell_format=None, options=None):

    if (options is None):
        options = {}
    if (self.dim_colmin is not None):
        min_col = self.dim_colmin
    else:
        min_col = 0
    if self._check_dimensions(row, min_col):
        return (-1)
    if (height is None):
        height = self.default_row_height
    hidden = options.get('hidden', False)
    collapsed = options.get('collapsed', False)
    level = options.get('level', 0)
    if (height == 0):
        hidden = 1
        height = self.default_row_height
    if (level < 0):
        level = 0
    if (level > 7):
        level = 7
    if (level > self.outline_row_level):
        self.outline_row_level = level
    self.set_rows[row] = [height, cell_format, hidden, level, collapsed]
    self.row_size_changed = True
    if hidden:
        height = 0
    self.row_sizes[row] = height
