From 04bf338d522ffb3abe63efd23173b79bd481c3aa Mon Sep 17 00:00:00 2001 From: Christian Grasser Date: Thu, 22 Jun 2017 21:55:31 +0200 Subject: [PATCH] - updated for x64 build with versions from https://github.com/npp-plugins/plugintemplate - added appveyor.yml CI config --- .gitignore | 17 +- NppPlugin/ColumnSort.aps | Bin 37960 -> 0 bytes .../DockingFeature/DockingDlgInterface.h | 2 +- NppPlugin/DockingFeature/GoToLineDlg.cpp | 4 +- NppPlugin/DockingFeature/GoToLineDlg.h | 2 +- NppPlugin/DockingFeature/StaticDialog.cpp | 126 +-- NppPlugin/DockingFeature/StaticDialog.h | 15 +- NppPlugin/Notepad_plus_msgs.h | 285 +++++-- NppPlugin/NppColumnSort.vcxproj | 174 ++++ NppPlugin/NppPlugin.cpp | 38 +- NppPlugin/NppPluginColumnSort.sln | 26 - NppPlugin/NppPluginColumnSort.suo | Bin 36864 -> 0 bytes NppPlugin/NppPluginTemplate.vcxproj | 234 ----- NppPlugin/NppPluginTemplate.vcxproj.filters | 53 -- NppPlugin/NppPluginTemplate.vcxproj.user | 11 - NppPlugin/PluginDefinition.cpp | 10 +- NppPlugin/PluginDefinition.h | 9 +- NppPlugin/PluginInterface.h | 58 +- NppPlugin/Scintilla.h | 297 ++++++- NppPlugin/menuCmdID.h | 797 +++++++++++------- NppPlugin/no_ms_shit.props | 12 - NppPlugin/no_ms_shit.vsprops | 11 - appveyor.yml | 77 ++ 23 files changed, 1400 insertions(+), 858 deletions(-) delete mode 100644 NppPlugin/ColumnSort.aps create mode 100644 NppPlugin/NppColumnSort.vcxproj delete mode 100644 NppPlugin/NppPluginColumnSort.sln delete mode 100644 NppPlugin/NppPluginColumnSort.suo delete mode 100644 NppPlugin/NppPluginTemplate.vcxproj delete mode 100644 NppPlugin/NppPluginTemplate.vcxproj.filters delete mode 100644 NppPlugin/NppPluginTemplate.vcxproj.user delete mode 100644 NppPlugin/no_ms_shit.props delete mode 100644 NppPlugin/no_ms_shit.vsprops create mode 100644 appveyor.yml diff --git a/.gitignore b/.gitignore index 68de800..646b986 100644 --- a/.gitignore +++ b/.gitignore @@ -11,10 +11,10 @@ # Compiled Dynamic libraries *.so *.dylib -*.dll - +*.dll + # Symbol files -*.pdb +*.pdb # Fortran module files *.mod @@ -29,4 +29,13 @@ *.exe *.out *.app - + + +*.sdf +*.sln +*.suo +*.opensdf +*.exp +*.vcxproj.user +*.aps +*.zip diff --git a/NppPlugin/ColumnSort.aps b/NppPlugin/ColumnSort.aps deleted file mode 100644 index d2c6436cfbcef3cdae2ebf3cc38e7f9dd3c05e2f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37960 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 sFoT~RU!S}Ve #include "StaticDialog.h" void StaticDialog::goToCenter() { - RECT rc; - ::GetClientRect(_hParent, &rc); - POINT center; - center.x = rc.left + (rc.right - rc.left)/2; - center.y = rc.top + (rc.bottom - rc.top)/2; - ::ClientToScreen(_hParent, ¢er); + RECT rc; + ::GetClientRect(_hParent, &rc); + POINT center; + center.x = rc.left + (rc.right - rc.left)/2; + center.y = rc.top + (rc.bottom - rc.top)/2; + ::ClientToScreen(_hParent, ¢er); int x = center.x - (_rc.right - _rc.left)/2; int y = center.y - (_rc.bottom - _rc.top)/2; @@ -36,17 +37,25 @@ HGLOBAL StaticDialog::makeRTLResource(int dialogID, DLGTEMPLATE **ppMyDlgTemplat { // Get Dlg Template resource HRSRC hDialogRC = ::FindResource(_hInst, MAKEINTRESOURCE(dialogID), RT_DIALOG); + if (!hDialogRC) + return NULL; + HGLOBAL hDlgTemplate = ::LoadResource(_hInst, hDialogRC); - DLGTEMPLATE *pDlgTemplate = (DLGTEMPLATE *)::LockResource(hDlgTemplate); - + if (!hDlgTemplate) + return NULL; + + DLGTEMPLATE *pDlgTemplate = reinterpret_cast(::LockResource(hDlgTemplate)); + if (!pDlgTemplate) + return NULL; + // Duplicate Dlg Template resource unsigned long sizeDlg = ::SizeofResource(_hInst, hDialogRC); HGLOBAL hMyDlgTemplate = ::GlobalAlloc(GPTR, sizeDlg); - *ppMyDlgTemplate = (DLGTEMPLATE *)::GlobalLock(hMyDlgTemplate); + *ppMyDlgTemplate = reinterpret_cast(::GlobalLock(hMyDlgTemplate)); ::memcpy(*ppMyDlgTemplate, pDlgTemplate, sizeDlg); - - DLGTEMPLATEEX *pMyDlgTemplateEx = (DLGTEMPLATEEX *)*ppMyDlgTemplate; + + DLGTEMPLATEEX *pMyDlgTemplateEx = reinterpret_cast(*ppMyDlgTemplate); if (pMyDlgTemplateEx->signature == 0xFFFF) pMyDlgTemplateEx->exStyle |= WS_EX_LAYOUTRTL; else @@ -61,38 +70,43 @@ void StaticDialog::create(int dialogID, bool isRTL) { DLGTEMPLATE *pMyDlgTemplate = NULL; HGLOBAL hMyDlgTemplate = makeRTLResource(dialogID, &pMyDlgTemplate); - _hSelf = ::CreateDialogIndirectParam(_hInst, pMyDlgTemplate, _hParent, (DLGPROC)dlgProc, (LPARAM)this); + _hSelf = ::CreateDialogIndirectParam(_hInst, pMyDlgTemplate, _hParent, dlgProc, reinterpret_cast(this)); ::GlobalFree(hMyDlgTemplate); } else - _hSelf = ::CreateDialogParam(_hInst, MAKEINTRESOURCE(dialogID), _hParent, (DLGPROC)dlgProc, (LPARAM)this); + _hSelf = ::CreateDialogParam(_hInst, MAKEINTRESOURCE(dialogID), _hParent, dlgProc, reinterpret_cast(this)); if (!_hSelf) { + DWORD err = ::GetLastError(); + char errMsg[256]; + sprintf(errMsg, "CreateDialogParam() return NULL.\rGetLastError() == %u", err); + ::MessageBoxA(NULL, errMsg, "In StaticDialog::create()", MB_OK); return; } - ::SendMessage(_hParent, NPPM_MODELESSDIALOG, MODELESSDIALOGADD, (WPARAM)_hSelf); + // if the destination of message NPPM_MODELESSDIALOG is not its parent, then it's the grand-parent + ::SendMessage(_hParent, NPPM_MODELESSDIALOG, MODELESSDIALOGADD, reinterpret_cast(_hSelf)); } -BOOL CALLBACK StaticDialog::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) +INT_PTR CALLBACK StaticDialog::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { - switch (message) + switch (message) { - case WM_INITDIALOG : + case WM_INITDIALOG: { - StaticDialog *pStaticDlg = (StaticDialog *)(lParam); + StaticDialog *pStaticDlg = reinterpret_cast(lParam); pStaticDlg->_hSelf = hwnd; - ::SetWindowLongPtr(hwnd, GWL_USERDATA, (long)lParam); + ::SetWindowLongPtr(hwnd, GWLP_USERDATA, static_cast(lParam)); ::GetWindowRect(hwnd, &(pStaticDlg->_rc)); - pStaticDlg->run_dlgProc(message, wParam, lParam); - + pStaticDlg->run_dlgProc(message, wParam, lParam); + return TRUE; } - default : + default: { - StaticDialog *pStaticDlg = (StaticDialog *)(::GetWindowLongPtr(hwnd, GWL_USERDATA)); + StaticDialog *pStaticDlg = reinterpret_cast(::GetWindowLongPtr(hwnd, GWLP_USERDATA)); if (!pStaticDlg) return FALSE; return pStaticDlg->run_dlgProc(message, wParam, lParam); @@ -102,34 +116,40 @@ BOOL CALLBACK StaticDialog::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPAR void StaticDialog::alignWith(HWND handle, HWND handle2Align, PosAlign pos, POINT & point) { - RECT rc, rc2; - ::GetWindowRect(handle, &rc); - - point.x = rc.left; - point.y = rc.top; - - switch (pos) - { - case ALIGNPOS_LEFT : - ::GetWindowRect(handle2Align, &rc2); - point.x -= rc2.right - rc2.left; - break; - - case ALIGNPOS_RIGHT : - ::GetWindowRect(handle, &rc2); - point.x += rc2.right - rc2.left; - break; - - case ALIGNPOS_TOP : - ::GetWindowRect(handle2Align, &rc2); - point.y -= rc2.bottom - rc2.top; - break; - - default : //ALIGNPOS_BOTTOM - ::GetWindowRect(handle, &rc2); - point.y += rc2.bottom - rc2.top; - break; - } - - ::ScreenToClient(_hSelf, &point); + RECT rc, rc2; + ::GetWindowRect(handle, &rc); + + point.x = rc.left; + point.y = rc.top; + + switch (pos) + { + case PosAlign::left: + { + ::GetWindowRect(handle2Align, &rc2); + point.x -= rc2.right - rc2.left; + break; + } + case PosAlign::right: + { + ::GetWindowRect(handle, &rc2); + point.x += rc2.right - rc2.left; + break; + } + case PosAlign::top: + { + ::GetWindowRect(handle2Align, &rc2); + point.y -= rc2.bottom - rc2.top; + break; + } + case PosAlign::bottom: + { + ::GetWindowRect(handle, &rc2); + point.y += rc2.bottom - rc2.top; + break; + } + } + + ::ScreenToClient(_hSelf, &point); } + diff --git a/NppPlugin/DockingFeature/StaticDialog.h b/NppPlugin/DockingFeature/StaticDialog.h index 38f39c2..131fdf9 100644 --- a/NppPlugin/DockingFeature/StaticDialog.h +++ b/NppPlugin/DockingFeature/StaticDialog.h @@ -15,14 +15,12 @@ //along with this program; if not, write to the Free Software //Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -#ifndef STATIC_DIALOG_H -#define STATIC_DIALOG_H +#pragma once -//#include "resource.h" #include "Window.h" -#include "Notepad_plus_msgs.h" +#include "..\Notepad_plus_msgs.h" -enum PosAlign{ALIGNPOS_LEFT, ALIGNPOS_RIGHT, ALIGNPOS_TOP, ALIGNPOS_BOTTOM}; +enum class PosAlign { left, right, top, bottom }; struct DLGTEMPLATEEX { WORD dlgVer; @@ -44,7 +42,7 @@ public : StaticDialog() : Window() {}; ~StaticDialog(){ if (isCreated()) { - ::SetWindowLongPtr(_hSelf, GWL_USERDATA, (long)NULL); //Prevent run_dlgProc from doing anything, since its virtual + ::SetWindowLongPtr(_hSelf, GWLP_USERDATA, (long)NULL); //Prevent run_dlgProc from doing anything, since its virtual destroy(); } }; @@ -62,11 +60,10 @@ public : protected : RECT _rc; - static BOOL CALLBACK dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); - virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) = 0; + static INT_PTR CALLBACK dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); + virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) = 0; void alignWith(HWND handle, HWND handle2Align, PosAlign pos, POINT & point); HGLOBAL makeRTLResource(int dialogID, DLGTEMPLATE **ppMyDlgTemplate); }; -#endif //STATIC_DIALOG_H diff --git a/NppPlugin/Notepad_plus_msgs.h b/NppPlugin/Notepad_plus_msgs.h index 364b31f..95269af 100644 --- a/NppPlugin/Notepad_plus_msgs.h +++ b/NppPlugin/Notepad_plus_msgs.h @@ -1,40 +1,54 @@ -//this file is part of notepad++ -//Copyright (C)2003 Don HO +// This file is part of Notepad++ project +// Copyright (C)2003 Don HO // -//This program is free software; you can redistribute it and/or -//modify it under the terms of the GNU General Public License -//as published by the Free Software Foundation; either -//version 2 of the License, or (at your option) any later version. +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either +// version 2 of the License, or (at your option) any later version. // -//This program is distributed in the hope that it will be useful, -//but WITHOUT ANY WARRANTY; without even the implied warranty of -//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -//GNU General Public License for more details. +// Note that the GPL places important restrictions on "derived works", yet +// it does not provide a detailed definition of that term. To avoid +// misunderstandings, we consider an application to constitute a +// "derivative work" for the purpose of this license if it does any of the +// following: +// 1. Integrates source code from Notepad++. +// 2. Integrates/includes/aggregates Notepad++ into a proprietary executable +// installer, such as those produced by InstallShield. +// 3. Links to a library or executes a program that does any of the above. // -//You should have received a copy of the GNU General Public License -//along with this program; if not, write to the Free Software -//Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + #ifndef NOTEPAD_PLUS_MSGS_H #define NOTEPAD_PLUS_MSGS_H -//#include "menuCmdID.h" +#include +#include -enum LangType {L_TXT, L_PHP , L_C, L_CPP, L_CS, L_OBJC, L_JAVA, L_RC,\ - L_HTML, L_XML, L_MAKEFILE, L_PASCAL, L_BATCH, L_INI, L_NFO, L_USER,\ - L_ASP, L_SQL, L_VB, L_JS, L_CSS, L_PERL, L_PYTHON, L_LUA,\ +enum LangType {L_TEXT, L_PHP , L_C, L_CPP, L_CS, L_OBJC, L_JAVA, L_RC,\ + L_HTML, L_XML, L_MAKEFILE, L_PASCAL, L_BATCH, L_INI, L_ASCII, L_USER,\ + L_ASP, L_SQL, L_VB, L_JS, L_CSS, L_PERL, L_PYTHON, L_LUA, \ L_TEX, L_FORTRAN, L_BASH, L_FLASH, L_NSIS, L_TCL, L_LISP, L_SCHEME,\ L_ASM, L_DIFF, L_PROPS, L_PS, L_RUBY, L_SMALLTALK, L_VHDL, L_KIX, L_AU3,\ L_CAML, L_ADA, L_VERILOG, L_MATLAB, L_HASKELL, L_INNO, L_SEARCHRESULT,\ - L_CMAKE, L_YAML,\ + L_CMAKE, L_YAML, L_COBOL, L_GUI4CLI, L_D, L_POWERSHELL, L_R, L_JSP,\ + L_COFFEESCRIPT, L_JSON, L_JAVASCRIPT, L_FORTRAN_77,\ + // Don't use L_JS, use L_JAVASCRIPT instead // The end of enumated language type, so it should be always at the end L_EXTERNAL}; -enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV_S2003, WV_XPX64, WV_VISTA, WV_WIN7}; + +enum winVer{ WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV_S2003, WV_XPX64, WV_VISTA, WV_WIN7, WV_WIN8, WV_WIN81, WV_WIN10}; -//#include "deprecatedSymbols.h" -//Here you can find how to use these messages : http://notepad-plus.sourceforge.net/uk/plugins-HOWTO.php +//Here you can find how to use these messages : http://docs.notepad-plus-plus.org/index.php/Messages_And_Notifications #define NPPMSG (WM_USER + 1000) #define NPPM_GETCURRENTSCINTILLA (NPPMSG + 4) @@ -66,7 +80,7 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV #define NPPM_GETOPENFILENAMESPRIMARY (NPPMSG + 17) #define NPPM_GETOPENFILENAMESSECOND (NPPMSG + 18) - + #define NPPM_CREATESCINTILLAHANDLE (NPPMSG + 20) #define NPPM_DESTROYSCINTILLAHANDLE (NPPMSG + 21) #define NPPM_GETNBUSERLANG (NPPMSG + 22) @@ -85,12 +99,15 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV #define NPPM_GETMENUHANDLE (NPPMSG + 25) #define NPPPLUGINMENU 0 + #define NPPMAINMENU 1 + // INT NPPM_GETMENUHANDLE(INT menuChoice, 0) + // Return: menu handle (HMENU) of choice (plugin menu handle or Notepad++ main menu handle) #define NPPM_ENCODESCI (NPPMSG + 26) //ascii file to unicode //int NPPM_ENCODESCI(MAIN_VIEW/SUB_VIEW, 0) //return new unicodeMode - + #define NPPM_DECODESCI (NPPMSG + 27) //unicode file to ascii //int NPPM_DECODESCI(MAIN_VIEW/SUB_VIEW, 0) @@ -103,9 +120,13 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV //void NPPM_LAUNCHFINDINFILESDLG(TCHAR * dir2Search, TCHAR * filtre) #define NPPM_DMMSHOW (NPPMSG + 30) + //void NPPM_DMMSHOW(0, tTbData->hClient) + #define NPPM_DMMHIDE (NPPMSG + 31) + //void NPPM_DMMHIDE(0, tTbData->hClient) + #define NPPM_DMMUPDATEDISPINFO (NPPMSG + 32) - //void NPPM_DMMxxx(0, tTbData->hClient) + //void NPPM_DMMUPDATEDISPINFO(0, tTbData->hClient) #define NPPM_DMMREGASDCKDLG (NPPMSG + 33) //void NPPM_DMMREGASDCKDLG(0, &tTbData) @@ -123,7 +144,7 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV //BOOL NPPM_SWITCHTOFILE(0, TCHAR *filePathName2switch) #define NPPM_SAVECURRENTFILE (NPPMSG + 38) - //BOOL WM_SWITCHTOFILE(0, 0) + //BOOL NPPM_SAVECURRENTFILE(0, 0) #define NPPM_SAVEALLFILES (NPPMSG + 39) //BOOL NPPM_SAVEALLFILES(0, 0) @@ -145,7 +166,7 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV //HWND WM_DMM_GETPLUGINHWNDBYNAME(const TCHAR *windowName, const TCHAR *moduleName) // if moduleName is NULL, then return value is NULL // if windowName is NULL, then the first found window handle which matches with the moduleName will be returned - + #define NPPM_MAKECURRENTBUFFERDIRTY (NPPMSG + 44) //BOOL NPPM_MAKECURRENTBUFFERDIRTY(0, 0) @@ -170,13 +191,13 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV // uncomment //#include "menuCmdID.h" // in the beginning of this file then use the command symbols defined in "menuCmdID.h" file // to access all the Notepad++ menu command items - + #define NPPM_TRIGGERTABBARCONTEXTMENU (NPPMSG + 49) //void NPPM_TRIGGERTABBARCONTEXTMENU(int view, int index2Activate) #define NPPM_GETNPPVERSION (NPPMSG + 50) // int NPPM_GETNPPVERSION(0, 0) - // return version + // return version // ex : v4.6 // HIWORD(version) == 4 // LOWORD(version) == 6 @@ -192,69 +213,79 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV // returned value : TRUE if tab bar is hidden, otherwise FALSE #define NPPM_GETPOSFROMBUFFERID (NPPMSG + 57) - // INT NPPM_GETPOSFROMBUFFERID(INT bufferID, 0) + // INT NPPM_GETPOSFROMBUFFERID(INT bufferID, INT priorityView) // Return VIEW|INDEX from a buffer ID. -1 if the bufferID non existing + // if priorityView set to SUB_VIEW, then SUB_VIEW will be search firstly // - // VIEW takes 2 highest bits and INDEX (0 based) takes the rest (30 bits) + // VIEW takes 2 highest bits and INDEX (0 based) takes the rest (30 bits) // Here's the values for the view : // MAIN_VIEW 0 // SUB_VIEW 1 #define NPPM_GETFULLPATHFROMBUFFERID (NPPMSG + 58) // INT NPPM_GETFULLPATHFROMBUFFERID(INT bufferID, TCHAR *fullFilePath) - // Get full path file name from a bufferID. + // Get full path file name from a bufferID. // Return -1 if the bufferID non existing, otherwise the number of TCHAR copied/to copy // User should call it with fullFilePath be NULL to get the number of TCHAR (not including the nul character), // allocate fullFilePath with the return values + 1, then call it again to get full path file name #define NPPM_GETBUFFERIDFROMPOS (NPPMSG + 59) - //wParam: Position of document - //lParam: View to use, 0 = Main, 1 = Secondary - //Returns 0 if invalid + // LRESULT NPPM_GETBUFFERIDFROMPOS(INT index, INT iView) + // wParam: Position of document + // lParam: View to use, 0 = Main, 1 = Secondary + // Returns 0 if invalid #define NPPM_GETCURRENTBUFFERID (NPPMSG + 60) - //Returns active Buffer + // LRESULT NPPM_GETCURRENTBUFFERID(0, 0) + // Returns active Buffer #define NPPM_RELOADBUFFERID (NPPMSG + 61) - //Reloads Buffer - //wParam: Buffer to reload - //lParam: 0 if no alert, else alert + // VOID NPPM_RELOADBUFFERID(0, 0) + // Reloads Buffer + // wParam: Buffer to reload + // lParam: 0 if no alert, else alert #define NPPM_GETBUFFERLANGTYPE (NPPMSG + 64) - //wParam: BufferID to get LangType from - //lParam: 0 - //Returns as int, see LangType. -1 on error + // INT NPPM_GETBUFFERLANGTYPE(INT bufferID, 0) + // wParam: BufferID to get LangType from + // lParam: 0 + // Returns as int, see LangType. -1 on error #define NPPM_SETBUFFERLANGTYPE (NPPMSG + 65) - //wParam: BufferID to set LangType of - //lParam: LangType - //Returns TRUE on success, FALSE otherwise - //use int, see LangType for possible values - //L_USER and L_EXTERNAL are not supported + // BOOL NPPM_SETBUFFERLANGTYPE(INT bufferID, INT langType) + // wParam: BufferID to set LangType of + // lParam: LangType + // Returns TRUE on success, FALSE otherwise + // use int, see LangType for possible values + // L_USER and L_EXTERNAL are not supported #define NPPM_GETBUFFERENCODING (NPPMSG + 66) - //wParam: BufferID to get encoding from - //lParam: 0 - //returns as int, see UniMode. -1 on error + // INT NPPM_GETBUFFERENCODING(INT bufferID, 0) + // wParam: BufferID to get encoding from + // lParam: 0 + // returns as int, see UniMode. -1 on error #define NPPM_SETBUFFERENCODING (NPPMSG + 67) - //wParam: BufferID to set encoding of - //lParam: format - //Returns TRUE on success, FALSE otherwise - //use int, see UniMode - //Can only be done on new, unedited files + // BOOL NPPM_SETBUFFERENCODING(INT bufferID, INT encoding) + // wParam: BufferID to set encoding of + // lParam: encoding + // Returns TRUE on success, FALSE otherwise + // use int, see UniMode + // Can only be done on new, unedited files #define NPPM_GETBUFFERFORMAT (NPPMSG + 68) - //wParam: BufferID to get format from - //lParam: 0 - //returns as int, see formatType. -1 on error + // INT NPPM_GETBUFFERFORMAT(INT bufferID, 0) + // wParam: BufferID to get format from + // lParam: 0 + // returns as int, see formatType. -1 on error #define NPPM_SETBUFFERFORMAT (NPPMSG + 69) - //wParam: BufferID to set format of - //lParam: format - //Returns TRUE on success, FALSE otherwise - //use int, see formatType + // BOOL NPPM_SETBUFFERFORMAT(INT bufferID, INT format) + // wParam: BufferID to set format of + // lParam: format + // Returns TRUE on success, FALSE otherwise + // use int, see formatType /* #define NPPM_ADDREBAR (NPPMSG + 57) @@ -309,6 +340,85 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV // fullPathName2Open indicates the full file path name to be opened. // The return value is TRUE (1) if the operation is successful, otherwise FALSE (0). + #define NPPM_SAVECURRENTFILEAS (NPPMSG + 78) + // BOOL NPPM_SAVECURRENTFILEAS (BOOL asCopy, const TCHAR* filename) + + #define NPPM_GETCURRENTNATIVELANGENCODING (NPPMSG + 79) + // INT NPPM_GETCURRENTNATIVELANGENCODING(0, 0) + // returned value : the current native language enconding + + #define NPPM_ALLOCATESUPPORTED (NPPMSG + 80) + // returns TRUE if NPPM_ALLOCATECMDID is supported + // Use to identify if subclassing is necessary + + #define NPPM_ALLOCATECMDID (NPPMSG + 81) + // BOOL NPPM_ALLOCATECMDID(int numberRequested, int* startNumber) + // sets startNumber to the initial command ID if successful + // Returns: TRUE if successful, FALSE otherwise. startNumber will also be set to 0 if unsuccessful + + #define NPPM_ALLOCATEMARKER (NPPMSG + 82) + // BOOL NPPM_ALLOCATEMARKER(int numberRequested, int* startNumber) + // sets startNumber to the initial command ID if successful + // Allocates a marker number to a plugin + // Returns: TRUE if successful, FALSE otherwise. startNumber will also be set to 0 if unsuccessful + + #define NPPM_GETLANGUAGENAME (NPPMSG + 83) + // INT NPPM_GETLANGUAGENAME(int langType, TCHAR *langName) + // Get programing language name from the given language type (LangType) + // Return value is the number of copied character / number of character to copy (\0 is not included) + // You should call this function 2 times - the first time you pass langName as NULL to get the number of characters to copy. + // You allocate a buffer of the length of (the number of characters + 1) then call NPPM_GETLANGUAGENAME function the 2nd time + // by passing allocated buffer as argument langName + + #define NPPM_GETLANGUAGEDESC (NPPMSG + 84) + // INT NPPM_GETLANGUAGEDESC(int langType, TCHAR *langDesc) + // Get programing language short description from the given language type (LangType) + // Return value is the number of copied character / number of character to copy (\0 is not included) + // You should call this function 2 times - the first time you pass langDesc as NULL to get the number of characters to copy. + // You allocate a buffer of the length of (the number of characters + 1) then call NPPM_GETLANGUAGEDESC function the 2nd time + // by passing allocated buffer as argument langDesc + + #define NPPM_SHOWDOCSWITCHER (NPPMSG + 85) + // VOID NPPM_ISDOCSWITCHERSHOWN(0, BOOL toShowOrNot) + // Send this message to show or hide doc switcher. + // if toShowOrNot is TRUE then show doc switcher, otherwise hide it. + + #define NPPM_ISDOCSWITCHERSHOWN (NPPMSG + 86) + // BOOL NPPM_ISDOCSWITCHERSHOWN(0, 0) + // Check to see if doc switcher is shown. + + #define NPPM_GETAPPDATAPLUGINSALLOWED (NPPMSG + 87) + // BOOL NPPM_GETAPPDATAPLUGINSALLOWED(0, 0) + // Check to see if loading plugins from "%APPDATA%\Notepad++\plugins" is allowed. + + #define NPPM_GETCURRENTVIEW (NPPMSG + 88) + // INT NPPM_GETCURRENTVIEW(0, 0) + // Return: current edit view of Notepad++. Only 2 possible values: 0 = Main, 1 = Secondary + + #define NPPM_DOCSWITCHERDISABLECOLUMN (NPPMSG + 89) + // VOID NPPM_DOCSWITCHERDISABLECOLUMN(0, BOOL disableOrNot) + // Disable or enable extension column of doc switcher + + #define NPPM_GETEDITORDEFAULTFOREGROUNDCOLOR (NPPMSG + 90) + // INT NPPM_GETEDITORDEFAULTFOREGROUNDCOLOR(0, 0) + // Return: current editor default foreground color. You should convert the returned value in COLORREF + + #define NPPM_GETEDITORDEFAULTBACKGROUNDCOLOR (NPPMSG + 91) + // INT NPPM_GETEDITORDEFAULTBACKGROUNDCOLOR(0, 0) + // Return: current editor default background color. You should convert the returned value in COLORREF + + #define NPPM_SETSMOOTHFONT (NPPMSG + 92) + // VOID NPPM_SETSMOOTHFONT(0, BOOL setSmoothFontOrNot) + + #define NPPM_SETEDITORBORDEREDGE (NPPMSG + 93) + // VOID NPPM_SETEDITORBORDEREDGE(0, BOOL withEditorBorderEdgeOrNot) + + #define NPPM_SAVEFILE (NPPMSG + 94) + // VOID NPPM_SAVEFILE(0, const TCHAR *fileNameToSave) + + #define NPPM_DISABLEAUTOUPDATE (NPPMSG + 95) // 2119 in decimal + // VOID NPPM_DISABLEAUTOUPDATE(0, 0) + #define RUNCOMMAND_USER (WM_USER + 3000) #define NPPM_GETFULLCURRENTPATH (RUNCOMMAND_USER + FULL_CURRENT_PATH) #define NPPM_GETCURRENTDIRECTORY (RUNCOMMAND_USER + CURRENT_DIRECTORY) @@ -373,12 +483,12 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV //scnNotification->nmhdr.code = NPPN_FILEBEFOREOPEN; //scnNotification->nmhdr.hwndFrom = hwndNpp; //scnNotification->nmhdr.idFrom = BufferID; - + #define NPPN_FILEBEFORESAVE (NPPN_FIRST + 7) // To notify plugins that the current file is about to be saved //scnNotification->nmhdr.code = NPPN_FILEBEFOREOPEN; //scnNotification->nmhdr.hwndFrom = hwndNpp; //scnNotification->nmhdr.idFrom = BufferID; - + #define NPPN_FILESAVED (NPPN_FIRST + 8) // To notify plugins that the current file is just saved //scnNotification->nmhdr.code = NPPN_FILESAVED; //scnNotification->nmhdr.hwndFrom = hwndNpp; @@ -436,9 +546,54 @@ enum winVer{WV_UNKNOWN, WV_WIN32S, WV_95, WV_98, WV_ME, WV_NT, WV_W2K, WV_XP, WV #define DOCSTAUS_READONLY 1 #define DOCSTAUS_BUFFERDIRTY 2 - #define NPPN_DOCORDERCHANGED (NPPN_FIRST + 16) // To notify plugins that document order is changed + #define NPPN_DOCORDERCHANGED (NPPN_FIRST + 17) // To notify plugins that document order is changed //scnNotification->nmhdr.code = NPPN_DOCORDERCHANGED; //scnNotification->nmhdr.hwndFrom = newIndex; //scnNotification->nmhdr.idFrom = BufferID; -#endif //NOTEPAD_PLUS_MSGS_H \ No newline at end of file + #define NPPN_SNAPSHOTDIRTYFILELOADED (NPPN_FIRST + 18) // To notify plugins that a snapshot dirty file is loaded on startup + //scnNotification->nmhdr.code = NPPN_SNAPSHOTDIRTYFILELOADED; + //scnNotification->nmhdr.hwndFrom = NULL; + //scnNotification->nmhdr.idFrom = BufferID; + + #define NPPN_BEFORESHUTDOWN (NPPN_FIRST + 19) // To notify plugins that Npp shutdown has been triggered, files have not been closed yet + //scnNotification->nmhdr.code = NPPN_BEFORESHUTDOWN; + //scnNotification->nmhdr.hwndFrom = hwndNpp; + //scnNotification->nmhdr.idFrom = 0; + + #define NPPN_CANCELSHUTDOWN (NPPN_FIRST + 20) // To notify plugins that Npp shutdown has been cancelled + //scnNotification->nmhdr.code = NPPN_CANCELSHUTDOWN; + //scnNotification->nmhdr.hwndFrom = hwndNpp; + //scnNotification->nmhdr.idFrom = 0; + + #define NPPN_FILEBEFORERENAME (NPPN_FIRST + 21) // To notify plugins that file is to be renamed + //scnNotification->nmhdr.code = NPPN_FILEBEFORERENAME; + //scnNotification->nmhdr.hwndFrom = hwndNpp; + //scnNotification->nmhdr.idFrom = BufferID; + + #define NPPN_FILERENAMECANCEL (NPPN_FIRST + 22) // To notify plugins that file rename has been cancelled + //scnNotification->nmhdr.code = NPPN_FILERENAMECANCEL; + //scnNotification->nmhdr.hwndFrom = hwndNpp; + //scnNotification->nmhdr.idFrom = BufferID; + + #define NPPN_FILERENAMED (NPPN_FIRST + 23) // To notify plugins that file has been renamed + //scnNotification->nmhdr.code = NPPN_FILERENAMED; + //scnNotification->nmhdr.hwndFrom = hwndNpp; + //scnNotification->nmhdr.idFrom = BufferID; + + #define NPPN_FILEBEFOREDELETE (NPPN_FIRST + 24) // To notify plugins that file is to be deleted + //scnNotification->nmhdr.code = NPPN_FILEBEFOREDELETE; + //scnNotification->nmhdr.hwndFrom = hwndNpp; + //scnNotification->nmhdr.idFrom = BufferID; + + #define NPPN_FILEDELETEFAILED (NPPN_FIRST + 25) // To notify plugins that file deletion has failed + //scnNotification->nmhdr.code = NPPN_FILEDELETEFAILED; + //scnNotification->nmhdr.hwndFrom = hwndNpp; + //scnNotification->nmhdr.idFrom = BufferID; + + #define NPPN_FILEDELETED (NPPN_FIRST + 26) // To notify plugins that file has been deleted + //scnNotification->nmhdr.code = NPPN_FILEDELETED; + //scnNotification->nmhdr.hwndFrom = hwndNpp; + //scnNotification->nmhdr.idFrom = BufferID; + +#endif //NOTEPAD_PLUS_MSGS_H diff --git a/NppPlugin/NppColumnSort.vcxproj b/NppPlugin/NppColumnSort.vcxproj new file mode 100644 index 0000000..e68f8ef --- /dev/null +++ b/NppPlugin/NppColumnSort.vcxproj @@ -0,0 +1,174 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + + + + + + + + + + + + + + + + + {9D04DBD5-E12E-44E0-A683-6F43F21D533B} + Win32Proj + NppColumnSort + + + + DynamicLibrary + true + v140_xp + Unicode + + + DynamicLibrary + true + v140_xp + Unicode + + + DynamicLibrary + false + v140_xp + true + Unicode + + + DynamicLibrary + false + v140_xp + true + Unicode + + + + + + + + + + + + + + + + + + + true + + + true + + + false + ..\bin\ + + + false + ..\bin64\ + + + + Level4 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;%(PreprocessorDefinitions) + false + MultiThreadedDebug + true + + + Windows + true + shlwapi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + Level4 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;%(PreprocessorDefinitions) + false + MultiThreadedDebug + true + + + Windows + true + shlwapi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + Level4 + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;%(PreprocessorDefinitions) + + + false + MultiThreaded + true + + + Windows + false + true + true + shlwapi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(TargetName).lib + + + + + Level4 + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;%(PreprocessorDefinitions) + false + MultiThreaded + true + + + Windows + false + true + true + shlwapi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(TargetName).lib + + + + + + \ No newline at end of file diff --git a/NppPlugin/NppPlugin.cpp b/NppPlugin/NppPlugin.cpp index 138eac0..4d21545 100644 --- a/NppPlugin/NppPlugin.cpp +++ b/NppPlugin/NppPlugin.cpp @@ -22,9 +22,7 @@ extern NppData nppData; HMODULE g_hModule; -BOOL APIENTRY DllMain( HANDLE hModule, - DWORD reasonForCall, - LPVOID lpReserved ) +BOOL APIENTRY DllMain(HANDLE hModule, DWORD reasonForCall, LPVOID /*lpReserved*/) { switch (reasonForCall) { @@ -34,7 +32,6 @@ BOOL APIENTRY DllMain( HANDLE hModule, break; case DLL_PROCESS_DETACH: - commandMenuCleanUp(); pluginCleanUp(); break; @@ -51,24 +48,35 @@ BOOL APIENTRY DllMain( HANDLE hModule, extern "C" __declspec(dllexport) void setInfo(NppData notpadPlusData) { - nppData = notpadPlusData; - commandMenuInit(); + nppData = notpadPlusData; + commandMenuInit(); } extern "C" __declspec(dllexport) const TCHAR * getName() { - return NPP_PLUGIN_NAME; + return NPP_PLUGIN_NAME; } extern "C" __declspec(dllexport) FuncItem * getFuncsArray(int *nbF) { - *nbF = nbFunc; - return funcItem; + *nbF = nbFunc; + return funcItem; } extern "C" __declspec(dllexport) void beNotified(SCNotification *notifyCode) { + switch (notifyCode->nmhdr.code) + { + case NPPN_SHUTDOWN: + { + commandMenuCleanUp(); + } + break; + + default: + return; + } } @@ -77,14 +85,14 @@ extern "C" __declspec(dllexport) void beNotified(SCNotification *notifyCode) // Please let me know if you need to access to some messages : // http://sourceforge.net/forum/forum.php?forum_id=482781 // -extern "C" __declspec(dllexport) LRESULT messageProc(UINT Message, WPARAM wParam, LPARAM lParam) +extern "C" __declspec(dllexport) LRESULT messageProc(UINT /*Message*/, WPARAM /*wParam*/, LPARAM /*lParam*/) {/* - if (Message == WM_MOVE) - { - ::MessageBox(NULL, "move", "", MB_OK); - } + if (Message == WM_MOVE) + { + ::MessageBox(NULL, "move", "", MB_OK); + } */ - return TRUE; + return TRUE; } #ifdef UNICODE diff --git a/NppPlugin/NppPluginColumnSort.sln b/NppPlugin/NppPluginColumnSort.sln deleted file mode 100644 index c6c33cf..0000000 --- a/NppPlugin/NppPluginColumnSort.sln +++ /dev/null @@ -1,26 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NppColumnSort", "NppPluginTemplate.vcxproj", "{1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - ANSI Debug|Win32 = ANSI Debug|Win32 - ANSI Release|Win32 = ANSI Release|Win32 - Unicode Debug|Win32 = Unicode Debug|Win32 - Unicode Release|Win32 = Unicode Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.ANSI Debug|Win32.ActiveCfg = ANSI Debug|Win32 - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.ANSI Debug|Win32.Build.0 = ANSI Debug|Win32 - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.ANSI Release|Win32.ActiveCfg = ANSI Release|Win32 - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.ANSI Release|Win32.Build.0 = ANSI Release|Win32 - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Unicode Debug|Win32.ActiveCfg = Unicode Debug|Win32 - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Unicode Debug|Win32.Build.0 = Unicode Debug|Win32 - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Unicode Release|Win32.ActiveCfg = Unicode Release|Win32 - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D}.Unicode Release|Win32.Build.0 = Unicode Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/NppPlugin/NppPluginColumnSort.suo b/NppPlugin/NppPluginColumnSort.suo deleted file mode 100644 index 19e340dcdd61f8e9ed2c6228537cfbdd67a669c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 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 S22swTTZ;Ohwn4!EqwsH5x}ItP diff --git a/NppPlugin/NppPluginTemplate.vcxproj b/NppPlugin/NppPluginTemplate.vcxproj deleted file mode 100644 index bc428f1..0000000 --- a/NppPlugin/NppPluginTemplate.vcxproj +++ /dev/null @@ -1,234 +0,0 @@ - - - - - ANSI Debug - Win32 - - - ANSI Release - Win32 - - - Unicode Debug - Win32 - - - Unicode Release - Win32 - - - - {1590D7CD-7D3A-4AB7-A355-EE02F7FB987D} - NppPluginTemplate - Win32Proj - NppColumnSort - - - - DynamicLibrary - Unicode - - - DynamicLibrary - Unicode - - - DynamicLibrary - MultiByte - - - DynamicLibrary - MultiByte - - - Unicode - - - - - - - - - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.21006.1 - $(Configuration)\ - $(Configuration)\ - true - .\bin\ - Release\ - false - $(Configuration)\ - $(Configuration)\ - false - $(Configuration)\ - $(Configuration)\ - true - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - - - - Disabled - .\DockingFeature;.\;%(AdditionalIncludeDirectories) - WIN32;_DEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebug - - - Level3 - EditAndContinue - - - shlwapi.lib;%(AdditionalDependencies) - $(OutDir)$(TargetName)$(TargetExt) - true - Windows - MachineX86 - - - cmd /c copy "$(OutputPath)$(TargetName)$(TargetExt)" "C:\Program Files (x86)\Notepad++\plugins" - - - Copy to notepad++ directory - - - - - .\DockingFeature;.\;%(AdditionalIncludeDirectories) - WIN32;NDEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;%(PreprocessorDefinitions) - MultiThreaded - - - - - Level3 - ProgramDatabase - - - shlwapi.lib;%(AdditionalDependencies) - $(OutDir)$(TargetName)$(TargetExt) - true - Windows - true - true - MachineX86 - - - cmd /c copy "$(OutputPath)$(TargetName)$(TargetExt)" "C:\Program Files (x86)\Notepad++\plugins" - - - Copy to notepad++ directory - - - - - .\DockingFeature;.\;%(AdditionalIncludeDirectories) - WIN32;NDEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;%(PreprocessorDefinitions) - MultiThreaded - - - - - Level3 - ProgramDatabase - - - shlwapi.lib;%(AdditionalDependencies) - $(OutDir)$(TargetName)$(TargetExt) - true - Windows - true - true - MachineX86 - - - cmd /c copy "$(OutputPath)$(TargetName)$(TargetExt)" "C:\Program Files (x86)\Notepad++\plugins" - - - Copy to notepad++ directory - - - - - Disabled - .\DockingFeature;.\;%(AdditionalIncludeDirectories) - WIN32;_DEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebug - - - Level3 - EditAndContinue - - - shlwapi.lib;%(AdditionalDependencies) - true - Windows - MachineX86 - $(OutDir)$(TargetName)$(TargetExt) - - - cmd /c copy "$(OutputPath)$(TargetName)$(TargetExt)" "C:\Program Files (x86)\Notepad++\plugins" - - - Copy to notepad++ directory - - - - - WIN32;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;%(PreprocessorDefinitions) - - - - - - _UNICODE;WIN32;_DEBUG;_WINDOWS;_USRDLL;NPPPLUGINTEMPLATE_EXPORTS;%(PreprocessorDefinitions) - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/NppPlugin/NppPluginTemplate.vcxproj.filters b/NppPlugin/NppPluginTemplate.vcxproj.filters deleted file mode 100644 index e34743f..0000000 --- a/NppPlugin/NppPluginTemplate.vcxproj.filters +++ /dev/null @@ -1,53 +0,0 @@ - - - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx - - - - - Source Files - - - Source Files - - - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - - - Resource Files - - - \ No newline at end of file diff --git a/NppPlugin/NppPluginTemplate.vcxproj.user b/NppPlugin/NppPluginTemplate.vcxproj.user deleted file mode 100644 index b222d96..0000000 --- a/NppPlugin/NppPluginTemplate.vcxproj.user +++ /dev/null @@ -1,11 +0,0 @@ - - - - C:\Program Files (x86)\Notepad++\notepad++.exe - WindowsLocalDebugger - - - C:\Program Files (x86)\Notepad++\notepad++.exe - WindowsLocalDebugger - - \ No newline at end of file diff --git a/NppPlugin/PluginDefinition.cpp b/NppPlugin/PluginDefinition.cpp index 83e604f..c55ad16 100644 --- a/NppPlugin/PluginDefinition.cpp +++ b/NppPlugin/PluginDefinition.cpp @@ -77,7 +77,7 @@ std::vector criterias; // // Initialize your plugin data here // It will be called while plugin loading -void pluginInit(HANDLE hModule) +void pluginInit(HANDLE /*hModule*/) { } @@ -377,14 +377,14 @@ void SortCommand() { int m_iLineLength = 0, m_iStartPos = 0, m_iEndPos = 0, m_iEOL, m_iFirstLine = 0, m_iLastLine = 0; int m_iLineCount = 0; - int currentEdit; + int currentEdit = 0; vector strLines; string strLine; - static const basic_string ::size_type npos = -1; + static const basic_string ::size_type npos = (size_t)-1; char *szLine, szEOL[3]; HWND hCurrentEditView = nppData._scintillaMainHandle; - ::SendMessage(nppData._nppHandle, WM_GETCURRENTSCINTILLA, 0, (LPARAM)¤tEdit); + ::SendMessage(nppData._nppHandle, NPPM_GETCURRENTSCINTILLA, 0, (LPARAM)¤tEdit); if (currentEdit) hCurrentEditView = nppData._scintillaSecondHandle; @@ -659,7 +659,7 @@ void UpdateItemFromEditFields(HWND hDlg, HWND hList, int iItem) } -BOOL CALLBACK ColumnsDialogProc( +INT_PTR CALLBACK ColumnsDialogProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, diff --git a/NppPlugin/PluginDefinition.h b/NppPlugin/PluginDefinition.h index ff35e4d..bb32b59 100644 --- a/NppPlugin/PluginDefinition.h +++ b/NppPlugin/PluginDefinition.h @@ -23,13 +23,6 @@ // #include "PluginInterface.h" -#define NOTEPADPLUS_USER (WM_USER + 1000) -#define RUNCOMMAND_USER (WM_USER + 3000) - -#define WM_GETCURRENTSCINTILLA (NOTEPADPLUS_USER + 4) -#define WM_GETCURRENTLANGTYPE (NOTEPADPLUS_USER + 5) - - //-------------------------------------// //-- STEP 1. DEFINE YOUR PLUGIN NAME --// //-------------------------------------// @@ -77,7 +70,7 @@ bool setCommand(size_t index, TCHAR *cmdName, PFUNCPLUGINCMD pFunc, ShortcutKey // // Your plugin command functions // -BOOL CALLBACK ColumnsDialogProc( +INT_PTR CALLBACK ColumnsDialogProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, diff --git a/NppPlugin/PluginInterface.h b/NppPlugin/PluginInterface.h index f16de07..4ec81f3 100644 --- a/NppPlugin/PluginInterface.h +++ b/NppPlugin/PluginInterface.h @@ -1,32 +1,48 @@ -//this file is part of notepad++ -//Copyright (C)2003 Don HO +// This file is part of Notepad++ project +// Copyright (C)2003 Don HO // -//This program is free software; you can redistribute it and/or -//modify it under the terms of the GNU General Public License -//as published by the Free Software Foundation; either -//version 2 of the License, or (at your option) any later version. +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either +// version 2 of the License, or (at your option) any later version. // -//This program is distributed in the hope that it will be useful, -//but WITHOUT ANY WARRANTY; without even the implied warranty of -//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -//GNU General Public License for more details. +// Note that the GPL places important restrictions on "derived works", yet +// it does not provide a detailed definition of that term. To avoid +// misunderstandings, we consider an application to constitute a +// "derivative work" for the purpose of this license if it does any of the +// following: +// 1. Integrates source code from Notepad++. +// 2. Integrates/includes/aggregates Notepad++ into a proprietary executable +// installer, such as those produced by InstallShield. +// 3. Links to a library or executes a program that does any of the above. // -//You should have received a copy of the GNU General Public License -//along with this program; if not, write to the Free Software -//Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + #ifndef PLUGININTERFACE_H #define PLUGININTERFACE_H -#include +#ifndef SCINTILLA_H #include "Scintilla.h" +#endif //SCINTILLA_H + +#ifndef NOTEPAD_PLUS_MSGS_H #include "Notepad_plus_msgs.h" +#endif //NOTEPAD_PLUS_MSGS_H const int nbChar = 64; typedef const TCHAR * (__cdecl * PFUNCGETNAME)(); -struct NppData { +struct NppData +{ HWND _nppHandle; HWND _scintillaMainHandle; HWND _scintillaSecondHandle; @@ -38,14 +54,16 @@ typedef void (__cdecl * PBENOTIFIED)(SCNotification *); typedef LRESULT (__cdecl * PMESSAGEPROC)(UINT Message, WPARAM wParam, LPARAM lParam); -struct ShortcutKey { +struct ShortcutKey +{ bool _isCtrl; bool _isAlt; bool _isShift; UCHAR _key; }; -struct FuncItem { +struct FuncItem +{ TCHAR _itemName[nbChar]; PFUNCPLUGINCMD _pFunc; int _cmdID; @@ -62,8 +80,8 @@ extern "C" __declspec(dllexport) FuncItem * getFuncsArray(int *); extern "C" __declspec(dllexport) void beNotified(SCNotification *); extern "C" __declspec(dllexport) LRESULT messageProc(UINT Message, WPARAM wParam, LPARAM lParam); -#ifdef UNICODE +// This API return always true now, since Notepad++ isn't compiled in ANSI mode anymore extern "C" __declspec(dllexport) BOOL isUnicode(); -#endif //UNICODE -#endif //PLUGININTERFACE_H \ No newline at end of file + +#endif //PLUGININTERFACE_H diff --git a/NppPlugin/Scintilla.h b/NppPlugin/Scintilla.h index cc91216..c64443f 100644 --- a/NppPlugin/Scintilla.h +++ b/NppPlugin/Scintilla.h @@ -11,16 +11,20 @@ #ifndef SCINTILLA_H #define SCINTILLA_H -#if LCCWIN -typedef BOOL bool; +#ifdef __cplusplus +extern "C" { #endif -#if PLAT_WIN +#if defined(_WIN32) /* Return false on failure: */ -bool Scintilla_RegisterClasses(void *hInstance); -bool Scintilla_ReleaseResources(); +int Scintilla_RegisterClasses(void *hInstance); +int Scintilla_ReleaseResources(void); +#endif +int Scintilla_LinkLexers(void); + +#ifdef __cplusplus +} #endif -int Scintilla_LinkLexers(); /* Here should be placed typedefs for uptr_t, an unsigned integer type large enough to * hold a pointer and sptr_t, a signed integer large enough to hold a pointer. @@ -46,7 +50,9 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_ADDTEXT 2001 #define SCI_ADDSTYLEDTEXT 2002 #define SCI_INSERTTEXT 2003 +#define SCI_CHANGEINSERTION 2672 #define SCI_CLEARALL 2004 +#define SCI_DELETERANGE 2645 #define SCI_CLEARDOCUMENTSTYLE 2005 #define SCI_GETLENGTH 2006 #define SCI_GETCHARAT 2007 @@ -86,10 +92,15 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_SETBUFFEREDDRAW 2035 #define SCI_SETTABWIDTH 2036 #define SCI_GETTABWIDTH 2121 +#define SCI_CLEARTABSTOPS 2675 +#define SCI_ADDTABSTOP 2676 +#define SCI_GETNEXTTABSTOP 2677 #define SC_CP_UTF8 65001 -#define SC_CP_DBCS 1 #define SCI_SETCODEPAGE 2037 -#define SCI_SETUSEPALETTE 2039 +#define SC_IME_WINDOWED 0 +#define SC_IME_INLINE 1 +#define SCI_GETIMEINTERACTION 2678 +#define SCI_SETIMEINTERACTION 2679 #define MARKER_MAX 31 #define SC_MARK_CIRCLE 0 #define SC_MARK_ROUNDRECT 1 @@ -121,6 +132,8 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SC_MARK_LEFTRECT 27 #define SC_MARK_AVAILABLE 28 #define SC_MARK_UNDERLINE 29 +#define SC_MARK_RGBAIMAGE 30 +#define SC_MARK_BOOKMARK 31 #define SC_MARK_CHARACTER 10000 #define SC_MARKNUM_FOLDEREND 25 #define SC_MARKNUM_FOLDEROPENMID 26 @@ -133,6 +146,8 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_MARKERDEFINE 2040 #define SCI_MARKERSETFORE 2041 #define SCI_MARKERSETBACK 2042 +#define SCI_MARKERSETBACKSELECTED 2292 +#define SCI_MARKERENABLEHIGHLIGHT 2293 #define SCI_MARKERADD 2043 #define SCI_MARKERDELETE 2044 #define SCI_MARKERDELETEALL 2045 @@ -142,6 +157,7 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_MARKERDEFINEPIXMAP 2049 #define SCI_MARKERADDSET 2466 #define SCI_MARKERSETALPHA 2476 +#define SC_MAX_MARGIN 4 #define SC_MARGIN_SYMBOL 0 #define SC_MARGIN_NUMBER 1 #define SC_MARGIN_BACK 2 @@ -156,6 +172,8 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_GETMARGINMASKN 2245 #define SCI_SETMARGINSENSITIVEN 2246 #define SCI_GETMARGINSENSITIVEN 2247 +#define SCI_SETMARGINCURSORN 2248 +#define SCI_GETMARGINCURSORN 2249 #define STYLE_DEFAULT 32 #define STYLE_LINENUMBER 33 #define STYLE_BRACELIGHT 34 @@ -213,6 +231,14 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_STYLEGETCHANGEABLE 2492 #define SCI_STYLEGETHOTSPOT 2493 #define SCI_STYLESETCASE 2060 +#define SC_FONT_SIZE_MULTIPLIER 100 +#define SCI_STYLESETSIZEFRACTIONAL 2061 +#define SCI_STYLEGETSIZEFRACTIONAL 2062 +#define SC_WEIGHT_NORMAL 400 +#define SC_WEIGHT_SEMIBOLD 600 +#define SC_WEIGHT_BOLD 700 +#define SCI_STYLESETWEIGHT 2063 +#define SCI_STYLEGETWEIGHT 2064 #define SCI_STYLESETCHARACTERSET 2066 #define SCI_STYLESETHOTSPOT 2409 #define SCI_SETSELFORE 2067 @@ -230,6 +256,7 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_GETCARETPERIOD 2075 #define SCI_SETCARETPERIOD 2076 #define SCI_SETWORDCHARS 2077 +#define SCI_GETWORDCHARS 2646 #define SCI_BEGINUNDOACTION 2078 #define SCI_ENDUNDOACTION 2079 #define INDIC_PLAIN 0 @@ -240,7 +267,19 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define INDIC_HIDDEN 5 #define INDIC_BOX 6 #define INDIC_ROUNDBOX 7 -#define INDIC_MAX 31 +#define INDIC_STRAIGHTBOX 8 +#define INDIC_DASH 9 +#define INDIC_DOTS 10 +#define INDIC_SQUIGGLELOW 11 +#define INDIC_DOTBOX 12 +#define INDIC_SQUIGGLEPIXMAP 13 +#define INDIC_COMPOSITIONTHICK 14 +#define INDIC_COMPOSITIONTHIN 15 +#define INDIC_FULLBOX 16 +#define INDIC_TEXTFORE 17 +#define INDIC_IME 32 +#define INDIC_IME_MAX 35 +#define INDIC_MAX 35 #define INDIC_CONTAINER 8 #define INDIC0_MASK 0x20 #define INDIC1_MASK 0x40 @@ -252,12 +291,19 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_INDICGETFORE 2083 #define SCI_INDICSETUNDER 2510 #define SCI_INDICGETUNDER 2511 - -#define SCI_GETCARETLINEVISIBLEALWAYS 3095 -#define SCI_SETCARETLINEVISIBLEALWAYS 3096 - +#define SCI_INDICSETHOVERSTYLE 2680 +#define SCI_INDICGETHOVERSTYLE 2681 +#define SCI_INDICSETHOVERFORE 2682 +#define SCI_INDICGETHOVERFORE 2683 +#define SC_INDICVALUEBIT 0x1000000 +#define SC_INDICVALUEMASK 0xFFFFFF +#define SC_INDICFLAG_VALUEFORE 1 +#define SCI_INDICSETFLAGS 2684 +#define SCI_INDICGETFLAGS 2685 #define SCI_SETWHITESPACEFORE 2084 #define SCI_SETWHITESPACEBACK 2085 +#define SCI_SETWHITESPACESIZE 2086 +#define SCI_GETWHITESPACESIZE 2087 #define SCI_SETSTYLEBITS 2090 #define SCI_GETSTYLEBITS 2091 #define SCI_SETLINESTATE 2092 @@ -305,6 +351,7 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_GETLINEINDENTATION 2127 #define SCI_GETLINEINDENTPOSITION 2128 #define SCI_GETCOLUMN 2129 +#define SCI_COUNTCHARACTERS 2633 #define SCI_SETHSCROLLBAR 2130 #define SCI_GETHSCROLLBAR 2131 #define SC_IV_NONE 0 @@ -318,13 +365,13 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_GETLINEENDPOSITION 2136 #define SCI_GETCODEPAGE 2137 #define SCI_GETCARETFORE 2138 -#define SCI_GETUSEPALETTE 2139 #define SCI_GETREADONLY 2140 #define SCI_SETCURRENTPOS 2141 #define SCI_SETSELECTIONSTART 2142 #define SCI_GETSELECTIONSTART 2143 #define SCI_SETSELECTIONEND 2144 #define SCI_GETSELECTIONEND 2145 +#define SCI_SETEMPTYSELECTION 2556 #define SCI_SETPRINTMAGNIFICATION 2146 #define SCI_GETPRINTMAGNIFICATION 2147 #define SC_PRINT_NORMAL 0 @@ -334,11 +381,12 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SC_PRINT_COLOURONWHITEDEFAULTBG 4 #define SCI_SETPRINTCOLOURMODE 2148 #define SCI_GETPRINTCOLOURMODE 2149 -#define SCFIND_WHOLEWORD 2 -#define SCFIND_MATCHCASE 4 +#define SCFIND_WHOLEWORD 0x2 +#define SCFIND_MATCHCASE 0x4 #define SCFIND_WORDSTART 0x00100000 #define SCFIND_REGEXP 0x00200000 #define SCFIND_POSIX 0x00400000 +#define SCFIND_CXX11REGEX 0x00800000 #define SCI_FINDTEXT 2150 #define SCI_FORMATRANGE 2151 #define SCI_GETFIRSTVISIBLELINE 2152 @@ -359,6 +407,7 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_POSITIONFROMLINE 2167 #define SCI_LINESCROLL 2168 #define SCI_SCROLLCARET 2169 +#define SCI_SCROLLRANGE 2569 #define SCI_REPLACESEL 2170 #define SCI_SETREADONLY 2171 #define SCI_NULL 2172 @@ -383,6 +432,8 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_GETTARGETSTART 2191 #define SCI_SETTARGETEND 2192 #define SCI_GETTARGETEND 2193 +#define SCI_SETTARGETRANGE 2686 +#define SCI_GETTARGETTEXT 2687 #define SCI_REPLACETARGET 2194 #define SCI_REPLACETARGETRE 2195 #define SCI_SEARCHINTARGET 2197 @@ -392,11 +443,13 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_CALLTIPCANCEL 2201 #define SCI_CALLTIPACTIVE 2202 #define SCI_CALLTIPPOSSTART 2203 +#define SCI_CALLTIPSETPOSSTART 2214 #define SCI_CALLTIPSETHLT 2204 #define SCI_CALLTIPSETBACK 2205 #define SCI_CALLTIPSETFORE 2206 #define SCI_CALLTIPSETFOREHLT 2207 #define SCI_CALLTIPUSESTYLE 2212 +#define SCI_CALLTIPSETPOSITION 2213 #define SCI_VISIBLEFROMDOCLINE 2220 #define SCI_DOCLINEFROMVISIBLE 2221 #define SCI_WRAPCOUNT 2235 @@ -411,15 +464,29 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_SHOWLINES 2226 #define SCI_HIDELINES 2227 #define SCI_GETLINEVISIBLE 2228 +#define SCI_GETALLLINESVISIBLE 2236 #define SCI_SETFOLDEXPANDED 2229 #define SCI_GETFOLDEXPANDED 2230 #define SCI_TOGGLEFOLD 2231 +#define SC_FOLDACTION_CONTRACT 0 +#define SC_FOLDACTION_EXPAND 1 +#define SC_FOLDACTION_TOGGLE 2 +#define SCI_FOLDLINE 2237 +#define SCI_FOLDCHILDREN 2238 +#define SCI_EXPANDCHILDREN 2239 +#define SCI_FOLDALL 2662 #define SCI_ENSUREVISIBLE 2232 +#define SC_AUTOMATICFOLD_SHOW 0x0001 +#define SC_AUTOMATICFOLD_CLICK 0x0002 +#define SC_AUTOMATICFOLD_CHANGE 0x0004 +#define SCI_SETAUTOMATICFOLD 2663 +#define SCI_GETAUTOMATICFOLD 2664 #define SC_FOLDFLAG_LINEBEFORE_EXPANDED 0x0002 #define SC_FOLDFLAG_LINEBEFORE_CONTRACTED 0x0004 #define SC_FOLDFLAG_LINEAFTER_EXPANDED 0x0008 #define SC_FOLDFLAG_LINEAFTER_CONTRACTED 0x0010 #define SC_FOLDFLAG_LEVELNUMBERS 0x0040 +#define SC_FOLDFLAG_LINESTATE 0x0080 #define SCI_SETFOLDFLAGS 2233 #define SCI_ENSUREVISIBLEENFORCEPOLICY 2234 #define SCI_SETTABINDENTS 2260 @@ -434,11 +501,13 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SC_WRAP_NONE 0 #define SC_WRAP_WORD 1 #define SC_WRAP_CHAR 2 +#define SC_WRAP_WHITESPACE 3 #define SCI_SETWRAPMODE 2268 #define SCI_GETWRAPMODE 2269 #define SC_WRAPVISUALFLAG_NONE 0x0000 #define SC_WRAPVISUALFLAG_END 0x0001 #define SC_WRAPVISUALFLAG_START 0x0002 +#define SC_WRAPVISUALFLAG_MARGIN 0x0004 #define SCI_SETWRAPVISUALFLAGS 2460 #define SCI_GETWRAPVISUALFLAGS 2461 #define SC_WRAPVISUALFLAGLOC_DEFAULT 0x0000 @@ -472,6 +541,24 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_APPENDTEXT 2282 #define SCI_GETTWOPHASEDRAW 2283 #define SCI_SETTWOPHASEDRAW 2284 +#define SC_PHASES_ONE 0 +#define SC_PHASES_TWO 1 +#define SC_PHASES_MULTIPLE 2 +#define SCI_GETPHASESDRAW 2673 +#define SCI_SETPHASESDRAW 2674 +#define SC_EFF_QUALITY_MASK 0xF +#define SC_EFF_QUALITY_DEFAULT 0 +#define SC_EFF_QUALITY_NON_ANTIALIASED 1 +#define SC_EFF_QUALITY_ANTIALIASED 2 +#define SC_EFF_QUALITY_LCD_OPTIMIZED 3 +#define SCI_SETFONTQUALITY 2611 +#define SCI_GETFONTQUALITY 2612 +#define SCI_SETFIRSTVISIBLELINE 2613 +#define SC_MULTIPASTE_ONCE 0 +#define SC_MULTIPASTE_EACH 1 +#define SCI_SETMULTIPASTE 2614 +#define SCI_GETMULTIPASTE 2615 +#define SCI_GETTAG 2616 #define SCI_TARGETFROMSELECTION 2287 #define SCI_LINESJOIN 2288 #define SCI_LINESSPLIT 2289 @@ -538,7 +625,9 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_MOVECARETINSIDEVIEW 2401 #define SCI_LINELENGTH 2350 #define SCI_BRACEHIGHLIGHT 2351 +#define SCI_BRACEHIGHLIGHTINDICATOR 2498 #define SCI_BRACEBADLIGHT 2352 +#define SCI_BRACEBADLIGHTINDICATOR 2499 #define SCI_BRACEMATCH 2353 #define SCI_GETVIEWEOL 2355 #define SCI_SETVIEWEOL 2356 @@ -571,12 +660,16 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SC_STATUS_OK 0 #define SC_STATUS_FAILURE 1 #define SC_STATUS_BADALLOC 2 +#define SC_STATUS_WARN_START 1000 +#define SC_STATUS_WARN_REGEX 1001 #define SCI_SETSTATUS 2382 #define SCI_GETSTATUS 2383 #define SCI_SETMOUSEDOWNCAPTURES 2384 #define SCI_GETMOUSEDOWNCAPTURES 2385 #define SC_CURSORNORMAL -1 +#define SC_CURSORARROW 2 #define SC_CURSORWAIT 4 +#define SC_CURSORREVERSEARROW 7 #define SCI_SETCURSOR 2386 #define SCI_GETCURSOR 2387 #define SCI_SETCONTROLCHARSYMBOL 2388 @@ -616,6 +709,7 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_PARAUPEXTEND 2416 #define SCI_POSITIONBEFORE 2417 #define SCI_POSITIONAFTER 2418 +#define SCI_POSITIONRELATIVE 2670 #define SCI_COPYRANGE 2419 #define SCI_COPYTEXT 2420 #define SC_SEL_STREAM 0 @@ -644,8 +738,25 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_WORDRIGHTEND 2441 #define SCI_WORDRIGHTENDEXTEND 2442 #define SCI_SETWHITESPACECHARS 2443 +#define SCI_GETWHITESPACECHARS 2647 +#define SCI_SETPUNCTUATIONCHARS 2648 +#define SCI_GETPUNCTUATIONCHARS 2649 #define SCI_SETCHARSDEFAULT 2444 #define SCI_AUTOCGETCURRENT 2445 +#define SCI_AUTOCGETCURRENTTEXT 2610 +#define SC_CASEINSENSITIVEBEHAVIOUR_RESPECTCASE 0 +#define SC_CASEINSENSITIVEBEHAVIOUR_IGNORECASE 1 +#define SCI_AUTOCSETCASEINSENSITIVEBEHAVIOUR 2634 +#define SCI_AUTOCGETCASEINSENSITIVEBEHAVIOUR 2635 +#define SC_MULTIAUTOC_ONCE 0 +#define SC_MULTIAUTOC_EACH 1 +#define SCI_AUTOCSETMULTI 2636 +#define SCI_AUTOCGETMULTI 2637 +#define SC_ORDER_PRESORTED 0 +#define SC_ORDER_PERFORMSORT 1 +#define SC_ORDER_CUSTOM 2 +#define SCI_AUTOCSETORDER 2660 +#define SCI_AUTOCGETORDER 2661 #define SCI_ALLOCATE 2446 #define SCI_TARGETASUTF8 2447 #define SCI_SETLENGTHFORENCODE 2448 @@ -653,6 +764,9 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_FINDCOLUMN 2456 #define SCI_GETCARETSTICKY 2457 #define SCI_SETCARETSTICKY 2458 +#define SC_CARETSTICKY_OFF 0 +#define SC_CARETSTICKY_ON 1 +#define SC_CARETSTICKY_WHITESPACE 2 #define SCI_TOGGLECARETSTICKY 2459 #define SCI_SETPASTECONVERTENDINGS 2467 #define SCI_GETPASTECONVERTENDINGS 2468 @@ -681,10 +795,12 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_GETPOSITIONCACHE 2515 #define SCI_COPYALLOWLINE 2519 #define SCI_GETCHARACTERPOINTER 2520 -#define SCI_SETKEYSUNICODE 2521 -#define SCI_GETKEYSUNICODE 2522 +#define SCI_GETRANGEPOINTER 2643 +#define SCI_GETGAPPOSITION 2644 #define SCI_INDICSETALPHA 2523 #define SCI_INDICGETALPHA 2524 +#define SCI_INDICSETOUTLINEALPHA 2558 +#define SCI_INDICGETOUTLINEALPHA 2559 #define SCI_SETEXTRAASCENT 2525 #define SCI_GETEXTRAASCENT 2526 #define SCI_SETEXTRADESCENT 2527 @@ -699,6 +815,10 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_MARGINTEXTCLEARALL 2536 #define SCI_MARGINSETSTYLEOFFSET 2537 #define SCI_MARGINGETSTYLEOFFSET 2538 +#define SC_MARGINOPTION_NONE 0 +#define SC_MARGINOPTION_SUBLINESELECT 1 +#define SCI_SETMARGINOPTIONS 2539 +#define SCI_GETMARGINOPTIONS 2557 #define SCI_ANNOTATIONSETTEXT 2540 #define SCI_ANNOTATIONGETTEXT 2541 #define SCI_ANNOTATIONSETSTYLE 2542 @@ -710,24 +830,33 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define ANNOTATION_HIDDEN 0 #define ANNOTATION_STANDARD 1 #define ANNOTATION_BOXED 2 +#define ANNOTATION_INDENTED 3 #define SCI_ANNOTATIONSETVISIBLE 2548 #define SCI_ANNOTATIONGETVISIBLE 2549 #define SCI_ANNOTATIONSETSTYLEOFFSET 2550 #define SCI_ANNOTATIONGETSTYLEOFFSET 2551 +#define SCI_RELEASEALLEXTENDEDSTYLES 2552 +#define SCI_ALLOCATEEXTENDEDSTYLES 2553 #define UNDO_MAY_COALESCE 1 #define SCI_ADDUNDOACTION 2560 #define SCI_CHARPOSITIONFROMPOINT 2561 #define SCI_CHARPOSITIONFROMPOINTCLOSE 2562 +#define SCI_SETMOUSESELECTIONRECTANGULARSWITCH 2668 +#define SCI_GETMOUSESELECTIONRECTANGULARSWITCH 2669 #define SCI_SETMULTIPLESELECTION 2563 #define SCI_GETMULTIPLESELECTION 2564 #define SCI_SETADDITIONALSELECTIONTYPING 2565 #define SCI_GETADDITIONALSELECTIONTYPING 2566 #define SCI_SETADDITIONALCARETSBLINK 2567 #define SCI_GETADDITIONALCARETSBLINK 2568 +#define SCI_SETADDITIONALCARETSVISIBLE 2608 +#define SCI_GETADDITIONALCARETSVISIBLE 2609 #define SCI_GETSELECTIONS 2570 +#define SCI_GETSELECTIONEMPTY 2650 #define SCI_CLEARSELECTIONS 2571 #define SCI_SETSELECTION 2572 #define SCI_ADDSELECTION 2573 +#define SCI_DROPSELECTIONN 2671 #define SCI_SETMAINSELECTION 2574 #define SCI_GETMAINSELECTION 2575 #define SCI_SETSELECTIONNCARET 2576 @@ -765,13 +894,50 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_GETADDITIONALCARETFORE 2605 #define SCI_ROTATESELECTION 2606 #define SCI_SWAPMAINANCHORCARET 2607 +#define SCI_CHANGELEXERSTATE 2617 +#define SCI_CONTRACTEDFOLDNEXT 2618 +#define SCI_VERTICALCENTRECARET 2619 +#define SCI_MOVESELECTEDLINESUP 2620 +#define SCI_MOVESELECTEDLINESDOWN 2621 +#define SCI_SETIDENTIFIER 2622 +#define SCI_GETIDENTIFIER 2623 +#define SCI_RGBAIMAGESETWIDTH 2624 +#define SCI_RGBAIMAGESETHEIGHT 2625 +#define SCI_RGBAIMAGESETSCALE 2651 +#define SCI_MARKERDEFINERGBAIMAGE 2626 +#define SCI_REGISTERRGBAIMAGE 2627 +#define SCI_SCROLLTOSTART 2628 +#define SCI_SCROLLTOEND 2629 +#define SC_TECHNOLOGY_DEFAULT 0 +#define SC_TECHNOLOGY_DIRECTWRITE 1 +#define SC_TECHNOLOGY_DIRECTWRITERETAIN 2 +#define SC_TECHNOLOGY_DIRECTWRITEDC 3 +#define SCI_SETTECHNOLOGY 2630 +#define SCI_GETTECHNOLOGY 2631 +#define SCI_CREATELOADER 2632 +#define SCI_FINDINDICATORSHOW 2640 +#define SCI_FINDINDICATORFLASH 2641 +#define SCI_FINDINDICATORHIDE 2642 +#define SCI_VCHOMEDISPLAY 2652 +#define SCI_VCHOMEDISPLAYEXTEND 2653 +#define SCI_GETCARETLINEVISIBLEALWAYS 2654 +#define SCI_SETCARETLINEVISIBLEALWAYS 2655 +#define SC_LINE_END_TYPE_DEFAULT 0 +#define SC_LINE_END_TYPE_UNICODE 1 +#define SCI_SETLINEENDTYPESALLOWED 2656 +#define SCI_GETLINEENDTYPESALLOWED 2657 +#define SCI_GETLINEENDTYPESACTIVE 2658 +#define SCI_SETREPRESENTATION 2665 +#define SCI_GETREPRESENTATION 2666 +#define SCI_CLEARREPRESENTATION 2667 #define SCI_STARTRECORD 3001 #define SCI_STOPRECORD 3002 #define SCI_SETLEXER 4001 #define SCI_GETLEXER 4002 #define SCI_COLOURISE 4003 #define SCI_SETPROPERTY 4004 -#define KEYWORDSET_MAX 8 +// #define KEYWORDSET_MAX 8 +#define KEYWORDSET_MAX 30 #define SCI_SETKEYWORDS 4005 #define SCI_SETLEXERLANGUAGE 4006 #define SCI_LOADLEXERLIBRARY 4007 @@ -779,6 +945,25 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCI_GETPROPERTYEXPANDED 4009 #define SCI_GETPROPERTYINT 4010 #define SCI_GETSTYLEBITSNEEDED 4011 +#define SCI_GETLEXERLANGUAGE 4012 +#define SCI_PRIVATELEXERCALL 4013 +#define SCI_PROPERTYNAMES 4014 +#define SC_TYPE_BOOLEAN 0 +#define SC_TYPE_INTEGER 1 +#define SC_TYPE_STRING 2 +#define SCI_PROPERTYTYPE 4015 +#define SCI_DESCRIBEPROPERTY 4016 +#define SCI_DESCRIBEKEYWORDSETS 4017 +#define SCI_GETLINEENDTYPESSUPPORTED 4018 +#define SCI_ALLOCATESUBSTYLES 4020 +#define SCI_GETSUBSTYLESSTART 4021 +#define SCI_GETSUBSTYLESLENGTH 4022 +#define SCI_GETSTYLEFROMSUBSTYLE 4027 +#define SCI_GETPRIMARYSTYLEFROMSTYLE 4028 +#define SCI_FREESUBSTYLES 4023 +#define SCI_SETIDENTIFIERS 4024 +#define SCI_DISTANCETOSECONDARYSTYLES 4025 +#define SCI_GETSUBSTYLEBASES 4026 #define SC_MOD_INSERTTEXT 0x1 #define SC_MOD_DELETETEXT 0x2 #define SC_MOD_CHANGESTYLE 0x4 @@ -798,8 +983,15 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SC_MOD_CHANGEMARGIN 0x10000 #define SC_MOD_CHANGEANNOTATION 0x20000 #define SC_MOD_CONTAINER 0x40000 -#define SC_MODEVENTMASKALL 0x7FFFF +#define SC_MOD_LEXERSTATE 0x80000 +#define SC_MOD_INSERTCHECK 0x100000 +#define SC_MOD_CHANGETABSTOPS 0x200000 +#define SC_MODEVENTMASKALL 0x3FFFFF #define SC_SEARCHRESULT_LINEBUFFERMAXLENGTH 1024 +#define SC_UPDATE_CONTENT 0x1 +#define SC_UPDATE_SELECTION 0x2 +#define SC_UPDATE_V_SCROLL 0x4 +#define SC_UPDATE_H_SCROLL 0x8 #define SCEN_CHANGE 768 #define SCEN_SETFOCUS 512 #define SCEN_KILLFOCUS 256 @@ -828,6 +1020,7 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCMOD_CTRL 2 #define SCMOD_ALT 4 #define SCMOD_SUPER 8 +#define SCMOD_META 16 #define SCN_STYLENEEDED 2000 #define SCN_CHARADDED 2001 #define SCN_SAVEPOINTREACHED 2002 @@ -854,15 +1047,18 @@ typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, #define SCN_INDICATORRELEASE 2024 #define SCN_AUTOCCANCELLED 2025 #define SCN_AUTOCCHARDELETED 2026 - +#define SCN_HOTSPOTRELEASECLICK 2027 +#define SCN_FOCUSIN 2028 +#define SCN_FOCUSOUT 2029 #define SCN_SCROLLED 2080 +#define SCN_FOLDINGSTATECHANGED 2081 /* --Autogenerated -- end of section automatically generated from Scintilla.iface */ /* These structures are defined to be exactly the same shape as the Win32 * CHARRANGE, TEXTRANGE, FINDTEXTEX, FORMATRANGE, and NMHDR structs. * So older code that treats Scintilla as a RichEdit will work. */ -#ifdef SCI_NAMESPACE +#if defined(__cplusplus) && defined(SCI_NAMESPACE) namespace Scintilla { #endif @@ -878,7 +1074,7 @@ struct Sci_TextRange { struct Sci_TextToFind { struct Sci_CharacterRange chrg; - char *lpstrText; + const char *lpstrText; struct Sci_CharacterRange chrgText; }; @@ -886,23 +1082,28 @@ struct Sci_TextToFind { #define TextRange Sci_TextRange #define TextToFind Sci_TextToFind -#ifdef PLATFORM_H +typedef void *Sci_SurfaceID; + +struct Sci_Rectangle { + int left; + int top; + int right; + int bottom; +}; /* This structure is used in printing and requires some of the graphics types * from Platform.h. Not needed by most client code. */ struct Sci_RangeToFormat { - SurfaceID hdc; - SurfaceID hdcTarget; - PRectangle rc; - PRectangle rcPage; - Sci_CharacterRange chrg; + Sci_SurfaceID hdc; + Sci_SurfaceID hdcTarget; + struct Sci_Rectangle rc; + struct Sci_Rectangle rcPage; + struct Sci_CharacterRange chrg; }; #define RangeToFormat Sci_RangeToFormat -#endif - struct Sci_NotifyHeader { /* Compatible with Windows NMHDR. * hwndFrom is really an environment specific window handle or pointer @@ -916,11 +1117,22 @@ struct Sci_NotifyHeader { struct SCNotification { struct Sci_NotifyHeader nmhdr; - int position; /* SCN_STYLENEEDED, SCN_MODIFIED, SCN_DWELLSTART, SCN_DWELLEND */ + int position; + /* SCN_STYLENEEDED, SCN_DOUBLECLICK, SCN_MODIFIED, SCN_MARGINCLICK, */ + /* SCN_NEEDSHOWN, SCN_DWELLSTART, SCN_DWELLEND, SCN_CALLTIPCLICK, */ + /* SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK, SCN_HOTSPOTRELEASECLICK, */ + /* SCN_INDICATORCLICK, SCN_INDICATORRELEASE, */ + /* SCN_USERLISTSELECTION, SCN_AUTOCSELECTION */ + int ch; /* SCN_CHARADDED, SCN_KEY */ - int modifiers; /* SCN_KEY */ + int modifiers; + /* SCN_KEY, SCN_DOUBLECLICK, SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK, */ + /* SCN_HOTSPOTRELEASECLICK, SCN_INDICATORCLICK, SCN_INDICATORRELEASE, */ + int modificationType; /* SCN_MODIFIED */ - const char *text; /* SCN_MODIFIED, SCN_USERLISTSELECTION, SCN_AUTOCSELECTION */ + const char *text; + /* SCN_MODIFIED, SCN_USERLISTSELECTION, SCN_AUTOCSELECTION, SCN_URIDROPPED */ + int length; /* SCN_MODIFIED */ int linesAdded; /* SCN_MODIFIED */ int message; /* SCN_MACRORECORD */ @@ -934,7 +1146,8 @@ struct SCNotification { int x; /* SCN_DWELLSTART, SCN_DWELLEND */ int y; /* SCN_DWELLSTART, SCN_DWELLEND */ int token; /* SCN_MODIFIED with SC_MOD_CONTAINER */ - int annotationLinesAdded; /* SC_MOD_CHANGEANNOTATION */ + int annotationLinesAdded; /* SCN_MODIFIED with SC_MOD_CHANGEANNOTATION */ + int updated; /* SCN_UPDATEUI */ }; struct SearchResultMarking { @@ -947,8 +1160,18 @@ struct SearchResultMarkings { SearchResultMarking *_markings; }; -#ifdef SCI_NAMESPACE +#if defined(__cplusplus) && defined(SCI_NAMESPACE) } #endif -#endif \ No newline at end of file +#ifdef INCLUDE_DEPRECATED_FEATURES + +#define SC_CP_DBCS 1 +#define SCI_SETUSEPALETTE 2039 +#define SCI_GETUSEPALETTE 2139 +#define SCI_SETKEYSUNICODE 2521 +#define SCI_GETKEYSUNICODE 2522 + +#endif + +#endif diff --git a/NppPlugin/menuCmdID.h b/NppPlugin/menuCmdID.h index c216f36..942e837 100644 --- a/NppPlugin/menuCmdID.h +++ b/NppPlugin/menuCmdID.h @@ -1,307 +1,522 @@ -//this file is part of notepad++ -//Copyright (C)2003 Don HO +// This file is part of Notepad++ project +// Copyright (C)2003 Don HO // -//This program is free software; you can redistribute it and/or -//modify it under the terms of the GNU General Public License -//as published by the Free Software Foundation; either -//version 2 of the License, or (at your option) any later version. +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either +// version 2 of the License, or (at your option) any later version. // -//This program is distributed in the hope that it will be useful, -//but WITHOUT ANY WARRANTY; without even the implied warranty of -//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -//GNU General Public License for more details. +// Note that the GPL places important restrictions on "derived works", yet +// it does not provide a detailed definition of that term. To avoid +// misunderstandings, we consider an application to constitute a +// "derivative work" for the purpose of this license if it does any of the +// following: +// 1. Integrates source code from Notepad++. +// 2. Integrates/includes/aggregates Notepad++ into a proprietary executable +// installer, such as those produced by InstallShield. +// 3. Links to a library or executes a program that does any of the above. // -//You should have received a copy of the GNU General Public License -//along with this program; if not, write to the Free Software -//Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + #ifndef MENUCMDID_H #define MENUCMDID_H -#define IDM 40000 - -#define IDM_FILE (IDM + 1000) - #define IDM_FILE_NEW (IDM_FILE + 1) - #define IDM_FILE_OPEN (IDM_FILE + 2) - #define IDM_FILE_CLOSE (IDM_FILE + 3) - #define IDM_FILE_CLOSEALL (IDM_FILE + 4) - #define IDM_FILE_CLOSEALL_BUT_CURRENT (IDM_FILE + 5) - #define IDM_FILE_SAVE (IDM_FILE + 6) - #define IDM_FILE_SAVEALL (IDM_FILE + 7) - #define IDM_FILE_SAVEAS (IDM_FILE + 8) - #define IDM_FILE_ASIAN_LANG (IDM_FILE + 9) - #define IDM_FILE_PRINT (IDM_FILE + 10) - #define IDM_FILE_PRINTNOW 1001 - #define IDM_FILE_EXIT (IDM_FILE + 11) - #define IDM_FILE_LOADSESSION (IDM_FILE + 12) - #define IDM_FILE_SAVESESSION (IDM_FILE + 13) - #define IDM_FILE_RELOAD (IDM_FILE + 14) - #define IDM_FILE_SAVECOPYAS (IDM_FILE + 15) - #define IDM_FILE_DELETE (IDM_FILE + 16) - #define IDM_FILE_RENAME (IDM_FILE + 17) - - // A mettre � jour si on ajoute nouveau menu item dans le menu "File" - #define IDM_FILEMENU_LASTONE IDM_FILE_RENAME +#define IDM 40000 + +#define IDM_FILE (IDM + 1000) +// IMPORTANT: If list below is modified, you have to change the value of IDM_FILEMENU_LASTONE and IDM_FILEMENU_EXISTCMDPOSITION + #define IDM_FILE_NEW (IDM_FILE + 1) + #define IDM_FILE_OPEN (IDM_FILE + 2) + #define IDM_FILE_CLOSE (IDM_FILE + 3) + #define IDM_FILE_CLOSEALL (IDM_FILE + 4) + #define IDM_FILE_CLOSEALL_BUT_CURRENT (IDM_FILE + 5) + #define IDM_FILE_SAVE (IDM_FILE + 6) + #define IDM_FILE_SAVEALL (IDM_FILE + 7) + #define IDM_FILE_SAVEAS (IDM_FILE + 8) + #define IDM_FILE_CLOSEALL_TOLEFT (IDM_FILE + 9) + #define IDM_FILE_PRINT (IDM_FILE + 10) + #define IDM_FILE_PRINTNOW 1001 + #define IDM_FILE_EXIT (IDM_FILE + 11) + #define IDM_FILE_LOADSESSION (IDM_FILE + 12) + #define IDM_FILE_SAVESESSION (IDM_FILE + 13) + #define IDM_FILE_RELOAD (IDM_FILE + 14) + #define IDM_FILE_SAVECOPYAS (IDM_FILE + 15) + #define IDM_FILE_DELETE (IDM_FILE + 16) + #define IDM_FILE_RENAME (IDM_FILE + 17) + #define IDM_FILE_CLOSEALL_TORIGHT (IDM_FILE + 18) + #define IDM_FILE_OPEN_FOLDER (IDM_FILE + 19) + #define IDM_FILE_OPEN_CMD (IDM_FILE + 20) + #define IDM_FILE_RESTORELASTCLOSEDFILE (IDM_FILE + 21) + #define IDM_FILE_OPENFOLDERASWORSPACE (IDM_FILE + 22) +// IMPORTANT: If list above is modified, you have to change the following values: -#define IDM_EDIT (IDM + 2000) - #define IDM_EDIT_CUT (IDM_EDIT + 1) - #define IDM_EDIT_COPY (IDM_EDIT + 2) - #define IDM_EDIT_UNDO (IDM_EDIT + 3) - #define IDM_EDIT_REDO (IDM_EDIT + 4) - #define IDM_EDIT_PASTE (IDM_EDIT + 5) - #define IDM_EDIT_DELETE (IDM_EDIT + 6) - #define IDM_EDIT_SELECTALL (IDM_EDIT + 7) - - #define IDM_EDIT_INS_TAB (IDM_EDIT + 8) - #define IDM_EDIT_RMV_TAB (IDM_EDIT + 9) - #define IDM_EDIT_DUP_LINE (IDM_EDIT + 10) - #define IDM_EDIT_TRANSPOSE_LINE (IDM_EDIT + 11) - #define IDM_EDIT_SPLIT_LINES (IDM_EDIT + 12) - #define IDM_EDIT_JOIN_LINES (IDM_EDIT + 13) - #define IDM_EDIT_LINE_UP (IDM_EDIT + 14) - #define IDM_EDIT_LINE_DOWN (IDM_EDIT + 15) - #define IDM_EDIT_UPPERCASE (IDM_EDIT + 16) - #define IDM_EDIT_LOWERCASE (IDM_EDIT + 17) - - #define IDM_EDIT_BLOCK_COMMENT (IDM_EDIT + 22) - #define IDM_EDIT_STREAM_COMMENT (IDM_EDIT + 23) - #define IDM_EDIT_TRIMTRAILING (IDM_EDIT + 24) - - #define IDM_EDIT_RTL (IDM_EDIT+26) - #define IDM_EDIT_LTR (IDM_EDIT+27) - #define IDM_EDIT_SETREADONLY (IDM_EDIT+28) - #define IDM_EDIT_FULLPATHTOCLIP (IDM_EDIT+29) - #define IDM_EDIT_FILENAMETOCLIP (IDM_EDIT+30) - #define IDM_EDIT_CURRENTDIRTOCLIP (IDM_EDIT+31) - - #define IDM_EDIT_CLEARREADONLY (IDM_EDIT+33) - #define IDM_EDIT_COLUMNMODE (IDM_EDIT+34) - #define IDM_EDIT_BLOCK_COMMENT_SET (IDM_EDIT+35) - #define IDM_EDIT_BLOCK_UNCOMMENT (IDM_EDIT+36) - - #define IDM_EDIT_AUTOCOMPLETE (50000+0) - #define IDM_EDIT_AUTOCOMPLETE_CURRENTFILE (50000+1) - #define IDM_EDIT_FUNCCALLTIP (50000+2) - - //Belong to MENU FILE - #define IDM_OPEN_ALL_RECENT_FILE (IDM_EDIT + 40) - #define IDM_CLEAN_RECENT_FILE_LIST (IDM_EDIT + 41) - -#define IDM_SEARCH (IDM + 3000) - - #define IDM_SEARCH_FIND (IDM_SEARCH + 1) - #define IDM_SEARCH_FINDNEXT (IDM_SEARCH + 2) - #define IDM_SEARCH_REPLACE (IDM_SEARCH + 3) - #define IDM_SEARCH_GOTOLINE (IDM_SEARCH + 4) - #define IDM_SEARCH_TOGGLE_BOOKMARK (IDM_SEARCH + 5) - #define IDM_SEARCH_NEXT_BOOKMARK (IDM_SEARCH + 6) - #define IDM_SEARCH_PREV_BOOKMARK (IDM_SEARCH + 7) - #define IDM_SEARCH_CLEAR_BOOKMARKS (IDM_SEARCH + 8) - #define IDM_SEARCH_GOTOMATCHINGBRACE (IDM_SEARCH + 9) - #define IDM_SEARCH_FINDPREV (IDM_SEARCH + 10) - #define IDM_SEARCH_FINDINCREMENT (IDM_SEARCH + 11) - #define IDM_SEARCH_FINDINFILES (IDM_SEARCH + 13) - #define IDM_SEARCH_VOLATILE_FINDNEXT (IDM_SEARCH + 14) - #define IDM_SEARCH_VOLATILE_FINDPREV (IDM_SEARCH + 15) - #define IDM_SEARCH_CUTMARKEDLINES (IDM_SEARCH + 18) - #define IDM_SEARCH_COPYMARKEDLINES (IDM_SEARCH + 19) - #define IDM_SEARCH_PASTEMARKEDLINES (IDM_SEARCH + 20) - #define IDM_SEARCH_DELETEMARKEDLINES (IDM_SEARCH + 21) - #define IDM_SEARCH_MARKALLEXT1 (IDM_SEARCH + 22) - #define IDM_SEARCH_UNMARKALLEXT1 (IDM_SEARCH + 23) - #define IDM_SEARCH_MARKALLEXT2 (IDM_SEARCH + 24) - #define IDM_SEARCH_UNMARKALLEXT2 (IDM_SEARCH + 25) - #define IDM_SEARCH_MARKALLEXT3 (IDM_SEARCH + 26) - #define IDM_SEARCH_UNMARKALLEXT3 (IDM_SEARCH + 27) - #define IDM_SEARCH_MARKALLEXT4 (IDM_SEARCH + 28) - #define IDM_SEARCH_UNMARKALLEXT4 (IDM_SEARCH + 29) - #define IDM_SEARCH_MARKALLEXT5 (IDM_SEARCH + 30) - #define IDM_SEARCH_UNMARKALLEXT5 (IDM_SEARCH + 31) - #define IDM_SEARCH_CLEARALLMARKS (IDM_SEARCH + 32) - -#define IDM_VIEW (IDM + 4000) - //#define IDM_VIEW_TOOLBAR_HIDE (IDM_VIEW + 1) - #define IDM_VIEW_TOOLBAR_REDUCE (IDM_VIEW + 2) - #define IDM_VIEW_TOOLBAR_ENLARGE (IDM_VIEW + 3) - #define IDM_VIEW_TOOLBAR_STANDARD (IDM_VIEW + 4) - #define IDM_VIEW_REDUCETABBAR (IDM_VIEW + 5) - #define IDM_VIEW_LOCKTABBAR (IDM_VIEW + 6) - #define IDM_VIEW_DRAWTABBAR_TOPBAR (IDM_VIEW + 7) - #define IDM_VIEW_DRAWTABBAR_INACIVETAB (IDM_VIEW + 8) - #define IDM_VIEW_POSTIT (IDM_VIEW + 9) - #define IDM_VIEW_TOGGLE_FOLDALL (IDM_VIEW + 10) - #define IDM_VIEW_USER_DLG (IDM_VIEW + 11) - #define IDM_VIEW_LINENUMBER (IDM_VIEW + 12) - #define IDM_VIEW_SYMBOLMARGIN (IDM_VIEW + 13) - #define IDM_VIEW_FOLDERMAGIN (IDM_VIEW + 14) - #define IDM_VIEW_FOLDERMAGIN_SIMPLE (IDM_VIEW + 15) - #define IDM_VIEW_FOLDERMAGIN_ARROW (IDM_VIEW + 16) - #define IDM_VIEW_FOLDERMAGIN_CIRCLE (IDM_VIEW + 17) - #define IDM_VIEW_FOLDERMAGIN_BOX (IDM_VIEW + 18) - #define IDM_VIEW_ALL_CHARACTERS (IDM_VIEW + 19) - #define IDM_VIEW_INDENT_GUIDE (IDM_VIEW + 20) - #define IDM_VIEW_CURLINE_HILITING (IDM_VIEW + 21) - #define IDM_VIEW_WRAP (IDM_VIEW + 22) - #define IDM_VIEW_ZOOMIN (IDM_VIEW + 23) - #define IDM_VIEW_ZOOMOUT (IDM_VIEW + 24) - #define IDM_VIEW_TAB_SPACE (IDM_VIEW + 25) - #define IDM_VIEW_EOL (IDM_VIEW + 26) - #define IDM_VIEW_EDGELINE (IDM_VIEW + 27) - #define IDM_VIEW_EDGEBACKGROUND (IDM_VIEW + 28) - #define IDM_VIEW_TOGGLE_UNFOLDALL (IDM_VIEW + 29) - #define IDM_VIEW_FOLD_CURRENT (IDM_VIEW + 30) - #define IDM_VIEW_UNFOLD_CURRENT (IDM_VIEW + 31) - #define IDM_VIEW_FULLSCREENTOGGLE (IDM_VIEW + 32) - #define IDM_VIEW_ZOOMRESTORE (IDM_VIEW + 33) - #define IDM_VIEW_ALWAYSONTOP (IDM_VIEW + 34) - #define IDM_VIEW_SYNSCROLLV (IDM_VIEW + 35) - #define IDM_VIEW_SYNSCROLLH (IDM_VIEW + 36) - #define IDM_VIEW_EDGENONE (IDM_VIEW + 37) - #define IDM_VIEW_DRAWTABBAR_CLOSEBOTTUN (IDM_VIEW + 38) - #define IDM_VIEW_DRAWTABBAR_DBCLK2CLOSE (IDM_VIEW + 39) - #define IDM_VIEW_REFRESHTABAR (IDM_VIEW + 40) - #define IDM_VIEW_WRAP_SYMBOL (IDM_VIEW + 41) - #define IDM_VIEW_HIDELINES (IDM_VIEW + 42) - #define IDM_VIEW_DRAWTABBAR_VERTICAL (IDM_VIEW + 43) - #define IDM_VIEW_DRAWTABBAR_MULTILINE (IDM_VIEW + 44) - #define IDM_VIEW_DOCCHANGEMARGIN (IDM_VIEW + 45) - +// To be updated if new menu item(s) is (are) added in menu "File" + #define IDM_FILEMENU_LASTONE IDM_FILE_OPENFOLDERASWORSPACE - #define IDM_VIEW_FOLD (IDM_VIEW + 50) - #define IDM_VIEW_FOLD_1 (IDM_VIEW_FOLD + 1) - #define IDM_VIEW_FOLD_2 (IDM_VIEW_FOLD + 2) - #define IDM_VIEW_FOLD_3 (IDM_VIEW_FOLD + 3) - #define IDM_VIEW_FOLD_4 (IDM_VIEW_FOLD + 4) - #define IDM_VIEW_FOLD_5 (IDM_VIEW_FOLD + 5) - #define IDM_VIEW_FOLD_6 (IDM_VIEW_FOLD + 6) - #define IDM_VIEW_FOLD_7 (IDM_VIEW_FOLD + 7) - #define IDM_VIEW_FOLD_8 (IDM_VIEW_FOLD + 8) - - #define IDM_VIEW_UNFOLD (IDM_VIEW + 60) - #define IDM_VIEW_UNFOLD_1 (IDM_VIEW_UNFOLD + 1) - #define IDM_VIEW_UNFOLD_2 (IDM_VIEW_UNFOLD + 2) - #define IDM_VIEW_UNFOLD_3 (IDM_VIEW_UNFOLD + 3) - #define IDM_VIEW_UNFOLD_4 (IDM_VIEW_UNFOLD + 4) - #define IDM_VIEW_UNFOLD_5 (IDM_VIEW_UNFOLD + 5) - #define IDM_VIEW_UNFOLD_6 (IDM_VIEW_UNFOLD + 6) - #define IDM_VIEW_UNFOLD_7 (IDM_VIEW_UNFOLD + 7) - #define IDM_VIEW_UNFOLD_8 (IDM_VIEW_UNFOLD + 8) - - - #define IDM_VIEW_GOTO_ANOTHER_VIEW 10001 - #define IDM_VIEW_CLONE_TO_ANOTHER_VIEW 10002 - #define IDM_VIEW_GOTO_NEW_INSTANCE 10003 - #define IDM_VIEW_LOAD_IN_NEW_INSTANCE 10004 +// 0 based position of command "Exit" including the bars in the file menu +// and without counting "Recent files history" items - #define IDM_VIEW_SWITCHTO_OTHER_VIEW (IDM_VIEW + 72) - - -#define IDM_FORMAT (IDM + 5000) - #define IDM_FORMAT_TODOS (IDM_FORMAT + 1) - #define IDM_FORMAT_TOUNIX (IDM_FORMAT + 2) - #define IDM_FORMAT_TOMAC (IDM_FORMAT + 3) - #define IDM_FORMAT_ANSI (IDM_FORMAT + 4) - #define IDM_FORMAT_UTF_8 (IDM_FORMAT + 5) - #define IDM_FORMAT_UCS_2BE (IDM_FORMAT + 6) - #define IDM_FORMAT_UCS_2LE (IDM_FORMAT + 7) - #define IDM_FORMAT_AS_UTF_8 (IDM_FORMAT + 8) - #define IDM_FORMAT_CONV2_ANSI (IDM_FORMAT + 9) - #define IDM_FORMAT_CONV2_AS_UTF_8 (IDM_FORMAT + 10) - #define IDM_FORMAT_CONV2_UTF_8 (IDM_FORMAT + 11) - #define IDM_FORMAT_CONV2_UCS_2BE (IDM_FORMAT + 12) - #define IDM_FORMAT_CONV2_UCS_2LE (IDM_FORMAT + 13) - -#define IDM_LANG (IDM + 6000) - #define IDM_LANGSTYLE_CONFIG_DLG (IDM_LANG + 1) - #define IDM_LANG_C (IDM_LANG + 2) - #define IDM_LANG_CPP (IDM_LANG + 3) - #define IDM_LANG_JAVA (IDM_LANG + 4) - #define IDM_LANG_HTML (IDM_LANG + 5) - #define IDM_LANG_XML (IDM_LANG + 6) - #define IDM_LANG_JS (IDM_LANG + 7) - #define IDM_LANG_PHP (IDM_LANG + 8) - #define IDM_LANG_ASP (IDM_LANG + 9) - #define IDM_LANG_CSS (IDM_LANG + 10) - #define IDM_LANG_PASCAL (IDM_LANG + 11) - #define IDM_LANG_PYTHON (IDM_LANG + 12) - #define IDM_LANG_PERL (IDM_LANG + 13) - #define IDM_LANG_OBJC (IDM_LANG + 14) - #define IDM_LANG_ASCII (IDM_LANG + 15) - #define IDM_LANG_TEXT (IDM_LANG + 16) - #define IDM_LANG_RC (IDM_LANG + 17) - #define IDM_LANG_MAKEFILE (IDM_LANG + 18) - #define IDM_LANG_INI (IDM_LANG + 19) - #define IDM_LANG_SQL (IDM_LANG + 20) - #define IDM_LANG_VB (IDM_LANG + 21) - #define IDM_LANG_BATCH (IDM_LANG + 22) - #define IDM_LANG_CS (IDM_LANG + 23) - #define IDM_LANG_LUA (IDM_LANG + 24) - #define IDM_LANG_TEX (IDM_LANG + 25) - #define IDM_LANG_FORTRAN (IDM_LANG + 26) - #define IDM_LANG_SH (IDM_LANG + 27) - #define IDM_LANG_FLASH (IDM_LANG + 28) - #define IDM_LANG_NSIS (IDM_LANG + 29) - #define IDM_LANG_TCL (IDM_LANG + 30) - #define IDM_LANG_LISP (IDM_LANG + 31) - #define IDM_LANG_SCHEME (IDM_LANG + 32) - #define IDM_LANG_ASM (IDM_LANG + 33) - #define IDM_LANG_DIFF (IDM_LANG + 34) - #define IDM_LANG_PROPS (IDM_LANG + 35) - #define IDM_LANG_PS (IDM_LANG + 36) - #define IDM_LANG_RUBY (IDM_LANG + 37) - #define IDM_LANG_SMALLTALK (IDM_LANG + 38) - #define IDM_LANG_VHDL (IDM_LANG + 39) - #define IDM_LANG_CAML (IDM_LANG + 40) - #define IDM_LANG_KIX (IDM_LANG + 41) - #define IDM_LANG_ADA (IDM_LANG + 42) - #define IDM_LANG_VERILOG (IDM_LANG + 43) - #define IDM_LANG_AU3 (IDM_LANG + 44) - #define IDM_LANG_MATLAB (IDM_LANG + 45) - #define IDM_LANG_HASKELL (IDM_LANG + 46) - #define IDM_LANG_INNO (IDM_LANG + 47) - #define IDM_LANG_CMAKE (IDM_LANG + 48) - #define IDM_LANG_YAML (IDM_LANG + 49) - - #define IDM_LANG_EXTERNAL (IDM_LANG + 50) - #define IDM_LANG_EXTERNAL_LIMIT (IDM_LANG + 79) +// 0 New +// 1 Open... +// 2 Open Containing Folder +// 3 Open Folder as Workspace +// 4 Reload from Disk +// 5 Save +// 6 Save As... +// 7 Save a Copy As... +// 8 Save All +// 9 Rename... +//10 Close +//11 Close All +//12 Close More +//13 Move to Recycle Bin +//14 -------- +//15 Load Session... +//16 Save Session... +//17 -------- +//18 Print... +//19 Print Now +//20 -------- +//21 Exit + #define IDM_FILEMENU_EXISTCMDPOSITION 21 - #define IDM_LANG_USER (IDM_LANG + 80) //46080 - #define IDM_LANG_USER_LIMIT (IDM_LANG + 110) //46110 - + +#define IDM_EDIT (IDM + 2000) + #define IDM_EDIT_CUT (IDM_EDIT + 1) + #define IDM_EDIT_COPY (IDM_EDIT + 2) + #define IDM_EDIT_UNDO (IDM_EDIT + 3) + #define IDM_EDIT_REDO (IDM_EDIT + 4) + #define IDM_EDIT_PASTE (IDM_EDIT + 5) + #define IDM_EDIT_DELETE (IDM_EDIT + 6) + #define IDM_EDIT_SELECTALL (IDM_EDIT + 7) + #define IDM_EDIT_BEGINENDSELECT (IDM_EDIT + 20) -#define IDM_ABOUT (IDM + 7000) - #define IDM_HOMESWEETHOME (IDM_ABOUT + 1) - #define IDM_PROJECTPAGE (IDM_ABOUT + 2) - #define IDM_ONLINEHELP (IDM_ABOUT + 3) - #define IDM_FORUM (IDM_ABOUT + 4) - #define IDM_PLUGINSHOME (IDM_ABOUT + 5) - #define IDM_UPDATE_NPP (IDM_ABOUT + 6) - #define IDM_WIKIFAQ (IDM_ABOUT + 7) - #define IDM_HELP (IDM_ABOUT + 8) - - -#define IDM_SETTING (IDM + 8000) - #define IDM_SETTING_TAB_SIZE (IDM_SETTING + 1) - #define IDM_SETTING_TAB_REPLCESPACE (IDM_SETTING + 2) - #define IDM_SETTING_HISTORY_SIZE (IDM_SETTING + 3) - #define IDM_SETTING_EDGE_SIZE (IDM_SETTING + 4) - #define IDM_SETTING_IMPORTPLUGIN (IDM_SETTING + 5) - #define IDM_SETTING_IMPORTSTYLETHEMS (IDM_SETTING + 6) - - #define IDM_SETTING_TRAYICON (IDM_SETTING + 8) - #define IDM_SETTING_SHORTCUT_MAPPER (IDM_SETTING + 9) - #define IDM_SETTING_REMEMBER_LAST_SESSION (IDM_SETTING + 10) - #define IDM_SETTING_PREFERECE (IDM_SETTING + 11) - - #define IDM_SETTING_AUTOCNBCHAR (IDM_SETTING + 15) + #define IDM_EDIT_INS_TAB (IDM_EDIT + 8) + #define IDM_EDIT_RMV_TAB (IDM_EDIT + 9) + #define IDM_EDIT_DUP_LINE (IDM_EDIT + 10) + #define IDM_EDIT_TRANSPOSE_LINE (IDM_EDIT + 11) + #define IDM_EDIT_SPLIT_LINES (IDM_EDIT + 12) + #define IDM_EDIT_JOIN_LINES (IDM_EDIT + 13) + #define IDM_EDIT_LINE_UP (IDM_EDIT + 14) + #define IDM_EDIT_LINE_DOWN (IDM_EDIT + 15) + #define IDM_EDIT_UPPERCASE (IDM_EDIT + 16) + #define IDM_EDIT_LOWERCASE (IDM_EDIT + 17) + #define IDM_EDIT_REMOVEEMPTYLINES (IDM_EDIT + 55) + #define IDM_EDIT_REMOVEEMPTYLINESWITHBLANK (IDM_EDIT + 56) + #define IDM_EDIT_BLANKLINEABOVECURRENT (IDM_EDIT + 57) + #define IDM_EDIT_BLANKLINEBELOWCURRENT (IDM_EDIT + 58) + #define IDM_EDIT_SORTLINES_LEXICOGRAPHIC_ASCENDING (IDM_EDIT + 59) + #define IDM_EDIT_SORTLINES_LEXICOGRAPHIC_DESCENDING (IDM_EDIT + 60) + #define IDM_EDIT_SORTLINES_INTEGER_ASCENDING (IDM_EDIT + 61) + #define IDM_EDIT_SORTLINES_INTEGER_DESCENDING (IDM_EDIT + 62) + #define IDM_EDIT_SORTLINES_DECIMALCOMMA_ASCENDING (IDM_EDIT + 63) + #define IDM_EDIT_SORTLINES_DECIMALCOMMA_DESCENDING (IDM_EDIT + 64) + #define IDM_EDIT_SORTLINES_DECIMALDOT_ASCENDING (IDM_EDIT + 65) + #define IDM_EDIT_SORTLINES_DECIMALDOT_DESCENDING (IDM_EDIT + 66) + +// Menu macro + #define IDM_MACRO_STARTRECORDINGMACRO (IDM_EDIT + 18) + #define IDM_MACRO_STOPRECORDINGMACRO (IDM_EDIT + 19) + #define IDM_MACRO_PLAYBACKRECORDEDMACRO (IDM_EDIT + 21) +//----------- + + #define IDM_EDIT_BLOCK_COMMENT (IDM_EDIT + 22) + #define IDM_EDIT_STREAM_COMMENT (IDM_EDIT + 23) + #define IDM_EDIT_TRIMTRAILING (IDM_EDIT + 24) + #define IDM_EDIT_TRIMLINEHEAD (IDM_EDIT + 42) + #define IDM_EDIT_TRIM_BOTH (IDM_EDIT + 43) + #define IDM_EDIT_EOL2WS (IDM_EDIT + 44) + #define IDM_EDIT_TRIMALL (IDM_EDIT + 45) + #define IDM_EDIT_TAB2SW (IDM_EDIT + 46) + #define IDM_EDIT_SW2TAB_LEADING (IDM_EDIT + 53) + #define IDM_EDIT_SW2TAB_ALL (IDM_EDIT + 54) + #define IDM_EDIT_STREAM_UNCOMMENT (IDM_EDIT + 47) + +// Menu macro + #define IDM_MACRO_SAVECURRENTMACRO (IDM_EDIT + 25) +//----------- + + #define IDM_EDIT_RTL (IDM_EDIT + 26) + #define IDM_EDIT_LTR (IDM_EDIT + 27) + #define IDM_EDIT_SETREADONLY (IDM_EDIT + 28) + #define IDM_EDIT_FULLPATHTOCLIP (IDM_EDIT + 29) + #define IDM_EDIT_FILENAMETOCLIP (IDM_EDIT + 30) + #define IDM_EDIT_CURRENTDIRTOCLIP (IDM_EDIT + 31) // Menu macro - #define IDM_MACRO_STARTRECORDINGMACRO (IDM_EDIT + 18) - #define IDM_MACRO_STOPRECORDINGMACRO (IDM_EDIT + 19) - #define IDM_MACRO_PLAYBACKRECORDEDMACRO (IDM_EDIT + 21) - #define IDM_MACRO_SAVECURRENTMACRO (IDM_EDIT + 25) - #define IDM_MACRO_RUNMULTIMACRODLG (IDM_EDIT+32) - -#define IDM_EXECUTE (IDM + 9000) + #define IDM_MACRO_RUNMULTIMACRODLG (IDM_EDIT + 32) +//----------- + + #define IDM_EDIT_CLEARREADONLY (IDM_EDIT + 33) + #define IDM_EDIT_COLUMNMODE (IDM_EDIT + 34) + #define IDM_EDIT_BLOCK_COMMENT_SET (IDM_EDIT + 35) + #define IDM_EDIT_BLOCK_UNCOMMENT (IDM_EDIT + 36) + #define IDM_EDIT_COLUMNMODETIP (IDM_EDIT + 37) + #define IDM_EDIT_PASTE_AS_HTML (IDM_EDIT + 38) + #define IDM_EDIT_PASTE_AS_RTF (IDM_EDIT + 39) + #define IDM_EDIT_COPY_BINARY (IDM_EDIT + 48) + #define IDM_EDIT_CUT_BINARY (IDM_EDIT + 49) + #define IDM_EDIT_PASTE_BINARY (IDM_EDIT + 50) + #define IDM_EDIT_CHAR_PANEL (IDM_EDIT + 51) + #define IDM_EDIT_CLIPBOARDHISTORY_PANEL (IDM_EDIT + 52) + + #define IDM_EDIT_AUTOCOMPLETE (50000 + 0) + #define IDM_EDIT_AUTOCOMPLETE_CURRENTFILE (50000 + 1) + #define IDM_EDIT_FUNCCALLTIP (50000 + 2) + #define IDM_EDIT_AUTOCOMPLETE_PATH (50000 + 6) + + //Belong to MENU FILE + #define IDM_OPEN_ALL_RECENT_FILE (IDM_EDIT + 40) + #define IDM_CLEAN_RECENT_FILE_LIST (IDM_EDIT + 41) + +#define IDM_SEARCH (IDM + 3000) + #define IDM_SEARCH_FIND (IDM_SEARCH + 1) + #define IDM_SEARCH_FINDNEXT (IDM_SEARCH + 2) + #define IDM_SEARCH_REPLACE (IDM_SEARCH + 3) + #define IDM_SEARCH_GOTOLINE (IDM_SEARCH + 4) + #define IDM_SEARCH_TOGGLE_BOOKMARK (IDM_SEARCH + 5) + #define IDM_SEARCH_NEXT_BOOKMARK (IDM_SEARCH + 6) + #define IDM_SEARCH_PREV_BOOKMARK (IDM_SEARCH + 7) + #define IDM_SEARCH_CLEAR_BOOKMARKS (IDM_SEARCH + 8) + #define IDM_SEARCH_GOTOMATCHINGBRACE (IDM_SEARCH + 9) + #define IDM_SEARCH_FINDPREV (IDM_SEARCH + 10) + #define IDM_SEARCH_FINDINCREMENT (IDM_SEARCH + 11) + #define IDM_SEARCH_FINDINFILES (IDM_SEARCH + 13) + #define IDM_SEARCH_VOLATILE_FINDNEXT (IDM_SEARCH + 14) + #define IDM_SEARCH_VOLATILE_FINDPREV (IDM_SEARCH + 15) + #define IDM_SEARCH_CUTMARKEDLINES (IDM_SEARCH + 18) + #define IDM_SEARCH_COPYMARKEDLINES (IDM_SEARCH + 19) + #define IDM_SEARCH_PASTEMARKEDLINES (IDM_SEARCH + 20) + #define IDM_SEARCH_DELETEMARKEDLINES (IDM_SEARCH + 21) + #define IDM_SEARCH_MARKALLEXT1 (IDM_SEARCH + 22) + #define IDM_SEARCH_UNMARKALLEXT1 (IDM_SEARCH + 23) + #define IDM_SEARCH_MARKALLEXT2 (IDM_SEARCH + 24) + #define IDM_SEARCH_UNMARKALLEXT2 (IDM_SEARCH + 25) + #define IDM_SEARCH_MARKALLEXT3 (IDM_SEARCH + 26) + #define IDM_SEARCH_UNMARKALLEXT3 (IDM_SEARCH + 27) + #define IDM_SEARCH_MARKALLEXT4 (IDM_SEARCH + 28) + #define IDM_SEARCH_UNMARKALLEXT4 (IDM_SEARCH + 29) + #define IDM_SEARCH_MARKALLEXT5 (IDM_SEARCH + 30) + #define IDM_SEARCH_UNMARKALLEXT5 (IDM_SEARCH + 31) + #define IDM_SEARCH_CLEARALLMARKS (IDM_SEARCH + 32) + + #define IDM_SEARCH_GOPREVMARKER1 (IDM_SEARCH + 33) + #define IDM_SEARCH_GOPREVMARKER2 (IDM_SEARCH + 34) + #define IDM_SEARCH_GOPREVMARKER3 (IDM_SEARCH + 35) + #define IDM_SEARCH_GOPREVMARKER4 (IDM_SEARCH + 36) + #define IDM_SEARCH_GOPREVMARKER5 (IDM_SEARCH + 37) + #define IDM_SEARCH_GOPREVMARKER_DEF (IDM_SEARCH + 38) + + #define IDM_SEARCH_GONEXTMARKER1 (IDM_SEARCH + 39) + #define IDM_SEARCH_GONEXTMARKER2 (IDM_SEARCH + 40) + #define IDM_SEARCH_GONEXTMARKER3 (IDM_SEARCH + 41) + #define IDM_SEARCH_GONEXTMARKER4 (IDM_SEARCH + 42) + #define IDM_SEARCH_GONEXTMARKER5 (IDM_SEARCH + 43) + #define IDM_SEARCH_GONEXTMARKER_DEF (IDM_SEARCH + 44) + + #define IDM_FOCUS_ON_FOUND_RESULTS (IDM_SEARCH + 45) + #define IDM_SEARCH_GOTONEXTFOUND (IDM_SEARCH + 46) + #define IDM_SEARCH_GOTOPREVFOUND (IDM_SEARCH + 47) + + #define IDM_SEARCH_SETANDFINDNEXT (IDM_SEARCH + 48) + #define IDM_SEARCH_SETANDFINDPREV (IDM_SEARCH + 49) + #define IDM_SEARCH_INVERSEMARKS (IDM_SEARCH + 50) + #define IDM_SEARCH_DELETEUNMARKEDLINES (IDM_SEARCH + 51) + #define IDM_SEARCH_FINDCHARINRANGE (IDM_SEARCH + 52) + #define IDM_SEARCH_SELECTMATCHINGBRACES (IDM_SEARCH + 53) + #define IDM_SEARCH_MARK (IDM_SEARCH + 54) + +#define IDM_MISC (IDM + 3500) + #define IDM_FILESWITCHER_FILESCLOSE (IDM_MISC + 1) + #define IDM_FILESWITCHER_FILESCLOSEOTHERS (IDM_MISC + 2) + + +#define IDM_VIEW (IDM + 4000) + //#define IDM_VIEW_TOOLBAR_HIDE (IDM_VIEW + 1) + #define IDM_VIEW_TOOLBAR_REDUCE (IDM_VIEW + 2) + #define IDM_VIEW_TOOLBAR_ENLARGE (IDM_VIEW + 3) + #define IDM_VIEW_TOOLBAR_STANDARD (IDM_VIEW + 4) + #define IDM_VIEW_REDUCETABBAR (IDM_VIEW + 5) + #define IDM_VIEW_LOCKTABBAR (IDM_VIEW + 6) + #define IDM_VIEW_DRAWTABBAR_TOPBAR (IDM_VIEW + 7) + #define IDM_VIEW_DRAWTABBAR_INACIVETAB (IDM_VIEW + 8) + #define IDM_VIEW_POSTIT (IDM_VIEW + 9) + #define IDM_VIEW_TOGGLE_FOLDALL (IDM_VIEW + 10) + //#define IDM_VIEW_USER_DLG (IDM_VIEW + 11) + #define IDM_VIEW_LINENUMBER (IDM_VIEW + 12) + #define IDM_VIEW_SYMBOLMARGIN (IDM_VIEW + 13) + #define IDM_VIEW_FOLDERMAGIN (IDM_VIEW + 14) + #define IDM_VIEW_FOLDERMAGIN_SIMPLE (IDM_VIEW + 15) + #define IDM_VIEW_FOLDERMAGIN_ARROW (IDM_VIEW + 16) + #define IDM_VIEW_FOLDERMAGIN_CIRCLE (IDM_VIEW + 17) + #define IDM_VIEW_FOLDERMAGIN_BOX (IDM_VIEW + 18) + #define IDM_VIEW_ALL_CHARACTERS (IDM_VIEW + 19) + #define IDM_VIEW_INDENT_GUIDE (IDM_VIEW + 20) + #define IDM_VIEW_CURLINE_HILITING (IDM_VIEW + 21) + #define IDM_VIEW_WRAP (IDM_VIEW + 22) + #define IDM_VIEW_ZOOMIN (IDM_VIEW + 23) + #define IDM_VIEW_ZOOMOUT (IDM_VIEW + 24) + #define IDM_VIEW_TAB_SPACE (IDM_VIEW + 25) + #define IDM_VIEW_EOL (IDM_VIEW + 26) + #define IDM_VIEW_EDGELINE (IDM_VIEW + 27) + #define IDM_VIEW_EDGEBACKGROUND (IDM_VIEW + 28) + #define IDM_VIEW_TOGGLE_UNFOLDALL (IDM_VIEW + 29) + #define IDM_VIEW_FOLD_CURRENT (IDM_VIEW + 30) + #define IDM_VIEW_UNFOLD_CURRENT (IDM_VIEW + 31) + #define IDM_VIEW_FULLSCREENTOGGLE (IDM_VIEW + 32) + #define IDM_VIEW_ZOOMRESTORE (IDM_VIEW + 33) + #define IDM_VIEW_ALWAYSONTOP (IDM_VIEW + 34) + #define IDM_VIEW_SYNSCROLLV (IDM_VIEW + 35) + #define IDM_VIEW_SYNSCROLLH (IDM_VIEW + 36) + #define IDM_VIEW_EDGENONE (IDM_VIEW + 37) + #define IDM_VIEW_DRAWTABBAR_CLOSEBOTTUN (IDM_VIEW + 38) + #define IDM_VIEW_DRAWTABBAR_DBCLK2CLOSE (IDM_VIEW + 39) + #define IDM_VIEW_REFRESHTABAR (IDM_VIEW + 40) + #define IDM_VIEW_WRAP_SYMBOL (IDM_VIEW + 41) + #define IDM_VIEW_HIDELINES (IDM_VIEW + 42) + #define IDM_VIEW_DRAWTABBAR_VERTICAL (IDM_VIEW + 43) + #define IDM_VIEW_DRAWTABBAR_MULTILINE (IDM_VIEW + 44) + #define IDM_VIEW_DOCCHANGEMARGIN (IDM_VIEW + 45) + #define IDM_VIEW_LWDEF (IDM_VIEW + 46) + #define IDM_VIEW_LWALIGN (IDM_VIEW + 47) + #define IDM_VIEW_LWINDENT (IDM_VIEW + 48) + #define IDM_VIEW_SUMMARY (IDM_VIEW + 49) + + #define IDM_VIEW_FOLD (IDM_VIEW + 50) + #define IDM_VIEW_FOLD_1 (IDM_VIEW_FOLD + 1) + #define IDM_VIEW_FOLD_2 (IDM_VIEW_FOLD + 2) + #define IDM_VIEW_FOLD_3 (IDM_VIEW_FOLD + 3) + #define IDM_VIEW_FOLD_4 (IDM_VIEW_FOLD + 4) + #define IDM_VIEW_FOLD_5 (IDM_VIEW_FOLD + 5) + #define IDM_VIEW_FOLD_6 (IDM_VIEW_FOLD + 6) + #define IDM_VIEW_FOLD_7 (IDM_VIEW_FOLD + 7) + #define IDM_VIEW_FOLD_8 (IDM_VIEW_FOLD + 8) + + #define IDM_VIEW_UNFOLD (IDM_VIEW + 60) + #define IDM_VIEW_UNFOLD_1 (IDM_VIEW_UNFOLD + 1) + #define IDM_VIEW_UNFOLD_2 (IDM_VIEW_UNFOLD + 2) + #define IDM_VIEW_UNFOLD_3 (IDM_VIEW_UNFOLD + 3) + #define IDM_VIEW_UNFOLD_4 (IDM_VIEW_UNFOLD + 4) + #define IDM_VIEW_UNFOLD_5 (IDM_VIEW_UNFOLD + 5) + #define IDM_VIEW_UNFOLD_6 (IDM_VIEW_UNFOLD + 6) + #define IDM_VIEW_UNFOLD_7 (IDM_VIEW_UNFOLD + 7) + #define IDM_VIEW_UNFOLD_8 (IDM_VIEW_UNFOLD + 8) + + #define IDM_VIEW_FILESWITCHER_PANEL (IDM_VIEW + 70) + #define IDM_VIEW_SWITCHTO_OTHER_VIEW (IDM_VIEW + 72) + + #define IDM_VIEW_DOC_MAP (IDM_VIEW + 80) + + #define IDM_VIEW_PROJECT_PANEL_1 (IDM_VIEW + 81) + #define IDM_VIEW_PROJECT_PANEL_2 (IDM_VIEW + 82) + #define IDM_VIEW_PROJECT_PANEL_3 (IDM_VIEW + 83) + + #define IDM_VIEW_FUNC_LIST (IDM_VIEW + 84) + #define IDM_VIEW_FILEBROWSER (IDM_VIEW + 85) + + #define IDM_VIEW_TAB1 (IDM_VIEW + 86) + #define IDM_VIEW_TAB2 (IDM_VIEW + 87) + #define IDM_VIEW_TAB3 (IDM_VIEW + 88) + #define IDM_VIEW_TAB4 (IDM_VIEW + 89) + #define IDM_VIEW_TAB5 (IDM_VIEW + 90) + #define IDM_VIEW_TAB6 (IDM_VIEW + 91) + #define IDM_VIEW_TAB7 (IDM_VIEW + 92) + #define IDM_VIEW_TAB8 (IDM_VIEW + 93) + #define IDM_VIEW_TAB9 (IDM_VIEW + 94) + #define IDM_VIEW_TAB_NEXT (IDM_VIEW + 95) + #define IDM_VIEW_TAB_PREV (IDM_VIEW + 96) + #define IDM_VIEW_MONITORING (IDM_VIEW + 97) + + #define IDM_VIEW_GOTO_ANOTHER_VIEW 10001 + #define IDM_VIEW_CLONE_TO_ANOTHER_VIEW 10002 + #define IDM_VIEW_GOTO_NEW_INSTANCE 10003 + #define IDM_VIEW_LOAD_IN_NEW_INSTANCE 10004 + + +#define IDM_FORMAT (IDM + 5000) + #define IDM_FORMAT_TODOS (IDM_FORMAT + 1) + #define IDM_FORMAT_TOUNIX (IDM_FORMAT + 2) + #define IDM_FORMAT_TOMAC (IDM_FORMAT + 3) + #define IDM_FORMAT_ANSI (IDM_FORMAT + 4) + #define IDM_FORMAT_UTF_8 (IDM_FORMAT + 5) + #define IDM_FORMAT_UCS_2BE (IDM_FORMAT + 6) + #define IDM_FORMAT_UCS_2LE (IDM_FORMAT + 7) + #define IDM_FORMAT_AS_UTF_8 (IDM_FORMAT + 8) + #define IDM_FORMAT_CONV2_ANSI (IDM_FORMAT + 9) + #define IDM_FORMAT_CONV2_AS_UTF_8 (IDM_FORMAT + 10) + #define IDM_FORMAT_CONV2_UTF_8 (IDM_FORMAT + 11) + #define IDM_FORMAT_CONV2_UCS_2BE (IDM_FORMAT + 12) + #define IDM_FORMAT_CONV2_UCS_2LE (IDM_FORMAT + 13) + + #define IDM_FORMAT_ENCODE (IDM_FORMAT + 20) + #define IDM_FORMAT_WIN_1250 (IDM_FORMAT_ENCODE + 0) + #define IDM_FORMAT_WIN_1251 (IDM_FORMAT_ENCODE + 1) + #define IDM_FORMAT_WIN_1252 (IDM_FORMAT_ENCODE + 2) + #define IDM_FORMAT_WIN_1253 (IDM_FORMAT_ENCODE + 3) + #define IDM_FORMAT_WIN_1254 (IDM_FORMAT_ENCODE + 4) + #define IDM_FORMAT_WIN_1255 (IDM_FORMAT_ENCODE + 5) + #define IDM_FORMAT_WIN_1256 (IDM_FORMAT_ENCODE + 6) + #define IDM_FORMAT_WIN_1257 (IDM_FORMAT_ENCODE + 7) + #define IDM_FORMAT_WIN_1258 (IDM_FORMAT_ENCODE + 8) + #define IDM_FORMAT_ISO_8859_1 (IDM_FORMAT_ENCODE + 9) + #define IDM_FORMAT_ISO_8859_2 (IDM_FORMAT_ENCODE + 10) + #define IDM_FORMAT_ISO_8859_3 (IDM_FORMAT_ENCODE + 11) + #define IDM_FORMAT_ISO_8859_4 (IDM_FORMAT_ENCODE + 12) + #define IDM_FORMAT_ISO_8859_5 (IDM_FORMAT_ENCODE + 13) + #define IDM_FORMAT_ISO_8859_6 (IDM_FORMAT_ENCODE + 14) + #define IDM_FORMAT_ISO_8859_7 (IDM_FORMAT_ENCODE + 15) + #define IDM_FORMAT_ISO_8859_8 (IDM_FORMAT_ENCODE + 16) + #define IDM_FORMAT_ISO_8859_9 (IDM_FORMAT_ENCODE + 17) + #define IDM_FORMAT_ISO_8859_10 (IDM_FORMAT_ENCODE + 18) + #define IDM_FORMAT_ISO_8859_11 (IDM_FORMAT_ENCODE + 19) + #define IDM_FORMAT_ISO_8859_13 (IDM_FORMAT_ENCODE + 20) + #define IDM_FORMAT_ISO_8859_14 (IDM_FORMAT_ENCODE + 21) + #define IDM_FORMAT_ISO_8859_15 (IDM_FORMAT_ENCODE + 22) + #define IDM_FORMAT_ISO_8859_16 (IDM_FORMAT_ENCODE + 23) + #define IDM_FORMAT_DOS_437 (IDM_FORMAT_ENCODE + 24) + #define IDM_FORMAT_DOS_720 (IDM_FORMAT_ENCODE + 25) + #define IDM_FORMAT_DOS_737 (IDM_FORMAT_ENCODE + 26) + #define IDM_FORMAT_DOS_775 (IDM_FORMAT_ENCODE + 27) + #define IDM_FORMAT_DOS_850 (IDM_FORMAT_ENCODE + 28) + #define IDM_FORMAT_DOS_852 (IDM_FORMAT_ENCODE + 29) + #define IDM_FORMAT_DOS_855 (IDM_FORMAT_ENCODE + 30) + #define IDM_FORMAT_DOS_857 (IDM_FORMAT_ENCODE + 31) + #define IDM_FORMAT_DOS_858 (IDM_FORMAT_ENCODE + 32) + #define IDM_FORMAT_DOS_860 (IDM_FORMAT_ENCODE + 33) + #define IDM_FORMAT_DOS_861 (IDM_FORMAT_ENCODE + 34) + #define IDM_FORMAT_DOS_862 (IDM_FORMAT_ENCODE + 35) + #define IDM_FORMAT_DOS_863 (IDM_FORMAT_ENCODE + 36) + #define IDM_FORMAT_DOS_865 (IDM_FORMAT_ENCODE + 37) + #define IDM_FORMAT_DOS_866 (IDM_FORMAT_ENCODE + 38) + #define IDM_FORMAT_DOS_869 (IDM_FORMAT_ENCODE + 39) + #define IDM_FORMAT_BIG5 (IDM_FORMAT_ENCODE + 40) + #define IDM_FORMAT_GB2312 (IDM_FORMAT_ENCODE + 41) + #define IDM_FORMAT_SHIFT_JIS (IDM_FORMAT_ENCODE + 42) + #define IDM_FORMAT_KOREAN_WIN (IDM_FORMAT_ENCODE + 43) + #define IDM_FORMAT_EUC_KR (IDM_FORMAT_ENCODE + 44) + #define IDM_FORMAT_TIS_620 (IDM_FORMAT_ENCODE + 45) + #define IDM_FORMAT_MAC_CYRILLIC (IDM_FORMAT_ENCODE + 46) + #define IDM_FORMAT_KOI8U_CYRILLIC (IDM_FORMAT_ENCODE + 47) + #define IDM_FORMAT_KOI8R_CYRILLIC (IDM_FORMAT_ENCODE + 48) + #define IDM_FORMAT_ENCODE_END IDM_FORMAT_KOI8R_CYRILLIC + + //#define IDM_FORMAT_CONVERT 200 + +#define IDM_LANG (IDM + 6000) + #define IDM_LANGSTYLE_CONFIG_DLG (IDM_LANG + 1) + #define IDM_LANG_C (IDM_LANG + 2) + #define IDM_LANG_CPP (IDM_LANG + 3) + #define IDM_LANG_JAVA (IDM_LANG + 4) + #define IDM_LANG_HTML (IDM_LANG + 5) + #define IDM_LANG_XML (IDM_LANG + 6) + #define IDM_LANG_JS (IDM_LANG + 7) + #define IDM_LANG_PHP (IDM_LANG + 8) + #define IDM_LANG_ASP (IDM_LANG + 9) + #define IDM_LANG_CSS (IDM_LANG + 10) + #define IDM_LANG_PASCAL (IDM_LANG + 11) + #define IDM_LANG_PYTHON (IDM_LANG + 12) + #define IDM_LANG_PERL (IDM_LANG + 13) + #define IDM_LANG_OBJC (IDM_LANG + 14) + #define IDM_LANG_ASCII (IDM_LANG + 15) + #define IDM_LANG_TEXT (IDM_LANG + 16) + #define IDM_LANG_RC (IDM_LANG + 17) + #define IDM_LANG_MAKEFILE (IDM_LANG + 18) + #define IDM_LANG_INI (IDM_LANG + 19) + #define IDM_LANG_SQL (IDM_LANG + 20) + #define IDM_LANG_VB (IDM_LANG + 21) + #define IDM_LANG_BATCH (IDM_LANG + 22) + #define IDM_LANG_CS (IDM_LANG + 23) + #define IDM_LANG_LUA (IDM_LANG + 24) + #define IDM_LANG_TEX (IDM_LANG + 25) + #define IDM_LANG_FORTRAN (IDM_LANG + 26) + #define IDM_LANG_BASH (IDM_LANG + 27) + #define IDM_LANG_FLASH (IDM_LANG + 28) + #define IDM_LANG_NSIS (IDM_LANG + 29) + #define IDM_LANG_TCL (IDM_LANG + 30) + #define IDM_LANG_LISP (IDM_LANG + 31) + #define IDM_LANG_SCHEME (IDM_LANG + 32) + #define IDM_LANG_ASM (IDM_LANG + 33) + #define IDM_LANG_DIFF (IDM_LANG + 34) + #define IDM_LANG_PROPS (IDM_LANG + 35) + #define IDM_LANG_PS (IDM_LANG + 36) + #define IDM_LANG_RUBY (IDM_LANG + 37) + #define IDM_LANG_SMALLTALK (IDM_LANG + 38) + #define IDM_LANG_VHDL (IDM_LANG + 39) + #define IDM_LANG_CAML (IDM_LANG + 40) + #define IDM_LANG_KIX (IDM_LANG + 41) + #define IDM_LANG_ADA (IDM_LANG + 42) + #define IDM_LANG_VERILOG (IDM_LANG + 43) + #define IDM_LANG_AU3 (IDM_LANG + 44) + #define IDM_LANG_MATLAB (IDM_LANG + 45) + #define IDM_LANG_HASKELL (IDM_LANG + 46) + #define IDM_LANG_INNO (IDM_LANG + 47) + #define IDM_LANG_CMAKE (IDM_LANG + 48) + #define IDM_LANG_YAML (IDM_LANG + 49) + #define IDM_LANG_COBOL (IDM_LANG + 50) + #define IDM_LANG_D (IDM_LANG + 51) + #define IDM_LANG_GUI4CLI (IDM_LANG + 52) + #define IDM_LANG_POWERSHELL (IDM_LANG + 53) + #define IDM_LANG_R (IDM_LANG + 54) + #define IDM_LANG_JSP (IDM_LANG + 55) + #define IDM_LANG_COFFEESCRIPT (IDM_LANG + 56) + #define IDM_LANG_JSON (IDM_LANG + 57) + #define IDM_LANG_FORTRAN_77 (IDM_LANG + 58) + + #define IDM_LANG_EXTERNAL (IDM_LANG + 65) + #define IDM_LANG_EXTERNAL_LIMIT (IDM_LANG + 79) + + #define IDM_LANG_USER (IDM_LANG + 80) //46080 + #define IDM_LANG_USER_LIMIT (IDM_LANG + 110) //46110 + #define IDM_LANG_USER_DLG (IDM_LANG + 150) + + + +#define IDM_ABOUT (IDM + 7000) + #define IDM_HOMESWEETHOME (IDM_ABOUT + 1) + #define IDM_PROJECTPAGE (IDM_ABOUT + 2) + #define IDM_ONLINEHELP (IDM_ABOUT + 3) + #define IDM_FORUM (IDM_ABOUT + 4) + #define IDM_PLUGINSHOME (IDM_ABOUT + 5) + #define IDM_UPDATE_NPP (IDM_ABOUT + 6) + #define IDM_WIKIFAQ (IDM_ABOUT + 7) + #define IDM_HELP (IDM_ABOUT + 8) + #define IDM_CONFUPDATERPROXY (IDM_ABOUT + 9) + #define IDM_CMDLINEARGUMENTS (IDM_ABOUT + 10) + #define IDM_ONLINESUPPORT (IDM_ABOUT + 11) + #define IDM_DEBUGINFO (IDM_ABOUT + 12) + + +#define IDM_SETTING (IDM + 8000) +// #define IDM_SETTING_TAB_SIZE (IDM_SETTING + 1) +// #define IDM_SETTING_TAB_REPLCESPACE (IDM_SETTING + 2) +// #define IDM_SETTING_HISTORY_SIZE (IDM_SETTING + 3) +// #define IDM_SETTING_EDGE_SIZE (IDM_SETTING + 4) + #define IDM_SETTING_IMPORTPLUGIN (IDM_SETTING + 5) + #define IDM_SETTING_IMPORTSTYLETHEMS (IDM_SETTING + 6) + #define IDM_SETTING_TRAYICON (IDM_SETTING + 8) + #define IDM_SETTING_SHORTCUT_MAPPER (IDM_SETTING + 9) + #define IDM_SETTING_REMEMBER_LAST_SESSION (IDM_SETTING + 10) + #define IDM_SETTING_PREFERECE (IDM_SETTING + 11) +// #define IDM_SETTING_AUTOCNBCHAR (IDM_SETTING + 15) + #define IDM_SETTING_SHORTCUT_MAPPER_MACRO (IDM_SETTING + 16) + #define IDM_SETTING_SHORTCUT_MAPPER_RUN (IDM_SETTING + 17) + #define IDM_SETTING_EDITCONTEXTMENU (IDM_SETTING + 18) + +#define IDM_EXECUTE (IDM + 9000) + +#define IDM_SYSTRAYPOPUP (IDM + 3100) + #define IDM_SYSTRAYPOPUP_ACTIVATE (IDM_SYSTRAYPOPUP + 1) + #define IDM_SYSTRAYPOPUP_NEWDOC (IDM_SYSTRAYPOPUP + 2) + #define IDM_SYSTRAYPOPUP_NEW_AND_PASTE (IDM_SYSTRAYPOPUP + 3) + #define IDM_SYSTRAYPOPUP_OPENFILE (IDM_SYSTRAYPOPUP + 4) + #define IDM_SYSTRAYPOPUP_CLOSE (IDM_SYSTRAYPOPUP + 5) #endif //MENUCMDID_H diff --git a/NppPlugin/no_ms_shit.props b/NppPlugin/no_ms_shit.props deleted file mode 100644 index 7c31913..0000000 --- a/NppPlugin/no_ms_shit.props +++ /dev/null @@ -1,12 +0,0 @@ - - - - <_ProjectFileVersion>10.0.21006.1 - <_PropertySheetDisplayName>no ms shit - - - - __STDC_WANT_SECURE_LIB__=0;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - - - \ No newline at end of file diff --git a/NppPlugin/no_ms_shit.vsprops b/NppPlugin/no_ms_shit.vsprops deleted file mode 100644 index b19234a..0000000 --- a/NppPlugin/no_ms_shit.vsprops +++ /dev/null @@ -1,11 +0,0 @@ - - - - diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 0000000..365f5d7 --- /dev/null +++ b/appveyor.yml @@ -0,0 +1,77 @@ +version: 1.0.0.2.{build} +image: Visual Studio 2015 + + +clone_depth: 1 + + +environment: + matrix: + - PlatformToolset: v140_xp + - PlatformToolset: v120_xp + +platform: + - x64 + - Win32 + +configuration: + - Release + - Debug + +install: + - if "%platform%"=="x64" set archi=amd64 + - if "%platform%"=="Win32" set archi=x86 + - call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %archi% + +build: + parallel: true # enable MSBuild parallel builds + verbosity: minimal + +build_script: + - cd "%APPVEYOR_BUILD_FOLDER%"\NppPlugin\ + - msbuild NppColumnSort.vcxproj /p:configuration="%configuration%" /p:platform="%platform%" /p:PlatformToolset="%PlatformToolset%" /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" + +after_build: + - cd "%APPVEYOR_BUILD_FOLDER%"\ + - ps: >- + + if ($env:PLATFORM -eq "x64" -and $env:CONFIGURATION -eq "Release") { + Push-AppveyorArtifact "bin64\NppColumnSort.dll" -FileName NppColumnSort.dll + } + + if ($env:PLATFORM -eq "Win32" -and $env:CONFIGURATION -eq "Release") { + Push-AppveyorArtifact "bin\NppColumnSort.dll" -FileName NppColumnSort.dll + } + + if ($($env:APPVEYOR_REPO_TAG) -eq "true" -and $env:CONFIGURATION -eq "Release" -and $env:PLATFORMTOOLSET -eq "v120_xp") { + if($env:PLATFORM_INPUT -eq "x64"){ + $ZipFileName = "NppColumnSort_$($env:APPVEYOR_REPO_TAG_NAME)_x64.zip" + Remove-Item bin64\*.iobj + Remove-Item bin64\*.ipdb + 7z a $ZipFileName bin64\* + } + if($env:PLATFORM_INPUT -eq "Win32"){ + $ZipFileName = "NppColumnSort_$($env:APPVEYOR_REPO_TAG_NAME)_x86.zip" + Remove-Item bin\*.iobj + Remove-Item bin\*.ipdb + 7z a $ZipFileName bin\* + } + } + +artifacts: + - path: NppColumnSort_*.zip + name: releases + +deploy: + provider: GitHub + auth_token: + secure: !!TODO, see https://www.appveyor.com/docs/deployment/github/#provider-settings!! + artifact: releases + draft: false + prerelease: false + force_update: true + on: + appveyor_repo_tag: true + PlatformToolset: v120_xp + configuration: Release +