On Wed, Jan 16, 2013 at 11:12 AM, hakan <hexi...@users.sourceforge.net>wrote:
> **
> I agree that flicker exist in the groupbox when using augmentedResize.rex
> and basicResize.rex, but as Staffan say "..hardly notice any flicker, at
> least not so that it's disturbing in any way"
>
You guys may have better hardware than my current stuff. Faster video will
always reduce flicker. It bothers me more from a programming stand point
than an actual usage stand point. I would like to be able to program the
resizing so I could not see any flicker.
> Also flickering is only there if you have the flag "show window content
> while dragging" set, if this flag is unset there is no flicker at all (when
> unset windows just outline the window size and repainting is done when
> sizing is ended)
>
> If this flag could be set for individual windows/dialogs, one could decide
> to use that in the case there is to much flickering, for now it's a global
> Windows option I Believe.
>
Yes, it is a global setting. You can turn it off and on programmatically,
but you can not turn it off and on per individual window. You could even
do it in ooRexx through the SPI class. Not today, the SPI class does not
have the proper attribute, but it would only take a few minutes to add the
attribute. And an hour to document it.
>
> On the other hand when using gbStationary.rex (stationary/fixed groupbox)
> I see no flicker at all, independent if the above flag is set or unset.
>
> Your statement, ''don't use "groupbox" in resizible dialogs'' is only
> valid if groupbox also is resized?. Altough the flicker is hardly noticed (
> this on i3, 2.13 MHz 8 Gb Ram)
> My feeling is when the groupbox is fixed in size it's OK to use them
> without any flicker and the same for static controls and maybe a note in
> the manual what can be expected and how to circumvent if needed.
>
The basics of the implementation code is to reduce the amount of erasing
and repainting being done. Everything that is moved has to be redrawn at
least once, it is changed after all. The idea is, for each move, only do
it once. Much of the time, usually, for each move, things are erased and
redrawn multiple times.
For group boxes, they don't draw their interior. With no change to the
implementation, after the resizing is done, you see big spaces in the
interior of a group box where it is not the dialog color. This is
very noticeable So, for group boxes a style is added by ooDialog that
fixes that problem. But, adding that style causes erasing and redrawing
to, possibly, be done more than once. This is most noticeable if the group
box is changing in size. It is not very noticeable if the group box
remains fixed in size.
As a developer, I can't reasonably tell people to get better hardware so
that what I've programmed looks better. ;-) Likewise, I can't tell them
to change a global Windows setting to something different than what they
are using. If there was absolutely no flickering, then that would be
great. If I do detect flickering, then it constantly bugs me, because I
keep thinking: is there something I could do in the implementation that
would fix that, or is that just the best that can be done.
--
Mark Miesfeld
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122712
_______________________________________________
Oorexx-users mailing list
Oorexx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-users