Added log window zooming accelerators

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@7332 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
anders_k 2021-09-20 16:48:42 +00:00
parent 0b51c73f70
commit 10a9bc3d86
5 changed files with 54 additions and 32 deletions

View file

@ -5,10 +5,8 @@ MakeNSISW - MakeNSIS Windows Wrapper
About MakeNSISW
---------------
MakeNSISW is a wrapper for the MakeNSIS that is distributed with
NSIS (http://www.nullsoft.com/free/nsis/). MakeNSISW allows you
to compile NSIS scripts using a Windows GUI interface. To install
MakeNSISW, compile the source using Visual C++ or Mingw.
MakeNSISW is a wrapper for the NSIS compiler (MakeNSIS).
MakeNSISW allows you to compile NSIS scripts using a Windows GUI interface.
Requirements
@ -31,18 +29,21 @@ For the options, please see the MakeNSIS documentation.
Shortcut Keys
-------------
Ctrl+A: Select All text
Ctrl+A: Select all text
Ctrl+B: Open Script Folder
Ctrl+C: Copy selected text
Ctrl+D: Opens the Define Symbols dialog
Ctrl+E: Edits the script
Ctrl+D: Open the Define Symbols dialog
Ctrl+E: Edit the script
Ctrl+F: Find text
Ctrl+K: Abort compiler
Ctrl+L: Load a script
Ctrl+R: Recompiles the script
Ctrl+T: Tests the installer
Ctrl+W: Clear Log Window
Alt+X: Exits the application
Ctrl+R, F7: Recompile the script
Ctrl+T, Ctrl+F5: Test the installer
Ctrl+W: Clear log window
Ctrl+<+|-|0>: Zoom log window
Alt+X: Exit the application
F1: View Documentation
F5: Recompile and Test
Version History
@ -218,6 +219,7 @@ Version History
2.4.1
- Close button transforms to Abort when appropriate
- Prevent user from modifying the log
- Log zoom
Copyright Information

View file

@ -79,6 +79,7 @@ int WINAPI _tWinMain(HINSTANCE hInst,HINSTANCE hOldInst,LPTSTR CmdLineParams,int
g_sdata.sigint_event_legacy = CreateEvent(NULL, FALSE, FALSE, MakensisAPI::SigintEventNameLegacy);
g_sdata.verbosity = (unsigned char) ReadRegSettingDW(REGVERBOSITY, 4);
if (g_sdata.verbosity > 4) g_sdata.verbosity = 4;
g_sdata.log_zoom = 100;
RestoreSymbols();
LoadSysLibrary("RichEd20");
@ -706,6 +707,16 @@ INT_PTR CALLBACK DialogProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam
}
return TRUE;
}
case IDM_ZOOM_INC: g_sdata.log_zoom += 25; goto set_log_zoom;
case IDM_ZOOM_DEC: g_sdata.log_zoom -= 25; goto set_log_zoom;
case IDM_ZOOM_RST:
{
g_sdata.log_zoom = 100; set_log_zoom:
HWND hLog = GetDlgItem(hwndDlg, IDC_LOGWIN);
SendMessage(hLog, EM_SETZOOM, g_sdata.log_zoom = STD_MAX((int)g_sdata.log_zoom, 25), 100);
InvalidateRect(hLog, 0, false);
break;
}
case IDM_RECOMPILE:
{
CompileNSISScript();
@ -734,6 +745,7 @@ INT_PTR CALLBACK DialogProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam
((int(WINAPI*)(GUID*, TCHAR*, int))(GetSysProcAddr("OLE32", "StringFromGUID2")))(&guid, buf, 39);
for (UINT i = 0; sizeof(TCHAR) < 2; ++i) if (!(buf[i] = (CHAR) ((WCHAR*)buf)[i])) break; // WCHAR to TCHAR if ANSI
LogMessage(g_sdata.hwnd, (buf[38] = '\r', buf[39] = '\n', buf[40] = '\0', buf));
SendMessage(g_sdata.hwnd, WM_MAKENSIS_UPDATEUISTATE, 0, 0); // Update clear log command state
break;
}
case IDM_TEST:

View file

@ -198,12 +198,14 @@ typedef struct {
UINT AnimSpeed, FinalHeaderPos;
} ABOUTDLGDATA;
INT_PTR ShowAboutDialog(HWND hwndOwner);
INT_PTR CALLBACK SettingsProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
typedef struct {
void*pOldMDD;
BOOL LoadingMode;
} SYMSETDLGDATA;
INT_PTR ShowSymbolSetDialog(HWND hwndOwner, BOOL LoadingSet);
INT_PTR CALLBACK CompressorProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
void SetScript(const TCHAR *script, bool clearArgs = true);
void CompileNSISScript();
@ -247,8 +249,8 @@ typedef struct NSISScriptData {
LPCTSTR compressor_name;
TCHAR compressor_stats[512];
LPCTSTR best_compressor_name;
// Added by Darren Owen (DrO) on 1/10/2003
int recompile_test;
WORD log_zoom;
} NSCRIPTDATA;
extern NSCRIPTDATA g_sdata;

View file

@ -130,6 +130,9 @@
#define IDM_UI_SWITCHSECTION 539 // F6
#define IDM_GUIDGEN 540
#define IDM_LOOKUP 541
#define IDM_ZOOM_INC 542
#define IDM_ZOOM_DEC 543
#define IDM_ZOOM_RST 544
// Next default values for new objects
@ -137,7 +140,7 @@
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 138
#define _APS_NEXT_COMMAND_VALUE 542
#define _APS_NEXT_COMMAND_VALUE 545
#define _APS_NEXT_CONTROL_VALUE 241
#define _APS_NEXT_SYMED_VALUE 101
#endif

View file

@ -137,25 +137,28 @@ END
IDK_ACCEL ACCELERATORS
BEGIN
VK_F6, IDM_UI_SWITCHSECTION, VIRTKEY, NOINVERT
"A", IDM_SELECTALL, VIRTKEY, CONTROL, NOINVERT
"B", IDM_BROWSESCR, VIRTKEY, CONTROL, NOINVERT
"C", IDM_COPYSELECTED, VIRTKEY, CONTROL, NOINVERT
"E", IDM_EDITSCRIPT, VIRTKEY, CONTROL, NOINVERT
"F", IDM_FIND, VIRTKEY, CONTROL, NOINVERT
"L", IDM_LOADSCRIPT, VIRTKEY, CONTROL, NOINVERT
"M", IDM_RECOMPILE_TEST, VIRTKEY, CONTROL, NOINVERT
VK_F5, IDM_RECOMPILE_TEST, VIRTKEY, NOINVERT
"R", IDM_RECOMPILE, VIRTKEY, CONTROL, NOINVERT
VK_F7, IDM_RECOMPILE, VIRTKEY, NOINVERT
"S", IDM_SETTINGS, VIRTKEY, CONTROL, NOINVERT
"T", IDM_TEST, VIRTKEY, CONTROL, NOINVERT
VK_F5, IDM_TEST, VIRTKEY, CONTROL, NOINVERT
VK_F1, IDM_DOCS, VIRTKEY, NOINVERT
"W", IDM_CLEARLOG, VIRTKEY, CONTROL, NOINVERT
"X", IDM_EXIT, VIRTKEY, ALT, NOINVERT
"K", IDM_CANCEL, VIRTKEY, CONTROL, NOINVERT
VK_CANCEL, IDM_CANCEL, VIRTKEY, CONTROL, NOINVERT
VK_F6, IDM_UI_SWITCHSECTION, VIRTKEY
"A", IDM_SELECTALL, VIRTKEY, CONTROL
"B", IDM_BROWSESCR, VIRTKEY, CONTROL
"C", IDM_COPYSELECTED, VIRTKEY, CONTROL
"E", IDM_EDITSCRIPT, VIRTKEY, CONTROL
"F", IDM_FIND, VIRTKEY, CONTROL
"L", IDM_LOADSCRIPT, VIRTKEY, CONTROL
"M", IDM_RECOMPILE_TEST, VIRTKEY, CONTROL
VK_F5, IDM_RECOMPILE_TEST, VIRTKEY
"R", IDM_RECOMPILE, VIRTKEY, CONTROL
VK_F7, IDM_RECOMPILE, VIRTKEY
"S", IDM_SETTINGS, VIRTKEY, CONTROL
"T", IDM_TEST, VIRTKEY, CONTROL
VK_F5, IDM_TEST, VIRTKEY, CONTROL
VK_F1, IDM_DOCS, VIRTKEY
"W", IDM_CLEARLOG, VIRTKEY, CONTROL
"X", IDM_EXIT, VIRTKEY, ALT
"K", IDM_CANCEL, VIRTKEY, CONTROL
VK_CANCEL, IDM_CANCEL, VIRTKEY, CONTROL
VK_ADD, IDM_ZOOM_INC, VIRTKEY, CONTROL
VK_SUBTRACT, IDM_ZOOM_DEC, VIRTKEY, CONTROL
"0", IDM_ZOOM_RST, VIRTKEY, CONTROL
END