[Lazarus] High-DPI TImageList

Ondrej Pokorny lazarus at kluug.net
Mon Jan 29 10:44:45 CET 2018

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.


More information about the Lazarus mailing list