U
    d                     @   sh   d dl mZ d dl mZ d dl mZ d dlmZ d dlmZ d dlmZmZ ddl	Z	G d	d
 d
e
ZdS )   )BIFFRecords)Bitmap)Style)Row)Column)unicode
itervalues    Nc                   @   s
  e Zd ZdZdZduddZdd Zdd	 ZeeeZ	d
d Z
ee
Zdd ZeeZdd ZeeZdd ZeeZdd ZeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZd d! Zd"d# ZeeeZd$d% Z d&d' Z!ee!e Z"d(d) Z#d*d+ Z$ee$e#Z%d,d- Z&d.d/ Z'ee'e&Z(d0d1 Z)d2d3 Z*ee*e)Z+d4d5 Z,d6d7 Z-ee-e,Z.d8d9 Z/d:d; Z0ee0e/Z1d<d= Z2d>d? Z3ee3e2Z4d@dA Z5dBdC Z6ee6e5Z7dDdE Z8dFdG Z9ee9e8Z:dHdI Z;dJdK Z<ee<e;Z=dLdM Z>dNdO Z?ee?e>Z@dPdQ ZAdRdS ZBeeBeAZCdTdU ZDdVdW ZEeeEeDZFdXdY ZGdZd[ ZHeeHeGZId\d] ZJd^d_ ZKeeKeJZLd`da ZMdbdc ZNeeNeMZOddde ZPdfdg ZQeeQePZRdhdi ZSdjdk ZTeeTeSZUdldm ZVdndo ZWeeWeVZXdpdq ZYdrds ZZeeZeYZ[dtdu Z\dvdw Z]ee]e\Z^dxdy Z_dzd{ Z`ee`e_Zad|d} Zbd~d ZceecebZddd Zedd ZfeefeeZgdd Zhdd ZieeiehZjdd Zkdd ZleelekZmdd Zndd ZoeeoenZpdd Zqdd ZreereqZsdd Ztdd ZueeuetZvdd Zwdd ZxeexewZydd Zzdd Z{ee{ezZ|dd Z}dd Z~ee~e}Zdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd ZddÄ ZeeeZddń ZddǄ ZeeeZddɄ Zdd˄ ZeeeZdd̈́ Zddτ ZeeeZddф Zddӄ ZeeeZddՄ Zddׄ ZeeeZddل Zddۄ ZeeeZdd݄ Zdd߄ ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZdd Zdd ZeeeZĐd d ZŐdd ZeeeŃZǐdd ZȐdd ZeeeȃZʐdd	 Zːd
d Zeee˃Z͐dd Zΐdd Zeee΃ZАdd Zѐdd ZeeeуZӐdd ZԐdd ZeeeԃZ֐dd Zאdd Zeee׃Zِdd Zڐdd ZeeeڃZܐd d! Zݐd"d# Zeee݃Zߐd$d% Zd&d' ZeeeZd(d) Zd*d+ ZeeeZd,d- Zd.d/ ZeeeZd0d1 Zd2d3 ZeeeZd4d5 Zd6d7 ZeeeZd8d Z
d9ejfd:d;Zejfd<d=Zejfd>d?Zd9ejfd@dAZdvdDdEZdwdFdGZdHdI ZdJdK ZdLdM ZdNdO ZdPdQ ZdRdS ZdTdU ZdVdW ZdXdY ZdZd[ Z d\d] Zd^d_ Zd`da Zdbdc Zddde Zdfdg Zdhdi Zdjdk Zdldm Z	dndo Z
dpdq Zdrds ZdtS (x  	Worksheetz
    This is a class
    representing the contents of a sheet in a workbook.

    .. warning::

      You don't normally create instances of this class yourself.
      They are returned from calls to :meth:`~xlwt.Workbook.Workbook.add_sheet`.
       Fc                 C   s\  t | _ t| _|| _|| _|| _i | _i | _g | _d| _d| _	d| _
d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d | _d| _d| _d | _d | _d | _d | _ d| _!d| _"d| _#d| _$d| _%d| _&d| _'d| _(d| _)d| _*d| _+d| _,d| _-d| _.d| _/d| _0d| _1d| _2d| _3d| _4d| _5d| _6d| _7d	| _8d| _9d| _:d| _;d| _<g | _=g | _>d
| _?d| _@d| _Ad| _Bd| _Cd| _Dd| _Ed| _Fd| _Gd| _Hd| _Id| _Jd| _Kd| _Ld| _Md| _Nd| _Od| _Pd| _Qd| _Rd| _Sd| _Td| _Ud| _Vd| _Wd| _Xd| _Yd| _Zd| _[d| _\d| _]d| _^d| __d| _`d | _ai | _bd| _cd S )N    r	   r   @   F      d   gMbP?z&Pz&Fg333333?gQ?gGz?	   i,  g?   )dr   r   _Worksheet__name_Worksheet__parentZ_cell_overwrite_ok_Worksheet__rows_Worksheet__cols_Worksheet__merged_ranges_Worksheet__bmp_rec_Worksheet__show_formulas_Worksheet__show_grid_Worksheet__show_headers_Worksheet__panes_frozenshow_zero_values_Worksheet__auto_colour_grid_Worksheet__cols_right_to_left_Worksheet__show_outline_Worksheet__remove_splits_Worksheet__selected_Worksheet__sheet_visible_Worksheet__page_preview_Worksheet__first_visible_row_Worksheet__first_visible_col_Worksheet__grid_colour_Worksheet__preview_magn_Worksheet__normal_magn_Worksheet__scl_magnexplicit_magn_settingZ
visibility_Worksheet__vert_split_pos_Worksheet__horz_split_pos$_Worksheet__vert_split_first_visible$_Worksheet__horz_split_first_visiblesplit_position_units_are_twips_Worksheet__row_gut_width_Worksheet__col_gut_height!_Worksheet__show_auto_page_breaks_Worksheet__dialogue_sheet_Worksheet__auto_style_outline_Worksheet__outline_below_Worksheet__outline_right_Worksheet__fit_num_pages_Worksheet__show_row_outline_Worksheet__show_col_outline_Worksheet__alt_expr_eval_Worksheet__alt_formula_entries_Worksheet__row_default_heightrow_default_height_mismatchrow_default_hiddenrow_default_space_aboverow_default_space_below_Worksheet__col_default_width_Worksheet__calc_mode_Worksheet__calc_count_Worksheet__RC_ref_mode_Worksheet__iterations_on_Worksheet__delta_Worksheet__save_recalc_Worksheet__print_headers_Worksheet__print_grid_Worksheet__grid_set_Worksheet__vert_page_breaks_Worksheet__horz_page_breaks_Worksheet__header_str_Worksheet__footer_str_Worksheet__print_centered_vert_Worksheet__print_centered_horz_Worksheet__left_margin_Worksheet__right_margin_Worksheet__top_margin_Worksheet__bottom_margin_Worksheet__paper_size_code_Worksheet__print_scaling_Worksheet__start_page_number_Worksheet__fit_width_to_pages_Worksheet__fit_height_to_pages_Worksheet__print_in_rows_Worksheet__portrait_Worksheet__print_not_colour_Worksheet__print_draft_Worksheet__print_notes_Worksheet__print_notes_at_end_Worksheet__print_omit_errors_Worksheet__print_hres_Worksheet__print_vres_Worksheet__header_margin_Worksheet__footer_margin_Worksheet__copies_num_Worksheet__wnd_protect_Worksheet__obj_protect_Worksheet__protect_Worksheet__scen_protect_Worksheet__passwordlast_used_rowfirst_used_rowlast_used_colfirst_used_colrow_tempfile_Worksheet__flushed_rows_Worksheet__row_visible_levels)selfZ	sheetnameZparent_bookZcell_overwrite_ok ru   2/tmp/pip-unpacked-wheel-xnx7fvnv/xlwt/Worksheet.py__init__;   s    
zWorksheet.__init__c                 C   s
   || _ d S Nr   rt   valueru   ru   rv   set_name   s    zWorksheet.set_namec                 C   s   | j S rx   ry   rt   ru   ru   rv   get_name   s    zWorksheet.get_namec                 C   s   | j S rx   r   r}   ru   ru   rv   
get_parent   s    zWorksheet.get_parentc                 C   s   | j S rx   )r   r}   ru   ru   rv   get_rows   s    zWorksheet.get_rowsc                 C   s   | j S rx   )r   r}   ru   ru   rv   get_cols   s    zWorksheet.get_colsc                 C   s   | j S rx   )r   r}   ru   ru   rv   get_merged_ranges   s    zWorksheet.get_merged_rangesc                 C   s   | j S rx   r   r}   ru   ru   rv   get_bmp_rec   s    zWorksheet.get_bmp_recc                 C   s   t || _d S rx   )intr   rz   ru   ru   rv   set_show_formulas   s    zWorksheet.set_show_formulasc                 C   s
   t | jS rx   )boolr   r}   ru   ru   rv   get_show_formulas  s    zWorksheet.get_show_formulasc                 C   s   t || _d S rx   )r   r   rz   ru   ru   rv   set_show_grid	  s    zWorksheet.set_show_gridc                 C   s
   t | jS rx   )r   r   r}   ru   ru   rv   get_show_grid  s    zWorksheet.get_show_gridc                 C   s   t || _d S rx   )r   r   rz   ru   ru   rv   set_show_headers  s    zWorksheet.set_show_headersc                 C   s
   t | jS rx   )r   r   r}   ru   ru   rv   get_show_headers  s    zWorksheet.get_show_headersc                 C   s   t || _d S rx   )r   r   rz   ru   ru   rv   set_panes_frozen  s    zWorksheet.set_panes_frozenc                 C   s
   t | jS rx   )r   r   r}   ru   ru   rv   get_panes_frozen   s    zWorksheet.get_panes_frozenc                 C   s   t || _d S rx   )r   r   rz   ru   ru   rv   set_auto_colour_grid1  s    zWorksheet.set_auto_colour_gridc                 C   s
   t | jS rx   )r   r   r}   ru   ru   rv   get_auto_colour_grid4  s    zWorksheet.get_auto_colour_gridc                 C   s   t || _d S rx   )r   r    rz   ru   ru   rv   set_cols_right_to_left;  s    z Worksheet.set_cols_right_to_leftc                 C   s
   t | jS rx   )r   r    r}   ru   ru   rv   get_cols_right_to_left>  s    z Worksheet.get_cols_right_to_leftc                 C   s   t || _d S rx   )r   r!   rz   ru   ru   rv   set_show_outlineE  s    zWorksheet.set_show_outlinec                 C   s
   t | jS rx   )r   r!   r}   ru   ru   rv   get_show_outlineH  s    zWorksheet.get_show_outlinec                 C   s   t || _d S rx   )r   r"   rz   ru   ru   rv   set_remove_splitsO  s    zWorksheet.set_remove_splitsc                 C   s
   t | jS rx   )r   r"   r}   ru   ru   rv   get_remove_splitsR  s    zWorksheet.get_remove_splitsc                 C   s   t || _d S rx   )r   r#   rz   ru   ru   rv   set_selectedY  s    zWorksheet.set_selectedc                 C   s
   t | jS rx   )r   r#   r}   ru   ru   rv   get_selected\  s    zWorksheet.get_selectedc                 C   s   t || _d S rx   )r   r$   rz   ru   ru   rv   set_sheet_visiblec  s    zWorksheet.set_sheet_visiblec                 C   s
   t | jS rx   )r   r$   r}   ru   ru   rv   get_sheet_visiblef  s    zWorksheet.get_sheet_visiblec                 C   s   t || _d S rx   )r   r%   rz   ru   ru   rv   set_page_previewm  s    zWorksheet.set_page_previewc                 C   s
   t | jS rx   )r   r%   r}   ru   ru   rv   get_page_previewp  s    zWorksheet.get_page_previewc                 C   s
   || _ d S rx   r&   rz   ru   ru   rv   set_first_visible_roww  s    zWorksheet.set_first_visible_rowc                 C   s   | j S rx   r   r}   ru   ru   rv   get_first_visible_rowz  s    zWorksheet.get_first_visible_rowc                 C   s
   || _ d S rx   r'   rz   ru   ru   rv   set_first_visible_col  s    zWorksheet.set_first_visible_colc                 C   s   | j S rx   r   r}   ru   ru   rv   get_first_visible_col  s    zWorksheet.get_first_visible_colc                 C   s
   || _ d S rx   r(   rz   ru   ru   rv   set_grid_colour  s    zWorksheet.set_grid_colourc                 C   s   | j S rx   r   r}   ru   ru   rv   get_grid_colour  s    zWorksheet.get_grid_colourc                 C   s
   || _ d S rx   r)   rz   ru   ru   rv   set_preview_magn  s    zWorksheet.set_preview_magnc                 C   s   | j S rx   r   r}   ru   ru   rv   get_preview_magn  s    zWorksheet.get_preview_magnc                 C   s
   || _ d S rx   r*   rz   ru   ru   rv   set_normal_magn  s    zWorksheet.set_normal_magnc                 C   s   | j S rx   r   r}   ru   ru   rv   get_normal_magn  s    zWorksheet.get_normal_magnc                 C   s
   || _ d S rx   r+   rz   ru   ru   rv   set_scl_magn  s    zWorksheet.set_scl_magnc                 C   s   | j S rx   r   r}   ru   ru   rv   get_scl_magn  s    zWorksheet.get_scl_magnc                 C   s   t || _d S rx   )absr-   rz   ru   ru   rv   set_vert_split_pos  s    zWorksheet.set_vert_split_posc                 C   s   | j S rx   )r-   r}   ru   ru   rv   get_vert_split_pos  s    zWorksheet.get_vert_split_posc                 C   s   t || _d S rx   )r   r.   rz   ru   ru   rv   set_horz_split_pos  s    zWorksheet.set_horz_split_posc                 C   s   | j S rx   )r.   r}   ru   ru   rv   get_horz_split_pos  s    zWorksheet.get_horz_split_posc                 C   s   t || _d S rx   )r   r/   rz   ru   ru   rv   set_vert_split_first_visible  s    z&Worksheet.set_vert_split_first_visiblec                 C   s   | j S rx   )r/   r}   ru   ru   rv   get_vert_split_first_visible  s    z&Worksheet.get_vert_split_first_visiblec                 C   s   t || _d S rx   )r   r0   rz   ru   ru   rv   set_horz_split_first_visible  s    z&Worksheet.set_horz_split_first_visiblec                 C   s   | j S rx   )r0   r}   ru   ru   rv   get_horz_split_first_visible  s    z&Worksheet.get_horz_split_first_visiblec                 C   s   t || _d S rx   )r   r4   rz   ru   ru   rv   set_show_auto_page_breaks  s    z#Worksheet.set_show_auto_page_breaksc                 C   s
   t | jS rx   )r   r4   r}   ru   ru   rv   get_show_auto_page_breaks  s    z#Worksheet.get_show_auto_page_breaksc                 C   s   t || _d S rx   )r   r5   rz   ru   ru   rv   set_dialogue_sheet  s    zWorksheet.set_dialogue_sheetc                 C   s
   t | jS rx   )r   r5   r}   ru   ru   rv   get_dialogue_sheet  s    zWorksheet.get_dialogue_sheetc                 C   s   t || _d S rx   )r   r6   rz   ru   ru   rv   set_auto_style_outline  s    z Worksheet.set_auto_style_outlinec                 C   s
   t | jS rx   )r   r6   r}   ru   ru   rv   get_auto_style_outline  s    z Worksheet.get_auto_style_outlinec                 C   s   t || _d S rx   )r   r7   rz   ru   ru   rv   set_outline_below  s    zWorksheet.set_outline_belowc                 C   s
   t | jS rx   )r   r7   r}   ru   ru   rv   get_outline_below  s    zWorksheet.get_outline_belowc                 C   s   t || _d S rx   )r   r8   rz   ru   ru   rv   set_outline_right  s    zWorksheet.set_outline_rightc                 C   s
   t | jS rx   )r   r8   r}   ru   ru   rv   get_outline_right  s    zWorksheet.get_outline_rightc                 C   s
   || _ d S rx   r9   rz   ru   ru   rv   set_fit_num_pages"  s    zWorksheet.set_fit_num_pagesc                 C   s   | j S rx   r   r}   ru   ru   rv   get_fit_num_pages%  s    zWorksheet.get_fit_num_pagesc                 C   s   t || _d S rx   )r   r:   rz   ru   ru   rv   set_show_row_outline,  s    zWorksheet.set_show_row_outlinec                 C   s
   t | jS rx   )r   r:   r}   ru   ru   rv   get_show_row_outline/  s    zWorksheet.get_show_row_outlinec                 C   s   t || _d S rx   )r   r;   rz   ru   ru   rv   set_show_col_outline6  s    zWorksheet.set_show_col_outlinec                 C   s
   t | jS rx   )r   r;   r}   ru   ru   rv   get_show_col_outline9  s    zWorksheet.get_show_col_outlinec                 C   s   t || _d S rx   )r   r<   rz   ru   ru   rv   set_alt_expr_eval@  s    zWorksheet.set_alt_expr_evalc                 C   s
   t | jS rx   )r   r<   r}   ru   ru   rv   get_alt_expr_evalC  s    zWorksheet.get_alt_expr_evalc                 C   s   t || _d S rx   )r   r=   rz   ru   ru   rv   set_alt_formula_entriesJ  s    z!Worksheet.set_alt_formula_entriesc                 C   s
   t | jS rx   )r   r=   r}   ru   ru   rv   get_alt_formula_entriesM  s    z!Worksheet.get_alt_formula_entriesc                 C   s
   || _ d S rx   r>   rz   ru   ru   rv   set_row_default_heightT  s    z Worksheet.set_row_default_heightc                 C   s   | j S rx   r   r}   ru   ru   rv   get_row_default_heightW  s    z Worksheet.get_row_default_heightc                 C   s
   || _ d S rx   rC   rz   ru   ru   rv   set_col_default_width^  s    zWorksheet.set_col_default_widthc                 C   s   | j S rx   r   r}   ru   ru   rv   get_col_default_widtha  s    zWorksheet.get_col_default_widthc                 C   s   |d@ | _ d S )Nr   rD   rz   ru   ru   rv   set_calc_modeh  s    zWorksheet.set_calc_modec                 C   s   | j S rx   r   r}   ru   ru   rv   get_calc_modek  s    zWorksheet.get_calc_modec                 C   s
   || _ d S rx   rE   rz   ru   ru   rv   set_calc_countr  s    zWorksheet.set_calc_countc                 C   s   | j S rx   r   r}   ru   ru   rv   get_calc_countu  s    zWorksheet.get_calc_countc                 C   s   t || _d S rx   )r   rF   rz   ru   ru   rv   set_RC_ref_mode|  s    zWorksheet.set_RC_ref_modec                 C   s
   t | jS rx   )r   rF   r}   ru   ru   rv   get_RC_ref_mode  s    zWorksheet.get_RC_ref_modec                 C   s   t || _d S rx   )r   rG   rz   ru   ru   rv   set_iterations_on  s    zWorksheet.set_iterations_onc                 C   s
   t | jS rx   )r   rG   r}   ru   ru   rv   get_iterations_on  s    zWorksheet.get_iterations_onc                 C   s
   || _ d S rx   rH   rz   ru   ru   rv   	set_delta  s    zWorksheet.set_deltac                 C   s   | j S rx   r   r}   ru   ru   rv   	get_delta  s    zWorksheet.get_deltac                 C   s   t || _d S rx   )r   rI   rz   ru   ru   rv   set_save_recalc  s    zWorksheet.set_save_recalcc                 C   s
   t | jS rx   )r   rI   r}   ru   ru   rv   get_save_recalc  s    zWorksheet.get_save_recalcc                 C   s   t || _d S rx   )r   rJ   rz   ru   ru   rv   set_print_headers  s    zWorksheet.set_print_headersc                 C   s
   t | jS rx   )r   rJ   r}   ru   ru   rv   get_print_headers  s    zWorksheet.get_print_headersc                 C   s   t || _d S rx   )r   rK   rz   ru   ru   rv   set_print_grid  s    zWorksheet.set_print_gridc                 C   s
   t | jS rx   )r   rK   r}   ru   ru   rv   get_print_grid  s    zWorksheet.get_print_gridc                 C   s
   || _ d S rx   rM   rz   ru   ru   rv   set_vert_page_breaks  s    zWorksheet.set_vert_page_breaksc                 C   s   | j S rx   r   r}   ru   ru   rv   get_vert_page_breaks  s    zWorksheet.get_vert_page_breaksc                 C   s
   || _ d S rx   rN   rz   ru   ru   rv   set_horz_page_breaks  s    zWorksheet.set_horz_page_breaksc                 C   s   | j S rx   r   r}   ru   ru   rv   get_horz_page_breaks  s    zWorksheet.get_horz_page_breaksc                 C   s"   t |trt|| jj}|| _d S rx   )
isinstancestrr   r   encodingrO   rz   ru   ru   rv   set_header_str  s    
zWorksheet.set_header_strc                 C   s   | j S rx   )rO   r}   ru   ru   rv   get_header_str  s    zWorksheet.get_header_strc                 C   s"   t |trt|| jj}|| _d S rx   )r   r   r   r   r   rP   rz   ru   ru   rv   set_footer_str  s    
zWorksheet.set_footer_strc                 C   s   | j S rx   )rP   r}   ru   ru   rv   get_footer_str  s    zWorksheet.get_footer_strc                 C   s   t || _d S rx   )r   rQ   rz   ru   ru   rv   set_print_centered_vert  s    z!Worksheet.set_print_centered_vertc                 C   s
   t | jS rx   )r   rQ   r}   ru   ru   rv   get_print_centered_vert  s    z!Worksheet.get_print_centered_vertc                 C   s   t || _d S rx   )r   rR   rz   ru   ru   rv   set_print_centered_horz  s    z!Worksheet.set_print_centered_horzc                 C   s
   t | jS rx   )r   rR   r}   ru   ru   rv   get_print_centered_horz  s    z!Worksheet.get_print_centered_horzc                 C   s
   || _ d S rx   rS   rz   ru   ru   rv   set_left_margin  s    zWorksheet.set_left_marginc                 C   s   | j S rx   r   r}   ru   ru   rv   get_left_margin  s    zWorksheet.get_left_marginc                 C   s
   || _ d S rx   rT   rz   ru   ru   rv   set_right_margin  s    zWorksheet.set_right_marginc                 C   s   | j S rx   r   r}   ru   ru   rv   get_right_margin  s    zWorksheet.get_right_marginc                 C   s
   || _ d S rx   rU   rz   ru   ru   rv   set_top_margin  s    zWorksheet.set_top_marginc                 C   s   | j S rx   r   r}   ru   ru   rv   get_top_margin  s    zWorksheet.get_top_marginc                 C   s
   || _ d S rx   rV   rz   ru   ru   rv   set_bottom_margin   s    zWorksheet.set_bottom_marginc                 C   s   | j S rx   r  r}   ru   ru   rv   get_bottom_margin#  s    zWorksheet.get_bottom_marginc                 C   s
   || _ d S rx   rW   rz   ru   ru   rv   set_paper_size_code*  s    zWorksheet.set_paper_size_codec                 C   s   | j S rx   r  r}   ru   ru   rv   get_paper_size_code-  s    zWorksheet.get_paper_size_codec                 C   s
   || _ d S rx   rX   rz   ru   ru   rv   set_print_scaling4  s    zWorksheet.set_print_scalingc                 C   s   | j S rx   r  r}   ru   ru   rv   get_print_scaling7  s    zWorksheet.get_print_scalingc                 C   s
   || _ d S rx   rY   rz   ru   ru   rv   set_start_page_number>  s    zWorksheet.set_start_page_numberc                 C   s   | j S rx   r
  r}   ru   ru   rv   get_start_page_numberA  s    zWorksheet.get_start_page_numberc                 C   s
   || _ d S rx   rZ   rz   ru   ru   rv   set_fit_width_to_pagesH  s    z Worksheet.set_fit_width_to_pagesc                 C   s   | j S rx   r  r}   ru   ru   rv   get_fit_width_to_pagesK  s    z Worksheet.get_fit_width_to_pagesc                 C   s
   || _ d S rx   r[   rz   ru   ru   rv   set_fit_height_to_pagesR  s    z!Worksheet.set_fit_height_to_pagesc                 C   s   | j S rx   r  r}   ru   ru   rv   get_fit_height_to_pagesU  s    z!Worksheet.get_fit_height_to_pagesc                 C   s   t || _d S rx   )r   r\   rz   ru   ru   rv   set_print_in_rows\  s    zWorksheet.set_print_in_rowsc                 C   s
   t | jS rx   )r   r\   r}   ru   ru   rv   get_print_in_rows_  s    zWorksheet.get_print_in_rowsc                 C   s   t || _d S rx   )r   r]   rz   ru   ru   rv   set_portraitf  s    zWorksheet.set_portraitc                 C   s
   t | jS rx   )r   r]   r}   ru   ru   rv   get_portraiti  s    zWorksheet.get_portraitc                 C   s   t | | _d S rx   )r   r^   rz   ru   ru   rv   set_print_colourp  s    zWorksheet.set_print_colourc                 C   s   t | j S rx   )r   r^   r}   ru   ru   rv   get_print_colours  s    zWorksheet.get_print_colourc                 C   s   t || _d S rx   )r   r_   rz   ru   ru   rv   set_print_draftz  s    zWorksheet.set_print_draftc                 C   s
   t | jS rx   )r   r_   r}   ru   ru   rv   get_print_draft}  s    zWorksheet.get_print_draftc                 C   s   t || _d S rx   )r   r`   rz   ru   ru   rv   set_print_notes  s    zWorksheet.set_print_notesc                 C   s
   t | jS rx   )r   r`   r}   ru   ru   rv   get_print_notes  s    zWorksheet.get_print_notesc                 C   s   t || _d S rx   )r   ra   rz   ru   ru   rv   set_print_notes_at_end  s    z Worksheet.set_print_notes_at_endc                 C   s
   t | jS rx   )r   ra   r}   ru   ru   rv   get_print_notes_at_end  s    z Worksheet.get_print_notes_at_endc                 C   s   t || _d S rx   )r   rb   rz   ru   ru   rv   set_print_omit_errors  s    zWorksheet.set_print_omit_errorsc                 C   s
   t | jS rx   )r   rb   r}   ru   ru   rv   get_print_omit_errors  s    zWorksheet.get_print_omit_errorsc                 C   s
   || _ d S rx   rc   rz   ru   ru   rv   set_print_hres  s    zWorksheet.set_print_hresc                 C   s   | j S rx   r!  r}   ru   ru   rv   get_print_hres  s    zWorksheet.get_print_hresc                 C   s
   || _ d S rx   rd   rz   ru   ru   rv   set_print_vres  s    zWorksheet.set_print_vresc                 C   s   | j S rx   r$  r}   ru   ru   rv   get_print_vres  s    zWorksheet.get_print_vresc                 C   s
   || _ d S rx   re   rz   ru   ru   rv   set_header_margin  s    zWorksheet.set_header_marginc                 C   s   | j S rx   r'  r}   ru   ru   rv   get_header_margin  s    zWorksheet.get_header_marginc                 C   s
   || _ d S rx   rf   rz   ru   ru   rv   set_footer_margin  s    zWorksheet.set_footer_marginc                 C   s   | j S rx   r*  r}   ru   ru   rv   get_footer_margin  s    zWorksheet.get_footer_marginc                 C   s
   || _ d S rx   rg   rz   ru   ru   rv   set_copies_num  s    zWorksheet.set_copies_numc                 C   s   | j S rx   r-  r}   ru   ru   rv   get_copies_num  s    zWorksheet.get_copies_numc                 C   s   t || _d S rx   )r   rh   rz   ru   ru   rv   set_wnd_protect  s    zWorksheet.set_wnd_protectc                 C   s
   t | jS rx   )r   rh   r}   ru   ru   rv   get_wnd_protect  s    zWorksheet.get_wnd_protectc                 C   s   t || _d S rx   )r   ri   rz   ru   ru   rv   set_obj_protect  s    zWorksheet.set_obj_protectc                 C   s
   t | jS rx   )r   ri   r}   ru   ru   rv   get_obj_protect  s    zWorksheet.get_obj_protectc                 C   s   t || _d S rx   )r   rj   rz   ru   ru   rv   set_protect  s    zWorksheet.set_protectc                 C   s
   t | jS rx   )r   rj   r}   ru   ru   rv   get_protect  s    zWorksheet.get_protectc                 C   s   t || _d S rx   )r   rk   rz   ru   ru   rv   set_scen_protect  s    zWorksheet.set_scen_protectc                 C   s
   t | jS rx   )r   rk   r}   ru   ru   rv   get_scen_protect  s    zWorksheet.get_scen_protectc                 C   s
   || _ d S rx   rl   rz   ru   ru   rv   set_password  s    zWorksheet.set_passwordc                 C   s   | j S rx   r8  r}   ru   ru   rv   get_password  s    zWorksheet.get_passwordc                 C   s   | j S rx   r   r}   ru   ru   rv   r     s    r   c                 C   s   |  |||| dS )a  
        This method is used to write a cell to a :class:`Worksheet`.

        :param r:

           The zero-relative number of the row in the worksheet to which
           the cell should be written.

        :param c:

           The zero-relative number of the column in the worksheet to which
           the cell should be written.

        :param label:

           The data value to be written.

           An :class:`int`, :class:`long`, or
           :class:`~decimal.Decimal` instance is converted to :class:`float`.

           A :class:`unicode` instance is written as is. A :class:`bytes`
           instance is converted to :class:`unicode` using the
           encoding, which defaults to ``ascii``, specified when the
           :class:`Workbook` instance was created.

           A :class:`~datetime.datetime`, :class:`~datetime.date` or
           :class:`~datetime.time` instance is converted into Excel date format
           (a float representing the number of days since (typically)
           ``1899-12-31T00:00:00``, under the pretence that
           1900 was a leap year).

           A :class:`bool` instance will show up as ``TRUE`` or ``FALSE`` in
           Excel.

           ``None`` causes the cell to be blank: no data, only formatting.

           An :class:`xlwt.Formula` instance causes an Excel formula to be
           written.

        :param style:

           A style, also known as an XF (extended format), is an
           :class:`~xlwt.Style.XFStyle` object, which encapsulates the
           formatting applied to the cell and its contents.

           :class:`~xlwt.Style.XFStyle` objects are best set up using the
           :func:`~xlwt.Style.easyxf` function. They may also be set up by
           setting attributes in :class:`Alignment`, :class:`Borders`,
           :class:`Pattern`, :class:`Font` and :class:`Protection` objects then
           setting those objects and a format string as attributes of an
           :class:`~xlwt.Style.XFStyle` object.
        N)rowwrite)rt   rclabelstyleru   ru   rv   r<    s    5zWorksheet.writec                 C   s   |  |||| d S rx   )r;  Zset_cell_rich_text)rt   r=  r>  Zrich_text_listr@  ru   ru   rv   write_rich_textB  s    zWorksheet.write_rich_textc                 C   sd   ||kr |  ||d || t|d |d D ]}|  |||| q2| j||||f d S Nr   )r;  write_blanksranger   append)rt   r1r2c1c2r@  r=  ru   ru   rv   mergeE  s
    zWorksheet.mergec                 C   s   d|  kr|  krdks$n t d|  krB|  krBdksHn t | |||| ||krx| ||d || t|d |d D ]}| |||| q| j||||f d S )Nr	   r   r   r   )AssertionErrorr<  r;  rC  rD  r   rE  )rt   rF  rG  rH  rI  r?  r@  r=  ru   ru   rv   write_mergeW  s    $$zWorksheet.write_merger	   r   c           
   
   C   s@   t |}t ||| |||||}	|  j|	 |  7  _d S rx   )r   ZImDataBmpRecordObjBmpRecordr   get)
rt   filenamer;  colxyscale_xscale_ybmpobjru   ru   rv   insert_bitmapa  s    
zWorksheet.insert_bitmapc           
   
   C   s@   t |}t ||| |||||}	|  j|	 |  7  _d S rx   )r   ZImRawDataBmpRecordrM  r   rN  )
rt   datar;  rP  rQ  rR  rS  rT  rU  rV  ru   ru   rv   insert_bitmap_datag  s    
zWorksheet.insert_bitmap_datac                 C   s&   || j kr| || | j |< | j | S rx   )r   r   rt   Zindxru   ru   rv   rP  m  s    
zWorksheet.colc                 C   sb   || j krX|| jkr&td|| jf | || | j |< || jkrH|| _|| jk rX|| _| j | S )Nz8Attempt to reuse row index %d of sheet %r after flushing)r   rr   	Exceptionr   r   rm   rn   rZ  ru   ru   rv   r;  r  s    



zWorksheet.rowc                 C   s    || j kr| j |  S dS d S )N   )r   Zget_height_in_pixels)rt   r;  ru   ru   rv   
row_height}  s    
zWorksheet.row_heightc                 C   s    || j kr| j |  S dS d S )Nr   )r   Zwidth_in_pixels)rt   rP  ru   ru   rv   	col_width  s    
zWorksheet.col_widthc                 C   s   t t jj S rx   )r   ZBiff8BOFRecordZ	WORKSHEETrN  r}   ru   ru   rv   Z	__bof_rec  s    zWorksheet.__bof_recc                    s4    j r0t fdd j D d }t| j _d S )Nc                 3   s   | ]} j | jV  qd S rx   )r   level).0r=  r}   ru   rv   	<genexpr>  s     z8Worksheet.__update_row_visible_levels.<locals>.<genexpr>r   )r   maxrs   )rt   tempru   r}   rv   Z__update_row_visible_levels  s    z%Worksheet.__update_row_visible_levelsc                    sP       d}t jdkr6t fdd jD d }t j j j|	 S )Nr	   c                 3   s   | ]} j | jV  qd S rx   )r   r_  )r`  r>  r}   ru   rv   ra    s     z'Worksheet.__guts_rec.<locals>.<genexpr>r   )
%_Worksheet__update_row_visible_levelslenr   rb  r   Z
GutsRecordr2   r3   rs   rN  )rt   Zcol_visible_levelsru   r}   rv   Z
__guts_rec  s       zWorksheet.__guts_recc                 C   sb   d}|| j d@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }| j}t|| S )Nr	   r      r   )r?   r@   rA   rB   r>   r   ZDefaultRowHeightRecordrN  )rt   optionsZdefhtru   ru   rv   Z__defaultrowheight_rec  s    z Worksheet.__defaultrowheight_recc                 C   s   d}|| j d@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d	> O }|| jd@ d
> O }|| j	d@ d> O }t
| S )Nr	   r               r   
            )r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r   ZWSBoolRecordrN  )rt   rg  ru   ru   rv   Z__wsbool_rec  s    zWorksheet.__wsbool_recc                 C   s   t   S rx   )r   Z	EOFRecordrN  r}   ru   ru   rv   Z	__eof_rec  s    zWorksheet.__eof_recc                 C   s&   d}| j D ]}|| j |  7 }q
|S Nr   )r   Zget_biff_record)rt   resultrP  ru   ru   rv   Z__colinfo_rec  s    
zWorksheet.__colinfo_recc                 C   s   t | j| j| j| j S rx   )r   ZDimensionsRecordrn   rm   rp   ro   rN  r}   ru   ru   rv   Z__dimensions_rec  s      zWorksheet.__dimensions_recc              	   C   sB  d}|| j d@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d> O }|| jd@ d	> O }|| j	d@ d
> O }|| j
d@ d> O }|| jd@ d> O }| jr| j}n4| jr| j}d}n
| j}d}||ks|dkrd }t|| j| j| j| j| j| S )Nr	   r   rf  r   rh  ri  rj  rk  r   r   rl  rm  <   r   )r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r,   r+   r)   r*   r   ZWindow2Recordr&   r'   r(   rN  )rt   rg  scl_magnZmagn_defaultru   ru   rv   Z__window2_rec  s>        zWorksheet.__window2_recc                 C   sD  | j d kr| jd krdS | j d kr(d| _ | jd kr8d| _| jr| jd krP| j | _| jd krb| j| _| j dkr|| jdkr|d}n8| j dkr| jdkrd}n| j dkr| jdkrd}nd}nd| jd krd| _| jd krd| _| js| jdkrd| j d | _| j dkrd| j  d	 | _ | j}tjt	t
| j | j| j| j|f  }|S )
Nr   r	   r   rf  r      r   gK7Ax\@i  )r-   r.   r   r/   r0   r1   active_paner   ZPanesRecordmapr   rN  )rt   ru  rq  ru   ru   rv   Z__panes_rec  sH    






zWorksheet.__panes_recc                 C   s:   g }t | jD ] }||  ||  qd|S rp  )r   r   rE  Zget_row_biff_dataZget_cells_biff_datajoin)rt   rq  r;  ru   ru   rv   Z__row_blocks_rec  s
    zWorksheet.__row_blocks_recc                 C   s   t | j S rx   )r   ZMergedCellsRecordr   rN  r}   ru   ru   rv   Z__merged_rec#  s    zWorksheet.__merged_recc                 C   s   | j S rx   r   r}   ru   ru   rv   Z__bitmaps_rec&  s    zWorksheet.__bitmaps_recc                 C   s   d}|t | jd@  7 }|t | jd@  7 }|t | jd@  7 }|t | j	d@  7 }|t 
| j 7 }|t | jd@  7 }|S )Nr   r   r   )r   ZCalcModeRecordrD   rN  ZCalcCountRecordrE   ZRefModeRecordrF   ZIterationRecordrG   ZDeltaRecordrH   ZSaveRecalcRecordrI   rt   rq  ru   ru   rv   Z__calc_settings_rec)  s    zWorksheet.__calc_settings_recc                 C   s  d}|t | j 7 }|t | j 7 }|t | j 7 }|t | j	 7 }|t 
| j 7 }|t | j 7 }|t | j 7 }|t | j 7 }|t | j 7 }|t | j 7 }|t | j 7 }|t | j 7 }|t | j 7 }| jd@ d> }|| jd@ d> O }|dO }|| jd@ d> O }|| jd@ d> O }|| j d@ d> O }|dO }|dO }|| j!d@ d> O }|| j"d@ d	> O }|t #| j$| j%| j&| j'| j(|| j)| j*| j+| j,| j- 7 }|S )
Nr   r   r	   r   rh  ri     r   rl  ).r   ZPrintHeadersRecordrJ   rN  ZPrintGridLinesRecordrK   ZGridSetRecordrL   ZHorizontalPageBreaksRecordrN   ZVerticalPageBreaksRecordrM   ZHeaderRecordrO   ZFooterRecordrP   ZHCenterRecordrR   ZVCenterRecordrQ   ZLeftMarginRecordrS   ZRightMarginRecordrT   ZTopMarginRecordrU   ZBottomMarginRecordrV   r\   r]   r^   r_   r`   ra   rb   ZSetupPageRecordrW   rX   rY   rZ   r[   rc   rd   re   rf   rg   )rt   rq  Zsetup_page_optionsru   ru   rv   Z__print_settings_rec3  sJ    

zWorksheet.__print_settings_recc                 C   sl   d}|t | j 7 }|t | j 7 }|t | j 7 }|t | j	 7 }|t 
| j 7 }|S rp  )r   ZProtectRecordrj   rN  ZScenProtectRecordrk   ZWindowProtectRecordrh   ZObjectProtectRecordri   ZPasswordRecordrl   rx  ru   ru   rv   Z__protection_rec[  s    zWorksheet.__protection_recc              
   C   s   |   |  |  |  |  |  |  |  |  g	}| j	rt| j	
  | j	d || j	  | j	dd ||  |  |  |  |  |  g d|S )Nr	   rf  r   )_Worksheet__bof_rec_Worksheet__calc_settings_rec_Worksheet__guts_rec _Worksheet__defaultrowheight_rec_Worksheet__wsbool_rec_Worksheet__colinfo_rec_Worksheet__dimensions_rec_Worksheet__print_settings_rec_Worksheet__protection_recrq   flushseekrE  readextend_Worksheet__row_blocks_rec_Worksheet__merged_rec_Worksheet__bitmaps_rec_Worksheet__window2_rec_Worksheet__panes_rec_Worksheet__eof_recrw  rx  ru   ru   rv   get_biff_datad  s0    
zWorksheet.get_biff_datac                 C   sL   | j d krt | _ | j |   | jD ]}d| j|< q*|   i | _d S rB  )rq   tempfileTemporaryFiler<  r  r   rr   rd  )rt   Zrowxru   ru   rv   flush_row_data  s    


zWorksheet.flush_row_dataN)F)r	   r	   r   r   )r	   r	   r   r   (  __name__
__module____qualname____doc__ru  rw   r|   r~   propertynamer   parentr   Zrowsr   colsr   Zmerged_rangesr   Zbmp_recr   r   Zshow_formulasr   r   Z	show_gridr   r   Zshow_headersr   r   Zpanes_frozenr   r   Zauto_colour_gridr   r   Zcols_right_to_leftr   r   Zshow_outliner   r   Zremove_splitsr   r   selectedr   r   Zsheet_visibler   r   Zpage_previewr   r   Zfirst_visible_rowr   r   Zfirst_visible_colr   r   Zgrid_colourr   r   Zpreview_magnr   r   Znormal_magnr   r   rs  r   r   Zvert_split_posr   r   Zhorz_split_posr   r   Zvert_split_first_visibler   r   Zhorz_split_first_visibler   r   Zshow_auto_page_breaksr   r   Zdialogue_sheetr   r   Zauto_style_outliner   r   Zoutline_belowr   r   Zoutline_rightr   r   Zfit_num_pagesr   r   Zshow_row_outliner   r   Zshow_col_outliner   r   Zalt_expr_evalr   r   Zalt_formula_entriesr   r   Zrow_default_heightr   r   Zcol_default_widthr   r   Z	calc_moder   r   Z
calc_countr   r   ZRC_ref_moder   r   Ziterations_onr   r   deltar   r   Zsave_recalcr   r   Zprint_headersr   r   Z
print_gridr   r   Zvert_page_breaksr   r   Zhorz_page_breaksr   r   
header_strr   r   Z
footer_strr   r   Zprint_centered_vertr   r   Zprint_centered_horzr   r   Zleft_marginr   r   Zright_marginr   r   Z
top_marginr  r  Zbottom_marginr  r  Zpaper_size_coder  r	  Zprint_scalingr  r  Zstart_page_numberr  r  Zfit_width_to_pagesr  r  Zfit_height_to_pagesr  r  Zprint_in_rowsr  r  Zportraitr  r  Zprint_colourr  r  Zprint_draftr  r  Zprint_notesr  r  Zprint_notes_at_endr  r   Zprint_omit_errorsr"  r#  Z
print_hresr%  r&  Z
print_vresr(  r)  Zheader_marginr+  r,  Zfooter_marginr.  r/  Z
copies_numr0  r1  Zwnd_protectr2  r3  Zobj_protectr4  r5  Zprotectr6  r7  Zscen_protectr9  r:  passwordr   Zdefault_styler<  rA  rJ  rL  rW  rY  rP  r;  r]  r^  rz  rd  r|  r}  r~  r  r  r  r  r  r  r  r  r{  r  r  r  r  ru   ru   ru   rv   r
   +   s  
 










































































7
	&1
(	r
   )r   r   r   r   r   r   compatr   r   r  objectr
   ru   ru   ru   rv   <module>#   s   