File indexing completed on 2024-06-23 03:45:57
0001 // xlsxformat_p.h 0002 #ifndef XLSXFORMAT_P_H 0003 #define XLSXFORMAT_P_H 0004 0005 #include <QtGlobal> 0006 #include <QSharedData> 0007 #include <QMap> 0008 #include <QSet> 0009 0010 #include "xlsxformat.h" 0011 0012 QT_BEGIN_NAMESPACE_XLSX 0013 0014 class FormatPrivate : public QSharedData 0015 { 0016 public: 0017 enum FormatType 0018 { 0019 FT_Invalid = 0, 0020 FT_NumFmt = 0x01, 0021 FT_Font = 0x02, 0022 FT_Alignment = 0x04, 0023 FT_Border = 0x08, 0024 FT_Fill = 0x10, 0025 FT_Protection = 0x20 0026 }; 0027 0028 enum Property { 0029 P_STARTID, 0030 0031 //numFmt 0032 P_NumFmt_Id, 0033 P_NumFmt_FormatCode, 0034 0035 //font 0036 P_Font_STARTID, 0037 P_Font_Size = P_Font_STARTID, 0038 P_Font_Italic, 0039 P_Font_StrikeOut, 0040 P_Font_Color, 0041 P_Font_Bold, 0042 P_Font_Script, 0043 P_Font_Underline, 0044 P_Font_Outline, 0045 P_Font_Shadow, 0046 P_Font_Name, 0047 P_Font_Family, 0048 P_Font_Charset, 0049 P_Font_Scheme, 0050 P_Font_Condense, 0051 P_Font_Extend, 0052 P_Font_ENDID, 0053 0054 //border 0055 P_Border_STARTID, 0056 P_Border_LeftStyle = P_Border_STARTID, 0057 P_Border_RightStyle, 0058 P_Border_TopStyle, 0059 P_Border_BottomStyle, 0060 P_Border_DiagonalStyle, 0061 P_Border_LeftColor, 0062 P_Border_RightColor, 0063 P_Border_TopColor, 0064 P_Border_BottomColor, 0065 P_Border_DiagonalColor, 0066 P_Border_DiagonalType, 0067 P_Border_ENDID, 0068 0069 //fill 0070 P_Fill_STARTID, 0071 P_Fill_Pattern = P_Fill_STARTID, 0072 P_Fill_BgColor, 0073 P_Fill_FgColor, 0074 P_Fill_ENDID, 0075 0076 //alignment 0077 P_Alignment_STARTID, 0078 P_Alignment_AlignH = P_Alignment_STARTID, 0079 P_Alignment_AlignV, 0080 P_Alignment_Wrap, 0081 P_Alignment_Rotation, 0082 P_Alignment_Indent, 0083 P_Alignment_ShinkToFit, 0084 P_Alignment_ENDID, 0085 0086 //protection 0087 P_Protection_Locked, 0088 P_Protection_Hidden, 0089 0090 P_ENDID 0091 }; 0092 0093 FormatPrivate(); 0094 FormatPrivate(const FormatPrivate &other); 0095 ~FormatPrivate(); 0096 0097 bool dirty; //The key re-generation is need. 0098 QByteArray formatKey; 0099 0100 bool font_dirty; 0101 bool font_index_valid; 0102 QByteArray font_key; 0103 int font_index; 0104 0105 bool fill_dirty; 0106 bool fill_index_valid; 0107 QByteArray fill_key; 0108 int fill_index; 0109 0110 bool border_dirty; 0111 bool border_index_valid; 0112 QByteArray border_key; 0113 int border_index; 0114 0115 int xf_index; 0116 bool xf_indexValid; 0117 0118 bool is_dxf_fomat; 0119 int dxf_index; 0120 bool dxf_indexValid; 0121 0122 int theme; 0123 0124 QMap<int, QVariant> properties; 0125 }; 0126 0127 0128 QT_END_NAMESPACE_XLSX 0129 0130 #endif