1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2 /* 3 * This file is part of the LibreOffice project. 4 * 5 * This Source Code Form is subject to the terms of the Mozilla Public 6 * License, v. 2.0. If a copy of the MPL was not distributed with this 7 * file, You can obtain one at http://mozilla.org/MPL/2.0/. 8 * 9 * This file incorporates work covered by the following license notice: 10 * 11 * Licensed to the Apache Software Foundation (ASF) under one or more 12 * contributor license agreements. See the NOTICE file distributed 13 * with this work for additional information regarding copyright 14 * ownership. The ASF licenses this file to you under the Apache 15 * License, Version 2.0 (the "License"); you may not use this file 16 * except in compliance with the License. You may obtain a copy of 17 * the License at http://www.apache.org/licenses/LICENSE-2.0 . 18 */ 19 20 #ifndef INCLUDED_SW_SOURCE_FILTER_INC_WWSTYLES_HXX 21 #define INCLUDED_SW_SOURCE_FILTER_INC_WWSTYLES_HXX 22 23 #include <sal/types.h> 24 25 namespace ww 26 { 27 enum sti 28 { 29 stiNormal = 0, // 0x0000 30 stiLev1 = 1, // 0x0001 31 stiLev2 = 2, // 0x0002 32 stiLev3 = 3, // 0x0003 33 stiLev4 = 4, // 0x0004 34 stiLev5 = 5, // 0x0005 35 stiLev6 = 6, // 0x0006 36 stiLev7 = 7, // 0x0007 37 stiLev8 = 8, // 0x0008 38 stiLev9 = 9, // 0x0009 39 stiLevFirst = stiLev1, 40 stiLevLast = stiLev9, 41 stiIndex1 = 10, // 0x000A 42 stiIndex2 = 11, // 0x000B 43 stiIndex3 = 12, // 0x000C 44 stiIndex4 = 13, // 0x000D 45 stiIndex5 = 14, // 0x000E 46 stiIndex6 = 15, // 0x000F 47 stiIndex7 = 16, // 0x0010 48 stiIndex8 = 17, // 0x0011 49 stiIndex9 = 18, // 0x0012 50 stiIndexFirst = stiIndex1, 51 stiIndexLast = stiIndex9, 52 stiToc1 = 19, // 0x0013 53 stiToc2 = 20, // 0x0014 54 stiToc3 = 21, // 0x0015 55 stiToc4 = 22, // 0x0016 56 stiToc5 = 23, // 0x0017 57 stiToc6 = 24, // 0x0018 58 stiToc7 = 25, // 0x0019 59 stiToc8 = 26, // 0x001A 60 stiToc9 = 27, // 0x001B 61 stiTocFirst = stiToc1, 62 stiTocLast = stiToc9, 63 stiNormIndent = 28, // 0x001C 64 stiFootnoteText = 29, // 0x001D 65 stiAtnText = 30, // 0x001E 66 stiHeader = 31, // 0x001F 67 stiFooter = 32, // 0x0020 68 stiIndexHeading = 33, // 0x0021 69 stiCaption = 34, // 0x0022 70 stiToCaption = 35, // 0x0023 71 stiEnvAddr = 36, // 0x0024 72 stiEnvRet = 37, // 0x0025 73 stiFootnoteRef = 38, // 0x0026 char style 74 stiAtnRef = 39, // 0x0027 char style 75 stiLnn = 40, // 0x0028 char style 76 stiPgn = 41, // 0x0029 char style 77 stiEdnRef = 42, // 0x002A char style 78 stiEdnText = 43, // 0x002B 79 stiToa = 44, // 0x002C 80 stiMacro = 45, // 0x002D 81 stiToaHeading = 46, // 0x002E 82 stiList = 47, // 0x002F 83 stiListBullet = 48, // 0x0030 84 stiListNumber = 49, // 0x0031 85 stiList2 = 50, // 0x0032 86 stiList3 = 51, // 0x0033 87 stiList4 = 52, // 0x0034 88 stiList5 = 53, // 0x0035 89 stiListBullet2 = 54, // 0x0036 90 stiListBullet3 = 55, // 0x0037 91 stiListBullet4 = 56, // 0x0038 92 stiListBullet5 = 57, // 0x0039 93 stiListNumber2 = 58, // 0x003A 94 stiListNumber3 = 59, // 0x003B 95 stiListNumber4 = 60, // 0x003C 96 stiListNumber5 = 61, // 0x003D 97 stiTitle = 62, // 0x003E 98 stiClosing = 63, // 0x003F 99 stiSignature = 64, // 0x0040 100 stiNormalChar = 65, // 0x0041 char style 101 stiBodyText = 66, // 0x0042 102 /* 103 stiBodyTextInd1 was orig stiBodyText2 in documentation, but that 104 collides with the other stiBodyText2 and this seems more reasonable. 105 cmc@openoffice.org 106 */ 107 stiBodyTextInd1 = 67, // 0x0043 108 stiListCont = 68, // 0x0044 109 stiListCont2 = 69, // 0x0045 110 stiListCont3 = 70, // 0x0046 111 stiListCont4 = 71, // 0x0047 112 stiListCont5 = 72, // 0x0048 113 stiMsgHeader = 73, // 0x0049 114 stiSubtitle = 74, // 0x004A 115 stiSalutation = 75, // 0x004B 116 stiDate = 76, // 0X004C 117 stiBodyText1I = 77, // 0x004D 118 stiBodyText1I2 = 78, // 0x004E 119 stiNoteHeading = 79, // 0x004F 120 stiBodyText2 = 80, // 0x0050 121 stiBodyText3 = 81, // 0x0051 122 stiBodyTextInd2 = 82, // 0x0052 123 stiBodyTextInd3 = 83, // 0x0053 124 stiBlockQuote = 84, // 0x0054 125 stiHyperlink = 85, // 0x0055 char style 126 stiHyperlinkFollowed = 86, // 0x0056 char style 127 stiStrong = 87, // 0x0057 char style 128 stiEmphasis = 88, // 0x0058 char style 129 stiNavPane = 89, // 0x0059 char style 130 stiPlainText = 90, // 0x005A 131 stiMax = 91, // number of defined sti's 132 stiUser = 0x0ffe, // user styles are distinguished by name 133 stiNil = 0x0fff // max for 12 bits 134 }; 135 136 /** Find the WinWord sti index of an old <= Word2 stc (style code) 137 138 When importing a Word 2 document we would like to treat styles as 139 similar to how word 8 does as possible, to this end word will treat 140 some styles with special codes as inbuilt styles, and some as user 141 defined styles. 142 143 @param 144 stc the Style code to test to see what winword sti word would give 145 such a code 146 147 @return the sti that word would give it. stiUser if word would treat 148 it as a user defined style. 149 */ 150 sti GetCanonicalStiFromStc(sal_uInt8 stc) noexcept; 151 152 /** Find the WinWord english name from a sti index 153 154 Map the word style index to its english name 155 156 @param 157 sti the Style index 158 159 @return the name word would give it if it's an inbuilt name, otherwise 160 NULL 161 */ 162 const char* GetEnglishNameFromSti(sti eSti) noexcept; 163 164 /** Determine if the WinWord sti is standard Character Style 165 166 @param 167 sti the Style index 168 169 @return true if a known inbuild character style 170 */ 171 bool StandardStiIsCharStyle(sti eSti) noexcept; 172 } // namespace ww 173 174 #endif 175 176 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 177