[QScintilla] Main selection color is not changed properly in some cases

Scener Spanish spscener84 at gmail.com
Wed May 15 11:44:24 BST 2019


That's awesome news, looking forward to those fixes!!!

In the meantime, in order to use the future dev snapshot I've tried to
learn how to build QScintilla from sources so I wouldn't need to
wait for the pypi wheels and I've described all the steps I've followed as
adviced:

BUILD QSCINTILLA.DLL
====================

1st attempt
-----------

- Start vs2015 x86 command prompt
- cd d:\ && mkdir test_qscintilla
- wget
https://www.riverbankcomputing.com/static/Downloads/QScintilla/QScintilla_gpl-2.11.2.dev1905090903.zip
- 7z x QScintilla_gpl-2.11.2.dev1905090903.zip

Section `Installation on Windows` in the doc/html-Qt4Qt5/index.html says:

> Before compiling QScintilla on Windows you should remove the Qsci
directory
> containing the QScintilla header files from any previous installation.

- cd Qt4Qt5
- rf -rf Qsci
- set path=c:\Qt\5.11.3\msvc2015\bin;%path%
- qmake -makefile qscintilla.pro
- nmake

It'll complain the Qsci header files missing... so probably docs are wrong
here

2nd attempt
-----------

Let's try again...

- cd d:\test_qscintilla
- rm -rf QScintilla_gpl-2.11.2.dev1905090903
- 7z x QScintilla_gpl-2.11.2.dev1905090903.zip
- Open qscintilla.pro with qtcreator + configure for msvc2015
- Select release + build, you should get qscintilla2_qt5.dll
- copy
..\Qt4Qt5\build-qscintilla-Desktop_Qt_5_11_3_MSVC2015_32bit-Release\release\qscintilla2_qt5.dll
c:\Qt\5.11.3\msvc2015\bin

PYTHON BINDINGS
===============

First, let's make sure sip.exe is on path:

- set path=D:\virtual_envs\sip-4.19.14\sipgen;%path%

and to confirm just do `where sip`

Now let's enable some virtualenv with pyqt5 installed:

- cd d:\mcve_qscintilla\QScintilla_gpl-2.11.2.dev1905090903\Python
- d:\virtual_envs\py364_32\Scripts\activate

And finally we configure:

(py364_32)
d:\mcve_qscintilla\QScintilla_gpl-2.11.2.dev1905090903\Python>python
configure.py --pyqt=PyQt5
--qsci-incdir=d:\mcve_qscintilla\QScintilla_gpl-2.11.2.dev1905090903\Qt4Qt5
--qsci-libdir=d:\mcve_qscintilla\QScintilla_gpl-2.11.2.dev1905090903\Qt4Qt5\build-qscintilla-Desktop_Qt_5_11_3_MSVC2015_32bit-Release\release
Configuring QScintilla 2.11.2.dev1905090903...
QScintilla 2.11.2.dev1905090903 is being used.
The QScintilla .sip files will be installed in
D:\virtual_envs\py364_32\sip\PyQt5.
QScintilla will be installed in
D:\virtual_envs\py364_32\Lib\site-packages\PyQt5.
PyQt 5.12 is being used.
Qt 5.12.1 is being used.
sip 4.19.14 is being used.
The sip executable is D:\virtual_envs\sip-4.19.14\sipgen\sip.exe.
The PEP 484 stubs will be installed in
D:\virtual_envs\py364_32\Lib\site-packages\PyQt5.
The QScintilla API file will be installed in
C:/Qt/5.11.3/msvc2015\qsci\api\python.
Generating the C++ source for the Qsci module...
Generating the .pro file for the Qsci module...
Generating the QScintilla API file...
Generating the top-level .pro file...
Generating the Makefiles...

- I open QScintilla.pro on qtcreator + configure msvc2015 and I build, I'll
get
these errors:

https://dl.dropboxusercontent.com/s/6h275m4b8hptsp3/2019-05-15_12-37-00.txt

QUESTIONS:

- Is it really necessary to copy qscintilla2_qt5 to the qt directory?
- If you look at the content of the python bindings compilation output, at
which point I've messed up?
- Summing up, could you describe the right way to build the QScintilla
python bindings from source on windows? It feels
to me the steps living in the documentation are outdated


On Wed, May 15, 2019 at 11:36 AM Phil Thompson <phil at riverbankcomputing.com>
wrote:

> On 14/05/2019 22:59, Scener Spanish wrote:
> > That's a good advice, I'll try to allocate some time this week with all
> > the
> > steps and where I've got stuck, in the meantime... I'm sure you're
> > following
> > the other thread but if you don't Neil has explained a little bit about
> > the
> > meaning of that variable, pasting literally here:
> >
> >  X has the concept of a ‘primary selection’ which is the most recently
> >> selected text in any application and which can be pasted by clicking
> >> the
> >> middle mouse button.
> >>    selBackground2 is the colour used for the background of a
> >> non-primary-selection on X. It should never be seen on Windows or
> >> macOS
> >> which don’t have primary selections.
> >>    When the user makes a selection on X, this is the primary selection
> >> but
> >> it should be displayed similarly to other platforms with the colours
> >> defined by SCI_SETSELBACK. But you still want a visual distinction
> >> between
> >> the primary selection and non-primary-selections (so you see which
> >> text
> >> will be used for a middle-click). Therefore the colour of this
> >> selection
> >> changes to selBackground2 once a new primary selection is made,
> >> commonly in
> >> a different application.
> >>    Neil
> >
> >
> > Hope this helps... so yeah, this clarifies this indeed a QScintilla bug
> > afterall ;)
>
> Thanks - that was the clue I needed. Tonight's snapshot should fix both
> tests.
>
> Phil
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.riverbankcomputing.com/pipermail/qscintilla/attachments/20190515/551b3725/attachment.html>


More information about the QScintilla mailing list