Index: dialog.c =================================================================== --- dialog.c (revision 50584) +++ dialog.c (working copy) @@ -112,31 +112,25 @@ /** * Sets the caption of the main window according to Globals.szFileTitle: - * Notepad - (untitled) if no file is open - * Notepad - [filename] if a file is given + * (untitled) - Notepad if no file is open + * [filename] - Notepad if a file is given */ static void UpdateWindowCaption(void) { TCHAR szCaption[MAX_STRING_LEN]; - TCHAR szUntitled[MAX_STRING_LEN]; + TCHAR szNotepad[MAX_STRING_LEN]; - LoadString(Globals.hInstance, STRING_NOTEPAD, szCaption, SIZEOF(szCaption)); + LoadString(Globals.hInstance, STRING_NOTEPAD, szNotepad, SIZEOF(szNotepad)); if (Globals.szFileTitle[0] != '\0') { - static const TCHAR bracket_l[] = _T(" - ["); - static const TCHAR bracket_r[] = _T("]"); - _tcscat(szCaption, bracket_l); - _tcscat(szCaption, Globals.szFileTitle); - _tcscat(szCaption, bracket_r); + _tcscpy(szCaption, Globals.szFileTitle); } else { - static const TCHAR hyphen[] = _T(" - "); - LoadString(Globals.hInstance, STRING_UNTITLED, szUntitled, SIZEOF(szUntitled)); - _tcscat(szCaption, hyphen); - _tcscat(szCaption, szUntitled); + LoadString(Globals.hInstance, STRING_UNTITLED, szCaption, SIZEOF(szCaption)); } - + _tcscat(szCaption, _T(" - ")); + _tcscat(szCaption, szNotepad); SetWindowText(Globals.hMainWnd, szCaption); } @@ -684,7 +678,7 @@ _tcscat(szText, _T(" ")); GetDateFormat(LOCALE_USER_DEFAULT, DATE_LONGDATE, &st, NULL, szDate, MAX_STRING_LEN); _tcscat(szText, szDate); - SendMessage(Globals.hEdit, EM_REPLACESEL, TRUE, (LPARAM)szDate); + SendMessage(Globals.hEdit, EM_REPLACESEL, TRUE, (LPARAM)szText); } VOID DoCreateStatusBar(VOID) Index: main.c =================================================================== --- main.c (revision 50584) +++ main.c (working copy) @@ -610,7 +610,13 @@ NOTEPAD_InitData(); DIALOG_FileNew(); - ShowWindow(Globals.hMainWnd, show); + if (Globals.bMaximized == TRUE) + { + ShowWindow(Globals.hMainWnd, SW_MAXIMIZE); + } + else + ShowWindow(Globals.hMainWnd, show); + UpdateWindow(Globals.hMainWnd); DragAcceptFiles(Globals.hMainWnd, TRUE); Index: main.h =================================================================== --- main.h (revision 50584) +++ main.h (working copy) @@ -52,6 +52,7 @@ LOGFONT lfFont; BOOL bWrapLongLines; BOOL bShowStatusBar; + BOOL bMaximized; TCHAR szFindText[MAX_PATH]; TCHAR szReplaceText[MAX_PATH]; TCHAR szFileName[MAX_PATH]; Index: settings.c =================================================================== --- settings.c (revision 50584) +++ settings.c (working copy) @@ -22,6 +22,8 @@ #include +NOTEPAD_GLOBALS Globals; + static LPCTSTR s_szRegistryKey = _T("Software\\Microsoft\\Notepad"); @@ -133,14 +135,14 @@ QueryDword(hKey, _T("iPointSize"), &dwPointSize); QueryBool(hKey, _T("fWrap"), &Globals.bWrapLongLines); QueryBool(hKey, _T("fStatusBar"), &Globals.bShowStatusBar); + QueryBool(hKey, _T("fIsMaximized"), &Globals.bMaximized); + QueryDword(hKey, _T("iWindowPosX"), (DWORD*)&Globals.main_rect.left); + QueryDword(hKey, _T("iWindowPosY"), (DWORD*)&Globals.main_rect.top); + QueryDword(hKey, _T("iWindowPosDX"), (DWORD*)&dx); + QueryDword(hKey, _T("iWindowPosDY"), (DWORD*)&dy); - QueryByte(hKey, _T("iWindowPosX"), (LPBYTE)&Globals.main_rect.left); - QueryByte(hKey, _T("iWindowPosX"), (LPBYTE)&Globals.main_rect.top); - QueryByte(hKey, _T("iWindowPosDX"), (LPBYTE)&dx); - QueryByte(hKey, _T("iWindowPosDY"), (LPBYTE)&dy); - Globals.main_rect.right = Globals.main_rect.left + dx; - Globals.main_rect.bottom = Globals.main_rect.top + dy; + Globals.main_rect.bottom = Globals.main_rect.top + dy; Globals.bShowStatusBar = !Globals.bShowStatusBar; /* invert value becuase DIALOG_ViewStatusBar will be called to show it*/ @@ -194,10 +196,19 @@ SaveDword(hKey, _T("iPointSize"), PointSizeFromHeight(Globals.lfFont.lfHeight)); SaveDword(hKey, _T("fWrap"), Globals.bWrapLongLines ? 1 : 0); SaveDword(hKey, _T("fStatusBar"), Globals.bShowStatusBar ? 1 : 0); - SaveDword(hKey, _T("iWindowPosX"), Globals.main_rect.left); - SaveDword(hKey, _T("iWindowPosY"), Globals.main_rect.top); - SaveDword(hKey, _T("iWindowPosDX"), Globals.main_rect.right - Globals.main_rect.left); - SaveDword(hKey, _T("iWindowPosDY"), Globals.main_rect.bottom - Globals.main_rect.top); + if (IsZoomed(Globals.hMainWnd) == TRUE) + { + Globals.bMaximized = TRUE; + } + else + { + Globals.bMaximized = FALSE; + SaveDword(hKey, _T("iWindowPosX"), Globals.main_rect.left); + SaveDword(hKey, _T("iWindowPosY"), Globals.main_rect.top); + SaveDword(hKey, _T("iWindowPosDX"), Globals.main_rect.right - Globals.main_rect.left); + SaveDword(hKey, _T("iWindowPosDY"), Globals.main_rect.bottom - Globals.main_rect.top); + } + SaveDword(hKey, _T("fIsMaximized"), Globals.bMaximized ? 1 : 0); RegCloseKey(hKey); }