Go to the documentation of this file.00001
00073
00074
00075 #ifndef __NMEStyle__
00076 #define __NMEStyle__
00077
00078 #ifdef __cplusplus
00079 extern "C" {
00080 #endif
00081
00082 #include "NME.h"
00083
00085 enum
00086 {
00087 kNMEErrStyleTableTooSmall = kNMEErr1stNMEOpt
00088 };
00089
00091 typedef enum NMEStyleEnum
00092 {
00093 kNMEStyleCharPlain = 0,
00094 kNMEStyleCharBold,
00095 kNMEStyleCharItalic,
00096 kNMEStyleCharUnderline,
00097 kNMEStyleCharSuperscript,
00098 kNMEStyleCharSubscript,
00099 kNMEStyleCharMonospace,
00100 kNMEStyleCharLink,
00101 kNMEStyleCharImage,
00102 kNMEStyleCharDT,
00103 kNMEStyleCharTH,
00104
00105 kNMEStyleParPlain,
00106 kNMEStyleParHeading,
00107 kNMEStyleParTable,
00108 kNMEStyleParUL,
00109 kNMEStyleParOL,
00110 kNMEStyleParDL,
00111 kNMEStyleParDT,
00112 kNMEStyleParIndentedPar,
00113
00114 kNMEStyleCount
00115 } NMEStyleEnum;
00116
00118 typedef struct
00119 {
00120 NMEInt begin;
00121 NMEInt end;
00122 NMEStyleEnum style;
00123 NMEInt level;
00124 NMEInt linkOffset;
00125 NMEInt linkLength;
00126 } NMEStyleSpan;
00127
00129 typedef struct
00130 {
00131 NMEInt tableSize;
00132 NMEInt n;
00133 NMEBoolean convertOffsetsToUnicode;
00135 NMEInt depth;
00136 NMEInt spanStack[kNMEStyleCount];
00137 NMEStyleSpan span[1];
00138 } NMEStyleTable;
00139
00141 extern NMEOutputFormat const NMEOutputFormatBasicText;
00142
00151 void NMEStyleInit(NMEStyleTable *table, NMEInt size,
00152 NMEBoolean convertOffsetsToUnicode);
00153
00166 NMEErr NMEStyleSpanHook(NMEInt level,
00167 NMEInt item,
00168 NMEBoolean enter,
00169 NMEConstText markup,
00170 NMEInt srcIndex,
00171 NMEInt srcLineNumber,
00172 NMEContext *context,
00173 void *data);
00174
00175 #ifdef __cplusplus
00176 }
00177 #endif
00178
00179 #endif