118 Commits

Author SHA1 Message Date
Don Ho
0ee65fd826 Fix x64 build error in 3f1a582a36db175a4f86b35dcd47f3aa5bf331fa
Fix x64 build error, remove unnecessary codes and add enhancement for the previous commit 3f1a582a36db175a4f86b35dcd47f3aa5bf331fa
2022-04-13 04:43:08 +02:00
ozone10
3f1a582a36 Add dark mode support for autocomplete list & calltip
Fix fix #11522, close #11523
2022-04-13 03:42:38 +02:00
ozone10
3afbf0ca14 Fix light mode disabled text color using dark mode customized color
Light mode disabled static text was using customized dark mode disabled static text color, this PR fixes the problem.

Fix #11514, close #11515
2022-04-11 16:25:39 +02:00
Ashfaaq18
6086e819fd Fix dark mode disabled static text color in Column Editor and Style configurator
Fix #11407, close #11409
2022-03-22 18:38:50 +01:00
Don Ho
94154b0f0e Code enhancement: Fix comparison of different signs integers 2022-02-09 20:06:59 +01:00
Don Ho
785453147b Inialize all memebers of struct (instead of its 1st member) to zero
The curly brace initiator in C/C++ is quite confusing (at least to me).
The C style array uses {0} for initializing all the array to 0,
whereas C++ struct uses {0} for initializing only the 1st member's value to 0.
If we want to set all members' value in a struct to 0, we should use {} instread of {0}.

This commit fix the error which initialize only the 1st member's value to 0 in the structures.

Ref:
1. https://docs.microsoft.com/en-us/cpp/cpp/initializing-classes-and-structs-without-constructors-cpp?view=msvc-170
2. https://en.cppreference.com/w/c/language/struct_initialization
2022-02-09 16:41:56 +01:00
Don Ho
961a133a60 Remove 2GB file open restriction for x64 binary
Fix #10921, close #11047
2022-01-25 18:08:05 +01:00
Don Ho
234941c180 Fix regression of bg/fg color disabling visual glitchy
The regression is due to:
7c9f4204ea (diff-473b357ab7088152f46cb49e9d3336344425ab463c209b10b2fe16df98cc3b76)

Fix #11051
2022-01-19 16:49:04 +01:00
jofon
38de8b2306 Fix language list not being reloaded issue in Style Configurator
Fix #9512, close #10686
2021-10-21 15:47:00 +02:00
Don Ho
e5a800722b Make code more sanitary
Fix some vulnerable codes detected by VS's analyzing.

Close #10541
2021-09-12 18:50:30 +02:00
Ivan Ustûžanin
156784722a Make number of languages and and styles unlimited and independent
A clean version of #10483 thanks to @ozone10 and @chcg.
The proper fix for #10206 without any compile-time limits.

Fix #10483, fix #10206, close #10491
2021-09-05 16:31:18 +02:00
ozone10
68d293e711 Allow custom color for Document Map
Fix #10052, close #10422
2021-08-26 01:03:18 +02:00
ozone10
8ac13d9065 Make dark mode compatible with Windows 11
Use documented way to enable UxTheme dialog texture.
Remove undocumented way.
Disable UxTheme dialog texture in dark mode.

Fix #10299, close #10383
2021-08-20 12:08:41 +02:00
Don Ho
7c9f4204ea Refactoring: Improve the code organization for color picker displaying 2021-07-29 03:13:22 +02:00
ozone10
31c72b7388 Apply dark mode on color popup
Fix use of dark mode edge color in light mode for color picker button.
Properly redraw disabled color picker button.

Fix #10269, close #10270
2021-07-28 17:29:30 +02:00
ozone10
7c4a428e47 Make dark colors consistent
1. Make dark colors consistent for panel toolbars.
2. Make dark colors consistent style configurator edit controls.
3. Make dark colors consistent for docking elements.

* BackgroundColor(), BackgroundBrush() – should be used for items which have some interactions, or need to be different from Darker variant.
* DarkerBackgroundColor(), DarkerBackgroundBrush() – should be used for static/top backgrounds.
* SofterBackgroundColor(), SofterBackgroundBrush() – should be used for items , which have interactions, or have focus.

Fix #10242, close #10243
2021-07-26 15:00:49 +02:00
ozone10
e627de438b Apply dark mode on Style Configurator
Create link text color to be used too in about, debug and preference dialog.

Fix #10226, close #10227
2021-07-24 00:48:03 +02:00
Don Ho
831d3ba9cc Add customizing dynamically dark mode colors capacity
Let users customize whole set of dark mode colors (except title bar, menu items and scroll bar colors).

Close #10145
2021-07-14 03:33:36 +02:00
Don Ho
3347044595 Fix edit zone not being applied to dark mode issue
Problem:
After installing Notepad++ v8.1 under an user account (with admin privilege), then switch to another user account (with or without admin privilege), launch Notepad++ and turn dark mode on. The dark theme on edit zone won't be applied.

Solution:
Notepad++ installer copies all theme files in installed directory instead of "%APPDATA%\Notepad++\themes\".
When theme is choosen or modified, it'll be saved in "%APPDATA%\Notepad++\themes\", and the saved theme file will override the original theme in installation directory.

New behaviour of theme:
Any theme selected via Style Configurator will be copied from its installation directory (C:\Program Files\Notepad++\themes\) into "%APPDATA%\Notepad++\themes\".
If the theme exists in "%APPDATA%\Notepad++\themes", the original one in s installation directory (C:\Program Files\Notepad++\themes) will be ignored.

Fix #10076, close #10077
2021-06-27 16:42:01 +02:00
Don HO
4aa459ef47 Switch to default dark theme as dark mode is enabled
1. Add default dark theme.
2. Switch to default dark theme when dark mode is enabled considering both situations:
   Style Configurator is or ont launched.

Close #9847
2021-05-10 09:56:35 +02:00
Don HO
cd1a468b1c Make select text foreground color setting optional
Make selected text with syntax highlighting as default behaviour.
To override the default behaviour, user can add an empty xml file named "enableSelectFgColor.xml" (beside of "config.xml") to set the select foreground color in Style Configurator.
2021-05-01 20:02:09 +02:00
Don HO
ab5c1d3e2a
Upgrade Notepad++ License
Update GPL version from v2 to v3.

Fix #9425, close #9441
2021-01-24 01:51:19 +01:00
Scott Sumner
c28116a04f
Add color samples on menu items for styling features
Fix #8983, close #9089
2020-11-02 15:15:37 +01:00
Don HO
3de506bf48
Update copyright
Close #5919
2020-04-04 23:03:18 +02:00
Don HO
06db9ee338
Code improvement for NppParameters 2019-08-14 22:13:24 +02:00
Don HO
2d15d90e02
Fix local variable shadows outer variable issues 2019-07-08 14:39:14 +02:00
Rajendra Singh
9539a892eb
Code quality improvement: pass string by reference instead of value
Also remove not implemented methods addBufferToView(), moveBuffer() and doActionOrNot() from Notepad_plus.h

Close #5784
2019-06-25 14:21:35 +02:00
Don HO
52a4e21af5
Remove ugly coding style 2019-03-16 05:33:50 +01:00
Don HO
bd7816755c [EU-FOSSA] Replace lstrcat by wcscat_s to avoid crash 2019-02-22 12:57:58 +01:00
Don HO
7fe3cda1d0 [EU-FOSSA] Use wcscpy_s instead of lstrcpy to prevent from buffer overflow 2019-02-11 02:07:04 +01:00
Don HO
58037e07b1 [EU-FOSSA] Fix stack buffer overflow on wsprintf in WordStyle dialog
Also remove dynamic allocation for CB_GETLBTEXT and use local array instead by controlling buffer size.
2019-02-09 03:28:52 +01:00
Don HO
0438447194 [EU-FOSSA] Fix stack buffer overflow on LB_GETTEXT 2019-02-08 22:13:12 +01:00
Don HO
cdd13ecadc [EU-FOSSA] Fix stack buffer overflow on CB_GETLBTEXT 2019-02-08 12:38:34 +01:00
Oleksandr Redko
29f28098ae Fix static analyzer issue "A virtual function was overridden incorrectly"
V762 It is possible a virtual function was overridden incorrectly. See third argument of function 'create' in derived class 'UserDefineDialog' and base class 'StaticDialog'. userdefinedialog.h 332
V762 It is possible a virtual function was overridden incorrectly. See first argument of function 'redraw' in derived class 'SplitterContainer' and base class 'Window'. splittercontainer.h 61
V762 It is possible a virtual function was overridden incorrectly. See third argument of function 'create' in derived class 'FindReplaceDlg' and base class 'StaticDialog'. findreplacedlg.h 245
V762 It is possible a virtual function was overridden incorrectly. See third argument of function 'create' in derived class 'GoToLineDlg' and base class 'StaticDialog'. gotolinedlg.h 45
V762 It is possible a virtual function was overridden incorrectly. See third argument of function 'create' in derived class 'FindCharsInRangeDlg' and base class 'StaticDialog'. findcharsinrange.h 52
V762 It is possible a virtual function was overridden incorrectly. See third argument of function 'create' in derived class 'ColumnEditorDlg' and base class 'StaticDialog'. columneditor.h 45
V762 It is possible a virtual function was overridden incorrectly. See third argument of function 'create' in derived class 'WordStyleDlg' and base class 'StaticDialog'. wordstyledlg.h 77
V762 It is possible a virtual function was overridden incorrectly. See first argument of function 'redraw' in derived class 'WordStyleDlg' and base class 'Window'. wordstyledlg.h 99
V762 It is possible a virtual function was overridden incorrectly. See third argument of function 'create' in derived class 'PluginsAdminDlg' and base class 'StaticDialog'. pluginsadmin.h 100
2017-10-29 18:18:15 +02:00
Oleksandr Redko
81847599d0 Fix static analyzer issue "The enumeration constant 'inactiveText' is used as a variable of a Boolean-type."
V768 The enumeration constant 'inactiveText' is used as a variable of a Boolean-type. wordstyledlg.cpp 438
2017-10-29 18:18:07 +02:00
Don HO
d4bcec1c01 Lost in Translation 3 2016-08-11 22:29:39 +02:00
Don HO
37ed299743 Lost in Translation 2 2016-08-10 00:22:45 +02:00
Don HO
2e82a99649 Lost in translation
while (true)
{
conversion<C++>(C-Style cast );
}
2016-08-06 01:29:54 +02:00
Don HO
30bd15f04a Use C++ conversion instead of C style cast 2016-07-23 11:37:58 +02:00
Don HO
797765173d Improve code quality by using static code analysis tool (cppchecker) 2016-07-18 02:08:29 +02:00
Don HO
1e38c628bc Use C++ type conversion instead of C-Style conversion 2016-07-10 02:21:15 +02:00
Don HO
64d7535be1 x64 ready
1. Remove all warning while compiling in x64
2. Treat warning as error (W4) while compiling in x64
2016-06-05 20:30:22 +02:00
Markus Heidelberg
715a64a32a Make GCC/MinGW build work again and support cross-building under Linux
Close #1229, Fixes #385
Only build errors are fixed, compile warnings are left alone. To reduce
the number of changes, even the compiler option "-fpermissive" has been
used to downgrade several errors to warnings.
2015-12-15 17:10:46 +01:00
Damien GERARD
366a393f13 minor code cleanup for future refactoring 2015-08-06 11:50:58 +02:00
Don Ho
91992d0b7c [ENHANCEMENT] Use "Source Code Pro" as default font
Source Code Pro is included in the Notepad++ distribution for its
internal use.
If it's not the first time of Notepad++ installation (ie. updating),
users need to set Source Code Pro as default font manually via style
configurator dialog, or just delete "%APPDATA%\Notepad++\stylers.xml".
2015-07-18 21:18:39 +02:00
NN
dbb43a729f DlgProc returns INT_PTR and not BOOL. Use correct prototype and remove casts.
See https://msdn.microsoft.com/en-us/library/windows/desktop/ms645469(v=vs.85).aspx
2015-06-01 21:30:41 +03:00
Don Ho
e9e710a3d4 [UPDATE] Unprecompile headers (part 2) 2015-05-31 22:40:07 +02:00
Don Ho
7df06f9925 [BUG_FIXED] Fix the bug that modified tab interface colour settings cannot be saved in stylers configurator.
git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@1164 f5eea248-9336-0410-98b8-ebc06183d4e3
2013-12-26 17:01:17 +00:00
Don Ho
6264ef03d0 [ENHANCEMENT] Code optimization.
git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@1073 f5eea248-9336-0410-98b8-ebc06183d4e3
2013-07-08 00:12:50 +00:00
Don Ho
f80a49148e [BUG_FIXED] (Author: Andreas Jonsson) Minor fixes.
git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@1072 f5eea248-9336-0410-98b8-ebc06183d4e3
2013-07-07 21:33:19 +00:00