I have been looking for a proper tool or settings for Delphi XE2 IDE to support dark theme and haven't got around desired results. Dark Mode is available for 10.2 Tokyo and further versions is there any setting or freeware tool which is secure I can use please let me know.
Thanks,
Yash
What your are looking for is Delphi IDE Colorizer that allows changing colors of almost every part of Delphi IDE. In fact as far as I know it is much more powerful than Dark Mode that has been made available in Delphi 10.2.
Related
I just upgraded from Delphi 2009 to Delphi XE8. Doing so has changed the appearance of the buttons on the toolbar of my program.
When compiled with Delphi 2009, it looked like this:
But now with Delphi XE8, it looks like this:
It seems to me that this is related to the Down property. If a Down property of a button is true, then its background will be blue. If I click on the button then that will change the Down property to false and the button will lose the blue background.
Does anyone know what might be causing the blue background and how I can eliminate it?
I am on Windows 8.1.
Followup: David's answer that this is the default display for Windows 8.1 is correct. Checking other programs, I see they do this as well.
I wasn't expecting this to be the default because my program compiled with Delphi 2009 didn't do this. But as David also explained, that's because Delphi 2009 did not have built in theme support, but Delphi XE8 does. (It may have been added in Delphi XE2, but don't quote me on that)
David's mentioned the manifest as a possible cause. It wasn't in this case, but he alerted me that I may have multiple manifests and should check for it.
So the final answer to my question is that I don't want to eliminate the blue background. It is the Windows 8.1 default way of displaying Down buttons, and I want to display the native theme by my program.
Your D2009 program is not themed, but your XE8 program is themed. By that I mean that the XE8 includes an application manifest that specifies version 6 of comctl32. Your D2009 program does not include a manifest, or does not include that part of the manifest which requests comctl32 version 6.
The visual appearance of the XE8 program is the native platform appearance, and on the face of it, it would be normal to follow the platform's lead. So the option that I would opt for is to leave the appearance as the platform standard. That is go with the XE8 version.
However, to answer your question, you can revert to the old appearance by removing the comctl32 v6 part of the manifest. This will affect other parts of your program too. If you only want to disable themes for the toolbar, that can be achieved with SetWindowTheme.
I have Delphi XE4 Enterprise. How do I find out if I have FireMonkey or FM2 or FM3?
Where does Embarcadero store the detailed information about FireMonkey versions?
As of today, the list of FireMonkey versions, and associated Delphi versions is:
FM1: Delphi XE2
FM2: Delphi XE3
FM3: Delphi XE4/5
The FireMonkey version is more of a marketing designation than a true software version. Principally it's Delphi itself that is versioned.
It's a little debateable as to what FireMonkey version ships with XE5. Following the pattern, it ought to be FM4. But I can find no reference anywhere to Embarcadero using the name FM4. So I rather suspect that this is what happened (all speculation on my part):
The original release with XE2 was named plain FireMonkey.
The release with XE3 removed iOS support and fixed many deep and fundamental flaws with breaking changes So it was branded FM2.
With XE4, iOS returned and more flaws were fixed, again with breaking changes. The library was reaching stability, and named FM3. They even used FM3 in marketing material. Exponentially better than the original was perhaps the message. Or is that just the mathematician in me? Maybe the marketing people thought it looked cool.
XE5 added Android support and had some more, albeit more minor, breaking changes. Somebody at Embarcadero said, if we keep changing FM version then people will get fed up with all our breaking changes. So let's just call the thing FireMonkey and leave it at that.
Going forward I think you'll just see FireMonkey and FM from Embarcadero. The version that counts is the Delphi version.
The version of the FMX framework depends on the Delphi compiler version you use.
Until now, each Delphi version (starting from XE2) contains a somehow different/extended/changed Firemonkey framework.
BTW Delphi XE4 Firemonkey framework is FM3
Does anybody knows a way to change the font size of the editor tabs in Delphi 2010 IDE?
With my 1080p 22' monitor the font is too small to read and it causes pain in the eyes.
Some notes
It doesn't respect the system's DPI settings so changing that system setting doesn't help, moreover, I'm using 140% DPI already now, and it's Win7.
I couldn't find any existing 3rd party tools to tweak that.
I'll be willing to write an IDE expert to fix that problem if I know how to do it...
There is not an option to change the font size of these elements, but as you say this can be done writting an expert. Some time ago I started to write an Delphi IDE Expert (This project is not finished yet) which allow you to change the apparence of the Delphi IDE (here you can found the Source Code) , try using some of the code of this project to write your own. Check this image which shows the result of modify the code of the project to increase the font of the TIDEGradientTabSet.
I recently experienced some unusual behavior in using a 3rd party Navigator component in Delphi 2007 whereby upon setting the 'Flat' property to True, the buttons didn't remain Flat as they should with Themes Enabled but did so once I unchecked Enable Themes from within my project file and recompiled my program. This obviously didn't seem right since another 3rd party Navigator component I experimented with performed accordingly with 'Flat' set to True and Themes Enabled. I then tried the same with Delphi's TDBNavigator and once again I experienced the same problem as I did with the first 3rd party Navigator component. In researching this matter online, I have found very little other than the fact that, unlike previous versions of Delphi, Delphi 2007 supports Themed Applications out of the box as opposed to having to add another component to support WinXP Themes. All considered, I am hoping that someone else may have experienced similar problems in using TDBNavigator or other 3rd party Navigator components in Themed Applications with the flat property set to true. Any comments or suggestions regarding this matter are appreciated.
Theme support was added to Delphi 2007, but doesn't apply to 100% of the VCL (grids, for example, don't have theme support). I'd suspect that's the issue you're having with the TDBNavigator.
As far as your "3rd party Navigator" problems, it's impossible to give you any advice because you didn't indicate which "3rd party Navigator" controls you're using. Without knowing the specific component names, you've given no information to us to use in trying to help.
Delphi 2010 provides full theme support, including grids. I haven't tested the DBNavigator, as I haven't used it since Delphi 2 or so. Note, however, that Delphi 2009/2010 introduces other issues with older code, because as of Delphi 2009 the VCL is Unicode-based. Some code that uses strings and assumes that a Char is 1 byte in size can be an issue.
Workaround on TDBNavigator,TSpeedButton bug
http://blog.issamsoft.com/index.php?q=en/node/37
When I minimize and restore my Delphi application, the window contents flash a horrible black before (re)painting on Vista/Win7. This can also be seen with the Delphi 2007 IDE - the Object Inspector, Project Manager, Messages window (but not the editor contents) also flash black when restoring.
None of the ususal flicker-free painting techniques seem to make any difference, and some even make it worse: DoubleBuffered, WS_EX_COMPOSITED, WM_ERASEBKGND, etc.
Most Microsoft applications do not exhibit this behavior. Is this a problem with Delphi's implementation of Windows forms? Does anyone know of a workaround?
When you register your window class, set hbrBackground to (HBRUSH)(COLOR_3DFACE + 1)
I would check that you have current video drivers and review all the settings. I have never seen the effect you describe on these OS, either with Delphi or my own apps; and if it was a widespread problem I feel sure that the Embarcadero newsgroups would be full of it.
I have D2007 and D2010 on two machines (Win7 64-bit laptop and Vista 32-bit desktop), and don't have this problem on either of them in either the IDEs or my applications.
Do you have theme support/Aero enabled? What video card and drivers? Are you using the classic appearance in Windows?