[Lazarus] High-DPI TImageList

C Western l at c-m-w.me.uk
Mon Jan 29 23:10:51 CET 2018


On 29/01/18 09:44, Ondrej Pokorny via Lazarus wrote:
> On 29.01.2018 10:02, C Western via Lazarus wrote:
>> On 29/01/18 08:45, Ondrej Pokorny via Lazarus wrote:
>>> On 28.01.2018 15:33, C Western via Lazarus wrote:
>>>> On 27/01/18 18:59, Ondrej Pokorny via Lazarus wrote:
>>>>> I merged the High-DPI (multi-resolution) ImageList into trunk. I'll 
>>>>> document the changes in 
>>>>> http://wiki.lazarus.freepascal.org/TImageList soon (tomorrow) and 
>>>>> also in http://wiki.freepascal.org/Lazarus_1.10.0_release_notes
>>>>>
>>>>> Ondrej
>>>>
>>>> With trunk my application now gives lots of tracebacks when using 
>>>> the main menu, which has some images set, though not using an 
>>>> imagelist:
>>>>
>>>> ERROR in LCL: TGtk2WidgetSet.CreateBitmapFromRawImage Incompatible 
>>>> BitsPerPixel
>>>> Creating gdb catchable error:
>>>>
>>>>   $000000000088BA69  DEBUGLNSTACK,  line 731 of lazloggerbase.pas
>>>>   $00000000007788E0  DUMPSTACK,  line 1392 of lclproc.pas
>>>>   $0000000000776043  RAISEGDBEXCEPTION,  line 860 of lclproc.pas
>>>>   $00000000006EB170  RAWIMAGE_CREATEBITMAPS,  line 417 of 
>>>> gtk2/gtk2lclintf.inc
>>>>   $0000000000787202  RAWIMAGE_CREATEBITMAPS,  line 152 of 
>>>> include/lclintf.inc
>>>>   $00000000008F0FF0  CREATEBITMAPS,  line 3633 of intfgraphics.pas
>>>>   $000000000095B362  INSERTMASKED,  line 1802 of include/imglist.inc
>>>>   $0000000000958DC1  ADDMASKED,  line 1143 of include/imglist.inc
>>>>   $000000000086717C  DRAWMENUITEMICON,  line 5809 of gtk2
>>>>
>>>> This is using GTK2. Has the implementation of the main menu changed 
>>>> significantly? Unfortunately this is slightly tricky to debug, as 
>>>> the entire desktop freezes.
>>>
>>> Do you use Glyphs in the menu? Anyway, please create a bug report and 
>>> if possible, attach a sample project to reproduce. Thanks.
>> I do use glyphs on a few of the menu items. Unfortunately a small 
>> project with just this doesn't show the error, so a sample project 
>> will require some thought.
> 
> I assume it's a specific glyph that doesn't work. Try to add a DebugLn 
> with the menu item name into DRAWMENUITEMICON so that you'll know what 
> menu item and glyph causes it.
> 
> Ondrej

I have submitted https://bugs.freepascal.org/view.php?id=33099

It does not show the crash, but it does show some issues. My 
investigations show that the test program does not crash in the same way 
as Masked is false for the menu image, whereas it is true in my full 
program, and I haven't been able to track down why yet.

Colin


More information about the Lazarus mailing list