Re: [Lazarus] Unneeded Paint calls from LCL

2020-01-15 Thread Alexey via lazarus
 Seems I posted too pessimistic analysis. Too many repaints are caused by 
atsynedit, and with an empty control (which only has overridden Paint to show 
counter) it’s not so bad— counter is 1, only on few WS it’s 2. Sorry

Alexey
-- 
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Unneeded Paint calls from LCL

2020-01-15 Thread Martin Frb via lazarus

On 15/01/2020 12:02, Juha Manninen via lazarus wrote:

I understood that Paint gets called by LCL excessively when a form is
created or shown. Yes, I guess it should be optimized.
Debugging the events flowing back and forth is challenging. Placing
DebugLn() lines into relevant event handlers is the best way. And yes,
it partly happens in widgetset code.



It should be possible to use "none breaking" breakpoints (without 
causing extra paint or focus events) and then go through the debug 
history to see stackframes.

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Unneeded Paint calls from LCL

2020-01-15 Thread Juha Manninen via lazarus
On Mon, Jan 13, 2020 at 10:51 AM Marc Weustink via lazarus
 wrote:
> IMO paint should be never called directly. When resizing, invalidate
> should be called (so one pain message is issued after the resize)

I understood that Paint gets called by LCL excessively when a form is
created or shown. Yes, I guess it should be optimized.
Debugging the events flowing back and forth is challenging. Placing
DebugLn() lines into relevant event handlers is the best way. And yes,
it partly happens in widgetset code.

Juha
-- 
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Unneeded Paint calls from LCL

2020-01-13 Thread Marc Weustink via lazarus

AlexeyT via lazarus wrote:

Details:
Linux gtk2: LCL calls Paint 5 times for ATSynEdit on FormCreate/FormShow:

1- DoOnResize - i filtered it out
2- DoOnResize - i filtered it out
3- Paint - it's ok
4- Paint again - i cannot filter it out
5- Paint again

Win32: LCL calls Paint 3 times:

1- Paint - it's ok
2- DoOnResize - i cannot filter it out
3- DoOnResize again

Can you optimize it to call Paint once, and DoOnResize BEFORE Paint?


IMO paint should be never called directly. When resizing, invalidate 
should be called (so one pain message is issued after the resize)


Marc
--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Unneeded Paint calls from LCL

2020-01-12 Thread AlexeyT via lazarus

Details:
Linux gtk2: LCL calls Paint 5 times for ATSynEdit on FormCreate/FormShow:

1- DoOnResize - i filtered it out
2- DoOnResize - i filtered it out
3- Paint - it's ok
4- Paint again - i cannot filter it out
5- Paint again

Win32: LCL calls Paint 3 times:

1- Paint - it's ok
2- DoOnResize - i cannot filter it out
3- DoOnResize again

Can you optimize it to call Paint once, and DoOnResize BEFORE Paint?

Alexey T.


--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Unneeded Paint calls from LCL

2020-01-12 Thread AlexeyT via lazarus

Linux gtk2.

reduce these calls? 


--
Regards,
Alexey

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus