TMenuItem with check in v14.00

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #37937
    Lasse
    Participant

    TMenuItem with check (RadioItem is true) in v14.00 is overlapping text.

    #58344
    Lasse
    Participant

    If TMenuItem.RadioItem is false, then it is showing like this (see attachment).

    #58345
    Lasse
    Participant

    Seems to be a bug with left panel width and there is a GPlus skin bug with the tick. See attachment with Windows 10 skin (RadioItem = False).

    #58346
    Lasse
    Participant

    Also weird bug when closing the sub-menu. See attachment. When moving from View to Skin… Both (View and Skin..) icons are moving half width left.

    #58350
    Lasse
    Participant

    I don't know what happened but now GPlus skin is showing tick… other issues still valid.

    #58355
    Support
    Keymaster

    Can you show it in the demo, which may be debugged, please?

    #58364
    Lasse
    Participant

    Check sSkinMenus.pas:

    Code:
    procedure TsSkinableMenus.sAdvancedDrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect; State: TOwnerDrawState);

    gRect.Left := {min(bWidth, gRect.Top) + }(IcoLineWidth – w) div 2 + iRect.Left;

    I changed that to

    Code:
    gRect.Left := min(bWidth, gRect.Top) + (GetImageWidth(Item.GetImageList, -1, PPI) – w) div 2 + iRect.Left; // Lasse

    and that fixed the strange moving of glyphs.

    The other bug (narrow space for the tick) is caused by GlyphSize function.

    I think the error is here:

    Code:
    Result := MkSize(GetImageWidth(Item.Parent.SubMenuImages, -1, TacSkinData(sd).ScaleValue))

    That TacSkinData(sd).ScaleValue is 0. If I change that to PPI, then it is little too wide. Or the glyph should be aligned in the middle…

    #58370
    Support
    Keymaster

    Hello and thank you for the information.

    I need a demo for better debugging and searching of the best solution.

    Can you give me a demo, please?

Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.