Carlo Bramini (carlo.bramix@libero.it)
authorColin Finck <colin@reactos.org>
Mon, 3 Nov 2008 21:23:57 +0000 (21:23 +0000)
committerColin Finck <colin@reactos.org>
Mon, 3 Nov 2008 21:23:57 +0000 (21:23 +0000)
- Fix the display of Line and Column in the Status Bar and add language resources for this

Patch was slightly modified by me to also react on WM_KEYDOWN messages, so that the line/column is already updated, when you're holding down the buttons. (like Windows' notepad does by the way)
We still have to keep WM_KEYUP though, otherwise this doesn't work properly when being used with Page Up/Page Down.

See issue #3702 for more details.

svn path=/trunk/; revision=37176

31 files changed:
reactos/base/applications/notepad/dialog.c
reactos/base/applications/notepad/lang/bg-BG.rc
reactos/base/applications/notepad/lang/cs-CZ.rc
reactos/base/applications/notepad/lang/da-DK.rc
reactos/base/applications/notepad/lang/de-DE.rc
reactos/base/applications/notepad/lang/el-GR.rc
reactos/base/applications/notepad/lang/en-US.rc
reactos/base/applications/notepad/lang/es-ES.rc
reactos/base/applications/notepad/lang/eu-ES.rc
reactos/base/applications/notepad/lang/fi-FI.rc
reactos/base/applications/notepad/lang/fr-FR.rc
reactos/base/applications/notepad/lang/hu-HU.rc
reactos/base/applications/notepad/lang/id-ID.rc
reactos/base/applications/notepad/lang/it-IT.rc
reactos/base/applications/notepad/lang/ja-JP.rc
reactos/base/applications/notepad/lang/lt-LT.rc
reactos/base/applications/notepad/lang/nl-NL.rc
reactos/base/applications/notepad/lang/no-NO.rc
reactos/base/applications/notepad/lang/pl-PL.rc
reactos/base/applications/notepad/lang/pt-PT.rc
reactos/base/applications/notepad/lang/ru-RU.rc
reactos/base/applications/notepad/lang/sk-SK.rc
reactos/base/applications/notepad/lang/sl-SI.rc
reactos/base/applications/notepad/lang/sv-SE.rc
reactos/base/applications/notepad/lang/th-TH.rc
reactos/base/applications/notepad/lang/uk-UA.rc
reactos/base/applications/notepad/lang/zh-CN.rc
reactos/base/applications/notepad/main.c
reactos/base/applications/notepad/main.h
reactos/base/applications/notepad/notepad_res.h
reactos/base/applications/notepad/settings.c

index 93be73e..b435974 100644 (file)
@@ -871,19 +871,15 @@ VOID DIALOG_GoTo(VOID)
 
 VOID DIALOG_StatusBarUpdateCaretPos(VOID)
 {
-    int line;
-    int col;
-    int ccol;
-    POINT point;
+    int line, col;
     TCHAR buff[MAX_PATH];
+    DWORD dwStart, dwSize;
 
-    GetCaretPos(&point);
-    line = (int) SendMessage(Globals.hEdit, EM_LINEFROMCHAR, (WPARAM)-1, (LPARAM)0);
-    ccol = (int) SendMessage(Globals.hEdit, EM_CHARFROMPOS, (WPARAM)0, (LPARAM)MAKELPARAM(point.x, point.y));
-    ccol = LOWORD(ccol);
-    col = ccol - (int) SendMessage(Globals.hEdit, EM_LINEINDEX, (WPARAM)line, (LPARAM)0);
+    SendMessage(Globals.hEdit, EM_GETSEL, (WPARAM)&dwStart, (LPARAM)&dwSize);
+    line = SendMessage(Globals.hEdit, EM_LINEFROMCHAR, (WPARAM)dwStart, 0);
+    col  = dwStart - SendMessage(Globals.hEdit, EM_LINEINDEX, (WPARAM)line, 0);
 
-    _stprintf(buff, TEXT("%S %d, %S %d"), Globals.szStatusBarLine, line+1, Globals.szStatusBarCol, col+1);
+    _stprintf(buff, Globals.szStatusBarLineCol, line+1, col+1);
     SendMessage(Globals.hStatusBar, SB_SETTEXT, (WPARAM) SB_SIMPLEID, (LPARAM)buff);
 }
 
@@ -896,8 +892,7 @@ VOID DIALOG_ViewStatusBar(VOID)
    if ( !Globals.hStatusBar )
    {
        Globals.hStatusBar = CreateStatusWindow(WS_CHILD | WS_VISIBLE | WS_EX_STATICEDGE, TEXT("test"), Globals.hMainWnd, CMD_STATUSBAR_WND_ID );
-       LoadString(Globals.hInstance, STRING_LINE, Globals.szStatusBarLine, MAX_PATH-1);
-       LoadString(Globals.hInstance, STRING_COLUMN, Globals.szStatusBarCol, MAX_PATH-1);
+       LoadString(Globals.hInstance, STRING_LINE_COLUMN, Globals.szStatusBarLineCol, MAX_PATH-1);
        SendMessage(Globals.hStatusBar, SB_SIMPLE, (WPARAM)TRUE, (LPARAM)0);
    }
     CheckMenuItem(GetMenu(Globals.hMainWnd), CMD_STATUSBAR,
index cd46b09..20aa32c 100644 (file)
@@ -201,4 +201,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Óüèíäîóüñ"
 STRING_LF,                                      "Þíèêñ"
 STRING_CR,                                      "Ìàê"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index e60e3e8..065f051 100644 (file)
@@ -203,4 +203,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 606c750..44ecfbc 100644 (file)
@@ -200,4 +200,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index cd5a9e3..e64bd1c 100644 (file)
@@ -202,4 +202,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Zeile %d, Spalte %d"
 END
index 699a4d1..8be10f8 100644 (file)
@@ -199,4 +199,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index d558543..c4c5607 100644 (file)
@@ -201,4 +201,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 5ce33aa..7d55f99 100644 (file)
@@ -203,5 +203,6 @@ STRING_UTF8,                    "UTF-8"
 STRING_CRLF,                    "Windows"
 STRING_LF,                      "Unix"
 STRING_CR,                      "Mac"
+STRING_LINE_COLUMN,             "Line %d, column %d"
 
 END
index ac22afe..819c1db 100644 (file)
@@ -179,5 +179,5 @@ STRING_UTF8,                    "UTF-8"
 STRING_CRLF,                    "Windows"
 STRING_LF,                      "Unix"
 STRING_CR,                      "Mac"
-
+STRING_LINE_COLUMN,             "Line %d, column %d"
 END
index 2e9dba2..13378c4 100644 (file)
@@ -200,4 +200,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 238190f..0e8eaaa 100644 (file)
@@ -201,4 +201,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Ligne %d, colonne %d"
 END
index 0e32ed5..86ba21d 100644 (file)
@@ -202,4 +202,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index ed08968..59b5ef7 100644 (file)
@@ -202,4 +202,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 2da2f35..542f27d 100644 (file)
@@ -204,4 +204,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Linea %d, colonna %d"
 END
index 49cc5fd..03536de 100644 (file)
@@ -201,4 +201,5 @@ STRING_UTF8,                          "UTF-8"
 STRING_CRLF,                          "Windows (CR+LF)"
 STRING_LF,                            "Unix (LF)"
 STRING_CR,                            "Mac (CR)"
+STRING_LINE_COLUMN,                   "Line %d, column %d"
 END
index 4779b0e..07d0b8d 100644 (file)
@@ -202,4 +202,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index d7cdf9c..da4c8ad 100644 (file)
@@ -198,4 +198,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 79aaab8..5304657 100644 (file)
@@ -201,4 +201,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index e267b04..a8355ff 100644 (file)
@@ -207,4 +207,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 046e481..4a5cae4 100644 (file)
@@ -200,4 +200,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index a4d4d76..9524414 100644 (file)
@@ -200,4 +200,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Ìàêèíòîø"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index cdedb92..fbf236f 100644 (file)
@@ -189,4 +189,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 98679e9..8c3c3a8 100644 (file)
@@ -198,4 +198,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 127dd63..4b54bbc 100644 (file)
@@ -201,4 +201,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 131075d..bdb359e 100644 (file)
@@ -193,4 +193,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index c24d8cc..11cc718 100644 (file)
@@ -198,4 +198,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index bb2fcf2..fe179b7 100644 (file)
@@ -199,4 +199,5 @@ STRING_UTF8,                                    "UTF-8"
 STRING_CRLF,                                    "Windows"
 STRING_LF,                                      "Unix"
 STRING_CR,                                      "Mac"
+STRING_LINE_COLUMN,                             "Line %d, column %d"
 END
index 403fae3..4b94522 100644 (file)
@@ -302,6 +302,7 @@ LRESULT CALLBACK EDIT_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
 { 
     switch (msg)
     {
+        case WM_KEYDOWN:
         case WM_KEYUP:
         {
             switch (wParam)
index 37477bc..180020f 100644 (file)
@@ -61,8 +61,7 @@ typedef struct
   TCHAR      szMarginRight[MAX_PATH];
   TCHAR      szHeader[MAX_PATH];
   TCHAR      szFooter[MAX_PATH];
-  TCHAR      szStatusBarLine[MAX_PATH];
-  TCHAR      szStatusBarCol[MAX_PATH];
+  TCHAR      szStatusBarLineCol[MAX_PATH];
   int        iEncoding;
   int        iEoln;
 
index 9d6d5cb..75fe6a6 100644 (file)
 #define STRING_CR 0x184
 
 #define STRING_LICENSE 0x185
-#define STRING_LINE 0x186
-#define STRING_COLUMN 0x187
+#define STRING_LINE_COLUMN 0x186
index 12e4159..d363c6e 100644 (file)
@@ -112,7 +112,7 @@ void LoadSettings(void)
        base_length = (GetSystemMetrics(SM_CXSCREEN) > GetSystemMetrics(SM_CYSCREEN))?
                GetSystemMetrics(SM_CYSCREEN) : GetSystemMetrics(SM_CXSCREEN);
 
-       dx = base_length * .95;
+       dx = (INT)(base_length * .95);
        dy = dx * 3 / 4;
        SetRect( &Globals.main_rect, 0, 0, dx, dy );