Module: wine
Branch: master
Commit: 200ec538352c36cb1e10e76c70ec7da56cbc0958
URL: http://source.winehq.org/git/wine.git/?a=commit;h=200ec538352c36cb1e10e76c7…
Author: Rob Shearman <robertshearman(a)gmail.com>
Date: Mon Jan 5 23:33:36 2009 +0000
widl: Access array type properties through accessors instead of getting them directly.
Store array type properties in the details union to save a bit of
memory and to make the general properties more obvious.
---
tools/widl/header.c | 4 +-
tools/widl/parser.y | 9 ++----
tools/widl/typegen.c | 73 +++++++++++++++++++++++++---------------------
tools/widl/typetree.h | 30 +++++++++++++++++++
tools/widl/widltypes.h | 9 ++++-
tools/widl/write_msft.c | 4 +-
6 files changed, 84 insertions(+), 45 deletions(-)
Diff: http://source.winehq.org/git/wine.git/?a=commitdiff;h=200ec538352c36cb1e10e…
Module: wine
Branch: master
Commit: 28645c64d54f74283d13e4ea05b549d74029ee23
URL: http://source.winehq.org/git/wine.git/?a=commit;h=28645c64d54f74283d13e4ea0…
Author: Dylan Smith <dylan.ah.smith(a)gmail.com>
Date: Mon Jan 5 13:14:41 2009 -0500
richedit: Avoid rewrapping all text for isolated format changes.
When the character or paragraph format is changed the paragraph that
is changed is already marked to be rewrapped, so ME_MarkAllForWrapping
shouldn't be called. Since ME_RewrapRepaint uses this function, it
shouldn't be called in these circumstances, since rewrapping all the
text can cause noticable delays when working with a lot of text.
---
dlls/riched20/editor.c | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/dlls/riched20/editor.c b/dlls/riched20/editor.c
index c7b8f40..107dcea 100644
--- a/dlls/riched20/editor.c
+++ b/dlls/riched20/editor.c
@@ -3263,7 +3263,11 @@ LRESULT ME_HandleMessage(ME_TextEditor *editor, UINT msg, WPARAM wParam,
}
ME_CommitUndo(editor);
if (bRepaint)
- ME_RewrapRepaint(editor);
+ {
+ ME_WrapMarkedParagraphs(editor);
+ ME_UpdateScrollBar(editor);
+ ME_Repaint(editor);
+ }
return 1;
}
case EM_GETCHARFORMAT:
@@ -3285,7 +3289,9 @@ LRESULT ME_HandleMessage(ME_TextEditor *editor, UINT msg, WPARAM wParam,
case EM_SETPARAFORMAT:
{
BOOL result = ME_SetSelectionParaFormat(editor, (PARAFORMAT2 *)lParam);
- ME_RewrapRepaint(editor);
+ ME_WrapMarkedParagraphs(editor);
+ ME_UpdateScrollBar(editor);
+ ME_Repaint(editor);
ME_CommitUndo(editor);
return result;
}
Module: wine
Branch: master
Commit: 6df4148b04e18274a09967138b733b4c242d9d79
URL: http://source.winehq.org/git/wine.git/?a=commit;h=6df4148b04e18274a09967138…
Author: Dylan Smith <dylan.ah.smith(a)gmail.com>
Date: Mon Jan 5 13:14:31 2009 -0500
richedit: Prevent redundant rewraps when scrollbar is shown.
A common case for richedit controls are that a large amount of text is
set initially with word wrap enabled. This causes the initially
wrapping of the text, which also calculates the text length. After
this the vertical scrollbar will be shown, which causes the text to be
rewrapped again. After this there are two redundant rewraps that are
done which this patch eliminates.
---
dlls/riched20/paint.c | 12 ++++--------
1 files changed, 4 insertions(+), 8 deletions(-)
diff --git a/dlls/riched20/paint.c b/dlls/riched20/paint.c
index 1bfb216..f0acf4a 100644
--- a/dlls/riched20/paint.c
+++ b/dlls/riched20/paint.c
@@ -1099,14 +1099,7 @@ void ME_UpdateScrollBar(ME_TextEditor *editor)
bScrollBarWillBeVisible = TRUE;
}
- if (bScrollBarWasVisible != bScrollBarWillBeVisible)
- {
- ShowScrollBar(hWnd, SB_VERT, bScrollBarWillBeVisible);
- ME_MarkAllForWrapping(editor);
- ME_WrapMarkedParagraphs(editor);
- }
-
- si.nMin = 0;
+ si.nMin = 0;
si.nMax = editor->nTotalLength;
si.nPos = editor->vert_si.nPos;
si.nPage = editor->sizeWindow.cy;
@@ -1122,6 +1115,9 @@ void ME_UpdateScrollBar(ME_TextEditor *editor)
if (bScrollBarWillBeVisible || bScrollBarWasVisible)
SetScrollInfo(hWnd, SB_VERT, &si, TRUE);
}
+
+ if (bScrollBarWasVisible != bScrollBarWillBeVisible)
+ ShowScrollBar(hWnd, SB_VERT, bScrollBarWillBeVisible);
}
int ME_GetYScrollPos(ME_TextEditor *editor)