- This topic has 8 replies, 3 voices, and was last updated 11 years, 11 months ago by Support.
-
AuthorPosts
-
December 15, 2012 at 11:12 pm #35513OconnelParticipant
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):
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:
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.
December 16, 2012 at 7:01 am #49634CheshireCatParticipantHello Oconnel,
try this code:
Code:procedure TForm2.FormResize(Sender: TObject);
begin
sSkinManager1.UpdateSkinSection('CHECKBOX');
end;December 16, 2012 at 8:53 am #49635OconnelParticipantYes. It works. Temporary solution is better than nothing, thank you.December 16, 2012 at 9:10 am #49636OconnelParticipantIt doesn't work fully. It doesn't work on hidden panels. I show you what I mean:
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.
December 16, 2012 at 11:22 am #49640OconnelParticipantOk, I know where the problem is. Is in sPanel.pas. Changing this:
Into this:
is fixing all my problems with panels. And few other visibility problems as well. Please push this change into next release.
December 17, 2012 at 8:12 am #49641SupportKeymasterHello and thanks for the demo.
Try attached file, the issue should be solved there.
December 17, 2012 at 9:16 am #49646SupportKeymasterSorry, I forgot a file
December 17, 2012 at 1:17 pm #49651OconnelParticipantI'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.
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.
December 18, 2012 at 1:08 pm #49660SupportKeymasterPatched files for users who have this issue.
Will be published in the nearest release.
-
AuthorPosts
- You must be logged in to reply to this topic.