You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787
  1. using System;
  2. using System.ComponentModel;
  3. namespace Novacode
  4. {
  5. public enum ListItemType
  6. {
  7. Bulleted,
  8. Numbered
  9. }
  10. public enum SectionBreakType
  11. {
  12. defaultNextPage,
  13. evenPage,
  14. oddPage,
  15. continuous
  16. }
  17. public enum ContainerType
  18. {
  19. None,
  20. TOC,
  21. Section,
  22. Cell,
  23. Table,
  24. Header,
  25. Footer,
  26. Paragraph,
  27. Body
  28. }
  29. public enum PageNumberFormat
  30. {
  31. normal,
  32. roman
  33. }
  34. public enum BorderSize
  35. {
  36. one,
  37. two,
  38. three,
  39. four,
  40. five,
  41. six,
  42. seven,
  43. eight,
  44. nine
  45. }
  46. public enum EditRestrictions
  47. {
  48. none,
  49. readOnly,
  50. forms,
  51. comments,
  52. trackedChanges
  53. }
  54. /// <summary>
  55. /// Table Cell Border styles
  56. /// Added by lckuiper @ 20101117
  57. /// source: http://msdn.microsoft.com/en-us/library/documentformat.openxml.wordprocessing.tablecellborders.aspx
  58. /// </summary>
  59. public enum BorderStyle
  60. {
  61. Tcbs_none = 0,
  62. Tcbs_single,
  63. Tcbs_thick,
  64. Tcbs_double,
  65. Tcbs_dotted,
  66. Tcbs_dashed,
  67. Tcbs_dotDash,
  68. Tcbs_dotDotDash,
  69. Tcbs_triple,
  70. Tcbs_thinThickSmallGap,
  71. Tcbs_thickThinSmallGap,
  72. Tcbs_thinThickThinSmallGap,
  73. Tcbs_thinThickMediumGap,
  74. Tcbs_thickThinMediumGap,
  75. Tcbs_thinThickThinMediumGap,
  76. Tcbs_thinThickLargeGap,
  77. Tcbs_thickThinLargeGap,
  78. Tcbs_thinThickThinLargeGap,
  79. Tcbs_wave,
  80. Tcbs_doubleWave,
  81. Tcbs_dashSmallGap,
  82. Tcbs_dashDotStroked,
  83. Tcbs_threeDEmboss,
  84. Tcbs_threeDEngrave,
  85. Tcbs_outset,
  86. Tcbs_inset,
  87. Tcbs_nil
  88. }
  89. /// <summary>
  90. /// Table Cell Border Types
  91. /// Added by lckuiper @ 20101117
  92. /// source: http://msdn.microsoft.com/en-us/library/documentformat.openxml.wordprocessing.tablecellborders.aspx
  93. /// </summary>
  94. public enum TableCellBorderType
  95. {
  96. Top,
  97. Bottom,
  98. Left,
  99. Right,
  100. InsideH,
  101. InsideV,
  102. TopLeftToBottomRight,
  103. TopRightToBottomLeft
  104. }
  105. /// <summary>
  106. /// Table Border Types
  107. /// Added by lckuiper @ 20101117
  108. /// source: http://msdn.microsoft.com/en-us/library/documentformat.openxml.wordprocessing.tableborders.aspx
  109. /// </summary>
  110. public enum TableBorderType
  111. {
  112. Top,
  113. Bottom,
  114. Left,
  115. Right,
  116. InsideH,
  117. InsideV
  118. }
  119. // Patch 7398 added by lckuiper on Nov 16th 2010 @ 2:23 PM
  120. public enum VerticalAlignment
  121. {
  122. Top,
  123. Center,
  124. Bottom
  125. };
  126. public enum Orientation
  127. {
  128. Portrait,
  129. Landscape
  130. };
  131. public enum XmlDocument
  132. {
  133. Main,
  134. HeaderOdd,
  135. HeaderEven,
  136. HeaderFirst,
  137. FooterOdd,
  138. FooterEven,
  139. FooterFirst
  140. };
  141. public enum MatchFormattingOptions
  142. {
  143. ExactMatch,
  144. SubsetMatch
  145. };
  146. public enum Script
  147. {
  148. superscript,
  149. subscript,
  150. none
  151. }
  152. public enum Highlight
  153. {
  154. yellow,
  155. green,
  156. cyan,
  157. magenta,
  158. blue,
  159. red,
  160. darkBlue,
  161. darkCyan,
  162. darkGreen,
  163. darkMagenta,
  164. darkRed,
  165. darkYellow,
  166. darkGray,
  167. lightGray,
  168. black,
  169. none
  170. };
  171. public enum UnderlineStyle
  172. {
  173. none = 0,
  174. singleLine = 1,
  175. words = 2,
  176. doubleLine = 3,
  177. dotted = 4,
  178. thick = 6,
  179. dash = 7,
  180. dotDash = 9,
  181. dotDotDash = 10,
  182. wave = 11,
  183. dottedHeavy = 20,
  184. dashedHeavy = 23,
  185. dashDotHeavy = 25,
  186. dashDotDotHeavy = 26,
  187. dashLongHeavy = 27,
  188. dashLong = 39,
  189. wavyDouble = 43,
  190. wavyHeavy = 55,
  191. };
  192. public enum StrikeThrough
  193. {
  194. none,
  195. strike,
  196. doubleStrike
  197. };
  198. public enum Misc
  199. {
  200. none,
  201. shadow,
  202. outline,
  203. outlineShadow,
  204. emboss,
  205. engrave
  206. };
  207. /// <summary>
  208. /// Change the caps style of text, for use with Append and AppendLine.
  209. /// </summary>
  210. public enum CapsStyle
  211. {
  212. /// <summary>
  213. /// No caps, make all characters are lowercase.
  214. /// </summary>
  215. none,
  216. /// <summary>
  217. /// All caps, make every character uppercase.
  218. /// </summary>
  219. caps,
  220. /// <summary>
  221. /// Small caps, make all characters capital but with a small font size.
  222. /// </summary>
  223. smallCaps
  224. };
  225. /// <summary>
  226. /// Designs\Styles that can be applied to a table.
  227. /// </summary>
  228. public enum TableDesign
  229. {
  230. Custom,
  231. TableNormal,
  232. TableGrid,
  233. LightShading,
  234. LightShadingAccent1,
  235. LightShadingAccent2,
  236. LightShadingAccent3,
  237. LightShadingAccent4,
  238. LightShadingAccent5,
  239. LightShadingAccent6,
  240. LightList,
  241. LightListAccent1,
  242. LightListAccent2,
  243. LightListAccent3,
  244. LightListAccent4,
  245. LightListAccent5,
  246. LightListAccent6,
  247. LightGrid,
  248. LightGridAccent1,
  249. LightGridAccent2,
  250. LightGridAccent3,
  251. LightGridAccent4,
  252. LightGridAccent5,
  253. LightGridAccent6,
  254. MediumShading1,
  255. MediumShading1Accent1,
  256. MediumShading1Accent2,
  257. MediumShading1Accent3,
  258. MediumShading1Accent4,
  259. MediumShading1Accent5,
  260. MediumShading1Accent6,
  261. MediumShading2,
  262. MediumShading2Accent1,
  263. MediumShading2Accent2,
  264. MediumShading2Accent3,
  265. MediumShading2Accent4,
  266. MediumShading2Accent5,
  267. MediumShading2Accent6,
  268. MediumList1,
  269. MediumList1Accent1,
  270. MediumList1Accent2,
  271. MediumList1Accent3,
  272. MediumList1Accent4,
  273. MediumList1Accent5,
  274. MediumList1Accent6,
  275. MediumList2,
  276. MediumList2Accent1,
  277. MediumList2Accent2,
  278. MediumList2Accent3,
  279. MediumList2Accent4,
  280. MediumList2Accent5,
  281. MediumList2Accent6,
  282. MediumGrid1,
  283. MediumGrid1Accent1,
  284. MediumGrid1Accent2,
  285. MediumGrid1Accent3,
  286. MediumGrid1Accent4,
  287. MediumGrid1Accent5,
  288. MediumGrid1Accent6,
  289. MediumGrid2,
  290. MediumGrid2Accent1,
  291. MediumGrid2Accent2,
  292. MediumGrid2Accent3,
  293. MediumGrid2Accent4,
  294. MediumGrid2Accent5,
  295. MediumGrid2Accent6,
  296. MediumGrid3,
  297. MediumGrid3Accent1,
  298. MediumGrid3Accent2,
  299. MediumGrid3Accent3,
  300. MediumGrid3Accent4,
  301. MediumGrid3Accent5,
  302. MediumGrid3Accent6,
  303. DarkList,
  304. DarkListAccent1,
  305. DarkListAccent2,
  306. DarkListAccent3,
  307. DarkListAccent4,
  308. DarkListAccent5,
  309. DarkListAccent6,
  310. ColorfulShading,
  311. ColorfulShadingAccent1,
  312. ColorfulShadingAccent2,
  313. ColorfulShadingAccent3,
  314. ColorfulShadingAccent4,
  315. ColorfulShadingAccent5,
  316. ColorfulShadingAccent6,
  317. ColorfulList,
  318. ColorfulListAccent1,
  319. ColorfulListAccent2,
  320. ColorfulListAccent3,
  321. ColorfulListAccent4,
  322. ColorfulListAccent5,
  323. ColorfulListAccent6,
  324. ColorfulGrid,
  325. ColorfulGridAccent1,
  326. ColorfulGridAccent2,
  327. ColorfulGridAccent3,
  328. ColorfulGridAccent4,
  329. ColorfulGridAccent5,
  330. ColorfulGridAccent6,
  331. None
  332. };
  333. /// <summary>
  334. /// How a Table should auto resize.
  335. /// </summary>
  336. public enum AutoFit
  337. {
  338. /// <summary>
  339. /// Autofit to Table contents.
  340. /// </summary>
  341. Contents,
  342. /// <summary>
  343. /// Autofit to Window.
  344. /// </summary>
  345. Window,
  346. /// <summary>
  347. /// Autofit to Column width.
  348. /// </summary>
  349. ColumnWidth,
  350. /// <summary>
  351. /// Autofit to Fixed column width
  352. /// </summary>
  353. Fixed
  354. };
  355. public enum RectangleShapes
  356. {
  357. rect,
  358. roundRect,
  359. snip1Rect,
  360. snip2SameRect,
  361. snip2DiagRect,
  362. snipRoundRect,
  363. round1Rect,
  364. round2SameRect,
  365. round2DiagRect
  366. };
  367. public enum BasicShapes
  368. {
  369. ellipse,
  370. triangle,
  371. rtTriangle,
  372. parallelogram,
  373. trapezoid,
  374. diamond,
  375. pentagon,
  376. hexagon,
  377. heptagon,
  378. octagon,
  379. decagon,
  380. dodecagon,
  381. pie,
  382. chord,
  383. teardrop,
  384. frame,
  385. halfFrame,
  386. corner,
  387. diagStripe,
  388. plus,
  389. plaque,
  390. can,
  391. cube,
  392. bevel,
  393. donut,
  394. noSmoking,
  395. blockArc,
  396. foldedCorner,
  397. smileyFace,
  398. heart,
  399. lightningBolt,
  400. sun,
  401. moon,
  402. cloud,
  403. arc,
  404. backetPair,
  405. bracePair,
  406. leftBracket,
  407. rightBracket,
  408. leftBrace,
  409. rightBrace
  410. };
  411. public enum BlockArrowShapes
  412. {
  413. rightArrow,
  414. leftArrow,
  415. upArrow,
  416. downArrow,
  417. leftRightArrow,
  418. upDownArrow,
  419. quadArrow,
  420. leftRightUpArrow,
  421. bentArrow,
  422. uturnArrow,
  423. leftUpArrow,
  424. bentUpArrow,
  425. curvedRightArrow,
  426. curvedLeftArrow,
  427. curvedUpArrow,
  428. curvedDownArrow,
  429. stripedRightArrow,
  430. notchedRightArrow,
  431. homePlate,
  432. chevron,
  433. rightArrowCallout,
  434. downArrowCallout,
  435. leftArrowCallout,
  436. upArrowCallout,
  437. leftRightArrowCallout,
  438. quadArrowCallout,
  439. circularArrow
  440. };
  441. public enum EquationShapes
  442. {
  443. mathPlus,
  444. mathMinus,
  445. mathMultiply,
  446. mathDivide,
  447. mathEqual,
  448. mathNotEqual
  449. };
  450. public enum FlowchartShapes
  451. {
  452. flowChartProcess,
  453. flowChartAlternateProcess,
  454. flowChartDecision,
  455. flowChartInputOutput,
  456. flowChartPredefinedProcess,
  457. flowChartInternalStorage,
  458. flowChartDocument,
  459. flowChartMultidocument,
  460. flowChartTerminator,
  461. flowChartPreparation,
  462. flowChartManualInput,
  463. flowChartManualOperation,
  464. flowChartConnector,
  465. flowChartOffpageConnector,
  466. flowChartPunchedCard,
  467. flowChartPunchedTape,
  468. flowChartSummingJunction,
  469. flowChartOr,
  470. flowChartCollate,
  471. flowChartSort,
  472. flowChartExtract,
  473. flowChartMerge,
  474. flowChartOnlineStorage,
  475. flowChartDelay,
  476. flowChartMagneticTape,
  477. flowChartMagneticDisk,
  478. flowChartMagneticDrum,
  479. flowChartDisplay
  480. };
  481. public enum StarAndBannerShapes
  482. {
  483. irregularSeal1,
  484. irregularSeal2,
  485. star4,
  486. star5,
  487. star6,
  488. star7,
  489. star8,
  490. star10,
  491. star12,
  492. star16,
  493. star24,
  494. star32,
  495. ribbon,
  496. ribbon2,
  497. ellipseRibbon,
  498. ellipseRibbon2,
  499. verticalScroll,
  500. horizontalScroll,
  501. wave,
  502. doubleWave
  503. };
  504. public enum CalloutShapes
  505. {
  506. wedgeRectCallout,
  507. wedgeRoundRectCallout,
  508. wedgeEllipseCallout,
  509. cloudCallout,
  510. borderCallout1,
  511. borderCallout2,
  512. borderCallout3,
  513. accentCallout1,
  514. accentCallout2,
  515. accentCallout3,
  516. callout1,
  517. callout2,
  518. callout3,
  519. accentBorderCallout1,
  520. accentBorderCallout2,
  521. accentBorderCallout3
  522. };
  523. /// <summary>
  524. /// Text alignment of a Paragraph.
  525. /// </summary>
  526. public enum Alignment
  527. {
  528. /// <summary>
  529. /// Align Paragraph to the left.
  530. /// </summary>
  531. left,
  532. /// <summary>
  533. /// Align Paragraph as centered.
  534. /// </summary>
  535. center,
  536. /// <summary>
  537. /// Align Paragraph to the right.
  538. /// </summary>
  539. right,
  540. /// <summary>
  541. /// (Justified) Align Paragraph to both the left and right margins, adding extra space between content as necessary.
  542. /// </summary>
  543. both
  544. };
  545. public enum Direction
  546. {
  547. LeftToRight,
  548. RightToLeft
  549. };
  550. /// <summary>
  551. /// Paragraph edit types
  552. /// </summary>
  553. internal enum EditType
  554. {
  555. /// <summary>
  556. /// A ins is a tracked insertion
  557. /// </summary>
  558. ins,
  559. /// <summary>
  560. /// A del is tracked deletion
  561. /// </summary>
  562. del
  563. }
  564. /// <summary>
  565. /// Custom property types.
  566. /// </summary>
  567. internal enum CustomPropertyType
  568. {
  569. /// <summary>
  570. /// System.String
  571. /// </summary>
  572. Text,
  573. /// <summary>
  574. /// System.DateTime
  575. /// </summary>
  576. Date,
  577. /// <summary>
  578. /// System.Int32
  579. /// </summary>
  580. NumberInteger,
  581. /// <summary>
  582. /// System.Double
  583. /// </summary>
  584. NumberDecimal,
  585. /// <summary>
  586. /// System.Boolean
  587. /// </summary>
  588. YesOrNo
  589. }
  590. /// <summary>
  591. /// Text types in a Run
  592. /// </summary>
  593. public enum RunTextType
  594. {
  595. /// <summary>
  596. /// System.String
  597. /// </summary>
  598. Text,
  599. /// <summary>
  600. /// System.String
  601. /// </summary>
  602. DelText,
  603. }
  604. public enum LineSpacingType
  605. {
  606. Line,
  607. Before,
  608. After
  609. }
  610. public enum LineSpacingTypeAuto
  611. {
  612. AutoBefore,
  613. AutoAfter,
  614. Auto,
  615. None
  616. }
  617. public enum HeadingType
  618. {
  619. [Description("Heading1")]
  620. Heading1,
  621. [Description("Heading2")]
  622. Heading2,
  623. [Description("Heading3")]
  624. Heading3,
  625. [Description("Heading4")]
  626. Heading4,
  627. [Description("Heading5")]
  628. Heading5,
  629. [Description("Heading6")]
  630. Heading6,
  631. [Description("Heading7")]
  632. Heading7,
  633. [Description("Heading8")]
  634. Heading8,
  635. [Description("Heading9")]
  636. Heading9,
  637. /*
  638. * The Character Based Headings below do not work in the same way as the headings 1-9 above, but appear on the same list in word.
  639. * I have kept them here for reference in case somebody else things its just a matter of adding them in to gain extra headings
  640. */
  641. #region Other character (NOT paragraph) based Headings
  642. //[Description("NoSpacing")]
  643. //NoSpacing,
  644. //[Description("Title")]
  645. //Title,
  646. //[Description("Subtitle")]
  647. //Subtitle,
  648. //[Description("Quote")]
  649. //Quote,
  650. //[Description("IntenseQuote")]
  651. //IntenseQuote,
  652. //[Description("Emphasis")]
  653. //Emphasis,
  654. //[Description("IntenseEmphasis")]
  655. //IntenseEmphasis,
  656. //[Description("Strong")]
  657. //Strong,
  658. //[Description("ListParagraph")]
  659. //ListParagraph,
  660. //[Description("SubtleReference")]
  661. //SubtleReference,
  662. //[Description("IntenseReference")]
  663. //IntenseReference,
  664. //[Description("BookTitle")]
  665. //BookTitle,
  666. #endregion
  667. }
  668. public enum TextDirection
  669. {
  670. btLr,
  671. right
  672. };
  673. /// <summary>
  674. /// Represents the switches set on a TOC.
  675. /// </summary>
  676. [Flags]
  677. public enum TableOfContentsSwitches
  678. {
  679. None = 0 << 0,
  680. [Description("\\a")]
  681. A = 1 << 0,
  682. [Description("\\b")]
  683. B = 1 << 1,
  684. [Description("\\c")]
  685. C = 1 << 2,
  686. [Description("\\d")]
  687. D = 1 << 3,
  688. [Description("\\f")]
  689. F = 1 << 4,
  690. [Description("\\h")]
  691. H = 1 << 5,
  692. [Description("\\l")]
  693. L = 1 << 6,
  694. [Description("\\n")]
  695. N = 1 << 7,
  696. [Description("\\o")]
  697. O = 1 << 8,
  698. [Description("\\p")]
  699. P = 1 << 9,
  700. [Description("\\s")]
  701. S = 1 << 10,
  702. [Description("\\t")]
  703. T = 1 << 11,
  704. [Description("\\u")]
  705. U = 1 << 12,
  706. [Description("\\w")]
  707. W = 1 << 13,
  708. [Description("\\x")]
  709. X = 1 << 14,
  710. [Description("\\z")]
  711. Z = 1 << 15,
  712. }
  713. }