浏览代码

SheetViewOptionPtr: document that it is a superset of SheetViewOption

Document in type system (not just in text for humans) that
all SheetViewOptionPtr are also SheetViewOption (well, if not nil).
This improves documentation visible with godoc but this simple change
also allows more flexibility to manipulate SheetViewOption programatically
such as saving and restoring values:

	var opt excelize.ShowFormulas
	opt = new(excelize.ShowFormulas)
	_ = xl.GetSheetViewOptions(sheet, -1, opt)
	_ = xl.SetSheetViewOptions(sheet, -1, opt)
Olivier Mengué 8 年之前
父节点
当前提交
d2fb0197ab
共有 2 个文件被更改,包括 7 次插入0 次删除
  1. 1 0
      sheetview.go
  2. 6 0
      sheetview_test.go

+ 1 - 0
sheetview.go

@@ -9,6 +9,7 @@ type SheetViewOption interface {
 
 // SheetViewOptionPtr is a writable SheetViewOption. See GetSheetViewOptions().
 type SheetViewOptionPtr interface {
+	SheetViewOption
 	getSheetViewOption(view *xlsxSheetView)
 }
 

+ 6 - 0
sheetview_test.go

@@ -13,6 +13,12 @@ var _ = []excelize.SheetViewOption{
 	excelize.ShowFormulas(false),
 	excelize.ShowGridLines(true),
 	excelize.ShowRowColHeaders(true),
+	// SheetViewOptionPtr are also SheetViewOption
+	new(excelize.DefaultGridColor),
+	new(excelize.RightToLeft),
+	new(excelize.ShowFormulas),
+	new(excelize.ShowGridLines),
+	new(excelize.ShowRowColHeaders),
 }
 
 var _ = []excelize.SheetViewOptionPtr{