ReactOS 0.4.16-dev-306-g647d351
editstr.h File Reference
#include <assert.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
#include <windef.h>
#include <winbase.h>
#include <winnls.h>
#include <winnt.h>
#include <wingdi.h>
#include <winuser.h>
#include <richedit.h>
#include <commctrl.h>
#include <ole2.h>
#include <richole.h>
#include "imm.h"
#include <textserv.h>
#include "usp10.h"
#include "wine/debug.h"
#include "wine/heap.h"
#include "wine/list.h"
Include dependency graph for editstr.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tagME_String
 
struct  tagME_FontCacheItem
 
struct  tagME_Style
 
struct  re_object
 
struct  tagME_Run
 
struct  tagME_Border
 
struct  tagME_BorderRect
 
struct  para_num
 
struct  tagME_Paragraph
 
struct  tagME_Cell
 
struct  tagME_Row
 
struct  tagME_DisplayItem
 
struct  tagME_TextBuffer
 
struct  tagME_Cursor
 
struct  insert_run_item
 
struct  delete_run_item
 
struct  join_paras_item
 
struct  split_para_item
 
struct  set_para_fmt_item
 
struct  set_char_fmt_item
 
struct  undo_item
 
struct  tagME_FontTableItem
 
struct  tagME_InStream
 
struct  tagME_TextEditor
 
struct  tagME_Context
 

Macros

#define COBJMACROS
 
#define HFONT_CACHE_SIZE   10
 
#define SELECTIONBAR_WIDTH   8
 
#define MERF_STYLEFLAGS   0x0FFF
 
#define MERF_GRAPHICS   0x001
 
#define MERF_TAB   0x002
 
#define MERF_ENDCELL   0x004 /* v4.1 */
 
#define MERF_NONTEXT   (MERF_GRAPHICS | MERF_TAB | MERF_ENDCELL)
 
#define MERF_SPLITTABLE   0x001000
 
#define MERF_STARTWHITE   0x002000
 
#define MERF_ENDWHITE   0x004000
 
#define MERF_WHITESPACE   0x008000
 
#define MERF_ENDPARA   0x100000
 
#define MERF_ENDROW   0x200000
 
#define MERF_HIDDEN   0x400000
 
#define MERF_TABLESTART   0x800000 /* v4.1 */
 
#define MERF_NOJOIN   (MERF_GRAPHICS|MERF_TAB|MERF_ENDPARA|MERF_ENDROW)
 
#define MERF_NOTEXT   (MERF_GRAPHICS|MERF_TAB|MERF_ENDPARA|MERF_ENDROW)
 
#define MERF_SPLITMASK   (~(0))
 
#define MEPF_REWRAP   0x01
 
#define MEPF_CELL   0x04 /* The paragraph is nested in a cell */
 
#define MEPF_ROWSTART   0x08 /* Hidden empty paragraph at the start of the row */
 
#define MEPF_ROWEND   0x10 /* Visible empty paragraph at the end of the row */
 
#define MEPF_COMPLEX   0x20 /* Use uniscribe */
 
#define STREAMIN_BUFFER_SIZE   4096 /* M$ compatibility */
 

Typedefs

typedef struct tagME_String ME_String
 
typedef struct tagME_FontCacheItem ME_FontCacheItem
 
typedef struct tagME_Style ME_Style
 
typedef struct tagME_Run ME_Run
 
typedef struct tagME_Border ME_Border
 
typedef struct tagME_BorderRect ME_BorderRect
 
typedef struct tagME_Paragraph ME_Paragraph
 
typedef struct tagME_Cell ME_Cell
 
typedef struct tagME_Row ME_Row
 
typedef struct tagME_DisplayItem ME_DisplayItem
 
typedef struct tagME_TextBuffer ME_TextBuffer
 
typedef struct tagME_Cursor ME_Cursor
 
typedef struct tagME_FontTableItem ME_FontTableItem
 
typedef struct tagME_InStream ME_InStream
 
typedef struct tagME_TextEditor ME_TextEditor
 
typedef struct tagME_Context ME_Context
 

Enumerations

enum  ME_DIType {
  diInvalid , diTextStart , diParagraph , diCell ,
  diRun , diStartRow , diTextEnd , diStartRowOrParagraph ,
  diStartRowOrParagraphOrEnd , diRunOrParagraph , diRunOrStartRow , diParagraphOrEnd ,
  diRunOrParagraphOrEnd
}
 
enum  ME_UndoMode { umAddToUndo , umAddToRedo , umIgnore , umAddBackToUndo }
 
enum  undo_type {
  undo_insert_run , undo_delete_run , undo_join_paras , undo_split_para ,
  undo_set_para_fmt , undo_set_char_fmt , undo_end_transaction , undo_potential_end_transaction
}
 
enum  ME_SelectionType {
  stPosition = 0 , stWord , stLine , stParagraph ,
  stDocument
}
 

Macro Definition Documentation

◆ COBJMACROS

#define COBJMACROS

Definition at line 30 of file editstr.h.

◆ HFONT_CACHE_SIZE

#define HFONT_CACHE_SIZE   10

Definition at line 69 of file editstr.h.

◆ MEPF_CELL

#define MEPF_CELL   0x04 /* The paragraph is nested in a cell */

Definition at line 143 of file editstr.h.

◆ MEPF_COMPLEX

#define MEPF_COMPLEX   0x20 /* Use uniscribe */

Definition at line 146 of file editstr.h.

◆ MEPF_REWRAP

#define MEPF_REWRAP   0x01

Definition at line 141 of file editstr.h.

◆ MEPF_ROWEND

#define MEPF_ROWEND   0x10 /* Visible empty paragraph at the end of the row */

Definition at line 145 of file editstr.h.

◆ MEPF_ROWSTART

#define MEPF_ROWSTART   0x08 /* Hidden empty paragraph at the start of the row */

Definition at line 144 of file editstr.h.

◆ MERF_ENDCELL

#define MERF_ENDCELL   0x004 /* v4.1 */

Definition at line 109 of file editstr.h.

◆ MERF_ENDPARA

#define MERF_ENDPARA   0x100000

Definition at line 122 of file editstr.h.

◆ MERF_ENDROW

#define MERF_ENDROW   0x200000

Definition at line 124 of file editstr.h.

◆ MERF_ENDWHITE

#define MERF_ENDWHITE   0x004000

Definition at line 118 of file editstr.h.

◆ MERF_GRAPHICS

#define MERF_GRAPHICS   0x001

Definition at line 105 of file editstr.h.

◆ MERF_HIDDEN

#define MERF_HIDDEN   0x400000

Definition at line 126 of file editstr.h.

◆ MERF_NOJOIN

Definition at line 131 of file editstr.h.

◆ MERF_NONTEXT

#define MERF_NONTEXT   (MERF_GRAPHICS | MERF_TAB | MERF_ENDCELL)

Definition at line 111 of file editstr.h.

◆ MERF_NOTEXT

Definition at line 133 of file editstr.h.

◆ MERF_SPLITMASK

#define MERF_SPLITMASK   (~(0))

Definition at line 136 of file editstr.h.

◆ MERF_SPLITTABLE

#define MERF_SPLITTABLE   0x001000

Definition at line 114 of file editstr.h.

◆ MERF_STARTWHITE

#define MERF_STARTWHITE   0x002000

Definition at line 116 of file editstr.h.

◆ MERF_STYLEFLAGS

#define MERF_STYLEFLAGS   0x0FFF

Definition at line 103 of file editstr.h.

◆ MERF_TAB

#define MERF_TAB   0x002

Definition at line 107 of file editstr.h.

◆ MERF_TABLESTART

#define MERF_TABLESTART   0x800000 /* v4.1 */

Definition at line 128 of file editstr.h.

◆ MERF_WHITESPACE

#define MERF_WHITESPACE   0x008000

Definition at line 120 of file editstr.h.

◆ SELECTIONBAR_WIDTH

#define SELECTIONBAR_WIDTH   8

Definition at line 100 of file editstr.h.

◆ STREAMIN_BUFFER_SIZE

#define STREAMIN_BUFFER_SIZE   4096 /* M$ compatibility */

Definition at line 370 of file editstr.h.

Typedef Documentation

◆ ME_Border

◆ ME_BorderRect

◆ ME_Cell

◆ ME_Context

◆ ME_Cursor

◆ ME_DisplayItem

◆ ME_FontCacheItem

◆ ME_FontTableItem

◆ ME_InStream

Definition at line 378 of file editstr.h.

◆ ME_Paragraph

◆ ME_Row

◆ ME_Run

◆ ME_String

◆ ME_Style

◆ ME_TextBuffer

◆ ME_TextEditor

Enumeration Type Documentation

◆ ME_DIType

Enumerator
diInvalid 
diTextStart 
diParagraph 
diCell 
diRun 
diStartRow 
diTextEnd 
diStartRowOrParagraph 
diStartRowOrParagraphOrEnd 
diRunOrParagraph 
diRunOrStartRow 
diParagraphOrEnd 
diRunOrParagraphOrEnd 

Definition at line 82 of file editstr.h.

82 {
84 diTextStart, /* start of the text buffer */
85 diParagraph, /* paragraph start */
86 diCell, /* cell start */
87 diRun, /* run (sequence of chars with the same character format) */
88 diStartRow, /* start of the row (line of text on the screen) */
89 diTextEnd, /* end of the text buffer */
90
91 /********************* these below are meant for finding only *********************/
97 diRunOrParagraphOrEnd, /* 12 */
98} ME_DIType;
ME_DIType
Definition: editstr.h:82
@ diStartRow
Definition: editstr.h:88
@ diTextEnd
Definition: editstr.h:89
@ diRunOrParagraphOrEnd
Definition: editstr.h:97
@ diCell
Definition: editstr.h:86
@ diInvalid
Definition: editstr.h:83
@ diParagraphOrEnd
Definition: editstr.h:96
@ diRun
Definition: editstr.h:87
@ diStartRowOrParagraphOrEnd
Definition: editstr.h:93
@ diRunOrParagraph
Definition: editstr.h:94
@ diTextStart
Definition: editstr.h:84
@ diRunOrStartRow
Definition: editstr.h:95
@ diStartRowOrParagraph
Definition: editstr.h:92
@ diParagraph
Definition: editstr.h:85

◆ ME_SelectionType

Enumerator
stPosition 
stWord 
stLine 
stParagraph 
stDocument 

Definition at line 356 of file editstr.h.

356 {
357 stPosition = 0,
358 stWord,
359 stLine,
ME_SelectionType
Definition: editstr.h:356
@ stWord
Definition: editstr.h:358
@ stParagraph
Definition: editstr.h:360
@ stPosition
Definition: editstr.h:357
@ stLine
Definition: editstr.h:359
@ stDocument
Definition: editstr.h:361

◆ ME_UndoMode

Enumerator
umAddToUndo 
umAddToRedo 
umIgnore 
umAddBackToUndo 

Definition at line 280 of file editstr.h.

280 {
283 umIgnore,
ME_UndoMode
Definition: editstr.h:280
@ umAddBackToUndo
Definition: editstr.h:284
@ umAddToUndo
Definition: editstr.h:281
@ umAddToRedo
Definition: editstr.h:282
@ umIgnore
Definition: editstr.h:283

◆ undo_type

Enumerator
undo_insert_run 
undo_delete_run 
undo_join_paras 
undo_split_para 
undo_set_para_fmt 
undo_set_char_fmt 
undo_end_transaction 
undo_potential_end_transaction 

Definition at line 287 of file editstr.h.

288{
295 undo_end_transaction, /* marks the end of a group of changes for undo */
296 undo_potential_end_transaction /* allows grouping typed chars for undo */
297};
@ undo_split_para
Definition: editstr.h:292
@ undo_join_paras
Definition: editstr.h:291
@ undo_set_char_fmt
Definition: editstr.h:294
@ undo_set_para_fmt
Definition: editstr.h:293
@ undo_end_transaction
Definition: editstr.h:295
@ undo_potential_end_transaction
Definition: editstr.h:296
@ undo_insert_run
Definition: editstr.h:289
@ undo_delete_run
Definition: editstr.h:290