Commit Graph

1559 Commits

Author SHA1 Message Date
Huw Davies efa45652a9 riched20: Use a structure to hold the repaint range.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-12 18:44:26 +02:00
Huw Davies 1bda5913fc riched20: Use ME_Paragraph ptrs in a few of the table functions.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 16:21:33 +02:00
Huw Davies c3e6cb5b70 riched20: Don't create a display context in InvalidateParagraphRange().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 16:21:33 +02:00
Huw Davies b466eefbdf riched20: Move the marked paragraph list to a rbtree.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 16:21:33 +02:00
Huw Davies 3a1aaf2655 riched20: Use ME_Paragraph ptrs to iterate in WrapMarkedParagraphs().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 16:21:33 +02:00
Huw Davies 02cf14cf43 riched20: Pass a ME_Paragraph ptr to the marking functions.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 16:21:33 +02:00
Huw Davies 749c80bdaf riched20: Pass a ME_Paragraph ptr to shape_para().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Huw Davies 7ef2c6c8d5 riched20: Pass a ME_Paragraph ptr to itemize_para().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Huw Davies 1500cfe8fa riched20: Pass a ME_Paragraph ptr to WrapTextParagraph().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Huw Davies 94e34fa8ee riched20: Store a ME_Paragraph ptr in the wrap context.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Huw Davies 7291506667 riched20: Move several of the wrapping functions to use ME_Run directly.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-08 19:45:35 +02:00
Huw Davies 14044d93fd riched20: Simplify SplitByBacktracking().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:09 +02:00
Huw Davies 5dc422d4e5 riched20: Simplify FindPixelPos().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:07 +02:00
Damjan Jovanovic 7a347c20dc riched20: Implement ITextRange::StartOf() and ITextRange::EndOf() for tomCharacter.
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-19 21:30:58 +02:00
Damjan Jovanovic 55d4cf27af riched20: Implement ITextRange::Move() for tomCharacter.
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-19 21:30:56 +02:00
Damjan Jovanovic 41915acaed riched20: Implement ITextRange::MoveStart() and ITextRange::MoveEnd() for tomCharacter.
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-19 21:30:53 +02:00
Alexandre Julliard 0c5ebf4231 riched20: Fix potentially uninitialized variable compiler warnings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-08 14:59:30 +02:00
Jacek Caban 9763f5189f riched20: Include wine/asm.h in editstr.h.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49068
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 12:39:09 +02:00
Jacek Caban 650aebadb7 riched20: Use __ASM_USE_THISCALL_WRAPPER macro.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 12:51:05 +02:00
Jacek Caban 270599cc81 riched20/tests: Don't use thiscall wrappers on clang MSVC target.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 12:50:59 +02:00
Gijs Vermeulen 55ca155ab8 riched20: Turn FIXME into a TRACE for ITextRange::SetRange.
It was implemented in fec6920638.

Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-03 17:06:21 +02:00
Serge Gautherie 7770e26f2d include: Remove now useless forced _WIN32_IE defines.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 19:38:38 +01:00
Mathew Hodson 3808b61967 riched20/tests: Fix function names in two ok() messages.
Signed-off-by: Mathew Hodson <mathew.hodson@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 21:27:13 +01:00
Huw Davies ebe31c7919 riched20: Don't calculate the para numbering data if numbering is disabled.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 14:12:35 +02:00
Huw Davies cfeb4358b5 riched20: Use PatBlt() instead of FillRect() to paint the background area.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 14:12:22 +02:00
Huw Davies 6f1cc1f3b5 riched20: Allow the style to remain selected in the context.
This avoids swapping out the font if the next run uses the same style.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 14:12:05 +02:00
Huw Davies da9bc7cd95 riched20: Move release_font_cache() further up the file.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 14:11:54 +02:00
Huw Davies b9e1ed0668 riched20: Only invalidate the selection if it's not hidden.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 14:11:46 +02:00
Huw Davies 5419a9804a riched20: Clearly separate the selection setting functions.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 14:11:38 +02:00
Huw Davies 04040d0aca riched20: Don't force an update when styles are changed.
The appropriate region has already been invalidated and will be
repainted in due course.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-15 20:17:17 +02:00
Huw Davies 03a93eb80e riched20: Move handling of EM_SETCHARFORMAT to a helper function.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-15 20:17:14 +02:00
Alexandre Julliard a6d57b0add riched20: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-19 11:22:47 +02:00
Jactry Zeng fec6920638 riched20: Implement ITextRange::SetRange.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-28 12:06:46 +02:00
Alexandre Julliard 0a79eb3608 include: Use the __thiscall attribute directly for the Mingw build.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 19:00:10 +02:00
Alexandre Julliard f3e45c37a2 riched20: Declare thiscall functions as __thiscall.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 20:11:19 +02:00
Alexandre Julliard ee4db2005e include: Define thiscall assembly wrappers globally.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 20:11:19 +02:00
Alexandre Julliard d5a372abbb include: Move inline assembly definitions to a new wine/asm.h header.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-14 13:45:07 +02:00
Gijs Vermeulen 840af642db riched20: Handle tomEnd in ITextRange::ScrollIntoView.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46899
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-15 21:33:07 +02:00
Sergio Gómez Del Real 5868c664c1 riched20: Handle efficiently caret creation/destruction.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-03 19:35:34 +02:00
Thomas Faber b64511c00a riched20: Implement MSVC asm wrappers.
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 10:09:45 +01:00
Jactry Zeng 74b17a353a riched20: Handle REO_IOB_SELECTION in IRichEditOle::GetObject().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-07 17:54:01 +01:00
Michael Stefaniuc 350123e183 riched20/tests: Avoid using the comma operator.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 09:37:31 +01:00
Sven Baars d917f0ef09 riched20: Fix IRichEditOle COM aggregation (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 19:57:27 +01:00
Sergio Gómez Del Real 4f007da8d3 riched20: Mask out extended flags introduced by CHARFORMAT2 when converting to CHARFORMAT.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 19:57:27 +01:00
Sven Baars 9d79aa686b riched20/tests: Fix a memory leak (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-17 10:45:58 +01:00
Zhiyi Zhang 62d80cff69 riched20: Fix a use after free.
In ME_DestroyEditor(), the item list is being freed when
calling get_total_width() in destroy_para().

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46328
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-02 12:28:07 +01:00
Andrey Gusev ec2c2f9fa0 riched20: Remove redundant comparison.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-13 22:37:46 +01:00
Fabian Maurer 52c106418c riched32: Handle enter press in WM_CHAR instead of WM_KEYDOWN.
This fixes an old regression when VK_RETURN handling was implemented

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=23282
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-12 17:10:13 +01:00
Fabian Maurer c03c5397a2 riched20/tests: Refactor tests testing VK_RETURN.
This is basically a no-op to make the tests and the following
additions simpler

Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-12 17:10:11 +01:00
Fabian Maurer 4d72bde62f riched20: Extract handling of VK_RETURN into a method.
This is basically a no-op to make the following fix simpler

Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-12 17:09:52 +01:00
Alex Henrie 55a3dfe35e riched20: Turn several constants and variables into static constants.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 10:49:03 +01:00
Sergio Gómez Del Real 14984a169a riched20: ME_CheckCharOffsets() calls should only be done when tracing.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Sergio Gómez Del Real a60965a156 riched20: Cache number of rows in editor.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Sergio Gómez Del Real 195f84cfa1 riched20: Implement list of marked paragraphs.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Sergio Gómez Del Real 618f0a8b2a riched20: Guard paragraph wrapping against special case where type is diTextStart.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Sergio Gómez Del Real ad58875642 riched20: Add helper function to mark paragraphs for rewrapping.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Sergio Gómez Del Real 70a2fe5886 riched20: Move y-adjust to its own function.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Sergio Gómez Del Real 3c0b519bba riched20: Add get_total_width() to get widest paragraph number.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Sergio Gómez Del Real 118908d0af riched20: Add destroy_para() helper.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Andrey Gusev 00d232fff4 riched20/tests: Fix typos in ok() messages.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 15:55:36 +01:00
Fabian Maurer 4600169fd4 riched20: Properly handle \0 inside rtf input.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43630
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-09 21:08:09 +01:00
Jactry Zeng e20142aea6 riched20: Add stub for ITextDocument2Old interface.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 11:05:20 +02:00
Alex Henrie e11c3ddd59 riched20: Avoid using GCC's typeof extension.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-27 11:04:01 +02:00
Michael Stefaniuc 90aea35b9e riched20: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-11 11:12:08 +02:00
Jactry Zeng 563bfdfc18 riched20: Handle NULL in ITextServices::{TxGetHScroll, TxGetVScroll}.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43488
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-07 13:03:24 +02:00
Jactry Zeng 13e523297e riched20: Call ITextHost_TxGetCharFormat() for setting default charformat.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 17:27:22 +02:00
Jactry Zeng 0120e35a7d riched20: Initialize style_list before ME_MakeFirstParagraph().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 17:27:20 +02:00
Jactry Zeng 8d506cb216 riched20: Some cleanup for CHARFORMAT convertor functions.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:44 +02:00
Jactry Zeng 6e264bbd1d riched20/tests: Rewrite tests for ITextServices_TxGetNaturalSize().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:44 +02:00
Michael Stefaniuc f002aec139 riched20: Avoid an ARRAY_SIZE-like macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-10 10:36:49 +02:00
Michael Stefaniuc ecd16fed38 riched20/tests: Use the available ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-19 20:49:59 +02:00
Jactry Zeng 42b325b855 riched20/tests: Free retext after use.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-23 17:32:51 +02:00
Jactry Zeng 5c2522d713 riched20: Use ME_GetSelectionType() in ME_ShowContextMenu() for getting type of selection.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00
Jactry Zeng 915201a13f riched20: Implement EM_SELECTIONTYPE.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00
Jactry Zeng c964674e82 riched20/tests: Add tests for IRichEditOle::{GetObject,GetObjectCount}.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 10:20:42 +02:00
Jactry Zeng 7409454345 riched20: Implement IRichEditOle::GetObject.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 10:20:36 +02:00
Jactry Zeng 2ab2c51df3 riched20: Implement IRichEditOle::GetObjectCount.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 10:20:29 +02:00
Jactry Zeng 0154b59c7e riched20: Save reobj in linked list.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 10:20:13 +02:00
Jactry Zeng ea7186348f riched20: Check para before use in ME_PrevRun.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 10:20:05 +02:00
Jactry Zeng 5e81e917a1 riched20: Get ITextRange interface from QueryInterface instead of casting.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-03 18:22:36 +02:00
Jactry Zeng 125fbf7b2f riched20: Implement {ITextRange,ITextSelection}::MoveEnd.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-03 18:22:36 +02:00
Jactry Zeng ad5da1462f riched20/tests: Add helpers for simplifying tests of ITextRange and ITextSelection.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-03 18:22:36 +02:00
Huw Davies ec2bcdf279 riched20: Underline links.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 16:55:08 +01:00
Huw Davies 08c15246ca riched20: Return the underline pen as the return value.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 16:55:08 +01:00
Huw Davies ff8fba389d riched20: Don't use logfont-style underlining for links.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 16:55:08 +01:00
Michael Stefaniuc c03b41c896 riched20: Get rid of the ALLOC_N_OBJ macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 10:08:42 +01:00
Michael Stefaniuc 965dc38175 riched20: Get rid of the ALLOC_OBJ macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 10:08:40 +01:00
Michael Stefaniuc 7153b5593e riched20: Get rid of the FREE_OBJ() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 10:08:38 +01:00
Michael Stefaniuc f9016830a6 riched20: Use the global HeapAlloc() wrappers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 10:08:36 +01:00
Rafał Harabień 585dfa1409 riched20: Protect against pasting multi-line text in single-line control.
Signed-off-by: Rafał Harabień <rafalh1992@o2.pl>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-15 20:20:13 +01:00
Rafał Harabień 55412553e8 riched20: Protect read-only Richedit against pasting and cutting data.
Signed-off-by: Rafał Harabień <rafalh1992@o2.pl>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-07 18:13:12 +01:00
Alexandre Julliard 70eef947a1 riched20: Specify cursor hotspots separately for each size.
This is supported in icoutils as of version 0.32.0.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-17 16:23:18 +02:00
Fabian Maurer 6d62904497 riched20: In ME_ProtectPartialTableDeletion properly set out parameter (cppcheck).
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-04 10:44:00 +02:00
Huw Davies 7020f47e0d riched20: Don't scale the picture size with dpi.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-14 17:32:56 +02:00
Huw Davies e534582555 riched20: Don't special case the non-stretching case.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-14 17:32:54 +02:00
Huw Davies 9249f7c4e7 riched20: Correctly release the STGMEDIUM.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-14 17:32:51 +02:00
Huw Davies 3cc1ef6bca riched20: Remove an unused parameter.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-14 17:32:49 +02:00
Huw Davies 58cac9c633 riched20: Remove the separate implementation of IOleWindow as IOleInPlaceSite inherits from IOleWindow.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 16:58:27 +02:00
Huw Davies adf53a9cdb riched20: Add support for pasting EMFs.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:36:21 +09:00
Huw Davies bbf34a4ab1 riched20: Use the implementation of EM_PASTESPECIAL for EM_CANPASTE.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:36:17 +09:00
Huw Davies 46fef3daa1 riched20: Use the implementation of EM_PASTESPECIAL for WM_PASTE.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:36:08 +09:00
Huw Davies 9bec53fbad riched20: Add support for EM_PASTESPECIAL.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:36:04 +09:00
Huw Davies 417c80d6fe riched20: Don't create a special richedit ole instance for the RTF parser.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:35:59 +09:00
Huw Davies 1bc48be4a7 riched20: Initialize ME_TextEditor members in ME_MakeEditor().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:35:52 +09:00
Huw Davies 5cc8c9fe83 riched20: Retrieve the default paragraph alignment from the text host.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:35:48 +09:00
Huw Davies 4cb7578d0b riched20: Move the editor initialization out of CreateTextHost().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:35:40 +09:00
Alexandre Julliard 2d91663f7a riched20: New high resolution cursor generated from SVG.
Based on a cursor set published by Ludvig Hummel under the X11 license.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-14 13:30:21 +02:00
Huw Davies 17b7cde00e riched20: The background colour is set using \highlight.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-05 19:48:47 +02:00
Huw Davies d4b1938cfb riched20: Only write out non-default pattern colours.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-21 13:58:13 +02:00
Huw Davies 5f3772a730 riched20: Don't compare the colours if the old and new states are both auto.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-05 16:40:37 +02:00
Huw Davies 6bcf4d6037 riched20: Add linefeeds after the colortbl and generator groups.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-03 13:23:18 +01:00
Huw Davies 8b79854d70 riched20: Remove a hack that should be longer be needed.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-03 13:23:10 +01:00
Huw Davies 3d291dd7ee riched20: Write the char format for the end-of-paragraph marker.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-03 13:23:04 +01:00
Hans Leidekker 5ac4766476 riched20/tests: Add a test to show that empty paragraphs get a font size declaration.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-02 22:01:53 +01:00
Nikolay Sivov 440b92131f riched20: Return proper interface pointers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-09 16:07:26 +01:00
Francois Gouget e63cea5dfc riched20: A spelling fix in a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-10 19:19:15 +01:00
Fabian Maurer 9f37f6afb4 riched20: Check for NULL in fnTextSrv_TxSetText and add test.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-09 20:49:11 +01:00
Marcus Meissner c1a8fbbb77 riched20: Swap check for NULL ptr and first usage (Coverity).
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-19 08:16:55 -07:00
Huw Davies 6e97ddc930 riched20: Remove unnecessary spaces before carriage returns.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 14:28:22 +02:00
Huw Davies a25c6f64b5 riched20: Remove the question marks from the generator string.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 14:28:22 +02:00
Huw Davies ee68e100b4 riched20: Simplify call to ME_StreamOutRTFParaProps().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 14:28:21 +02:00
Huw Davies 452c9a7124 riched20: Incrementally update the character format.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 14:28:21 +02:00
Huw Davies aa57db38dd riched20: Fix the interaction between CFE_UNDERLINE and bUnderlineType.
The effect specifies whether underlining is turned on, while bUnderlineType
indicates the type of underlining.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 14:28:21 +02:00
Huw Davies 3ac78b763b riched20: Initialize the remaining CHARFORMAT2 members.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 14:28:21 +02:00
Huw Davies f1ef14e023 include: Add a padding WORD to ensure that wWeight is at the correct offset.
This is a bug in MS's C version of these structures.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-13 18:11:24 +02:00
Huw Davies 9bce3e6113 riched20/tests: Add a test to show the insert style is cleared if the selection changes.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-13 18:11:18 +02:00
Huw Davies 9d248938ed riched20: Draw the paragraph numbering text in the correct colour.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-12 16:57:02 +02:00
Huw Davies c69e60efbc riched20: Emit RTF for paragraph numbering.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-12 16:57:00 +02:00
Huw Davies 3e9a31ed26 riched20: Add a helper to find a colour in the colour table.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-12 16:56:57 +02:00
Huw Davies 48c0c6648b riched20: Add a helper to find a font in the font table.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-12 16:56:55 +02:00
Huw Davies 074fafab65 riched20: Add any paragraph numbering fonts to the font table.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-12 16:56:51 +02:00
Huw Davies a06dcd46bb riched20: Move the check for cell border colours into the same loop as the other colours.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 16:59:32 +02:00
Huw Davies b8e55779fe riched20: Add a helper to add a colour to the colour table.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 16:59:31 +02:00
Huw Davies 6ee979c7e6 riched20: Add a helper to add a font to the font table.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 16:59:31 +02:00
Huw Davies 1e1ee175f0 riched20: Don't emit default values.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 16:59:31 +02:00
Huw Davies 8739f450ce riched20: Don't emit paragraph props if they're the same as the previous paragraph's.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 16:59:31 +02:00
Huw Davies 2019ec38db riched20: The new eop style when typing a list is a copy of the existing eop style.
Normally the new eop style is the insert style, however in a list the existing eop
style is used.  This prevents the list label style from changing when the new eop
is inserted.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 16:59:31 +02:00
Huw Davies 0df058d847 riched20: Add support for roman numeral labelled lists.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-10 21:11:09 +02:00
Huw Davies 9265a91513 riched20: Add support for letter labelled lists.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-10 21:11:06 +02:00
Huw Davies db783986dc riched20: Add support for arabic number labelled lists.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-10 21:11:03 +02:00
Huw Davies 123b0c699a riched20: Update the paragraph numbering style if the end-of-paragraph style changes.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-07 13:12:15 +02:00
Huw Davies 8a428d52a7 riched20: Add support for displaying bulleted lists.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-07 13:12:13 +02:00
Huw Davies d132009ae9 riched20: Maintain a ptr to the end-of-paragraph run.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-07 13:12:11 +02:00
Huw Davies 1abe4cc738 riched20: Add the ability to create ME_Strings from constants.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-07 13:12:09 +02:00
Huw Davies 880b45ffb0 riched20: Implement parsing of the paragraph numbering destination.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-07 13:12:06 +02:00
Huw Davies 57446ceed3 riched20: Reset the numbering style info after a \pard .
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-07 13:12:02 +02:00
Huw Davies ab65c269f7 riched20: Don't try to wrap the end-of-paragraph run.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-07 13:11:58 +02:00
Huw Davies beffb6f671 riched20: Remove an unnecessary call to ME_SaveTempStyle().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:46:53 +02:00
Huw Davies e1f943863b riched20: Set the format of the final eop to be that of the last char.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:46:53 +02:00
Huw Davies 2dbcddc660 riched20: Set a temporary insert style for the new paragraph.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:43 +02:00
Huw Davies ac6a0d8923 riched20: Alter ME_SaveTempStyle() to accept the new style.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:40 +02:00
Huw Davies 4989c858a0 riched20: Use the provided style for the end-of-paragraph run.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:37 +02:00
Huw Davies ef2e53f981 riched20: Move the wrap context struct into wrap.c .
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 14:54:39 +02:00
Huw Davies df1b51dfa4 riched20: Clearing the insert style should not depend on the event mask.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 14:54:39 +02:00
Huw Davies 304c8320c9 riched20: Allow selecting the final end-of-paragraph when using the mouse.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 14:54:39 +02:00
Huw Davies 7eb6837729 riched20: Allow selecting to the start / end when using the up / down arrow keys.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 14:54:38 +02:00
Huw Davies 58a48aa79b riched20: Allow selecting the final end-of-paragraph when using the right arrow key.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 14:54:38 +02:00
Huw Davies c005b98d91 riched20: Add an option to move the cursor to after the final end-of-paragraph.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 14:51:52 +02:00
Huw Davies 4c322698da riched20: Set the end-of-paragraph run width to that of a space.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 14:51:52 +02:00
Huw Davies 1acc6dcc58 riched20: Add checks for allocation failures.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-29 22:40:24 +09:00
Huw Davies b3b5c25628 riched20: Embed PARAFORMAT2 in the paragraph struct rather than its ptr.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-29 22:40:18 +09:00
Huw Davies 1d27f9151d riched20: Pass a ME_Paragraph structure to ME_SetParaFormat().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-27 21:43:24 +09:00
Huw Davies 8d8895bfac riched20: Don't clear the existing mask when reading a \ltrpar .
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-23 23:55:19 +09:00
Kenneth Haley fc1b2e0473 v4 resend: Riched20: allow setting background text color.
Signed-off-by: Kenneth Haley <haleykd@users.sf.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-16 22:37:05 +09:00
Huw Davies adb43b9192 riched20: Update the auto url detection after a StreamIn.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 20:18:01 +09:00
Andrey Gusev c43aebd79b riched20: Use debugstr_guid() in TRACE() messages.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 20:33:18 +09:00
Michael Stefaniuc 6eef44ed9a riched20/tests: Use InflateRect() too when expanding in just one axis.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-14 17:31:05 +09:00
Michael Stefaniuc d357dbfdd7 riched20: Get rid of casts from COM objects to interfaces.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-14 17:31:00 +09:00
Piotr Caban 060d8c6abb riched20: Add support for ECO_NOHIDESEL flag.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-08 22:35:02 +09:00
Michael Stefaniuc f18f44c505 riched20/tests: Use wine_dbgstr_rect() to print RECTs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 11:15:51 +09:00
Huw Davies 65feea4e5a riched20: Pass the correct range to the EN_LINK notification when the link is wrapped.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 17:32:13 +09:00
Huw Davies 3d1d65bc2c riched20: Add an option to constrain the run search to the current para.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 17:32:09 +09:00
Michael Stefaniuc fe2f34a5c7 riched20/tests: Use InflateRect() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 17:29:08 +09:00
Andrey Gusev 355a216246 riched20/tests: Fix a typo in ok() messages.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 22:02:42 +09:00
Nikolay Sivov 7cb3b72559 riched20: Remove duplicated condition.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-16 01:21:47 +09:00
Huw Davies 8477dcf909 riched20: Add support for saving enhanced metafiles.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-07 22:04:47 +09:00
Michael Stefaniuc b0104692ac riched20/tests: Use EqualRect() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-02 21:10:36 +09:00
Huw Davies 03fa4cfaff riched20: Add support for quoting urls with spaces within '<' '>'.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-01 22:15:46 +09:00
Huw Davies ea1e44e4f6 riched20: Fix URL auto-detection to handle 'neutral' characters.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-01 22:15:43 +09:00
Francois Gouget 155eccd9c6 riched20/tests: Fix a spelling error in an editor comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-17 18:18:11 +09:00
Andrey Gusev 33c1a16a18 riched20: Fix a typo in TRACE() message.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-17 18:18:06 +09:00
Alex Henrie e60b276698 riched20: Don't call UpdateWindow after setting the background color.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-14 12:10:15 +09:00
Gerald Pfeifer 8fb1802b9c riched20: Properly clear all of a buffer of type WCHAR.
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-14 12:09:01 +09:00
Francois Gouget ca147f51f0 riched20: Fix a spelling error in a dump message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-26 21:37:34 +09:00
Michael Stefaniuc 9b4b75312a riched20: Use wine_dbgstr_rect() to trace a RECT.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 18:42:12 +09:00
Piotr Caban 3dbd467162 riched20: Don't allow negative margins in ME_WrapTextParagraph.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-18 22:42:58 +09:00
Piotr Caban d11c758faf riched20/tests: Add negative indentation display test.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-18 22:42:55 +09:00
Adam Buchbinder 20323e3f11 riched20: Implement ITextRange::ScrollIntoView.
This only implements bStart = tomStart, but that seems like the most
common use case.

Signed-off-by: Adam Buchbinder <abuchbinder@google.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-29 19:31:35 +09:00
Huw Davies a2c57a2a8a riched20: Set the base embedding level for RTL paragraphs.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-11 20:22:34 +09:00
Huw Davies ac5edd1b6b riched20: \pard resets the reading direction.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-11 20:22:31 +09:00
Michael Stefaniuc a58822dba4 riched20: Use SetRectEmpty() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-08 21:29:44 +09:00
Huw Davies da7c4f9753 riched20: Add handling for a few more special characters.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 01:50:13 +09:00
Huw Davies 372a16af63 riched20: Don't apply paragraph formatting until the end of paragraph.
Specifically this means that if the final paragraph does not end in
a trailing \par, then new formatting is not applied to that paragraph.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 01:50:13 +09:00
Huw Davies aec411ed3e riched20/tests: wAlignment should be compared to the PFA_ values.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 01:50:12 +09:00
Huw Davies 9a934a3198 riched20/tests: Actually copy something to the clipboard.
Previously this test was relying on a quirk - pasting with an empty
clipboard generated an undo event.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 01:50:12 +09:00
Nikolay Sivov bf1cdf58ce riched20/tests: Use todo_wine_if() in tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-15 23:50:15 +09:00
Jactry Zeng 684965b866 riched20: Print boundary for ME_CheckCharOffsets only when richedit_check channel was opened.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-08 00:47:13 +09:00
Nikolay Sivov 0db7cb6002 riched20: Preserve higher bits of tabstop values (Coverity).
Bits 24-31 are reserved for tab alignment and tab leader style,
writer supports thatl.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-30 08:07:05 +01:00
Nikolay Sivov c5b68d1db2 riched20: Initialize wEffects field before setting bits in it (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-30 08:06:56 +01:00
Jactry Zeng bb5974987e riched20/tests: Add tests for WM_GETTEXTLENGTH.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-23 16:32:13 +01:00
Jactry Zeng 30049ba798 riched20/tests: Test EM_GETSELTEXT with multibyte character.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-23 16:32:13 +01:00
Jactry Zeng fb304e0e4e riched20/tests: Test EM_GETTEXTRANGE with multibyte character.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-23 16:32:13 +01:00
Jactry Zeng de0add976d riched20/tests: Add multibyte character tests for selection.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 19:50:29 +01:00
Jactry Zeng 99f0f6b91b riched20/tests: Test EM_LINELENGTH with multibyte character.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 19:50:28 +01:00
Jactry Zeng d5c587b1c2 riched20/tests: Add return tests for EM_SETTEXTEX.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-07 21:29:34 +09:00
Jactry Zeng f52ae04585 riched20/tests: Test EM_SETTEXT and EM_REPLACESEL with multibyte character.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-07 21:29:34 +09:00
Jactry Zeng 7365f557b6 riched20/tests: Test EM_REPLACESEL with rtf stream.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-30 23:16:51 +09:00
Nikolay Sivov 91ed2a81c1 riched20: Fix a memory leak on error path (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-11 19:39:16 +09:00
Huw Davies b241276f50 riched20: Maintain a list of styles and reuse them if possible.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-10 11:50:08 +09:00
Huw Davies f47aab6167 riched20: Release the font cache when changing the default style.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-10 11:50:05 +09:00
Huw Davies bb165d22e0 riched20: Store the font cache entry rather than the HFONT.
This also removes an incorrect DeleteObject() from DestroyStyle().

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-10 11:50:01 +09:00
Jactry Zeng 6401ab45c0 riched20: Implement alignment styles support.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-06 21:59:07 +09:00
Jactry Zeng f8e73e370d riched20: Make paragraph in make_para independently.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-06 19:22:44 +09:00
Jactry Zeng dc6b2853f5 riched20: Set pStream->written in ME_StreamOutFlush.
Superseded patch 115907.

ChangeLog:
- Add tests.

Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-06 19:22:43 +09:00
Huw Davies 2d23a95c96 riched20: Add support for the \shppict destination.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 22:31:27 +09:00
Huw Davies cfc8914200 riched20: Rewrite the picture destination parser to handle embedded groups.
Since almost every line of ME_RTFReadPictGroup() changed, I took the
opportunity to re-format it.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 22:31:27 +09:00
Nikolay Sivov 20f4a9ff7b riched20: Handle invalid HFONT values passed to WM_SETFONT.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2015-10-05 22:27:12 +09:00
Jactry Zeng 515b4a9725 riched20: Repaint paragraph after undo format setting of the paragraph. 2015-09-04 17:45:44 +09:00
Jactry Zeng d62dd46516 riched20: Implement EM_SETFONTSIZE. 2015-08-27 21:43:46 +09:00
Andrey Gusev 5cdcd4493f Assorted spelling and typos fixes. 2015-08-18 15:00:13 +09:00
Francois Gouget f8a7d6ed74 Assorted spelling fixes. 2015-08-07 23:50:48 +09:00
Huw Davies 7a3c9889e3 riched20: Free the script cache when updating the default style. 2015-07-01 22:56:40 +09:00
Michael Stefaniuc b05cc8c0a6 riched20: Print the debug string and not the pointer to it. 2015-06-30 17:40:28 +09:00
Nikolay Sivov 060cffc1b3 riched20: Improve tracing for unimplemented selection methods. 2015-06-18 21:41:02 +09:00
Alex Henrie af19e64017 riched20: Fix link notification conditions and add tests. 2015-06-18 17:11:05 +09:00
Nikolay Sivov bb82d669d1 riched20/tests: Remove explicit todo flag values from static test data. 2015-06-17 15:44:38 +09:00
Nikolay Sivov fd4affc0cb riched20/tests: Some more EM_SETSEL tests. 2015-06-17 15:44:36 +09:00
Nikolay Sivov 3357fdd70a riched20: Implement Expand for tomStory case. 2015-06-17 15:44:34 +09:00
Nikolay Sivov b0db959ec9 riched20: Improve tracing for unimplemented range methods. 2015-06-16 20:00:37 +09:00
Huw Davies 17f273360a riched20: Append a final \par when writing the whole buffer. 2015-06-09 14:47:30 +09:00
Nikolay Sivov 3681a59c29 riched20: Improve error handling in SetFont (Coverity). 2015-06-08 15:48:04 +09:00
Nikolay Sivov 2688363714 riched20: Handle range method failures in InRange (Coverity). 2015-06-08 15:48:00 +09:00
Nikolay Sivov 3889dadcca riched20: Handle range method failures in IsEqual (Coverity). 2015-06-08 15:47:57 +09:00
Nikolay Sivov 5f933018a2 riched20: Implement GetDuplicate() for selection. 2015-06-08 15:47:52 +09:00
Nikolay Sivov 9c6bcec509 riched20: Implement GetStoryLength(). 2015-06-08 15:47:48 +09:00
Nikolay Sivov 17a50f39b2 riched20/tests: Fix a BSTR leak (Valgrind). 2015-06-04 15:55:49 +09:00
Nikolay Sivov 2a2446abdb riched20: Return 0x0 size for NULL objects. 2015-06-03 19:29:49 +09:00
Nikolay Sivov b75cd7e2f0 riched20: Avoid extra host calls during CreateTextServices(). 2015-06-02 20:53:44 +09:00
Nikolay Sivov 0b94369bb7 riched20: Reduce code duplication in WM_SETTEXT/WM_CREATE handler. 2015-06-02 20:53:44 +09:00
Nikolay Sivov a50e0d71a4 riched20/tests: Don't use global vars for host/textservices. 2015-06-02 20:53:43 +09:00
Nikolay Sivov f0c5086618 riched20: Create selection instance first time it's requested. 2015-06-01 14:52:30 +09:00
Nikolay Sivov 41687841bc riched20: Properly implement GetClientSite(). 2015-06-01 14:52:28 +09:00
Nikolay Sivov b620fb6e85 riched20: Move data linking text range to IRichEditOle in separate structure. 2015-06-01 14:52:25 +09:00
Nikolay Sivov 383dbeedd7 riched20/tests: Small test for GetClientSite(). 2015-06-01 14:52:22 +09:00
Nikolay Sivov b2e13bc6e7 riched20: Implement GetText() for regular range. 2015-06-01 14:52:17 +09:00
Nikolay Sivov dd8287e9e8 riched20/tests: Test more return values and released cases. 2015-05-29 15:00:44 +09:00
Nikolay Sivov 054eecb2bf riched20: Implement SetFont(). 2015-05-29 15:00:38 +09:00
Nikolay Sivov d178e7ba68 riched20: Added GetStoryType(). 2015-05-29 15:00:32 +09:00
Nikolay Sivov b4959154ca riched20: Switch font unit is not allowed. 2015-05-29 15:00:27 +09:00
Nikolay Sivov eecb757248 riched20: Convert from twips to points when tomUsePoints is used. 2015-05-29 15:00:22 +09:00