DevExpress Print Dialog unreadable in dark skin

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #37487
    HeDiBo
    Participant

    Using DevExpress Print System, the print dialog doesn't look right at all:

    [attachment=8308:PrintDialog.jpg]

    SkinManager.Options.ChangeSysColors is set to False.

    #56694
    HeDiBo
    Participant

    If I reset SkinManager.SkinningRules to empty ([]) I get standard dialogs, except for the Page Setup dialog, which makes the tabs at the top dark. Text is unreadable then:

    [attachment=8310:PageSetup.jpg]

    It happens with dark skins.

    Export to PDF dialog has a similar problem:

    [attachment=8311:PdfExport.jpg]

    #56707
    Support
    Keymaster

    These tabs are painted by the DevExpress skinning engine, seems.

    If support of AlphaSkins in DevEx is enabled then DevEx uses functions of AlphaSkins for drawing…

    #56710
    HeDiBo
    Participant
    'Support' wrote:

    These tabs are painted by the DevExpress skinning engine, seems.

    If support of AlphaSkins in DevEx is enabled then DevEx uses functions of AlphaSkins for drawing…

    I understand,

    But it should not do that, if the form, on which this page control is placed, is added to the third party exception list:

    Code:
    ThirdPartySkipForms.Add('TdxfmPageSetupDialog');

    The TcxPageControl and its TcxTabSheet Captions used there are still skinned.

    #56713
    HeDiBo
    Participant

    This code from acLFPainer should do the trick with forms added to ThirdPartySkipForms:

    Code:
    function Skinned: boolean;
    begin
    DefManager := DefaultManager;
    if DefManager nil then
    Result := DefManager.CommonSkinData.Active
    else
    Result := False
    end;

    It's this code that determines for all DevExpress controls if skinning should be done.

    The code does not test if the control is placed on a Form that's mentioned in this exception list.

    As the matter of fact, the only place where this is tested is in the TsSkinProvider. That is obviously absent in the PageSetup dialog of DevExpress.

    There might be a solution to this, is DefaultManager was a function that would return an inactive SkinManager for excluded forms. Or if the DefaultManager would be nil for excluded forms.

    #56721
    Support
    Keymaster

    Thank you, you gived me an idea how to improve it.

    Try the attached file, tabs will not be skinned if form is not skinned.

    #56727
    HeDiBo
    Participant
    'Support' wrote:

    Thank you, you gived me an idea how to improve it.

    Try the attached file, tabs will not be skinned if form is not skinned.

    It works great. My only concern is, that the Skinned function takes too much time for forms with complicated grids, etc.

    I myself have a fast PC, so I will not notice a difference. But users with slow lap tops may.

    However it does the job very well a3.gif

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