Ignore:
Timestamp:
Nov 13, 2002, 1:16:11 PM (23 years ago)
Author:
sandervl
Message:

header update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/win/richedit.h

    r5148 r9406  
     1/*
     2 * Copyright (C) 2000 Jean-Claude Batista
     3 * Copyright (C) 2002 Andriy Palamarchuk
     4 *
     5 * This library is free software; you can redistribute it and/or
     6 * modify it under the terms of the GNU Lesser General Public
     7 * License as published by the Free Software Foundation; either
     8 * version 2.1 of the License, or (at your option) any later version.
     9 *
     10 * This library 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 GNU
     13 * Lesser General Public License for more details.
     14 *
     15 * You should have received a copy of the GNU Lesser General Public
     16 * License along with this library; if not, write to the Free Software
     17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
     18 */
     19
    120#ifndef __WINE_RICHEDIT_H
    221#define __WINE_RICHEDIT_H
    322
    4 #include "windef.h"
    523#include "pshpack4.h"
    624
     
    1634
    1735#define RICHEDIT_CLASS20A       "RichEdit20A"
    18 #define RICHEDIT_CLASS20W       L"RichEdit20W"
     36#if defined(__GNUC__)
     37# define RICHEDIT_CLASS20W (const WCHAR []){ 'R','i','c','h','E','d','i','t','2','0','W',0 }
     38#elif defined(_MSC_VER)
     39# define RICHEDIT_CLASS20W      L"RichEdit20W"
     40#else
     41static const WCHAR RICHEDIT_CLASS20W[] = { 'R','i','c','h','E','d','i','t','2','0','W',0 };
     42#endif
    1943#define RICHEDIT_CLASS10A       "RICHEDIT"
    2044
     
    5882#define EM_SETWORDBREAKPROCEX   (WM_USER + 81)
    5983
    60 // new edit styles
    61 #define ES_SAVESEL                      0x00008000
    62 #define ES_SUNKEN                       0x00004000
    63 #define ES_DISABLENOSCROLL              0x00002000
    64 #define ES_SELECTIONBAR                 0x01000000
    65 #define ES_NOOLEDRAGDROP                0x00000008
    66 
    67 
    68 typedef DWORD (* CALLBACK EDITSTREAMCALLBACK)( DWORD, LPBYTE, LONG, LONG );
    69 
    70 typedef struct
     84#define EM_SETUNDOLIMIT         (WM_USER + 82)
     85#define EM_REDO                 (WM_USER + 84)
     86#define EM_CANREDO              (WM_USER + 85)
     87#define EM_GETUNDONAME          (WM_USER + 86)
     88#define EM_GETREDONAME          (WM_USER + 87)
     89#define EM_STOPGROUPTYPING      (WM_USER + 88)
     90
     91#define EM_SETTEXTMODE          (WM_USER + 89)
     92#define EM_GETTEXTMODE          (WM_USER + 90)
     93#define EM_AUTOURLDETECT        (WM_USER + 91)
     94#define EM_GETAUTOURLDETECT     (WM_USER + 92)
     95#define EM_SETPALETTE           (WM_USER + 93)
     96#define EM_GETTEXTEX            (WM_USER + 94)
     97#define EM_GETTEXTLENGTHEX      (WM_USER + 95)
     98#define EM_SHOWSCROLLBAR        (WM_USER + 96)
     99#define EM_SETTEXTEX            (WM_USER + 97)
     100
     101#define EM_SETPUNCTUATION       (WM_USER + 100)
     102#define EM_GETPUNCTUATION       (WM_USER + 101)
     103#define EM_SETWORDWRAPMODE      (WM_USER + 102)
     104#define EM_GETWORDWRAPMODE      (WM_USER + 103)
     105#define EM_SETIMECOLOR          (WM_USER + 104)
     106#define EM_GETIMECOLOR          (WM_USER + 105)
     107#define EM_SETIMEOPTIONS        (WM_USER + 106)
     108#define EM_GETIMEOPTIONS        (WM_USER + 107)
     109#define EM_CONVPOSITION         (WM_USER + 108)
     110
     111#define EM_SETLANGOPTIONS       (WM_USER + 120)
     112#define EM_GETLANGOPTIONS       (WM_USER + 121)
     113#define EM_GETIMECOMPMODE       (WM_USER + 122)
     114
     115#define EM_SETLANGOPTIONS       (WM_USER + 120)
     116#define EM_GETLANGOPTIONS       (WM_USER + 121)
     117#define EM_GETIMECOMPMODE       (WM_USER + 122)
     118
     119#define EM_FINDTEXTW            (WM_USER + 123)
     120#define EM_FINDTEXTEXW          (WM_USER + 124)
     121
     122#define EM_RECONVERSION         (WM_USER + 125)
     123#define EM_SETIMEMODEBIAS       (WM_USER + 126)
     124#define EM_GETIMEMODEBIAS       (WM_USER + 127)
     125
     126#define EM_SETBIDIOPTIONS       (WM_USER + 200)
     127#define EM_GETBIDIOPTIONS       (WM_USER + 201)
     128
     129#define EM_SETTYPOGRAPHYOPTIONS (WM_USER + 202)
     130#define EM_GETTYPOGRAPHYOPTIONS (WM_USER + 203)
     131
     132#define EM_SETEDITSTYLE         (WM_USER + 204)
     133#define EM_GETEDITSTYLE         (WM_USER + 205)
     134
     135#define EM_OUTLINE              (WM_USER + 220)
     136
     137#define EM_GETSCROLLPOS         (WM_USER + 221)
     138#define EM_SETSCROLLPOS         (WM_USER + 222)
     139
     140#define EM_SETFONTSIZE          (WM_USER + 223)
     141#define EM_GETZOOM              (WM_USER + 224)
     142#define EM_SETZOOM              (WM_USER + 225)
     143
     144/* New notifications */
     145#define EN_MSGFILTER                    0x0700
     146#define EN_REQUESTRESIZE                0x0701
     147#define EN_SELCHANGE                    0x0702
     148#define EN_DROPFILES                    0x0703
     149#define EN_PROTECTED                    0x0704
     150#define EN_CORRECTTEXT                  0x0705
     151#define EN_STOPNOUNDO                   0x0706
     152#define EN_IMECHANGE                    0x0707
     153#define EN_SAVECLIPBOARD                0x0708
     154#define EN_OLEOPFAILED                  0x0709
     155#define EN_OBJECTPOSITIONS              0x070a
     156#define EN_LINK                         0x070b
     157#define EN_DRAGDROPDONE                 0x070c
     158#define EN_PARAGRAPHEXPANDED            0x070d
     159#define EN_ALIGNLTR                     0x0710
     160#define EN_ALIGNRTL                     0x0711
     161
     162
     163#ifdef __WIN32OS2__
     164typedef DWORD (* CALLBACK EDITSTREAMCALLBACK)( DWORD, LPBYTE, LONG, LONG * );
     165#else
     166typedef DWORD (CALLBACK * EDITSTREAMCALLBACK)( DWORD, LPBYTE, LONG, LONG * );
     167#endif
     168/* tab stops number limit */
     169#define MAX_TAB_STOPS         0x00000020
     170
     171/* Rich edit control styles */
     172#define ES_DISABLENOSCROLL    0x00002000
     173#define ES_SUNKEN             0x00004000
     174#define ES_SAVESEL            0x00008000
     175#define ES_SELFIME            0x00040000
     176#define ES_NOIME              0x00080000
     177#define ES_VERTICAL           0x00400000
     178#define ES_EX_NOCALLOLEINIT   0x01000000
     179
     180/* the character formatting options */
     181#define SCF_DEFAULT           0x00000000
     182#define SCF_SELECTION         0x00000001
     183#define SCF_WORD              0x00000002
     184#define SCF_ALL               0x00000004
     185#define SCF_USEUIRULES        0x00000008
     186
     187/* CHARFORMAT structure */
     188typedef struct _charformat
     189{
     190    UINT       cbSize;
     191    DWORD      dwMask;
     192    DWORD      dwEffects;
     193    LONG       yHeight;
     194    LONG       yOffset;
     195    COLORREF   crTextColor;
     196    BYTE       bCharSet;
     197    BYTE       bPitchAndFamily;
     198    char       szFaceName[LF_FACESIZE];
     199} CHARFORMATA;
     200
     201typedef struct _charformatw
     202{
     203    UINT       cbSize;
     204    DWORD      dwMask;
     205    DWORD      dwEffects;
     206    LONG       yHeight;
     207    LONG       yOffset;
     208    COLORREF   crTextColor;
     209    BYTE       bCharSet;
     210    BYTE       bPitchAndFamily;
     211    WCHAR      szFaceName[LF_FACESIZE];
     212} CHARFORMATW;
     213
     214DECL_WINELIB_TYPE_AW(CHARFORMAT)
     215
     216typedef struct _charformat2a {
     217    UINT       cbSize;
     218    DWORD      dwMask;
     219    DWORD      dwEffects;
     220    LONG       yHeight;
     221    LONG       yOffset;
     222    COLORREF   crTextColor;
     223    BYTE       bCharSet;
     224    BYTE       bPitchAndFamily;
     225    char       szFaceName[LF_FACESIZE];
     226    WORD       wWeight;
     227    SHORT      sSpacing;
     228    COLORREF   crBackColor;
     229    LCID       lcid;
     230    DWORD      dwReserved;
     231    SHORT      sStyle;
     232    WORD       wKerning;
     233    BYTE       bUnderlineType;
     234    BYTE       bAnimation;
     235    BYTE       bRevAuthor;
     236} CHARFORMAT2A;
     237
     238typedef struct _charformat2w {
     239    UINT       cbSize;
     240    DWORD      dwMask;
     241    DWORD      dwEffects;
     242    LONG       yHeight;
     243    LONG       yOffset;
     244    COLORREF   crTextColor;
     245    BYTE       bCharSet;
     246    BYTE       bPitchAndFamily;
     247    WCHAR      szFaceName[LF_FACESIZE];
     248    WORD       wWeight;
     249    SHORT      sSpacing;
     250    COLORREF   crBackColor;
     251    LCID       lcid;
     252    DWORD      dwReserved;
     253    SHORT      sStyle;
     254    WORD       wKerning;
     255    BYTE       bUnderlineType;
     256    BYTE       bAnimation;
     257    BYTE       bRevAuthor;
     258} CHARFORMAT2W;
     259
     260DECL_WINELIB_TYPE_AW(CHARFORMAT2)
     261
     262/* CHARFORMAT masks */
     263#define CFM_BOLD              0x00000001
     264#define CFM_ITALIC            0x00000002
     265#define CFM_UNDERLINE         0x00000004
     266#define CFM_STRIKEOUT         0x00000008
     267#define CFM_PROTECTED         0x00000010
     268#define CFM_LINK              0x00000020
     269#define CFM_SMALLCAPS         0x00000040
     270#define CFM_ALLCAPS           0x00000080
     271#define CFM_HIDDEN            0x00000100
     272#define CFM_OUTLINE           0x00000200
     273#define CFM_SHADOW            0x00000400
     274#define CFM_EMBOSS            0x00000800
     275#define CFM_IMPRINT           0x00001000
     276#define CFM_DISABLED          0x00002000
     277#define CFM_REVISED           0x00004000
     278#define CFM_REVAUTHOR         0x00008000
     279#define CFM_SUBSCRIPT         0x00030000
     280#define CFM_SUPERSCRIPT       0x00030000
     281#define CFM_ANIMATION         0x00040000
     282#define CFM_STYLE             0x00080000
     283#define CFM_KERNING           0x00100000
     284#define CFM_SPACING           0x00200000
     285#define CFM_WEIGHT            0x00400000
     286#define CFM_LCID              0x02000000
     287#define CFM_BACKCOLOR         0x04000000
     288#define CFM_CHARSET           0x08000000
     289#define CFM_OFFSET            0x10000000
     290#define CFM_FACE              0x20000000
     291#define CFM_COLOR             0x40000000
     292#define CFM_SIZE              0x80000000
     293#define CFM_EFFECTS           (CFM_BOLD | CFM_ITALIC | CFM_UNDERLINE | CFM_COLOR | CFM_STRIKEOUT | CFE_PROTECTED | CFM_LINK)
     294
     295/* CHARFORMAT effects */
     296#define CFE_BOLD              0x00000001
     297#define CFE_ITALIC            0x00000002
     298#define CFE_UNDERLINE         0x00000004
     299#define CFE_STRIKEOUT         0x00000008
     300#define CFE_PROTECTED         0x00000010
     301#define CFE_SUBSCRIPT         0x00010000
     302#define CFE_SUPERSCRIPT       0x00020000
     303#define CFE_AUTOCOLOR         0x40000000
     304
     305/* ECO operations */
     306#define ECOOP_SET             0x0001
     307#define ECOOP_OR              0x0002
     308#define ECOOP_AND             0x0003
     309#define ECOOP_XOR             0x0004
     310
     311/* edit control options */
     312#define ECO_AUTOWORDSELECTION 0x00000001
     313#define ECO_AUTOVSCROLL       0x00000040
     314#define ECO_AUTOHSCROLL       0x00000080
     315#define ECO_NOHIDESEL         0x00000100
     316#define ECO_READONLY          0x00000800
     317#define ECO_WANTRETURN        0x00001000
     318#define ECO_SAVESEL           0x00008000
     319#define ECO_SELECTIONBAR      0x01000000
     320#define ECO_VERTICAL          0x00400000
     321
     322/* Event notification masks */
     323#define ENM_NONE              0x00000000
     324#define ENM_CHANGE            0x00000001
     325#define ENM_UPDATE            0x00000002
     326#define ENM_SCROLL            0x00000004
     327#define ENM_KEYEVENTS         0x00010000
     328#define ENM_MOUSEEVENTS       0x00020000
     329#define ENM_REQUESTRESIZE     0x00040000
     330#define ENM_SELCHANGE         0x00080000
     331#define ENM_DROPFILES         0x00100000
     332#define ENM_PROTECTED         0x00200000
     333#define ENM_CORRECTTEXT       0x00400000
     334#define ENM_IMECHANGE         0x00800000
     335#define ENM_LINK              0x04000000
     336
     337typedef struct _charrange
     338{
     339    LONG    cpMin;
     340    LONG    cpMax;
     341} CHARRANGE;
     342
     343typedef struct _textrange
     344{
     345    CHARRANGE chrg;
     346    LPSTR     lpstrText;
     347} TEXTRANGEA;
     348
     349typedef struct _textrangew
     350{
     351    CHARRANGE chrg;
     352    LPWSTR     lpstrText;
     353} TEXTRANGEW;
     354
     355DECL_WINELIB_TYPE_AW(TEXTRANGE)
     356
     357typedef struct _editstream
    71358{
    72359    DWORD               dwCookie;
     
    75362} EDITSTREAM;
    76363
    77 #define SF_TEXT         0x0001
    78 #define SF_RTF          0x0002
    79 #define SF_RTFNOOBJS    0x0003
    80 #define SF_TEXTIZED     0x0004
    81 
    82 
     364typedef struct _compcolor {
     365    COLORREF   crText;
     366    COLORREF   crBackground;
     367    DWORD      dwEffects;
     368} COMPCOLOR;
     369
     370typedef struct _encorrecttext {
     371    NMHDR      nmhdr;
     372    CHARRANGE  chrg;
     373    WORD       seltyp;
     374} ENCORRECTTEXT;
     375
     376typedef struct _endropfiles {
     377    NMHDR      nmhdr;
     378    HANDLE     hDrop;
     379    LONG       cp;
     380    BOOL       fProtected;
     381} ENDROPFILES;
     382
     383typedef struct _enlink {
     384    NMHDR      nmhdr;
     385    UINT       msg;
     386    WPARAM     wParam;
     387    LPARAM     lParam;
     388    CHARRANGE  chrg;
     389} ENLINK;
     390
     391typedef struct {
     392    NMHDR      nmhdr;
     393    LONG       iob;
     394    LONG       lOper;
     395    HRESULT    hr;
     396} ENOLEOPFAILED;
     397
     398typedef struct _enprotected {
     399    NMHDR      nmhdr;
     400    UINT       msg;
     401    WPARAM     wParam;
     402    LPARAM     lParam;
     403    CHARRANGE  chrg;
     404} ENPROTECTED, *LPENPROTECTED;
     405
     406typedef struct _ensaveclipboard {
     407    NMHDR      nmhdr;
     408    LONG       cObjectCount;
     409    LONG       cch;
     410} ENSAVECLIPBOARD;
     411
     412typedef struct _findtextA {
     413    CHARRANGE  chrg;
     414    LPSTR      lpstrText;
     415} FINDTEXTA;
     416
     417typedef struct _findtextW {
     418    CHARRANGE  chrg;
     419    LPWSTR     lpstrText;
     420} FINDTEXTW;
     421
     422DECL_WINELIB_TYPE_AW(FINDTEXT);
     423
     424typedef struct _findtextexA {
     425    CHARRANGE  chrg;
     426    LPSTR      lpstrText;
     427    CHARRANGE  chrgText;
     428} FINDTEXTEXA;
     429
     430typedef struct _findtextexW {
     431    CHARRANGE  chrg;
     432    LPWSTR     lpstrText;
     433    CHARRANGE  chrgText;
     434} FINDTEXTEXW;
     435
     436DECL_WINELIB_TYPE_AW(FINDTEXTEX);
     437
     438typedef struct _formatrange {
     439    HDC        hdc;
     440    HDC        hdcTarget;
     441    RECT       rc;
     442    RECT       rcPage;
     443    CHARRANGE  chrg;
     444} FORMATRANGE;
     445
     446typedef struct _msgfilter {
     447    NMHDR      nmhdr;
     448    UINT       msg;
     449    WPARAM     wParam;
     450    LPARAM     lParam;
     451} MSGFILTER;
     452
     453typedef struct _paraformat {
     454    UINT       cbSize;
     455    DWORD      dwMask;
     456    WORD       wNumbering;
     457    WORD       wReserved;
     458    LONG       dxStartIndent;
     459    LONG       dxRightIndent;
     460    LONG       dxOffset;
     461    WORD       wAlignment;
     462    SHORT      cTabCount;
     463    LONG       rgxTabs[MAX_TAB_STOPS];
     464} PARAFORMAT;
     465
     466typedef struct _selchange {
     467    NMHDR      nmhdr;
     468    CHARRANGE  chrg;
     469    WORD       seltyp;
     470} SELCHANGE;
     471
     472typedef struct _reqresize {
     473    NMHDR      nmhdr;
     474    RECT       rc;
     475} REQRESIZE;
     476
     477typedef struct _repastespecial {
     478    DWORD      dwAspect;
     479    DWORD      dwParam;
     480} REPASTESPECIAL;
     481
     482typedef struct _punctuation {
     483    UINT       iSize;
     484    LPSTR      szPunctuation;
     485} PUNCTUATION;
     486
     487typedef struct _gettextex {
     488    DWORD      cb;
     489    DWORD      flags;
     490    UINT       codepage;
     491    LPCSTR     lpDefaultChar;
     492    LPBOOL     lpUsedDefaultChar;
     493} GETTEXTEX;
     494
     495#define SF_TEXT               0x00000001
     496#define SF_RTF                0x00000002
     497#define SF_RTFNOOBJS          0x00000003
     498#define SF_TEXTIZED           0x00000004
     499#define SF_UNICODE            0x00000010
     500#define SF_USECODEPAGE        0x00000020
     501#define SF_NCRFORNONASCII     0x00000040
     502#define SF_RTFVAL             0x00000700
     503
     504/* Clipboard formats */
     505#define CF_RTF          TEXT("Rich Text Format")
     506#define CF_RTFNOOBJS    TEXT("Rich Text Format Without Objects")
     507#define CF_RETEXTOBJ    TEXT("RichEdit Text and Objects")
     508
     509
     510/* Parameters of the EM_SETIMEOPTIONS message */
     511#define IMF_FORCENONE         0x00000001
     512#define IMF_FORCEENABLE       0x00000002
     513#define IMF_FORCEDISABLE      0x00000004
     514#define IMF_CLOSESTATUSWINDOW 0x00000008
     515#define IMF_VERTICAL          0x00000020
     516#define IMF_FORCEACTIVE       0x00000040
     517#define IMF_FORCEINACTIVE     0x00000080
     518#define IMF_FORCEREMEMBER     0x00000100
     519
     520/* return values of the EM_SELECTION_TYPE message */
     521#define SEL_EMPTY             0x00000000
     522#define SEL_TEXT              0x00000001
     523#define SEL_OBJECT            0x00000002
     524#define SEL_MULTICHAR         0x00000004
     525#define SEL_MULTIOBJECT       0x00000008
     526
     527/* mask values in the PARAFORMAT2 structure */
     528#define PFM_STARTINDENT       0x00000001
     529#define PFM_RIGHTINDENT       0x00000002
     530#define PFM_OFFSET            0x00000004
     531#define PFM_ALIGNMENT         0x00000008
     532#define PFM_TABSTOPS          0x00000010
     533#define PFM_NUMBERING         0x00000020
     534#define PFM_OFFSETINDENT      0x80000000
     535
     536/* numbering option */
     537#define PFN_BULLET            0x00000001
     538
     539/* paragraph alignment */
     540#define PFA_LEFT              0x00000001
     541#define PFA_RIGHT             0x00000002
     542#define PFA_CENTER            0x00000003
     543
     544/* streaming flags */
     545#define SFF_PWD               0x00000800
     546#define SFF_KEEPDOCINFO       0x00001000
     547#define SFF_PERSISTVIEWSCALE  0x00002000
     548#define SFF_PLAINRTF          0x00004000
     549#define SFF_SELECTION         0x00008000
     550
     551typedef LONG (*EDITWORDBREAKPROCEX)(char*,LONG,BYTE,INT);
     552
     553/* options of the EM_FINDWORDBREAK message */
     554#define WB_CLASSIFY           0x00000003
     555#define WB_MOVEWORDLEFT       0x00000004
     556#define WB_MOVEWORDPREV       0x00000004
     557#define WB_MOVEWORDRIGHT      0x00000005
     558#define WB_MOVEWORDNEXT       0x00000005
     559#define WB_LEFTBREAK          0x00000006
     560#define WB_PREVBREAK          0x00000006
     561#define WB_RIGHTBREAK         0x00000007
     562#define WB_NEXTBREAK          0x00000007
     563
     564/* options of the EM_SETWORDWRAPMODE message */
     565#define WBF_WORDWRAP          0x00000010
     566#define WBF_WORDBREAK         0x00000020
     567#define WBF_OVERFLOW          0x00000040
     568#define WBF_LEVEL1            0x00000080
     569#define WBF_LEVEL2            0x00000100
     570#define WBF_CUSTOM            0x00000200
     571
     572/* options of the EM_SETTEXTMODE message */
     573#define TM_PLAINTEXT          0x00000001
     574#define TM_RICHTEXT           0x00000002
     575#define TM_SINGLELEVELUNDO    0x00000004
     576#define TM_MULTILEVELUNDO     0x00000008
     577#define TM_SINGLECODEPAGE     0x00000010
     578#define TM_MULTICODEPAGE      0x00000020
     579
     580/* GETTEXT structure flags */
     581#define GT_DEFAULT            0x00000000
     582#define GT_USECRLF            0x00000001
     583
     584/* Options of the EM_SETTYPOGRAPHYOPTIONS message */
     585#define TO_ADVANCEDTYPOGRAPHY 0x00000001
     586#define TO_SIMPLELINEBREAK    0x00000002
     587
     588typedef struct _gettextlengthex {
     589    DWORD      flags;
     590    UINT       codepage;
     591} GETTEXTLENGTHEX;
     592
     593/* Flags of the GETTEXTLENGTHEX structure */
     594#define GTL_DEFAULT           0x00000000
     595#define GTL_USECRLF           0x00000001
     596#define GTL_PRECISE           0x00000002
     597#define GTL_CLOSE             0x00000004
     598#define GTL_NUMCHARS          0x00000008
     599#define GTL_NUMBYTES          0x00000010
    83600
    84601#ifdef __cplusplus
Note: See TracChangeset for help on using the changeset viewer.