… | |
… | |
191 | psiconv_size_t space_below; |
191 | psiconv_size_t space_below; |
192 | psiconv_bool_t keep_together; |
192 | psiconv_bool_t keep_together; |
193 | psiconv_bool_t keep_with_next; |
193 | psiconv_bool_t keep_with_next; |
194 | psiconv_bool_t on_next_page; |
194 | psiconv_bool_t on_next_page; |
195 | psiconv_bool_t no_widow_protection; |
195 | psiconv_bool_t no_widow_protection; |
|
|
196 | psiconv_bool_t wrap_to_fit_cell; |
196 | psiconv_length_t border_distance; |
197 | psiconv_length_t border_distance; |
197 | psiconv_bullet bullet; |
198 | psiconv_bullet bullet; |
198 | psiconv_border left_border; |
199 | psiconv_border left_border; |
199 | psiconv_border right_border; |
200 | psiconv_border right_border; |
200 | psiconv_border top_border; |
201 | psiconv_border top_border; |
… | |
… | |
404 | typedef struct psiconv_clipart_f_s |
405 | typedef struct psiconv_clipart_f_s |
405 | { |
406 | { |
406 | psiconv_cliparts sections; |
407 | psiconv_cliparts sections; |
407 | } *psiconv_clipart_f; |
408 | } *psiconv_clipart_f; |
408 | |
409 | |
|
|
410 | typedef struct psiconv_sheet_ref_s |
|
|
411 | { |
|
|
412 | psiconv_s16 offset; |
|
|
413 | psiconv_bool_t absolute; |
|
|
414 | } psiconv_sheet_ref_t; |
|
|
415 | |
|
|
416 | typedef struct psiconv_sheet_cell_reference_s |
|
|
417 | { |
|
|
418 | psiconv_sheet_ref_t row; |
|
|
419 | psiconv_sheet_ref_t column; |
|
|
420 | } psiconv_sheet_cell_reference_t; |
|
|
421 | |
|
|
422 | typedef struct psiconv_sheet_cell_block_s |
|
|
423 | { |
|
|
424 | psiconv_sheet_cell_reference_t first; |
|
|
425 | psiconv_sheet_cell_reference_t last; |
|
|
426 | } psiconv_sheet_cell_block_t; |
|
|
427 | |
|
|
428 | typedef enum psiconv_cell_type |
|
|
429 | { |
|
|
430 | psiconv_cell_blank, |
|
|
431 | psiconv_cell_int, |
|
|
432 | psiconv_cell_bool, |
|
|
433 | psiconv_cell_error, |
|
|
434 | psiconv_cell_float, |
|
|
435 | psiconv_cell_string |
|
|
436 | } psiconv_cell_type_t; |
|
|
437 | |
|
|
438 | typedef enum psiconv_sheet_errorcode |
|
|
439 | { |
|
|
440 | psiconv_sheet_error_none, |
|
|
441 | psiconv_sheet_error_null, |
|
|
442 | psiconv_sheet_error_divzero, |
|
|
443 | psiconv_sheet_error_value, |
|
|
444 | psiconv_sheet_error_reference, |
|
|
445 | psiconv_sheet_error_name, |
|
|
446 | psiconv_sheet_error_number, |
|
|
447 | psiconv_sheet_error_notavail |
|
|
448 | } psiconv_sheet_errorcode_t; |
|
|
449 | |
|
|
450 | typedef enum psiconv_sheet_numberformat_code |
|
|
451 | { |
|
|
452 | psiconv_numberformat_general, |
|
|
453 | psiconv_numberformat_fixeddecimal, |
|
|
454 | psiconv_numberformat_scientific, |
|
|
455 | psiconv_numberformat_currency, |
|
|
456 | psiconv_numberformat_percent, |
|
|
457 | psiconv_numberformat_triads, |
|
|
458 | psiconv_numberformat_boolean, |
|
|
459 | psiconv_numberformat_text, |
|
|
460 | psiconv_numberformat_date_dmm, |
|
|
461 | psiconv_numberformat_date_mmd, |
|
|
462 | psiconv_numberformat_date_ddmmyy, |
|
|
463 | psiconv_numberformat_date_mmddyy, |
|
|
464 | psiconv_numberformat_date_yymmdd, |
|
|
465 | psiconv_numberformat_date_dmmm, |
|
|
466 | psiconv_numberformat_date_dmmmyy, |
|
|
467 | psiconv_numberformat_date_ddmmmyy, |
|
|
468 | psiconv_numberformat_date_mmm, |
|
|
469 | psiconv_numberformat_date_monthname, |
|
|
470 | psiconv_numberformat_date_mmmyy, |
|
|
471 | psiconv_numberformat_date_monthnameyy, |
|
|
472 | psiconv_numberformat_date_monthnamedyyyy, |
|
|
473 | psiconv_numberformat_datetime_ddmmyyyyhhii, |
|
|
474 | psiconv_numberformat_datetime_ddmmyyyyHHii, |
|
|
475 | psiconv_numberformat_datetime_mmddyyyyhhii, |
|
|
476 | psiconv_numberformat_datetime_mmddyyyyHHii, |
|
|
477 | psiconv_numberformat_datetime_yyyymmddhhii, |
|
|
478 | psiconv_numberformat_datetime_yyyymmddHHii, |
|
|
479 | psiconv_numberformat_time_hhii, |
|
|
480 | psiconv_numberformat_time_hhiiss, |
|
|
481 | psiconv_numberformat_time_HHii, |
|
|
482 | psiconv_numberformat_time_HHiiss |
|
|
483 | } psiconv_sheet_numberformat_code_t; |
|
|
484 | |
|
|
485 | typedef struct psiconv_sheet_numberformat_s |
|
|
486 | { |
|
|
487 | psiconv_sheet_numberformat_code_t code; |
|
|
488 | psiconv_u8 decimal; |
|
|
489 | } *psiconv_sheet_numberformat; |
|
|
490 | |
|
|
491 | typedef struct psiconv_sheet_cell_layout_s |
|
|
492 | { |
|
|
493 | psiconv_character_layout character; |
|
|
494 | psiconv_paragraph_layout paragraph; |
|
|
495 | psiconv_sheet_numberformat numberformat; |
|
|
496 | } * psiconv_sheet_cell_layout; |
|
|
497 | |
|
|
498 | typedef struct psiconv_sheet_cell_s |
|
|
499 | { |
|
|
500 | psiconv_u16 column; |
|
|
501 | psiconv_u16 row; |
|
|
502 | psiconv_cell_type_t type; |
|
|
503 | union { |
|
|
504 | psiconv_u32 dat_int; |
|
|
505 | double dat_float; |
|
|
506 | char *dat_string; |
|
|
507 | psiconv_bool_t dat_bool; |
|
|
508 | psiconv_sheet_errorcode_t dat_error; |
|
|
509 | } data; |
|
|
510 | psiconv_sheet_cell_layout layout; |
|
|
511 | psiconv_bool_t calculated; |
|
|
512 | psiconv_u32 ref_formula; |
|
|
513 | } *psiconv_sheet_cell; |
|
|
514 | |
|
|
515 | typedef psiconv_list psiconv_sheet_cell_list; |
|
|
516 | |
409 | typedef struct psiconv_sheet_status_section_s |
517 | typedef struct psiconv_sheet_status_section_s |
410 | { |
518 | { |
411 | psiconv_bool_t show_graph; |
519 | psiconv_bool_t show_graph; |
412 | psiconv_u32 cursor_row; |
520 | psiconv_u32 cursor_row; |
413 | psiconv_u32 cursor_column; |
521 | psiconv_u32 cursor_column; |
… | |
… | |
435 | psiconv_formula_op_mul, |
543 | psiconv_formula_op_mul, |
436 | psiconv_formula_op_div, |
544 | psiconv_formula_op_div, |
437 | psiconv_formula_op_pow, |
545 | psiconv_formula_op_pow, |
438 | psiconv_formula_op_pos, |
546 | psiconv_formula_op_pos, |
439 | psiconv_formula_op_neg, |
547 | psiconv_formula_op_neg, |
|
|
548 | psiconv_formula_op_not, |
|
|
549 | psiconv_formula_op_and, |
|
|
550 | psiconv_formula_op_or, |
440 | psiconv_formula_op_con, |
551 | psiconv_formula_op_con, |
441 | psiconv_formula_op_bra, |
552 | psiconv_formula_op_bra, |
442 | psiconv_formula_mark_eof, |
553 | psiconv_formula_mark_eof, |
443 | psiconv_formula_dat_float, |
554 | psiconv_formula_dat_float, |
444 | psiconv_formula_dat_int, |
555 | psiconv_formula_dat_int, |
… | |
… | |
563 | psiconv_formula_type_t type; |
674 | psiconv_formula_type_t type; |
564 | union { |
675 | union { |
565 | psiconv_u32 dat_int; |
676 | psiconv_u32 dat_int; |
566 | double dat_float; |
677 | double dat_float; |
567 | char *dat_string; |
678 | char *dat_string; |
|
|
679 | psiconv_sheet_cell_reference_t dat_cellref; |
|
|
680 | psiconv_sheet_cell_block_t dat_cellblock; |
568 | psiconv_formula_list fun_operands; |
681 | psiconv_formula_list fun_operands; |
|
|
682 | psiconv_u32 dat_variable; |
569 | } data; |
683 | } data; |
570 | } *psiconv_formula; |
684 | } *psiconv_formula; |
571 | |
685 | |
|
|
686 | typedef struct psiconv_sheet_line_s |
|
|
687 | { |
|
|
688 | psiconv_u32 position; |
|
|
689 | psiconv_sheet_cell_layout layout; |
|
|
690 | } *psiconv_sheet_line; |
|
|
691 | |
|
|
692 | typedef psiconv_list psiconv_sheet_line_list; |
|
|
693 | /* Of struct psiconv_sheet_line_s */ |
|
|
694 | |
|
|
695 | typedef struct psiconv_sheet_grid_size_s |
|
|
696 | { |
|
|
697 | psiconv_u32 line_number; |
|
|
698 | psiconv_length_t size; |
|
|
699 | } *psiconv_sheet_grid_size; |
|
|
700 | |
|
|
701 | typedef psiconv_list psiconv_sheet_grid_size_list; |
|
|
702 | /* Of struct psiconv_sheet_grid_size_s */ |
|
|
703 | |
|
|
704 | typedef psiconv_list psiconv_sheet_grid_break_list; /* of psiconv_u32 */ |
|
|
705 | |
|
|
706 | typedef struct psiconv_sheet_grid_section_s |
|
|
707 | { |
|
|
708 | psiconv_bool_t show_column_titles; |
|
|
709 | psiconv_bool_t show_row_titles; |
|
|
710 | psiconv_bool_t show_vertical_grid; |
|
|
711 | psiconv_bool_t show_horizontal_grid; |
|
|
712 | psiconv_bool_t freeze_rows; |
|
|
713 | psiconv_bool_t freeze_columns; |
|
|
714 | psiconv_u32 frozen_rows; |
|
|
715 | psiconv_u32 frozen_columns; |
|
|
716 | psiconv_u32 first_unfrozen_row_displayed; |
|
|
717 | psiconv_u32 first_unfrozen_column_displayed; |
|
|
718 | psiconv_bool_t show_page_breaks; |
|
|
719 | psiconv_u32 first_row; |
|
|
720 | psiconv_u32 first_column; |
|
|
721 | psiconv_u32 last_row; |
|
|
722 | psiconv_u32 last_column; |
|
|
723 | psiconv_length_t default_row_height; |
|
|
724 | psiconv_length_t default_column_width; |
|
|
725 | psiconv_sheet_grid_size_list row_heights; |
|
|
726 | psiconv_sheet_grid_size_list column_heights; |
|
|
727 | psiconv_sheet_grid_break_list row_page_breaks; |
|
|
728 | psiconv_sheet_grid_break_list column_page_breaks; |
|
|
729 | } *psiconv_sheet_grid_section; |
|
|
730 | |
|
|
731 | typedef struct psiconv_sheet_worksheet_s |
|
|
732 | { |
|
|
733 | psiconv_sheet_cell_layout default_layout; |
|
|
734 | psiconv_sheet_cell_list cells; |
|
|
735 | psiconv_bool_t show_zeros; |
|
|
736 | psiconv_sheet_line_list row_default_layouts; |
|
|
737 | psiconv_sheet_line_list col_default_layouts; |
|
|
738 | psiconv_sheet_grid_section grid; |
|
|
739 | } *psiconv_sheet_worksheet; |
|
|
740 | |
|
|
741 | typedef psiconv_list psiconv_sheet_worksheet_list; |
|
|
742 | /* of struct psiconv_sheet_worksheet_s */ |
|
|
743 | |
|
|
744 | typedef enum psiconv_variable_type |
|
|
745 | { |
|
|
746 | psiconv_var_int, |
|
|
747 | psiconv_var_float, |
|
|
748 | psiconv_var_string, |
|
|
749 | psiconv_var_cellref, |
|
|
750 | psiconv_var_cellblock |
|
|
751 | } psiconv_variable_type_t; |
|
|
752 | |
|
|
753 | typedef struct psiconv_sheet_variable_s |
|
|
754 | { |
|
|
755 | psiconv_u32 number; |
|
|
756 | char *name; |
|
|
757 | psiconv_variable_type_t type; |
|
|
758 | union { |
|
|
759 | psiconv_s32 dat_int; |
|
|
760 | double dat_float; |
|
|
761 | char *dat_string; |
|
|
762 | psiconv_sheet_cell_reference_t dat_cellref; |
|
|
763 | psiconv_sheet_cell_block_t dat_cellblock; |
|
|
764 | } data; |
|
|
765 | } *psiconv_sheet_variable; |
|
|
766 | |
|
|
767 | typedef psiconv_list psiconv_sheet_variable_list; |
|
|
768 | /* of struct psiconv_sheet_variable_s */ |
|
|
769 | |
|
|
770 | typedef struct psiconv_sheet_name_section_s |
|
|
771 | { |
|
|
772 | char *name; |
|
|
773 | } *psiconv_sheet_name_section; |
|
|
774 | |
|
|
775 | typedef struct psiconv_sheet_info_section_s |
|
|
776 | { |
|
|
777 | psiconv_bool_t auto_recalc; |
|
|
778 | } *psiconv_sheet_info_section; |
|
|
779 | |
572 | typedef struct psiconv_sheet_workbook_section_s |
780 | typedef struct psiconv_sheet_workbook_section_s |
573 | { |
781 | { |
574 | psiconv_formula_list formulas; |
782 | psiconv_formula_list formulas; |
|
|
783 | psiconv_sheet_worksheet_list worksheets; |
|
|
784 | psiconv_sheet_variable_list variables; |
|
|
785 | psiconv_sheet_info_section info; |
|
|
786 | psiconv_sheet_name_section name; |
575 | } *psiconv_sheet_workbook_section; |
787 | } *psiconv_sheet_workbook_section; |
576 | |
788 | |
577 | typedef struct psiconv_sheet_f_s |
789 | typedef struct psiconv_sheet_f_s |
578 | { |
790 | { |
579 | psiconv_page_layout_section page_sec; |
791 | psiconv_page_layout_section page_sec; |
… | |
… | |
609 | #define PSICONV_ID_PAGE_LAYOUT_SECTION 0x10000105 |
821 | #define PSICONV_ID_PAGE_LAYOUT_SECTION 0x10000105 |
610 | #define PSICONV_ID_PASSWORD_SECTION 0x100000CD |
822 | #define PSICONV_ID_PASSWORD_SECTION 0x100000CD |
611 | #define PSICONV_ID_SKETCH_SECTION 0x1000007D |
823 | #define PSICONV_ID_SKETCH_SECTION 0x1000007D |
612 | #define PSICONV_ID_SHEET_STATUS_SECTION 0x1000011F |
824 | #define PSICONV_ID_SHEET_STATUS_SECTION 0x1000011F |
613 | #define PSICONV_ID_SHEET_WORKBOOK_SECTION 0x1000011D |
825 | #define PSICONV_ID_SHEET_WORKBOOK_SECTION 0x1000011D |
|
|
826 | #define PSICONV_ID_SHEET_GRAPH_SECTION 0x10000121 |
614 | |
827 | |
615 | /* Other ids */ |
828 | /* Other ids */ |
616 | #define PSICONV_ID_PAGE_DIMENSIONS1 0x100000fd |
829 | #define PSICONV_ID_PAGE_DIMENSIONS1 0x100000fd |
617 | #define PSICONV_ID_PAGE_DIMENSIONS2 0x1000010e |
830 | #define PSICONV_ID_PAGE_DIMENSIONS2 0x1000010e |
618 | #define PSICONV_ID_TEXTED_BODY 0x1000005c |
831 | #define PSICONV_ID_TEXTED_BODY 0x1000005c |
… | |
… | |
641 | extern psiconv_character_layout psiconv_clone_character_layout |
854 | extern psiconv_character_layout psiconv_clone_character_layout |
642 | (psiconv_character_layout ls); |
855 | (psiconv_character_layout ls); |
643 | |
856 | |
644 | /* Get a numbered style. Returns NULL if the style is unknown. */ |
857 | /* Get a numbered style. Returns NULL if the style is unknown. */ |
645 | extern psiconv_word_style psiconv_get_style (psiconv_word_styles_section ss, int nr); |
858 | extern psiconv_word_style psiconv_get_style (psiconv_word_styles_section ss, int nr); |
|
|
859 | /* Get a numbered formula. Returns NULL if the style is unknown. */ |
|
|
860 | extern psiconv_formula psiconv_get_formula (psiconv_formula_list ss, int nr); |
|
|
861 | |
|
|
862 | /* Return the default layout */ |
|
|
863 | extern psiconv_sheet_cell_layout psiconv_get_default_layout |
|
|
864 | (psiconv_sheet_line_list row_defaults, |
|
|
865 | psiconv_sheet_line_list col_defaults, |
|
|
866 | psiconv_sheet_cell_layout cell_default, |
|
|
867 | int row,int col); |
646 | |
868 | |
647 | extern void psiconv_free_color(psiconv_color color); |
869 | extern void psiconv_free_color(psiconv_color color); |
648 | extern void psiconv_free_border(psiconv_border border); |
870 | extern void psiconv_free_border(psiconv_border border); |
649 | extern void psiconv_free_bullet(psiconv_bullet bullet); |
871 | extern void psiconv_free_bullet(psiconv_bullet bullet); |
650 | extern void psiconv_free_font(psiconv_font font); |
872 | extern void psiconv_free_font(psiconv_font font); |
… | |
… | |
657 | (psiconv_word_styles_section styles); |
879 | (psiconv_word_styles_section styles); |
658 | extern void psiconv_free_formula(psiconv_formula formula); |
880 | extern void psiconv_free_formula(psiconv_formula formula); |
659 | extern void psiconv_free_formula_list(psiconv_formula_list list); |
881 | extern void psiconv_free_formula_list(psiconv_formula_list list); |
660 | extern void psiconv_free_sheet_status_section |
882 | extern void psiconv_free_sheet_status_section |
661 | (psiconv_sheet_status_section section); |
883 | (psiconv_sheet_status_section section); |
|
|
884 | extern void psiconv_free_sheet_cell_layout(psiconv_sheet_cell_layout layout); |
|
|
885 | extern void psiconv_free_sheet_grid_break_list |
|
|
886 | (psiconv_sheet_grid_break_list list); |
|
|
887 | extern void psiconv_free_sheet_grid_size(psiconv_sheet_grid_size s); |
|
|
888 | extern void psiconv_free_sheet_grid_size_list |
|
|
889 | (psiconv_sheet_grid_size_list list); |
|
|
890 | extern void psiconv_free_sheet_grid_section(psiconv_sheet_grid_section sec); |
|
|
891 | extern void psiconv_free_sheet_worksheet(psiconv_sheet_worksheet sheet); |
|
|
892 | extern void psiconv_free_sheet_worksheet_list |
|
|
893 | (psiconv_sheet_worksheet_list list); |
|
|
894 | |
662 | extern void psiconv_free_sheet_f(psiconv_sheet_f file); |
895 | extern void psiconv_free_sheet_f(psiconv_sheet_f file); |
|
|
896 | extern void psiconv_free_sheet_cell(psiconv_sheet_cell cell); |
|
|
897 | extern void psiconv_free_sheet_cell_list(psiconv_sheet_cell_list list); |
|
|
898 | extern void psiconv_free_sheet_numberformat |
|
|
899 | (psiconv_sheet_numberformat numberformat); |
|
|
900 | extern void psiconv_free_sheet_line_list(psiconv_sheet_line_list list); |
|
|
901 | extern void psiconv_free_sheet_line(psiconv_sheet_line line); |
|
|
902 | extern void psiconv_free_sheet_name_section(psiconv_sheet_name_section section); |
|
|
903 | extern void psiconv_free_sheet_variable(psiconv_sheet_variable list); |
|
|
904 | extern void psiconv_free_sheet_variable_list(psiconv_sheet_variable_list list); |
|
|
905 | extern void psiconv_free_sheet_info_section(psiconv_sheet_info_section section); |
663 | extern void psiconv_free_header_section(psiconv_header_section header); |
906 | extern void psiconv_free_header_section(psiconv_header_section header); |
664 | extern void psiconv_free_section_table_entry(psiconv_section_table_entry entry); |
907 | extern void psiconv_free_section_table_entry(psiconv_section_table_entry entry); |
665 | extern void psiconv_free_section_table_section |
908 | extern void psiconv_free_section_table_section |
666 | (psiconv_section_table_section section); |
909 | (psiconv_section_table_section section); |
667 | extern void psiconv_free_application_id_section |
910 | extern void psiconv_free_application_id_section |