1 /* AbiWord 2 * Copyright (C) 1998,1999 AbiSource, Inc. 3 * BIDI Copyright (c) 2001,2002 Tomas Frydrych, Yaacov Akiba Slama 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU General Public License 7 * as published by the Free Software Foundation; either version 2 8 * of the License, or (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 18 * 02110-1301 USA. 19 */ 20 #ifndef FL_AUTOLISTS_H 21 #define FL_AUTOLISTS_H 22 23 #include "ut_types.h" 24 #include "ut_xml.h" 25 #include "fp_types.h" 26 27 /////////////////////////////////////////////////////////////////////// 28 // Lists Definitions are in fp_types.h 29 /////////////////////////////////////////////////////////////////////// 30 31 class ABI_EXPORT fl_AutoLists 32 { 33 public: 34 UT_uint32 getXmlListsSize(); 35 UT_uint32 getFmtListsSize(); 36 37 const gchar * getXmlList(UT_uint32 i); 38 const char * getFmtList(UT_uint32 i); 39 }; 40 41 #define IS_NUMBERED_LIST_TYPE(x) (((x) >= NUMBERED_LIST && (x) < BULLETED_LIST) || ((x) > OTHER_NUMBERED_LISTS && (x) < NOT_A_LIST)) 42 #define IS_BULLETED_LIST_TYPE(x) ((x) >= BULLETED_LIST && (x) < OTHER_NUMBERED_LISTS) 43 44 #define IS_NONE_LIST_TYPE(x) ((x) == NOT_A_LIST) 45 46 #define XML_NUMBERED_LIST (( const gchar *) "Numbered List") 47 #define XML_LOWERCASE_LIST ((const gchar *) "Lower Case List") 48 #define XML_UPPERCASE_LIST ((const gchar *) "Upper Case List") 49 #define XML_LOWERROMAN_LIST ((const gchar *) "Lower Roman List") 50 #define XML_UPPERROMAN_LIST ((const gchar *) "Upper Roman List") 51 #define XML_HEBREW_LIST ((const gchar *) "Hebrew List") 52 #define XML_ARABICNUM_LIST ((const gchar *) "Arabic List") 53 #define XML_BULLETED_LIST ((const gchar *) "Bullet List") 54 #define XML_DASHED_LIST ((const gchar *) "Dashed List") 55 #define XML_SQUARE_LIST ((const gchar *) "Square List") 56 #define XML_TRIANGLE_LIST ((const gchar *) "Triangle List") 57 #define XML_DIAMOND_LIST ((const gchar *) "Diamond List") 58 #define XML_STAR_LIST ((const gchar *) "Star List") 59 #define XML_IMPLIES_LIST ((const gchar *) "Implies List") 60 #define XML_TICK_LIST ((const gchar *) "Tick List") 61 #define XML_BOX_LIST ((const gchar *) "Box List") 62 #define XML_HAND_LIST ((const gchar *) "Hand List") 63 #define XML_HEART_LIST ((const gchar *) "Heart List") 64 #define XML_ARROWHEAD_LIST ((const gchar *) "Arrowhead List") 65 66 // 67 // MS Word uses 0.5 inches so we do too. 68 #define LIST_DEFAULT_INDENT 0.50 69 70 // May need to tweak this some more... 71 72 #define LIST_DEFAULT_INDENT_LABEL 0.30 73 74 // 75 // Reserved the first 10000 id's for useful purposes.... 76 // 77 #define AUTO_LIST_RESERVED 1000 78 79 #define fmt_NUMBERED_LIST ((const char *)"%*%d") 80 #define fmt_LOWERCASE_LIST ((const char *)"%*%a") 81 #define fmt_UPPERCASE_LIST ((const char *)"%*%A") 82 #define fmt_LOWERROMAN_LIST ((const char *)"%*%r") 83 #define fmt_UPPERROMAN_LIST ((const char *)"%*%R") 84 #define fmt_BULLETED_LIST ((const char *)"%b") 85 #define fmt_DASHED_LIST ((const char *)"%c") 86 #define fmt_HEBREW_LIST ((const char *)"%*%h") 87 #define fmt_ARABICNUM_LIST ((const char *)"%*%i") 88 89 90 #endif 91