int nLen, nBuffer;
} ME_String;
+typedef struct tagME_FontCacheItem
+{
+ LOGFONTW lfSpecs;
+ HFONT hFont;
+ int nRefs;
+ int nAge;
+} ME_FontCacheItem;
+
+#define HFONT_CACHE_SIZE 10
+
typedef struct tagME_Style
{
CHARFORMAT2W fmt;
- HFONT hFont; /* cached font for the style */
+ ME_FontCacheItem *font_cache; /* cached font for the style */
TEXTMETRICW tm; /* cached font metrics for the style */
int nRefs; /* reference count */
SCRIPT_CACHE script_cache;
+ struct list entry;
} ME_Style;
typedef enum {
UINT nNestingLevel;
} ME_OutStream;
-typedef struct tagME_FontCacheItem
-{
- LOGFONTW lfSpecs;
- HFONT hFont;
- int nRefs;
- int nAge;
-} ME_FontCacheItem;
-
-#define HFONT_CACHE_SIZE 10
-
typedef struct tagME_TextEditor
{
HWND hWnd, hwndParent;
ME_TextBuffer *pBuffer;
ME_Cursor *pCursors;
DWORD styleFlags;
+ DWORD alignStyle;
DWORD exStyleFlags;
int nCursors;
SIZE sizeWindow;
BOOL bMouseCaptured;
int wheel_remain;
+ struct list style_list;
} ME_TextEditor;
typedef struct tagME_Context