2
2
{-# LANGUAGE DeriveGeneric #-}
3
3
{-# LANGUAGE OverloadedStrings #-}
4
4
{-# LANGUAGE RecordWildCards #-}
5
- {-# LANGUAGE TemplateHaskell #-}
6
5
7
6
module Codec.Xlsx.Types.PageSetup
8
7
( -- * Main types
@@ -14,29 +13,6 @@ module Codec.Xlsx.Types.PageSetup
14
13
Orientation (.. ),
15
14
PageOrder (.. ),
16
15
PaperSize (.. ),
17
-
18
- -- * Lenses
19
-
20
- -- ** PageSetup
21
- pageSetupBlackAndWhite ,
22
- pageSetupCellComments ,
23
- pageSetupCopies ,
24
- pageSetupDraft ,
25
- pageSetupErrors ,
26
- pageSetupFirstPageNumber ,
27
- pageSetupFitToHeight ,
28
- pageSetupFitToWidth ,
29
- pageSetupHorizontalDpi ,
30
- pageSetupId ,
31
- pageSetupOrientation ,
32
- pageSetupPageOrder ,
33
- pageSetupPaperHeight ,
34
- pageSetupPaperSize ,
35
- pageSetupPaperWidth ,
36
- pageSetupScale ,
37
- pageSetupUseFirstPageNumber ,
38
- pageSetupUsePrinterDefaults ,
39
- pageSetupVerticalDpi ,
40
16
)
41
17
where
42
18
@@ -61,71 +37,71 @@ import Text.XML
61
37
62
38
data PageSetup = PageSetup
63
39
{ -- | Print black and white.
64
- _pageSetupBlackAndWhite :: Maybe Bool ,
40
+ pageSetupBlackAndWhite :: Maybe Bool ,
65
41
-- | This attribute specifies how to print cell comments.
66
- _pageSetupCellComments :: Maybe CellComments ,
42
+ pageSetupCellComments :: Maybe CellComments ,
67
43
-- | Number of copies to print.
68
- _pageSetupCopies :: Maybe Int ,
44
+ pageSetupCopies :: Maybe Int ,
69
45
-- | Print without graphics.
70
- _pageSetupDraft :: Maybe Bool ,
46
+ pageSetupDraft :: Maybe Bool ,
71
47
-- | Specifies how to print cell values for cells with errors.
72
- _pageSetupErrors :: Maybe PrintErrors ,
48
+ pageSetupErrors :: Maybe PrintErrors ,
73
49
-- | Page number for first printed page. If no value is specified, then
74
50
-- 'automatic' is assumed.
75
- _pageSetupFirstPageNumber :: Maybe Int ,
51
+ pageSetupFirstPageNumber :: Maybe Int ,
76
52
-- | Number of vertical pages to fit on.
77
- _pageSetupFitToHeight :: Maybe Int ,
53
+ pageSetupFitToHeight :: Maybe Int ,
78
54
-- | Number of horizontal pages to fit on.
79
- _pageSetupFitToWidth :: Maybe Int ,
55
+ pageSetupFitToWidth :: Maybe Int ,
80
56
-- | Horizontal print resolution of the device.
81
- _pageSetupHorizontalDpi :: Maybe Int ,
57
+ pageSetupHorizontalDpi :: Maybe Int ,
82
58
-- | Relationship Id of the devMode printer settings part.
83
59
--
84
60
-- (Explicit reference to a parent XML element.)
85
61
--
86
62
-- See 22.8.2.1 "ST_RelationshipId (Explicit Relationship ID)" (p. 3784)
87
- _pageSetupId :: Maybe Text ,
63
+ pageSetupId :: Maybe Text ,
88
64
-- | Orientation of the page.
89
- _pageSetupOrientation :: Maybe Orientation ,
65
+ pageSetupOrientation :: Maybe Orientation ,
90
66
-- | Order of printed pages
91
- _pageSetupPageOrder :: Maybe PageOrder ,
67
+ pageSetupPageOrder :: Maybe PageOrder ,
92
68
-- | Height of custom paper as a number followed by a unit identifier.
93
69
--
94
70
-- When paperHeight and paperWidth are specified, paperSize shall be ignored.
95
71
-- Examples: @"297mm"@, @"11in"@.
96
72
--
97
73
-- See 22.9.2.12 "ST_PositiveUniversalMeasure (Positive Universal Measurement)" (p. 3792)
98
- _pageSetupPaperHeight :: Maybe Text ,
74
+ pageSetupPaperHeight :: Maybe Text ,
99
75
-- | Pager size
100
76
--
101
77
-- When paperHeight, paperWidth, and paperUnits are specified, paperSize
102
78
-- should be ignored.
103
- _pageSetupPaperSize :: Maybe PaperSize ,
79
+ pageSetupPaperSize :: Maybe PaperSize ,
104
80
-- | Width of custom paper as a number followed by a unit identifier
105
81
--
106
82
-- Examples: @21cm@, @8.5in@
107
83
--
108
84
-- When paperHeight and paperWidth are specified, paperSize shall be
109
85
-- ignored.
110
- _pageSetupPaperWidth :: Maybe Text ,
86
+ pageSetupPaperWidth :: Maybe Text ,
111
87
-- | Print scaling.
112
88
--
113
89
-- This attribute is restricted to values ranging from 10 to 400.
114
90
-- This setting is overridden when fitToWidth and/or fitToHeight are in
115
91
-- use.
116
- _pageSetupScale :: Maybe Int ,
117
- -- | Use '_pageSetupFirstPageNumber ' value for first page number, and do
92
+ pageSetupScale :: Maybe Int ,
93
+ -- | Use 'pageSetupFirstPageNumber ' value for first page number, and do
118
94
-- not auto number the pages.
119
- _pageSetupUseFirstPageNumber :: Maybe Bool ,
120
- -- | Use the printer’ s defaults settings for page setup values and don't
95
+ pageSetupUseFirstPageNumber :: Maybe Bool ,
96
+ -- | Use the printer' s defaults settings for page setup values and don't
121
97
-- use the default values specified in the schema.
122
98
--
123
99
-- Example: If dpi is not present or specified in the XML, the application
124
100
-- must not assume 600dpi as specified in the schema as a default and
125
101
-- instead must let the printer specify the default dpi.
126
- _pageSetupUsePrinterDefaults :: Maybe Bool ,
102
+ pageSetupUsePrinterDefaults :: Maybe Bool ,
127
103
-- | Vertical print resolution of the device.
128
- _pageSetupVerticalDpi :: Maybe Int
104
+ pageSetupVerticalDpi :: Maybe Int
129
105
}
130
106
deriving (Eq , Ord , Show , Generic )
131
107
@@ -333,33 +309,27 @@ instance NFData PaperSize
333
309
instance Default PageSetup where
334
310
def =
335
311
PageSetup
336
- { _pageSetupBlackAndWhite = Nothing ,
337
- _pageSetupCellComments = Nothing ,
338
- _pageSetupCopies = Nothing ,
339
- _pageSetupDraft = Nothing ,
340
- _pageSetupErrors = Nothing ,
341
- _pageSetupFirstPageNumber = Nothing ,
342
- _pageSetupFitToHeight = Nothing ,
343
- _pageSetupFitToWidth = Nothing ,
344
- _pageSetupHorizontalDpi = Nothing ,
345
- _pageSetupId = Nothing ,
346
- _pageSetupOrientation = Nothing ,
347
- _pageSetupPageOrder = Nothing ,
348
- _pageSetupPaperHeight = Nothing ,
349
- _pageSetupPaperSize = Nothing ,
350
- _pageSetupPaperWidth = Nothing ,
351
- _pageSetupScale = Nothing ,
352
- _pageSetupUseFirstPageNumber = Nothing ,
353
- _pageSetupUsePrinterDefaults = Nothing ,
354
- _pageSetupVerticalDpi = Nothing
312
+ { pageSetupBlackAndWhite = Nothing ,
313
+ pageSetupCellComments = Nothing ,
314
+ pageSetupCopies = Nothing ,
315
+ pageSetupDraft = Nothing ,
316
+ pageSetupErrors = Nothing ,
317
+ pageSetupFirstPageNumber = Nothing ,
318
+ pageSetupFitToHeight = Nothing ,
319
+ pageSetupFitToWidth = Nothing ,
320
+ pageSetupHorizontalDpi = Nothing ,
321
+ pageSetupId = Nothing ,
322
+ pageSetupOrientation = Nothing ,
323
+ pageSetupPageOrder = Nothing ,
324
+ pageSetupPaperHeight = Nothing ,
325
+ pageSetupPaperSize = Nothing ,
326
+ pageSetupPaperWidth = Nothing ,
327
+ pageSetupScale = Nothing ,
328
+ pageSetupUseFirstPageNumber = Nothing ,
329
+ pageSetupUsePrinterDefaults = Nothing ,
330
+ pageSetupVerticalDpi = Nothing
355
331
}
356
332
357
- {- ------------------------------------------------------------------------------
358
- Lenses
359
- -------------------------------------------------------------------------------}
360
-
361
- makeLenses ''PageSetup
362
-
363
333
{- ------------------------------------------------------------------------------
364
334
Rendering
365
335
-------------------------------------------------------------------------------}
@@ -372,25 +342,25 @@ instance ToElement PageSetup where
372
342
elementNodes = [] ,
373
343
elementAttributes =
374
344
Map. fromList . catMaybes $
375
- [ " paperSize" .=? _pageSetupPaperSize ,
376
- " paperHeight" .=? _pageSetupPaperHeight ,
377
- " paperWidth" .=? _pageSetupPaperWidth ,
378
- " scale" .=? _pageSetupScale ,
379
- " firstPageNumber" .=? _pageSetupFirstPageNumber ,
380
- " fitToWidth" .=? _pageSetupFitToWidth ,
381
- " fitToHeight" .=? _pageSetupFitToHeight ,
382
- " pageOrder" .=? _pageSetupPageOrder ,
383
- " orientation" .=? _pageSetupOrientation ,
384
- " usePrinterDefaults" .=? _pageSetupUsePrinterDefaults ,
385
- " blackAndWhite" .=? _pageSetupBlackAndWhite ,
386
- " draft" .=? _pageSetupDraft ,
387
- " cellComments" .=? _pageSetupCellComments ,
388
- " useFirstPageNumber" .=? _pageSetupUseFirstPageNumber ,
389
- " errors" .=? _pageSetupErrors ,
390
- " horizontalDpi" .=? _pageSetupHorizontalDpi ,
391
- " verticalDpi" .=? _pageSetupVerticalDpi ,
392
- " copies" .=? _pageSetupCopies ,
393
- " id" .=? _pageSetupId
345
+ [ " paperSize" .=? pageSetupPaperSize ,
346
+ " paperHeight" .=? pageSetupPaperHeight ,
347
+ " paperWidth" .=? pageSetupPaperWidth ,
348
+ " scale" .=? pageSetupScale ,
349
+ " firstPageNumber" .=? pageSetupFirstPageNumber ,
350
+ " fitToWidth" .=? pageSetupFitToWidth ,
351
+ " fitToHeight" .=? pageSetupFitToHeight ,
352
+ " pageOrder" .=? pageSetupPageOrder ,
353
+ " orientation" .=? pageSetupOrientation ,
354
+ " usePrinterDefaults" .=? pageSetupUsePrinterDefaults ,
355
+ " blackAndWhite" .=? pageSetupBlackAndWhite ,
356
+ " draft" .=? pageSetupDraft ,
357
+ " cellComments" .=? pageSetupCellComments ,
358
+ " useFirstPageNumber" .=? pageSetupUseFirstPageNumber ,
359
+ " errors" .=? pageSetupErrors ,
360
+ " horizontalDpi" .=? pageSetupHorizontalDpi ,
361
+ " verticalDpi" .=? pageSetupVerticalDpi ,
362
+ " copies" .=? pageSetupCopies ,
363
+ " id" .=? pageSetupId
394
364
]
395
365
}
396
366
@@ -494,49 +464,49 @@ instance ToAttrVal PaperSize where
494
464
-- | See @CT_PageSetup@, p. 3922
495
465
instance FromCursor PageSetup where
496
466
fromCursor cur = do
497
- _pageSetupPaperSize <- maybeAttribute " paperSize" cur
498
- _pageSetupPaperHeight <- maybeAttribute " paperHeight" cur
499
- _pageSetupPaperWidth <- maybeAttribute " paperWidth" cur
500
- _pageSetupScale <- maybeAttribute " scale" cur
501
- _pageSetupFirstPageNumber <- maybeAttribute " firstPageNumber" cur
502
- _pageSetupFitToWidth <- maybeAttribute " fitToWidth" cur
503
- _pageSetupFitToHeight <- maybeAttribute " fitToHeight" cur
504
- _pageSetupPageOrder <- maybeAttribute " pageOrder" cur
505
- _pageSetupOrientation <- maybeAttribute " orientation" cur
506
- _pageSetupUsePrinterDefaults <- maybeAttribute " usePrinterDefaults" cur
507
- _pageSetupBlackAndWhite <- maybeAttribute " blackAndWhite" cur
508
- _pageSetupDraft <- maybeAttribute " draft" cur
509
- _pageSetupCellComments <- maybeAttribute " cellComments" cur
510
- _pageSetupUseFirstPageNumber <- maybeAttribute " useFirstPageNumber" cur
511
- _pageSetupErrors <- maybeAttribute " errors" cur
512
- _pageSetupHorizontalDpi <- maybeAttribute " horizontalDpi" cur
513
- _pageSetupVerticalDpi <- maybeAttribute " verticalDpi" cur
514
- _pageSetupCopies <- maybeAttribute " copies" cur
515
- _pageSetupId <- maybeAttribute " id" cur
467
+ pageSetupPaperSize <- maybeAttribute " paperSize" cur
468
+ pageSetupPaperHeight <- maybeAttribute " paperHeight" cur
469
+ pageSetupPaperWidth <- maybeAttribute " paperWidth" cur
470
+ pageSetupScale <- maybeAttribute " scale" cur
471
+ pageSetupFirstPageNumber <- maybeAttribute " firstPageNumber" cur
472
+ pageSetupFitToWidth <- maybeAttribute " fitToWidth" cur
473
+ pageSetupFitToHeight <- maybeAttribute " fitToHeight" cur
474
+ pageSetupPageOrder <- maybeAttribute " pageOrder" cur
475
+ pageSetupOrientation <- maybeAttribute " orientation" cur
476
+ pageSetupUsePrinterDefaults <- maybeAttribute " usePrinterDefaults" cur
477
+ pageSetupBlackAndWhite <- maybeAttribute " blackAndWhite" cur
478
+ pageSetupDraft <- maybeAttribute " draft" cur
479
+ pageSetupCellComments <- maybeAttribute " cellComments" cur
480
+ pageSetupUseFirstPageNumber <- maybeAttribute " useFirstPageNumber" cur
481
+ pageSetupErrors <- maybeAttribute " errors" cur
482
+ pageSetupHorizontalDpi <- maybeAttribute " horizontalDpi" cur
483
+ pageSetupVerticalDpi <- maybeAttribute " verticalDpi" cur
484
+ pageSetupCopies <- maybeAttribute " copies" cur
485
+ pageSetupId <- maybeAttribute " id" cur
516
486
return PageSetup {.. }
517
487
518
488
instance FromXenoNode PageSetup where
519
489
fromXenoNode root =
520
490
parseAttributes root $ do
521
- _pageSetupPaperSize <- maybeAttr " paperSize"
522
- _pageSetupPaperHeight <- maybeAttr " paperHeight"
523
- _pageSetupPaperWidth <- maybeAttr " paperWidth"
524
- _pageSetupScale <- maybeAttr " scale"
525
- _pageSetupFirstPageNumber <- maybeAttr " firstPageNumber"
526
- _pageSetupFitToWidth <- maybeAttr " fitToWidth"
527
- _pageSetupFitToHeight <- maybeAttr " fitToHeight"
528
- _pageSetupPageOrder <- maybeAttr " pageOrder"
529
- _pageSetupOrientation <- maybeAttr " orientation"
530
- _pageSetupUsePrinterDefaults <- maybeAttr " usePrinterDefaults"
531
- _pageSetupBlackAndWhite <- maybeAttr " blackAndWhite"
532
- _pageSetupDraft <- maybeAttr " draft"
533
- _pageSetupCellComments <- maybeAttr " cellComments"
534
- _pageSetupUseFirstPageNumber <- maybeAttr " useFirstPageNumber"
535
- _pageSetupErrors <- maybeAttr " errors"
536
- _pageSetupHorizontalDpi <- maybeAttr " horizontalDpi"
537
- _pageSetupVerticalDpi <- maybeAttr " verticalDpi"
538
- _pageSetupCopies <- maybeAttr " copies"
539
- _pageSetupId <- maybeAttr " id"
491
+ pageSetupPaperSize <- maybeAttr " paperSize"
492
+ pageSetupPaperHeight <- maybeAttr " paperHeight"
493
+ pageSetupPaperWidth <- maybeAttr " paperWidth"
494
+ pageSetupScale <- maybeAttr " scale"
495
+ pageSetupFirstPageNumber <- maybeAttr " firstPageNumber"
496
+ pageSetupFitToWidth <- maybeAttr " fitToWidth"
497
+ pageSetupFitToHeight <- maybeAttr " fitToHeight"
498
+ pageSetupPageOrder <- maybeAttr " pageOrder"
499
+ pageSetupOrientation <- maybeAttr " orientation"
500
+ pageSetupUsePrinterDefaults <- maybeAttr " usePrinterDefaults"
501
+ pageSetupBlackAndWhite <- maybeAttr " blackAndWhite"
502
+ pageSetupDraft <- maybeAttr " draft"
503
+ pageSetupCellComments <- maybeAttr " cellComments"
504
+ pageSetupUseFirstPageNumber <- maybeAttr " useFirstPageNumber"
505
+ pageSetupErrors <- maybeAttr " errors"
506
+ pageSetupHorizontalDpi <- maybeAttr " horizontalDpi"
507
+ pageSetupVerticalDpi <- maybeAttr " verticalDpi"
508
+ pageSetupCopies <- maybeAttr " copies"
509
+ pageSetupId <- maybeAttr " id"
540
510
return PageSetup {.. }
541
511
542
512
-- | See @paperSize@ (attribute of @pageSetup@), p. 1659
0 commit comments