We are experiencing an issue with private fonts and seek confirmation of what should happen before we spend time producing a Minimal, Complete, and Verifiable example.
Scenario: You install ArialMT TT font into Windows. Then you call withing your code AddFontResourceEx() with the FR_PRIVATE param to install an alternative version of ArialMT. The latter is identical to the former except it has 1 additional glyph lets say. The second font file is properly formed / not damaged.
Question: Which version of the font will windows give you in response to the GDI call to CreateFontIndirect(). Will it be (a) the version installed in the OS or (b) the private version AddFontResourceEx() ?
Notes: Our current experience is that we are served the Windows-installed version from c:\Windows\fonts where we expected to receive the private version. Intuitively we expected that the windows font server would look for a match to our font request in the private set of fonts and then in the system font set should a match not have been found.
If anyone could point out the MSDN page that details the selection process steps that would be greatly appreciated.
[Edited to be less TLDR;]
Related
As yolu may have noticed, MS introduced a modern kind of 'theming' in Windows 10 regarding the basic OS elements like start menu and taskbar. With newer versions, you can choose a 'light' theme as an alternative to the default black theme.
I was wondering if there is an API or hook to elegantly and (more importantly) efficiently check live for theme changes (Did not find anything in the MS docs regarding this, but often enough these gems are pretty hidden there IMHO).
Specific problem: When you have a desktop application with a system tray icon, chances are high that you designed it to be bright. Nearly all of the modern Windows icons feature such a style (simple and white, yielding good readability on the black taskbar). Now you can provide a different version in a darker style for the light theme, but how to notice when to apply this on the fly?
I'm aware of the registry key under HCU (Software/Microsoft/Windows/CurrentVersion/Themes/Personalize) which is what I'm utilizing right now. However, blindly checking for change every x milliseconds seems pretty awkward.
If no such thing is available, I'm also happy to hear some ideas for more efficient implementations of such a check.
Method 1: Use RegNotifyChangeKeyValue
Notifies the caller about changes to the attributes or contents of a
specified registry key.
Methon 2: Use WM_SETTINGCHANGE
Applications should send WM_SETTINGCHANGE to all top-level windows when they make changes to system parameters. (This message cannot be sent directly to a window.) To send the WM_SETTINGCHANGE message to all top-level windows, use the SendMessageTimeout function with the hwnd parameter set to HWND_BROADCAST.
I tend to use the second method, I have tried, and have been able to work successfully.
Minimum code example:
case WM_SETTINGCHANGE:
{
if (!lstrcmp(LPCTSTR(lParam), L"ImmersiveColorSet"))
{
//theme has been changed
}
}
I downloaded Windows 64-bit with JDK 8 included of SQL Developer 18.1.
To run Oracle SQL Developed I just unzipped the file and run the sqldeveloper.exe contained in the folder.
Unfortunately, as you can see in the image the size of everything is extremely small and very difficult to see.
This issue appears exclusively with this software.
How can I resolve it?
I also faced a similar issue when installed this on Windows 10. The issue has to do with compatibility settings.
I have fixed it following the steps given below:
Get shortcut of sqldeveloper at your desktop
Ensure that you have admin rights in your PC
Right Click on sqldeveloper icon and select Properties.
Go to the Compatibility tab:
Compatibility mode change it to windows 7
Check the option of Override high DPI scaling beaviour
Select "System" in drop down below
Apply
Re-Launch the application
I guess this is a subjective statement - but that doesn't appear SMALL to me.
However, if you're using an OS accessibility feature to increase the size of text in your applications, the new 'Welcome Page' can interfere with that.
Uncheck 'show on startup' in the Welcome page
Restart SQL Developer.
You should be good.
The Welcome page uses JavaFX to render some HTML and this is apparently getting in the way due to a Java bug. We're looking to mitigate or fix this for a future release.
If that doesn't work, you can also try to actually increase the UI font size.
I talk about how to do that here
This is what it looks like bumped up to font size 14
Find your ide.properties file.
Windows: It's in your OS User's AppData, Roaming, SQL Developer, systemX.Y.Z..., o.sqldeveloper directory where X.Y.Z... represents your version of SQL Developer.
Linux/Mac: It's in your $HOME/.sqldeveloper, systemX.Y.Z, o.sqldeveloper directory.
You’ll notice this file is VERY well documented. There’s a section that speaks to Windows in particular. To change the default size for all look and feels, add this line, the uncommented one:
# To modify the font size for a particular locale under all
# look-and-feels, set the Ide.FontSize.<languageID> property. For
# example:
Ide.FontSize.en=14
2018 Update
On my 4k Mac Mini (2018 build if that matters):
Oracle 8 JDK
SQL Developer 18.3
Mac OS X look and feel
Ide.FontSize=21
This is how SQL Developer looks:
I changed font style and size from available settings from SQL developer.
We can change using Tools -> Preferences ->Code Editor -> Fonts
Fixed this for myself in Oracle Linux 8, but is also worth trying in RHEL and Fedora, if you use either of those.
If SQL Developer is running, close it.
With superuser privileges, open the following file for editing:
sudo nano /opt/sqldeveloper/sqldeveloper/bin/sqldeveloper.conf
Add the following two lines at the end:
AddVMOption -Dsun.java2d.uiScale=2
AddVMOption -Dsun.java2d.uiScale.enabled=true
Restart SQL Developer.
If the interface still looks too small, or too big, change the uiScale value (untested).
I had the same issue,
if you still could not fix the problem with the given solutions, for me also worked the following:
Go to the Display Settings;
Go to scaling and "reset it": change to another scale, for example, 100% and then to your preferred scale;
This should force the SQL-Developer Window to your preferred scale, unfortunately you have to repeat this procedure after every new SQL-Developer launch.
change the setting from "Compatibility tab" as highlighted in the above post was the only way to make the icon much more larger
In case anyone landed here looking for the same answer for a newer version of Oracle SQL Developer (like I did)…
As of v22.2.1, for macOS the preferences are now located in Oracle SQL Developer --> Settings…
You can adjust the font style and size under Code Editor --> Fonts
Hope that helps!
I have a question, after I have whole built the AOSP source code, it generates couple image files, such as ramdisk.img, recovery.img, system.img, res-package.img,etc .
Right now, I am considering partial flashing my Android Box without formatting all of the system, for keeping some previous data remains.
Therefore, I just tried to use the command “adb sideload filename.img”, which filename might be ramdisk,recovery, etc.
Then, after I did so, the android system shows the message :
“footer is wrong”
“signature verification failed”
“Installation aborted”
There, what should I correct my command, to make the process correct?
as the figure shows enter image description here
And, my methods to do so is trying to refresh a new system feature, but keep the previous data, such as APPs, or user data, remain, does anybody have other good suggestions? Thank you in advance.
it depends on the flash type and file-system you are using, and it is not possible to partially flash in the partition, but you can update the partition.
I have a coworker who needs to have multiple versions of LabVIEW on his computer. He has a bad habit of opening LV2010 code in LV2013. LabVIEW doesn't warn that you are about to change all of the code to a new version of LabVIEW, and this breaks the code running on a test system on the production floor.
Here is my question: does anyone know of any kind of hack or legitimate method of changing the windows title bar for a single application? I would like to be able to change the color of the title bar only on LabVIEW 2013 from blue to red or something.
If this isn't possible, does anyone have an idea of how to distinguish one application from another that looks almost identical?
Thanks for any advice you have to give.
Well, the good news is that LabVIEW 2014 on will have the version number in their icon. That doesn't help your situation much, though. I'm not sure about changing the title bar, but I think I can help with your second question.
The icons for those versions are indistinguishable, however, the mass compile LabVIEW does when you open a project from an older version is a dead giveaway. You know LabVIEW is performing a mass compile if, while the project is loading, "Compiling:" appears where "Loading:" normally does. Close out of LabVIEW without saving and open the right version of LabVIEW. If he still goofs, there's always reverting in whatever version control software you're (hopefully) using, and you can always save back to older versions in LabVIEW itself.
I currently have four (older) versions installed to support projects that are under warranty. One trick I've found to be helpful is to put a .txt document in the same directory I save my .lvproj with the LabVIEW version as the title. For example, if the code is written in LabVIEW 2012 I include a text document called LV2012.txt in my _Project folder. Not a foolproof plan, but it has definitely made me double check my open version of LabVIEW before double-clicking.
I would suggest to use get VI version property described here: http://digital.ni.com/public.nsf/allkb/0C72D335AA87DD6486256FC40069C17F
Than using version information change you title bar text or transparency(I am not sure about color) or other FP component using VI ref property node.
How to change the default Firefox error console buffer size? The problem is that there isn't enough time to read messages: old ones get overridden by the newer messages.
I know this is an old one, but this came up as my top search and the setting can now be found in the about:config settings.
Type about:config into the address bar and select ok to the dragons.
type this into the filter
devtools.hud.loglimit.console
AMO :: DevPrefs
Can increase buffer size from the options panel of that addon:
(source: mozilla.net)
EDIT: There are two parts to this answer. The Console Service has one limit, which applies when the Error Console is closed. The Error Console has another limit, which applies when it is open. Normally these limits are both set to 250.
It is not useful to have the Console Service limit is higher than the Error Console limit, since you need to open the Error Console in order to view the errors, but in theory you can do this by debugging the Firefox executable and setting a breakpoint on xul!nsConsoleService::nsConsoleSerice and set mBufferSize to a larger value. Symbols to allow you to do this are available on the Mozilla symbol server.
You can increase the Error Console limit by editing the consoleBindings.xml file. This file is stored in one of the .jar files provided with Firefox (omni.jar in Firefox 4). Note that editing a .jar file will stop partial updates from working, instead the Firefox updater will reinstall the full updated version.