[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [gef-dev] FigureCanvas & Linux
|
Are you using a pre-release level of
GEF? The final release of GEF 2.1 does not have that problem (it
has a different one instead :-)
We check for scrollbar.isVisible() before
calling setVisible(). The problem is that scrollbar.isVisible() is
not the inverse of setVisible(), so if the SWT Control is not visible,
the scrollbar will say that it is not visible even when it is. For
2.1.1, we will have changed the call to getVisible() instead of
isVisible().
| "Konstantin Zaporozhtsev"
<Konstantin.Zaporozhtsev@xxxxxxxxxxx>
Sent by: gef-dev-admin@xxxxxxxxxxx
04/24/2003 04:26 AM
Please respond to gef-dev
|
To:
<gef-dev@xxxxxxxxxxx>
cc:
Subject:
[gef-dev] FigureCanvas & Linux |
I have encountered a problem using FigureCanvas
under Linux OS. It uses root figure which calls layoutViewport() on validation.
In my case it results in infinite validating loop, because:
1. Method layoutViewport() calls scrollbar.setVisible()
for both horizontal and vertical scrollbars.
2. Method setVisible() of scrollbar sends
SWT.RESIZE event for its (scrollbar’s) parent, and it starts new validation
cycle again.
The problem can be solved by not calling scrollbar.setVisibility()
when its current visibility state is the same as new.
Of course, method layoutViewport() has private
access, and my workaround was in copying the whole class FigureCanvas.
Is it a known issue or I do something wrong?
Should I submit appropriate request in eclipse bug database?
Thank you,
Kostya.