Closes#209; Close#169
Files ending in the defined extension will be opened in the project panel instead of as a normal file to edit (much like how the session file extension works).
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.
Closes#1075
- All positions are dynamically calculated relative to the tab rectangle now (i.e. no hardcoded pixel values are used to position icons/text anymore)
- Match positioning of icons/text in active and inactive tabs (i.e. elements are not "jumping around" anymore upon selection)
Some specific fixes:
- Most issues with vertical TabBar are resolved now (it was basically unusable before, for example labels were cut)
- Darkened background of inactive tabs fills the whole tab now (fixes#1011)
- Close button is centered correctly now (fixes#1010)
When tab settings exists only for L_JS (the old settings) but if the
current document is L_JAVASCRIPT, tab settings for L_JS won't apply to
L_JAVASCRIPT document.
The fix is to use L_JS's tab settings for both L_JS and L_JAVASCRIPT
documents, and to synchronize the values of both type while user
modifies javascript tab settings.
- Fix: when search field is not empty, Function List's background color does not follow Npp theme.
- Fix: close button and textual search box now scale in high-dpi.
- Fix: icons' image not centered in icons' rectangle.
- Fix: when double-clicking the panel's toolbar, it briefly displayed a dialog to customize icons, but we can't use it there.
Known issues:
- I couldn't made toolbar icon images scale properly in high-dpi; I imagine they need to be in a ImageList, something I don't know how to use.
- TreeView icons should also be scaled, and I've done it, but they displayed strange gray background, so I decided to leave it as is now.
- It would be better to wrap icons when they don't fit in panel's width, but I don't know how to refresh the toolbar properly.
This commit fixes 2 issues:
1. In Ascii Insert Panel the columns are too narrow under a high
resolution.
2. In function list panel and project panel, the item heights are
squeezed under a high resolution.