v8.12 Huge problem with flat panels!

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
    Posts
  • #35513
    Oconnel
    Participant

    After upgrading to AC 8.12 we have huge problem with flat panels. To make a flat TsPanel we use a workaround that we found in AC FAQ:

    Q: Is there a way to make the panel invisible? (skinned mode)

    A: Yes, you must write 'CHECKBOX' in the Panel.SkinData.SkinSection.

    This works. But there is a huge problem with skins that are using 100 transparency on checkboxes, like this (for example Calcium skin and others):

    vjl1i.png

    Example below shows two flat panels, one is inside the other one with alRight align. If we start resizing this window, the panel inside is changing colors. Green, red and others too:

    2h88nlk.png

    Code for this small demo is here: http://www.sendspace.com/file/j7umlg

    In our application we have dozens such panels and this problem is very big for us. Please fix this as soon as possible, thank you.

    #49634
    CheshireCat
    Participant

    Hello Oconnel,

    try this code:

    Code:

    procedure TForm2.FormResize(Sender: TObject);
    begin
    sSkinManager1.UpdateSkinSection('CHECKBOX');
    end;

    #49635
    Oconnel
    Participant

    Yes. It works. Temporary solution is better than nothing, thank you.

    #49636
    Oconnel
    Participant

    It doesn't work fully. It doesn't work on hidden panels. I show you what I mean:

    http://youtu.be/0zXOmrSSLTg

    As you see there is a huge hidden panel with progress bar. I hide him when he is not used. After resizing form and showing this panel again it's colors are out of any control. Updating skin section does nothing.

    #49640
    Oconnel
    Participant

    Ok, I know where the problem is. Is in sPanel.pas. Changing this:

    sqqahg.png

    Into this:

    11sntb4.png

    is fixing all my problems with panels. And few other visibility problems as well. Please push this change into next release.

    #49641
    Support
    Keymaster

    Hello and thanks for the demo.

    Try attached file, the issue should be solved there.

    #49646
    Support
    Keymaster

    Sorry, I forgot a file

    #49651
    Oconnel
    Participant

    I'm sorry, but this new unit doesn't solve all the problems that I have. Ok, I recorded some stuff, please watch it. It shows all my current problems with AC, problem with Panels, and two other problems that I don't mention yet – with windows focus and disappearing extended borders.

    http://youtu.be/goUyKAsj2tY

    00:01 – I'm showing two commented lines. If I don't force a form-resize this way the problem with extended borders occur.

    00:21 – Showing form for the first time – works. This form is not freed, but it has Hide function in FormClose method. This form also have altered CreateParams so it can have taskbar button.

    00:23 – Showing the problem.

    00:29 – If I click on desktop and then on window itself -> borders are back (focus changed).

    00:44 – Showing how form is working fine with altered sPanels.pas (my fix, not yours).

    00:55 – Take notice of another problem. Both opened windows have focus! The Window below doesn't repaint it's titlebar and font is still white. Impossible to tell by common user which window is active.

    01:04 – Now, I'm applying new sPanel.pas, and recompiling a project.

    01:24 – Before compile, I restore forced form-resize to fix a extended borders problem.

    02:04 – Problem with extended borders is now gone.

    02:15 – You fixed a right-resize problem with close button panel, but when hidden panel shows up he is not fully visible. Only progress bar is.

    02:24 – A real nightmare. Panels are now blocking controls repaint. I should mention that this is Frame inside window.

    #49660
    Support
    Keymaster

    Patched files for users who have this issue.

    Will be published in the nearest release.

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