Hi,

Digging deeper into this issue, we found another way to temporarily fix the problem with a change in QScintilla and not in Scintilla.

In qsciscintillabase.cpp, in the constructor of QsciScintillaBase, adding

   SendScintilla(SCI_SETBUFFEREDDRAW, 0);

fixes the display problem by disabling the display buffering (which is not a very good solution).

Just in case this might give ideas about where the problem might be (we are trying to built a small examples reproducing the problem).

Best regards,
Gilles

Gilles Depeyrot wrote:
Thanks for the hint which effectively corrected the problem (which appears on rhel5).

With the proposed change in Editor.cpp, the margin color is red. We changed that using the QScintilla function "setFoldMarginColors". What is the interest of the first argument to "setFoldMarginColors" ? It doesn't seem to have any visible impact.

Has this change to Editor.cpp been proposed for inclusion in the Scintilla sources?

Best regards,
Gilles

Alex Kides wrote:
I've encountered similar glitches on rhel3, as a work around I changed Editor.cpp (don't know the precise line - approx 1490ish) so that instead of calling "surface->FillRectangle(rcSelMargin, *pixmapSelPattern);" it calls "surface->FillRectangle(rcSelMargin, vs.foldmarginColour.allocated);" instead, when the margin mask is SC_MASK_FOLDERS

-Alex
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Gilles Depeyrot
Sent: 10 June 2009 11:16
To: [email protected]
Subject: [QScintilla] QScintilla folding display issue with Qt4 (did notexist with Qt3)

Hi,

We are porting a cross-platform application from Qt3.3.8 to Qt4.4.3 which uses QScintilla 2.3.2. A class of our application inherits QsciScintilla, and uses the Folding functionality.

A problem has appeared in the Qt4 version of our application that does not occur in the Qt3 version:

  - the display of the folding margin is not correct (screenshot
attached) under Linux, while it is correct under Windows.

This display problem occurs even if there is no lexer.
We have tried updating to QScintilla 2.4 but the problem persists.

Any hints as to what might be causing this behavior?
Are there additional initialization steps that should be performed for QScintilla with Qt4 that were not needed with Qt3?


--
Gilles Depeyrot - MEDAL Business Manager

DOLPHIN Integration
"The Enabler of mixed signal Systems-on-Chip"
BP 65 Inovallée F-38240 Meylan FRANCE
Tel: +33 (0)476 41 74 01
Fax: +33 (0)476 90 29 65
mailto:[email protected]
http://www.dolphin-integration.com

_______________________________________________
QScintilla mailing list
[email protected]
http://www.riverbankcomputing.com/mailman/listinfo/qscintilla

Reply via email to