diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Load.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Load.cs index 112a172..5e13eba 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Load.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Load.cs @@ -334,9 +334,7 @@ unsupportedSheet.IsActive = true; else { - Int32 sId = (Int32)(workbookView.ActiveTab.Value + 1); - Worksheet(sId).SetTabActive(); - //- _unsupportedSheets.Keys.Where(n=>n <= sId ).Count() + Worksheet((Int32)(workbookView.ActiveTab.Value + 1)).SetTabActive(); } } diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Save.NestedTypes.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Save.NestedTypes.cs index 3e0c30f..1272af8 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Save.NestedTypes.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Save.NestedTypes.cs @@ -66,7 +66,7 @@ #region Nested type: RelType private enum RelType { - Workbook, Worksheet + Workbook//, Worksheet } #endregion #region Nested type: RelIdGenerator diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Save.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Save.cs index b32c88a..75bf762 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Save.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorkbook_Save.cs @@ -133,7 +133,7 @@ foreach (XLWorksheet worksheet in WorksheetsInternal.Cast().OrderBy(w => w.Position)) { - context.RelIdGenerator.Reset(RelType.Worksheet); + //context.RelIdGenerator.Reset(RelType.Worksheet); WorksheetPart worksheetPart; string wsRelId = worksheet.RelId; if (workbookPart.Parts.Any(p => p.RelationshipId == wsRelId)) @@ -145,17 +145,18 @@ else worksheetPart = workbookPart.AddNewPart(wsRelId); - - context.RelIdGenerator.AddValues(worksheetPart.Parts.Select(p => p.RelationshipId).ToList(), RelType.Worksheet); + + context.RelIdGenerator.AddValues(worksheetPart.HyperlinkRelationships.Select(hr => hr.Id).ToList(), RelType.Workbook); + context.RelIdGenerator.AddValues(worksheetPart.Parts.Select(p => p.RelationshipId).ToList(), RelType.Workbook); if (worksheetPart.DrawingsPart != null) - context.RelIdGenerator.AddValues(worksheetPart.DrawingsPart.Parts.Select(p => p.RelationshipId).ToList(), RelType.Worksheet); + context.RelIdGenerator.AddValues(worksheetPart.DrawingsPart.Parts.Select(p => p.RelationshipId).ToList(), RelType.Workbook); // delete comment related parts (todo: review) DeleteComments(worksheetPart, worksheet, context); if (worksheet.Internals.CellsCollection.GetCells(c => c.HasComment).Any()) { - WorksheetCommentsPart worksheetCommentsPart = worksheetPart.AddNewPart(context.RelIdGenerator.GetNext(RelType.Worksheet)); + WorksheetCommentsPart worksheetCommentsPart = worksheetPart.AddNewPart(context.RelIdGenerator.GetNext(RelType.Workbook)); GenerateWorksheetCommentsPartContent(worksheetCommentsPart, worksheet); @@ -165,7 +166,7 @@ { if (StringExtensions.IsNullOrWhiteSpace(worksheet.LegacyDrawingId)) { - worksheet.LegacyDrawingId = context.RelIdGenerator.GetNext(RelType.Worksheet); + worksheet.LegacyDrawingId = context.RelIdGenerator.GetNext(RelType.Workbook); worksheet.LegacyDrawingIsNew = true; } @@ -263,14 +264,16 @@ private static void GenerateTables(XLWorksheet worksheet, WorksheetPart worksheetPart, SaveContext context) { worksheetPart.Worksheet.RemoveAllChildren(); - + if (!worksheet.Tables.Any()) return; foreach (IXLTable table in worksheet.Tables) { - string tableRelId = context.RelIdGenerator.GetNext(RelType.Workbook); + String tableRelId = context.RelIdGenerator.GetNext(RelType.Workbook); + var xlTable = (XLTable)table; xlTable.RelId = tableRelId; + var tableDefinitionPart = worksheetPart.AddNewPart(tableRelId); GenerateTableDefinitionPartContent(tableDefinitionPart, xlTable, context); } diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorksheets.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorksheets.cs index 35c435b..90e3839 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorksheets.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/XLWorksheets.cs @@ -95,9 +95,10 @@ public IXLWorksheet Add(String sheetName, Int32 position) { - var ws = Add(sheetName); - ws.Position = position; - return ws; + var sheet = new XLWorksheet(sheetName, m_workbook); + m_worksheets.Add(sheetName, sheet); + sheet._position = position; + return sheet; } public void Delete(String sheetName) diff --git a/ClosedXML/ClosedXML/ClosedXML/Properties/AssemblyInfo.cs b/ClosedXML/ClosedXML/ClosedXML/Properties/AssemblyInfo.cs index dd8a225..214b1d9 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Properties/AssemblyInfo.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Properties/AssemblyInfo.cs @@ -9,7 +9,7 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("ClosedXML")] -[assembly: AssemblyCopyright("Copyright © Manuel De Leon 2011")] +[assembly: AssemblyCopyright("Copyright © Manuel De Leon 2012")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -31,6 +31,6 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.62.1.0")] -[assembly: AssemblyFileVersion("0.62.1.0")] +[assembly: AssemblyVersion("0.63.0.0")] +[assembly: AssemblyFileVersion("0.63.0.0")] [assembly: System.Runtime.CompilerServices.InternalsVisibleTo("ClosedXML_Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100a1fb8ba59167fe734d64128ca73d32c45cb8a117246d09c95c8769db88fe332b0a3396bedd0ea48ee42b0e5796fec0798ca5cb628a9a6de80d35d6c67b936ca1670347b3d4f2b769c8ce2ddcf959dbac6bcd88e6c08751ea1fffa0522de3507193e7035305a8aa008d6c88cca1341b3120fa9c347ab3f97e2d772e2709277da5")] \ No newline at end of file diff --git a/ClosedXML/ClosedXML/ClosedXML_Net3.5/Properties/AssemblyInfo.cs b/ClosedXML/ClosedXML/ClosedXML_Net3.5/Properties/AssemblyInfo.cs index 7834663..8ed1a8b 100644 --- a/ClosedXML/ClosedXML/ClosedXML_Net3.5/Properties/AssemblyInfo.cs +++ b/ClosedXML/ClosedXML/ClosedXML_Net3.5/Properties/AssemblyInfo.cs @@ -9,7 +9,7 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("ClosedXML_Net3.5")] -[assembly: AssemblyCopyright("Copyright © Manuel De Leon 2011")] +[assembly: AssemblyCopyright("Copyright © Manuel De Leon 2012")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -31,5 +31,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.62.1.0")] -[assembly: AssemblyFileVersion("0.62.1.0")] +[assembly: AssemblyVersion("0.63.0.0")] +[assembly: AssemblyFileVersion("0.63.0.0")] diff --git a/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Comments/AddingComments.xlsx b/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Comments/AddingComments.xlsx index a7605d2..293ffd6 100644 --- a/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Comments/AddingComments.xlsx +++ b/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Comments/AddingComments.xlsx Binary files differ diff --git a/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Misc/Hyperlinks.xlsx b/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Misc/Hyperlinks.xlsx index 5d1f631..79bb1e6 100644 --- a/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Misc/Hyperlinks.xlsx +++ b/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Misc/Hyperlinks.xlsx Binary files differ