public XlsxMacrosheetXmlPartFilter(CommonNamespaces commonNamespaces, Dictionary<string, string> StringContentLookup, Dictionary<string, WorkSheet> WorksheetLookup, Dictionary<string, CellFormatData> CellFormats, ContentType[] contentTypesToDetect, ref XlsxProcessingDictionaries processingDictionaries, ref PredefinedObjectsProcessingHelper predefinedObjectsHelper, PartInfo rel)
     : base(commonNamespaces, rel.Target, StringContentLookup, WorksheetLookup, CellFormats, contentTypesToDetect, ref processingDictionaries, ref predefinedObjectsHelper)
 {
     m_id = rel.Id;
     m_target = rel.Target;
     m_type = rel.GetContentType();
 }
        private void Init(CommonNamespaces commonNamespaces, Dictionary<string, string> StringContentLookup, Dictionary<string, WorkSheet> WorksheetLookup, Dictionary<string, CellFormatData> CellFormats, ref XlsxProcessingDictionaries processingDictionaries)
        {
            m_c = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "c");
            m_chartsheet = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "chartsheet");
            m_col = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "col");
            m_cols = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "cols");
            m_dialogsheet = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "dialogsheet");
            m_f = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "f");
            m_hidden = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "hidden");
            m_veryHidden = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "veryHidden");
            m_hyperlinks = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "hyperlinks");
            m_oleObjects = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "oleObjects");
            m_row = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "row");
            m_s = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "s");
            m_sheetName = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "SheetName");
            m_sheetData = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "sheetData");
            m_v = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "v");
            m_worksheet = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "worksheet");
            m_nProcessed = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "node_processed");
            m_sProcessed = NameTableUtils.NormalizeString(commonNamespaces.NameTable, "s_node_processed");


            if (StringContentLookup != null)
                SharedStringContentLookup = StringContentLookup;
            if (WorksheetLookup != null)
                WorksheetDataLookup = WorksheetLookup;
            if (CellFormats != null)
                CellFormatsLookup = CellFormats;
            if (processingDictionaries != null)
                m_processingDictionaries = processingDictionaries;
        }
        public XlsxPreprocessTablePartFilter(CommonNamespaces commonNamespaces, string rId, string target, string parentSheet, ref XlsxProcessingDictionaries processingDictionaries)
            : base(commonNamespaces)
        {
            m_rId = rId;
            m_target = target;
            m_parentSheet = parentSheet;
            m_processingDictionaries = processingDictionaries;

        }
 public XlsxPreprocessWorksheetPartFilter(CommonNamespaces commonNamespaces, string target, ContentType[] contentTypesToDetect, Dictionary<string, WorkSheet> WorksheetLookup, Dictionary<string, CellFormatData> CellFormatsLookup, ref XlsxProcessingDictionaries processingDictionaries, ref PredefinedObjectsProcessingHelper predefinedObjectsHelper)
     : base(commonNamespaces)
 {
     m_contentTypesToDetect = contentTypesToDetect;
     m_worksheetLookup = WorksheetLookup;
     m_cellFormatsLookup = CellFormatsLookup;
     m_target = target;
     m_processingDictionaries = processingDictionaries;
     m_predefinedObjectsHelper = predefinedObjectsHelper;
 }
 public XlsxSharedStringsXmlFilter(DocumentText docText, CommonNamespaces commonNamespaces, ContentType[] contentTypesOfInterest, ref XlsxProcessingDictionaries processingDictionaries)
     : base(docText, commonNamespaces)
 {
     List<ContentType> ctypes = new List<ContentType>(contentTypesOfInterest);
     m_interestedInWhiteText = ctypes.Contains(ContentType.WhiteText);
     m_interestedInSmallText = ctypes.Contains(ContentType.SmallText);
     m_interestedInRedactedText = ctypes.Contains(ContentType.RedactedText);
     m_interestedInHiddenText = ctypes.Contains(ContentType.HiddenRow);//add to this as we go I think
     m_processingDictionaries = processingDictionaries;
 }
 public XlsxPreprocessTableXmlFilter(DocumentText docText, CommonNamespaces commonNamespaces, string rId, string target, string parentSheet, ref XlsxProcessingDictionaries processingDictionaries)
     : base(docText, commonNamespaces)
 {
     m_processingDictionaries = processingDictionaries;
     m_tableData.rId = rId;
     int index = parentSheet.IndexOf("xl/");
     if (index != -1)
     {
         m_tableData.ParentSheet = parentSheet.Substring(3);
     }
     else
     {
         m_tableData.ParentSheet = parentSheet;
     }
 }
 public XlsxBaseWorksheetXmlFilter(DocumentText docText, CommonNamespaces commonNamespaces, Dictionary<string, string> StringContentLookup, Dictionary<string, WorkSheet> WorksheetLookup, Dictionary<string, CellFormatData> CellFormats, XlsxProcessingDictionaries processingDictionaries)
     : base(docText, commonNamespaces)
 {
     Init(commonNamespaces, StringContentLookup, WorksheetLookup, CellFormats, ref  processingDictionaries);
 }
 public XlsxBaseWorksheetXmlFilter(CommonNamespaces commonNamespaces, Dictionary<string, WorkSheet> WorksheetLookup, Dictionary<string, CellFormatData> CellFormats, ref XlsxProcessingDictionaries processingDictionaries)
     : base(commonNamespaces)
 {
     Init(commonNamespaces, null, WorksheetLookup, CellFormats, ref  processingDictionaries);
 }
Ejemplo n.º 9
0
 public XlsxCalcChainXmlFilter(DocumentText docText, CommonNamespaces commonNamespaces, Dictionary<string, WorkSheet> WorksheetLookup, ref XlsxProcessingDictionaries processingDictionaries)
     : base(docText, commonNamespaces)
 {
     m_worksheetLookup = WorksheetLookup;
     m_processingDictionaries = processingDictionaries;
 }
Ejemplo n.º 10
0
 public XlsxCalcChainPartFilter(CommonNamespaces commonNamespaces, Dictionary<string, WorkSheet> WorksheetLookup, ref XlsxProcessingDictionaries processingDictionaries)
     : base(commonNamespaces)
 {
     m_worksheetLookup = WorksheetLookup;
     m_processingDictionaries = processingDictionaries;
 }
Ejemplo n.º 11
0
        private bool ShouldResolveCellStateBasedOnTableStyle(XmlNodeInformation nodeInfo, XlsxProcessingDictionaries processingDictionaries, out PredefinedTableData ptd)
        {
            string cellRef = nodeInfo.GetAttributeValue("r");

            if (!string.IsNullOrEmpty(cellRef))
            {

                if (m_targetHasChanged)
                {
                    if (processingDictionaries.GetActualTableData(m_currentTarget, out m_currentTableData))
                    {
                        foreach (KeyValuePair<string, PredefinedTableData> kvp in m_currentTableData)
                        {
                            ptd = kvp.Value;

                            if (ptd.ResolveCurrentCellState(cellRef))
                            {
                                m_inTable = true;
                                return true;
                            }
                        }
                    }
                }
                else
                {
                    if (m_currentTableData != null)
                    {
                        return IsInTable(cellRef, out ptd);
                    }
                }
            }

            ptd = null;
            return false;
          }
Ejemplo n.º 12
0
 private bool ResolveStateBasedOnTableTheme(XmlNodeInformation nodeInfo, XlsxProcessingDictionaries processingDictionaries)
 {
     PredefinedTableData ptd;
     if (ShouldResolveCellStateBasedOnTableStyle(nodeInfo, processingDictionaries, out ptd))
     {
         ResolveCurrentCellStyle(nodeInfo.GetAttributeValue("r"), ptd);
         return true;
     }
     return false;
 }
Ejemplo n.º 13
0
        private void ResolveHiddenCellState(XmlNodeInformation nodeInfo, XlsxProcessingDictionaries processingDictionaries)
        {
            if (m_interestedInHiddenColumn)
            {
                if (m_targetHasChanged)
                {
                    if (!processingDictionaries.GetCurrentHiddenCells(m_currentTarget, out m_currentHiddenColumns))
                    {
                        m_inHiddenCell = false;
                        m_hiddenCellsOnCurrentSheet = false;
                    }
                    else
                    {
                        m_hiddenCellsOnCurrentSheet = true;
                        SetHiddenCellState(nodeInfo);
                    }
                }
                else
                {
                    if (m_hiddenCellsOnCurrentSheet)
                    {
                        SetHiddenCellState(nodeInfo);
                    }
                    else
                    {
                        m_inHiddenCell = false;
                    }

                }
            }
        }
Ejemplo n.º 14
0
        public void SetTextState(XmlNodeInformation nodeInfo, Dictionary<string, CellFormatData> cellFormatsLookup, string target, XlsxProcessingDictionaries processingDictionaries)
        {
            m_targetHasChanged = false;
            if (nodeInfo.EmptyElement)
                return;

            if (m_currentTarget != target)
            {
                m_currentTarget = target;
                m_targetHasChanged = true;
                m_hiddenCellsOnCurrentSheet = true;
            }

            m_inTable = false;

            SetCurrentCellFormatData(nodeInfo, cellFormatsLookup);
            if (!ResolveStateBasedOnTableTheme(nodeInfo, processingDictionaries))
            {
                ResolveStateBasedOnStyle(nodeInfo, cellFormatsLookup);            
            }

            ResolveHiddenCellState(nodeInfo, processingDictionaries);
        }
 public XlsxSharedStringsXmlPartFilter(CommonNamespaces commonNamespaces, ContentType[] contentTypesToDetect, ref XlsxProcessingDictionaries processingDictionaries)
     : base(commonNamespaces)
 {
     m_contentTypesToDetect = contentTypesToDetect;
     m_processingDictionaries = processingDictionaries;
 }
 public XlsxPreprocessWorksheetXmlFilter(DocumentText docText, string target, CommonNamespaces commonNamespaces, ContentType[] contentTypesOfInterest, Dictionary<string, WorkSheet> WorksheetLookup, Dictionary<string, CellFormatData> CellFormats, ref XlsxProcessingDictionaries processingDictionaries, ref PredefinedObjectsProcessingHelper predefinedObjectsHelper)
     : base(commonNamespaces, WorksheetLookup, CellFormats, ref processingDictionaries)
 {
     m_targetName = target;
     m_stateTracker = new StateTracker(commonNamespaces, new List<ContentType>(contentTypesOfInterest), ref predefinedObjectsHelper);
 }