Problem skinning CFileDialog |
Post Reply |
Author | |
Marco1
Senior Member Joined: 16 January 2004 Location: Germany Status: Offline Points: 251 |
Post Options
Thanks(0)
Posted: 27 July 2010 at 7:20pm |
My application is skinned with blue Office2007 theme. No problem so far.
When a CFileDialog (Vista style) opens, it is skinned like every other dialog. But there seems to be a skinning problem with the navigation bar, it's just black: Now, if I disable new dialog skinning via: XTPSkinManager()->SetAutoApplyNewWindows(FALSE); before calling dlgFile.DoModal(), I get this: The resize gripper down right is still skinned. Tested under Windows 7 with MfC 13.4.0 Can someone give me an advice why both is happening? |
|
Ark42
Senior Member Joined: 20 October 2003 Status: Offline Points: 291 |
Post Options
Thanks(0)
|
I see the exact same issue. Also if you click the arrow next to the button that changes the view, you get this funny looking popup that is half skinned. |
|
Ark42
Senior Member Joined: 20 October 2003 Status: Offline Points: 291 |
Post Options
Thanks(0)
|
I submitted an issue about this, since I still see it with Xtreme ToolkitPro v15.0.2 and Visual Studio 2010, and these work-arounds don't completely remove the skinning in the corner.
void CMyApp::OnFileOpen() { XTPSkinManager()->SetAutoApplyNewWindows(FALSE); CWinApp::OnFileOpen(); XTPSkinManager()->SetAutoApplyNewWindows(TRUE); } BOOL CMyDoc::DoSave(LPCTSTR lpszPathName, BOOL bReplace) { XTPSkinManager()->SetAutoApplyNewWindows(FALSE); BOOL bRet = CDocument::DoSave(lpszPathName, bReplace); XTPSkinManager()->SetAutoApplyNewWindows(TRUE); return bRet; } |
|
Marco1
Senior Member Joined: 16 January 2004 Location: Germany Status: Offline Points: 251 |
Post Options
Thanks(0)
|
I can still confirm the wrong left lower corner for 15.0.2 too.
Any progress or suggestions about this? |
|
Ark42
Senior Member Joined: 20 October 2003 Status: Offline Points: 291 |
Post Options
Thanks(0)
|
My ticket issue #26583 is still open but has not been touched yet.
|
|
Marco1
Senior Member Joined: 16 January 2004 Location: Germany Status: Offline Points: 251 |
Post Options
Thanks(0)
|
Is this http://forum.codejock.com/forum_posts.asp?TID=18052&KW=skinbuilder&PID=63310&title=codejock-style-template#63310 related (and therefore fixed) to this problem?
|
|
Marco1
Senior Member Joined: 16 January 2004 Location: Germany Status: Offline Points: 251 |
Post Options
Thanks(0)
|
Still having this problem in 15.1.1...
|
|
Oleg
Admin Group Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
Post Options
Thanks(0)
|
Hello,
Sorry we don't consider this black line as some bug.
|
|
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS |
|
Willowmaster
Senior Member Joined: 12 July 2010 Location: Netherlands Status: Offline Points: 180 |
Post Options
Thanks(0)
|
I'm just curious. Do you use the SkinFramework for the skinning or the build in types? Because I could look into the skinfile to find the problem for you if you would like. (trying to get some experience with the skinbuilder. ;) )
|
|
Product: Xtreme SuitePro (ActiveX) version 15.3.1
Platform: Windows XP (32bit) - SP 3 (on VMWare) Language: Visual Basic 6.0 |
|
Marco1
Senior Member Joined: 16 January 2004 Location: Germany Status: Offline Points: 251 |
Post Options
Thanks(0)
|
Oleg, I don't mean the black line, it's about the gripper fragment at the right bottom corner when dlg is NOT skinned.
I know that you can't do anything on the black lines which are caused by MS special - that has been already discussed in some other forums in the net. @Willowmaster: skinning is done via .cjstyle file, but in this case the dlg skinning is disabled but the blue gripper is still there. |
|
Algae
Senior Member Joined: 08 January 2007 Location: United States Status: Offline Points: 217 |
Post Options
Thanks(0)
|
Hello Oleg,
I understand the black background/buttons etc in what I "think" is the explorer bar at the top of the CFileDialog is considered to be "by design". My question is can this band be changed in the skin editor? If so, can you point me in the right direction to do so? What elements do I need to modify? I've tried searching for the answer in the forums but haven't found an answer outside of disabling skinning for this particular dialog. If there is a post that shows how to do this, a link to the post would be helpful. Thanks! |
|
astoyan
Admin Group Joined: 24 August 2013 Status: Offline Points: 302 |
Post Options
Thanks(0)
|
Hello everybody,
The "Black ReBar" issue has been fixed and will be available in the next version of Xtreme ToolkitPro. Thank you for your interest in Codejock products. Regards, Alexander
|
|
tim00005
Newbie Joined: 23 July 2013 Status: Offline Points: 6 |
Post Options
Thanks(0)
|
Note - gripper problem still there in 16.2.0 and also the normal text for file/folder names is incorrect as that is also being pulled from the skin.
|
|
Algae
Senior Member Joined: 08 January 2007 Location: United States Status: Offline Points: 217 |
Post Options
Thanks(0)
|
Is this fixed in 16.2.4?
I hesitate to port all my library fixes/changes unless this is the case. Thanks! |
|
Algae
Senior Member Joined: 08 January 2007 Location: United States Status: Offline Points: 217 |
Post Options
Thanks(0)
|
I don't know about previous versions, but 16.2.6 corrects the black rebar problem. YES!
Whoever fixed it gets a big thank you! |
|
cluster
Groupie Joined: 22 January 2015 Status: Offline Points: 91 |
Post Options
Thanks(0)
|
I have the same problem with the CFileDialog and skin framework.
I use a dark theme skin and if I switch off by XTPSkinManager()->SetAutoApplyNewWindows(FALSE); CFileDialog fileDlg(TRUE); fileDlg.DoModal(); XTPSkinManager()->SetAutoApplyNewWindows(TRUE); I will get this behavior: |
|
akur
Senior Member Joined: 16 May 2006 Status: Offline Points: 139 |
Post Options
Thanks(0)
|
On Windows 10, the sample "SkinCommCtrl" has a wrong context menu in standard FileOpen dialog (using version 1700):
Is a workaround other than disabling skinning of menu possible? Can we hope for a fix in the next v17 release? |
|
SvenC
Groupie Joined: 02 February 2007 Status: Offline Points: 79 |
Post Options
Thanks(0)
|
Same in 17.1.0.
Plus: the edit controls (File name and directory combobox at top when putting the edit cursor inside) are too tiny. The height is not enough, so text gets clipped. There is a big white borders inside the controls while editing, so maybe it is just a wrong placement of the edit control inside the combo box.
|
|
--
SvenC Toolkit Pro 15.3.1, 16.2.4, 16.3.1, 16.4.0, 17.2.0, 17.3.0, 18.0.1, 18.2 with VC++ 2010, 2012, 2013, 2015, 2017 |
|
Algae
Senior Member Joined: 08 January 2007 Location: United States Status: Offline Points: 217 |
Post Options
Thanks(0)
|
I've noted the same context menu skinning problem with Win 10 as noted in an earlier post.
The problem appears at least back to version 16.26. The right-click context menu appears as a narrow bar. The context menu problem goes away if first you set the skin to Default, then select another skin. Obviously not a practical solution, but could provide some insight into what's gone wrong. |
|
Marco1
Senior Member Joined: 16 January 2004 Location: Germany Status: Offline Points: 251 |
Post Options
Thanks(0)
|
I really gave up skinning this file dialog. It has never been working well.
Unfortunately with skinning disabled, as described in my initial post above, the bottom right blue corner still remains. Tested with 17.1.0 CJ, can you please try to fix this issue either way? Thanx!! |
|
olebed
Admin Group Joined: 01 July 2014 Location: Ukraine Status: Offline Points: 841 |
Post Options
Thanks(0)
|
This has been fixed, the fix will be available soon in v17.2 Topic: V17.1 Malformed skinnings |
|
agontarenko
Admin Group Joined: 25 March 2016 Status: Offline Points: 287 |
Post Options
Thanks(0)
|
"On Windows 10, the sample "SkinCommCtrl" has a wrong context menu in standard FileOpen dialog" - This has been fixed, the fix will be available in next beta or final release. |
|
agontarenko
Admin Group Joined: 25 March 2016 Status: Offline Points: 287 |
Post Options
Thanks(0)
|
This issue has been fixed, the fix will be available in next beta or final release. Regards, Artem Gontarenko |
|
Algae
Senior Member Joined: 08 January 2007 Location: United States Status: Offline Points: 217 |
Post Options
Thanks(1)
|
I gave up waiting for the promised fix for "Windows 10 context menu in standard FileOpen dialog" where the right click menu is chopped into a narrow band.
After some experimentation, I devised a solution. A little background first. I have been unable to use anything later than CJ 16.26 due to a number of critical flaws. That being said, you may or may not require the GetVersion replacement function described below. The following should make the Windows 10 context menu both skin and function normally: 1. First we replace the Windows 10 disastrous GetVersion code so we actually know what OS it is. Add this at the end of your Application header file. This should give you a working function to see if the client machine is Win 10. AFX_INLINE BOOL EqualsMajorVersion(DWORD majorVersion) { OSVERSIONINFOEX osVersionInfo; ::ZeroMemory(&osVersionInfo, sizeof(OSVERSIONINFOEX)); osVersionInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX); osVersionInfo.dwMajorVersion = majorVersion; ULONGLONG maskCondition = ::VerSetConditionMask(0, VER_MAJORVERSION, VER_GREATER_EQUAL); return ::VerifyVersionInfo(&osVersionInfo, VER_MAJORVERSION, maskCondition); } 2. Next, add the following to your program initialization as shown: BOOL CMyApp::InitInstance() { // initialize various things ... // I inserted right after this line LoadStdProfileSettings(); // Load standard INI file options (including MRU) if ( EqualsMajorVersion(10) ) XTPSkinManager()->SetApplyOptions(xtpSkinApplyMetrics | xtpSkinApplyColors | xtpSkinApplyFrame); ... // continue initializing } The SkinManager Apply Options must be set to make the dialog work properly. As always, your mileage may vary but it worked for me. |
|
kstowell
Admin Group Joined: 25 January 2003 Location: MIchigan, USA Status: Offline Points: 496 |
Post Options
Thanks(0)
|
Hi Algae, thank you for your suggestion, I will if we can get this problem resolved with our next release.
|
|
Kirk Stowell, President and CEO
CODEJOCK SOFTWARE SOLUTIONS< |
|
cluster
Groupie Joined: 22 January 2015 Status: Offline Points: 91 |
Post Options
Thanks(0)
|
I think I am the only one who wants to use the CFileDialg together with skin framework.
It doesn't work with enable skin framework nor with disable by XTPSkinManager()->SetAutoApplyNewWindows(FALSE); I mean is there an alternative for the CFileDialog??? Windows 7 Visual Studio 2010 CodeJock 17.3 |
|
astoyan
Admin Group Joined: 24 August 2013 Status: Offline Points: 302 |
Post Options
Thanks(0)
|
Can you please describe what exactly is not working for you with CFileDialog in details?
It is being used by many users and we we perform tests regularly, if it didn't work at all this would have been noticed and fixed already, so apparently it is specific to your use case. Have you tried to check any of our SkinFramework samples? If so, hasn't it still worked? Regards, Alexander
|
|
cluster
Groupie Joined: 22 January 2015 Status: Offline Points: 91 |
Post Options
Thanks(0)
|
It is the same behavior as I have descripted already in my last post here for almost one year...
And if I enable the skin framework with dark theme it looks like this: |
|
cluster
Groupie Joined: 22 January 2015 Status: Offline Points: 91 |
Post Options
Thanks(0)
|
Hi again, Skin Framework (Dark theme) and CFileDialog or CFolderPickerDialog are not compatible. There is no good way to solve this issue. I have figured out that, if you enable only the option xtpSkinApplyFrame and xtpSkinApplyMetrics and disable the AutoApplyNewWindow flag then you will get the "normal" look. But i need to enable the xtpSkinApplyColors option as well. So now, my idea was to disable this option before creating the file dialog and enable again, but then the whole app will flicker horrible. XTPSkinManager()->SetApplyOptions(xtpSkinApplyFrame | xtpSkinApplyMetrics); XTPSkinManager()->SetAutoApplyNewWindows(FALSE); CFolderPickerDialog dlgFile(); dlgFile.DoModal()... XTPSkinManager()->SetAutoApplyNewWindows(TRUE); XTPSkinManager()->SetApplyOptions(xtpSkinApplyFrame | xtpSkinApplyMetrics | xtpSkinApplyColors); Could you bring the FileDialog (IFileDialog) to a black list from the skin framework as you do with the "Internet Explorer" and "OleMainThread" for example? |
|
Windows 7
Visual Studio 2013 CodeJock 18.6 |
|
cluster
Groupie Joined: 22 January 2015 Status: Offline Points: 91 |
Post Options
Thanks(0)
|
Hi, now, I have found a dirty solution to disable the skin framework for the CFileDialog and CFolderPickerDialog. Better than nothing! ;-)
|
|
Windows 7
Visual Studio 2013 CodeJock 18.6 |
|
Post Reply | |
Tweet
|
Forum Jump | Forum Permissions You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum |