Alexander Nicolaysen Sørnes : wordpad: Set default font according to format.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Sep 12 07:50:55 CDT 2007


Module: wine
Branch: master
Commit: 1faecfe6ed7412e64d4798182fb5aa0c0b8472f4
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=1faecfe6ed7412e64d4798182fb5aa0c0b8472f4

Author: Alexander Nicolaysen Sørnes <alex at thehandofagony.com>
Date:   Wed Aug 22 22:51:46 2007 +0200

wordpad: Set default font according to format.

---

 programs/wordpad/wordpad.c |   45 ++++++++++++++++++++++++++-----------------
 1 files changed, 27 insertions(+), 18 deletions(-)

diff --git a/programs/wordpad/wordpad.c b/programs/wordpad/wordpad.c
index 37b7368..113b85b 100644
--- a/programs/wordpad/wordpad.c
+++ b/programs/wordpad/wordpad.c
@@ -512,6 +512,30 @@ static WPARAM fileformat_flags(int format)
     return flags[format];
 }
 
+static void set_default_font(void)
+{
+    static const WCHAR richTextFont[] = {'T','i','m','e','s',' ','N','e','w',' ',
+                                         'R','o','m','a','n',0};
+    static const WCHAR plainTextFont[] = {'C','o','u','r','i','e','r',' ','N','e','w',0};
+    CHARFORMAT2W fmt;
+    LPCWSTR font;
+
+    ZeroMemory(&fmt, sizeof(fmt));
+
+    fmt.cbSize = sizeof(fmt);
+    fmt.dwMask = CFM_FACE | CFM_BOLD | CFM_ITALIC | CFM_UNDERLINE;
+    fmt.dwEffects = 0;
+
+    if(fileFormat & SF_RTF)
+        font = richTextFont;
+    else
+        font = plainTextFont;
+
+    lstrcpyW(fmt.szFaceName, font);
+
+    SendMessageW(hEditorWnd, EM_SETCHARFORMAT,  SCF_DEFAULT, (LPARAM)&fmt);
+}
+
 static void update_window(void)
 {
     RECT rect;
@@ -588,6 +612,7 @@ static void set_fileformat(WPARAM format)
     fileFormat = format;
 
     set_bar_states();
+    set_default_font();
 }
 
 static void DoOpenFile(LPCWSTR szOpenFileName)
@@ -621,6 +646,7 @@ static void DoOpenFile(LPCWSTR szOpenFileName)
     es.pfnCallback = stream_in;
 
     clear_formatting();
+    set_fileformat(format);
     SendMessageW(hEditorWnd, EM_STREAMIN, format, (LPARAM)&es);
 
     CloseHandle(hFile);
@@ -953,23 +979,6 @@ static void dialog_find(LPFINDREPLACEW fr)
     hFindWnd = FindTextW(fr);
 }
 
-
-static void DoDefaultFont(void)
-{
-    static const WCHAR szFaceName[] = {'T','i','m','e','s',' ','N','e','w',' ','R','o','m','a','n',0};
-    CHARFORMAT2W fmt;
-
-    ZeroMemory(&fmt, sizeof(fmt));
-
-    fmt.cbSize = sizeof(fmt);
-    fmt.dwMask = CFM_FACE | CFM_BOLD | CFM_ITALIC | CFM_UNDERLINE;
-    fmt.dwEffects = 0;
-
-    lstrcpyW(fmt.szFaceName, szFaceName);
-
-    SendMessageW(hEditorWnd, EM_SETCHARFORMAT,  SCF_DEFAULT, (LPARAM)&fmt);
-}
-
 static void registry_read_options_format(int index, LPCWSTR key)
 {
     HKEY hKey;
@@ -1222,7 +1231,7 @@ static LRESULT OnCreate( HWND hWnd, WPARAM wParam, LPARAM lParam)
     SetFocus(hEditorWnd);
     SendMessageW(hEditorWnd, EM_SETEVENTMASK, 0, ENM_SELCHANGE);
 
-    DoDefaultFont();
+    set_default_font();
 
     DoLoadStrings();
     SendMessageW(hEditorWnd, EM_SETMODIFY, FALSE, 0);




More information about the wine-cvs mailing list