Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
8f60c8c4
Commit
8f60c8c4
authored
Jan 01, 2008
by
Eric Pouech
Committed by
Alexandre Julliard
Jan 02, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
richedit: Now dumping all fields from the paraformat2 structure.
parent
566912dc
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
56 additions
and
34 deletions
+56
-34
para.c
dlls/riched20/para.c
+56
-34
No files found.
dlls/riched20/para.c
View file @
8f60c8c4
...
...
@@ -280,45 +280,67 @@ ME_DisplayItem *ME_GetParagraph(ME_DisplayItem *item) {
return
ME_FindItemBackOrHere
(
item
,
diParagraph
);
}
static
void
ME_DumpStyleEffect
(
char
**
p
,
const
char
*
name
,
const
PARAFORMAT2
*
fmt
,
int
mask
)
{
*
p
+=
sprintf
(
*
p
,
"%-22s%s
\n
"
,
name
,
(
fmt
->
dwMask
&
mask
)
?
((
fmt
->
wEffects
&
mask
)
?
"yes"
:
"no"
)
:
"N/A"
);
}
void
ME_DumpParaStyleToBuf
(
const
PARAFORMAT2
*
pFmt
,
char
buf
[
2048
])
{
/* FIXME only PARAFORMAT styles implemented */
char
*
p
;
p
=
buf
;
p
+=
sprintf
(
p
,
"Alignment: %s
\n
"
,
!
(
pFmt
->
dwMask
&
PFM_ALIGNMENT
)
?
"N/A"
:
((
pFmt
->
wAlignment
==
PFA_LEFT
)
?
"left"
:
((
pFmt
->
wAlignment
==
PFA_RIGHT
)
?
"right"
:
((
pFmt
->
wAlignment
==
PFA_CENTER
)
?
"center"
:
/*((pFmt->wAlignment == PFA_JUSTIFY) ? "justify" : "incorrect")*/
"incorrect"
))));
if
(
pFmt
->
dwMask
&
PFM_OFFSET
)
p
+=
sprintf
(
p
,
"Offset: %d
\n
"
,
(
int
)
pFmt
->
dxOffset
);
else
p
+=
sprintf
(
p
,
"Offset: N/A
\n
"
);
if
(
pFmt
->
dwMask
&
PFM_OFFSETINDENT
)
p
+=
sprintf
(
p
,
"Offset indent: %d
\n
"
,
(
int
)
pFmt
->
dxStartIndent
);
else
p
+=
sprintf
(
p
,
"Offset indent: N/A
\n
"
);
if
(
pFmt
->
dwMask
&
PFM_STARTINDENT
)
p
+=
sprintf
(
p
,
"Start indent: %d
\n
"
,
(
int
)
pFmt
->
dxStartIndent
);
else
p
+=
sprintf
(
p
,
"Start indent: N/A
\n
"
);
if
(
pFmt
->
dwMask
&
PFM_RIGHTINDENT
)
p
+=
sprintf
(
p
,
"Right indent: %d
\n
"
,
(
int
)
pFmt
->
dxRightIndent
);
else
p
+=
sprintf
(
p
,
"Right indent: N/A
\n
"
);
ME_DumpStyleEffect
(
&
p
,
"Page break before:"
,
pFmt
,
PFM_PAGEBREAKBEFORE
);
#define DUMP(mask, name, fmt, field) \
if (pFmt->dwMask & (mask)) p += sprintf(p, "%-22s" fmt "\n", name, pFmt->field); \
else p += sprintf(p, "%-22sN/A\n", name);
/* we take for granted that PFE_xxx is the hiword of the corresponding PFM_xxx */
#define DUMP_EFFECT(mask, name) \
p += sprintf(p, "%-22s%s\n", name, (pFmt->dwMask & (mask)) ? ((pFmt->wEffects & ((mask) >> 8)) ? "yes" : "no") : "N/A");
DUMP
(
PFM_NUMBERING
,
"Numbering:"
,
"%u"
,
wNumbering
);
DUMP_EFFECT
(
PFM_DONOTHYPHEN
,
"Disable auto-hyphen:"
);
DUMP_EFFECT
(
PFM_KEEP
,
"No page break in para:"
);
DUMP_EFFECT
(
PFM_KEEPNEXT
,
"No page break in para & next:"
);
DUMP_EFFECT
(
PFM_NOLINENUMBER
,
"No line number:"
);
DUMP_EFFECT
(
PFM_NOWIDOWCONTROL
,
"No widow & orphan:"
);
DUMP_EFFECT
(
PFM_PAGEBREAKBEFORE
,
"Page break before:"
);
DUMP_EFFECT
(
PFM_RTLPARA
,
"RTL para:"
);
DUMP_EFFECT
(
PFM_SIDEBYSIDE
,
"Side by side:"
);
DUMP_EFFECT
(
PFM_TABLE
,
"Table:"
);
DUMP
(
PFM_OFFSETINDENT
,
"Offset indent:"
,
"%d"
,
dxStartIndent
);
DUMP
(
PFM_STARTINDENT
,
"Start indent:"
,
"%d"
,
dxStartIndent
);
DUMP
(
PFM_RIGHTINDENT
,
"Right indent:"
,
"%d"
,
dxRightIndent
);
DUMP
(
PFM_OFFSET
,
"Offset:"
,
"%d"
,
dxOffset
);
if
(
pFmt
->
dwMask
&
PFM_ALIGNMENT
)
{
switch
(
pFmt
->
wAlignment
)
{
case
PFA_LEFT
:
p
+=
sprintf
(
p
,
"Alignment: left
\n
"
);
break
;
case
PFA_RIGHT
:
p
+=
sprintf
(
p
,
"Alignment: right
\n
"
);
break
;
case
PFA_CENTER
:
p
+=
sprintf
(
p
,
"Alignment: center
\n
"
);
break
;
case
PFA_JUSTIFY
:
p
+=
sprintf
(
p
,
"Alignment: justify
\n
"
);
break
;
default
:
p
+=
sprintf
(
p
,
"Alignment: incorrect %d
\n
"
,
pFmt
->
wAlignment
);
break
;
}
}
else
p
+=
sprintf
(
p
,
"Alignment: N/A
\n
"
);
DUMP
(
PFM_TABSTOPS
,
"Tab Stops:"
,
"%d"
,
cTabCount
);
if
(
pFmt
->
dwMask
&
PFM_TABSTOPS
)
{
int
i
;
p
+=
sprintf
(
p
,
"
\t
"
);
for
(
i
=
0
;
i
<
pFmt
->
cTabCount
;
i
++
)
p
+=
sprintf
(
p
,
"%x "
,
pFmt
->
rgxTabs
[
i
]);
p
+=
sprintf
(
p
,
"
\n
"
);
}
DUMP
(
PFM_SPACEBEFORE
,
"Space Before:"
,
"%d"
,
dySpaceBefore
);
DUMP
(
PFM_SPACEAFTER
,
"Space After:"
,
"%d"
,
dySpaceAfter
);
DUMP
(
PFM_LINESPACING
,
"Line spacing:"
,
"%d"
,
dyLineSpacing
);
DUMP
(
PFM_STYLE
,
"Text style:"
,
"%d"
,
sStyle
);
DUMP
(
PFM_LINESPACING
,
"Line spacing rule:"
,
"%u"
,
bLineSpacingRule
);
/* bOutlineLevel should be 0 */
DUMP
(
PFM_SHADING
,
"Shading Weigth:"
,
"%u"
,
wShadingWeight
);
DUMP
(
PFM_SHADING
,
"Shading Style:"
,
"%u"
,
wShadingStyle
);
DUMP
(
PFM_NUMBERINGSTART
,
"Numbering Start:"
,
"%u"
,
wNumberingStart
);
DUMP
(
PFM_NUMBERINGSTYLE
,
"Numbering Style:"
,
"0x%x"
,
wNumberingStyle
);
DUMP
(
PFM_NUMBERINGTAB
,
"Numbering Tab:"
,
"%u"
,
wNumberingStyle
);
DUMP
(
PFM_BORDER
,
"Border Space:"
,
"%u"
,
wBorderSpace
);
DUMP
(
PFM_BORDER
,
"Border Width:"
,
"%u"
,
wBorderWidth
);
DUMP
(
PFM_BORDER
,
"Borders:"
,
"%u"
,
wBorders
);
#undef DUMP
#undef DUMP_EFFECT
}
void
ME_SetParaFormat
(
ME_TextEditor
*
editor
,
ME_DisplayItem
*
para
,
const
PARAFORMAT2
*
pFmt
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment